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

Commit 9400cbf0 authored by Michal Brzezinski's avatar Michal Brzezinski
Browse files

Adding QS animation when going from pulsing to shade in split shade

When animation is explicitly set to false, QS is not animating at all, leaving empty space. I don't see any regression in handheld compared to not having QS animated.

Fixes: 260068288
Test: manual, video attached
Change-Id: I7b830522a28a0dd17bb435fc2e597d565dac4b6c
parent e0d1e18a
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -503,9 +503,14 @@ class LockscreenShadeTransitionController @Inject constructor(
     * If secure with redaction: Show bouncer, go to unlocked shade.
     * If secure without redaction or no security: Go to [StatusBarState.SHADE_LOCKED].
     *
     * Split shade is special case and [needsQSAnimation] will be always overridden to true.
     * That's because handheld shade will automatically follow notifications animation, but that's
     * not the case for split shade.
     *
     * @param expandView The view to expand after going to the shade
     * @param needsQSAnimation if this needs the quick settings to slide in from the top or if
     *                         that's already handled separately
     *                         that's already handled separately. This argument will be ignored on
     *                         split shade as there QS animation can't be handled separately.
     */
    @JvmOverloads
    fun goToLockedShade(expandedView: View?, needsQSAnimation: Boolean = true) {
@@ -513,7 +518,7 @@ class LockscreenShadeTransitionController @Inject constructor(
        logger.logTryGoToLockedShade(isKeyguard)
        if (isKeyguard) {
            val animationHandler: ((Long) -> Unit)?
            if (needsQSAnimation) {
            if (needsQSAnimation || useSplitShade) {
                // Let's use the default animation
                animationHandler = null
            } else {
+8 −0
Original line number Diff line number Diff line
@@ -243,6 +243,14 @@ class LockscreenShadeTransitionControllerTest : SysuiTestCase() {
        assertNull(transitionController.dragDownAnimator)
    }

    @Test
    fun testGoToLockedShadeAlwaysCreatesQSAnimationInSplitShade() {
        enableSplitShade()
        transitionController.goToLockedShade(null, needsQSAnimation = true)
        verify(notificationPanelController).animateToFullShade(anyLong())
        assertNotNull(transitionController.dragDownAnimator)
    }

    @Test
    fun testDragDownAmountDoesntCallOutInLockedDownShade() {
        whenever(nsslController.isInLockedDownShade).thenReturn(true)