Loading core/java/android/view/HardwareRenderer.java +6 −1 Original line number Original line Diff line number Diff line Loading @@ -1200,7 +1200,12 @@ public abstract class HardwareRenderer { Trace.traceEnd(Trace.TRACE_TAG_VIEW); Trace.traceEnd(Trace.TRACE_TAG_VIEW); } } Trace.traceBegin(Trace.TRACE_TAG_VIEW, "prepareFrame"); try { status = onPreDraw(dirty); status = onPreDraw(dirty); } finally { Trace.traceEnd(Trace.TRACE_TAG_VIEW); } saveCount = canvas.save(); saveCount = canvas.save(); callbacks.onHardwarePreDraw(canvas); callbacks.onHardwarePreDraw(canvas); Loading libs/hwui/DisplayListRenderer.cpp +1 −1 Original line number Original line Diff line number Diff line Loading @@ -1434,7 +1434,7 @@ void DisplayListRenderer::setViewport(int width, int height) { mHeight = height; mHeight = height; } } int DisplayListRenderer::prepareDirty(float left, float top, status_t DisplayListRenderer::prepareDirty(float left, float top, float right, float bottom, bool opaque) { float right, float bottom, bool opaque) { mSnapshot = new Snapshot(mFirstSnapshot, mSnapshot = new Snapshot(mFirstSnapshot, SkCanvas::kMatrix_SaveFlag | SkCanvas::kClip_SaveFlag); SkCanvas::kMatrix_SaveFlag | SkCanvas::kClip_SaveFlag); Loading libs/hwui/DisplayListRenderer.h +1 −1 Original line number Original line Diff line number Diff line Loading @@ -550,7 +550,7 @@ public: virtual bool isDeferred(); virtual bool isDeferred(); virtual void setViewport(int width, int height); virtual void setViewport(int width, int height); virtual int prepareDirty(float left, float top, float right, float bottom, bool opaque); virtual status_t prepareDirty(float left, float top, float right, float bottom, bool opaque); virtual void finish(); virtual void finish(); virtual status_t callDrawGLFunction(Functor *functor, Rect& dirty); virtual status_t callDrawGLFunction(Functor *functor, Rect& dirty); Loading libs/hwui/Layer.cpp +1 −0 Original line number Original line Diff line number Diff line Loading @@ -31,6 +31,7 @@ Layer::Layer(const uint32_t layerWidth, const uint32_t layerHeight) { meshIndices = NULL; meshIndices = NULL; meshElementCount = 0; meshElementCount = 0; cacheable = true; cacheable = true; dirty = false; textureLayer = false; textureLayer = false; renderTarget = GL_TEXTURE_2D; renderTarget = GL_TEXTURE_2D; texture.width = layerWidth; texture.width = layerWidth; Loading libs/hwui/Layer.h +14 −0 Original line number Original line Diff line number Diff line Loading @@ -162,6 +162,14 @@ struct Layer { this->cacheable = cacheable; this->cacheable = cacheable; } } inline bool isDirty() { return dirty; } inline void setDirty(bool dirty) { this->dirty = dirty; } inline bool isTextureLayer() { inline bool isTextureLayer() { return textureLayer; return textureLayer; } } Loading Loading @@ -286,6 +294,12 @@ private: */ */ bool textureLayer; bool textureLayer; /** * When set to true, this layer is dirty and should be cleared * before any rendering occurs. */ bool dirty; /** /** * Indicates the render target. * Indicates the render target. */ */ Loading Loading
core/java/android/view/HardwareRenderer.java +6 −1 Original line number Original line Diff line number Diff line Loading @@ -1200,7 +1200,12 @@ public abstract class HardwareRenderer { Trace.traceEnd(Trace.TRACE_TAG_VIEW); Trace.traceEnd(Trace.TRACE_TAG_VIEW); } } Trace.traceBegin(Trace.TRACE_TAG_VIEW, "prepareFrame"); try { status = onPreDraw(dirty); status = onPreDraw(dirty); } finally { Trace.traceEnd(Trace.TRACE_TAG_VIEW); } saveCount = canvas.save(); saveCount = canvas.save(); callbacks.onHardwarePreDraw(canvas); callbacks.onHardwarePreDraw(canvas); Loading
libs/hwui/DisplayListRenderer.cpp +1 −1 Original line number Original line Diff line number Diff line Loading @@ -1434,7 +1434,7 @@ void DisplayListRenderer::setViewport(int width, int height) { mHeight = height; mHeight = height; } } int DisplayListRenderer::prepareDirty(float left, float top, status_t DisplayListRenderer::prepareDirty(float left, float top, float right, float bottom, bool opaque) { float right, float bottom, bool opaque) { mSnapshot = new Snapshot(mFirstSnapshot, mSnapshot = new Snapshot(mFirstSnapshot, SkCanvas::kMatrix_SaveFlag | SkCanvas::kClip_SaveFlag); SkCanvas::kMatrix_SaveFlag | SkCanvas::kClip_SaveFlag); Loading
libs/hwui/DisplayListRenderer.h +1 −1 Original line number Original line Diff line number Diff line Loading @@ -550,7 +550,7 @@ public: virtual bool isDeferred(); virtual bool isDeferred(); virtual void setViewport(int width, int height); virtual void setViewport(int width, int height); virtual int prepareDirty(float left, float top, float right, float bottom, bool opaque); virtual status_t prepareDirty(float left, float top, float right, float bottom, bool opaque); virtual void finish(); virtual void finish(); virtual status_t callDrawGLFunction(Functor *functor, Rect& dirty); virtual status_t callDrawGLFunction(Functor *functor, Rect& dirty); Loading
libs/hwui/Layer.cpp +1 −0 Original line number Original line Diff line number Diff line Loading @@ -31,6 +31,7 @@ Layer::Layer(const uint32_t layerWidth, const uint32_t layerHeight) { meshIndices = NULL; meshIndices = NULL; meshElementCount = 0; meshElementCount = 0; cacheable = true; cacheable = true; dirty = false; textureLayer = false; textureLayer = false; renderTarget = GL_TEXTURE_2D; renderTarget = GL_TEXTURE_2D; texture.width = layerWidth; texture.width = layerWidth; Loading
libs/hwui/Layer.h +14 −0 Original line number Original line Diff line number Diff line Loading @@ -162,6 +162,14 @@ struct Layer { this->cacheable = cacheable; this->cacheable = cacheable; } } inline bool isDirty() { return dirty; } inline void setDirty(bool dirty) { this->dirty = dirty; } inline bool isTextureLayer() { inline bool isTextureLayer() { return textureLayer; return textureLayer; } } Loading Loading @@ -286,6 +294,12 @@ private: */ */ bool textureLayer; bool textureLayer; /** * When set to true, this layer is dirty and should be cleared * before any rendering occurs. */ bool dirty; /** /** * Indicates the render target. * Indicates the render target. */ */ Loading