diff options
author | Wale Ogunwale <ogunwale@google.com> | 2015-07-17 22:29:54 -0700 |
---|---|---|
committer | Wale Ogunwale <ogunwale@google.com> | 2015-07-17 22:29:54 -0700 |
commit | 4eef94f2b82f4b86e6d78f752d0f8895acf78cee (patch) | |
tree | e07b78f089f4c84fd2a0e6842062ba318aef996b /services/core/java/com/android/server/wm/WindowManagerService.java | |
parent | e6b407b4be0b9c8240d34259b14e324da4d6832b (diff) | |
download | frameworks_base-4eef94f2b82f4b86e6d78f752d0f8895acf78cee.zip frameworks_base-4eef94f2b82f4b86e6d78f752d0f8895acf78cee.tar.gz frameworks_base-4eef94f2b82f4b86e6d78f752d0f8895acf78cee.tar.bz2 |
Fixed issue with background user window consuming touch events
When adding a window for a background user, it is possible for
the window to consume touch events because it is in the
COMMIT_DRAW_PENDING state. We allow the background user window
to transition READY_TO_SHOW state, but hide the window.
Change is based on https://android-review.googlesource.com/#/c/158772
and also reverts commits 6ee618509a392adb183c2e70390cd9e2031ff0d8
and 588932a53e63c0a7ee281dea22559c129b40eb99
Bug: 22531717
Bug: 22207948
Bug: 18510914
https://code.google.com/p/android-developer-preview/issues/detail?id=2667
Change-Id: I68d2e532c2b1def0d7b22c9b60e48110cf3cd686
Diffstat (limited to 'services/core/java/com/android/server/wm/WindowManagerService.java')
-rw-r--r-- | services/core/java/com/android/server/wm/WindowManagerService.java | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java index c776e8f..4f2b1f9 100644 --- a/services/core/java/com/android/server/wm/WindowManagerService.java +++ b/services/core/java/com/android/server/wm/WindowManagerService.java @@ -10015,7 +10015,7 @@ public class WindowManagerService extends IWindowManager.Stub w.mContentChanged = false; // Moved from updateWindowsAndWallpaperLocked(). - if (w.mHasSurface && !w.isHiddenFromUserLocked()) { + if (w.mHasSurface) { // Take care of the window being ready to display. final boolean committed = winAnimator.commitFinishDrawingLocked(); @@ -10048,10 +10048,7 @@ public class WindowManagerService extends IWindowManager.Stub } winAnimator.setSurfaceBoundariesLocked(recoveringMemory); - } - // Check the draw state of the window, but only if it is visible to the user. - if (!w.isHiddenFromUserLocked()) { final AppWindowToken atoken = w.mAppToken; if (DEBUG_STARTING_WINDOW && atoken != null && w == atoken.startingWindow) { |