Fix IME and NavBar overlap with Direct Reply

In phone landscape, when the navigation bar is on the right,
and when the status bar is forcing the IME and NavBar, make
sure that the nav bar and IME don't overlap, even if the
NavBar is only transient.

Bug: 28914905
Change-Id: I22921f1aca7970c2d02dfd88408eb15c5b17151f
This commit is contained in:
Adrian Roos
2016-05-27 11:46:10 -07:00
parent f8c504db7f
commit dd654eaf40

View File

@@ -4360,6 +4360,11 @@ public class PhoneWindowManager implements WindowManagerPolicy {
pf.bottom = df.bottom = of.bottom = mUnrestrictedScreenTop + mUnrestrictedScreenHeight;
// ...with content insets above the nav bar
cf.bottom = vf.bottom = mStableBottom;
if (mStatusBar != null && mFocusedWindow == mStatusBar && canReceiveInput(mStatusBar)) {
// The status bar forces the navigation bar while it's visible. Make sure the IME
// avoids the navigation bar in that case.
pf.right = df.right = of.right = cf.right = vf.right = mStableRight;
}
// IM dock windows always go to the bottom of the screen.
attrs.gravity = Gravity.BOTTOM;
mDockLayer = win.getSurfaceLayer();