diff options
author | Mathias Agopian <mathias@google.com> | 2013-09-17 23:45:22 -0700 |
---|---|---|
committer | Mathias Agopian <mathias@google.com> | 2013-09-17 23:45:22 -0700 |
commit | c1c05de415854eb7a13a16b7e22a22de8515123a (patch) | |
tree | 9be282141f29b6c5ec7d6b75bffb59a05d26be42 /services/surfaceflinger/SurfaceFlingerConsumer.cpp | |
parent | 799f51268006f319f6ae538dca670bfc7f522688 (diff) | |
download | frameworks_native-c1c05de415854eb7a13a16b7e22a22de8515123a.zip frameworks_native-c1c05de415854eb7a13a16b7e22a22de8515123a.tar.gz frameworks_native-c1c05de415854eb7a13a16b7e22a22de8515123a.tar.bz2 |
fix camera API 2.0 orientation
we add a flag to ANativeWindow::setBufferTransform that means
"apply the inverse rotation of the display this buffer is displayed
onto to".
Bug: 10804238
Change-Id: Id2447676271950463e8dbcef1b95935c5c3f32b2
Diffstat (limited to 'services/surfaceflinger/SurfaceFlingerConsumer.cpp')
-rw-r--r-- | services/surfaceflinger/SurfaceFlingerConsumer.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/services/surfaceflinger/SurfaceFlingerConsumer.cpp b/services/surfaceflinger/SurfaceFlingerConsumer.cpp index 552372b..6dc093e 100644 --- a/services/surfaceflinger/SurfaceFlingerConsumer.cpp +++ b/services/surfaceflinger/SurfaceFlingerConsumer.cpp @@ -99,6 +99,19 @@ status_t SurfaceFlingerConsumer::bindTextureImage() return bindTextureImageLocked(); } +status_t SurfaceFlingerConsumer::acquireBufferLocked( + BufferQueue::BufferItem *item, nsecs_t presentWhen) { + status_t result = GLConsumer::acquireBufferLocked(item, presentWhen); + if (result == NO_ERROR) { + mTransformToDisplayInverse = item->mTransformToDisplayInverse; + } + return result; +} + +bool SurfaceFlingerConsumer::getTransformToDisplayInverse() const { + return mTransformToDisplayInverse; +} + // We need to determine the time when a buffer acquired now will be // displayed. This can be calculated: // time when previous buffer's actual-present fence was signaled |