summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Wale Ogunwale <ogunwale@google.com> 2016-05-09 11:18:18 -0700
committer Wale Ogunwale <ogunwale@google.com> 2016-05-09 11:18:18 -0700
commitd0a166a37d384f21ea595b187041e9e0894e4e7c (patch)
treebe7666c1275166cfe90018bb39bb9a67383ee5d7
parentd4bdf9ca7c99fce6e4c40d2f572a3556abbdc7ce (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.java3
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);
}
}