diff options
| author | 2011-03-24 15:55:05 -0700 | |
|---|---|---|
| committer | 2011-03-24 15:55:05 -0700 | |
| commit | f147340bd117c16a67287e2f6ca9ded651bb32b2 (patch) | |
| tree | 695fc01badf4bea220a31765249f2edff90282a0 /libs/hwui/OpenGLRenderer.cpp | |
| parent | 15cb32ed9d189526d5a98add386b28cea6bc46b7 (diff) | |
Fix bug with accelerated translucent rendering
There was a bug in the dirty region optimizations when
using alpha layers. This prevented translucent objects from
being drawn at all in many situations.
Change-Id: I23e9bce3595fbd6fe2bda15e8753a0f35baffb82
Diffstat (limited to 'libs/hwui/OpenGLRenderer.cpp')
| -rw-r--r-- | libs/hwui/OpenGLRenderer.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/libs/hwui/OpenGLRenderer.cpp b/libs/hwui/OpenGLRenderer.cpp index 6c454a4f2b38..c9a286b26ffe 100644 --- a/libs/hwui/OpenGLRenderer.cpp +++ b/libs/hwui/OpenGLRenderer.cpp @@ -647,6 +647,9 @@ void OpenGLRenderer::composeLayerRect(Layer* layer, const Rect& rect, bool swap) void OpenGLRenderer::composeLayerRegion(Layer* layer, const Rect& rect) { #if RENDER_LAYERS_AS_REGIONS if (layer->region.isRect()) { + const android::Rect& bounds = layer->region.getBounds(); + layer->regionRect.set(bounds.leftTop().x, bounds.leftTop().y, + bounds.rightBottom().x, bounds.rightBottom().y); composeLayerRect(layer, layer->regionRect); layer->region.clear(); return; |