Bug 1858793 - Update cookie banner handling nimbus feature flag to support private mode.

fenix/120.0
Arturo Mejia 7 months ago committed by mergify[bot]
parent 90f027f678
commit 7a8ea95ed6

@ -243,7 +243,8 @@ features:
{
"feature-ui": 0,
"feature-setting-value": 0,
"dialog-re-engage-time": 4
"dialog-re-engage-time": 4,
"feature-setting-value-pbm": 0
}
defaults:
- channel: developer
@ -251,7 +252,8 @@ features:
"sections-enabled": {
"feature-ui": 1,
"feature-setting-value": 0,
"dialog-re-engage-time": 4
"dialog-re-engage-time": 4,
"feature-setting-value-pbm": 0
}
}
- channel: nightly
@ -259,7 +261,8 @@ features:
"sections-enabled": {
"feature-ui": 1,
"feature-setting-value": 0,
"dialog-re-engage-time": 4
"dialog-re-engage-time": 4,
"feature-setting-value-pbm": 0
}
}
unified-search:
@ -460,6 +463,9 @@ types:
description: An integer indicating the number of hours that needs to happen before
the re-engagement dialog shows again since the last seen, for example if set to 4
that means if the users has seen the dialog, it will see it 4 hours later.
feature-setting-value-pbm:
description: An integer either 0 or 1 indicating if cookie banner setting should be enabled or disabled,
0 for setting the value to disabled, 1 for enabling the setting with the value reject_all.
OnboardingPanel:
description: The types of onboarding panels in the onboarding page
variants:

@ -141,7 +141,7 @@ class Core(
R.color.fx_mobile_layer_color_1,
),
httpsOnlyMode = context.settings().getHttpsOnlyMode(),
cookieBannerHandlingModePrivateBrowsing = context.settings().getCookieBannerHandling(),
cookieBannerHandlingModePrivateBrowsing = context.settings().getCookieBannerHandlingPrivateMode(),
cookieBannerHandlingMode = context.settings().getCookieBannerHandling(),
cookieBannerHandlingDetectOnlyMode = context.settings()
.shouldShowCookieBannerReEngagementDialog(),

@ -616,6 +616,12 @@ class Settings(private val appContext: Context) : PreferencesHolder {
default = { cookieBannersSection[CookieBannersSection.FEATURE_SETTING_VALUE] == 1 },
)
var shouldUseCookieBannerPrivateMode by lazyFeatureFlagPreference(
appContext.getPreferenceKey(R.string.pref_key_cookie_banner_private_mode),
featureFlag = true,
default = { cookieBannersSection[CookieBannersSection.FEATURE_SETTING_VALUE_PBM] == 1 },
)
var userOptOutOfReEngageCookieBannerDialog by booleanPreference(
appContext.getPreferenceKey(R.string.pref_key_cookie_banner_re_engage_dialog_dismissed),
default = false,
@ -1770,6 +1776,18 @@ class Settings(private val appContext: Context) : PreferencesHolder {
}
}
/**
* Get the current mode for cookie banner handling
*/
fun getCookieBannerHandlingPrivateMode(): CookieBannerHandlingMode {
return when (shouldUseCookieBannerPrivateMode) {
true -> CookieBannerHandlingMode.REJECT_ALL
false -> {
CookieBannerHandlingMode.DISABLED
}
}
}
/**
* Times that the cookie banner re-engagement dialog has been shown.
*/

@ -167,6 +167,7 @@
<string name="pref_key_cookie_banner_first_banner_detected" translatable="false">pref_key_cookie_banner_first_banner_detected</string>
<string name="pref_key_cookie_banner_v1" translatable="false">pref_key_cookie_banner_v1</string>
<string name="pref_key_cookie_banner_re_engagement_dialog_shows_counter" translatable="false">pref_key_cookie_banner_re_engagement_dialog_shows_counter</string>
<string name="pref_key_cookie_banner_private_mode" translatable="false">pref_key_cookie_banner_private_mode</string>
<!-- Tracking Protection Settings -->
<string name="pref_key_etp_learn_more" translatable="false">pref_key_etp_learn_more</string>

Loading…
Cancel
Save