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

Commit 48655e0c authored by Josh Tsuji's avatar Josh Tsuji Committed by Android (Google) Code Review
Browse files

Merge "Revert "Fix scrim turning opaque during occlusion animation."" into tm-qpr-dev

parents 5f420c36 30246d81
Loading
Loading
Loading
Loading
+1 −13
Original line number Diff line number Diff line
@@ -53,7 +53,6 @@ import com.android.systemui.dagger.SysUISingleton;
import com.android.systemui.dagger.qualifiers.Main;
import com.android.systemui.dock.DockManager;
import com.android.systemui.keyguard.KeyguardUnlockAnimationController;
import com.android.systemui.keyguard.KeyguardViewMediator;
import com.android.systemui.scrim.ScrimView;
import com.android.systemui.shade.NotificationPanelViewController;
import com.android.systemui.statusbar.notification.stack.ViewState;
@@ -205,7 +204,6 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, Dump
    private final ScreenOffAnimationController mScreenOffAnimationController;
    private final KeyguardUnlockAnimationController mKeyguardUnlockAnimationController;
    private final StatusBarKeyguardViewManager mStatusBarKeyguardViewManager;
    private KeyguardViewMediator mKeyguardViewMediator;

    private GradientColors mColors;
    private boolean mNeedsDrawableColorUpdate;
@@ -275,8 +273,7 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, Dump
            @Main Executor mainExecutor,
            ScreenOffAnimationController screenOffAnimationController,
            KeyguardUnlockAnimationController keyguardUnlockAnimationController,
            StatusBarKeyguardViewManager statusBarKeyguardViewManager,
            KeyguardViewMediator keyguardViewMediator) {
            StatusBarKeyguardViewManager statusBarKeyguardViewManager) {
        mScrimStateListener = lightBarController::setScrimState;
        mDefaultScrimAlpha = BUSY_SCRIM_ALPHA;

@@ -315,8 +312,6 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, Dump
            }
        });
        mColors = new GradientColors();

        mKeyguardViewMediator = keyguardViewMediator;
    }

    /**
@@ -812,13 +807,6 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, Dump
                        mBehindTint,
                        interpolatedFraction);
            }

            // If we're unlocked but still playing the occlude animation, remain at the keyguard
            // alpha temporarily.
            if (mKeyguardViewMediator.isOccludeAnimationPlaying()
                    || mState.mLaunchingAffordanceWithPreview) {
                mNotificationsAlpha = KEYGUARD_SCRIM_ALPHA;
            }
        } else if (mState == ScrimState.AUTH_SCRIMMED_SHADE) {
            mNotificationsAlpha = (float) Math.pow(getInterpolatedFraction(), 0.8f);
        } else if (mState == ScrimState.KEYGUARD || mState == ScrimState.SHADE_LOCKED
+2 −33
Original line number Diff line number Diff line
@@ -16,7 +16,6 @@

package com.android.systemui.statusbar.phone;

import static com.android.systemui.statusbar.phone.ScrimController.KEYGUARD_SCRIM_ALPHA;
import static com.android.systemui.statusbar.phone.ScrimController.OPAQUE;
import static com.android.systemui.statusbar.phone.ScrimController.SEMI_TRANSPARENT;
import static com.android.systemui.statusbar.phone.ScrimController.TRANSPARENT;
@@ -59,7 +58,6 @@ import com.android.systemui.SysuiTestCase;
import com.android.systemui.animation.ShadeInterpolation;
import com.android.systemui.dock.DockManager;
import com.android.systemui.keyguard.KeyguardUnlockAnimationController;
import com.android.systemui.keyguard.KeyguardViewMediator;
import com.android.systemui.scrim.ScrimView;
import com.android.systemui.statusbar.policy.FakeConfigurationController;
import com.android.systemui.statusbar.policy.KeyguardStateController;
@@ -119,7 +117,6 @@ public class ScrimControllerTest extends SysuiTestCase {
    // TODO(b/204991468): Use a real PanelExpansionStateManager object once this bug is fixed. (The
    //   event-dispatch-on-registration pattern caused some of these unit tests to fail.)
    @Mock private StatusBarKeyguardViewManager mStatusBarKeyguardViewManager;
    @Mock private KeyguardViewMediator mKeyguardViewMediator;

    private static class AnimatorListener implements Animator.AnimatorListener {
        private int mNumStarts;
@@ -233,8 +230,7 @@ public class ScrimControllerTest extends SysuiTestCase {
                mDockManager, mConfigurationController, new FakeExecutor(new FakeSystemClock()),
                mScreenOffAnimationController,
                mKeyguardUnlockAnimationController,
                mStatusBarKeyguardViewManager,
                mKeyguardViewMediator);
                mStatusBarKeyguardViewManager);
        mScrimController.setScrimVisibleListener(visible -> mScrimVisibility = visible);
        mScrimController.attachViews(mScrimBehind, mNotificationsScrim, mScrimInFront);
        mScrimController.setAnimatorListener(mAnimatorListener);
@@ -243,8 +239,6 @@ public class ScrimControllerTest extends SysuiTestCase {
        mScrimController.setWallpaperSupportsAmbientMode(false);
        mScrimController.transitionTo(ScrimState.KEYGUARD);
        finishAnimationsImmediately();

        mScrimController.setLaunchingAffordanceWithPreview(false);
    }

    @After
@@ -858,8 +852,7 @@ public class ScrimControllerTest extends SysuiTestCase {
                mDockManager, mConfigurationController, new FakeExecutor(new FakeSystemClock()),
                mScreenOffAnimationController,
                mKeyguardUnlockAnimationController,
                mStatusBarKeyguardViewManager,
                mKeyguardViewMediator);
                mStatusBarKeyguardViewManager);
        mScrimController.setScrimVisibleListener(visible -> mScrimVisibility = visible);
        mScrimController.attachViews(mScrimBehind, mNotificationsScrim, mScrimInFront);
        mScrimController.setAnimatorListener(mAnimatorListener);
@@ -1638,30 +1631,6 @@ public class ScrimControllerTest extends SysuiTestCase {
        assertScrimAlpha(mScrimBehind, 0);
    }

    @Test
    public void keyguardAlpha_whenUnlockedForOcclusion_ifPlayingOcclusionAnimation() {
        mScrimController.transitionTo(ScrimState.KEYGUARD);

        when(mKeyguardViewMediator.isOccludeAnimationPlaying()).thenReturn(true);

        mScrimController.transitionTo(ScrimState.UNLOCKED);
        finishAnimationsImmediately();

        assertScrimAlpha(mNotificationsScrim, (int) (KEYGUARD_SCRIM_ALPHA * 255f));
    }

    @Test
    public void keyguardAlpha_whenUnlockedForLaunch_ifLaunchingAffordance() {
        mScrimController.transitionTo(ScrimState.KEYGUARD);
        when(mKeyguardViewMediator.isOccludeAnimationPlaying()).thenReturn(true);
        mScrimController.setLaunchingAffordanceWithPreview(true);

        mScrimController.transitionTo(ScrimState.UNLOCKED);
        finishAnimationsImmediately();

        assertScrimAlpha(mNotificationsScrim, (int) (KEYGUARD_SCRIM_ALPHA * 255f));
    }

    private void assertAlphaAfterExpansion(ScrimView scrim, float expectedAlpha, float expansion) {
        mScrimController.setRawPanelExpansionFraction(expansion);
        finishAnimationsImmediately();