diff options
| author | 2016-05-09 11:18:18 -0700 | |
|---|---|---|
| committer | 2016-05-09 11:18:18 -0700 | |
| commit | d0a166a37d384f21ea595b187041e9e0894e4e7c (patch) | |
| tree | be7666c1275166cfe90018bb39bb9a67383ee5d7 | |
| parent | d4bdf9ca7c99fce6e4c40d2f572a3556abbdc7ce (diff) | |
Remove replaced window if we aren't animating its exit.
Allow removal of replaced window if it isn't running an exit animation
and wasn't set to run an exit animation.
Bug: 28411852
Change-Id: I916d7c9461691bc58367d012113fefe9c6485127
| -rw-r--r-- | services/core/java/com/android/server/wm/WindowState.java | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/wm/WindowState.java b/services/core/java/com/android/server/wm/WindowState.java index 7341e1ea1b8c..e42a0d16b5ef 100644 --- a/services/core/java/com/android/server/wm/WindowState.java +++ b/services/core/java/com/android/server/wm/WindowState.java @@ -1586,11 +1586,12 @@ final class WindowState implements WindowManagerPolicy.WindowState { win.transferDimToReplacement(); } win.mWillReplaceWindow = false; + final boolean animateReplacingWindow = win.mAnimateReplacingWindow; win.mAnimateReplacingWindow = false; win.mReplacingRemoveRequested = false; win.mReplacingWindow = null; mSkipEnterAnimationForSeamlessReplacement = false; - if (win.mAnimatingExit) { + if (win.mAnimatingExit || !animateReplacingWindow) { mService.removeWindowInnerLocked(win); } } |