am fe5be1b0: Merge "Don\'t add clipped rects to layer regions. Bug #3350208" into honeycomb

* commit 'fe5be1b04273b8f67a00ac688940299f7d502c1d':
  Don't add clipped rects to layer regions. Bug #3350208
This commit is contained in:
Romain Guy
2011-01-14 11:27:57 -08:00
committed by Android Git Automerger

View File

@@ -697,12 +697,12 @@ void OpenGLRenderer::dirtyLayer(const float left, const float top,
if ((mSnapshot->flags & Snapshot::kFlagFboTarget) && mSnapshot->region) { if ((mSnapshot->flags & Snapshot::kFlagFboTarget) && mSnapshot->region) {
Rect bounds(left, top, right, bottom); Rect bounds(left, top, right, bottom);
transform.mapRect(bounds); transform.mapRect(bounds);
bounds.intersect(*mSnapshot->clipRect); if (bounds.intersect(*mSnapshot->clipRect)) {
bounds.snapToPixelBoundaries(); bounds.snapToPixelBoundaries();
android::Rect dirty(bounds.left, bounds.top, bounds.right, bounds.bottom);
android::Rect dirty(bounds.left, bounds.top, bounds.right, bounds.bottom); if (!dirty.isEmpty()) {
if (!dirty.isEmpty()) { mSnapshot->region->orSelf(dirty);
mSnapshot->region->orSelf(dirty); }
} }
} }
#endif #endif
@@ -713,12 +713,12 @@ void OpenGLRenderer::dirtyLayer(const float left, const float top,
#if RENDER_LAYERS_AS_REGIONS #if RENDER_LAYERS_AS_REGIONS
if ((mSnapshot->flags & Snapshot::kFlagFboTarget) && mSnapshot->region) { if ((mSnapshot->flags & Snapshot::kFlagFboTarget) && mSnapshot->region) {
Rect bounds(left, top, right, bottom); Rect bounds(left, top, right, bottom);
bounds.intersect(*mSnapshot->clipRect); if (bounds.intersect(*mSnapshot->clipRect)) {
bounds.snapToPixelBoundaries(); bounds.snapToPixelBoundaries();
android::Rect dirty(bounds.left, bounds.top, bounds.right, bounds.bottom);
android::Rect dirty(bounds.left, bounds.top, bounds.right, bounds.bottom); if (!dirty.isEmpty()) {
if (!dirty.isEmpty()) { mSnapshot->region->orSelf(dirty);
mSnapshot->region->orSelf(dirty); }
} }
} }
#endif #endif