diff options
| author | 2014-12-10 16:26:17 +0800 | |
|---|---|---|
| committer | 2014-12-19 13:19:36 +0800 | |
| commit | f73883f69d64efda2515b8d495e49e35211c92a1 (patch) | |
| tree | 3ae4dd205ce7c6a850edd0cfcddd72f24c199b3a | |
| parent | 93241de734c3b9cf20e8e8956e6f6ccacc5b5ef2 (diff) | |
Layout the config-changed window if it has surface
This patch fixes an issue which caused the resumed app to get the
wrong frame at first.
https://code.google.com/p/android/issues/detail?id=82242
Change-Id: I4483029326afca143e7921f3b9563da4f566d2e5
| -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 1c03cedff31e..c80d0e1486da 100644 --- a/services/core/java/com/android/server/wm/WindowManagerService.java +++ b/services/core/java/com/android/server/wm/WindowManagerService.java @@ -8796,7 +8796,8 @@ public class WindowManagerService extends IWindowManager.Stub if (!gone || !win.mHaveFrame || win.mLayoutNeeded || ((win.isConfigChanged() || win.setInsetsChanged()) && ((win.mAttrs.privateFlags & PRIVATE_FLAG_KEYGUARD) != 0 || - win.mAppToken != null && win.mAppToken.layoutConfigChanges)) + (win.mHasSurface && win.mAppToken != null && + win.mAppToken.layoutConfigChanges))) || win.mAttrs.type == TYPE_UNIVERSE_BACKGROUND) { if (!win.mLayoutAttached) { if (initial) { |