From 0fed55bf031087474a3833a3e28f4263c8dc7959 Mon Sep 17 00:00:00 2001 From: Tony Wickham Date: Wed, 12 Oct 2016 14:55:46 -0700 Subject: Add feature flag to disable light status bar Bug: 32085545 Change-Id: I4860145b00893c20f7e37817e9659ccd90409966 --- src/com/android/launcher3/Launcher.java | 6 +++--- .../launcher3/dynamicui/ColorExtractionService.java | 16 ++++++++++------ src/com/android/launcher3/dynamicui/ExtractedColors.java | 2 +- .../com/android/launcher3/config/FeatureFlags.java | 2 ++ 4 files changed, 16 insertions(+), 10 deletions(-) diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index c73a7a61d..544aef2b0 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -499,9 +499,9 @@ public class Launcher extends Activity * @param activate if true, make sure the status bar is light, otherwise base on wallpaper. */ public void activateLightStatusBar(boolean activate) { - boolean lightStatusBar = activate - || mExtractedColors.getColor(ExtractedColors.STATUS_BAR_INDEX, - ExtractedColors.DEFAULT_DARK) == ExtractedColors.DEFAULT_LIGHT; + boolean lightStatusBar = activate || (FeatureFlags.LIGHT_STATUS_BAR + && mExtractedColors.getColor(ExtractedColors.STATUS_BAR_INDEX, + ExtractedColors.DEFAULT_DARK) == ExtractedColors.DEFAULT_LIGHT); int oldSystemUiFlags = getWindow().getDecorView().getSystemUiVisibility(); int newSystemUiFlags = oldSystemUiFlags; if (lightStatusBar) { diff --git a/src/com/android/launcher3/dynamicui/ColorExtractionService.java b/src/com/android/launcher3/dynamicui/ColorExtractionService.java index c15b71040..1369f609d 100644 --- a/src/com/android/launcher3/dynamicui/ColorExtractionService.java +++ b/src/com/android/launcher3/dynamicui/ColorExtractionService.java @@ -27,6 +27,7 @@ import android.support.v7.graphics.Palette; import com.android.launcher3.LauncherProvider; import com.android.launcher3.LauncherSettings; import com.android.launcher3.R; +import com.android.launcher3.config.FeatureFlags; /** * Extracts colors from the wallpaper, and saves results to {@link LauncherProvider}. @@ -62,12 +63,15 @@ public class ColorExtractionService extends IntentService { .generate(); extractedColors.updateHotseatPalette(hotseatPalette); - int statusBarHeight = getResources().getDimensionPixelSize(R.dimen.status_bar_height); - Palette statusBarPalette = Palette.from(wallpaper) - .setRegion(0, 0, wallpaper.getWidth(), statusBarHeight) - .clearFilters() - .generate(); - extractedColors.updateStatusBarPalette(statusBarPalette); + if (FeatureFlags.LIGHT_STATUS_BAR) { + int statusBarHeight = getResources() + .getDimensionPixelSize(R.dimen.status_bar_height); + Palette statusBarPalette = Palette.from(wallpaper) + .setRegion(0, 0, wallpaper.getWidth(), statusBarHeight) + .clearFilters() + .generate(); + extractedColors.updateStatusBarPalette(statusBarPalette); + } } // Save the extracted colors and wallpaper id to LauncherProvider. diff --git a/src/com/android/launcher3/dynamicui/ExtractedColors.java b/src/com/android/launcher3/dynamicui/ExtractedColors.java index 4db0797c0..6a3011d3b 100644 --- a/src/com/android/launcher3/dynamicui/ExtractedColors.java +++ b/src/com/android/launcher3/dynamicui/ExtractedColors.java @@ -47,7 +47,7 @@ public class ExtractedColors { // public static final int MUTED_LIGHT_INDEX = 7; public static final int NUM_COLOR_PROFILES = 2; - private static final int VERSION = 2; + private static final int VERSION = 1; private static final String COLOR_SEPARATOR = ","; diff --git a/src_config/com/android/launcher3/config/FeatureFlags.java b/src_config/com/android/launcher3/config/FeatureFlags.java index fe7bcbd57..8ee549753 100644 --- a/src_config/com/android/launcher3/config/FeatureFlags.java +++ b/src_config/com/android/launcher3/config/FeatureFlags.java @@ -37,4 +37,6 @@ public final class FeatureFlags { public static final boolean NO_ALL_APPS_ICON = true; // When enabled fling down gesture on the first workspace triggers search. public static final boolean PULLDOWN_SEARCH = false; + // When enabled the status bar may show dark icons based on the top of the wallpaper. + public static final boolean LIGHT_STATUS_BAR = false; } -- cgit v1.2.3