Merge "Add config value to force nav bar to be opaque" into nyc-dev

This commit is contained in:
Yorke Lee
2016-03-04 18:27:19 +00:00
committed by Android (Google) Code Review
3 changed files with 13 additions and 0 deletions

View File

@@ -2440,6 +2440,10 @@
flag). --> flag). -->
<bool name="config_forceWindowDrawsStatusBarBackground">true</bool> <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. --> <!-- Default bounds [left top right bottom] on screen for picture-in-picture windows. -->
<string translatable="false" name="config_defaultPictureInPictureBounds">"0 0 100 100"</string> <string translatable="false" name="config_defaultPictureInPictureBounds">"0 0 100 100"</string>

View File

@@ -2391,6 +2391,7 @@
<java-symbol type="string" name="config_packagedKeyboardName" /> <java-symbol type="string" name="config_packagedKeyboardName" />
<java-symbol type="bool" name="config_forceWindowDrawsStatusBarBackground" /> <java-symbol type="bool" name="config_forceWindowDrawsStatusBarBackground" />
<java-symbol type="bool" name="config_forceNavBarAlwaysOpaque" />
<java-symbol type="color" name="system_bar_background_semi_transparent" /> <java-symbol type="color" name="system_bar_background_semi_transparent" />
<!-- EditText suggestion popup. --> <!-- EditText suggestion popup. -->

View File

@@ -535,6 +535,7 @@ public class PhoneWindowManager implements WindowManagerPolicy {
boolean mForceStatusBar; boolean mForceStatusBar;
boolean mForceStatusBarFromKeyguard; boolean mForceStatusBarFromKeyguard;
private boolean mForceStatusBarTransparent; private boolean mForceStatusBarTransparent;
boolean mForceNavBarOpaque;
boolean mHideLockScreen; boolean mHideLockScreen;
boolean mForcingShowNavBar; boolean mForcingShowNavBar;
int mForcingShowNavBarLayer; int mForcingShowNavBarLayer;
@@ -1715,6 +1716,9 @@ public class PhoneWindowManager implements WindowManagerPolicy {
if (mContext.getPackageManager().hasSystemFeature(FEATURE_PICTURE_IN_PICTURE)) { if (mContext.getPackageManager().hasSystemFeature(FEATURE_PICTURE_IN_PICTURE)) {
mShortPressWindowBehavior = SHORT_PRESS_WINDOW_PICTURE_IN_PICTURE; mShortPressWindowBehavior = SHORT_PRESS_WINDOW_PICTURE_IN_PICTURE;
} }
mForceNavBarOpaque = res.getBoolean(
com.android.internal.R.bool.config_forceNavBarAlwaysOpaque);
} }
@Override @Override
@@ -7080,6 +7084,10 @@ public class PhoneWindowManager implements WindowManagerPolicy {
| View.SYSTEM_UI_TRANSPARENT); | View.SYSTEM_UI_TRANSPARENT);
} }
if (mForceNavBarOpaque) {
vis &= ~(View.NAVIGATION_BAR_TRANSLUCENT | View.NAVIGATION_BAR_TRANSPARENT);
}
if (mForceWindowDrawsStatusBarBackground) { if (mForceWindowDrawsStatusBarBackground) {
vis |= View.STATUS_BAR_TRANSPARENT; vis |= View.STATUS_BAR_TRANSPARENT;
vis &= ~View.STATUS_BAR_TRANSLUCENT; vis &= ~View.STATUS_BAR_TRANSLUCENT;