Remove flicker when unlocking + turning off screen
As soon as the screen starts turning off, powerManager.isInteractive() becomes false. This forces the home wallpaper leash back to completely invisible again, which creates a noticeable flicker. Since the wallpaper is controlled through a leash, we don't have a problem leaving it at some intermediate opacity. It will get cleaned up and removed later. Test: manual (unlock, power off during unlock animation) Change-Id: I8e8cf659b1f72dd183825f3f0d27c12ddf3c59b2
This commit is contained in:
@@ -902,10 +902,7 @@ class KeyguardUnlockAnimationController @Inject constructor(
|
||||
}
|
||||
|
||||
fun setWallpaperAppearAmount(amount: Float) {
|
||||
val animationAlpha = when {
|
||||
!powerManager.isInteractive -> 0f
|
||||
else -> amount
|
||||
}
|
||||
val animationAlpha = amount
|
||||
|
||||
wallpaperTargets?.forEach { wallpaper ->
|
||||
// SyncRtSurfaceTransactionApplier cannot apply transaction when the target view is
|
||||
|
||||
@@ -343,8 +343,6 @@ class KeyguardUnlockAnimationControllerTest : SysuiTestCase() {
|
||||
// We expect that we've set the surface behind to alpha = 0f since we're not interactive.
|
||||
assertEquals(0f, params.alpha)
|
||||
assertTrue(params.matrix.isIdentity)
|
||||
assertEquals("Wallpaper surface was expected to have opacity 0",
|
||||
0f, captorWp.getLastValue().alpha)
|
||||
|
||||
verifyNoMoreInteractions(surfaceTransactionApplier)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user