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

Commit d1423f20 authored by Josh Tsuji's avatar Josh Tsuji
Browse files

Notify ScrimController when unlock finishes, so we can update relevant conditions.

Fixes: 294943235
Test: atest SystemUITests
Test: swipe down on the shade immediately after unlocking
Change-Id: I538e709612603f17d682914eb92106547237a316
parent cebe5ace
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -985,6 +985,7 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump
        // Make sure the clock is in the correct position after the unlock animation
        // so that it's not in the wrong place when we show the keyguard again.
        positionClockAndNotifications(true /* forceClockUpdate */);
        mScrimController.onUnlockAnimationFinished();
    }

    private void unlockAnimationStarted(
+5 −0
Original line number Diff line number Diff line
@@ -709,6 +709,11 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, Dump
        }
    }

    public void onUnlockAnimationFinished() {
        mAnimatingPanelExpansionOnUnlock = false;
        applyAndDispatchState();
    }

    /**
     * Set the amount of progress we are currently in if we're transitioning to the full shade.
     * 0.0f means we're not transitioning yet, while 1 means we're all the way in the full
+9 −0
Original line number Diff line number Diff line
@@ -1802,6 +1802,15 @@ public class ScrimControllerTest extends SysuiTestCase {
        assertFalse(ScrimState.UNLOCKED.mAnimateChange);
    }

    @Test
    public void testNotifScrimAlpha_1f_afterUnlockFinishedAndExpanded() {
        mScrimController.transitionTo(ScrimState.KEYGUARD);
        when(mKeyguardUnlockAnimationController.isPlayingCannedUnlockAnimation()).thenReturn(true);
        mScrimController.transitionTo(ScrimState.UNLOCKED);
        mScrimController.onUnlockAnimationFinished();
        assertAlphaAfterExpansion(mNotificationsScrim, 1f, 1f);
    }

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