Stop animating wallpaper and non-app windows in WM

When keyguard is going away, WM applies animation on the wallpaper and
non-app windows. With remote animation enabled, all animation will be
handled in KeyguardService, so WM shouldn't apply animation locally.

Bug: 175686682
Test: Manual. Tap notification on the lock screen to dismiss keyguard,
      verify alpha value of the wallpaper surface unchanged.
Change-Id: I46879ef872cfa38e99586cbeb4c991d1ec359e87
This commit is contained in:
Issei Suzuki
2021-06-09 10:06:58 +02:00
parent 6ceb0988ed
commit 52e22aab2b
2 changed files with 7 additions and 4 deletions

View File

@@ -800,7 +800,8 @@ public class AppTransitionController {
}
private void handleNonAppWindowsInTransition(@TransitionOldType int transit, int flags) {
if (transit == TRANSIT_OLD_KEYGUARD_GOING_AWAY) {
if (transit == TRANSIT_OLD_KEYGUARD_GOING_AWAY
&& !WindowManagerService.sEnableRemoteKeyguardGoingAwayAnimation) {
if ((flags & TRANSIT_FLAG_KEYGUARD_GOING_AWAY_WITH_WALLPAPER) != 0
&& (flags & TRANSIT_FLAG_KEYGUARD_GOING_AWAY_NO_ANIMATION) == 0
&& (flags & TRANSIT_FLAG_KEYGUARD_GOING_AWAY_SUBTLE_ANIMATION) == 0) {
@@ -812,8 +813,9 @@ public class AppTransitionController {
}
}
}
if (transit == TRANSIT_OLD_KEYGUARD_GOING_AWAY
|| transit == TRANSIT_OLD_KEYGUARD_GOING_AWAY_ON_WALLPAPER) {
if ((transit == TRANSIT_OLD_KEYGUARD_GOING_AWAY
|| transit == TRANSIT_OLD_KEYGUARD_GOING_AWAY_ON_WALLPAPER)
&& !WindowManagerService.sEnableRemoteKeyguardGoingAwayAnimation) {
mDisplayContent.startKeyguardExitOnNonAppWindows(
transit == TRANSIT_OLD_KEYGUARD_GOING_AWAY_ON_WALLPAPER,
(flags & TRANSIT_FLAG_KEYGUARD_GOING_AWAY_TO_SHADE) != 0,

View File

@@ -401,7 +401,8 @@ class Transition extends Binder implements BLASTSyncEngine.TransactionReadyListe
if (dc == null) {
return;
}
if (transit == TRANSIT_KEYGUARD_GOING_AWAY) {
if (transit == TRANSIT_KEYGUARD_GOING_AWAY
&& !WindowManagerService.sEnableRemoteKeyguardGoingAwayAnimation) {
if ((flags & TRANSIT_FLAG_KEYGUARD_GOING_AWAY_WITH_WALLPAPER) != 0
&& (flags & TRANSIT_FLAG_KEYGUARD_GOING_AWAY_NO_ANIMATION) == 0
&& (flags & TRANSIT_FLAG_KEYGUARD_GOING_AWAY_SUBTLE_ANIMATION) == 0) {