| // Copyright 2012 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include"chrome/common/chrome_switches.h" |
| |
| #include"build/build_config.h" |
| #include"build/buildflag.h" |
| #include"extensions/buildflags/buildflags.h" |
| #include"printing/buildflags/buildflags.h" |
| |
| namespace switches{ |
| |
| // ----------------------------------------------------------------------------- |
| // Can't find the switch you are looking for? Try looking in: |
| // ash/constants/ash_switches.cc |
| // base/base_switches.cc |
| // etc. |
| // |
| // When commenting your switch, please use the same voice as surrounding |
| // comments. Imagine "This switch..." at the beginning of the phrase, and it'll |
| // all work out. |
| // ----------------------------------------------------------------------------- |
| // Specifies Accept-Language to send to servers and expose to JavaScript via the |
| // navigator.language DOM property. language[-country] where language is the 2 |
| // letter code from ISO-639. |
| constchar kAcceptLang[]="accept-lang"; |
| |
| // Allows third-party content included on a page to prompt for a HTTP basic |
| // auth username/password pair. |
| constchar kAllowCrossOriginAuthPrompt[]="allow-cross-origin-auth-prompt"; |
| |
| // Allow non-secure origins to use the screen capture API and the desktopCapture |
| // extension API. |
| constchar kAllowHttpScreenCapture[]="allow-http-screen-capture"; |
| |
| // By default, an https page cannot run JavaScript, CSS or plugins from http |
| // URLs. This provides an override to get the old insecure behavior. |
| constchar kAllowRunningInsecureContent[]="allow-running-insecure-content"; |
| |
| // Allows Web Push notifications that do not show a notification. |
| constchar kAllowSilentPush[]="allow-silent-push"; |
| |
| // Specifies that the associated value should be launched in "application" |
| // mode. |
| constchar kApp[]="app"; |
| |
| // Specifies that the extension-app with the specified id should be launched |
| // according to its configuration. |
| constchar kAppId[]="app-id"; |
| |
| // Overrides the launch url of an app with the specified url. This is used |
| // along with kAppId to launch a given app with the url corresponding to an item |
| // in the app's shortcuts menu. |
| constchar kAppLaunchUrlForShortcutsMenuItem[]= |
| "app-launch-url-for-shortcuts-menu-item"; |
| |
| // Value of GAIA auth code for --force-app-mode. |
| constchar kAppModeAuthCode[]="app-mode-auth-code"; |
| |
| // Value of OAuth2 refresh token for --force-app-mode. |
| constchar kAppModeOAuth2Token[]="app-mode-oauth-token"; |
| |
| // This is used along with kAppId to indicate an app was launched during |
| // OS login, and which mode the app was launched in. |
| constchar kAppRunOnOsLoginMode[]="app-run-on-os-login-mode"; |
| |
| // Overrides the URL that the webstore APIs download extensions from. |
| // Note: the URL must contain one '%s' for the extension ID. |
| constchar kAppsGalleryDownloadURL[]="apps-gallery-download-url"; |
| |
| // Overrides the update url used by webstore extensions. |
| constchar kAppsGalleryUpdateURL[]="apps-gallery-update-url"; |
| |
| // Overrides the url that the browser treats as the webstore, granting it the |
| // webstore APIs and giving it some special protections. |
| constchar kAppsGalleryURL[]="apps-gallery-url"; |
| |
| // Allowlist for Negotiate Auth servers |
| constchar kAuthServerAllowlist[]="auth-server-allowlist"; |
| |
| // This flag makes Chrome auto-open DevTools window for each tab. It is |
| // intended to be used by developers and automation to not require user |
| // interaction for opening DevTools. |
| constchar kAutoOpenDevToolsForTabs[]="auto-open-devtools-for-tabs"; |
| |
| // This flag makes Chrome auto-select the provided choice when an extension asks |
| // permission to start desktop capture. Should only be used for tests. For |
| // instance, --auto-select-desktop-capture-source="Entire screen" will |
| // automatically select sharing the entire screen in English locales. The switch |
| // value only needs to be substring of the capture source name, i.e. "display" |
| // would match "Built-in display" and "External display", whichever comes first. |
| constchar kAutoSelectDesktopCaptureSource[]= |
| "auto-select-desktop-capture-source"; |
| |
| // This flag makes Chrome auto-select any screen when an extension asks |
| // permission to start desktop capture. Should only be used for tests. |
| // kAutoSelectDesktopCaptureSource (see above) can be also be used to |
| // auto-select screens. But it have the problem that you need to know the name |
| // of a screen to auto-select it. The name of screens can't be set, are |
| // different for different platforms, and are different if you have one or |
| // several screens. So it's hard to use for auto-selecting screens. |
| // This flag does not care what the screen name is, but it also gives no |
| // control. Any screen could be chosen. It is useful in tests where we don't |
| // care which screen is auto-selected. |
| constchar kAutoSelectScreenCaptureSource[]= |
| "auto-select-screen-capture-source"; |
| |
| // This flag makes Chrome auto-select a tab with the provided title when |
| // the media-picker should otherwise be displayed to the user. This switch |
| // is very similar to kAutoSelectDesktopCaptureSource, but limits selection |
| // to tabs. This solves the issue of kAutoSelectDesktopCaptureSource being |
| // liable to accidentally capturing the Chromium window instead of the tab, |
| // as both have the same title if the tab is focused. |
| constchar kAutoSelectTabCaptureSourceByTitle[]= |
| "auto-select-tab-capture-source-by-title"; |
| |
| // This flag makes Chrome auto-select a window with the provided title when |
| // the media-picker should otherwise be displayed to the user. This switch |
| // is very similar to kAutoSelectDesktopCaptureSource, but limits selection |
| // to the window. |
| constchar kAutoSelectWindowCaptureSourceByTitle[]= |
| "auto-select-window-capture-source-by-title"; |
| |
| // Automatically signs the user into Chrome when signing in to other Google |
| // services on the web. This makes it easier for automated browsers to sign in. |
| constchar kBrowserSigninAutoAccept[]="auto-accept-browser-signin-for-tests"; |
| |
| // If specified, allows syncing multiple profiles to the same account. Used for |
| // multi-client E2E tests. |
| constexprchar kBypassAccountAlreadyUsedByAnotherProfileCheck[]= |
| "bypass-account-already-used-by-another-profile-check"; |
| |
| // How often (in seconds) to check for updates. Should only be used for testing |
| // purposes. |
| constchar kCheckForUpdateIntervalSec[]="check-for-update-interval"; |
| |
| // Comma-separated list of SSL cipher suites to disable. |
| constchar kCipherSuiteBlacklist[]="cipher-suite-blacklist"; |
| |
| // Comma-separated list of BrowserThreads that cause browser process to crash if |
| // the given browser thread is not responsive. UI/IO are the BrowserThreads that |
| // are supported. |
| // |
| // For example: |
| // --crash-on-hang-threads=UI:18,IO:18 --> Crash the browser if UI or IO is |
| // not responsive for 18 seconds while the other browser thread is |
| // responsive. |
| constchar kCrashOnHangThreads[]="crash-on-hang-threads"; |
| |
| // Some platforms like ChromeOS default to empty desktop. |
| // Browser tests may need to add this switch so that at least one browser |
| // instance is created on startup. |
| // TODO(nkostylev): Investigate if this switch could be removed. |
| // (http://crbug.com/148675) |
| constchar kCreateBrowserOnStartupForTests[]= |
| "create-browser-on-startup-for-tests"; |
| |
| // Prints licensing information (same content as found in about:credits) and |
| // quits. |
| constchar kCredits[]="credits"; |
| |
| // Specifies the http:// endpoint which will be used to serve |
| // devtools://devtools/custom/<path> |
| // Or a file:// URL to specify a custom file path to load from for |
| // devtools://devtools/bundled/<path> |
| constchar kCustomDevtoolsFrontend[]="custom-devtools-frontend"; |
| |
| // Adds debugging entries such as Inspect Element to context menus of packed |
| // apps. |
| constchar kDebugPackedApps[]="debug-packed-apps"; |
| |
| // Passes command line parameters to the DevTools front-end. |
| constchar kDevToolsFlags[]="devtools-flags"; |
| |
| // Triggers a plethora of diagnostic modes. |
| constchar kDiagnostics[]="diagnostics"; |
| |
| // Sets the output format for diagnostic modes enabled by diagnostics flag. |
| constchar kDiagnosticsFormat[]="diagnostics-format"; |
| |
| // Tells the diagnostics mode to do the requested recovery step(s). |
| constchar kDiagnosticsRecovery[]="diagnostics-recovery"; |
| |
| #if BUILDFLAG(IS_CHROMEOS) |
| // Disables the auto maximize feature on ChromeOS so that a browser window |
| // always starts in normal state. This is used by tests that do not want this |
| // auto maximizing behavior. |
| constchar kDisableAutoMaximizeForTests[]="disable-auto-maximize-for-tests"; |
| #endif |
| |
| // Disable auto-reload of pages on top-level error. |
| constchar kDisableAutoReload[]="disable-auto-reload"; |
| |
| // Disable several subsystems which run network requests in the background. |
| // This is for use when doing network performance testing to avoid noise in the |
| // measurements. |
| constchar kDisableBackgroundNetworking[]="disable-background-networking"; |
| |
| // Disable default component extensions with background pages - useful for |
| // performance tests where these pages may interfere with perf results. |
| constchar kDisableComponentExtensionsWithBackgroundPages[]= |
| "disable-component-extensions-with-background-pages"; |
| |
| constchar kDisableComponentUpdate[]="disable-component-update"; |
| |
| // Disables crashpad initialization for testing. The crashpad binary will not |
| // run, and thus will not detect and symbolize crashes. |
| constchar kDisableCrashpadForTesting[]="disable-crashpad-for-testing"; |
| |
| // Disables installation of default apps on first run. This is used during |
| // automated testing. |
| constchar kDisableDefaultApps[]="disable-default-apps"; |
| |
| // Disables Domain Reliability Monitoring. |
| constchar kDisableDomainReliability[]="disable-domain-reliability"; |
| |
| // Disables lazy loading of images and frames. |
| constchar kDisableLazyLoading[]="disable-lazy-loading"; |
| |
| // Disables print preview (For testing, and for users who don't like us. :[ ) |
| constchar kDisablePrintPreview[]="disable-print-preview"; |
| |
| // Normally when the user attempts to navigate to a page that was the result of |
| // a post we prompt to make sure they want to. This switch may be used to |
| // disable that check. This switch is used during automated testing. |
| constchar kDisablePromptOnRepost[]="disable-prompt-on-repost"; |
| |
| // Disable stack profiling. Stack profiling may change performance. Disabling |
| // stack profiling is beneficial when comparing performance metrics with a |
| // build that has it disabled by default. |
| constchar kDisableStackProfiler[]="disable-stack-profiler"; |
| |
| // Some tests seem to require the application to close when the last |
| // browser window is closed. Thus, we need a switch to force this behavior |
| // for ChromeOS Aura, disable "zero window mode". |
| // TODO(pkotwicz): Investigate if this bug can be removed. |
| // (http://crbug.com/119175) |
| constchar kDisableZeroBrowsersOpenForTests[]= |
| "disable-zero-browsers-open-for-tests"; |
| |
| // Use a specific disk cache location, rather than one derived from the |
| // UserDatadir. |
| constchar kDiskCacheDir[]="disk-cache-dir"; |
| |
| // Forces the maximum disk space to be used by the disk cache, in bytes. |
| constchar kDiskCacheSize[]="disk-cache-size"; |
| |
| // Do not de-elevate the browser on launch. Used after de-elevating to prevent |
| // infinite loops. |
| constchar kDoNotDeElevateOnLaunch[]="do-not-de-elevate"; |
| |
| // Requests that a running browser process dump its collected histograms to a |
| // given file. The file is overwritten if it exists. |
| constchar kDumpBrowserHistograms[]="dump-browser-histograms"; |
| |
| // If the WebRTC logging private API is active, enables audio debug recordings. |
| constchar kEnableAudioDebugRecordingsFromExtension[]= |
| "enable-audio-debug-recordings-from-extension"; |
| |
| // Enable auto-reload of pages on top-level error. |
| constchar kEnableAutoReload[]="enable-auto-reload"; |
| |
| // Enables the multi-level undo system for bookmarks. |
| constchar kEnableBookmarkUndo[]="enable-bookmark-undo"; |
| |
| // This applies only when the process type is "service". Enables the Cloud Print |
| // Proxy component within the service process. |
| constchar kEnableCloudPrintProxy[]="enable-cloud-print-proxy"; |
| |
| #if BUILDFLAG(IS_CHROMEOS) |
| // If enabled, DevTools will allow creating pwa_handler, to enable executing |
| // CDP methods (i.e. PWA.install) on browsers connected remotely |
| constchar kEnableDevToolsPwaHandler[]="enable-devtools-pwa-handler"; |
| #endif |
| |
| // Enables Domain Reliability Monitoring. |
| constchar kEnableDomainReliability[]="enable-domain-reliability"; |
| |
| // Enables logging for extension activity. |
| constchar kEnableExtensionActivityLogging[]= |
| "enable-extension-activity-logging"; |
| |
| constchar kEnableExtensionActivityLogTesting[]= |
| "enable-extension-activity-log-testing"; |
| |
| // Enables installing/uninstalling extensions at runtime via Chrome DevTools |
| // Protocol if the protocol client is connected over --remote-debugging-pipe. |
| constchar kEnableUnsafeExtensionDebugging[]= |
| "enable-unsafe-extension-debugging"; |
| |
| // Force enabling HangoutServicesExtension. |
| constchar kEnableHangoutServicesExtensionForTesting[]= |
| "enable-hangout-services-extension-for-testing"; |
| |
| // Enables the network-related benchmarking extensions. |
| constchar kEnableNetBenchmarking[]="enable-net-benchmarking"; |
| |
| // Enables a number of potentially annoying security features (strict mixed |
| // content mode, powerful feature restrictions, etc.) |
| constchar kEnablePotentiallyAnnoyingSecurityFeatures[]= |
| "enable-potentially-annoying-security-features"; |
| |
| // Allows experimental ai extension APIs to be used in stable channel. |
| // This disables chrome sign-in if set, regardless of channel. |
| constchar kExperimentalAiStableChannel[]="experimental-ai-stable-channel"; |
| |
| // Allows overriding the list of restricted ports by passing a comma-separated |
| // list of port numbers. |
| constchar kExplicitlyAllowedPorts[]="explicitly-allowed-ports"; |
| |
| // Name of the command line flag to allow the ai data collection extension API. |
| constchar kExtensionAiDataCollection[]="enable-extension-ai-data-collection"; |
| |
| // Name of the command line flag to force content verification to be on in one |
| // of various modes. |
| constchar kExtensionContentVerification[]="extension-content-verification"; |
| |
| // Values for the kExtensionContentVerification flag. |
| // See ContentVerifierDelegate::Mode for more explanation. |
| constchar kExtensionContentVerificationBootstrap[]="bootstrap"; |
| constchar kExtensionContentVerificationEnforce[]="enforce"; |
| constchar kExtensionContentVerificationEnforceStrict[]="enforce_strict"; |
| |
| // Name of the command line flag to allow the experimental actor API. |
| constchar kExtensionExperimentalActor[]="enable-extension-actor-api"; |
| |
| // Specifies the variation of Zero State extensions toolbar recommendation to |
| // show. |
| // When a user with zero extensions installed clicks on the extensions puzzle |
| // piece in the Chrome toolbar, Chrome displays a submenu suggesting the user |
| // to explore the Chrome Web Store. |
| constchar kExtensionsToolbarZeroStateVariation[]= |
| "extensions-toolbar-zero-state-variation"; |
| |
| // This variation of the Zero State extensions toolbar recommendation presents |
| // the user with a single link to the Chrome Web Store home page. |
| constchar kExtensionsToolbarZeroStateSingleWebStoreLink[]= |
| "extensions-toolbar-zero-state-single-web-store-link"; |
| |
| // This variation of the Zero State extensions toolbar recommendation suggests |
| // extension categories the user can explore in the Chrome Web Store. |
| // (e.g. find coupons, increase productivity) |
| constchar kExtensionsToolbarZeroStateExploreExtensionsByCategory[]= |
| "extensions-toolbar-zero-state-explore-extensions-by-category"; |
| |
| // Forces application mode. This hides certain system UI elements and forces |
| // the app to be installed if it hasn't been already. |
| constchar kForceAppMode[]="force-app-mode"; |
| |
| #if BUILDFLAG(IS_CHROMEOS) |
| // Forces developer tools availability, no matter what values the enterprise |
| // policies DeveloperToolsDisabled and DeveloperToolsAvailability are set to. |
| constchar kForceDevToolsAvailable[]="force-devtools-available"; |
| #endif |
| |
| // Displays the First Run experience when the browser is started, regardless of |
| // whether or not it's actually the First Run (this overrides kNoFirstRun). |
| constchar kForceFirstRun[]="force-first-run"; |
| |
| // Displays the What's New experience when the browser is started if it has not |
| // yet been shown for the current milestone (this overrides kNoFirstRun, without |
| // showing the First Run experience). |
| constchar kForceWhatsNew[]="force-whats-new"; |
| |
| // Does not show the crash restore bubble when the browser is started during the |
| // system startup phase in ChromeOS, if the ChromeOS full restore feature is |
| // enabled, because the ChromeOS full restore notification is shown for the user |
| // to select restore or not. |
| constchar kHideCrashRestoreBubble[]="hide-crash-restore-bubble"; |
| |
| // Specifies which page will be displayed in newly-opened tabs. We need this |
| // for testing purposes so that the UI tests don't depend on what comes up for |
| // http://google.com. |
| constchar kHomePage[]="homepage"; |
| |
| #if !BUILDFLAG(IS_ANDROID) |
| // Triggers the import of passwords on startup. |
| constchar kImportPasswords[]="import-passwords"; |
| #endif |
| |
| // Causes the initial browser opened to be in incognito mode. Further browsers |
| // may or may not be in incognito mode; see `IncognitoModePrefs`. |
| constchar kIncognito[]="incognito"; |
| |
| // Specifies that the main-thread Isolate should initialize in foreground mode. |
| // If not specified, the the Isolate will start in background mode for extension |
| // processes and foreground mode otherwise. |
| constchar kInitIsolateAsForeground[]="init-isolate-as-foreground"; |
| |
| // Installs an autogenerated theme based on the given RGB value. |
| // The format is "r,g,b", where r, g, b are a numeric values from 0 to 255. |
| constchar kInstallAutogeneratedTheme[]="install-autogenerated-theme"; |
| |
| // Forces immediate platform policy refresh (not cloud policy) when Chrome is |
| // already running. The switch prevents a new browser window from opening and |
| // only triggers the policy refresh. Useful for testing and automation to avoid |
| // waiting for the next scheduled refresh interval. No-op if Chrome is not |
| // already running. |
| constchar kRefreshPlatformPolicy[]="refresh-platform-policy"; |
| |
| // Causes Chrome to initiate an installation flow for the given app. |
| constchar kInstallChromeApp[]="install-chrome-app"; |
| |
| // Causes Chrome to install the unsigned Web Bundle at the given path as a |
| // developer mode Isolated Web App. |
| constchar kInstallIsolatedWebAppFromFile[]= |
| "install-isolated-web-app-from-file"; |
| |
| // Causes Chrome to install a developer mode Isolated Web App whose contents |
| // are hosted at the given HTTP(S) URL. |
| constchar kInstallIsolatedWebAppFromUrl[]= |
| "install-isolated-web-app-from-url"; |
| |
| // Marks a renderer as an Instant process. |
| constchar kInstantProcess[]="instant-process"; |
| |
| // Used for testing - keeps browser alive after last browser window closes. |
| constchar kKeepAliveForTest[]="keep-alive-for-test"; |
| |
| // Enable kiosk mode. Please note this is not Chrome OS kiosk mode. |
| constchar kKioskMode[]="kiosk"; |
| |
| // Enable automatically pressing the print button in print preview. |
| constchar kKioskModePrinting[]="kiosk-printing"; |
| |
| // Makes Chrome default browser |
| constchar kMakeDefaultBrowser[]="make-default-browser"; |
| |
| // Allows setting a different destination ID for connection-monitoring GCM |
| // messages. Useful when running against a non-prod management server. |
| constchar kMonitoringDestinationID[]="monitoring-destination-id"; |
| |
| // Requests a native messaging connection be established between the native |
| // messaging host named by this switch and the extension with ID specified by |
| // kNativeMessagingConnectExtension. |
| constchar kNativeMessagingConnectHost[]="native-messaging-connect-host"; |
| |
| // Requests a native messaging connection be established between the extension |
| // with ID specified by this switch and the native messaging host named by the |
| // kNativeMessagingConnectHost switch. |
| constchar kNativeMessagingConnectExtension[]= |
| "native-messaging-connect-extension"; |
| |
| // If set when kNativeMessagingConnectHost and kNativeMessagingConnectExtension |
| // are specified, is reflected to the native messaging host as a command line |
| // parameter. |
| constchar kNativeMessagingConnectId[]="native-messaging-connect-id"; |
| |
| // Disables the default browser check. Useful for UI/browser tests where we |
| // want to avoid having the default browser info-bar displayed. |
| constchar kNoDefaultBrowserCheck[]="no-default-browser-check"; |
| |
| // Disables all experiments set on about:flags. Does not disable about:flags |
| // itself. Useful if an experiment makes chrome crash at startup: One can start |
| // chrome with --no-experiments, disable the problematic lab at about:flags and |
| // then restart chrome without this switch again. |
| constchar kNoExperiments[]="no-experiments"; |
| |
| // Skip First Run tasks as well as not showing additional dialogs, prompts or |
| // bubbles. Suppressing dialogs, prompts, and bubbles is important as this |
| // switch is used by automation (including performance benchmarks) where it's |
| // important only a browser window is shown. |
| // |
| // This may not actually be the first run or the What's New page. Its effect can |
| // be partially ignored by adding kForceFirstRun (for FRE), kForceWhatsNew (for |
| // What's New) and/or kIgnoreNoFirstRunForSearchEngineChoiceScreen (for the DSE |
| // choice screen). This does not drop the First Run sentinel and thus doesn't |
| // prevent first run from occurring the next time chrome is launched without |
| // this flag. It also does not update the last What's New milestone, so does not |
| // prevent What's New from occurring the next time chrome is launched without |
| // this flag. |
| constchar kNoFirstRun[]="no-first-run"; |
| |
| // Don't send hyperlink auditing pings |
| constchar kNoPings[]="no-pings"; |
| |
| // Don't use a proxy server, always make direct connections. Overrides any |
| // other proxy server flags that are passed. |
| constchar kNoProxyServer[]="no-proxy-server"; |
| |
| // Disables the service process from adding itself as an autorun process. This |
| // does not delete existing autorun registrations, it just prevents the service |
| // from registering a new one. |
| constchar kNoServiceAutorun[]="no-service-autorun"; |
| |
| // Does not automatically open a browser window on startup (used when |
| // launching Chrome for the purpose of hosting background apps). |
| constchar kNoStartupWindow[]="no-startup-window"; |
| |
| // Calculate the hash of an MHTML file as it is being saved. |
| // The browser process will write the serialized MHTML contents to a file and |
| // calculate its hash as it is streamed back from the renderer via a Mojo data |
| // pipe. |
| constchar kOnTheFlyMhtmlHashComputation[]= |
| "on-the-fly-mhtml-hash-computation"; |
| |
| // Launches URL in new browser window. |
| constchar kOpenInNewWindow[]="new-window"; |
| |
| // Activates an existing tab or app window by URL or app id before creating |
| // anything new. Syntax: comma-ordered selectors. Bare URLs are exact. |
| // Add a trailing * for prefix. app:<app-id> targets PWAs. |
| // Example: --focus=https://meet.google.com/*,app:abc123 |
| constchar kFocus[]="focus"; |
| |
| // Specifies a file path to write JSON focus result information. |
| constchar kFocusResultFile[]="focus-result-file"; |
| |
| // Packages an extension to a .crx installable file from a given directory. |
| constchar kPackExtension[]="pack-extension"; |
| |
| // Optional PEM private key to use in signing packaged .crx. |
| constchar kPackExtensionKey[]="pack-extension-key"; |
| |
| // Causes the browser process to crash very early in startup, just before |
| // crashpad (or breakpad) is initialized. |
| constchar kPreCrashpadCrashTest[]="pre-crashpad-crash-test"; |
| |
| // Used to mock the response received from the Web Permission Prediction |
| // Service. Used for testing. |
| constchar kPredictionServiceMockLikelihood[]= |
| "prediction-service-mock-likelihood"; |
| |
| // A directory where Chrome looks for json files describing default/preinstalled |
| // web apps. This overrides any default directory to load preinstalled web apps |
| // from. |
| constchar kPreinstalledWebAppsDir[]="preinstalled-web-apps-dir"; |
| |
| // Use IPv6 only for privet HTTP. |
| constchar kPrivetIPv6Only[]="privet-ipv6-only"; |
| |
| // Outputs the product version information and quit. Used as an internal api to |
| // detect the installed version of Chrome on Linux. |
| constchar kProductVersion[]="product-version"; |
| |
| // Selects directory of profile to associate with the first browser launched. |
| constchar kProfileDirectory[]="profile-directory"; |
| |
| // If provided with kProfileDirectory, does not create the profile if the |
| // profile directory doesn't exist. |
| constchar kIgnoreProfileDirectoryIfNotExists[]= |
| "ignore-profile-directory-if-not-exists"; |
| |
| // Like kProfileDirectory, but selects the profile by email address. If the |
| // email is not found in any existing profile, this switch has no effect. If |
| // both kProfileDirectory and kProfileEmail are specified, kProfileDirectory |
| // takes priority. |
| constchar kProfileEmail[]="profile-email"; |
| |
| // If provided with kProfileEmail, prompts the user to create a new profile with |
| // kProfileEmail as the email address if that email is not found in any existing |
| // profile. |
| constchar kCreateProfileEmailIfNotExists[]= |
| "create-profile-email-if-not-exists"; |
| |
| // Forces proxy auto-detection. |
| constchar kProxyAutoDetect[]="proxy-auto-detect"; |
| |
| // Specifies a list of hosts for whom we bypass proxy settings and use direct |
| // connections. Ignored if --proxy-auto-detect or --no-proxy-server are also |
| // specified. This is a comma-separated list of bypass rules. See: |
| // "net/proxy_resolution/proxy_host_matching_rules.h" for the format of these |
| // rules. |
| constchar kProxyBypassList[]="proxy-bypass-list"; |
| |
| // Uses the pac script at the given URL |
| constchar kProxyPacUrl[]="proxy-pac-url"; |
| |
| // Uses a specified proxy server, overrides system settings. |
| constchar kProxyServer[]="proxy-server"; |
| |
| // Provides a list of addresses to discover DevTools remote debugging targets. |
| // The format is <host>:<port>,...,<host>:port. |
| constchar kRemoteDebuggingTargets[]="remote-debugging-targets"; |
| |
| // Indicates that all corrupted extensions should be repaired if they are |
| // are enabled by policy. This is mainly used after a user data downgrade. |
| constchar kRepairAllValidExtensions[]="repair-all-valid-extensions"; |
| |
| // Indicates that Chrome was restarted (e.g., after a flag change). This is used |
| // to ignore the launch when recording the Launch.Mode2 metric. |
| constchar kRestart[]="restart"; |
| |
| // Indicates the last session should be restored on startup. This overrides the |
| // preferences value. Note that this does not force automatic session restore |
| // following a crash, so as to prevent a crash loop. This switch is used to |
| // implement support for OS-specific "continue where you left off" functionality |
| // on OS X and Windows. |
| constchar kRestoreLastSession[]="restore-last-session"; |
| |
| // Indicates that the URL in the command line should open in the active tab |
| // instead of a new tab. In case of multiple URLS given as arguments, the |
| // first one will replace the active tab. |
| constchar kSameTab[]="same-tab"; |
| |
| // Does not show an infobar when an extension attaches to a page using |
| // chrome.debugger page. Required to attach to extension background pages. |
| constchar kSilentDebuggerExtensionAPI[]="silent-debugger-extension-api"; |
| |
| // Causes Chrome to launch without opening any windows by default. Useful if |
| // one wishes to use Chrome as an ash server. |
| constchar kSilentLaunch[]="silent-launch"; |
| |
| // Sets the BrowsingDataLifetime policy to a very short value (shorter than |
| // normally possible) for testing purposes. |
| constchar kSimulateBrowsingDataLifetime[]="simulate-browsing-data-lifetime"; |
| |
| // Simulates a critical update being available. |
| constchar kSimulateCriticalUpdate[]="simulate-critical-update"; |
| |
| // Simulates that elevation is needed to recover upgrade channel. |
| constchar kSimulateElevatedRecovery[]="simulate-elevated-recovery"; |
| |
| // Simulates that current version is outdated. |
| constchar kSimulateOutdated[]="simulate-outdated"; |
| |
| // Simulates that current version is outdated and auto-update is off. |
| constchar kSimulateOutdatedNoAU[]="simulate-outdated-no-au"; |
| |
| // Simulates an update being available. |
| constchar kSimulateUpgrade[]="simulate-upgrade"; |
| |
| // Sets the IdleTimeout policy to a very short value (shorter than normally |
| // possible) for testing purposes. |
| constchar kSimulateIdleTimeout[]="simulate-idle-timeout"; |
| |
| // Specifies the maximum SSL/TLS version ("tls1.2" or "tls1.3"). |
| constchar kSSLVersionMax[]="ssl-version-max"; |
| |
| // Specifies the minimum SSL/TLS version ("tls1.2" or "tls1.3"). |
| constchar kSSLVersionMin[]="ssl-version-min"; |
| |
| // TLS 1.2 mode for |kSSLVersionMax| and |kSSLVersionMin| switches. |
| constchar kSSLVersionTLSv12[]="tls1.2"; |
| |
| // TLS 1.3 mode for |kSSLVersionMax| and |kSSLVersionMin| switches. |
| constchar kSSLVersionTLSv13[]="tls1.3"; |
| |
| // Starts the browser maximized, regardless of any previous settings. |
| constchar kStartMaximized[]="start-maximized"; |
| |
| // Starts the stack sampling profiler in the child process. |
| constchar kStartStackProfiler[]="start-stack-profiler"; |
| |
| // Browser test mode for the |kStartStackProfiler| switch. Limits the profile |
| // durations to be significantly less than the test timeout. On ChromeOS, |
| // forces the stack sampling profiler to run on all processes as well. |
| constchar kStartStackProfilerBrowserTest[]="browser-test"; |
| |
| // Interval, in minutes, used for storage pressure notification throttling. |
| // Useful for developers testing applications that might use non-trivial |
| // amounts of disk space. |
| constchar kStoragePressureNotificationInterval[]= |
| "storage-pressure-notification-interval"; |
| |
| // This flag sets the checkboxes for sharing system audio during window or |
| // screen capture to on by default. It is primarily intended to be used for |
| // tests. |
| constchar kSystemAudioCaptureDefaultChecked[]= |
| "system-audio-capture-default_checked"; |
| |
| // Frequency in Milliseconds for system log uploads. Should only be used for |
| // testing purposes. |
| constchar kSystemLogUploadFrequency[]="system-log-upload-frequency"; |
| |
| // This flag sets the checkboxes for sharing audio during tab capture to off |
| // by default. It is primarily intended to be used for tests. |
| constchar kTabCaptureAudioDefaultUnchecked[]= |
| "tab-capture-audio-default-unchecked"; |
| |
| // These flags make Chrome auto-accept/reject requests to capture the current |
| // tab. It should only be used for tests. |
| constchar kThisTabCaptureAutoAccept[]="auto-accept-this-tab-capture"; |
| constchar kThisTabCaptureAutoReject[]="auto-reject-this-tab-capture"; |
| |
| // This flag makes Chrome auto-reject requests capture a tab/window/screen. |
| constchar kCaptureAutoReject[]="auto-reject-capture"; |
| |
| // Custom delay for memory log. This should be used only for testing purpose. |
| constchar kTestMemoryLogDelayInMinutes[]="test-memory-log-delay-in-minutes"; |
| |
| // Passes the name of the current running automated test to Chrome. |
| constchar kTestName[]="test-name"; |
| |
| // Identifies a list of download sources as trusted, but only if proper group |
| // policy is set. |
| constchar kTrustedDownloadSources[]="trusted-download-sources"; |
| |
| // Overrides per-origin quota settings to unlimited storage for any |
| // apps/origins. This should be used only for testing purpose. |
| constchar kUnlimitedStorage[]="unlimited-storage"; |
| |
| // Disables warnings about self-XSS attacks when pasting into the DevTools |
| // console. |
| constchar kUnsafelyDisableDevToolsSelfXssWarnings[]= |
| "unsafely-disable-devtools-self-xss-warnings"; |
| |
| // Specifies the user data directory, which is where the browser will look for |
| // all of its state. |
| constchar kUserDataDir[]="user-data-dir"; |
| |
| // Uses WinHttp to resolve proxies instead of using Chromium's normal proxy |
| // resolution logic. This is only supported in Windows. |
| // |
| // TODO(crbug.com/40111093): Only use WinHttp whenever Chrome is |
| // exclusively using system proxy configs. |
| constchar kUseSystemProxyResolver[]="use-system-proxy-resolver"; |
| |
| // Examines a .crx for validity and prints the result. |
| constchar kValidateCrx[]="validate-crx"; |
| |
| // Prints version information and quits. |
| constchar kVersion[]="version"; |
| |
| // Sets the delay (in seconds) between proactive prunings of remote-bound |
| // WebRTC event logs which are pending upload. |
| // All positive values are legal. |
| // All negative values are illegal, and ignored. |
| // If set to 0, the meaning is "no proactive pruning". |
| constchar kWebRtcRemoteEventLogProactivePruningDelta[]= |
| "webrtc-event-log-proactive-pruning-delta"; |
| |
| // WebRTC event logs will only be uploaded if the conditions hold for this |
| // many milliseconds. |
| constchar kWebRtcRemoteEventLogUploadDelayMs[]= |
| "webrtc-event-log-upload-delay-ms"; |
| |
| // Normally, remote-bound WebRTC event logs are uploaded only when no |
| // peer connections are active. With this flag, the upload is never suppressed. |
| constchar kWebRtcRemoteEventLogUploadNoSuppression[]= |
| "webrtc-event-log-upload-no-suppression"; |
| |
| // Override WebRTC IP handling policy to mimic the behavior when WebRTC IP |
| // handling policy is specified in Preferences. |
| constchar kWebRtcIPHandlingPolicy[]="webrtc-ip-handling-policy"; |
| |
| // Specify the initial window user title: --window-name="My custom title" |
| constchar kWindowName[]="window-name"; |
| |
| // Specify the initial window position: --window-position=x,y |
| constchar kWindowPosition[]="window-position"; |
| |
| // Specify the initial window size: --window-size=w,h |
| constchar kWindowSize[]="window-size"; |
| |
| // Specify the initial window workspace: --window-workspace=id |
| constchar kWindowWorkspace[]="window-workspace"; |
| |
| // Uses WinHTTP to fetch and evaluate PAC scripts. Otherwise the default is to |
| // use Chromium's network stack to fetch, and V8 to evaluate. |
| constchar kWinHttpProxyResolver[]="winhttp-proxy-resolver"; |
| |
| // Specifies which category option was clicked in the Windows Jumplist that |
| // resulted in a browser startup. |
| constchar kWinJumplistAction[]="win-jumplist-action"; |
| |
| #if BUILDFLAG(IS_ANDROID) |
| // Android authentication account type for SPNEGO authentication |
| constchar kAuthAndroidNegotiateAccountType[]="auth-spnego-account-type"; |
| |
| // Disable the default browser promo. |
| constchar kDisableDefaultBrowserPromo[]="disable-default-browser-promo"; |
| |
| // Forces the device to report being owned by an enterprise. This mimics the |
| // presence of an app signaling device ownership. |
| constchar kForceDeviceOwnership[]="force-device-ownership"; |
| |
| // Forces the night mode to be enabled. |
| constchar kForceEnableNightMode[]="force-enable-night-mode"; |
| |
| // Forces the update menu badge to show. |
| constchar kForceShowUpdateMenuBadge[]="force-show-update-menu-badge"; |
| |
| // Forces the update menu type to a specific type. |
| constchar kForceUpdateMenuType[]="force-update-menu-type"; |
| |
| // Forces a custom summary to be displayed below the update menu item. |
| constchar kForceShowUpdateMenuItemCustomSummary[]="custom_summary"; |
| |
| // Sets the market URL for Chrome for use in testing. |
| constchar kMarketUrlForTesting[]="market-url-for-testing"; |
| |
| // Force enable user agent overrides to request desktop sites in Clank. |
| constchar kRequestDesktopSites[]="request-desktop-sites"; |
| #endif// BUILDFLAG(IS_ANDROID) |
| |
| #if !BUILDFLAG(IS_ANDROID) || BUILDFLAG(ENABLE_DESKTOP_ANDROID_EXTENSIONS) |
| // If enabled, overrides the target playout delay for a casting mirroring |
| // session. The value will be parsed as milliseconds. Lowering this value will |
| // result in a lower end to end latency, but could come at the cost of other |
| // quality standards such as dropped frames or FPS. |
| constchar kCastMirroringTargetPlayoutDelay[]= |
| "cast-mirroring-target-playout-delay"; |
| #endif |
| |
| #if BUILDFLAG(IS_CHROMEOS) |
| // Custom crosh command. |
| constchar kCroshCommand[]="crosh-command"; |
| |
| // Disables logging redirect for testing. |
| constchar kDisableLoggingRedirect[]="disable-logging-redirect"; |
| |
| // Disables apps on the login screen. By default, they are allowed and can be |
| // installed through policy. |
| constchar kDisableLoginScreenApps[]="disable-login-screen-apps"; |
| |
| // Use a short (1 second) timeout for merge session loader throttle testing. |
| constchar kShortMergeSessionTimeoutForTest[]= |
| "short-merge-session-timeout-for-test"; |
| #else |
| // Enables saving webpages as MHTML (Webpage, Single) by default, instead of |
| // saving as HTML with a directory of sub-resources. (Webpage, Complete). |
| // See http://crbug.com/40179885 for how to remove this switch. |
| constchar kSavePageAsMHTML[]="save-page-as-mhtml"; |
| #endif// BUILDFLAG(IS_CHROMEOS) |
| |
| #if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_CHROMEOS) |
| // These flags show the man page on Linux. They are equivalent to each |
| // other. |
| constchar kHelp[]="help"; |
| constchar kHelpShort[]="h"; |
| |
| // The same as the --class argument in X applications. Overrides the WM_CLASS |
| // window property with the given value. |
| constchar kWmClass[]="class"; |
| #endif |
| |
| #if BUILDFLAG(IS_MAC) |
| // Prevents Chrome from quitting when Chrome Apps are open. |
| constchar kAppsKeepChromeAliveInTests[]="apps-keep-chrome-alive-in-tests"; |
| |
| // Enable user metrics from within the installer. |
| constchar kEnableUserMetrics[]="enable-user-metrics"; |
| |
| // This is how the metrics client ID is passed from the browser process to its |
| // children. With Crashpad, the metrics client ID is distinct from the crash |
| // client ID. |
| constchar kMetricsClientID[]="metrics-client-id"; |
| |
| // A process type (switches::kProcessType) that relaunches the browser. See |
| // chrome/browser/mac/relauncher.h. |
| constchar kRelauncherProcess[]="relauncher"; |
| |
| // When switches::kProcessType is switches::kRelauncherProcess, if this switch |
| // is also present, the relauncher process will unmount and eject a mounted disk |
| // image and move its disk image file to the trash. The argument's value must |
| // be a BSD device name of the form "diskN" or "diskNsM". |
| constchar kRelauncherProcessDMGDevice[]="dmg-device"; |
| |
| // Indicates whether Chrome should be set as the default browser during |
| // installation. |
| constchar kMakeChromeDefault[]="make-chrome-default"; |
| |
| // A process type (switches::kProcessType) that cleans up the browser's |
| // temporary code sign clone. |
| constchar kCodeSignCloneCleanupProcess[]="code-sign-clone-cleanup"; |
| |
| // When switches::kProcessType is switches::kCodeSignCloneCleanupProcess this |
| // switch is required. The value must be the unique suffix portion of the |
| // temporary directory that contains the clone. The full path will be |
| // reconstructed by the cleanup process. |
| constchar kUniqueTempDirSuffix[]="unique-temp-dir-suffix"; |
| #endif// BUILDFLAG(IS_MAC) |
| |
| #if BUILDFLAG(IS_WIN) |
| // Force-enables the profile shortcut manager. This is needed for tests since |
| // they use a custom-user-data-dir which disables this. |
| constchar kEnableProfileShortcutManager[]="enable-profile-shortcut-manager"; |
| |
| // Indicates that this launch of the browser originated from the installer |
| // (i.e., following a successful new install or over-install). This triggers |
| // browser behaviors for this specific launch, such as a welcome announcement |
| // for accessibility software (see https://crbug.com/1072735). |
| externconstchar kFromInstaller[]="from-installer"; |
| |
| // Indicates that this launch of the browser originated from the Legacy Browser |
| // Support for Edge extension's native host. This is recorded in UMA. |
| externconstchar kFromBrowserSwitcher[]="from-browser-switcher"; |
| |
| // Makes Windows happy by allowing it to show "Enable access to this program" |
| // checkbox in Add/Remove Programs->Set Program Access and Defaults. This only |
| // shows an error box because the only way to hide Chrome is by uninstalling |
| // it. |
| constchar kHideIcons[]="hide-icons"; |
| |
| // Whether or not the browser should warn if the profile is on a network share. |
| // This flag is only relevant for Windows currently. |
| constchar kNoNetworkProfileWarning[]="no-network-profile-warning"; |
| |
| // Whether this process should PrefetchVirtualMemory on the contents of |
| // Chrome.dll. This warms up the pages in memory to speed up startup but might |
| // not be required in later renderers and/or GPU. For experiment info see |
| // crbug.com/1350257. |
| constchar kNoPreReadMainDll[]="no-pre-read-main-dll"; |
| |
| // Used in combination with kNotificationLaunchId to specify the inline reply |
| // entered in the toast in the Windows Action Center. |
| constchar kNotificationInlineReply[]="notification-inline-reply"; |
| |
| // Used for launching Chrome when a toast displayed in the Windows Action Center |
| // has been activated. Should contain the launch ID encoded by Chrome. |
| constchar kNotificationLaunchId[]="notification-launch-id"; |
| |
| // See kHideIcons. |
| constchar kShowIcons[]="show-icons"; |
| |
| // When rendezvousing with an existing process, used to indicate that the |
| // StartupInfoW of the new Chrome process had dwFlags == STARTF_TITLEISAPPID. |
| // This is used to record launch metrics. |
| constchar kSourceAppId[]="source-app-id"; |
| |
| // When rendezvousing with an existing process, used to pass the path of the |
| // shortcut that launched the new Chrome process. This is used to record launch |
| // metrics. |
| constchar kSourceShortcut[]="source-shortcut"; |
| |
| // Runs un-installation steps that were done by chrome first-run. |
| constchar kUninstall[]="uninstall"; |
| |
| // Specifies that the WebApp with the specified id should be uninstalled. |
| constchar kUninstallAppId[]="uninstall-app-id"; |
| |
| // Specifies the version of the Progressive-Web-App launcher that launched |
| // Chrome, used to determine whether to update all launchers. |
| // NOTE: changing this switch requires adding legacy handling for the previous |
| // method, as older PWA launchers still using this switch will rely on Chrome to |
| // update them to use the new method. |
| constchar kPwaLauncherVersion[]="pwa-launcher-version"; |
| #endif// BUILDFLAG(IS_WIN) |
| |
| #if BUILDFLAG(ENABLE_PRINT_PREVIEW) && !defined(OFFICIAL_BUILD) |
| // Enables support to debug printing subsystem. |
| constchar kDebugPrint[]="debug-print"; |
| #endif |
| |
| #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ |
| BUILDFLAG(IS_WIN) |
| constchar kEnableNewAppMenuIcon[]="enable-new-app-menu-icon"; |
| |
| // Causes the browser to launch directly in guest mode. |
| constchar kGuest[]="guest"; |
| |
| // Forces the NTP mobile promo to appear without any preconditions. |
| constchar kForceNtpMobilePromo[]="force-ntp-mobile-promo"; |
| #endif |
| |
| #if BUILDFLAG(ENABLE_GLIC) |
| // Overrides the glic guest URL. |
| constchar kGlicGuestURL[]="glic-guest-url"; |
| constchar kGlicAlwaysOpenFre[]="glic-always-open-fre"; |
| constchar kGlicFreURL[]="glic-fre-url"; |
| constchar kGlicShortcutsLearnMoreURL[]="glic-shortcuts-learn-more-url"; |
| // Use --glic-open-on-startup=attached or --glic-open-on-startup=detached. |
| constchar kGlicOpenOnStartup[]="glic-open-on-startup"; |
| // List of allowed origins in the glic webview, as a space-separated list. |
| constchar kGlicAllowedOrigins[]="glic-webui-allowed-origins"; |
| // Automation is intended to be passed in addition to glic-dev. It further |
| // disables functionality to make basic testing easier. |
| constchar kGlicAutomation[]="glic-automation"; |
| // Dev mode for glic only exposed via command line flag. |
| constchar kGlicDev[]="glic-dev"; |
| // If this flag is set, then the page navigating will not trigger a reload. |
| constchar kGlicSkipReloadAfterNavigation[]= |
| "glic-skip-reload-after-navigation"; |
| // Whether additional logging is enabled in the glic api host. |
| constchar kGlicHostLogging[]="glic-host-logging"; |
| // Whether to show web actuation toggle in the Chrome AI settings page. |
| constchar kGlicAlwaysShowWebActuationToggle[]= |
| "glic-always-show-web-actuation-toggle"; |
| |
| // List of URL patterns in the glic webview to redirect to an admin blocked |
| // panel, as a space-separated list. |
| constchar kGlicAdminRedirectPatterns[]="glic-admin-redirect-patterns"; |
| #endif |
| |
| #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) |
| // Writes open and installed web apps for each profile to the specified file |
| // without launching a new browser window or tab. Pass a absolute file path |
| // to specify where to output the information. Can be used together with |
| // optional |
| // --profile-base-name switch to only write information for a given profile. |
| constchar kListApps[]="list-apps"; |
| |
| // Pass the basename of the profile directory to specify which profile to get |
| // information. Only relevant when used with --list-apps switch. |
| constchar kProfileBaseName[]="profile-base-name"; |
| |
| // Domains and associated SAML attributes for which third-party profile |
| // management should be enabled. Input should be in JSON format. |
| constchar kProfileManagementAttributes[]="profile-management-attributes"; |
| #endif |
| |
| #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) |
| // Custom WebAPK server URL for the sake of testing. |
| constchar kWebApkServerUrl[]="webapk-server-url"; |
| #endif |
| |
| #if !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_ANDROID) |
| // Uses the system default printer as the initially selected destination in |
| // print preview, instead of the most recently used destination. |
| constchar kUseSystemDefaultPrinter[]="use-system-default-printer"; |
| #endif |
| |
| #if BUILDFLAG(ENABLE_DOWNGRADE_PROCESSING) |
| // Indicates that this process is the product of a relaunch following migration |
| // of User Data. |
| constchar kUserDataMigrated[]="user-data-migrated"; |
| #endif |
| |
| // ----------------------------------------------------------------------------- |
| // DO NOT ADD YOUR VERY NICE FLAGS TO THE BOTTOM OF THIS FILE. |
| // |
| // You were going to just dump your switches here, weren't you? Instead, please |
| // put them in alphabetical order above, or in order inside the appropriate |
| // ifdef at the bottom. The order should match the header. |
| // ----------------------------------------------------------------------------- |
| |
| }// namespace switches |