diff options
author | Digish Pandya <digishp@codeaurora.org> | 2013-11-04 06:30:25 +0530 |
---|---|---|
committer | Digish Pandya <digishp@codeaurora.org> | 2013-11-05 09:22:37 +0530 |
commit | a5ff739d3c9e15d07f1d5c644b4f11205cdac0e8 (patch) | |
tree | ee98034d893f195d9f692735e75ee22a816601da /libs/hwui/OpenGLRenderer.cpp | |
parent | 1f8350935caa6a44ef2608e34d4e3a91db4424a7 (diff) | |
download | frameworks_base-a5ff739d3c9e15d07f1d5c644b4f11205cdac0e8.zip frameworks_base-a5ff739d3c9e15d07f1d5c644b4f11205cdac0e8.tar.gz frameworks_base-a5ff739d3c9e15d07f1d5c644b4f11205cdac0e8.tar.bz2 |
Update the layer's alpha value upon composition of the layer
Fixes: This patch makes sure that the layer's alpha value is
up-to-date and does not reflect the previous view's alpha value.
it fixes the square block on marquee fading edge when text view
is applied transparency.
Change-Id: I110649db72a75fecc02ba56c201a05773f80328c
Diffstat (limited to 'libs/hwui/OpenGLRenderer.cpp')
-rw-r--r-- | libs/hwui/OpenGLRenderer.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libs/hwui/OpenGLRenderer.cpp b/libs/hwui/OpenGLRenderer.cpp index 7735819..722cc63 100644 --- a/libs/hwui/OpenGLRenderer.cpp +++ b/libs/hwui/OpenGLRenderer.cpp @@ -1000,7 +1000,13 @@ void OpenGLRenderer::composeLayer(sp<Snapshot> current, sp<Snapshot> previous) { } } else if (!rect.isEmpty()) { dirtyLayer(rect.left, rect.top, rect.right, rect.bottom); + + save(0); + // the layer contains screen buffer content that shouldn't be alpha modulated + // (and any necessary alpha modulation was handled drawing into the layer) + mSnapshot->alpha = 1.0f; composeLayerRect(layer, rect, true); + restore(); } dirtyClip(); |