diff options
| author | 2016-06-24 11:23:06 -0700 | |
|---|---|---|
| committer | 2016-06-24 11:30:58 -0700 | |
| commit | 8c5d422e0265887d182434d3ac467231fee4588c (patch) | |
| tree | 965b1fce537d98b1d786c349be4a2125a868b253 | |
| parent | 4b6614e5762852e4495a991b5fc833a342f2cb36 (diff) | |
Do not load exit animation again if window is already animating
Transition can be started as soon as the entering app is drawn.
If the exiting app relayouts to invisible after transition started,
don't load the exit animation again.
bug: 29405575
Change-Id: I05ba4f733afb9426626db113be721a6bf888f093
| -rw-r--r-- | services/core/java/com/android/server/wm/WindowManagerService.java | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java index b8b78483faec..54960a4ee46c 100644 --- a/services/core/java/com/android/server/wm/WindowManagerService.java +++ b/services/core/java/com/android/server/wm/WindowManagerService.java @@ -3003,7 +3003,8 @@ public class WindowManagerService extends IWindowManager.Stub if (win.mAttrs.type == TYPE_APPLICATION_STARTING) { transit = WindowManagerPolicy.TRANSIT_PREVIEW_DONE; } - if (win.isWinVisibleLw() && winAnimator.applyAnimationLocked(transit, false)) { + if (win.isWinVisibleLw() && !winAnimator.isAnimationSet() + && winAnimator.applyAnimationLocked(transit, false)) { focusMayChange = isDefaultDisplay; win.mAnimatingExit = true; win.mWinAnimator.mAnimating = true; |