summaryrefslogtreecommitdiffstats
path: root/libs/hwui/OpenGLRenderer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libs/hwui/OpenGLRenderer.cpp')
-rw-r--r--libs/hwui/OpenGLRenderer.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/libs/hwui/OpenGLRenderer.cpp b/libs/hwui/OpenGLRenderer.cpp
index 0f0316f..855a4e0 100644
--- a/libs/hwui/OpenGLRenderer.cpp
+++ b/libs/hwui/OpenGLRenderer.cpp
@@ -240,14 +240,14 @@ bool OpenGLRenderer::restoreSnapshot() {
mSaveCount--;
mSnapshot = previous;
- if (restoreLayer) {
- composeLayer(current, previous);
- }
-
if (restoreClip) {
dirtyClip();
}
+ if (restoreLayer) {
+ composeLayer(current, previous);
+ }
+
return restoreClip;
}
@@ -447,6 +447,7 @@ bool OpenGLRenderer::createFboLayer(Layer* layer, Rect& bounds, sp<Snapshot> sna
inverse.mapRect(clip);
clip.snapToPixelBoundaries();
clip.intersect(bounds);
+ clip.translate(-bounds.left, -bounds.top);
snapshot->flags |= Snapshot::kFlagIsFboLayer;
snapshot->fbo = layer->fbo;