summaryrefslogtreecommitdiff
path: root/libs/hwui/DeferredLayerUpdater.cpp
diff options
context:
space:
mode:
author John Reck <jreck@google.com> 2014-04-09 17:00:04 -0700
committer John Reck <jreck@google.com> 2014-04-09 17:00:04 -0700
commitf4198b713e43c0c0f9adac74203cf24c2a49b802 (patch)
treeed1e56915cfd87dbc949d72a49ccaf3ee122881b /libs/hwui/DeferredLayerUpdater.cpp
parent8e1f918738abf70a4dc86dbb12b386a9deea37f8 (diff)
Merge hasFunctors & pushStaging into prepareTree
Bug: 13902607 Fixes synchronous mode for WebView in HardwareLayers Change-Id: I90de1e26dcfd9b75cc2f03bac72705fc23237b68
Diffstat (limited to 'libs/hwui/DeferredLayerUpdater.cpp')
-rw-r--r--libs/hwui/DeferredLayerUpdater.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/libs/hwui/DeferredLayerUpdater.cpp b/libs/hwui/DeferredLayerUpdater.cpp
index 358e1af92aeb..c64c16989c58 100644
--- a/libs/hwui/DeferredLayerUpdater.cpp
+++ b/libs/hwui/DeferredLayerUpdater.cpp
@@ -62,7 +62,7 @@ void DeferredLayerUpdater::setDisplayList(RenderNode* displayList,
}
}
-bool DeferredLayerUpdater::apply() {
+bool DeferredLayerUpdater::apply(bool* hasFunctors) {
bool success = true;
// These properties are applied the same to both layer types
mLayer->setColorFilter(mColorFilter);
@@ -73,7 +73,11 @@ bool DeferredLayerUpdater::apply() {
success = LayerRenderer::resizeLayer(mLayer, mWidth, mHeight);
}
mLayer->setBlend(mBlend);
- mDisplayList->pushStagingChanges();
+ TreeInfo info = {0};
+ mDisplayList->prepareTree(info);
+ if (info.hasFunctors) {
+ *hasFunctors = true;
+ }
mLayer->updateDeferred(mDisplayList.get(),
mDirtyRect.left, mDirtyRect.top, mDirtyRect.right, mDirtyRect.bottom);
mDirtyRect.setEmpty();