Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1e610d47 authored by Chris Craik's avatar Chris Craik
Browse files

Fix action bar background drawing

bug:16940717

Fixes regression from 0de8add60e0d40c59def41663acae4d57d0b4b15

Change-Id: I7ec30a9c0c9422874cad106a2caeb7dcbe75e1b6
parent 4a8dddbf
Loading
Loading
Loading
Loading
+15 −17
Original line number Diff line number Diff line
@@ -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);
        public void getOutline(@NonNull Outline outline) {
            if (mIsSplit) {
                if (mSplitBackground != null) {
                    mSplitBackground.getOutline(outline);
                }
            } else {
                // ignore the stacked background for shadow casting
                if (mBackground != null) {
                    mBackground.getOutline(outline);
                }

        @Override
        public void getOutline(@NonNull Outline outline) {
            final Drawable drawable = getDrawable();
            if (drawable != null) {
                drawable.getOutline(outline);
            }
        }