Commit 0e5fd802 authored by Wei-Yin Chen (陳威尹)'s avatar Wei-Yin Chen (陳威尹) Committed by Commit Bot

Sort chrome_features.{h,cc} in dictionary order

Command to verify they are sorted:

cat chrome/common/chrome_features.h | \
gawk '{print gensub(/.*Feature[^ ]* ([0-9a-zA-Z_]*).*/,"\\1","g")}' | \
gawk '/^k/' > out/all \
&& cat out/all | LANG=C sort -u > out/sorted \
&& diff -u out/all out/sorted

chrome/common/chrome_features.cc can be checked similarly.
Fixing them was manual.

Bug: None
Change-Id: Ie5639fa4bedc41024f975ad43b8bf5a5149b322f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2345944
Commit-Queue: Wei-Yin Chen (陳威尹) <wychen@chromium.org>
Reviewed-by: default avatarMichael Thiessen <mthiesse@chromium.org>
Cr-Commit-Position: refs/heads/master@{#796580}
parent 69e18d60
......@@ -16,9 +16,31 @@ namespace features {
// All features in alphabetical order.
#if BUILDFLAG(ENABLE_EXTENSIONS)
// Sets whether dismissing the new-tab-page override bubble counts as
// acknowledgement.
const base::Feature kAcknowledgeNtpOverrideOnDeactivate{
"AcknowledgeNtpOverrideOnDeactivate", base::FEATURE_DISABLED_BY_DEFAULT};
#endif
#if defined(OS_CHROMEOS)
// Enables or disables logging for adaptive screen brightness on Chrome OS.
const base::Feature kAdaptiveScreenBrightnessLogging{
"AdaptiveScreenBrightnessLogging", base::FEATURE_ENABLED_BY_DEFAULT};
#endif
#if defined(OS_ANDROID)
const base::Feature kAddToHomescreenMessaging{
"AddToHomescreenMessaging", base::FEATURE_DISABLED_BY_DEFAULT};
#endif
#if defined(OS_CHROMEOS)
// Shows a setting that allows disabling mouse acceleration.
const base::Feature kAllowDisableMouseAcceleration{
"AllowDisableMouseAcceleration", base::FEATURE_ENABLED_BY_DEFAULT};
#endif
#if defined(OS_ANDROID)
const base::Feature kAndroidDarkSearch{"AndroidDarkSearch",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif // defined(OS_ANDROID)
......@@ -36,26 +58,21 @@ const base::Feature kAppActivityReporting{"AppActivityReporting",
base::FEATURE_ENABLED_BY_DEFAULT};
#endif
#if !defined(OS_ANDROID)
// App Service related flags. See components/services/app_service/README.md.
const base::Feature kAppServiceAdaptiveIcon{"AppServiceAdaptiveIcon",
base::FEATURE_ENABLED_BY_DEFAULT};
const base::Feature kAppServiceIntentHandling{"AppServiceIntentHandling",
base::FEATURE_ENABLED_BY_DEFAULT};
#endif // !defined(OS_ANDROID)
#if defined(OS_MAC)
// Can be used to disable RemoteCocoa (hosting NSWindows for apps in the app
// process). For debugging purposes only.
const base::Feature kAppShimRemoteCocoa{"AppShimRemoteCocoa",
base::FEATURE_ENABLED_BY_DEFAULT};
// Enables the "this OS is obsolete" infobar on Mac 10.9.
// TODO(ellyjones): Remove this after the last 10.9 release.
const base::Feature kShow10_9ObsoleteInfobar{"Show109ObsoleteInfobar",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif // defined(OS_MAC)
#if !defined(OS_ANDROID)
// App Service related flags. See components/services/app_service/README.md.
const base::Feature kAppServiceIntentHandling{"AppServiceIntentHandling",
base::FEATURE_ENABLED_BY_DEFAULT};
const base::Feature kAppServiceAdaptiveIcon{"AppServiceAdaptiveIcon",
base::FEATURE_ENABLED_BY_DEFAULT};
#endif // !defined(OS_ANDROID)
// Enables the built-in DNS resolver.
const base::Feature kAsyncDns {
"AsyncDns",
......@@ -74,20 +91,9 @@ const base::Feature kBackgroundModeAllowRestart{
"BackgroundModeAllowRestart", base::FEATURE_DISABLED_BY_DEFAULT};
#endif // defined(OS_WIN) || defined(OS_LINUX)
#if !defined(OS_ANDROID)
// Enables logging UKMs for background tab activity by TabActivityWatcher.
const base::Feature kTabMetricsLogging{"TabMetricsLogging",
base::FEATURE_ENABLED_BY_DEFAULT};
#endif
#if defined(OS_WIN)
// Enables the blocking of third-party modules. This feature requires Windows 8
// or higher because it depends on the ProcessExtensionPointDisablePolicy
// mitigation, which was not available on Windows 7.
// Note: Due to a limitation in the implementation of this feature, it is
// required to start the browser two times to fully enable or disable it.
const base::Feature kThirdPartyModulesBlocking{
"ThirdPartyModulesBlocking", base::FEATURE_DISABLED_BY_DEFAULT};
#if defined(OS_CHROMEOS)
// Enable Borealis on Chrome OS.
const base::Feature kBorealis{"Borealis", base::FEATURE_DISABLED_BY_DEFAULT};
#endif
#if BUILDFLAG(TRIAL_COMPARISON_CERT_VERIFIER_SUPPORTED)
......@@ -107,13 +113,6 @@ const base::Feature kChangePictureVideoMode{"ChangePictureVideoMode",
const base::Feature kCheckOfflineCapability{"CheckOfflineCapability",
base::FEATURE_DISABLED_BY_DEFAULT};
#if defined(OS_CHROMEOS)
// Enables passing additional user authentication in requests to DMServer
// (policy fetch, status report upload).
const base::Feature kDMServerOAuthForChildUser{
"DMServerOAuthForChildUser", base::FEATURE_ENABLED_BY_DEFAULT};
#endif
#if defined(OS_ANDROID)
// Enables clearing of browsing data which is older than given time period.
const base::Feature kClearOldBrowsingData{"ClearOldBrowsingData",
......@@ -129,18 +128,15 @@ const base::Feature kClientStorageAccessContextAuditing{
const base::Feature kContentSettingsRedesign{"ContentSettingsRedesign",
base::FEATURE_DISABLED_BY_DEFAULT};
#if defined(OS_MAC)
const base::Feature kImmersiveFullscreen{"ImmersiveFullscreen",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif
#if defined(OS_CHROMEOS)
// Shows a setting that allows disabling mouse acceleration.
const base::Feature kAllowDisableMouseAcceleration{
"AllowDisableMouseAcceleration", base::FEATURE_ENABLED_BY_DEFAULT};
// Enables or disables "usm" service in the list of user services returned by
// userInfo Gaia message.
const base::Feature kCrOSEnableUSMUserService{"CrOSEnableUSMUserService",
base::FEATURE_ENABLED_BY_DEFAULT};
// Enable Borealis on Chrome OS.
const base::Feature kBorealis{"Borealis", base::FEATURE_DISABLED_BY_DEFAULT};
// Enables or disables flash component updates on Chrome OS.
const base::Feature kCrosCompUpdates{"CrosCompUpdates",
base::FEATURE_ENABLED_BY_DEFAULT};
// Enable project Crostini, Linux VMs on Chrome OS.
const base::Feature kCrostini{"Crostini", base::FEATURE_DISABLED_BY_DEFAULT};
......@@ -165,14 +161,14 @@ const base::Feature kCrostiniAnsibleInfrastructure{
const base::Feature kCrostiniAnsibleSoftwareManagement{
"CrostiniAnsibleSoftwareManagement", base::FEATURE_DISABLED_BY_DEFAULT};
// Enables custom UI for forcibly closing unresponsive windows.
const base::Feature kCrostiniForceClose{"CrostiniForceClose",
base::FEATURE_ENABLED_BY_DEFAULT};
// Enables support for sideloading android apps into Arc via crostini.
const base::Feature kCrostiniArcSideload{"CrostiniArcSideload",
base::FEATURE_ENABLED_BY_DEFAULT};
// Enables custom UI for forcibly closing unresponsive windows.
const base::Feature kCrostiniForceClose{"CrostiniForceClose",
base::FEATURE_ENABLED_BY_DEFAULT};
// Enables distributed model for TPM1.2, i.e., using tpm_managerd and
// attestationd.
const base::Feature kCryptohomeDistributedModel{
......@@ -189,36 +185,29 @@ const base::Feature kCryptohomeUserDataAuth{"CryptohomeUserDataAuth",
// instead of the deprecated glib-dbus.
const base::Feature kCryptohomeUserDataAuthKillswitch{
"CryptohomeUserDataAuthKillswitch", base::FEATURE_DISABLED_BY_DEFAULT};
#endif
// Enable support for "Plugin VMs" on Chrome OS.
const base::Feature kPluginVm{"PluginVm", base::FEATURE_DISABLED_BY_DEFAULT};
// Enable adding a print server on Chrome OS.
const base::Feature kPrintServerUi{"PrintServerUi",
base::FEATURE_ENABLED_BY_DEFAULT};
// Use the Terminal System App legacy settings page.
const base::Feature kTerminalSystemAppLegacySettings{
"TerminalSystemAppLegacySettings", base::FEATURE_DISABLED_BY_DEFAULT};
// Enable uploading of a zip archive of system logs instead of individual files.
const base::Feature kUploadZippedSystemLogs{"UploadZippedSystemLogs",
base::FEATURE_ENABLED_BY_DEFAULT};
#if defined(OS_CHROMEOS)
// Enables passing additional user authentication in requests to DMServer
// (policy fetch, status report upload).
const base::Feature kDMServerOAuthForChildUser{
"DMServerOAuthForChildUser", base::FEATURE_ENABLED_BY_DEFAULT};
#endif
// Allow a Wilco DTC (diagnostics and telemetry controller) on Chrome OS.
// More info about the project may be found here:
// https://docs.google.com/document/d/18Ijj8YlC8Q3EWRzLspIi2dGxg4vIBVe5sJgMPt9SWYo
const base::Feature kWilcoDtc{"WilcoDtc", base::FEATURE_DISABLED_BY_DEFAULT};
#if !defined(OS_ANDROID)
// Whether to allow installed-by-default web apps to be installed or not.
const base::Feature kDefaultWebAppInstallation{
"DefaultWebAppInstallation", base::FEATURE_ENABLED_BY_DEFAULT};
#endif
// Enable using tab sharing infobars for desktop capture.
const base::Feature kDesktopCaptureTabSharingInfobar{
"DesktopCaptureTabSharingInfobar", base::FEATURE_ENABLED_BY_DEFAULT};
// Enables or disables new Desktop PWAs implementation that does not use
// extensions.
const base::Feature kDesktopPWAsWithoutExtensions{
"DesktopPWAsWithoutExtensions", base::FEATURE_ENABLED_BY_DEFAULT};
// Enables Desktop PWA installs to have a menu of shortcuts associated with
// the app icon in the taskbar on Windows, or the dock on macOS or Linux.
const base::Feature kDesktopPWAsAppIconShortcutsMenu{
"DesktopPWAsAppIconShortcutsMenu", base::FEATURE_ENABLED_BY_DEFAULT};
// When installing default installed PWAs, we wait for service workers
// to cache resources.
......@@ -230,21 +219,9 @@ const base::Feature kDesktopPWAsCacheDuringDefaultInstall{
const base::Feature kDesktopPWAsLocalUpdating{"DesktopPWAsLocalUpdating",
base::FEATURE_ENABLED_BY_DEFAULT};
// Adds a tab strip to PWA windows, used for UI experimentation.
// TODO(crbug.com/897314): Enable this feature.
const base::Feature kDesktopPWAsTabStrip{"DesktopPWAsTabStrip",
base::FEATURE_DISABLED_BY_DEFAULT};
// Makes user navigations via links within web app scopes get captured tab
// tabbed app windows.
// TODO(crbug.com/897314): Enable this feature.
const base::Feature kDesktopPWAsTabStripLinkCapturing{
"DesktopPWAsTabStripLinkCapturing", base::FEATURE_DISABLED_BY_DEFAULT};
// Enables Desktop PWA installs to have a menu of shortcuts associated with
// the app icon in the taskbar on Windows, or the dock on macOS or Linux.
const base::Feature kDesktopPWAsAppIconShortcutsMenu{
"DesktopPWAsAppIconShortcutsMenu", base::FEATURE_ENABLED_BY_DEFAULT};
// Enables or disables Desktop PWAs to be auto-started on OS login.
const base::Feature kDesktopPWAsRunOnOsLogin{"DesktopPWAsRunOnOsLogin",
base::FEATURE_DISABLED_BY_DEFAULT};
// Enables or disables usage of shared LevelDB instance (ModelTypeStoreService).
// If this flag is disabled, the new Web Apps system uses its own isolated
......@@ -255,25 +232,41 @@ const base::Feature kDesktopPWAsAppIconShortcutsMenu{
const base::Feature kDesktopPWAsSharedStoreService{
"DesktopPWAsSharedStoreService", base::FEATURE_ENABLED_BY_DEFAULT};
#if !defined(OS_ANDROID)
// Whether to allow installed-by-default web apps to be installed or not.
const base::Feature kDefaultWebAppInstallation{
"DefaultWebAppInstallation", base::FEATURE_ENABLED_BY_DEFAULT};
#endif
// Adds a tab strip to PWA windows, used for UI experimentation.
// TODO(crbug.com/897314): Enable this feature.
const base::Feature kDesktopPWAsTabStrip{"DesktopPWAsTabStrip",
base::FEATURE_DISABLED_BY_DEFAULT};
// Enables or disables Desktop PWAs to be auto-started on OS login.
const base::Feature kDesktopPWAsRunOnOsLogin{"DesktopPWAsRunOnOsLogin",
base::FEATURE_DISABLED_BY_DEFAULT};
// Makes user navigations via links within web app scopes get captured tab
// tabbed app windows.
// TODO(crbug.com/897314): Enable this feature.
const base::Feature kDesktopPWAsTabStripLinkCapturing{
"DesktopPWAsTabStripLinkCapturing", base::FEATURE_DISABLED_BY_DEFAULT};
// Enables or disables new Desktop PWAs implementation that does not use
// extensions.
const base::Feature kDesktopPWAsWithoutExtensions{
"DesktopPWAsWithoutExtensions", base::FEATURE_ENABLED_BY_DEFAULT};
// Enable DNS over HTTPS (DoH).
const base::Feature kDnsOverHttps{"DnsOverHttps",
base::FEATURE_DISABLED_BY_DEFAULT};
// Provides a mechanism to remove providers from the dropdown list in the
// settings UI. Separate multiple provider ids with commas. See the
// mapping in net/dns/dns_util.cc for provider ids.
const base::FeatureParam<std::string> kDnsOverHttpsDisabledProvidersParam{
&kDnsOverHttps, "DisabledProviders", ""};
// Set whether fallback to insecure DNS is allowed by default. This setting may
// be overridden for individual transactions.
const base::FeatureParam<bool> kDnsOverHttpsFallbackParam{&kDnsOverHttps,
"Fallback", true};
// Sets whether the DoH setting is displayed in the settings UI.
const base::FeatureParam<bool> kDnsOverHttpsShowUiParam{&kDnsOverHttps,
"ShowUi", false};
// Supply one or more space-separated DoH server URI templates to use when this
// feature is enabled. If no templates are specified, then a hardcoded mapping
// will be used to construct a list of DoH templates associated with the IP
......@@ -281,32 +274,22 @@ const base::FeatureParam<bool> kDnsOverHttpsFallbackParam{&kDnsOverHttps,
const base::FeatureParam<std::string> kDnsOverHttpsTemplatesParam{
&kDnsOverHttps, "Templates", ""};
// Sets whether the DoH setting is displayed in the settings UI.
const base::FeatureParam<bool> kDnsOverHttpsShowUiParam{&kDnsOverHttps,
"ShowUi", false};
// Provides a mechanism to remove providers from the dropdown list in the
// settings UI. Separate multiple provider ids with commas. See the
// mapping in net/dns/dns_util.cc for provider ids.
const base::FeatureParam<std::string> kDnsOverHttpsDisabledProvidersParam{
&kDnsOverHttps, "DisabledProviders", ""};
#if defined(OS_ANDROID)
// Enable changing default downloads storage location on Android.
const base::Feature kDownloadsLocationChange{"DownloadsLocationChange",
base::FEATURE_ENABLED_BY_DEFAULT};
#endif
// Disables ambient authentication in incognito mode.
const base::Feature kEnableAmbientAuthenticationInIncognito{
"EnableAmbientAuthenticationInIncognito",
base::FEATURE_DISABLED_BY_DEFAULT};
// Disables ambient authentication in guest sessions.
const base::Feature kEnableAmbientAuthenticationInGuestSession{
"EnableAmbientAuthenticationInGuestSession",
base::FEATURE_DISABLED_BY_DEFAULT};
// Disables ambient authentication in incognito mode.
const base::Feature kEnableAmbientAuthenticationInIncognito{
"EnableAmbientAuthenticationInIncognito",
base::FEATURE_DISABLED_BY_DEFAULT};
#if defined(OS_WIN)
// Enables users to create a desktop shortcut for incognito mode.
const base::Feature kEnableIncognitoShortcutOnDesktop{
......@@ -337,6 +320,19 @@ const base::Feature kExportTaggedPDF{"ExportTaggedPDF",
const base::Feature kExternalExtensionDefaultButtonControl{
"ExternalExtensionDefaultButtonControl", base::FEATURE_DISABLED_BY_DEFAULT};
#if BUILDFLAG(ENABLE_PLUGINS)
// Show Flash deprecation warning to users who have manually enabled Flash.
// https://crbug.com/918428
const base::Feature kFlashDeprecationWarning{"FlashDeprecationWarning",
base::FEATURE_ENABLED_BY_DEFAULT};
#endif
// Enables or disables the FlocIdComputed event logging, which happens when a
// floc id is first computed for a browsing session or is refreshed due to a
// long period of time has passed since the last computation.
const base::Feature kFlocIdComputedEventLogging{
"FlocIdComputedEventLogging", base::FEATURE_DISABLED_BY_DEFAULT};
// Enables Focus Mode which brings up a PWA-like window look.
const base::Feature kFocusMode{"FocusMode", base::FEATURE_DISABLED_BY_DEFAULT};
......@@ -355,12 +351,6 @@ const base::Feature kGdiTextPrinting{"GdiTextPrinting",
const base::Feature kGeoLanguage{"GeoLanguage",
base::FEATURE_DISABLED_BY_DEFAULT};
#if defined(OS_CHROMEOS)
// Enables or disables the Happiness Tracking System for the device.
const base::Feature kHappinessTrackingSystem{"HappinessTrackingSystem",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif
#if !defined(OS_ANDROID)
// Enables or disables the Happiness Tracking System for Desktop Chrome.
const base::Feature kHappinessTrackingSurveysForDesktop{
......@@ -372,6 +362,12 @@ const base::Feature kHappinessTrackingSurveysForDesktopDemo{
"HappinessTrackingSurveysForDesktopDemo",
base::FEATURE_DISABLED_BY_DEFAULT};
// Enables the migration of Happiness Tracking Surveys on Desktop (to the latest
// version).
const base::Feature kHappinessTrackingSurveysForDesktopMigration{
"HappinessTrackingSurveysForDesktopMigration",
base::FEATURE_DISABLED_BY_DEFAULT};
// Enables or disables the Happiness Tracking System for Desktop Chrome
// Settings.
const base::Feature kHappinessTrackingSurveysForDesktopSettings{
......@@ -383,14 +379,33 @@ const base::Feature kHappinessTrackingSurveysForDesktopSettings{
const base::Feature kHappinessTrackingSurveysForDesktopSettingsPrivacy{
"HappinessTrackingSurveysForDesktopSettingsPrivacy",
base::FEATURE_DISABLED_BY_DEFAULT};
// Enables the migration of Happiness Tracking Surveys on Desktop (to the latest
// version).
const base::Feature kHappinessTrackingSurveysForDesktopMigration{
"HappinessTrackingSurveysForDesktopMigration",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif // !defined(OS_ANDROID)
#if defined(OS_CHROMEOS)
// Enables or disables the Happiness Tracking System for the device.
const base::Feature kHappinessTrackingSystem{"HappinessTrackingSystem",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif
// Enables or disables the intervention that unloads ad iframes with intensive
// resource usage.
const base::Feature kHeavyAdIntervention{"HeavyAdIntervention",
base::FEATURE_DISABLED_BY_DEFAULT};
// Enables or disables reporting on the intervention that unloads ad iframes
// with intensive resource usage.
const base::Feature kHeavyAdInterventionWarning{
"HeavyAdInterventionWarning", base::FEATURE_ENABLED_BY_DEFAULT};
// Enables or disables the privacy mitigations for the heavy ad intervention.
// This throttles the amount of interventions that can occur on a given host in
// a time period. It also adds noise to the thresholds used. This is separate
// from the intervention feature so it does not interfere with field trial
// activation, as this blocklist is created for every user, and noise is decided
// prior to seeing a heavy ad.
const base::Feature kHeavyAdPrivacyMitigations{
"HeavyAdPrivacyMitigations", base::FEATURE_ENABLED_BY_DEFAULT};
// Hide CorsLegacyModeEnabled enterprise policy support. This feature and
// the enterprise policy supporting code will be removed at m84.
const base::Feature kHideCorsLegacyModeEnabledPolicySupport{
......@@ -401,17 +416,9 @@ const base::Feature kHideCorsLegacyModeEnabledPolicySupport{
const base::Feature kHideCorsMitigationListPolicySupport{
"HideCorsMitigationListPolicySupport", base::FEATURE_ENABLED_BY_DEFAULT};
// Enables LiteVideos, a data-saving optimization that throttles media requests
// to reduce the bitrate of adaptive media streams. Only for Lite mode users
// (formerly DataSaver).
const base::Feature kLiteVideo{"LiteVideo", base::FEATURE_DISABLED_BY_DEFAULT};
#if defined(OS_WIN)
// A feature that controls whether Chrome warns about incompatible applications.
// This feature requires Windows 10 or higher to work because it depends on
// the "Apps & Features" system settings.
const base::Feature kIncompatibleApplicationsWarning{
"IncompatibleApplicationsWarning", base::FEATURE_DISABLED_BY_DEFAULT};
#if defined(OS_MAC)
const base::Feature kImmersiveFullscreen{"ImmersiveFullscreen",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif
#if defined(OS_CHROMEOS)
......@@ -427,6 +434,14 @@ const base::Feature kInSessionPasswordChange{"InSessionPasswordChange",
base::FEATURE_ENABLED_BY_DEFAULT};
#endif // defined(OS_CHROMEOS)
#if defined(OS_WIN)
// A feature that controls whether Chrome warns about incompatible applications.
// This feature requires Windows 10 or higher to work because it depends on
// the "Apps & Features" system settings.
const base::Feature kIncompatibleApplicationsWarning{
"IncompatibleApplicationsWarning", base::FEATURE_DISABLED_BY_DEFAULT};
#endif
#if defined(OS_ANDROID)
// Enables or disables the installable ambient badge infobar.
const base::Feature kInstallableAmbientBadgeInfoBar{
......@@ -452,6 +467,11 @@ const base::Feature kKernelnextVMs{"KernelnextVMs",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif
// Enables LiteVideos, a data-saving optimization that throttles media requests
// to reduce the bitrate of adaptive media streams. Only for Lite mode users
// (formerly DataSaver).
const base::Feature kLiteVideo{"LiteVideo", base::FEATURE_DISABLED_BY_DEFAULT};
#if defined(OS_MAC)
// Uses NSFullSizeContentViewWindowMask where available instead of adding our
// own views to the window frame. This is a temporary kill switch, it can be
......@@ -487,13 +507,6 @@ const base::Feature kMeteredShowToggle{"MeteredShowToggle",
base::FEATURE_ENABLED_BY_DEFAULT};
#endif
#if BUILDFLAG(ENABLE_EXTENSIONS)
// Sets whether dismissing the new-tab-page override bubble counts as
// acknowledgement.
const base::Feature kAcknowledgeNtpOverrideOnDeactivate{
"AcknowledgeNtpOverrideOnDeactivate", base::FEATURE_DISABLED_BY_DEFAULT};
#endif
// Enables showing an entry for mixed content in site settings, which controls
// allowing blockable mixed content. When enabled, the mixed content shield is
// not shown on the omnibox, since its functionality is replaced by the
......@@ -501,11 +514,6 @@ const base::Feature kAcknowledgeNtpOverrideOnDeactivate{
const base::Feature kMixedContentSiteSetting{"MixedContentSiteSetting",
base::FEATURE_ENABLED_BY_DEFAULT};
#if !defined(OS_ANDROID)
const base::Feature kOnConnectNative{"OnConnectNative",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif
// Enables the use of native notification centers instead of using the Message
// Center for displaying the toasts. The feature is hardcoded to enabled for
// Chrome OS.
......@@ -533,6 +541,25 @@ const base::Feature kNtlmV2Enabled{"NtlmV2Enabled",
base::FEATURE_ENABLED_BY_DEFAULT};
#endif
#if !defined(OS_ANDROID)
const base::Feature kOnConnectNative{"OnConnectNative",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif
// Enables/disables marketing emails for other countries other than US,CA,UK.
const base::Feature kOobeMarketingAdditionalCountriesSupported{
"kOobeMarketingAdditionalCountriesSupported",
base::FEATURE_ENABLED_BY_DEFAULT};
// Enables/disables marketing emails for double opt-in countries.
const base::Feature kOobeMarketingDoubleOptInCountriesSupported{
"kOobeMarketingDoubleOptInCountriesSupported",
base::FEATURE_ENABLED_BY_DEFAULT};
// Enables or disables the marketing opt-in screen in OOBE
const base::Feature kOobeMarketingScreen{"OobeMarketingScreen",
base::FEATURE_ENABLED_BY_DEFAULT};
#if defined(OS_ANDROID)
// Enables or disabled the OOM intervention.
const base::Feature kOomIntervention{"OomIntervention",
......@@ -560,6 +587,11 @@ const base::Feature kPerAppTimeLimits{"PerAppTimeLimits",
base::FEATURE_ENABLED_BY_DEFAULT};
#endif
#if defined(OS_CHROMEOS)
// Enable support for "Plugin VMs" on Chrome OS.
const base::Feature kPluginVm{"PluginVm", base::FEATURE_DISABLED_BY_DEFAULT};
#endif
// Allows prediction operations (e.g., prefetching) on all connection types.
const base::Feature kPredictivePrefetchingAllowedOnAllConnectionTypes{
"PredictivePrefetchingAllowedOnAllConnectionTypes",
......@@ -569,6 +601,12 @@ const base::Feature kPredictivePrefetchingAllowedOnAllConnectionTypes{
const base::Feature kPrerenderFallbackToPreconnect{
"PrerenderFallbackToPreconnect", base::FEATURE_ENABLED_BY_DEFAULT};
#if defined(OS_CHROMEOS)
// Enable adding a print server on Chrome OS.
const base::Feature kPrintServerUi{"PrintServerUi",
base::FEATURE_ENABLED_BY_DEFAULT};
#endif
#if defined(OS_ANDROID)
const base::Feature kPrivacyElevatedAndroid{"PrivacyElevatedAndroid",
base::FEATURE_DISABLED_BY_DEFAULT};
......@@ -582,28 +620,31 @@ const base::Feature kPrivacyReorderedAndroid{"PrivacyReorderedAndroid",
const base::Feature kPrivacySettingsRedesign{"PrivacySettingsRedesign",
base::FEATURE_ENABLED_BY_DEFAULT};
#if defined(OS_ANDROID)
const base::Feature kSafetyCheckAndroid{"SafetyCheckAndroid",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif
#if defined(OS_WIN)
const base::Feature kSafetyCheckChromeCleanerChild{
"SafetyCheckChromeCleanerChild", base::FEATURE_ENABLED_BY_DEFAULT};
#endif
#if BUILDFLAG(ENABLE_PLUGINS)
// Show Flash deprecation warning to users who have manually enabled Flash.
// https://crbug.com/918428
const base::Feature kFlashDeprecationWarning{"FlashDeprecationWarning",
base::FEATURE_ENABLED_BY_DEFAULT};
#endif
// Enables or disables push subscriptions keeping Chrome running in the
// background when closed.
const base::Feature kPushMessagingBackgroundMode{
"PushMessagingBackgroundMode", base::FEATURE_DISABLED_BY_DEFAULT};
#if defined(OS_CHROMEOS)
// Enables or disables fingerprint quick unlock.
const base::Feature kQuickUnlockFingerprint{"QuickUnlockFingerprint",
base::FEATURE_DISABLED_BY_DEFAULT};
// Controls whether the PIN auto submit feature is enabled.
const base::Feature kQuickUnlockPinAutosubmit{
"QuickUnlockPinAutosubmit", base::FEATURE_DISABLED_BY_DEFAULT};
// TODO(crbug.com/1104164) - Remove this once most
// users have their preferences backfilled.
// Controls whether the PIN auto submit backfill operation should be performed.
const base::Feature kQuickUnlockPinAutosubmitBackfill{
"QuickUnlockPinAutosubmitBackfill", base::FEATURE_ENABLED_BY_DEFAULT};
// Enables pin on the login screen.
const base::Feature kQuickUnlockPinSignin{"QuickUnlockPinSignin",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif
// Enables using quiet prompts for notification permission requests.
const base::Feature kQuietNotificationPrompts{"QuietNotificationPrompts",
base::FEATURE_ENABLED_BY_DEFAULT};
......@@ -614,6 +655,22 @@ const base::Feature kRemoveSupervisedUsersOnStartup{
"RemoveSupervisedUsersOnStartup", base::FEATURE_DISABLED_BY_DEFAULT};
#endif
#if defined(OS_ANDROID)
const base::Feature kSafetyCheckAndroid{"SafetyCheckAndroid",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif
#if defined(OS_WIN)
const base::Feature kSafetyCheckChromeCleanerChild{
"SafetyCheckChromeCleanerChild", base::FEATURE_ENABLED_BY_DEFAULT};
#endif
#if defined(OS_CHROMEOS)
// Enable support for multiple scheduler configurations.
const base::Feature kSchedulerConfiguration{"SchedulerConfiguration",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif // defined(OS_CHROMEOS)
// Controls whether the user is prompted when sites request attestation.
const base::Feature kSecurityKeyAttestationPrompt{
"SecurityKeyAttestationPrompt", base::FEATURE_ENABLED_BY_DEFAULT};
......@@ -623,6 +680,13 @@ const base::Feature kSharesheet{"Sharesheet",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif
#if defined(OS_MAC)
// Enables the "this OS is obsolete" infobar on Mac 10.9.
// TODO(ellyjones): Remove this after the last 10.9 release.
const base::Feature kShow10_9ObsoleteInfobar{"Show109ObsoleteInfobar",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif // defined(OS_MAC)
#if defined(OS_ANDROID)
const base::Feature kShowTrustedPublisherURL{"ShowTrustedPublisherURL",
base::FEATURE_ENABLED_BY_DEFAULT};
......@@ -645,9 +709,8 @@ const base::Feature kSitePerProcess {
};
#if defined(OS_CHROMEOS)
// Enables or disables automatic setup of USB printers.
const base::Feature kStreamlinedUsbPrinterSetup{
"StreamlinedUsbPrinterSetup", base::FEATURE_ENABLED_BY_DEFAULT};
// Enables or disables SmartDim on Chrome OS.
const base::Feature kSmartDim{"SmartDim", base::FEATURE_DISABLED_BY_DEFAULT};
// Enables or disables using smbfs for accessing SMB file shares.
const base::Feature kSmbFs{"SmbFs", base::FEATURE_ENABLED_BY_DEFAULT};
......@@ -659,6 +722,10 @@ const base::Feature kSoundContentSetting{"SoundContentSetting",
base::FEATURE_ENABLED_BY_DEFAULT};
#if defined(OS_CHROMEOS)
// Enables or disables automatic setup of USB printers.
const base::Feature kStreamlinedUsbPrinterSetup{
"StreamlinedUsbPrinterSetup", base::FEATURE_ENABLED_BY_DEFAULT};
// Enables or disables chrome://sys-internals.
const base::Feature kSysInternals{"SysInternals",
base::FEATURE_DISABLED_BY_DEFAULT};
......@@ -668,113 +735,63 @@ const base::Feature kSysInternals{"SysInternals",
const base::Feature kSystemWebApps{"SystemWebApps",
base::FEATURE_ENABLED_BY_DEFAULT};
// Disable downloads of unsafe file types over insecure transports if initiated
// from a secure page
const base::Feature kTreatUnsafeDownloadsAsActive{
"TreatUnsafeDownloadsAsActive", base::FEATURE_DISABLED_BY_DEFAULT};
// Enables or disables the intervention that unloads ad iframes with intensive
// resource usage.
const base::Feature kHeavyAdIntervention{"HeavyAdIntervention",
base::FEATURE_DISABLED_BY_DEFAULT};
// Enables or disables reporting on the intervention that unloads ad iframes
// with intensive resource usage.
const base::Feature kHeavyAdInterventionWarning{
"HeavyAdInterventionWarning", base::FEATURE_ENABLED_BY_DEFAULT};
// Enables or disables the privacy mitigations for the heavy ad intervention.
// This throttles the amount of interventions that can occur on a given host in
// a time period. It also adds noise to the thresholds used. This is separate
// from the intervention feature so it does not interfere with field trial
// activation, as this blocklist is created for every user, and noise is decided
// prior to seeing a heavy ad.
const base::Feature kHeavyAdPrivacyMitigations{
"HeavyAdPrivacyMitigations", base::FEATURE_ENABLED_BY_DEFAULT};
// Enables or disables the FlocIdComputed event logging, which happens when a
// floc id is first computed for a browsing session or is refreshed due to a
// long period of time has passed since the last computation.
const base::Feature kFlocIdComputedEventLogging{
"FlocIdComputedEventLogging", base::FEATURE_DISABLED_BY_DEFAULT};
#if defined(OS_CHROMEOS)
// Enables or disables logging for adaptive screen brightness on Chrome OS.
const base::Feature kAdaptiveScreenBrightnessLogging{
"AdaptiveScreenBrightnessLogging", base::FEATURE_ENABLED_BY_DEFAULT};
// Enables or disables user activity event logging for power management on
// Chrome OS.
const base::Feature kUserActivityEventLogging{"UserActivityEventLogging",
base::FEATURE_ENABLED_BY_DEFAULT};
// Enables or disables TPM firmware update capability on Chrome OS.
const base::Feature kTPMFirmwareUpdate{"TPMFirmwareUpdate",
base::FEATURE_ENABLED_BY_DEFAULT};
#endif
#if defined(OS_CHROMEOS)
// Controls whether the PIN auto submit feature is enabled.
const base::Feature kQuickUnlockPinAutosubmit{
"QuickUnlockPinAutosubmit", base::FEATURE_DISABLED_BY_DEFAULT};
// TODO(crbug.com/1104164) - Remove this once most
// users have their preferences backfilled.
// Controls whether the PIN auto submit backfill operation should be performed.
const base::Feature kQuickUnlockPinAutosubmitBackfill{
"QuickUnlockPinAutosubmitBackfill", base::FEATURE_ENABLED_BY_DEFAULT};
// Enables pin on the login screen.
const base::Feature kQuickUnlockPinSignin{"QuickUnlockPinSignin",
base::FEATURE_DISABLED_BY_DEFAULT};
// Enables or disables the marketing opt-in screen in OOBE
const base::Feature kOobeMarketingScreen{"OobeMarketingScreen",
base::FEATURE_ENABLED_BY_DEFAULT};
// Enables/disables marketing emails for double opt-in countries.
const base::Feature kOobeMarketingDoubleOptInCountriesSupported{
"kOobeMarketingDoubleOptInCountriesSupported",
base::FEATURE_ENABLED_BY_DEFAULT};
// Enables/disables marketing emails for other countries other than US,CA,UK.
const base::Feature kOobeMarketingAdditionalCountriesSupported{
"kOobeMarketingAdditionalCountriesSupported",
base::FEATURE_ENABLED_BY_DEFAULT};
// Enables or disables fingerprint quick unlock.
const base::Feature kQuickUnlockFingerprint{"QuickUnlockFingerprint",
base::FEATURE_DISABLED_BY_DEFAULT};
#if !defined(OS_ANDROID)
// Enables logging UKMs for background tab activity by TabActivityWatcher.
const base::Feature kTabMetricsLogging{"TabMetricsLogging",
base::FEATURE_ENABLED_BY_DEFAULT};
#endif
// Enables or disables flash component updates on Chrome OS.
const base::Feature kCrosCompUpdates{"CrosCompUpdates",
base::FEATURE_ENABLED_BY_DEFAULT};
// Enables the teamfood flags.
const base::Feature kTeamfoodFlags{"TeamfoodFlags",
base::FEATURE_DISABLED_BY_DEFAULT};
// Enables or disables TPM firmware update capability on Chrome OS.
const base::Feature kTPMFirmwareUpdate{"TPMFirmwareUpdate",
base::FEATURE_ENABLED_BY_DEFAULT};
#if defined(OS_CHROMEOS)
// Use the Terminal System App legacy settings page.
const base::Feature kTerminalSystemAppLegacySettings{
"TerminalSystemAppLegacySettings", base::FEATURE_DISABLED_BY_DEFAULT};
#endif
// Enables or disables "usm" service in the list of user services returned by
// userInfo Gaia message.
const base::Feature kCrOSEnableUSMUserService{"CrOSEnableUSMUserService",
base::FEATURE_ENABLED_BY_DEFAULT};
#if defined(OS_WIN)
// Enables the blocking of third-party modules. This feature requires Windows 8
// or higher because it depends on the ProcessExtensionPointDisablePolicy
// mitigation, which was not available on Windows 7.
// Note: Due to a limitation in the implementation of this feature, it is
// required to start the browser two times to fully enable or disable it.
const base::Feature kThirdPartyModulesBlocking{
"ThirdPartyModulesBlocking", base::FEATURE_DISABLED_BY_DEFAULT};
#endif
// Enables or disables SmartDim on Chrome OS.
const base::Feature kSmartDim{"SmartDim", base::FEATURE_DISABLED_BY_DEFAULT};
// Disable downloads of unsafe file types over insecure transports if initiated
// from a secure page
const base::Feature kTreatUnsafeDownloadsAsActive{
"TreatUnsafeDownloadsAsActive", base::FEATURE_DISABLED_BY_DEFAULT};
// Enable USBGuard at the lockscreen on Chrome OS.
// TODO(crbug.com/874630): Remove this kill-switch
const base::Feature kUsbguard{"USBGuard", base::FEATURE_ENABLED_BY_DEFAULT};
#if defined(OS_CHROMEOS)
// Enable uploading of a zip archive of system logs instead of individual files.
const base::Feature kUploadZippedSystemLogs{"UploadZippedSystemLogs",
base::FEATURE_ENABLED_BY_DEFAULT};
// Enable USB Bouncer for managing a device whitelist for USBGuard on Chrome OS.
const base::Feature kUsbbouncer{"USBBouncer",
base::FEATURE_DISABLED_BY_DEFAULT};
// Enable support for multiple scheduler configurations.
const base::Feature kSchedulerConfiguration{"SchedulerConfiguration",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif // defined(OS_CHROMEOS)
// Enable USBGuard at the lockscreen on Chrome OS.
// TODO(crbug.com/874630): Remove this kill-switch
const base::Feature kUsbguard{"USBGuard", base::FEATURE_ENABLED_BY_DEFAULT};
#endif
// Enables the teamfood flags.
const base::Feature kTeamfoodFlags{"TeamfoodFlags",
base::FEATURE_DISABLED_BY_DEFAULT};
#if defined(OS_CHROMEOS)
// Enables or disables user activity event logging for power management on
// Chrome OS.
const base::Feature kUserActivityEventLogging{"UserActivityEventLogging",
base::FEATURE_ENABLED_BY_DEFAULT};
#endif
#if !defined(OS_ANDROID)
// Allow capturing of WebRTC event logs, and uploading of those logs to Crash.
......@@ -788,6 +805,13 @@ const base::Feature kWebRtcRemoteEventLogGzipped{
"WebRtcRemoteEventLogGzipped", base::FEATURE_ENABLED_BY_DEFAULT};
#endif
// Enables setting time limit for Chrome and PWA's on child user device.
// Requires |kPerAppTimeLimits| to be enabled.
#if defined(OS_CHROMEOS)
const base::Feature kWebTimeLimits{"WebTimeLimits",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif // defined(OS_CHROMEOS)
// Whether to enable "dark mode" enhancements in Mac Mojave or Windows 10 for
// UIs implemented with web technologies.
const base::Feature kWebUIDarkMode {
......@@ -799,6 +823,13 @@ const base::Feature kWebUIDarkMode {
#endif // defined(OS_MAC) || defined(OS_WIN) || defined(OS_ANDROID)
};
#if defined(OS_CHROMEOS)
// Allow a Wilco DTC (diagnostics and telemetry controller) on Chrome OS.
// More info about the project may be found here:
// https://docs.google.com/document/d/18Ijj8YlC8Q3EWRzLspIi2dGxg4vIBVe5sJgMPt9SWYo
const base::Feature kWilcoDtc{"WilcoDtc", base::FEATURE_DISABLED_BY_DEFAULT};
#endif
#if defined(OS_WIN)
// Enables the accelerated default browser flow for Windows 10.
const base::Feature kWin10AcceleratedDefaultBrowserFlow{
......@@ -811,13 +842,6 @@ const base::Feature kWriteBasicSystemProfileToPersistentHistogramsFile{
"WriteBasicSystemProfileToPersistentHistogramsFile",
base::FEATURE_ENABLED_BY_DEFAULT};
// Enables setting time limit for Chrome and PWA's on child user device.
// Requires |kPerAppTimeLimits| to be enabled.
#if defined(OS_CHROMEOS)
const base::Feature kWebTimeLimits{"WebTimeLimits",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif // defined(OS_CHROMEOS)
#if defined(OS_CHROMEOS)
bool IsParentAccessCodeForOnlineLoginEnabled() {
return base::FeatureList::IsEnabled(kParentAccessCode) &&
......
......@@ -26,9 +26,27 @@ namespace features {
// All features in alphabetical order. The features should be documented
// alongside the definition of their values in the .cc file.
#if BUILDFLAG(ENABLE_EXTENSIONS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kAcknowledgeNtpOverrideOnDeactivate;
#endif
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kAdaptiveScreenBrightnessLogging;
#endif
#if defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kAddToHomescreenMessaging;
#endif // defined(OS_ANDROID)
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kAllowDisableMouseAcceleration;
#endif // defined(OS_CHROMEOS)
#if defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kAndroidDarkSearch;
#endif // defined(OS_ANDROID)
......@@ -43,20 +61,18 @@ COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kAppActivityReporting;
#endif
#if defined(OS_MAC)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kAppShimRemoteCocoa;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kShow10_9ObsoleteInfobar;
#endif // defined(OS_MAC)
#if !defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kAppServiceIntentHandling;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kAppServiceAdaptiveIcon;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kAppServiceIntentHandling;
#endif // !defined(OS_ANDROID)
#if defined(OS_MAC)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kAppShimRemoteCocoa;
#endif // defined(OS_MAC)
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kAsyncDns;
#if defined(OS_WIN) || defined(OS_LINUX)
......@@ -64,6 +80,10 @@ COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kBackgroundModeAllowRestart;
#endif // defined(OS_WIN) || defined(OS_LINUX)
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kBorealis;
#endif // defined(OS_CHROMEOS)
#if BUILDFLAG(TRIAL_COMPARISON_CERT_VERIFIER_SUPPORTED)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kCertDualVerificationTrialFeature;
......@@ -75,11 +95,6 @@ extern const base::Feature kChangePictureVideoMode;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kCheckOfflineCapability;
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kDMServerOAuthForChildUser;
#endif
#if defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kClearOldBrowsingData;
......@@ -94,15 +109,10 @@ extern const base::Feature kClientStorageAccessContextAuditing;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kContentSettingsRedesign;
#if defined(OS_MAC)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kImmersiveFullscreen;
#endif
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kAllowDisableMouseAcceleration;
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kBorealis;
extern const base::Feature kCrOSEnableUSMUserService;
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kCrosCompUpdates;
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kCrostini;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kCrostiniAdditionalEnterpriseReporting;
......@@ -113,29 +123,32 @@ extern const base::Feature kCrostiniAnsibleInfrastructure;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kCrostiniAnsibleSoftwareManagement;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kCrostiniForceClose;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kCrostiniArcSideload;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kCrostiniForceClose;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kCryptohomeDistributedModel;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kCryptohomeUserDataAuth;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kCryptohomeUserDataAuthKillswitch;
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kPluginVm;
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kPrintServerUi;
#endif
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kTerminalSystemAppLegacySettings;
extern const base::Feature kDMServerOAuthForChildUser;
#endif
#if !defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kUploadZippedSystemLogs;
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kWilcoDtc;
extern const base::Feature kDefaultWebAppInstallation;
#endif
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kDesktopCaptureTabSharingInfobar;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kDesktopPWAsWithoutExtensions;
extern const base::Feature kDesktopPWAsAppIconShortcutsMenu;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kDesktopPWAsCacheDuringDefaultInstall;
......@@ -144,34 +157,29 @@ COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kDesktopPWAsLocalUpdating;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kDesktopPWAsTabStrip;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kDesktopPWAsTabStripLinkCapturing;
extern const base::Feature kDesktopPWAsRunOnOsLogin;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kDesktopPWAsAppIconShortcutsMenu;
extern const base::Feature kDesktopPWAsSharedStoreService;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kDesktopPWAsSharedStoreService;
extern const base::Feature kDesktopPWAsTabStrip;
#if !defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kDefaultWebAppInstallation;
#endif
extern const base::Feature kDesktopPWAsTabStripLinkCapturing;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kDesktopPWAsRunOnOsLogin;
extern const base::Feature kDesktopPWAsWithoutExtensions;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kDnsOverHttps;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::FeatureParam<bool> kDnsOverHttpsFallbackParam;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::FeatureParam<std::string> kDnsOverHttpsTemplatesParam;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::FeatureParam<bool> kDnsOverHttpsShowUiParam;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::FeatureParam<std::string> kDnsOverHttpsTemplatesParam;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::FeatureParam<std::string>
kDnsOverHttpsDisabledProvidersParam;
......@@ -207,20 +215,16 @@ extern const base::Feature kExportTaggedPDF;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kExternalExtensionDefaultButtonControl;
#if BUILDFLAG(ENABLE_PLUGINS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kFocusMode;
// Android expects this string from Java code, so it is always needed.
// TODO(crbug.com/731802): Use #if BUILDFLAG(ENABLE_VR_BROWSING) instead.
#if BUILDFLAG(ENABLE_VR) || defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kVrBrowsing;
extern const base::Feature kFlashDeprecationWarning;
#endif
#if BUILDFLAG(ENABLE_VR)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kVrBrowsingExperimentalFeatures;
extern const base::Feature kFlocIdComputedEventLogging;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kVrBrowsingExperimentalRendering;
#endif // ENABLE_VR
extern const base::Feature kFocusMode;
#if defined(OS_WIN)
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kGdiTextPrinting;
......@@ -228,11 +232,6 @@ COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kGdiTextPrinting;
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kGeoLanguage;
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kHappinessTrackingSystem;
#endif
#if !defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kHappinessTrackingSurveysForDesktop;
......@@ -240,26 +239,39 @@ extern const base::Feature kHappinessTrackingSurveysForDesktop;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kHappinessTrackingSurveysForDesktopDemo;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kHappinessTrackingSurveysForDesktopMigration;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kHappinessTrackingSurveysForDesktopSettings;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kHappinessTrackingSurveysForDesktopSettingsPrivacy;
#endif
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kHappinessTrackingSurveysForDesktopMigration;
extern const base::Feature kHappinessTrackingSystem;
#endif
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kHeavyAdIntervention;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kHeavyAdInterventionWarning;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kHeavyAdPrivacyMitigations;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kHideCorsLegacyModeEnabledPolicySupport;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kHideCorsMitigationListPolicySupport;
#if defined(OS_WIN)
// Only has an effect in branded builds.
#if defined(OS_MAC)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kIncompatibleApplicationsWarning;
extern const base::Feature kImmersiveFullscreen;
#endif
#if defined(OS_CHROMEOS)
......@@ -267,6 +279,12 @@ COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kInSessionPasswordChange;
#endif
#if defined(OS_WIN)
// Only has an effect in branded builds.
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kIncompatibleApplicationsWarning;
#endif
#if defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kInstallableAmbientBadgeInfoBar;
......@@ -313,18 +331,9 @@ COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kMeteredShowToggle;
#endif
#if BUILDFLAG(ENABLE_EXTENSIONS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kAcknowledgeNtpOverrideOnDeactivate;
#endif
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kMixedContentSiteSetting;
#if !defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kOnConnectNative;
#endif
#if BUILDFLAG(ENABLE_NATIVE_NOTIFICATIONS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kNativeNotifications;
......@@ -341,6 +350,19 @@ extern const base::Feature kNotificationDurationLongForRequireInteraction;
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kNtlmV2Enabled;
#endif
#if !defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kOnConnectNative;
#endif
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kOobeMarketingAdditionalCountriesSupported;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kOobeMarketingDoubleOptInCountriesSupported;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kOobeMarketingScreen;
#if defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kOomIntervention;
#endif
......@@ -357,6 +379,9 @@ extern const base::Feature kParentAccessCodeForTimeChange;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kPerAppTimeLimits;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kPluginVm;
#endif
COMPONENT_EXPORT(CHROME_FEATURES)
......@@ -365,6 +390,11 @@ extern const base::Feature kPredictivePrefetchingAllowedOnAllConnectionTypes;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kPrerenderFallbackToPreconnect;
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kPrintServerUi;
#endif
#if defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kPrivacyElevatedAndroid;
......@@ -376,23 +406,24 @@ extern const base::Feature kPrivacyReorderedAndroid;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kPrivacySettingsRedesign;
#if defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kSafetyCheckAndroid;
#endif
extern const base::Feature kPushMessagingBackgroundMode;
#if defined(OS_WIN)
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kSafetyCheckChromeCleanerChild;
#endif
extern const base::Feature kQuickUnlockFingerprint;
#if BUILDFLAG(ENABLE_PLUGINS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kFlashDeprecationWarning;
#endif
extern const base::Feature kQuickUnlockPinAutosubmit;
// TODO(crbug.com/1104164) - Remove this once most
// users have their preferences backfilled.
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kPushMessagingBackgroundMode;
extern const base::Feature kQuickUnlockPinAutosubmitBackfill;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kQuickUnlockPinSignin;
#endif
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kQuietNotificationPrompts;
......@@ -402,6 +433,21 @@ COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kRemoveSupervisedUsersOnStartup;
#endif
#if defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kSafetyCheckAndroid;
#endif
#if defined(OS_WIN)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kSafetyCheckChromeCleanerChild;
#endif
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kSchedulerConfiguration;
#endif
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kSecurityKeyAttestationPrompt;
......@@ -410,6 +456,11 @@ COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kSharesheet;
#endif
#if defined(OS_MAC)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kShow10_9ObsoleteInfobar;
#endif // defined(OS_MAC)
#if defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kShowTrustedPublisherURL;
......@@ -418,8 +469,8 @@ extern const base::Feature kShowTrustedPublisherURL;
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kSitePerProcess;
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kStreamlinedUsbPrinterSetup;
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kSmartDim;
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kSmbFs;
#endif
......@@ -427,6 +478,9 @@ COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kSoundContentSetting;
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kStreamlinedUsbPrinterSetup;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kSysInternals;
#endif
......@@ -434,10 +488,21 @@ extern const base::Feature kSysInternals;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kSystemWebApps;
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kTPMFirmwareUpdate;
#endif
#if !defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kTabMetricsLogging;
#endif
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kTeamfoodFlags;
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kTerminalSystemAppLegacySettings;
#endif
#if defined(OS_WIN)
// Only has an effect in branded builds.
COMPONENT_EXPORT(CHROME_FEATURES)
......@@ -447,69 +512,33 @@ extern const base::Feature kThirdPartyModulesBlocking;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kTreatUnsafeDownloadsAsActive;
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kHeavyAdIntervention;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kHeavyAdInterventionWarning;
extern const base::Feature kUploadZippedSystemLogs;
#endif // defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kHeavyAdPrivacyMitigations;
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kUsbbouncer;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kFlocIdComputedEventLogging;
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kUsbguard;
#endif // defined(OS_CHROMEOS)
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kAdaptiveScreenBrightnessLogging;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kUserActivityEventLogging;
#endif
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kQuickUnlockPinAutosubmit;
// TODO(crbug.com/1104164) - Remove this once most
// users have their preferences backfilled.
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kQuickUnlockPinAutosubmitBackfill;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kQuickUnlockPinSignin;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kOobeMarketingScreen;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kOobeMarketingDoubleOptInCountriesSupported;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kOobeMarketingAdditionalCountriesSupported;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kQuickUnlockFingerprint;
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kCrosCompUpdates;
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kTPMFirmwareUpdate;
// Android expects this string from Java code, so it is always needed.
// TODO(crbug.com/731802): Use #if BUILDFLAG(ENABLE_VR_BROWSING) instead.
#if BUILDFLAG(ENABLE_VR) || defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kVrBrowsing;
#endif
#if BUILDFLAG(ENABLE_VR)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kCrOSEnableUSMUserService;
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kSmartDim;
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kUsbguard;
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kUsbbouncer;
extern const base::Feature kVrBrowsingExperimentalFeatures;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kSchedulerConfiguration;
#endif // defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kTeamfoodFlags;
extern const base::Feature kVrBrowsingExperimentalRendering;
#endif // ENABLE_VR
#if !defined(OS_ANDROID)
COMPONENT_EXPORT(CHROME_FEATURES)
......@@ -518,8 +547,17 @@ COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kWebRtcRemoteEventLogGzipped;
#endif
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kWebTimeLimits;
#endif // defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kWebUIDarkMode;
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kWilcoDtc;
#endif // defined(OS_CHROMEOS)
#if defined(OS_WIN)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kWin10AcceleratedDefaultBrowserFlow;
......@@ -528,11 +566,6 @@ extern const base::Feature kWin10AcceleratedDefaultBrowserFlow;
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kWriteBasicSystemProfileToPersistentHistogramsFile;
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
extern const base::Feature kWebTimeLimits;
#endif // defined(OS_CHROMEOS)
#if defined(OS_CHROMEOS)
COMPONENT_EXPORT(CHROME_FEATURES)
bool IsParentAccessCodeForOnlineLoginEnabled();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment