summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Adrian Roos <roosa@google.com> 2016-05-27 11:46:10 -0700
committer Adrian Roos <roosa@google.com> 2016-05-27 11:46:15 -0700
commitdd654eaf406ee668a040c8964c63389fe4af80ad (patch)
tree7e78873585335d95f78e27c20346c571318c4b29
parentf8c504db7f2e0e35c5fa19cad46681dc17db7488 (diff)
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
-rw-r--r--services/core/java/com/android/server/policy/PhoneWindowManager.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/policy/PhoneWindowManager.java b/services/core/java/com/android/server/policy/PhoneWindowManager.java
index 0cafb93a060b..66bb24d02de4 100644
--- a/services/core/java/com/android/server/policy/PhoneWindowManager.java
+++ b/services/core/java/com/android/server/policy/PhoneWindowManager.java
@@ -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();