diff options
| author | 2016-03-04 18:27:19 +0000 | |
|---|---|---|
| committer | 2016-03-04 18:27:20 +0000 | |
| commit | acc86abf82b2dad283c31a1cbec7568695ebfd16 (patch) | |
| tree | 7dc0bed01ffc156220794d12512a2b068ec91901 | |
| parent | 485e41d51067f9cd1f7de245533f1288e3a3d822 (diff) | |
| parent | 2e4b7327ce4d93bbdcf959f38b0b8adba34add6e (diff) | |
Merge "Add config value to force nav bar to be opaque" into nyc-dev
| -rw-r--r-- | core/res/res/values/config.xml | 4 | ||||
| -rw-r--r-- | core/res/res/values/symbols.xml | 1 | ||||
| -rw-r--r-- | services/core/java/com/android/server/policy/PhoneWindowManager.java | 8 |
3 files changed, 13 insertions, 0 deletions
diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml index 9a2a6eb8ab42..7857107106ce 100644 --- a/core/res/res/values/config.xml +++ b/core/res/res/values/config.xml @@ -2440,6 +2440,10 @@ flag). --> <bool name="config_forceWindowDrawsStatusBarBackground">true</bool> + <!-- If set, this will force the navigation bar to always be drawn with an opaque + background. --> + <bool name="config_forceNavBarAlwaysOpaque">false</bool> + <!-- Default bounds [left top right bottom] on screen for picture-in-picture windows. --> <string translatable="false" name="config_defaultPictureInPictureBounds">"0 0 100 100"</string> diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml index d039b5f7c44a..15521e48d319 100644 --- a/core/res/res/values/symbols.xml +++ b/core/res/res/values/symbols.xml @@ -2391,6 +2391,7 @@ <java-symbol type="string" name="config_packagedKeyboardName" /> <java-symbol type="bool" name="config_forceWindowDrawsStatusBarBackground" /> + <java-symbol type="bool" name="config_forceNavBarAlwaysOpaque" /> <java-symbol type="color" name="system_bar_background_semi_transparent" /> <!-- EditText suggestion popup. --> diff --git a/services/core/java/com/android/server/policy/PhoneWindowManager.java b/services/core/java/com/android/server/policy/PhoneWindowManager.java index 6320413a452a..252dda7984c6 100644 --- a/services/core/java/com/android/server/policy/PhoneWindowManager.java +++ b/services/core/java/com/android/server/policy/PhoneWindowManager.java @@ -535,6 +535,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { boolean mForceStatusBar; boolean mForceStatusBarFromKeyguard; private boolean mForceStatusBarTransparent; + boolean mForceNavBarOpaque; boolean mHideLockScreen; boolean mForcingShowNavBar; int mForcingShowNavBarLayer; @@ -1715,6 +1716,9 @@ public class PhoneWindowManager implements WindowManagerPolicy { if (mContext.getPackageManager().hasSystemFeature(FEATURE_PICTURE_IN_PICTURE)) { mShortPressWindowBehavior = SHORT_PRESS_WINDOW_PICTURE_IN_PICTURE; } + + mForceNavBarOpaque = res.getBoolean( + com.android.internal.R.bool.config_forceNavBarAlwaysOpaque); } @Override @@ -7080,6 +7084,10 @@ public class PhoneWindowManager implements WindowManagerPolicy { | View.SYSTEM_UI_TRANSPARENT); } + if (mForceNavBarOpaque) { + vis &= ~(View.NAVIGATION_BAR_TRANSLUCENT | View.NAVIGATION_BAR_TRANSPARENT); + } + if (mForceWindowDrawsStatusBarBackground) { vis |= View.STATUS_BAR_TRANSPARENT; vis &= ~View.STATUS_BAR_TRANSLUCENT; |