Loading libs/hwui/DisplayListRenderer.cpp +7 −2 Original line number Diff line number Diff line Loading @@ -473,6 +473,12 @@ void DisplayListRenderer::prepare(bool opaque) { SkCanvas::kMatrix_SaveFlag | SkCanvas::kClip_SaveFlag); mSaveCount = 1; mSnapshot->setClip(0.0f, 0.0f, mWidth, mHeight); mRestoreSaveCount = -1; } void DisplayListRenderer::finish() { insertRestoreToCount(); OpenGLRenderer::finish(); } void DisplayListRenderer::acquireContext() { Loading @@ -497,8 +503,7 @@ void DisplayListRenderer::restore() { } void DisplayListRenderer::restoreToCount(int saveCount) { addOp(DisplayList::RestoreToCount); addInt(saveCount); mRestoreSaveCount = saveCount; OpenGLRenderer::restoreToCount(saveCount); } Loading libs/hwui/DisplayListRenderer.h +12 −0 Original line number Diff line number Diff line Loading @@ -238,6 +238,7 @@ public: void setViewport(int width, int height); void prepare(bool opaque); void finish(); void acquireContext(); void releaseContext(); Loading Loading @@ -318,7 +319,16 @@ public: } private: void insertRestoreToCount() { if (mRestoreSaveCount >= 0) { mWriter.writeInt(DisplayList::RestoreToCount); addInt(mRestoreSaveCount); mRestoreSaveCount = -1; } } inline void addOp(DisplayList::Op drawOp) { insertRestoreToCount(); mWriter.writeInt(drawOp); } Loading Loading @@ -461,6 +471,8 @@ private: DisplayList *mDisplayList; int mRestoreSaveCount; friend class DisplayList; }; // class DisplayListRenderer Loading Loading
libs/hwui/DisplayListRenderer.cpp +7 −2 Original line number Diff line number Diff line Loading @@ -473,6 +473,12 @@ void DisplayListRenderer::prepare(bool opaque) { SkCanvas::kMatrix_SaveFlag | SkCanvas::kClip_SaveFlag); mSaveCount = 1; mSnapshot->setClip(0.0f, 0.0f, mWidth, mHeight); mRestoreSaveCount = -1; } void DisplayListRenderer::finish() { insertRestoreToCount(); OpenGLRenderer::finish(); } void DisplayListRenderer::acquireContext() { Loading @@ -497,8 +503,7 @@ void DisplayListRenderer::restore() { } void DisplayListRenderer::restoreToCount(int saveCount) { addOp(DisplayList::RestoreToCount); addInt(saveCount); mRestoreSaveCount = saveCount; OpenGLRenderer::restoreToCount(saveCount); } Loading
libs/hwui/DisplayListRenderer.h +12 −0 Original line number Diff line number Diff line Loading @@ -238,6 +238,7 @@ public: void setViewport(int width, int height); void prepare(bool opaque); void finish(); void acquireContext(); void releaseContext(); Loading Loading @@ -318,7 +319,16 @@ public: } private: void insertRestoreToCount() { if (mRestoreSaveCount >= 0) { mWriter.writeInt(DisplayList::RestoreToCount); addInt(mRestoreSaveCount); mRestoreSaveCount = -1; } } inline void addOp(DisplayList::Op drawOp) { insertRestoreToCount(); mWriter.writeInt(drawOp); } Loading Loading @@ -461,6 +471,8 @@ private: DisplayList *mDisplayList; int mRestoreSaveCount; friend class DisplayList; }; // class DisplayListRenderer Loading