summaryrefslogtreecommitdiffstats
path: root/libs
diff options
context:
space:
mode:
authorChet Haase <chet@google.com>2012-10-23 15:45:41 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2012-10-23 15:46:04 -0700
commitfbba753f62f13a12d9287c67921d1ea60e92768d (patch)
treefc7c9718a6056e41d0923d63107c702f17452972 /libs
parentb75ade9cce02dffb967ff4719381254585074c58 (diff)
parent3561d062ff01f3455c984e4cfcd101a64a2e902f (diff)
downloadframeworks_base-fbba753f62f13a12d9287c67921d1ea60e92768d.zip
frameworks_base-fbba753f62f13a12d9287c67921d1ea60e92768d.tar.gz
frameworks_base-fbba753f62f13a12d9287c67921d1ea60e92768d.tar.bz2
Merge "Handle offscreen animations correctly" into jb-mr1-dev
Diffstat (limited to 'libs')
-rw-r--r--libs/hwui/DisplayListRenderer.cpp19
1 files changed, 10 insertions, 9 deletions
diff --git a/libs/hwui/DisplayListRenderer.cpp b/libs/hwui/DisplayListRenderer.cpp
index 81e68bd..7a38b40 100644
--- a/libs/hwui/DisplayListRenderer.cpp
+++ b/libs/hwui/DisplayListRenderer.cpp
@@ -763,16 +763,17 @@ void DisplayList::outputViewProperties(OpenGLRenderer& renderer, char* indent) {
}
}
if (mAlpha < 1 && !mCaching) {
- // TODO: should be able to store the size of a DL at record time and not
- // have to pass it into this call. In fact, this information might be in the
- // location/size info that we store with the new native transform data.
- int flags = SkCanvas::kHasAlphaLayer_SaveFlag;
- if (mClipChildren) {
- flags |= SkCanvas::kClipToLayer_SaveFlag;
+ if (!mHasOverlappingRendering) {
+ ALOGD("%s%s %.2f", indent, "SetAlpha", mAlpha);
+ } else {
+ int flags = SkCanvas::kHasAlphaLayer_SaveFlag;
+ if (mClipChildren) {
+ flags |= SkCanvas::kClipToLayer_SaveFlag;
+ }
+ ALOGD("%s%s %.2f, %.2f, %.2f, %.2f, %d, 0x%x", indent, "SaveLayerAlpha",
+ (float) 0, (float) 0, (float) mRight - mLeft, (float) mBottom - mTop,
+ mMultipliedAlpha, flags);
}
- ALOGD("%s%s %.2f, %.2f, %.2f, %.2f, %d, 0x%x", indent, "SaveLayerAlpha",
- (float) 0, (float) 0, (float) mRight - mLeft, (float) mBottom - mTop,
- mMultipliedAlpha, flags);
}
if (mClipChildren) {
ALOGD("%s%s %.2f, %.2f, %.2f, %.2f", indent, "ClipRect", 0.0f, 0.0f,