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

Commit 9d552b5d authored by Lucas Dupin's avatar Lucas Dupin Committed by android-build-merger
Browse files

Merge "Fix scrim opacity in the brightness mirror" into oc-dr1-dev am: c393be76

am: 51b97163

Change-Id: I6400941fbb285c7aec8c82c8c09eb3f83982e52d
parents efde2b82 51b97163
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -617,9 +617,9 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener,
        return alpha * expandFactor;
    }

    public void forceHideScrims(boolean hide) {
    public void forceHideScrims(boolean hide, boolean animated) {
        mForceHideScrims = hide;
        mAnimateChange = false;
        mAnimateChange = animated;
        scheduleUpdate();
    }

+4 −3
Original line number Diff line number Diff line
@@ -1157,7 +1157,8 @@ public class StatusBar extends SystemUI implements DemoMode,
                            .build());
            final QSTileHost qsh = SystemUIFactory.getInstance().createQSTileHost(mContext, this,
                    mIconController);
            mBrightnessMirrorController = new BrightnessMirrorController(mStatusBarWindow);
            mBrightnessMirrorController = new BrightnessMirrorController(mStatusBarWindow,
                    mScrimController);
            fragmentHostManager.addTagListener(QS.TAG, (tag, f) -> {
                QS qs = (QS) f;
                if (qs instanceof QSFragment) {
@@ -4282,7 +4283,7 @@ public class StatusBar extends SystemUI implements DemoMode,
        releaseGestureWakeLock();
        runLaunchTransitionEndRunnable();
        mLaunchTransitionFadingAway = false;
        mScrimController.forceHideScrims(false /* hide */);
        mScrimController.forceHideScrims(false /* hide */, false /* animated */);
        updateMediaMetaData(true /* metaDataChanged */, true);
    }

@@ -4317,7 +4318,7 @@ public class StatusBar extends SystemUI implements DemoMode,
                if (beforeFading != null) {
                    beforeFading.run();
                }
                mScrimController.forceHideScrims(true /* hide */);
                mScrimController.forceHideScrims(true /* hide */, false /* animated */);
                updateMediaMetaData(false, true);
                mNotificationPanel.setAlpha(1);
                mStackScroller.setParentNotFullyVisible(true);
+7 −5
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@ import android.widget.FrameLayout;
import com.android.systemui.Interpolators;
import com.android.systemui.R;
import com.android.systemui.statusbar.ScrimView;
import com.android.systemui.statusbar.phone.ScrimController;
import com.android.systemui.statusbar.phone.StatusBarWindowView;
import com.android.systemui.statusbar.stack.NotificationStackScrollLayout;

@@ -37,30 +38,31 @@ public class BrightnessMirrorController {
    public long TRANSITION_DURATION_IN = 200;

    private final StatusBarWindowView mStatusBarWindow;
    private final ScrimView mScrimBehind;
    private final ScrimController mScrimController;
    private final View mNotificationPanel;
    private final int[] mInt2Cache = new int[2];
    private View mBrightnessMirror;

    public BrightnessMirrorController(StatusBarWindowView statusBarWindow) {
    public BrightnessMirrorController(StatusBarWindowView statusBarWindow,
            ScrimController scrimController) {
        mStatusBarWindow = statusBarWindow;
        mScrimBehind = (ScrimView) statusBarWindow.findViewById(R.id.scrim_behind);
        mBrightnessMirror = statusBarWindow.findViewById(R.id.brightness_mirror);
        mNotificationPanel = statusBarWindow.findViewById(R.id.notification_panel);
        mStackScroller = (NotificationStackScrollLayout) statusBarWindow.findViewById(
                R.id.notification_stack_scroller);
        mScrimController = scrimController;
    }

    public void showMirror() {
        mBrightnessMirror.setVisibility(View.VISIBLE);
        mStackScroller.setFadingOut(true);
        mScrimBehind.animateViewAlpha(0.0f, TRANSITION_DURATION_OUT, Interpolators.ALPHA_OUT);
        mScrimController.forceHideScrims(true /* hide */, true /* animated */);
        outAnimation(mNotificationPanel.animate())
                .withLayer();
    }

    public void hideMirror() {
        mScrimBehind.animateViewAlpha(1.0f, TRANSITION_DURATION_IN, Interpolators.ALPHA_IN);
        mScrimController.forceHideScrims(false /* hide */, true /* animated */);
        inAnimation(mNotificationPanel.animate())
                .withLayer()
                .withEndAction(new Runnable() {