ports/www/ungoogled-chromium/files/patch-chrome_browser_about__flags.cc

334 lines
16 KiB
C++

--- chrome/browser/about_flags.cc.orig 2025-04-15 08:30:07 UTC
+++ chrome/browser/about_flags.cc
@@ -259,7 +259,7 @@
#include "extensions/common/extension_features.h"
#endif
-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
#include "base/allocator/buildflags.h"
#endif
@@ -345,7 +345,7 @@
#include "device/vr/public/cpp/switches.h"
#endif
-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
#include "ui/ozone/public/ozone_switches.h"
#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
@@ -355,7 +355,7 @@
#include "chrome/browser/win/mica_titlebar.h"
#endif
-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN)
+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)
#include "chrome/browser/contextual_cueing/contextual_cueing_features.h" // nogncheck
#include "chrome/browser/enterprise/profile_management/profile_management_features.h"
#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN)
@@ -366,7 +366,7 @@
#include "components/user_education/common/user_education_features.h" // nogncheck
#endif
-#if BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
#include "chrome/browser/ui/ui_features.h"
#include "ui/base/ui_base_features.h"
#endif
@@ -521,7 +521,7 @@ const FeatureEntry::FeatureVariation kDXGIWaitableSwap
{"Max 3 Frames", &kDXGIWaitableSwapChain3Frames, 1, nullptr}};
#endif
-#if BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
const FeatureEntry::Choice kOzonePlatformHintRuntimeChoices[] = {
{flag_descriptions::kOzonePlatformHintChoiceDefault, "", ""},
{flag_descriptions::kOzonePlatformHintChoiceAuto,
@@ -822,6 +822,26 @@ const FeatureEntry::FeatureVariation
std::size(kWebIdentityDigitalIdentityCredentialHighRiskDialogParam),
nullptr}};
+#if BUILDFLAG(IS_BSD)
+const FeatureEntry::FeatureParam kAudioBackendPulseAudio[] = {
+ { "audio-backend", "pulseaudio" }};
+const FeatureEntry::FeatureParam kAudioBackendSndio[] = {
+ { "audio-backend", "sndio" }};
+const FeatureEntry::FeatureParam kAudioBackendAlsa[] = {
+ { "audio-backend", "alsa" }};
+const FeatureEntry::FeatureVariation
+ kAudioBackendVariations[] = {
+ {"using PulseAudio by default if available", kAudioBackendPulseAudio,
+ std::size(kAudioBackendPulseAudio),
+ nullptr},
+ {"using sndio by default if available", kAudioBackendSndio,
+ std::size(kAudioBackendSndio),
+ nullptr},
+ {"using ALSA by default if available", kAudioBackendAlsa,
+ std::size(kAudioBackendAlsa),
+ nullptr}};
+#endif
+
const FeatureEntry::FeatureParam kClipboardMaximumAge60Seconds[] = {
{"UIClipboardMaximumAge", "60"}};
const FeatureEntry::FeatureParam kClipboardMaximumAge90Seconds[] = {
@@ -1185,7 +1205,7 @@ const FeatureEntry::FeatureVariation kPageContentAnnot
};
#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \
- BUILDFLAG(IS_WIN)
+ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)
const FeatureEntry::FeatureParam kHistoryEmbeddingsAtKeywordAcceleration[]{
{"AtKeywordAcceleration", "true"},
};
@@ -1223,7 +1243,7 @@ const FeatureEntry::FeatureVariation kRemotePageMetada
};
#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \
- BUILDFLAG(IS_WIN)
+ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)
// A limited number of combinations of the rich autocompletion params.
const FeatureEntry::FeatureParam
@@ -3583,7 +3603,7 @@ const FeatureEntry::FeatureVariation
#endif // BUILDFLAG(IS_ANDROID)
#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \
- BUILDFLAG(IS_CHROMEOS)
+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
const flags_ui::FeatureEntry::FeatureParam kPwaNavigationCapturingDefaultOn[] =
{{"link_capturing_state", "on_by_default"}};
const flags_ui::FeatureEntry::FeatureParam kPwaNavigationCapturingDefaultOff[] =
@@ -4089,7 +4109,7 @@ const FeatureEntry::FeatureVariation kSkiaGraphiteVari
std::size(kSkiaGraphite_DebugLabelsEnabled), nullptr},
};
-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
const FeatureEntry::FeatureParam kTranslationAPI_SkipLanguagePackLimit[] = {
{"TranslationAPIAcceptLanguagesCheck", "false"},
{"TranslationAPILimitLanguagePackCount", "false"}};
@@ -4155,7 +4175,7 @@ const FeatureEntry::FeatureVariation
1, nullptr},
};
-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
const FeatureEntry::FeatureParam kContextualCueingEnabledNoEngagementCap[] = {
{"BackoffTime", "0h"},
{"BackoffMultiplierBase", "0.0"},
@@ -5006,7 +5026,7 @@ const FeatureEntry kFeatureEntries[] = {
},
#endif // BUILDFLAG(IS_WIN)
-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
{
"fluent-overlay-scrollbars",
flag_descriptions::kFluentOverlayScrollbarsName,
@@ -5295,7 +5315,7 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kEnableIsolatedWebAppDevModeName,
flag_descriptions::kEnableIsolatedWebAppDevModeDescription, kOsDesktop,
FEATURE_VALUE_TYPE(features::kIsolatedWebAppDevMode)},
-#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
{"enable-iwa-key-distribution-component",
flag_descriptions::kEnableIwaKeyDistributionComponentName,
flag_descriptions::kEnableIwaKeyDistributionComponentDescription,
@@ -5554,7 +5574,7 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(features::kWebShare)},
#endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC)
-#if BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
{"pulseaudio-loopback-for-cast",
flag_descriptions::kPulseaudioLoopbackForCastName,
flag_descriptions::kPulseaudioLoopbackForCastDescription, kOsLinux,
@@ -5590,6 +5610,16 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kWaylandLinuxDrmSyncobjName,
flag_descriptions::kWaylandLinuxDrmSyncobjDescription, kOsLinux,
FEATURE_VALUE_TYPE(features::kWaylandLinuxDrmSyncobj)},
+
+#if BUILDFLAG(IS_BSD)
+ {"audio-backend",
+ flag_descriptions::kAudioBackendName,
+ flag_descriptions::kAudioBackendDescription, kOsLinux,
+ FEATURE_WITH_PARAMS_VALUE_TYPE(
+ media::kAudioBackend,
+ kAudioBackendVariations,
+ "AudioBackend")},
+#endif
#endif // BUILDFLAG(IS_LINUX)
#if BUILDFLAG(ENABLE_VR)
@@ -6470,7 +6500,7 @@ const FeatureEntry kFeatureEntries[] = {
"MlUrlScoring")},
#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \
- BUILDFLAG(IS_WIN)
+ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)
{"omnibox-domain-suggestions",
flag_descriptions::kOmniboxDomainSuggestionsName,
flag_descriptions::kOmniboxDomainSuggestionsDescription, kOsDesktop,
@@ -6683,7 +6713,7 @@ const FeatureEntry kFeatureEntries[] = {
"OrganicRepeatableQueries")},
#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \
- BUILDFLAG(IS_WIN)
+ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)
{"history-embeddings", flag_descriptions::kHistoryEmbeddingsName,
flag_descriptions::kHistoryEmbeddingsDescription, kOsDesktop,
FEATURE_WITH_PARAMS_VALUE_TYPE(history_embeddings::kHistoryEmbeddings,
@@ -7180,7 +7210,7 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(printing::features::kAddPrinterViaPrintscanmgr)},
#endif // BUILDFLAG(IS_CHROMEOS)
-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC)
+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD)
{"cups-ipp-printing-backend",
flag_descriptions::kCupsIppPrintingBackendName,
flag_descriptions::kCupsIppPrintingBackendDescription, kOsDesktop,
@@ -7445,7 +7475,7 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kSupportToolScreenshotDescription, kOsDesktop,
FEATURE_VALUE_TYPE(features::kSupportToolScreenshot)},
-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC)
+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD)
{"wasm-tts-component-updater-enabled",
flag_descriptions::kWasmTtsComponentUpdaterEnabledName,
flag_descriptions::kWasmTtsComponentUpdaterEnabledDescription, kOsDesktop,
@@ -8101,7 +8131,7 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(media::kGlobalMediaControlsUpdatedUI)},
#endif // !BUILDFLAG(IS_CHROMEOS)
-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
{"enable-network-service-sandbox",
flag_descriptions::kEnableNetworkServiceSandboxName,
flag_descriptions::kEnableNetworkServiceSandboxDescription,
@@ -8782,7 +8812,7 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(ash::features::kWallpaperGooglePhotosSharedAlbums)},
#endif // BUILDFLAG(IS_CHROMEOS)
-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
{"enable-get-all-screens-media", flag_descriptions::kGetAllScreensMediaName,
flag_descriptions::kGetAllScreensMediaDescription, kOsCrOS | kOsLinux,
FEATURE_VALUE_TYPE(blink::features::kGetAllScreensMedia)},
@@ -8807,7 +8837,7 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kGlobalVaapiLockDescription, kOsCrOS | kOsLinux,
FEATURE_VALUE_TYPE(media::kGlobalVaapiLock)},
-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC)
+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD)
{
"ui-debug-tools",
flag_descriptions::kUIDebugToolsName,
@@ -9274,7 +9304,7 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(features::kRenderPassDrawnRect)},
#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \
- BUILDFLAG(IS_CHROMEOS)
+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
{"media-session-enter-picture-in-picture",
flag_descriptions::kMediaSessionEnterPictureInPictureName,
flag_descriptions::kMediaSessionEnterPictureInPictureDescription,
@@ -9912,7 +9942,7 @@ const FeatureEntry kFeatureEntries[] = {
kOsDesktop | kOsAndroid,
FEATURE_VALUE_TYPE(features::kProcessPerSiteUpToMainFrameThreshold)},
-#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
{"camera-mic-effects", flag_descriptions::kCameraMicEffectsName,
flag_descriptions::kCameraMicEffectsDescription,
static_cast<unsigned short>(kOsMac | kOsWin | kOsLinux),
@@ -10036,7 +10066,7 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(chrome::android::kReadAloudTapToSeek)},
#endif
-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN)
+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)
{"third-party-profile-management",
flag_descriptions::kThirdPartyProfileManagementName,
flag_descriptions::kThirdPartyProfileManagementDescription,
@@ -10071,7 +10101,7 @@ const FeatureEntry kFeatureEntries[] = {
#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN)
#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \
- BUILDFLAG(IS_CHROMEOS)
+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
{"enable-user-navigation-capturing-pwa",
flag_descriptions::kPwaNavigationCapturingName,
flag_descriptions::kPwaNavigationCapturingDescription,
@@ -10832,7 +10862,7 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kCanvasHibernationDescription, kOsAll,
FEATURE_VALUE_TYPE(blink::features::kCanvas2DHibernation)},
-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
{"sync-enable-bookmarks-in-transport-mode",
flag_descriptions::kSyncEnableBookmarksInTransportModeName,
flag_descriptions::kSyncEnableBookmarksInTransportModeDescription,
@@ -10948,7 +10978,7 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(switches::kForceSupervisedSigninWithCapabilities)},
#endif // BUILDFLAG(IS_ANDROID)
-#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN)
+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)
{"supervised-profile-safe-search",
flag_descriptions::kSupervisedProfileSafeSearchName,
flag_descriptions::kSupervisedProfileSafeSearchDescription,
@@ -11195,7 +11225,7 @@ const FeatureEntry kFeatureEntries[] = {
segmentation_platform::features::kSegmentationSurveyPage)},
#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
- BUILDFLAG(IS_CHROMEOS)
+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
{"autofill-enable-buy-now-pay-later",
flag_descriptions::kAutofillEnableBuyNowPayLaterName,
flag_descriptions::kAutofillEnableBuyNowPayLaterDescription, kOsDesktop,
@@ -11315,7 +11345,7 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(
autofill::features::kAutofillEnableCardInfoRuntimeRetrieval)},
-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
{"translation-api", flag_descriptions::kTranslationAPIName,
flag_descriptions::kTranslationAPIDescription, kOsMac | kOsWin | kOsLinux,
FEATURE_WITH_PARAMS_VALUE_TYPE(blink::features::kTranslationAPI,
@@ -11352,7 +11382,7 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(
password_manager::features::kPasswordFormClientsideClassifier)},
-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
{"contextual-cueing", flag_descriptions::kContextualCueingName,
flag_descriptions::kContextualCueingDescription,
kOsLinux | kOsMac | kOsWin,
@@ -11671,7 +11701,7 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(ui::kUseNewEtc1Encoder)},
#endif // !BUILDFLAG(IS_ANDROID)
-#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
{"automatic-usb-detach", flag_descriptions::kAutomaticUsbDetachName,
flag_descriptions::kAutomaticUsbDetachDescription, kOsAndroid | kOsLinux,
FEATURE_VALUE_TYPE(features::kAutomaticUsbDetach)},
@@ -11721,7 +11751,7 @@ const FeatureEntry kFeatureEntries[] = {
#endif // !BUILDFLAG(IS_ANDROID)
#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
- BUILDFLAG(IS_CHROMEOS)
+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
{"autofill-enable-amount-extraction-desktop",
flag_descriptions::kAutofillEnableAmountExtractionDesktopName,
flag_descriptions::kAutofillEnableAmountExtractionDesktopDescription,
@@ -11741,7 +11771,7 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(blink::features::kClipboardContentsId)},
#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
- BUILDFLAG(IS_CHROMEOS)
+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
{"autofill-enable-amount-extraction-allowlist-desktop",
flag_descriptions::kAutofillEnableAmountExtractionAllowlistDesktopName,
flag_descriptions::