diff options
| author | John Reck <jreck@google.com> | 2014-06-13 02:32:19 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2014-06-12 05:34:42 +0000 |
| commit | 816f71b7e0dc263362e9fc8d251c8d1944bff17c (patch) | |
| tree | 7f8dc82b247276502976e80945f5b86716d20b7e /libs/hwui/DeferredLayerUpdater.cpp | |
| parent | c0daabbec3da4a39457ce62a15a909983a2368f1 (diff) | |
| parent | 25fbb3fa1138675379102a44405852555cefccbd (diff) | |
| download | frameworks_base-816f71b7e0dc263362e9fc8d251c8d1944bff17c.zip frameworks_base-816f71b7e0dc263362e9fc8d251c8d1944bff17c.tar.gz frameworks_base-816f71b7e0dc263362e9fc8d251c8d1944bff17c.tar.bz2 | |
Merge "Move LayerType to RenderNode"
Diffstat (limited to 'libs/hwui/DeferredLayerUpdater.cpp')
| -rw-r--r-- | libs/hwui/DeferredLayerUpdater.cpp | 30 |
1 files changed, 2 insertions, 28 deletions
diff --git a/libs/hwui/DeferredLayerUpdater.cpp b/libs/hwui/DeferredLayerUpdater.cpp index d494c4c..8e99b9a 100644 --- a/libs/hwui/DeferredLayerUpdater.cpp +++ b/libs/hwui/DeferredLayerUpdater.cpp @@ -27,8 +27,7 @@ static void defaultLayerDestroyer(Layer* layer) { } DeferredLayerUpdater::DeferredLayerUpdater(Layer* layer, LayerDestroyer destroyer) - : mDisplayList(0) - , mSurfaceTexture(0) + : mSurfaceTexture(0) , mTransform(0) , mNeedsGLContextAttach(false) , mUpdateTexImage(false) @@ -41,7 +40,6 @@ DeferredLayerUpdater::DeferredLayerUpdater(Layer* layer, LayerDestroyer destroye mColorFilter = SkSafeRef(mLayer->getColorFilter()); mAlpha = mLayer->getAlpha(); mMode = mLayer->getMode(); - mDirtyRect.setEmpty(); if (!mDestroyer) { mDestroyer = defaultLayerDestroyer; @@ -60,37 +58,13 @@ void DeferredLayerUpdater::setPaint(const SkPaint* paint) { SkRefCnt_SafeAssign(mColorFilter, colorFilter); } -void DeferredLayerUpdater::setDisplayList(RenderNode* displayList, - int left, int top, int right, int bottom) { - mDisplayList = displayList; - if (mDirtyRect.isEmpty()) { - mDirtyRect.set(left, top, right, bottom); - } else { - mDirtyRect.unionWith(Rect(left, top, right, bottom)); - } -} - bool DeferredLayerUpdater::apply(TreeInfo& info) { bool success = true; // These properties are applied the same to both layer types mLayer->setColorFilter(mColorFilter); mLayer->setAlpha(mAlpha, mMode); - if (mDisplayList.get()) { - if (mWidth != mLayer->layer.getWidth() || mHeight != mLayer->layer.getHeight()) { - success = LayerRenderer::resizeLayer(mLayer, mWidth, mHeight); - } - mLayer->setBlend(mBlend); - // TODO: Use DamageAccumulator to get the damage area for the layer's - // subtree to only update that part of the layer. Do this as part of - // reworking layers to be a RenderProperty instead of a View-managed object - mDirtyRect.set(0, 0, mWidth, mHeight); - mDisplayList->prepareTree(info); - mLayer->updateDeferred(mDisplayList.get(), - mDirtyRect.left, mDirtyRect.top, mDirtyRect.right, mDirtyRect.bottom); - mDirtyRect.setEmpty(); - mDisplayList = 0; - } else if (mSurfaceTexture.get()) { + if (mSurfaceTexture.get()) { if (mNeedsGLContextAttach) { mNeedsGLContextAttach = false; mSurfaceTexture->attachToContext(mLayer->getTexture()); |
