commit 5ea5cc47902db6174ec850e7f5e3984879bf45e6 parent a7c16b5d07d299e4e5fd3a2894f6e3f4e7e4c09b Author: Gabriel Luong <gabriel.luong@gmail.com> Date: Wed, 1 Oct 2025 22:02:46 +0000 Bug 1978605 - Part 1: Add a feature flag for the private browsing mode redesign r=android-reviewers,devota Differential Revision: https://phabricator.services.mozilla.com/D266290 Diffstat:
6 files changed, 27 insertions(+), 0 deletions(-)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FeatureFlags.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FeatureFlags.kt @@ -50,4 +50,9 @@ object FeatureFlags { * Enables the "Discover more" stories screen. */ const val DISCOVER_MORE_STORIES = false + + /** + * Enables the private browsing mode redesign on the homepage. + */ + const val PRIVATE_BROWSING_MODE_REDESIGN = false } diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SecretSettingsFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SecretSettingsFragment.kt @@ -197,6 +197,12 @@ class SecretSettingsFragment : PreferenceFragmentCompat() { onPreferenceChangeListener = SharedPreferenceUpdater() } + requirePreference<SwitchPreference>(R.string.pref_key_enable_private_browsing_mode_redesign).apply { + isVisible = Config.channel.isNightlyOrDebug + isChecked = context.settings().enablePrivateBrowsingModeRedesign + onPreferenceChangeListener = SharedPreferenceUpdater() + } + requirePreference<SwitchPreference>(R.string.pref_key_enable_unified_trust_panel).apply { isVisible = true isChecked = context.settings().enableUnifiedTrustPanel diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/Settings.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/Settings.kt @@ -2314,6 +2314,14 @@ class Settings(private val appContext: Context) : PreferencesHolder { ) /** + * Indicates if the private browsing mode redesign is enabled. + */ + var enablePrivateBrowsingModeRedesign by booleanPreference( + key = appContext.getPreferenceKey(R.string.pref_key_enable_private_browsing_mode_redesign), + default = FeatureFlags.PRIVATE_BROWSING_MODE_REDESIGN, + ) + + /** * Indicates if the Unified Trust Panel is enabled. */ var enableUnifiedTrustPanel by lazyFeatureFlagPreference( diff --git a/mobile/android/fenix/app/src/main/res/values/preference_keys.xml b/mobile/android/fenix/app/src/main/res/values/preference_keys.xml @@ -429,6 +429,7 @@ <string name="pref_key_enable_menu_redesign" translatable="false">pref_key_enable_menu_redesign</string> <string name="pref_key_enable_homepage_as_new_tab" translatable="false">pref_key_enable_homepage_as_new_tab</string> <string name="pref_key_enable_discover_more_stories" translatable="false">pref_key_enable_discover_more_stories</string> + <string name="pref_key_enable_private_browsing_mode_redesign" translatable="false">pref_key_enable_private_browsing_mode_redesign</string> <string name="pref_key_enable_unified_trust_panel" translatable="false">pref_key_enable_unified_trust_panel</string> <string name="pref_key_enable_trending_searches" translatable="false">pref_key_enable_trending_searches</string> <string name="pref_key_enable_recent_searches" translatable="false">pref_key_enable_recent_searches</string> diff --git a/mobile/android/fenix/app/src/main/res/values/static_strings.xml b/mobile/android/fenix/app/src/main/res/values/static_strings.xml @@ -79,6 +79,8 @@ <string name="preferences_debug_settings_homepage_as_new_tab" translatable="false">Enable Homepage as a New Tab</string> <!-- Label for enabling Discover more stories --> <string name="preferences_debug_settings_discover_more_stories" translatable="false">Enable Discover More Stories</string> + <!-- Label for enabling Private Browsing Mode redesign --> + <string name="preferences_debug_settings_private_browsing_mode_redesign" translatable="false">Enable Private Browsing Mode redesign</string> <!-- Label for enabling the menu redesign --> <string name="preferences_debug_settings_menu_redesign" translatable="false">Enable Menu Redesign</string> <!-- Label for enabling Firefox Suggest --> diff --git a/mobile/android/fenix/app/src/main/res/xml/secret_settings_preferences.xml b/mobile/android/fenix/app/src/main/res/xml/secret_settings_preferences.xml @@ -47,6 +47,11 @@ app:iconSpaceReserved="false" /> <SwitchPreference android:defaultValue="false" + android:key="@string/pref_key_enable_private_browsing_mode_redesign" + android:title="@string/preferences_debug_settings_private_browsing_mode_redesign" + app:iconSpaceReserved="false" /> + <SwitchPreference + android:defaultValue="false" android:key="@string/pref_key_enable_menu_redesign" android:title="@string/preferences_debug_settings_menu_redesign" app:iconSpaceReserved="false" />