Loading packages/SystemUI/src/com/android/systemui/keyguard/KeyguardUnlockAnimationController.kt +7 −6 Original line number Diff line number Diff line Loading @@ -282,7 +282,8 @@ class KeyguardUnlockAnimationController @Inject constructor( * window like any other app. This can be true while [willUnlockWithSmartspaceTransition] is * false, if the smartspace is not available or was not ready in time. */ private var willUnlockWithInWindowLauncherAnimations: Boolean = false @VisibleForTesting var willUnlockWithInWindowLauncherAnimations: Boolean = false /** * Whether we decided in [prepareForInWindowLauncherAnimations] that we are able to and want to Loading Loading @@ -484,8 +485,8 @@ class KeyguardUnlockAnimationController @Inject constructor( // surface behind the keyguard to finish unlocking. if (keyguardStateController.isFlingingToDismissKeyguard) { playCannedUnlockAnimation() } else if (keyguardStateController.isDismissingFromSwipe && willUnlockWithInWindowLauncherAnimations) { } else if (keyguardStateController.isDismissingFromSwipe && willUnlockWithInWindowLauncherAnimations) { // If we're swiping to unlock to the Launcher, and can play in-window animations, // make the launcher surface fully visible and play the in-window unlock animation // on the launcher icons. System UI will remain locked, using the swipe-to-unlock Loading Loading @@ -574,7 +575,7 @@ class KeyguardUnlockAnimationController @Inject constructor( // Now that the Launcher surface (with its smartspace positioned identically to ours) is // visible, hide our smartspace. lockscreenSmartspace!!.visibility = View.INVISIBLE lockscreenSmartspace?.visibility = View.INVISIBLE // As soon as the shade has animated out of the way, finish the keyguard exit animation. The // in-window animations in the Launcher window will end on their own. Loading Loading @@ -727,8 +728,8 @@ class KeyguardUnlockAnimationController @Inject constructor( // If we're dismissing via swipe to the Launcher, we'll play in-window scale animations, so // don't also scale the window. if (keyguardStateController.isDismissingFromSwipe && willUnlockWithInWindowLauncherAnimations) { if (keyguardStateController.isDismissingFromSwipe && willUnlockWithInWindowLauncherAnimations) { scaleFactor = 1f } Loading packages/SystemUI/tests/src/com/android/systemui/keyguard/KeyguardUnlockAnimationControllerTest.kt +16 −2 Original line number Diff line number Diff line Loading @@ -27,11 +27,11 @@ import org.junit.Test import org.junit.runner.RunWith import org.mockito.ArgumentCaptor.forClass import org.mockito.Mock import org.mockito.Mockito.`when` import org.mockito.Mockito.mock import org.mockito.Mockito.times import org.mockito.Mockito.verify import org.mockito.Mockito.verifyNoMoreInteractions import org.mockito.Mockito.`when` import org.mockito.MockitoAnnotations @RunWith(AndroidTestingRunner::class) Loading Loading @@ -218,4 +218,18 @@ class KeyguardUnlockAnimationControllerTest : SysuiTestCase() { assertFalse(keyguardUnlockAnimationController.canPerformInWindowLauncherAnimations()) assertFalse(keyguardUnlockAnimationController.isPlayingCannedUnlockAnimation()) } @Test fun playCannedUnlockAnimation_nullSmartspaceView_doesNotThrowExecption() { keyguardUnlockAnimationController.lockscreenSmartspace = null keyguardUnlockAnimationController.willUnlockWithInWindowLauncherAnimations = true keyguardUnlockAnimationController.notifyStartSurfaceBehindRemoteAnimation( remoteAnimationTarget, 0 /* startTime */, false /* requestedShowSurfaceBehindKeyguard */ ) assertTrue(keyguardUnlockAnimationController.isPlayingCannedUnlockAnimation()) } } Loading
packages/SystemUI/src/com/android/systemui/keyguard/KeyguardUnlockAnimationController.kt +7 −6 Original line number Diff line number Diff line Loading @@ -282,7 +282,8 @@ class KeyguardUnlockAnimationController @Inject constructor( * window like any other app. This can be true while [willUnlockWithSmartspaceTransition] is * false, if the smartspace is not available or was not ready in time. */ private var willUnlockWithInWindowLauncherAnimations: Boolean = false @VisibleForTesting var willUnlockWithInWindowLauncherAnimations: Boolean = false /** * Whether we decided in [prepareForInWindowLauncherAnimations] that we are able to and want to Loading Loading @@ -484,8 +485,8 @@ class KeyguardUnlockAnimationController @Inject constructor( // surface behind the keyguard to finish unlocking. if (keyguardStateController.isFlingingToDismissKeyguard) { playCannedUnlockAnimation() } else if (keyguardStateController.isDismissingFromSwipe && willUnlockWithInWindowLauncherAnimations) { } else if (keyguardStateController.isDismissingFromSwipe && willUnlockWithInWindowLauncherAnimations) { // If we're swiping to unlock to the Launcher, and can play in-window animations, // make the launcher surface fully visible and play the in-window unlock animation // on the launcher icons. System UI will remain locked, using the swipe-to-unlock Loading Loading @@ -574,7 +575,7 @@ class KeyguardUnlockAnimationController @Inject constructor( // Now that the Launcher surface (with its smartspace positioned identically to ours) is // visible, hide our smartspace. lockscreenSmartspace!!.visibility = View.INVISIBLE lockscreenSmartspace?.visibility = View.INVISIBLE // As soon as the shade has animated out of the way, finish the keyguard exit animation. The // in-window animations in the Launcher window will end on their own. Loading Loading @@ -727,8 +728,8 @@ class KeyguardUnlockAnimationController @Inject constructor( // If we're dismissing via swipe to the Launcher, we'll play in-window scale animations, so // don't also scale the window. if (keyguardStateController.isDismissingFromSwipe && willUnlockWithInWindowLauncherAnimations) { if (keyguardStateController.isDismissingFromSwipe && willUnlockWithInWindowLauncherAnimations) { scaleFactor = 1f } Loading
packages/SystemUI/tests/src/com/android/systemui/keyguard/KeyguardUnlockAnimationControllerTest.kt +16 −2 Original line number Diff line number Diff line Loading @@ -27,11 +27,11 @@ import org.junit.Test import org.junit.runner.RunWith import org.mockito.ArgumentCaptor.forClass import org.mockito.Mock import org.mockito.Mockito.`when` import org.mockito.Mockito.mock import org.mockito.Mockito.times import org.mockito.Mockito.verify import org.mockito.Mockito.verifyNoMoreInteractions import org.mockito.Mockito.`when` import org.mockito.MockitoAnnotations @RunWith(AndroidTestingRunner::class) Loading Loading @@ -218,4 +218,18 @@ class KeyguardUnlockAnimationControllerTest : SysuiTestCase() { assertFalse(keyguardUnlockAnimationController.canPerformInWindowLauncherAnimations()) assertFalse(keyguardUnlockAnimationController.isPlayingCannedUnlockAnimation()) } @Test fun playCannedUnlockAnimation_nullSmartspaceView_doesNotThrowExecption() { keyguardUnlockAnimationController.lockscreenSmartspace = null keyguardUnlockAnimationController.willUnlockWithInWindowLauncherAnimations = true keyguardUnlockAnimationController.notifyStartSurfaceBehindRemoteAnimation( remoteAnimationTarget, 0 /* startTime */, false /* requestedShowSurfaceBehindKeyguard */ ) assertTrue(keyguardUnlockAnimationController.isPlayingCannedUnlockAnimation()) } }