Loading services/core/java/com/android/server/wm/WindowLayersController.java +5 −1 Original line number Diff line number Diff line Loading @@ -208,7 +208,11 @@ public class WindowLayersController { if (mDockDivider != null && mDockDivider.isVisibleLw()) { while (!mInputMethodWindows.isEmpty()) { layer = assignAndIncreaseLayerIfNeeded(mInputMethodWindows.remove(), layer); final WindowState w = mInputMethodWindows.remove(); // Only ever move IME windows up, else we brake IME for windows above the divider. if (layer > w.mLayer) { layer = assignAndIncreaseLayerIfNeeded(w, layer); } } } Loading services/core/java/com/android/server/wm/WindowManagerService.java +4 −2 Original line number Diff line number Diff line Loading @@ -1574,11 +1574,13 @@ public class WindowManagerService extends IWindowManager.Stub // If the docked divider is visible, we still need to go through this whole // excercise to find the appropriate input method target (used for animations // and dialog adjustments), but for purposes of Z ordering we simply wish to // place it above the docked divider. // place it above the docked divider. Unless it is already above the divider. WindowState dockedDivider = w.mDisplayContent.mDividerControllerLocked.getWindow(); if (dockedDivider != null && dockedDivider.isVisibleLw()) { int dividerIndex = windows.indexOf(dockedDivider); return dividerIndex > 0 ? dividerIndex + 1 : i + 1; if (dividerIndex > 0 && dividerIndex > i) { return dividerIndex + 1; } } return i+1; } Loading Loading
services/core/java/com/android/server/wm/WindowLayersController.java +5 −1 Original line number Diff line number Diff line Loading @@ -208,7 +208,11 @@ public class WindowLayersController { if (mDockDivider != null && mDockDivider.isVisibleLw()) { while (!mInputMethodWindows.isEmpty()) { layer = assignAndIncreaseLayerIfNeeded(mInputMethodWindows.remove(), layer); final WindowState w = mInputMethodWindows.remove(); // Only ever move IME windows up, else we brake IME for windows above the divider. if (layer > w.mLayer) { layer = assignAndIncreaseLayerIfNeeded(w, layer); } } } Loading
services/core/java/com/android/server/wm/WindowManagerService.java +4 −2 Original line number Diff line number Diff line Loading @@ -1574,11 +1574,13 @@ public class WindowManagerService extends IWindowManager.Stub // If the docked divider is visible, we still need to go through this whole // excercise to find the appropriate input method target (used for animations // and dialog adjustments), but for purposes of Z ordering we simply wish to // place it above the docked divider. // place it above the docked divider. Unless it is already above the divider. WindowState dockedDivider = w.mDisplayContent.mDividerControllerLocked.getWindow(); if (dockedDivider != null && dockedDivider.isVisibleLw()) { int dividerIndex = windows.indexOf(dockedDivider); return dividerIndex > 0 ? dividerIndex + 1 : i + 1; if (dividerIndex > 0 && dividerIndex > i) { return dividerIndex + 1; } } return i+1; } Loading