For #26549 - Add Nimbus feature flag for first run onboarding page updates and Jump back in CFR

This commit is contained in:
Gabriel Luong 2022-08-19 11:26:13 -04:00 committed by mergify[bot]
parent 8c0945db3b
commit 6a7f9075ad
4 changed files with 35 additions and 3 deletions

View File

@ -24,10 +24,20 @@ object FeatureFlags {
const val syncAddressesFeature = false
/**
* Enables the on-boarding sync cfr on the home screen.
* Enables the onboarding sync CFR on the home screen.
*/
val showSynCFR = Config.channel.isDebug
/**
* Enables the onboarding jump back in CFR on the home screen.
*/
const val showJumpBackInCFR = true
/**
* Enables the first run onboarding updates.
*/
const val showFirstRunOnboardingUpdates = false
/**
* Enables the "recent" tabs feature in the home screen.
*/

View File

@ -859,9 +859,10 @@ class Settings(private val appContext: Context) : PreferencesHolder {
/**
* Indicates if the jump back in CRF should be shown.
*/
var shouldShowJumpBackInCFR by booleanPreference(
var shouldShowJumpBackInCFR by lazyFeatureFlagPreference(
appContext.getPreferenceKey(R.string.pref_key_should_show_jump_back_in_tabs_popup),
default = true
featureFlag = FeatureFlags.showJumpBackInCFR,
default = { onboardScreenSection[OnboardingSection.JUMP_BACK_IN_CFR] == true },
)
fun getSitePermissionsPhoneFeatureAction(
@ -1226,6 +1227,15 @@ class Settings(private val appContext: Context) : PreferencesHolder {
default = { onboardScreenSection[OnboardingSection.HOME_ONBOARDING_DIALOG] == true },
)
/**
* Indicates if home onboarding dialog should be shown.
*/
var showFirstRunOnboardingUpdate by lazyFeatureFlagPreference(
appContext.getPreferenceKey(R.string.pref_key_show_first_run_onboarding_update),
featureFlag = FeatureFlags.showFirstRunOnboardingUpdates,
default = { onboardScreenSection[OnboardingSection.FIRST_RUN_ONBOARDING] == true },
)
/**
* Indicates if the recent tabs functionality should be visible.
* Returns true if the [FeatureFlags.showRecentTabsFeature] and [R.string.pref_key_recent_tabs] are true.

View File

@ -239,6 +239,8 @@
<string name="pref_key_should_show_sync_cfr" translatable="false">pref_key_should_show_sync_cfr</string>
<!-- A value of `true` means the home onboarding dialog have not been shown yet -->
<string name="pref_key_should_show_home_onboarding_dialog" translatable="false">pref_key_should_show_home_onboarding_dialog</string>
<!-- A value of `true` means the first run onboarding updates should be shown -->
<string name="pref_key_show_first_run_onboarding_update" translatable="false">pref_key_show_first_run_onboarding_update</string>
<string name="pref_key_debug_settings" translatable="false">pref_key_debug_settings</string>

View File

@ -49,6 +49,8 @@ features:
"sync-cfr": false,
"wallpapers": false,
"home-onboarding-dialog": false,
"jump-back-in-cfr": false,
"first-run-onboarding": false,
}
defaults:
- channel: nightly
@ -57,6 +59,8 @@ features:
"sync-cfr": false,
"wallpapers": false,
"home-onboarding-dialog": false,
"jump-back-in-cfr": false,
"first-run-onboarding": false,
}
}
- channel: developer
@ -65,6 +69,8 @@ features:
"sync-cfr": false,
"wallpapers": true,
"home-onboarding-dialog": false,
"jump-back-in-cfr": false,
"first-run-onboarding": false,
}
}
nimbus-validation:
@ -336,3 +342,7 @@ types:
description: Wallpapers onboarding dialog.
home-onboarding-dialog:
description: Home onboarding dialog for upgraded users.
jump-back-in-cfr:
description: Jump back in onboarding CFR.
first-run-onboarding:
description: First run onboarding page updates.