diff options
| -rw-r--r-- | services/java/com/android/server/wm/WindowManagerService.java | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/services/java/com/android/server/wm/WindowManagerService.java b/services/java/com/android/server/wm/WindowManagerService.java index dd99322a3ba4..a488b8489db3 100644 --- a/services/java/com/android/server/wm/WindowManagerService.java +++ b/services/java/com/android/server/wm/WindowManagerService.java @@ -2854,18 +2854,15 @@ public class WindowManagerService extends IWindowManager.Stub // updateFocusedWindowLocked() already assigned layers so we only need to // reassign them at this point if the IM window state gets shuffled - boolean assignLayers = false; - - if (imMayMove) { - if (moveInputMethodWindowsIfNeededLocked(false) || toBeDisplayed) { - // Little hack here -- we -should- be able to rely on the - // function to return true if the IME has moved and needs - // its layer recomputed. However, if the IME was hidden - // and isn't actually moved in the list, its layer may be - // out of data so we make sure to recompute it. - assignLayers = true; - } + if (imMayMove && (moveInputMethodWindowsIfNeededLocked(false) || toBeDisplayed)) { + // Little hack here -- we -should- be able to rely on the + // function to return true if the IME has moved and needs + // its layer recomputed. However, if the IME was hidden + // and isn't actually moved in the list, its layer may be + // out of data so we make sure to recompute it. + assignLayersLocked(win.getWindowList()); } + if (wallpaperMayMove) { getDefaultDisplayContentLocked().pendingLayoutChanges |= WindowManagerPolicy.FINISH_LAYOUT_REDO_WALLPAPER; |