Merge "Fix IME for status bar in docked mode" into nyc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
93536af56d
@@ -208,7 +208,11 @@ public class WindowLayersController {
|
|||||||
|
|
||||||
if (mDockDivider != null && mDockDivider.isVisibleLw()) {
|
if (mDockDivider != null && mDockDivider.isVisibleLw()) {
|
||||||
while (!mInputMethodWindows.isEmpty()) {
|
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);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1574,11 +1574,13 @@ public class WindowManagerService extends IWindowManager.Stub
|
|||||||
// If the docked divider is visible, we still need to go through this whole
|
// 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
|
// excercise to find the appropriate input method target (used for animations
|
||||||
// and dialog adjustments), but for purposes of Z ordering we simply wish to
|
// 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();
|
WindowState dockedDivider = w.mDisplayContent.mDividerControllerLocked.getWindow();
|
||||||
if (dockedDivider != null && dockedDivider.isVisibleLw()) {
|
if (dockedDivider != null && dockedDivider.isVisibleLw()) {
|
||||||
int dividerIndex = windows.indexOf(dockedDivider);
|
int dividerIndex = windows.indexOf(dockedDivider);
|
||||||
return dividerIndex > 0 ? dividerIndex + 1 : i + 1;
|
if (dividerIndex > 0 && dividerIndex > i) {
|
||||||
|
return dividerIndex + 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return i+1;
|
return i+1;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user