summaryrefslogtreecommitdiffstats
path: root/libs/hwui/DeferredDisplayList.h
diff options
context:
space:
mode:
authorChris Craik <ccraik@google.com>2013-03-28 11:25:24 -0700
committerChris Craik <ccraik@google.com>2013-03-28 11:33:13 -0700
commit7273daace9303f4662444111c40bb83d3ead4a92 (patch)
treec1bb85a291fef72c89254888dea021bd3b847b1f /libs/hwui/DeferredDisplayList.h
parent8ff0201ad0354b6c43aebac6075298ee847c42ef (diff)
downloadframeworks_base-7273daace9303f4662444111c40bb83d3ead4a92.zip
frameworks_base-7273daace9303f4662444111c40bb83d3ead4a92.tar.gz
frameworks_base-7273daace9303f4662444111c40bb83d3ead4a92.tar.bz2
Fix issues related to saveLayer/restore deferral
bug:8464795 Changes drawModifiers and alpha to be restored for all operations, since saveLayer/restore use these values, not just draw operations Also forces a renderer state restoration before a deferred restore op is played back, in case it is associated with a saveLayer that doesn't have the save_clip flag set Change-Id: I9da5d44fefbfffdee164c98f4f139843dacf85df
Diffstat (limited to 'libs/hwui/DeferredDisplayList.h')
-rw-r--r--libs/hwui/DeferredDisplayList.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/libs/hwui/DeferredDisplayList.h b/libs/hwui/DeferredDisplayList.h
index 2afc8c1..3e450da 100644
--- a/libs/hwui/DeferredDisplayList.h
+++ b/libs/hwui/DeferredDisplayList.h
@@ -65,7 +65,7 @@ public:
void addClip(OpenGLRenderer& renderer, ClipOp* op);
void addSaveLayer(OpenGLRenderer& renderer, SaveLayerOp* op, int newSaveCount);
void addSave(OpenGLRenderer& renderer, SaveOp* op, int newSaveCount);
- void addRestoreToCount(OpenGLRenderer& renderer, int newSaveCount);
+ void addRestoreToCount(OpenGLRenderer& renderer, StateOp* op, int newSaveCount);
/**
* Add a draw op into the DeferredDisplayList, reordering as needed (for performance) if
@@ -81,7 +81,7 @@ private:
void resetBatchingState();
void storeStateOpBarrier(OpenGLRenderer& renderer, StateOp* op);
- void storeRestoreToCountBarrier(int newSaveCount);
+ void storeRestoreToCountBarrier(OpenGLRenderer& renderer, StateOp* op, int newSaveCount);
bool recordingComplexClip() const { return mComplexClipStackStart >= 0; }