summaryrefslogtreecommitdiffstats
path: root/core/java/com/android/internal/widget/ActionBarContainer.java
diff options
context:
space:
mode:
authorChris Craik <ccraik@google.com>2014-08-13 10:37:18 -0700
committerChris Craik <ccraik@google.com>2014-08-13 13:44:40 -0700
commit1e610d479f091f1b09f2a7e5201711bf4d311f6f (patch)
tree14cc9ed1beb3e7badc5283c2bed654c5ffb1df5f /core/java/com/android/internal/widget/ActionBarContainer.java
parent4a8dddbf18fedb33bb2c725db489669a141e1d73 (diff)
downloadframeworks_base-1e610d479f091f1b09f2a7e5201711bf4d311f6f.zip
frameworks_base-1e610d479f091f1b09f2a7e5201711bf4d311f6f.tar.gz
frameworks_base-1e610d479f091f1b09f2a7e5201711bf4d311f6f.tar.bz2
Fix action bar background drawing
bug:16940717 Fixes regression from 0de8add60e0d40c59def41663acae4d57d0b4b15 Change-Id: I7ec30a9c0c9422874cad106a2caeb7dcbe75e1b6
Diffstat (limited to 'core/java/com/android/internal/widget/ActionBarContainer.java')
-rw-r--r--core/java/com/android/internal/widget/ActionBarContainer.java32
1 files changed, 15 insertions, 17 deletions
diff --git a/core/java/com/android/internal/widget/ActionBarContainer.java b/core/java/com/android/internal/widget/ActionBarContainer.java
index 9e24844..254f602 100644
--- a/core/java/com/android/internal/widget/ActionBarContainer.java
+++ b/core/java/com/android/internal/widget/ActionBarContainer.java
@@ -253,7 +253,7 @@ public class ActionBarContainer extends FrameLayout {
return null;
}
- private boolean isCollapsed(View view) {
+ private static boolean isCollapsed(View view) {
return view == null || view.getVisibility() == GONE || view.getMeasuredHeight() == 0;
}
@@ -326,35 +326,33 @@ public class ActionBarContainer extends FrameLayout {
* projection surfaces.
*/
private class ActionBarBackgroundDrawable extends Drawable {
- private Drawable getDrawable() {
+ @Override
+ public void draw(Canvas canvas) {
if (mIsSplit) {
if (mSplitBackground != null) {
- return mSplitBackground;
+ mSplitBackground.draw(canvas);
}
} else {
if (mBackground != null) {
- return mBackground;
+ mBackground.draw(canvas);
}
if (mStackedBackground != null && mIsStacked) {
- return mStackedBackground;
+ mStackedBackground.draw(canvas);
}
}
- return null;
- }
-
- @Override
- public void draw(Canvas canvas) {
- final Drawable drawable = getDrawable();
- if (drawable != null) {
- drawable.draw(canvas);
- }
}
@Override
public void getOutline(@NonNull Outline outline) {
- final Drawable drawable = getDrawable();
- if (drawable != null) {
- drawable.getOutline(outline);
+ if (mIsSplit) {
+ if (mSplitBackground != null) {
+ mSplitBackground.getOutline(outline);
+ }
+ } else {
+ // ignore the stacked background for shadow casting
+ if (mBackground != null) {
+ mBackground.getOutline(outline);
+ }
}
}