summaryrefslogtreecommitdiffstats
path: root/services/surfaceflinger/LayerBase.cpp
diff options
context:
space:
mode:
authorMathias Agopian <mathias@google.com>2011-08-30 15:02:41 -0700
committerMathias Agopian <mathias@google.com>2011-08-30 15:31:51 -0700
commitc7f3381c3b2945e441747130eae88214435d0819 (patch)
treee0855edbd139074cab6c8213f06b4cd77d71493d /services/surfaceflinger/LayerBase.cpp
parent4e92d140efa3e7fcafa13fd9a1221dbcbd04d390 (diff)
downloadframeworks_native-c7f3381c3b2945e441747130eae88214435d0819.zip
frameworks_native-c7f3381c3b2945e441747130eae88214435d0819.tar.gz
frameworks_native-c7f3381c3b2945e441747130eae88214435d0819.tar.bz2
fix display artifacts in preview screen in timelapse video mode
We were not updating the h/w composer state when the buffer size changed. We also didn't update the h/w composer state when the transformation matrix changed (which is related to the above issue, since it would probably change when the buffer size changes). Also moved updating the crop to setGeometry(), since we decided that the "crop" change requires the GEOMETRY_CHANGED flag (ie: not need to do this every frame) Bug: 5238473 Change-Id: Ia7b47e145b48581b568d89d9aa2c14ff778be862
Diffstat (limited to 'services/surfaceflinger/LayerBase.cpp')
-rw-r--r--services/surfaceflinger/LayerBase.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/services/surfaceflinger/LayerBase.cpp b/services/surfaceflinger/LayerBase.cpp
index 4cc245a..6a5c8e5 100644
--- a/services/surfaceflinger/LayerBase.cpp
+++ b/services/surfaceflinger/LayerBase.cpp
@@ -335,17 +335,18 @@ void LayerBase::setGeometry(hwc_layer_t* hwcl)
reinterpret_cast<hwc_rect_t const *>(
visibleRegionScreen.getArray(
&hwcl->visibleRegionScreen.numRects));
-}
-void LayerBase::setPerFrameData(hwc_layer_t* hwcl) {
- hwcl->compositionType = HWC_FRAMEBUFFER;
- hwcl->handle = NULL;
hwcl->sourceCrop.left = 0;
hwcl->sourceCrop.top = 0;
hwcl->sourceCrop.right = mTransformedBounds.width();
hwcl->sourceCrop.bottom = mTransformedBounds.height();
}
+void LayerBase::setPerFrameData(hwc_layer_t* hwcl) {
+ hwcl->compositionType = HWC_FRAMEBUFFER;
+ hwcl->handle = NULL;
+}
+
void LayerBase::setFiltering(bool filtering)
{
mFiltering = filtering;