summaryrefslogtreecommitdiff
path: root/libs/hwui/renderthread/RenderProxy.cpp
diff options
context:
space:
mode:
authorJohn Reck <jreck@google.com>2017-09-08 11:00:42 -0700
committerJohn Reck <jreck@google.com>2017-09-08 11:00:42 -0700
commitf138b174fdbbfe73572148f09da7f00ab5261dc4 (patch)
treeea190c12782ff05a2f9cb586d26e0650ef428448 /libs/hwui/renderthread/RenderProxy.cpp
parent95786f322a4b69d7dcd3131a7d15030735c4d112 (diff)
Fix flicker from multiwindow resize
Move content bounds into DrawFrameTask. This ensures that changes in bounds are synchronized with changes in rendering commands, avoiding potential underdraw. Bug: 64200212 Test: Repro steps in bug. Drag up/down on resize handle, verify no flicker. Change-Id: I3109acf262e23c2a7d8904f1dcbfc8273aaed65b
Diffstat (limited to 'libs/hwui/renderthread/RenderProxy.cpp')
-rw-r--r--libs/hwui/renderthread/RenderProxy.cpp14
1 files changed, 1 insertions, 13 deletions
diff --git a/libs/hwui/renderthread/RenderProxy.cpp b/libs/hwui/renderthread/RenderProxy.cpp
index 7fe966dde316..9048bd14b35c 100644
--- a/libs/hwui/renderthread/RenderProxy.cpp
+++ b/libs/hwui/renderthread/RenderProxy.cpp
@@ -551,20 +551,8 @@ void RenderProxy::drawRenderNode(RenderNode* node) {
staticPostAndWait(task);
}
-CREATE_BRIDGE5(setContentDrawBounds, CanvasContext* context, int left, int top,
- int right, int bottom) {
- args->context->setContentDrawBounds(args->left, args->top, args->right, args->bottom);
- return nullptr;
-}
-
void RenderProxy::setContentDrawBounds(int left, int top, int right, int bottom) {
- SETUP_TASK(setContentDrawBounds);
- args->context = mContext;
- args->left = left;
- args->top = top;
- args->right = right;
- args->bottom = bottom;
- staticPostAndWait(task);
+ mDrawFrameTask.setContentDrawBounds(left, top, right, bottom);
}
CREATE_BRIDGE1(serializeDisplayListTree, CanvasContext* context) {