diff options
author | Chris Craik <ccraik@google.com> | 2014-04-15 16:18:08 -0700 |
---|---|---|
committer | Chris Craik <ccraik@google.com> | 2014-04-23 16:15:11 -0700 |
commit | 3f085429fd47ebd32ac2463b3eae2a5a6c17be25 (patch) | |
tree | 2930b7ee50ce98092fde97546a3d546c817038f1 /libs/hwui/DisplayListRenderer.cpp | |
parent | fbb54b8363b66e0b22d519ee20d1a50e8b5340ee (diff) | |
download | frameworks_base-3f085429fd47ebd32ac2463b3eae2a5a6c17be25.zip frameworks_base-3f085429fd47ebd32ac2463b3eae2a5a6c17be25.tar.gz frameworks_base-3f085429fd47ebd32ac2463b3eae2a5a6c17be25.tar.bz2 |
Clip TouchFeedbackDrawable effect to receiver Outline
Projected RenderNodes are now wrapped with a ClipRect or masked
SaveLayer, so that they are clipped to the outline of the projection
receiver surface.
Change-Id: I1d4afc1bb5d638d650bc0b1dac51a498f216773e
Diffstat (limited to 'libs/hwui/DisplayListRenderer.cpp')
-rw-r--r-- | libs/hwui/DisplayListRenderer.cpp | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/libs/hwui/DisplayListRenderer.cpp b/libs/hwui/DisplayListRenderer.cpp index 6c73d68..e36d975 100644 --- a/libs/hwui/DisplayListRenderer.cpp +++ b/libs/hwui/DisplayListRenderer.cpp @@ -184,20 +184,15 @@ status_t DisplayListRenderer::drawDisplayList(RenderNode* displayList, // dirty is an out parameter and should not be recorded, // it matters only when replaying the display list - // TODO: To be safe, the display list should be ref-counted in the - // resources cache, but we rely on the caller (UI toolkit) to - // do the right thing for now + if (displayList->stagingProperties().isProjectionReceiver()) { + // use staging property, since recording on UI thread + mDisplayListData->projectionReceiveIndex = mDisplayListData->displayListOps.size(); + } DrawDisplayListOp* op = new (alloc()) DrawDisplayListOp(displayList, flags, *currentTransform()); addDrawOp(op); mDisplayListData->addChild(op); - - if (displayList->stagingProperties().isProjectionReceiver()) { - // use staging property, since recording on UI thread - mDisplayListData->projectionReceiveIndex = mDisplayListData->displayListOps.size() - 1; - } - return DrawGlInfo::kStatusDone; } |