diff options
author | Andy McFadden <fadden@android.com> | 2012-09-26 16:19:12 -0700 |
---|---|---|
committer | Andy McFadden <fadden@android.com> | 2012-09-26 16:19:12 -0700 |
commit | ab10c5804c250e7f392c8262f687766edec2e9f4 (patch) | |
tree | c6791a7fb242f9e23d318b3bb3ea97a762aa6ccb | |
parent | c4a8daaa998ea524c9aaa9817021ff7c4467c3dd (diff) | |
download | frameworks_native-ab10c5804c250e7f392c8262f687766edec2e9f4.zip frameworks_native-ab10c5804c250e7f392c8262f687766edec2e9f4.tar.gz frameworks_native-ab10c5804c250e7f392c8262f687766edec2e9f4.tar.bz2 |
Recompute visible regions more vigorously
Some of the code in latchBuffer was calling invalidateHwcGeometry,
but that didn't cause the SurfaceFlinger visible region code to
re-evaluate the layer's visibility. Set the recomputeVisibleRegions
"out" parameter instead.
Bug 7235797
Change-Id: If6ba33fbd1a594cd64cc5253aebf752d6ceda1c9
-rw-r--r-- | services/surfaceflinger/Layer.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/services/surfaceflinger/Layer.cpp b/services/surfaceflinger/Layer.cpp index 41c4963..c2da238 100644 --- a/services/surfaceflinger/Layer.cpp +++ b/services/surfaceflinger/Layer.cpp @@ -655,7 +655,7 @@ Region Layer::latchBuffer(bool& recomputeVisibleRegions) if (oldActiveBuffer == NULL) { // the first time we receive a buffer, we need to trigger a // geometry invalidation. - mFlinger->invalidateHwcGeometry(); + recomputeVisibleRegions = true; } Rect crop(mSurfaceTexture->getCurrentCrop()); @@ -668,7 +668,7 @@ Region Layer::latchBuffer(bool& recomputeVisibleRegions) mCurrentCrop = crop; mCurrentTransform = transform; mCurrentScalingMode = scalingMode; - mFlinger->invalidateHwcGeometry(); + recomputeVisibleRegions = true; } if (oldActiveBuffer != NULL) { @@ -676,7 +676,7 @@ Region Layer::latchBuffer(bool& recomputeVisibleRegions) uint32_t bufHeight = mActiveBuffer->getHeight(); if (bufWidth != uint32_t(oldActiveBuffer->width) || bufHeight != uint32_t(oldActiveBuffer->height)) { - mFlinger->invalidateHwcGeometry(); + recomputeVisibleRegions = true; } } |