tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit 8b78933140c7e21e2f6fe7b4e74985b170e66af9
parent 25a90a49e0933420195ab9c728a2c85a63409357
Author: t-p-white <towhite@mozilla.com>
Date:   Mon,  8 Dec 2025 19:43:24 +0000

Bug 2002784 - Update redundant, non-feature flagged lazyFeatureFlagPreference's to use the booleanPreference r=android-reviewers,Roger,mavduevskiy

Differential Revision: https://phabricator.services.mozilla.com/D274289

Diffstat:
Mmobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/Settings.kt | 93+++++++++++++++++++++++++++-----------------------------------------------------
1 file changed, 31 insertions(+), 62 deletions(-)

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 @@ -183,18 +183,16 @@ class Settings( /** * Indicates if the recent saved bookmarks functionality should be visible. */ - var showBookmarksHomeFeature by lazyFeatureFlagPreference( + var showBookmarksHomeFeature by booleanPreference( appContext.getPreferenceKey(R.string.pref_key_customization_bookmarks), default = { homescreenSections[HomeScreenSection.BOOKMARKS] == true }, - featureFlag = true, ) /** * Indicates if the recent tabs functionality should be visible. */ - var showRecentTabsFeature by lazyFeatureFlagPreference( + var showRecentTabsFeature by booleanPreference( appContext.getPreferenceKey(R.string.pref_key_recent_tabs), - featureFlag = true, default = { homescreenSections[HomeScreenSection.JUMP_BACK_IN] == true }, ) @@ -249,10 +247,9 @@ class Settings( /** * Indicates whether or not the "Recently Visited" section should be shown on the home screen. */ - var historyMetadataUIFeature by lazyFeatureFlagPreference( + var historyMetadataUIFeature by booleanPreference( appContext.getPreferenceKey(R.string.pref_key_history_metadata_feature), default = { homescreenSections[HomeScreenSection.RECENT_EXPLORATIONS] == true }, - featureFlag = true, ) /** @@ -276,18 +273,16 @@ class Settings( /** * Indicates whether or not the homepage header should be shown. */ - var showHomepageHeader by lazyFeatureFlagPreference( + var showHomepageHeader by booleanPreference( appContext.getPreferenceKey(R.string.pref_key_enable_homepage_header), - featureFlag = true, default = { homescreenSections[HomeScreenSection.HEADER] == true }, ) /** * Indicates whether or not top sites should be shown on the home screen. */ - var showTopSitesFeature by lazyFeatureFlagPreference( + var showTopSitesFeature by booleanPreference( appContext.getPreferenceKey(R.string.pref_key_show_top_sites), - featureFlag = true, default = { homescreenSections[HomeScreenSection.TOP_SITES] == true }, ) @@ -352,9 +347,8 @@ class Settings( * Indicates if the custom review prompt feature should be enabled. `True` if the feature is * enabled, `false` otherwise. */ - var customReviewPromptFeatureEnabled by lazyFeatureFlagPreference( + var customReviewPromptFeatureEnabled by booleanPreference( appContext.getPreferenceKey(R.string.pref_key_custom_review_prompt_enabled), - featureFlag = true, default = { FxNimbus.features.customReviewPrompt.value().enabled }, ) @@ -511,9 +505,8 @@ class Settings( default = { FxNimbus.features.appIconSelection.value().enabled }, ) - var privateBrowsingLockedFeatureEnabled by lazyFeatureFlagPreference( + var privateBrowsingLockedFeatureEnabled by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_private_browsing_locked_enabled), - featureFlag = true, default = { FxNimbus.features.privateBrowsingLock.value().enabled }, ) @@ -527,10 +520,9 @@ class Settings( false, ) - var shouldShowMenuBanner by lazyFeatureFlagPreference( + var shouldShowMenuBanner by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_show_menu_banner), default = { FxNimbus.features.menuRedesign.value().menuBanner }, - featureFlag = true, ) var defaultSearchEngineName by stringPreference( @@ -620,19 +612,17 @@ class Settings( /** * Returns true if the terms of use feature flag is enabled */ - var isTermsOfUsePromptEnabled by lazyFeatureFlagPreference( + var isTermsOfUsePromptEnabled by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_terms_prompt_enabled), default = { FxNimbus.features.termsOfUsePrompt.value().enabled }, - featureFlag = true, ) /** * Returns true if the nimbus flag for showing the terms of use drag handle is true. */ - var shouldShowTermsOfUsePromptDragHandle by lazyFeatureFlagPreference( + var shouldShowTermsOfUsePromptDragHandle by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_terms_prompt_drag_handle_enabled), default = { FxNimbus.features.termsOfUsePrompt.value().enableDragToDismiss }, - featureFlag = true, ) /** @@ -861,18 +851,16 @@ class Settings( /** * Indicates if the request blocking feature for Local Network / Local Device Access blocking is enabled. */ - var isLnaBlockingEnabled by lazyFeatureFlagPreference( + var isLnaBlockingEnabled by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_enable_lna_blocking_enabled), - featureFlag = true, default = { FxNimbus.features.lnaBlocking.value().blocking }, ) /** * Indicates if the Local Network / Local Device Access tracker blocking feature is enabled. */ - var isLnaTrackerBlockingEnabled by lazyFeatureFlagPreference( + var isLnaTrackerBlockingEnabled by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_enable_lna_tracker_blocking_enabled), - featureFlag = true, default = { FxNimbus.features.lnaBlocking.value().blockTrackers }, ) @@ -883,27 +871,24 @@ class Settings( * allowing requests that originate from remote origins targeting either localhost addresses or * local network addresses. */ - var isLnaFeatureEnabled by lazyFeatureFlagPreference( + var isLnaFeatureEnabled by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_enable_lna_feature_enabled), - featureFlag = true, default = { FxNimbus.features.lnaBlocking.value().enabled }, ) /** * Indicates whether isolated content processes are enabled or not. */ - var isIsolatedProcessEnabled by lazyFeatureFlagPreference( + var isIsolatedProcessEnabled by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_enable_isolated_process), - featureFlag = true, default = { FxNimbus.features.isolatedContentProcesses.value().enabled }, ) /** * Indicates whether app Zygote preloading using isolated content processes are enabled or not. */ - var isAppZygoteEnabled by lazyFeatureFlagPreference( + var isAppZygoteEnabled by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_enable_app_zygote_process), - featureFlag = true, default = { FxNimbus.features.isolatedContentProcesses.value().appZygotePreloading }, ) @@ -1002,9 +987,8 @@ class Settings( } } - var whatsappLinkSharingEnabled by lazyFeatureFlagPreference( + var whatsappLinkSharingEnabled by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_link_sharing), - featureFlag = true, default = { FxNimbus.features.sentFromFirefox.value().enabled }, ) @@ -1068,9 +1052,8 @@ class Settings( false, ) - var shouldUseCookieBannerPrivateMode by lazyFeatureFlagPreference( + var shouldUseCookieBannerPrivateMode by booleanPreference( appContext.getPreferenceKey(R.string.pref_key_cookie_banner_private_mode), - featureFlag = true, default = { shouldUseCookieBannerPrivateModeDefaultValue }, ) @@ -1138,10 +1121,9 @@ class Settings( /** * Indicates if the re-engagement notification feature is enabled */ - var reEngagementNotificationEnabled by lazyFeatureFlagPreference( + var reEngagementNotificationEnabled by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_re_engagement_notification_enabled), default = { FxNimbus.features.reEngagementNotification.value().enabled }, - featureFlag = true, ) /** @@ -1226,9 +1208,8 @@ class Settings( /** * Indicates if the cookie banners CRF should be shown. */ - var shouldShowCookieBannersCFR by lazyFeatureFlagPreference( + var shouldShowCookieBannersCFR by booleanPreference( appContext.getPreferenceKey(R.string.pref_key_should_show_cookie_banners_action_popup), - featureFlag = true, default = { shouldShowCookieBannerUI }, ) @@ -2176,9 +2157,8 @@ class Settings( /** * Indicates if the onboarding redesign should be used. */ - var useOnboardingRedesign by lazyFeatureFlagPreference( + var useOnboardingRedesign by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_use_onboarding_redesign), - featureFlag = true, default = { FxNimbus.features.junoOnboarding.value().useOnboardingRedesign }, ) @@ -2190,10 +2170,9 @@ class Settings( default = true, ) - var shouldUseComposableToolbar by lazyFeatureFlagPreference( + var shouldUseComposableToolbar by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_enable_composable_toolbar), default = { FxNimbus.features.composableToolbar.value().enabled }, - featureFlag = true, ) /** @@ -2215,10 +2194,9 @@ class Settings( /** * Indicates whether or not to use remote server search configuration. */ - var useRemoteSearchConfiguration by lazyFeatureFlagPreference( + var useRemoteSearchConfiguration by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_use_remote_search_configuration), default = { FxNimbus.features.remoteSearchConfiguration.value().enabled }, - featureFlag = true, ) /** @@ -2317,10 +2295,9 @@ class Settings( /** * Indicates if the menu redesign is enabled. */ - var enableMenuRedesign by lazyFeatureFlagPreference( + var enableMenuRedesign by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_enable_menu_redesign), default = { FxNimbus.features.menuRedesign.value().enabled }, - featureFlag = true, ) /** @@ -2334,19 +2311,17 @@ class Settings( /** * Indicates if the Homepage as a New Tab is enabled. */ - var enableHomepageAsNewTab by lazyFeatureFlagPreference( + var enableHomepageAsNewTab by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_enable_homepage_as_new_tab), default = { FxNimbus.features.homepageAsNewTab.value().enabled }, - featureFlag = true, ) /** * Indicates if the Homepage Search Bar is enabled. */ - var enableHomepageSearchBar by lazyFeatureFlagPreference( + var enableHomepageSearchBar by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_enable_homepage_searchbar), default = { FxNimbus.features.homepageSearchBar.value().enabled }, - featureFlag = true, ) /** @@ -2368,10 +2343,9 @@ class Settings( /** * Indicates if the Unified Trust Panel is enabled. */ - var enableUnifiedTrustPanel by lazyFeatureFlagPreference( + var enableUnifiedTrustPanel by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_enable_unified_trust_panel), default = { FxNimbus.features.unifiedTrustPanel.value().enabled }, - featureFlag = true, ) /** @@ -2482,9 +2456,8 @@ class Settings( /** * Indicates whether Relay enabled or not. */ - var isRelayFeatureEnabled by lazyFeatureFlagPreference( + var isRelayFeatureEnabled by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_enable_relay_email_masks), - featureFlag = true, default = { FxNimbus.features.relayEmailMasks.value().enabled }, ) @@ -2518,10 +2491,9 @@ class Settings( /** * Indicates if the microsurvey feature is enabled. */ - var microsurveyFeatureEnabled by lazyFeatureFlagPreference( + var microsurveyFeatureEnabled by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_microsurvey_feature_enabled), default = { FxNimbus.features.microsurveys.value().enabled }, - featureFlag = true, ) /** @@ -2672,10 +2644,9 @@ class Settings( /** * Indicates whether or not to show the entry point for the DNS over HTTPS settings */ - val showDohEntryPoint by lazyFeatureFlagPreference( + val showDohEntryPoint by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_doh_settings_enabled), default = { FxNimbus.features.doh.value().showUi }, - featureFlag = true, ) /** @@ -2784,22 +2755,20 @@ class Settings( /** * Indicates if the sponsored tiles are suppressed. */ - var suppressSponsoredTopSitesEnabled by lazyFeatureFlagPreference( + var suppressSponsoredTopSitesEnabled by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_suppress_sponsored_tiles), - featureFlag = true, default = { FxNimbus.features.suppressSponsoredTopSites.value().enabled }, ) /** * Indicates whether or not to show the checklist feature. */ - var showSetupChecklist by lazyFeatureFlagPreference( + var showSetupChecklist by booleanPreference( key = appContext.getPreferenceKey(R.string.pref_key_setup_checklist_complete), default = { FxNimbus.features.setupChecklist.value().enabled && canShowAddSearchWidgetPrompt(AppWidgetManager.getInstance(appContext)) }, - featureFlag = true, ) /**