summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Jorim Jaggi <jjaggi@google.com> 2016-02-09 21:51:30 -0800
committer Jorim Jaggi <jjaggi@google.com> 2016-02-10 18:25:22 +0000
commitdcb68145236b9ed9f6ea6ee9456db2fca456df3c (patch)
treedeede8676d4334f1234cdf95ecc8b579ff3332c2
parent405da7c59bf1a28c3277f52c532ad1c823e5ff58 (diff)
Reset docked stack resizing when divider dies
Bug: 27062375 Change-Id: I699f8d99ceab8405bcb973942787ee80caea12b2
-rw-r--r--services/core/java/com/android/server/wm/WindowState.java5
1 files changed, 4 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 3430b3484ef7..2096ea065d0d 100644
--- a/services/core/java/com/android/server/wm/WindowState.java
+++ b/services/core/java/com/android/server/wm/WindowState.java
@@ -1621,11 +1621,14 @@ final class WindowState implements WindowManagerPolicy.WindowState {
mService.removeWindowLocked(win);
if (win.mAttrs.type == TYPE_DOCK_DIVIDER) {
// The owner of the docked divider died :( We reset the docked stack,
- // just in case they have the divider at an unstable position.
+ // just in case they have the divider at an unstable position. Better
+ // also reset drag resizing state, because the owner can't do it
+ // anymore.
final TaskStack stack = mService.mStackIdToStack.get(DOCKED_STACK_ID);
if (stack != null) {
stack.resetDockedStackToMiddle();
}
+ mService.setDockedStackResizing(false);
}
} else if (mHasSurface) {
Slog.e(TAG, "!!! LEAK !!! Window removed but surface still valid.");