Add a flag to turn on theme picker in wallpaper picker
Bug: 122524192
Change-Id: I79bd8bde359a56185c1dd0c10964695263d0f6d5
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 51350c0..13e096c 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -177,6 +177,8 @@
<string name="widget_button_text">Widgets</string>
<!-- Text for wallpaper change button -->
<string name="wallpaper_button_text">Wallpapers</string>
+ <!-- Text for wallpaper change button -->
+ <string name="styles_wallpaper_button_text">Styles & wallpapers</string>
<!-- Text for settings button -->
<string name="settings_button_text">Home settings</string>
<!-- Message shown when a feature is disabled by the administrator -->
diff --git a/robolectric_tests/src/com/android/launcher3/config/FlagOverrideSampleTest.java b/robolectric_tests/src/com/android/launcher3/config/FlagOverrideSampleTest.java
index c5a0820..54038d2 100644
--- a/robolectric_tests/src/com/android/launcher3/config/FlagOverrideSampleTest.java
+++ b/robolectric_tests/src/com/android/launcher3/config/FlagOverrideSampleTest.java
@@ -27,6 +27,7 @@
public void withFlagOn() {
assertTrue(FeatureFlags.EXAMPLE_FLAG.get());
assertFalse(FeatureFlags.QUICK_SWITCH.get());
+ assertFalse(FeatureFlags.STYLE_WALLPAPER.get());
}
diff --git a/src/com/android/launcher3/Utilities.java b/src/com/android/launcher3/Utilities.java
index 60dfbb7..1dec173 100644
--- a/src/com/android/launcher3/Utilities.java
+++ b/src/com/android/launcher3/Utilities.java
@@ -106,6 +106,7 @@
// An intent extra to indicate the horizontal scroll of the wallpaper.
public static final String EXTRA_WALLPAPER_OFFSET = "com.android.launcher3.WALLPAPER_OFFSET";
+ public static final String EXTRA_WALLPAPER_FLAVOR = "com.android.launcher3.WALLPAPER_FLAVOR";
// These values are same as that in {@link AsyncTask}.
private static final int CPU_COUNT = Runtime.getRuntime().availableProcessors();
diff --git a/src/com/android/launcher3/config/BaseFlags.java b/src/com/android/launcher3/config/BaseFlags.java
index fa4ebaf..b921d29 100644
--- a/src/com/android/launcher3/config/BaseFlags.java
+++ b/src/com/android/launcher3/config/BaseFlags.java
@@ -92,6 +92,10 @@
= new ToggleableGlobalSettingsFlag("QUICK_SWITCH", false,
"Swiping right on the nav bar while in an app switches to the previous app");
+ public static final ToggleableGlobalSettingsFlag STYLE_WALLPAPER
+ = new ToggleableGlobalSettingsFlag("STYLE_WALLPAPER", false,
+ "Direct users to the new ThemePicker based WallpaperPicker");
+
/**
* Feature flag to handle define config changes dynamically instead of killing the process.
*/
diff --git a/src/com/android/launcher3/views/OptionsPopupView.java b/src/com/android/launcher3/views/OptionsPopupView.java
index 71bf781..48cf9e8 100644
--- a/src/com/android/launcher3/views/OptionsPopupView.java
+++ b/src/com/android/launcher3/views/OptionsPopupView.java
@@ -15,6 +15,7 @@
*/
package com.android.launcher3.views;
+import static com.android.launcher3.Utilities.EXTRA_WALLPAPER_FLAVOR;
import static com.android.launcher3.Utilities.EXTRA_WALLPAPER_OFFSET;
import android.content.Context;
@@ -149,7 +150,9 @@
RectF target = new RectF(x - halfSize, y - halfSize, x + halfSize, y + halfSize);
ArrayList<OptionItem> options = new ArrayList<>();
- options.add(new OptionItem(R.string.wallpaper_button_text, R.drawable.ic_wallpaper,
+ int res = FeatureFlags.STYLE_WALLPAPER.get() ?
+ R.string.styles_wallpaper_button_text : R.string.wallpaper_button_text;
+ options.add(new OptionItem(res, R.drawable.ic_wallpaper,
ControlType.WALLPAPER_BUTTON, OptionsPopupView::startWallpaperPicker));
if (!FeatureFlags.GO_DISABLE_WIDGETS) {
options.add(new OptionItem(R.string.widget_button_text, R.drawable.ic_widget,
@@ -197,6 +200,9 @@
.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK)
.putExtra(EXTRA_WALLPAPER_OFFSET,
launcher.getWorkspace().getWallpaperOffsetForCenterPage());
+ if (!FeatureFlags.STYLE_WALLPAPER.get()) {
+ intent.putExtra(EXTRA_WALLPAPER_FLAVOR, "wallpaper_only");
+ }
String pickerPackage = launcher.getString(R.string.wallpaper_picker_package);
if (!TextUtils.isEmpty(pickerPackage)) {
intent.setPackage(pickerPackage);