diff options
Diffstat (limited to 'libs/hwui/renderthread/CanvasContext.cpp')
| -rw-r--r-- | libs/hwui/renderthread/CanvasContext.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/libs/hwui/renderthread/CanvasContext.cpp b/libs/hwui/renderthread/CanvasContext.cpp index 428e426..4129a89 100644 --- a/libs/hwui/renderthread/CanvasContext.cpp +++ b/libs/hwui/renderthread/CanvasContext.cpp @@ -48,11 +48,13 @@ CanvasContext::CanvasContext(RenderThread& thread, bool translucent, , mHaveNewSurface(false) , mRootRenderNode(rootRenderNode) { mAnimationContext = contextFactory->createAnimationContext(mRenderThread.timeLord()); + mRenderThread.renderState().registerCanvasContext(this); } CanvasContext::~CanvasContext() { destroy(); delete mAnimationContext; + mRenderThread.renderState().unregisterCanvasContext(this); } void CanvasContext::destroy() { @@ -299,6 +301,7 @@ void CanvasContext::buildLayer(RenderNode* node) { // purposes when the frame is actually drawn node->setPropertyFieldsDirty(RenderNode::GENERIC); + mCanvas->markLayersAsBuildLayers(); mCanvas->flushLayerUpdates(); node->incStrong(0); |
