diff options
author | Tony Wickham <twickham@google.com> | 2017-03-20 16:49:37 -0700 |
---|---|---|
committer | Tony Wickham <twickham@google.com> | 2017-03-20 16:53:01 -0700 |
commit | ed68728b1f22bc849e0567f2be3aeaf6798440ca (patch) | |
tree | 26cab7088ef5a1b1da44c1eb667b99cad09ccfbb /src/com/android/launcher3/Launcher.java | |
parent | 3c2cbd8ad4043826c1e6db8eebfb902db8dadbe0 (diff) | |
download | android_packages_apps_Trebuchet-ed68728b1f22bc849e0567f2be3aeaf6798440ca.tar.gz android_packages_apps_Trebuchet-ed68728b1f22bc849e0567f2be3aeaf6798440ca.tar.bz2 android_packages_apps_Trebuchet-ed68728b1f22bc849e0567f2be3aeaf6798440ca.zip |
Add support for making nav bar light separately from status bar
Bug: 34940468
Change-Id: Ie5543895e4c8b8753c84ef24633377cc985efc0d
Diffstat (limited to 'src/com/android/launcher3/Launcher.java')
-rw-r--r-- | src/com/android/launcher3/Launcher.java | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index d4bfc4913..308bb63e1 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -483,7 +483,7 @@ public class Launcher extends BaseActivity // It's possible that All Apps is visible when this is run, // so always use light status bar in that case. Only change nav bar color to status bar // color when All Apps is visible. - activateLightStatusBar(lightStatusBar || isAllAppsVisible(), isAllAppsVisible()); + activateLightSystemBars(lightStatusBar || isAllAppsVisible(), true, isAllAppsVisible()); } } @@ -491,21 +491,26 @@ public class Launcher extends BaseActivity private static final int SYSTEM_UI_FLAG_LIGHT_NAV_BAR = 0x10; /** - * Sets the status bar to be light or not. Light status bar means dark icons. - * @param lightStatusBar make sure the status bar is light - * @param changeNavBar if true, make the nav bar theme in sync with status bar. + * Sets the status and/or nav bar to be light or not. Light status bar means dark icons. + * @param isLight make sure the system bar is light. + * @param statusBar if true, make the status bar theme match the isLight param. + * @param navBar if true, make the nav bar theme match the isLight param. */ - public void activateLightStatusBar(boolean lightStatusBar, boolean changeNavBar) { + public void activateLightSystemBars(boolean isLight, boolean statusBar, boolean navBar) { int oldSystemUiFlags = getWindow().getDecorView().getSystemUiVisibility(); int newSystemUiFlags = oldSystemUiFlags; - if (lightStatusBar) { - newSystemUiFlags |= View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR ; - if (changeNavBar && Utilities.isAtLeastO()) { + if (isLight) { + if (statusBar) { + newSystemUiFlags |= View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR; + } + if (navBar && Utilities.isAtLeastO()) { newSystemUiFlags |= SYSTEM_UI_FLAG_LIGHT_NAV_BAR; } } else { - newSystemUiFlags &= ~(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); - if (changeNavBar && Utilities.isAtLeastO()) { + if (statusBar) { + newSystemUiFlags &= ~(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); + } + if (navBar && Utilities.isAtLeastO()) { newSystemUiFlags &= ~(SYSTEM_UI_FLAG_LIGHT_NAV_BAR); } } |