Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1 | // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 | // Use of this source code is governed by a BSD-style license that can be |
| 3 | // found in the LICENSE file. |
| 4 | |
| 5 | #include "chrome/common/chrome_switches.h" |
| 6 | |
| 7 | #include "base/base_switches.h" |
| 8 | #include "base/command_line.h" |
| 9 | |
| 10 | namespace switches { |
| 11 | |
| 12 | // ----------------------------------------------------------------------------- |
Torne (Richard Coles) | b2df76e | 2013-05-13 16:52:09 +0100 | [diff] [blame] | 13 | // Can't find the switch you are looking for? Try looking in: |
| 14 | // ash/ash_switches.cc |
| 15 | // base/base_switches.cc |
| 16 | // chromeos/chromeos_switches.cc |
| 17 | // etc. |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 18 | // |
| 19 | // When commenting your switch, please use the same voice as surrounding |
| 20 | // comments. Imagine "This switch..." at the beginning of the phrase, and it'll |
| 21 | // all work out. |
| 22 | // ----------------------------------------------------------------------------- |
| 23 | |
Ben Murdoch | 2385ea3 | 2013-08-06 11:01:04 +0100 | [diff] [blame] | 24 | // Allows choosing an existing managed user profile during the managed |
| 25 | // user creation flow. |
| 26 | const char kAllowCreateExistingManagedUsers[] = |
| 27 | "allow-create-existing-managed-users"; |
| 28 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 29 | // Allows third-party content included on a page to prompt for a HTTP basic |
| 30 | // auth username/password pair. |
| 31 | const char kAllowCrossOriginAuthPrompt[] = "allow-cross-origin-auth-prompt"; |
| 32 | |
| 33 | // On ChromeOS, file:// access is disabled except for certain whitelisted |
| 34 | // directories. This switch re-enables file:// for testing. |
| 35 | const char kAllowFileAccess[] = "allow-file-access"; |
| 36 | |
| 37 | // Allows non-https URL for background_page for hosted apps. |
| 38 | const char kAllowHTTPBackgroundPage[] = "allow-http-background-page"; |
| 39 | |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 40 | // Allow non-secure origins to use the screen capture API. |
| 41 | const char kAllowHttpScreenCapture[] = "allow-http-screen-capture"; |
| 42 | |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 43 | // Specifies comma-separated list of extension ids or hosts to grant |
Torne (Richard Coles) | 868fa2f | 2013-06-11 10:57:03 +0100 | [diff] [blame] | 44 | // access to CRX file system APIs. |
| 45 | const char kAllowNaClCrxFsAPI[] = "allow-nacl-crxfs-api"; |
| 46 | |
| 47 | // Specifies comma-separated list of extension ids or hosts to grant |
Torne (Richard Coles) | 7d4cd47 | 2013-06-19 11:58:07 +0100 | [diff] [blame] | 48 | // access to file handle APIs. |
| 49 | const char kAllowNaClFileHandleAPI[] = "allow-nacl-file-handle-api"; |
| 50 | |
| 51 | // Specifies comma-separated list of extension ids or hosts to grant |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 52 | // access to TCP/UDP socket APIs. |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 53 | const char kAllowNaClSocketAPI[] = "allow-nacl-socket-api"; |
| 54 | |
| 55 | // Don't block outdated plugins. |
| 56 | const char kAllowOutdatedPlugins[] = "allow-outdated-plugins"; |
| 57 | |
| 58 | // By default, an https page cannot run JavaScript, CSS or plug-ins from http |
| 59 | // URLs. This provides an override to get the old insecure behavior. |
| 60 | const char kAllowRunningInsecureContent[] = "allow-running-insecure-content"; |
| 61 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 62 | // Prevents Chrome from requiring authorization to run certain widely installed |
| 63 | // but less commonly used plug-ins. |
| 64 | const char kAlwaysAuthorizePlugins[] = "always-authorize-plugins"; |
| 65 | |
| 66 | // Specifies that the extension-app with the specified id should be launched |
| 67 | // according to its configuration. |
| 68 | const char kAppId[] = "app-id"; |
| 69 | |
| 70 | // Specifies that the associated value should be launched in "application" |
| 71 | // mode. |
| 72 | const char kApp[] = "app"; |
| 73 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 74 | // Flag to enable apps_devtool app. |
| 75 | const char kAppsDevtool[] = "apps-devtool"; |
| 76 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 77 | // Specifies the initial size for application windows launched with --app. |
| 78 | // --app-window-size=w,h |
| 79 | const char kAppWindowSize[] = "app-window-size"; |
| 80 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 81 | // Overrides the apps checkout URL, which is used to determine when to expose |
| 82 | // some private APIs. |
| 83 | const char kAppsCheckoutURL[] = "apps-checkout-url"; |
| 84 | |
| 85 | // The URL that the webstore APIs download extensions from. |
| 86 | // Note: the URL must contain one '%s' for the extension ID. |
| 87 | const char kAppsGalleryDownloadURL[] = "apps-gallery-download-url"; |
| 88 | |
| 89 | // A setting to cause extension/app installs from the webstore skip the normal |
| 90 | // confirmation dialog. A value of 'accept' means to always act as if the dialog |
| 91 | // was accepted, and 'cancel' means to always act as if the dialog was |
| 92 | // cancelled. |
| 93 | const char kAppsGalleryInstallAutoConfirmForTests[] = |
| 94 | "apps-gallery-install-auto-confirm-for-tests"; |
| 95 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 96 | // The URL to use for the gallery link in the app launcher. |
| 97 | const char kAppsGalleryURL[] = "apps-gallery-url"; |
| 98 | |
| 99 | // The update url used by gallery/webstore extensions. |
| 100 | const char kAppsGalleryUpdateURL[] = "apps-gallery-update-url"; |
| 101 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 102 | // Value of GAIA auth code for --force-app-mode. |
| 103 | const char kAppModeAuthCode[] = "app-mode-auth-code"; |
| 104 | |
| 105 | // Value of OAuth2 refresh token for --force-app-mode. |
| 106 | const char kAppModeOAuth2Token[] = "app-mode-oauth-token"; |
| 107 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 108 | // Whether to always use the new app install bubble when installing an app. |
| 109 | const char kAppsNewInstallBubble[] = "apps-new-install-bubble"; |
| 110 | |
| 111 | // Disable throbber for extension apps. |
| 112 | const char kAppsNoThrob[] = "apps-no-throb"; |
| 113 | |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 114 | // Experimental native frame support for packaged apps. |
| 115 | const char kAppsUseNativeFrame[] = "apps-use-native-frame"; |
| 116 | |
Torne (Richard Coles) | 90dce4d | 2013-05-29 14:40:03 +0100 | [diff] [blame] | 117 | // Enables overriding the path for the default authentication extension. |
| 118 | const char kAuthExtensionPath[] = "auth-ext-path"; |
| 119 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 120 | // Whitelist of servers that Negotiate will generate delegated Kerberos tickets |
| 121 | // for. |
| 122 | const char kAuthNegotiateDelegateWhitelist[] = |
| 123 | "auth-negotiate-delegate-whitelist"; |
| 124 | |
| 125 | // HTTP authentication schemes to enable. This is a comma-separated list of |
| 126 | // authentication schemes (basic, digest, ntlm, and negotiate). By default all |
| 127 | // schemes are enabled. The primary use of this command line flag is to help |
| 128 | // triage authentication-related issues reported by end-users. |
| 129 | const char kAuthSchemes[] = "auth-schemes"; |
| 130 | |
| 131 | // Whitelist of servers which NTLM and Negotiate can automatically authenticate |
| 132 | // with using the default credentials of the currently logged in user. |
| 133 | const char kAuthServerWhitelist[] = "auth-server-whitelist"; |
| 134 | |
| 135 | // A flag that is used to tell Chrome that it was launched automatically at |
| 136 | // computer startup and not by some user action. |
| 137 | const char kAutoLaunchAtStartup[] = "auto-launch-at-startup"; |
| 138 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 139 | // The value of this switch tells the app to listen for and broadcast |
| 140 | // automation-related messages on IPC channel with the given ID. |
| 141 | const char kAutomationClientChannelID[] = "automation-channel"; |
| 142 | |
| 143 | // Causes the automation provider to reinitialize its IPC channel instead of |
| 144 | // shutting down when a client disconnects. |
| 145 | const char kAutomationReinitializeOnChannelError[] = |
| 146 | "automation-reinitialize-on-channel-error"; |
| 147 | |
| 148 | // How often (in seconds) to check for updates. Should only be used for testing |
| 149 | // purposes. |
| 150 | const char kCheckForUpdateIntervalSec[] = "check-for-update-interval"; |
| 151 | |
| 152 | // Checks the cloud print connector policy, informing the service process if |
| 153 | // the policy is set to disallow the connector, then quits. |
| 154 | const char kCheckCloudPrintConnectorPolicy[] = |
| 155 | "check-cloud-print-connector-policy"; |
| 156 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 157 | // Run Chrome in Chrome Frame mode. This means that Chrome expects to be run |
| 158 | // as a dependent process of the Chrome Frame plugin. |
| 159 | const char kChromeFrame[] = "chrome-frame"; |
| 160 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 161 | // Tells chrome to load the specified version of chrome.dll on Windows. If this |
| 162 | // version cannot be loaded, Chrome will exit. |
| 163 | const char kChromeVersion[] = "chrome-version"; |
| 164 | |
| 165 | // Comma-separated list of SSL cipher suites to disable. |
| 166 | const char kCipherSuiteBlacklist[] = "cipher-suite-blacklist"; |
| 167 | |
| 168 | // Clears the token service before using it. This allows simulating the |
| 169 | // expiration of credentials during testing. |
| 170 | const char kClearTokenService[] = "clear-token-service"; |
| 171 | |
Torne (Richard Coles) | a36e592 | 2013-08-05 13:57:33 +0100 | [diff] [blame] | 172 | // The maximum amount of delay in ms between receiving a cloud policy |
| 173 | // invalidation and fetching the policy. A random delay up to this value is used |
| 174 | // to prevent Chrome clients from overwhelming the cloud policy server when a |
| 175 | // policy which affects many users is changed. |
| 176 | const char kCloudPolicyInvalidationDelay[] = "cloud-policy-invalidation-delay"; |
| 177 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 178 | // Used with kCloudPrintFile. Tells Chrome to delete the file when finished |
| 179 | // displaying the print dialog. |
| 180 | const char kCloudPrintDeleteFile[] = "cloud-print-delete-file"; |
| 181 | |
| 182 | // Tells chrome to display the cloud print dialog and upload the specified file |
| 183 | // for printing. |
| 184 | const char kCloudPrintFile[] = "cloud-print-file"; |
| 185 | |
| 186 | // Specifies the mime type to be used when uploading data from the file |
| 187 | // referenced by cloud-print-file. Defaults to "application/pdf" if |
| 188 | // unspecified. |
| 189 | const char kCloudPrintFileType[] = "cloud-print-file-type"; |
| 190 | |
| 191 | // Used with kCloudPrintFile to specify a JSON print ticket for the resulting |
| 192 | // print job. Defaults to null if unspecified. |
| 193 | const char kCloudPrintPrintTicket[] = "cloud-print-print-ticket"; |
| 194 | |
| 195 | // Used with kCloudPrintFile to specify a title for the resulting print job. |
| 196 | const char kCloudPrintJobTitle[] = "cloud-print-job-title"; |
| 197 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 198 | // Setup cloud print proxy for provided printers. This does not start |
| 199 | // service or register proxy for autostart. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 200 | const char kCloudPrintSetupProxy[] = "cloud-print-setup-proxy"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 201 | |
| 202 | // The URL of the cloud print service to use, overrides any value stored in |
| 203 | // preferences, and the default. Only used if the cloud print service has been |
| 204 | // enabled (see enable-cloud-print). |
| 205 | const char kCloudPrintServiceURL[] = "cloud-print-service"; |
| 206 | |
| 207 | // Comma-separated options to troubleshoot the component updater. Only valid |
| 208 | // for the browser process. |
Ben Murdoch | eb525c5 | 2013-07-10 11:40:50 +0100 | [diff] [blame] | 209 | const char kComponentUpdater[] = "component-updater"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 210 | |
| 211 | // Causes the browser process to inspect loaded and registered DLLs for known |
| 212 | // conflicts and warn the user. |
| 213 | const char kConflictingModulesCheck[] = "conflicting-modules-check"; |
| 214 | |
| 215 | // Toggles a new version of the content settings dialog in options. |
| 216 | const char kContentSettings2[] = "new-content-settings"; |
| 217 | |
| 218 | // The Country we should use. This is normally obtained from the operating |
| 219 | // system during first run and cached in the preferences afterwards. This is a |
| 220 | // string value, the 2 letter code from ISO 3166-1. |
| 221 | const char kCountry[] = "country"; |
| 222 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 223 | // Comma-separated list of BrowserThreads that cause browser process to crash |
| 224 | // if the given browser thread is not responsive. UI,IO,DB,FILE,CACHE are the |
| 225 | // list of BrowserThreads that are supported. |
| 226 | // |
| 227 | // For example: |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 228 | // --crash-on-hang-threads=UI:3:18,IO:3:18 --> Crash the browser if UI or IO |
| 229 | // is not responsive for 18 seconds and the number of browser threads that |
| 230 | // are responding is less than or equal to 3. |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 231 | const char kCrashOnHangThreads[] = "crash-on-hang-threads"; |
| 232 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 233 | // Some platforms like ChromeOS default to empty desktop. |
| 234 | // Browser tests may need to add this switch so that at least one browser |
| 235 | // instance is created on startup. |
| 236 | // TODO(nkostylev): Investigate if this switch could be removed. |
| 237 | // (http://crbug.com/148675) |
| 238 | const char kCreateBrowserOnStartupForTests[] = |
| 239 | "create-browser-on-startup-for-tests"; |
| 240 | |
| 241 | // Enables a frame context menu item that toggles the frame in and out of glass |
| 242 | // mode (Windows Vista and up only). |
| 243 | const char kDebugEnableFrameToggle[] = "debug-enable-frame-toggle"; |
| 244 | |
| 245 | // Adds debugging entries such as Inspect Element to context menus of packed |
| 246 | // apps. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 247 | const char kDebugPackedApps[] = "debug-packed-apps"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 248 | |
| 249 | // Enables support to debug printing subsystem. |
| 250 | const char kDebugPrint[] = "debug-print"; |
| 251 | |
| 252 | // Specifies the URL at which to fetch configuration policy from the device |
| 253 | // management backend. Specifying this switch turns on managed policy from the |
| 254 | // device management backend. |
| 255 | const char kDeviceManagementUrl[] = "device-management-url"; |
| 256 | |
| 257 | // Triggers a plethora of diagnostic modes. |
| 258 | const char kDiagnostics[] = "diagnostics"; |
| 259 | |
Ben Murdoch | 7dbb3d5 | 2013-07-17 14:55:54 +0100 | [diff] [blame] | 260 | // Sets the output format for diagnostic modes enabled by diagnostics flag. |
| 261 | const char kDiagnosticsFormat[] = "diagnostics-format"; |
| 262 | |
Ben Murdoch | 3240926 | 2013-08-07 11:04:47 +0100 | [diff] [blame] | 263 | // Tells the diagnostics mode to do the requested recovery step(s). |
| 264 | const char kDiagnosticsRecovery[] = "diagnostics-recovery"; |
| 265 | |
Ben Murdoch | ca12bfa | 2013-07-23 11:17:05 +0100 | [diff] [blame] | 266 | // If set, the app list will be disabled at startup. Note this doesn't prevent |
| 267 | // the app list from running, it just makes Chrome think the app list hasn't |
| 268 | // been enabled (as in kEnableAppList) yet. |
| 269 | const char kDisableAppList[] = "disable-app-list"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 270 | |
| 271 | // Disables the experimental asynchronous DNS client. |
| 272 | const char kDisableAsyncDns[] = "disable-async-dns"; |
| 273 | |
| 274 | // Disables CNAME lookup of the host when generating the Kerberos SPN for a |
| 275 | // Negotiate challenge. See HttpAuthHandlerNegotiate::CreateSPN for more |
| 276 | // background. |
| 277 | const char kDisableAuthNegotiateCnameLookup[] = |
| 278 | "disable-auth-negotiate-cname-lookup"; |
| 279 | |
| 280 | // Disables background mode (background apps will not keep chrome running in |
| 281 | // the background). |
| 282 | const char kDisableBackgroundMode[] = "disable-background-mode"; |
| 283 | |
| 284 | // Disable several subsystems which run network requests in the background. |
| 285 | // This is for use when doing network performance testing to avoid noise in the |
| 286 | // measurements. |
| 287 | const char kDisableBackgroundNetworking[] = "disable-background-networking"; |
| 288 | |
Ben Murdoch | 558790d | 2013-07-30 15:19:42 +0100 | [diff] [blame] | 289 | // Disables more strict popup blocking. |
| 290 | const char kDisableBetterPopupBlocking[] = "disable-better-popup-blocking"; |
| 291 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 292 | // Disables the bundled PPAPI version of Flash. |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 293 | const char kDisableBundledPpapiFlash[] = "disable-bundled-ppapi-flash"; |
| 294 | |
| 295 | // Disables the bookmark autocomplete provider (BookmarkProvider). |
| 296 | const char kDisableBookmarkAutocompleteProvider[] = |
| 297 | "disable-bookmark-autocomplete-provider"; |
| 298 | |
| 299 | // Disables the client-side phishing detection feature. Note that even if |
| 300 | // client-side phishing detection is enabled, it will only be active if the |
| 301 | // user has opted in to UMA stats and SafeBrowsing is enabled in the |
| 302 | // preferences. |
| 303 | const char kDisableClientSidePhishingDetection[] = |
| 304 | "disable-client-side-phishing-detection"; |
| 305 | |
| 306 | const char kDisableComponentUpdate[] = "disable-component-update"; |
| 307 | |
| 308 | // Disables establishing certificate revocation information by downloading a |
| 309 | // set of CRLs rather than performing on-line checks. |
| 310 | const char kDisableCRLSets[] = "disable-crl-sets"; |
| 311 | |
| 312 | // Disables the custom JumpList on Windows 7. |
| 313 | const char kDisableCustomJumpList[] = "disable-custom-jumplist"; |
| 314 | |
| 315 | // Disables installation of default apps on first run. This is used during |
| 316 | // automated testing. |
| 317 | const char kDisableDefaultApps[] = "disable-default-apps"; |
| 318 | |
| 319 | // Disables retrieval of PAC URLs from DHCP as per the WPAD standard. |
| 320 | const char kDisableDhcpWpad[] = "disable-dhcp-wpad"; |
| 321 | |
Ben Murdoch | 58e6fbe | 2013-07-26 10:20:38 +0100 | [diff] [blame] | 322 | // Force-disables DNS probes on main frame DNS errors. |
| 323 | const char kDisableDnsProbes[] = "disable-dns-probes"; |
| 324 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 325 | // Disable extensions. |
| 326 | const char kDisableExtensions[] = "disable-extensions"; |
| 327 | |
| 328 | // Disable checking for user opt-in for extensions that want to inject script |
| 329 | // into file URLs (ie, always allow it). This is used during automated testing. |
| 330 | const char kDisableExtensionsFileAccessCheck[] = |
| 331 | "disable-extensions-file-access-check"; |
| 332 | |
| 333 | // Disable the net::URLRequestThrottlerManager functionality for |
| 334 | // requests originating from extensions. |
| 335 | const char kDisableExtensionsHttpThrottling[] = |
| 336 | "disable-extensions-http-throttling"; |
| 337 | |
| 338 | // Disable mandatory enforcement of web_accessible_resources in extensions. |
| 339 | const char kDisableExtensionsResourceWhitelist[] = |
| 340 | "disable-extensions-resource-whitelist"; |
| 341 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 342 | // Disable Instant extended API. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 343 | const char kDisableInstantExtendedAPI[] = "disable-instant-extended-api"; |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 344 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 345 | // Disables improved SafeBrowsing download protection. |
| 346 | const char kDisableImprovedDownloadProtection[] = |
| 347 | "disable-improved-download-protection"; |
| 348 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 349 | // Don't resolve hostnames to IPv6 addresses. This can be used when debugging |
| 350 | // issues relating to IPv6, but shouldn't otherwise be needed. Be sure to file |
| 351 | // bugs if something isn't working properly in the presence of IPv6. This flag |
| 352 | // can be overidden by the "enable-ipv6" flag. |
| 353 | const char kDisableIPv6[] = "disable-ipv6"; |
| 354 | |
| 355 | // Disables IP Pooling within the networks stack (SPDY only). When a connection |
| 356 | // is needed for a domain which shares an IP with an existing connection, |
| 357 | // attempt to use the existing connection. |
| 358 | const char kDisableIPPooling[] = "disable-ip-pooling"; |
| 359 | |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 360 | // Disable always using the local NTP for the first NTP load of a new window. |
| 361 | const char kDisableLocalFirstLoadNTP[] = "disable-local-first-load-ntp"; |
| 362 | |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 363 | // Disable the behavior that the second click on a launcher item (the click when |
| 364 | // the item is already active) minimizes the item. |
| 365 | const char kDisableMinimizeOnSecondLauncherItemClick[] = |
| 366 | "disable-minimize-on-second-launcher-item-click"; |
| 367 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 368 | // Disables the menu on the NTP for accessing sessions from other devices. |
| 369 | const char kDisableNTPOtherSessionsMenu[] = "disable-ntp-other-sessions-menu"; |
| 370 | |
Ben Murdoch | 558790d | 2013-07-30 15:19:42 +0100 | [diff] [blame] | 371 | // Disables omnibox auto-completion when IME is active. |
| 372 | const char kDisableOmniboxAutoCompletionForIme[] = |
| 373 | "disable-omnibox-auto-completion-for-ime"; |
| 374 | |
Ben Murdoch | ca12bfa | 2013-07-23 11:17:05 +0100 | [diff] [blame] | 375 | // Disable using a public suffix based domain matching for autofill of |
| 376 | // passwords. |
| 377 | const char kDisablePasswordAutofillPublicSuffixDomainMatching[] = |
| 378 | "disable-password-autofill-public-suffix-domain-matching"; |
| 379 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 380 | // Disable pop-up blocking. |
| 381 | const char kDisablePopupBlocking[] = "disable-popup-blocking"; |
| 382 | |
| 383 | // Disable speculative TCP/IP preconnection. |
| 384 | const char kDisablePreconnect[] = "disable-preconnect"; |
| 385 | |
Torne (Richard Coles) | b2df76e | 2013-05-13 16:52:09 +0100 | [diff] [blame] | 386 | // Disable prerendering based on local browsing history. |
| 387 | const char kDisablePrerenderLocalPredictor[] = |
| 388 | "disable-prerender-local-predictor"; |
| 389 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 390 | // Normally when the user attempts to navigate to a page that was the result of |
| 391 | // a post we prompt to make sure they want to. This switch may be used to |
| 392 | // disable that check. This switch is used during automated testing. |
| 393 | const char kDisablePromptOnRepost[] = "disable-prompt-on-repost"; |
| 394 | |
Torne (Richard Coles) | 868fa2f | 2013-06-11 10:57:03 +0100 | [diff] [blame] | 395 | // Disables support for the QUIC protocol. |
| 396 | const char kDisableQuic[] = "disable-quic"; |
| 397 | |
Ben Murdoch | bbcdd45 | 2013-07-25 10:06:34 +0100 | [diff] [blame] | 398 | // Disables support for the HTTPS over QUIC protocol. This is a temporary |
| 399 | // testing flag. This only has an effect if QUIC protocol is enabled. |
| 400 | const char kDisableQuicHttps[] = "disable-quic-https"; |
| 401 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 402 | // Prevents the URLs of BackgroundContents from being remembered and |
| 403 | // re-launched when the browser restarts. |
| 404 | const char kDisableRestoreBackgroundContents[] = |
| 405 | "disable-restore-background-contents"; |
| 406 | |
| 407 | // Disables restoring session state (cookies, session storage, etc.) when |
| 408 | // restoring the browsing session. |
| 409 | const char kDisableRestoreSessionState[] = "disable-restore-session-state"; |
| 410 | |
| 411 | // Disables throttling prints initiated by scripts. |
| 412 | const char kDisableScriptedPrintThrottling[] = |
| 413 | "disable-scripted-print-throttling"; |
| 414 | |
| 415 | // Disables syncing browser data to a Google Account. |
| 416 | const char kDisableSync[] = "disable-sync"; |
| 417 | |
| 418 | // Disables syncing of app settings. |
| 419 | const char kDisableSyncAppSettings[] = "disable-sync-app-settings"; |
| 420 | |
| 421 | // Disables syncing of apps. |
| 422 | const char kDisableSyncApps[] = "disable-sync-apps"; |
| 423 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 424 | // Disables syncing of autofill. |
| 425 | const char kDisableSyncAutofill[] = "disable-sync-autofill"; |
| 426 | |
| 427 | // Disables syncing of autofill Profile. |
| 428 | const char kDisableSyncAutofillProfile[] = "disable-sync-autofill-profile"; |
| 429 | |
| 430 | // Disables syncing of bookmarks. |
| 431 | const char kDisableSyncBookmarks[] = "disable-sync-bookmarks"; |
| 432 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 433 | // Disables syncing of dictionary. |
| 434 | const char kDisableSyncDictionary[] = "disable-sync-dictionary"; |
| 435 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 436 | // Disables syncing extension settings. |
| 437 | const char kDisableSyncExtensionSettings[] = "disable-sync-extension-settings"; |
| 438 | |
| 439 | // Disables syncing of extensions. |
| 440 | const char kDisableSyncExtensions[] = "disable-sync-extensions"; |
| 441 | |
Ben Murdoch | 7dbb3d5 | 2013-07-17 14:55:54 +0100 | [diff] [blame] | 442 | // Disables syncing of favicons. |
| 443 | const char kDisableSyncFavicons[] = "disable-sync-favicons"; |
| 444 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 445 | // Disables syncing browser passwords. |
| 446 | const char kDisableSyncPasswords[] = "disable-sync-passwords"; |
| 447 | |
| 448 | // Disables syncing of preferences. |
| 449 | const char kDisableSyncPreferences[] = "disable-sync-preferences"; |
| 450 | |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 451 | // Disables syncing of priority preferences. |
| 452 | const char kDisableSyncPriorityPreferences[] = |
| 453 | "disable-sync-priority-preferences"; |
| 454 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 455 | // Disable syncing custom search engines. |
| 456 | const char kDisableSyncSearchEngines[] = "disable-sync-search-engines"; |
| 457 | |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 458 | // Disable synced notifications. |
| 459 | const char kDisableSyncSyncedNotifications[] = |
| 460 | "disable-sync-synced-notifications"; |
| 461 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 462 | // Disables syncing browser sessions. Will override kEnableSyncTabs. |
| 463 | const char kDisableSyncTabs[] = "disable-sync-tabs"; |
| 464 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 465 | // Disables syncing of themes. |
| 466 | const char kDisableSyncThemes[] = "disable-sync-themes"; |
| 467 | |
| 468 | // Disables syncing browser typed urls. |
| 469 | const char kDisableSyncTypedUrls[] = "disable-sync-typed-urls"; |
| 470 | |
| 471 | // Allows disabling of translate from the command line to assist with automated |
| 472 | // browser testing (e.g. Selenium/WebDriver). Normal browser users should |
| 473 | // disable translate with the preference. |
| 474 | const char kDisableTranslate[] = "disable-translate"; |
| 475 | |
| 476 | // Disables TLS Channel ID extension. |
| 477 | const char kDisableTLSChannelID[] = "disable-tls-channel-id"; |
| 478 | |
| 479 | // Disables the backend service for web resources. |
| 480 | const char kDisableWebResources[] = "disable-web-resources"; |
| 481 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 482 | // Some tests seem to require the application to close when the last |
| 483 | // browser window is closed. Thus, we need a switch to force this behavior |
| 484 | // for ChromeOS Aura, disable "zero window mode". |
| 485 | // TODO(pkotwicz): Investigate if this bug can be removed. |
| 486 | // (http://crbug.com/119175) |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 487 | const char kDisableZeroBrowsersOpenForTests[] = |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 488 | "disable-zero-browsers-open-for-tests"; |
| 489 | |
| 490 | // Use a specific disk cache location, rather than one derived from the |
| 491 | // UserDatadir. |
| 492 | const char kDiskCacheDir[] = "disk-cache-dir"; |
| 493 | |
| 494 | // Forces the maximum disk space to be used by the disk cache, in bytes. |
| 495 | const char kDiskCacheSize[] = "disk-cache-size"; |
| 496 | |
| 497 | const char kDnsLogDetails[] = "dns-log-details"; |
| 498 | |
| 499 | // Disables prefetching of DNS information. |
| 500 | const char kDnsPrefetchDisable[] = "dns-prefetch-disable"; |
| 501 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 502 | // Enables the <adview> tag in packaged apps. |
| 503 | const char kEnableAdview[] = "enable-adview"; |
| 504 | |
Ben Murdoch | ca12bfa | 2013-07-23 11:17:05 +0100 | [diff] [blame] | 505 | // If set, the app list will be enabled as if enabled from CWS. |
| 506 | const char kEnableAppList[] = "enable-app-list"; |
| 507 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 508 | // Enables specifying a "src" attribute on <adview> elements |
| 509 | // (for testing purposes, to skip the whitelist). |
| 510 | const char kEnableAdviewSrcAttribute[] = "enable-adview-src-attribute"; |
| 511 | |
Ben Murdoch | eb525c5 | 2013-07-10 11:40:50 +0100 | [diff] [blame] | 512 | // Enables the <window-controls> tag in platform apps. |
| 513 | const char kEnableAppWindowControls[] = "enable-app-window-controls"; |
| 514 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 515 | // Enables the experimental asynchronous DNS client. |
| 516 | const char kEnableAsyncDns[] = "enable-async-dns"; |
| 517 | |
| 518 | // Enables the inclusion of non-standard ports when generating the Kerberos SPN |
| 519 | // in response to a Negotiate challenge. See |
| 520 | // HttpAuthHandlerNegotiate::CreateSPN for more background. |
| 521 | const char kEnableAuthNegotiatePort[] = "enable-auth-negotiate-port"; |
| 522 | |
Ben Murdoch | eb525c5 | 2013-07-10 11:40:50 +0100 | [diff] [blame] | 523 | // Enable using a public suffix based domain matching for autofill of passwords. |
| 524 | const char kEnablePasswordAutofillPublicSuffixDomainMatching[] = |
| 525 | "enable-password-autofill-public-suffix-domain-matching"; |
| 526 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 527 | // Enables the pre- and auto-login features. When a user signs in to sync, the |
| 528 | // browser's cookie jar is pre-filled with GAIA cookies. When the user visits a |
| 529 | // GAIA login page, an info bar can help the user login. |
| 530 | const char kEnableAutologin[] = "enable-autologin"; |
| 531 | |
| 532 | // Enables the benchmarking extensions. |
| 533 | const char kEnableBenchmarking[] = "enable-benchmarking"; |
| 534 | |
Torne (Richard Coles) | a36e592 | 2013-08-05 13:57:33 +0100 | [diff] [blame] | 535 | // Enables pushing cloud policy to Chrome using an invalidation service. |
| 536 | const char kEnableCloudPolicyPush[] = "enable-cloud-policy-push"; |
Ben Murdoch | ca12bfa | 2013-07-23 11:17:05 +0100 | [diff] [blame] | 537 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 538 | // This applies only when the process type is "service". Enables the Cloud |
| 539 | // Print Proxy component within the service process. |
| 540 | const char kEnableCloudPrintProxy[] = "enable-cloud-print-proxy"; |
| 541 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 542 | // Enables fetching and storing cloud policy for components. This currently |
| 543 | // supports policy for extensions on Chrome OS. |
| 544 | const char kEnableComponentCloudPolicy[] = "enable-component-cloud-policy"; |
| 545 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 546 | // Enables fetching the user's contacts from Google and showing them in the |
| 547 | // Chrome OS apps list. |
| 548 | const char kEnableContacts[] = "enable-contacts"; |
| 549 | |
Ben Murdoch | 7dbb3d5 | 2013-07-17 14:55:54 +0100 | [diff] [blame] | 550 | // Enables device discovery. |
| 551 | const char kEnableDeviceDiscovery[] = "enable-device-discovery"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 552 | |
| 553 | // If true devtools experimental settings are enabled. |
| 554 | const char kEnableDevToolsExperiments[] = "enable-devtools-experiments"; |
| 555 | |
Ben Murdoch | 58e6fbe | 2013-07-26 10:20:38 +0100 | [diff] [blame] | 556 | // Force-enables DNS probes on main frame DNS errors. (The user must still |
| 557 | // opt in to "Use web service to resolve navigation errors".) |
| 558 | const char kEnableDnsProbes[] = "enable-dns-probes"; |
| 559 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 560 | // Enables extensions to be easily installed from sites other than the web |
| 561 | // store. Without this flag, they can still be installed, but must be manually |
| 562 | // dragged onto chrome://extensions/. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 563 | const char kEasyOffStoreExtensionInstall[] = |
| 564 | "easy-off-store-extension-install"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 565 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 566 | // Enables logging for extension activity. |
| 567 | const char kEnableExtensionActivityLogging[] = |
| 568 | "enable-extension-activity-logging"; |
| 569 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 570 | const char kEnableExtensionActivityLogTesting[] = |
| 571 | "enable-extension-activity-log-testing"; |
| 572 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 573 | // Enables or disables showing extensions in the action box. |
| 574 | const char kExtensionsInActionBox[] = "extensions-in-action-box"; |
| 575 | |
Ben Murdoch | eb525c5 | 2013-07-10 11:40:50 +0100 | [diff] [blame] | 576 | // Enable the fast unload controller, which speeds up tab/window close by |
| 577 | // running a tab's onunload js handler independently of the GUI - |
| 578 | // crbug.com/142458 . |
| 579 | const char kEnableFastUnload[] = "enable-fast-unload"; |
| 580 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 581 | // By default, cookies are not allowed on file://. They are needed for testing, |
| 582 | // for example page cycler and layout tests. See bug 1157243. |
| 583 | const char kEnableFileCookies[] = "enable-file-cookies"; |
| 584 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 585 | // Enables Google Now integration. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 586 | const char kEnableGoogleNowIntegration[] = "enable-google-now-integration"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 587 | |
Ben Murdoch | 558790d | 2013-07-30 15:19:42 +0100 | [diff] [blame] | 588 | // Enable HTTP/2 draft 04. This is a temporary testing flag. |
| 589 | const char kEnableHttp2Draft04[] = "enable-http2-draft-04"; |
| 590 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 591 | // Enable Instant extended API. On mobile, this merely enables query extraction, |
| 592 | // not the rest of the instant-extended functionality. |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 593 | const char kEnableInstantExtendedAPI[] = "enable-instant-extended-api"; |
| 594 | |
| 595 | // Enables IPv6 support, even if probes suggest that it may not be fully |
| 596 | // supported. Some probes may require internet connections, and this flag will |
| 597 | // allow support independent of application testing. This flag overrides |
| 598 | // "disable-ipv6" which appears elswhere in this file. |
| 599 | const char kEnableIPv6[] = "enable-ipv6"; |
| 600 | |
| 601 | /// Enables the IPC fuzzer for reliability testing |
| 602 | const char kEnableIPCFuzzing[] = "enable-ipc-fuzzing"; |
| 603 | |
| 604 | // Enables IP Pooling within the networks stack (SPDY only). When a connection |
| 605 | // is needed for a domain which shares an IP with an existing connection, |
| 606 | // attempt to use the existing connection. |
| 607 | const char kEnableIPPooling[] = "enable-ip-pooling"; |
| 608 | |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 609 | // Enable always using the local NTP for the first NTP load of a new window. |
| 610 | const char kEnableLocalFirstLoadNTP[] = "enable-local-first-load-ntp"; |
| 611 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 612 | // Enables support for user profiles that are managed by another user and can |
| 613 | // have restrictions applied. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 614 | const char kEnableManagedUsers[] = "enable-managed-users"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 615 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 616 | // Make the values returned to window.performance.memory more granular and more |
| 617 | // up to date. Without this flag, the memory information is still available, but |
| 618 | // it is bucketized and updated less frequently. |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 619 | const char kEnableMemoryInfo[] = "enable-memory-info"; |
| 620 | |
| 621 | // Enables metrics recording and reporting in the browser startup sequence, as |
| 622 | // if this was an official Chrome build where the user allowed metrics |
| 623 | // reporting. This is used for testing only. |
| 624 | const char kEnableMetricsReportingForTesting[] = |
| 625 | "enable-metrics-reporting-for-testing"; |
| 626 | |
| 627 | // Runs the Native Client inside the renderer process and enables GPU plugin |
| 628 | // (internally adds lEnableGpuPlugin to the command line). |
| 629 | const char kEnableNaCl[] = "enable-nacl"; |
| 630 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 631 | // Enables the network-related benchmarking extensions. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 632 | const char kEnableNetBenchmarking[] = "enable-net-benchmarking"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 633 | |
| 634 | // Enables NPN and SPDY. In case server supports SPDY, browser will use SPDY. |
| 635 | const char kEnableNpn[] = "enable-npn"; |
| 636 | |
| 637 | // Enables NPN with HTTP. It means NPN is enabled but SPDY won't be used. |
| 638 | // HTTP is still used for all requests. |
| 639 | const char kEnableNpnHttpOnly[] = "enable-npn-http"; |
| 640 | |
Torne (Richard Coles) | 868fa2f | 2013-06-11 10:57:03 +0100 | [diff] [blame] | 641 | // Enables omnibox auto-completion when IME is active. The auto-completion for |
| 642 | // IME is shown in the same style as the normal(non-IME) auto-completion. |
| 643 | const char kEnableOmniboxAutoCompletionForIme[] = |
| 644 | "enable-omnibox-auto-completion-for-ime"; |
| 645 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 646 | // Enables panels (always on-top docked pop-up windows). |
| 647 | const char kEnablePanels[] = "enable-panels"; |
| 648 | |
| 649 | // Enables password generation when we detect that the user is going through |
| 650 | // account creation. |
| 651 | const char kEnablePasswordGeneration[] = "enable-password-generation"; |
| 652 | |
Ben Murdoch | 558790d | 2013-07-30 15:19:42 +0100 | [diff] [blame] | 653 | // Disables the usage of Portable Native Client. |
| 654 | const char kDisablePnacl[] = "disable-pnacl"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 655 | |
Ben Murdoch | eb525c5 | 2013-07-10 11:40:50 +0100 | [diff] [blame] | 656 | // Disables the installation of Portable Native Client. |
| 657 | const char kDisablePnaclInstall[] = "disable-pnacl-install"; |
| 658 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 659 | // Enables tracking of tasks in profiler for viewing via about:profiler. |
| 660 | // To predominantly disable tracking (profiling), use the command line switch: |
| 661 | // --enable-profiling=0 |
| 662 | // Some tracking will still take place at startup, but it will be turned off |
| 663 | // during chrome_browser_main. |
| 664 | const char kEnableProfiling[] = "enable-profiling"; |
| 665 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 666 | // Enables support for the QUIC protocol. This is a temporary testing flag. |
| 667 | const char kEnableQuic[] = "enable-quic"; |
| 668 | |
Ben Murdoch | 7dbb3d5 | 2013-07-17 14:55:54 +0100 | [diff] [blame] | 669 | // Enables support for the HTTPS over QUIC protocol. This is a temporary |
Ben Murdoch | ca12bfa | 2013-07-23 11:17:05 +0100 | [diff] [blame] | 670 | // testing flag. This only has an effect if QUIC protocol is enabled. |
Ben Murdoch | 7dbb3d5 | 2013-07-17 14:55:54 +0100 | [diff] [blame] | 671 | const char kEnableQuicHttps[] = "enable-quic-https"; |
| 672 | |
Ben Murdoch | 3240926 | 2013-08-07 11:04:47 +0100 | [diff] [blame] | 673 | // Enables the Quickoffoce/Chrome document viewer rather than the editor. |
| 674 | const char kEnableQuickofficeViewing[] = "enable-quickoffice-viewing"; |
Torne (Richard Coles) | 868fa2f | 2013-06-11 10:57:03 +0100 | [diff] [blame] | 675 | |
Torne (Richard Coles) | 90dce4d | 2013-05-29 14:40:03 +0100 | [diff] [blame] | 676 | // Enables support in chrome://settings to reset settings in your profile |
| 677 | // that are often touched by malware. |
| 678 | const char kEnableResetProfileSettings[] = "enable-reset-profile-settings"; |
| 679 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 680 | // Enables content settings based on host *and* plug-in in the user |
| 681 | // preferences. |
| 682 | const char kEnableResourceContentSettings[] = |
| 683 | "enable-resource-content-settings"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 684 | |
Ben Murdoch | ca12bfa | 2013-07-23 11:17:05 +0100 | [diff] [blame] | 685 | // Enables save password prompt bubble. |
| 686 | const char kEnableSavePasswordBubble[] = "enable-save-password-bubble"; |
| 687 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 688 | // Controls the support for SDCH filtering (dictionary based expansion of |
| 689 | // content). By default SDCH filtering is enabled. To disable SDCH filtering, |
| 690 | // use "--enable-sdch=0" as command line argument. SDCH is currently only |
| 691 | // supported server-side for searches on google.com. |
| 692 | const char kEnableSdch[] = "enable-sdch"; |
| 693 | |
Ben Murdoch | a3f7b4e | 2013-07-24 10:36:34 +0100 | [diff] [blame] | 694 | // Enables support of sticky keys. |
| 695 | const char kEnableStickyKeys[] = "enable-sticky-keys"; |
| 696 | |
Torne (Richard Coles) | a36e592 | 2013-08-05 13:57:33 +0100 | [diff] [blame] | 697 | // Disables support of sticky keys. |
| 698 | const char kDisableStickyKeys[] = "disable-sticky-keys"; |
| 699 | |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 700 | // Disable SPDY/3.1. This is a temporary testing flag. |
| 701 | const char kDisableSpdy31[] = "disable-spdy31"; |
| 702 | |
Ben Murdoch | eb525c5 | 2013-07-10 11:40:50 +0100 | [diff] [blame] | 703 | // Enable SPDY/4 alpha 2. This is a temporary testing flag. |
| 704 | const char kEnableSpdy4a2[] = "enable-spdy4a2"; |
| 705 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 706 | // Enable SPDY CREDENTIAL frame support. This is a temporary testing flag. |
| 707 | const char kEnableSpdyCredentialFrames[] = "enable-spdy-credential-frames"; |
| 708 | |
| 709 | // Enables auto correction for misspelled words. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 710 | const char kEnableSpellingAutoCorrect[] = "enable-spelling-auto-correct"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 711 | |
Torne (Richard Coles) | 868fa2f | 2013-06-11 10:57:03 +0100 | [diff] [blame] | 712 | // Enables sending user feedback to spelling service. |
| 713 | const char kEnableSpellingServiceFeedback[] = |
| 714 | "enable-spelling-service-feedback"; |
| 715 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 716 | // Enables the stacked tabstrip. |
| 717 | const char kEnableStackedTabStrip[] = "enable-stacked-tab-strip"; |
| 718 | |
| 719 | // Enables experimental suggestions pane in New Tab page. |
| 720 | const char kEnableSuggestionsTabPage[] = "enable-suggestions-ntp"; |
| 721 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 722 | // Enables synced notifications. |
| 723 | const char kEnableSyncSyncedNotifications[] = |
| 724 | "enable-sync-synced-notifications"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 725 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 726 | // Enables context menu for selecting groups of tabs. |
| 727 | const char kEnableTabGroupsContextMenu[] = "enable-tab-groups-context-menu"; |
| 728 | |
Torne (Richard Coles) | 868fa2f | 2013-06-11 10:57:03 +0100 | [diff] [blame] | 729 | // Enables fanciful thumbnail processing. Used with NTP for |
| 730 | // instant-extended-api, where thumbnails are generally smaller. |
| 731 | const char kEnableThumbnailRetargeting[] = "enable-thumbnail-retargeting"; |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 732 | |
Torne (Richard Coles) | 5e3f23d | 2013-06-11 16:24:11 +0100 | [diff] [blame] | 733 | // Enables Translate settings in chrome://settings/languages. |
| 734 | const char kEnableTranslateSettings[] = "enable-translate-settings"; |
| 735 | |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 736 | // Enables unrestricted SSL 3.0 fallback. |
| 737 | // With this switch, SSL 3.0 fallback will be enabled for all sites. |
| 738 | // Without this switch, SSL 3.0 fallback will be disabled for a site |
| 739 | // pinned to the Google pin list (indicating that it is a Google site). |
Torne (Richard Coles) | b2df76e | 2013-05-13 16:52:09 +0100 | [diff] [blame] | 740 | // Note: until http://crbug/237055 is resolved, unrestricted SSL 3.0 |
| 741 | // fallback is always enabled, with or without this switch. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 742 | const char kEnableUnrestrictedSSL3Fallback[] = |
| 743 | "enable-unrestricted-ssl3-fallback"; |
| 744 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 745 | // Enables Alternate-Protocol when the port is user controlled (> 1024). |
| 746 | const char kEnableUserAlternateProtocolPorts[] = |
| 747 | "enable-user-controlled-alternate-protocol-ports"; |
| 748 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 749 | // Spawns threads to watch for excessive delays in specified message loops. |
| 750 | // User should set breakpoints on Alarm() to examine problematic thread. |
| 751 | // |
| 752 | // Usage: -enable-watchdog=[ui][io] |
| 753 | // |
| 754 | // Order of the listed sub-arguments does not matter. |
| 755 | const char kEnableWatchdog[] = "enable-watchdog"; |
| 756 | |
| 757 | // Uses WebSocket over SPDY. |
| 758 | const char kEnableWebSocketOverSpdy[] = "enable-websocket-over-spdy"; |
| 759 | |
| 760 | // Explicitly allows additional ports using a comma-separated list of port |
| 761 | // numbers. |
| 762 | const char kExplicitlyAllowedPorts[] = "explicitly-allowed-ports"; |
| 763 | |
| 764 | // The time in seconds that an extension event page can be idle before it |
| 765 | // is shut down. |
| 766 | const char kEventPageIdleTime[] = "event-page-idle-time"; |
| 767 | |
| 768 | // The time in seconds that an extension event page has between being notified |
| 769 | // of its impending unload and that unload happening. |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 770 | const char kEventPageSuspendingTime[] = "event-page-unloading-time"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 771 | |
| 772 | // Marks a renderer as extension process. |
| 773 | const char kExtensionProcess[] = "extension-process"; |
| 774 | |
| 775 | // Frequency in seconds for Extensions auto-update. |
| 776 | const char kExtensionsUpdateFrequency[] = "extensions-update-frequency"; |
| 777 | |
Ben Murdoch | eb525c5 | 2013-07-10 11:40:50 +0100 | [diff] [blame] | 778 | // Additional query params to insert in the search and instant URLs. Useful for |
| 779 | // testing. |
| 780 | const char kExtraSearchQueryParams[] = "extra-search-query-params"; |
| 781 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 782 | // Fakes the channel of the browser for purposes of Variations filtering. This |
| 783 | // is to be used for testing only. Possible values are "stable", "beta", "dev" |
| 784 | // and "canary". Note that this only applies if the browser's reported channel |
| 785 | // is UNKNOWN. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 786 | const char kFakeVariationsChannel[] = "fake-variations-channel"; |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 787 | |
Ben Murdoch | eb525c5 | 2013-07-10 11:40:50 +0100 | [diff] [blame] | 788 | // If this flag is present then this command line is being delegated to an |
| 789 | // already running chrome process via the fast path, ie: before chrome.dll is |
| 790 | // loaded. It is useful to tell the difference for tracking purposes. |
| 791 | const char kFastStart[] = "fast-start"; |
| 792 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 793 | // These two flags are added around the switches about:flags adds to the |
| 794 | // command line. This is useful to see which switches were added by about:flags |
| 795 | // on about:version. They don't have any effect. |
| 796 | const char kFlagSwitchesBegin[] = "flag-switches-begin"; |
| 797 | const char kFlagSwitchesEnd[] = "flag-switches-end"; |
| 798 | |
| 799 | // Alternative feedback server to use when submitting user feedback |
| 800 | const char kFeedbackServer[] = "feedback-server"; |
| 801 | |
| 802 | // The file descriptor limit is set to the value of this switch, subject to the |
| 803 | // OS hard limits. Useful for testing that file descriptor exhaustion is |
| 804 | // handled gracefully. |
| 805 | const char kFileDescriptorLimit[] = "file-descriptor-limit"; |
| 806 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 807 | // Forces application mode. This hides certain system UI elements and forces |
| 808 | // the app to be installed if it hasn't been already. |
| 809 | const char kForceAppMode[] = "force-app-mode"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 810 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 811 | // Displays the First Run experience when the browser is started, regardless of |
| 812 | // whether or not it's actually the First Run (this overrides kNoFirstRun). |
| 813 | const char kForceFirstRun[] = "force-first-run"; |
| 814 | |
| 815 | // Tries to load cloud policy for every signed in user, regardless of whether |
| 816 | // they are a dasher user or not. Used to allow any GAIA account to be used for |
| 817 | // testing the cloud policy framework. |
| 818 | const char kForceLoadCloudPolicy[] = "force-load-cloud-policy"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 819 | |
| 820 | // Enables using GAIA information to populate profile name and icon. |
| 821 | const char kGaiaProfileInfo[] = "gaia-profile-info"; |
| 822 | |
Ben Murdoch | eb525c5 | 2013-07-10 11:40:50 +0100 | [diff] [blame] | 823 | // Specifies an alternate URL to use for speaking to Google. Useful for testing. |
| 824 | const char kGoogleBaseURL[] = "google-base-url"; |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 825 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 826 | // Specifies an alternate URL to use for retrieving the search domain for |
| 827 | // Google. Useful for testing. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 828 | const char kGoogleSearchDomainCheckURL[] = "google-search-domain-check-url"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 829 | |
| 830 | // Specifies a custom name for the GSSAPI library to load. |
| 831 | const char kGSSAPILibraryName[] = "gssapi-library-name"; |
| 832 | |
| 833 | // These flags show the man page on Linux. They are equivalent to each |
| 834 | // other. |
| 835 | const char kHelp[] = "help"; |
| 836 | const char kHelpShort[] = "h"; |
| 837 | |
| 838 | // Makes Windows happy by allowing it to show "Enable access to this program" |
| 839 | // checkbox in Add/Remove Programs->Set Program Access and Defaults. This only |
| 840 | // shows an error box because the only way to hide Chrome is by uninstalling |
| 841 | // it. |
| 842 | const char kHideIcons[] = "hide-icons"; |
| 843 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 844 | // Disables full history sync. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 845 | const char kHistoryDisableFullHistorySync[] = "disable-full-history-sync"; |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 846 | |
| 847 | // Enables grouping websites by domain and filtering them by period. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 848 | const char kHistoryEnableGroupByDomain[] = "enable-grouped-history"; |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 849 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 850 | // Specifies which page will be displayed in newly-opened tabs. We need this |
| 851 | // for testing purposes so that the UI tests don't depend on what comes up for |
| 852 | // http://google.com. |
| 853 | const char kHomePage[] = "homepage"; |
| 854 | |
| 855 | // Comma-separated list of rules that control how hostnames are mapped. |
| 856 | // |
| 857 | // For example: |
| 858 | // "MAP * 127.0.0.1" --> Forces all hostnames to be mapped to 127.0.0.1 |
| 859 | // "MAP *.google.com proxy" --> Forces all google.com subdomains to be |
| 860 | // resolved to "proxy". |
| 861 | // "MAP test.com [::1]:77 --> Forces "test.com" to resolve to IPv6 loopback. |
| 862 | // Will also force the port of the resulting |
| 863 | // socket address to be 77. |
| 864 | // "MAP * baz, EXCLUDE www.google.com" --> Remaps everything to "baz", |
| 865 | // except for "www.google.com". |
| 866 | // |
| 867 | // These mappings apply to the endpoint host in a net::URLRequest (the TCP |
| 868 | // connect and host resolver in a direct connection, and the CONNECT in an http |
| 869 | // proxy connection, and the endpoint host in a SOCKS proxy connection). |
| 870 | const char kHostRules[] = "host-rules"; |
| 871 | |
| 872 | // The maximum number of concurrent host resolve requests (i.e. DNS) to allow |
| 873 | // (not counting backup attempts which would also consume threads). |
| 874 | // --host-resolver-retry-attempts must be set to zero for this to be exact. |
| 875 | const char kHostResolverParallelism[] = "host-resolver-parallelism"; |
| 876 | |
| 877 | // The maximum number of retry attempts to resolve the host. Set this to zero |
| 878 | // to disable host resolver retry attempts. |
| 879 | const char kHostResolverRetryAttempts[] = "host-resolver-retry-attempts"; |
| 880 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 881 | // Causes net::URLFetchers to ignore requests for SSL client certificates, |
| 882 | // causing them to attempt an unauthenticated SSL/TLS session. This is intended |
Ben Murdoch | eb525c5 | 2013-07-10 11:40:50 +0100 | [diff] [blame] | 883 | // for use when testing various service URLs (eg: kPromoServerURL, kSbURLPrefix, |
| 884 | // kSyncServiceURL, etc) |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 885 | const char kIgnoreUrlFetcherCertRequests[] = |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 886 | "ignore-urlfetcher-cert-requests"; |
| 887 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 888 | // Causes the browser to launch directly in incognito mode. |
| 889 | const char kIncognito[] = "incognito"; |
| 890 | |
| 891 | // Causes Chrome to attempt to get metadata from the webstore for the |
| 892 | // app/extension ID given, and then prompt the user to download and install it. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 893 | const char kInstallFromWebstore[] = "install-from-webstore"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 894 | |
Ben Murdoch | 58e6fbe | 2013-07-26 10:20:38 +0100 | [diff] [blame] | 895 | // Causes Chrome to load this URL instead of chrome://newtab for New Tab pages. |
| 896 | const char kInstantNewTabURL[] = "instant-new-tab-url"; |
| 897 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 898 | // Marks a renderer as an Instant process. |
| 899 | const char kInstantProcess[] = "instant-process"; |
| 900 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 901 | // Used for testing - keeps browser alive after last browser window closes. |
| 902 | const char kKeepAliveForTest[] = "keep-alive-for-test"; |
| 903 | |
| 904 | // Enable Kiosk mode. |
| 905 | const char kKioskMode[] = "kiosk"; |
| 906 | |
| 907 | // Print automatically in kiosk mode. |kKioskMode| must be set as well. |
| 908 | // See http://crbug.com/31395. |
| 909 | const char kKioskModePrinting[] = "kiosk-printing"; |
| 910 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 911 | // Causes Chrome to attempt to get metadata from the webstore for the |
| 912 | // given item, and then prompt the user to download and install it. |
| 913 | const char kLimitedInstallFromWebstore[] = "limited-install-from-webstore"; |
| 914 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 915 | // Comma-separated list of directories with component extensions to load. |
| 916 | const char kLoadComponentExtension[] = "load-component-extension"; |
| 917 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 918 | // If present, disables the loading and application of cloud policy for |
| 919 | // signed-in users. |
| 920 | const char kDisableCloudPolicyOnSignin[] = "disable-cloud-policy-on-signin"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 921 | |
| 922 | // Loads an extension from the specified directory. |
| 923 | const char kLoadExtension[] = "load-extension"; |
| 924 | |
Torne (Richard Coles) | 90dce4d | 2013-05-29 14:40:03 +0100 | [diff] [blame] | 925 | // Makes Chrome default browser |
| 926 | const char kMakeDefaultBrowser[] = "make-default-browser"; |
| 927 | |
| 928 | // Used to authenticate requests to the Sync service for managed users. Setting |
| 929 | // this switch also causes Sync to be set up for a managed user. |
| 930 | const char kManagedUserSyncToken[] = "managed-user-sync-token"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 931 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 932 | // Forces the maximum disk space to be used by the media cache, in bytes. |
| 933 | const char kMediaCacheSize[] = "media-cache-size"; |
| 934 | |
| 935 | // Enables dynamic loading of the Memory Profiler DLL, which will trace all |
| 936 | // memory allocations during the run. |
| 937 | const char kMemoryProfiling[] = "memory-profile"; |
| 938 | |
| 939 | // Enables histograming of tasks served by MessageLoop. See |
| 940 | // about:histograms/Loop for results, which show frequency of messages on each |
| 941 | // thread, including APC count, object signalling count, etc. |
| 942 | const char kMessageLoopHistogrammer[] = "message-loop-histogrammer"; |
| 943 | |
| 944 | // Enables the recording of metrics reports but disables reporting. In contrast |
| 945 | // to kDisableMetrics, this executes all the code that a normal client would |
| 946 | // use for reporting, except the report is dropped rather than sent to the |
| 947 | // server. This is useful for finding issues in the metrics code during UI and |
| 948 | // performance tests. |
| 949 | const char kMetricsRecordingOnly[] = "metrics-recording-only"; |
| 950 | |
| 951 | // Enables multiprofile Chrome. |
| 952 | const char kMultiProfiles[] = "multi-profiles"; |
| 953 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 954 | // List of native messaging hosts outside of the default location. Used for |
| 955 | // tests. The value must be comma-separate lists of key-value pairs separated |
| 956 | // equal sign. E.g. "host1=/path/to/host1/manifest.json,host2=/path/host2.json". |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 957 | const char kNativeMessagingHosts[] = "native-messaging-hosts"; |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 958 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 959 | // Sets the base logging level for the net log. Log 0 logs the most data. |
| 960 | // Intended primarily for use with --log-net-log. |
| 961 | const char kNetLogLevel[] = "net-log-level"; |
| 962 | |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 963 | // Use new profile management system, including profile sign-out and new |
| 964 | // choosers. |
| 965 | const char kNewProfileManagement[] = "new-profile-management"; |
| 966 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 967 | // Disables the default browser check. Useful for UI/browser tests where we |
| 968 | // want to avoid having the default browser info-bar displayed. |
| 969 | const char kNoDefaultBrowserCheck[] = "no-default-browser-check"; |
| 970 | |
| 971 | // By default, an https page can load images, fonts or frames from an http |
| 972 | // page. This switch overrides this to block this lesser mixed-content problem. |
| 973 | const char kNoDisplayingInsecureContent[] = "no-displaying-insecure-content"; |
| 974 | |
| 975 | // Don't record/playback events when using record & playback. |
| 976 | const char kNoEvents[] = "no-events"; |
| 977 | |
| 978 | // Disables all experiments set on about:flags. Does not disable about:flags |
| 979 | // itself. Useful if an experiment makes chrome crash at startup: One can start |
| 980 | // chrome with --no-experiments, disable the problematic lab at about:flags and |
| 981 | // then restart chrome without this switch again. |
| 982 | const char kNoExperiments[] = "no-experiments"; |
| 983 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 984 | // Skip First Run tasks, whether or not it's actually the First Run. Overridden |
| 985 | // by kForceFirstRun. |
| 986 | // Also drops the First Run beacon so that First Run will not occur in |
| 987 | // subsequent runs as well. |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 988 | const char kNoFirstRun[] = "no-first-run"; |
| 989 | |
| 990 | // Support a separate switch that enables the v8 playback extension. |
| 991 | // The extension causes javascript calls to Date.now() and Math.random() |
| 992 | // to return consistent values, such that subsequent loads of the same |
| 993 | // page will result in consistent js-generated data and XHR requests. |
| 994 | // Pages may still be able to generate inconsistent data from plugins. |
| 995 | const char kNoJsRandomness[] = "no-js-randomness"; |
| 996 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 997 | // Whether or not the browser should warn if the profile is on a network share. |
| 998 | // This flag is only relevant for Windows currently. |
| 999 | const char kNoNetworkProfileWarning[] = "no-network-profile-warning"; |
| 1000 | |
| 1001 | // Don't send hyperlink auditing pings |
| 1002 | const char kNoPings[] = "no-pings"; |
| 1003 | |
| 1004 | // Don't use a proxy server, always make direct connections. Overrides any |
| 1005 | // other proxy server flags that are passed. |
| 1006 | const char kNoProxyServer[] = "no-proxy-server"; |
| 1007 | |
| 1008 | // Disables the service process from adding itself as an autorun process. This |
| 1009 | // does not delete existing autorun registrations, it just prevents the service |
| 1010 | // from registering a new one. |
| 1011 | const char kNoServiceAutorun[] = "no-service-autorun"; |
| 1012 | |
| 1013 | // Does not automatically open a browser window on startup (used when |
| 1014 | // launching Chrome for the purpose of hosting background apps). |
| 1015 | const char kNoStartupWindow[] = "no-startup-window"; |
| 1016 | |
Torne (Richard Coles) | a36e592 | 2013-08-05 13:57:33 +0100 | [diff] [blame] | 1017 | // Disables checking whether we received an acknowledgment when registering |
| 1018 | // a supervised user. Also disables the timeout during registration that waits |
| 1019 | // for the ack. Useful when debugging against a server that does not |
| 1020 | // support notifications. |
| 1021 | const char kNoManagedUserAcknowledgmentCheck[] = |
| 1022 | "no-managed-user-acknowledgment-check"; |
| 1023 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1024 | // Specifies the maximum number of threads to use for running the Proxy |
| 1025 | // Autoconfig (PAC) script. |
| 1026 | const char kNumPacThreads[] = "num-pac-threads"; |
| 1027 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1028 | // When the option to block third-party cookies is enabled, only block |
| 1029 | // third-party cookies from being set. |
| 1030 | const char kOnlyBlockSettingThirdPartyCookies[] = |
| 1031 | "only-block-setting-third-party-cookies"; |
| 1032 | |
| 1033 | // Launches URL in new browser window. |
| 1034 | const char kOpenInNewWindow[] = "new-window"; |
| 1035 | |
| 1036 | // Simulates an organic Chrome install. |
| 1037 | const char kOrganicInstall[] = "organic"; |
| 1038 | |
Torne (Richard Coles) | 868fa2f | 2013-06-11 10:57:03 +0100 | [diff] [blame] | 1039 | // Force use of QUIC for requests to the specified origin. |
| 1040 | const char kOriginToForceQuicOn[] = "origin-to-force-quic-on"; |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1041 | |
Torne (Richard Coles) | a93a17c | 2013-05-15 11:34:50 +0100 | [diff] [blame] | 1042 | // The time that a new chrome process which is delegating to an already running |
| 1043 | // chrome process started. (See ProcessSingleton for more details.) |
| 1044 | const char kOriginalProcessStartTime[] = "original-process-start-time"; |
| 1045 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1046 | // Packages an extension to a .crx installable file from a given directory. |
| 1047 | const char kPackExtension[] = "pack-extension"; |
| 1048 | |
| 1049 | // Optional PEM private key to use in signing packaged .crx. |
| 1050 | const char kPackExtensionKey[] = "pack-extension-key"; |
| 1051 | |
| 1052 | // Specifies the path to the user data folder for the parent profile. |
| 1053 | const char kParentProfile[] = "parent-profile"; |
| 1054 | |
| 1055 | // Launches PerformanceMonitor at startup, which will gather statistics about |
| 1056 | // Chrome's CPU and memory usage, page load times, startup times, and network |
| 1057 | // usage, and will also store information about events which may be of interest, |
| 1058 | // such as extension-related occurrences and crashes. Optionally, this may be |
| 1059 | // run with an integer value representing the interval between the timed |
| 1060 | // metric gatherings, measured in seconds (if invalid or not provided, the |
| 1061 | // default interval is used). |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 1062 | const char kPerformanceMonitorGathering[] = "performance-monitor-gathering"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1063 | |
| 1064 | // Read previously recorded data from the cache. Only cached data is read. |
| 1065 | // See kRecordMode. |
| 1066 | const char kPlaybackMode[] = "playback-mode"; |
| 1067 | |
| 1068 | // Overrides the path to the location that PNaCl is installed. |
| 1069 | const char kPnaclDir[] = "pnacl-dir"; |
| 1070 | |
| 1071 | // Forces the PPAPI version of Flash (if it's being used) to run in the |
| 1072 | // renderer process rather than in a separate plugin process. |
| 1073 | const char kPpapiFlashInProcess[] = "ppapi-flash-in-process"; |
| 1074 | |
| 1075 | // Use the PPAPI (Pepper) Flash found at the given path. |
| 1076 | const char kPpapiFlashPath[] = "ppapi-flash-path"; |
| 1077 | |
| 1078 | // Report the given version for the PPAPI (Pepper) Flash. The version should be |
| 1079 | // numbers separated by '.'s (e.g., "12.3.456.78"). If not specified, it |
| 1080 | // defaults to "10.2.999.999". |
| 1081 | const char kPpapiFlashVersion[] = "ppapi-flash-version"; |
| 1082 | |
| 1083 | // Triggers prerendering of pages from suggestions in the omnibox. Only has an |
| 1084 | // effect when Instant is either disabled or restricted to search, and when |
| 1085 | // prerender is enabled. |
| 1086 | const char kPrerenderFromOmnibox[] = "prerender-from-omnibox"; |
| 1087 | // These are the values the kPrerenderFromOmnibox switch may have, as in |
| 1088 | // "--prerender-from-omnibox=auto". auto: Allow field trial selection. |
| 1089 | const char kPrerenderFromOmniboxSwitchValueAuto[] = "auto"; |
| 1090 | // disabled: No prerendering. |
| 1091 | const char kPrerenderFromOmniboxSwitchValueDisabled[] = "disabled"; |
| 1092 | // enabled: Guaranteed prerendering. |
| 1093 | const char kPrerenderFromOmniboxSwitchValueEnabled[] = "enabled"; |
| 1094 | // Controls speculative prerendering of pages, and content prefetching. Both |
| 1095 | // are dispatched from <link rel=prefetch href=...> elements. |
| 1096 | const char kPrerenderMode[] = "prerender"; |
| 1097 | // These are the values the kPrerenderMode switch may have, as in |
| 1098 | // "--prerender=auto". |
| 1099 | // auto: Allow field trial selection in both prerender and prefetch. |
| 1100 | const char kPrerenderModeSwitchValueAuto[] = "auto"; |
| 1101 | // disabled: No prerendering or prefetching. |
| 1102 | const char kPrerenderModeSwitchValueDisabled[] = "disabled"; |
| 1103 | // enabled: Both prerendering and prefetching. |
| 1104 | const char kPrerenderModeSwitchValueEnabled[] = "enabled"; |
| 1105 | // prefetch_only: No prerendering, but enables prefetching. |
| 1106 | const char kPrerenderModeSwitchValuePrefetchOnly[] = "prefetch_only"; |
| 1107 | |
| 1108 | // Enable conversion from vector to raster for any page. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 1109 | const char kPrintRaster[] = "print-raster"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1110 | |
| 1111 | // Outputs the product version information and quit. Used as an internal api to |
| 1112 | // detect the installed version of Chrome on Linux. |
| 1113 | const char kProductVersion[] = "product-version"; |
| 1114 | |
| 1115 | // Selects directory of profile to associate with the first browser launched. |
| 1116 | const char kProfileDirectory[] = "profile-directory"; |
| 1117 | |
| 1118 | // Starts the sampling based profiler for the browser process at startup. This |
| 1119 | // will only work if chrome has been built with the gyp variable profiling=1. |
| 1120 | // The output will go to the value of kProfilingFile. |
| 1121 | const char kProfilingAtStart[] = "profiling-at-start"; |
| 1122 | |
| 1123 | // Specifies a location for profiling output. This will only work if chrome has |
| 1124 | // been built with the gyp variable profiling=1. |
| 1125 | // |
| 1126 | // {pid} if present will be replaced by the pid of the process. |
| 1127 | // {count} if present will be incremented each time a profile is generated |
| 1128 | // for this process. |
| 1129 | // The default is chrome-profile-{pid}. |
| 1130 | const char kProfilingFile[] = "profiling-file"; |
| 1131 | |
| 1132 | // Specifies a path for the output of task-level profiling which can be loaded |
| 1133 | // and viewed in about:profiler. |
| 1134 | const char kProfilingOutputFile[] = "profiling-output-file"; |
| 1135 | |
| 1136 | // Controls whether profile data is periodically flushed to a file. Normally |
| 1137 | // the data gets written on exit but cases exist where chrome doesn't exit |
| 1138 | // cleanly (especially when using single-process). A time in seconds can be |
| 1139 | // specified. |
| 1140 | const char kProfilingFlush[] = "profiling-flush"; |
| 1141 | |
| 1142 | // Specifies a custom URL for fetching NTP promo data. |
| 1143 | const char kPromoServerURL[] = "promo-server-url"; |
| 1144 | |
| 1145 | // Should we prompt the user before allowing external extensions to install? |
| 1146 | // Default is yes. |
| 1147 | const char kPromptForExternalExtensions[] = "prompt-for-external-extensions"; |
| 1148 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1149 | // Forces proxy auto-detection. |
| 1150 | const char kProxyAutoDetect[] = "proxy-auto-detect"; |
| 1151 | |
| 1152 | // Specifies a list of hosts for whom we bypass proxy settings and use direct |
| 1153 | // connections. Ignored if --proxy-auto-detect or --no-proxy-server are also |
| 1154 | // specified. This is a comma-separated list of bypass rules. See: |
| 1155 | // "net/proxy/proxy_bypass_rules.h" for the format of these rules. |
| 1156 | const char kProxyBypassList[] = "proxy-bypass-list"; |
| 1157 | |
| 1158 | // Uses the pac script at the given URL |
| 1159 | const char kProxyPacUrl[] = "proxy-pac-url"; |
| 1160 | |
| 1161 | // Uses a specified proxy server, overrides system settings. This switch only |
| 1162 | // affects HTTP and HTTPS requests. |
| 1163 | const char kProxyServer[] = "proxy-server"; |
| 1164 | |
| 1165 | // Adds a "Purge memory" button to the Task Manager, which tries to dump as |
| 1166 | // much memory as possible. This is mostly useful for testing how well the |
| 1167 | // MemoryPurger functionality works. |
| 1168 | // |
| 1169 | // NOTE: This is only implemented for Views. |
| 1170 | const char kPurgeMemoryButton[] = "purge-memory-button"; |
| 1171 | |
| 1172 | // Capture resource consumption information through page cycling and output the |
| 1173 | // data to the specified file. |
| 1174 | const char kRecordStats[] = "record-stats"; |
| 1175 | |
| 1176 | // Chrome supports a playback and record mode. Record mode saves *everything* |
| 1177 | // to the cache. Playback mode reads data exclusively from the cache. This |
| 1178 | // allows us to record a session into the cache and then replay it at will. |
| 1179 | // See also kPlaybackMode. |
| 1180 | const char kRecordMode[] = "record-mode"; |
| 1181 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1182 | // Uses custom front-end URL for the remote debugging. |
| 1183 | const char kRemoteDebuggingFrontend[] = "remote-debugging-frontend"; |
| 1184 | |
Ben Murdoch | 7dbb3d5 | 2013-07-17 14:55:54 +0100 | [diff] [blame] | 1185 | // Enables remote debugging of Chrome for Android via raw USB. |
| 1186 | const char kRemoteDebuggingRawUSB[] = "remote-debugging-raw-usb"; |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1187 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1188 | // Enables print preview in the renderer. This flag is generated internally by |
| 1189 | // Chrome and does nothing when directly passed to the browser. |
| 1190 | const char kRendererPrintPreview[] = "renderer-print-preview"; |
| 1191 | |
| 1192 | // Forces a reset of the one-time-randomized FieldTrials on this client, also |
| 1193 | // known as the Chrome Variations state. |
| 1194 | const char kResetVariationState[] = "reset-variation-state"; |
| 1195 | |
| 1196 | // Indicates the last session should be restored on startup. This overrides the |
| 1197 | // preferences value and is primarily intended for testing. The value of this |
| 1198 | // switch is the number of tabs to wait until loaded before 'load completed' is |
| 1199 | // sent to the ui_test. |
| 1200 | const char kRestoreLastSession[] = "restore-last-session"; |
| 1201 | |
| 1202 | // Disable saving pages as HTML-only, disable saving pages as HTML Complete |
| 1203 | // (with a directory of sub-resources). Enable only saving pages as MHTML. |
| 1204 | // See http://crbug.com/120416 for how to remove this switch. |
| 1205 | const char kSavePageAsMHTML[] = "save-page-as-mhtml"; |
| 1206 | |
| 1207 | // URL prefix used by safebrowsing to fetch hash, download data and report |
| 1208 | // malware. |
| 1209 | const char kSbURLPrefix[] = "safebrowsing-url-prefix"; |
| 1210 | |
| 1211 | // If present, safebrowsing only performs update when |
| 1212 | // SafeBrowsingProtocolManager::ForceScheduleNextUpdate() is explicitly called. |
| 1213 | // This is used for testing only. |
| 1214 | const char kSbDisableAutoUpdate[] = "safebrowsing-disable-auto-update"; |
| 1215 | |
| 1216 | // TODO(lzheng): Remove this flag once the feature works fine |
| 1217 | // (http://crbug.com/74848). |
| 1218 | // |
| 1219 | // Disables safebrowsing feature that checks download url and downloads |
| 1220 | // content's hash to make sure the content are not malicious. |
| 1221 | const char kSbDisableDownloadProtection[] = |
| 1222 | "safebrowsing-disable-download-protection"; |
| 1223 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1224 | // Disables safebrowsing feature that checks for blacklisted extensions. |
| 1225 | const char kSbDisableExtensionBlacklist[] = |
| 1226 | "safebrowsing-disable-extension-blacklist"; |
| 1227 | |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 1228 | // Disables safebrowsing feature that provides a side-effect free whitelist. |
| 1229 | const char kSbDisableSideEffectFreeWhitelist[] = |
| 1230 | "safebrowsing-disable-side-effect-free-whitelist"; |
| 1231 | |
Torne (Richard Coles) | 7d4cd47 | 2013-06-19 11:58:07 +0100 | [diff] [blame] | 1232 | // URL to send safebrowsing download feedback reports to. |
| 1233 | const char kSbDownloadFeedbackURL[] = "safebrowsing-download-feedback-url"; |
| 1234 | |
| 1235 | // Enable safebrowsing download feedback. |
| 1236 | const char kSbEnableDownloadFeedback[] = |
| 1237 | "safebrowsing-enable-download-feedback"; |
| 1238 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1239 | // Enables or disables extension scripts badges in the location bar. |
| 1240 | const char kScriptBadges[] = "script-badges"; |
| 1241 | |
| 1242 | // Enable or diable the "script bubble" icon in the URL bar that tells you how |
| 1243 | // many extensions are running scripts on a page. |
| 1244 | const char kScriptBubble[] = "script-bubble"; |
| 1245 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1246 | // Causes the process to run as a service process. |
| 1247 | const char kServiceProcess[] = "service"; |
| 1248 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1249 | // Sets a token in the token service, for testing. |
| 1250 | const char kSetToken[] = "set-token"; |
| 1251 | |
| 1252 | // If true the app list will be shown. |
| 1253 | const char kShowAppList[] = "show-app-list"; |
| 1254 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1255 | // See kHideIcons. |
| 1256 | const char kShowIcons[] = "show-icons"; |
| 1257 | |
Ben Murdoch | 2385ea3 | 2013-08-06 11:01:04 +0100 | [diff] [blame] | 1258 | // If true the alignment of the shelf can be changed. |
| 1259 | const char kShowShelfAlignmentMenu[] = "show-launcher-alignment-menu"; |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 1260 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1261 | // Marks a renderer as the signin process. |
| 1262 | const char kSigninProcess[] = "signin-process"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1263 | |
Ben Murdoch | 7dbb3d5 | 2013-07-17 14:55:54 +0100 | [diff] [blame] | 1264 | // Does not show an infobar when an extension attaches to a page using |
| 1265 | // chrome.debugger page. Required to attach to extension background pages. |
| 1266 | const char kSilentDebuggerExtensionAPI[] = "silent-debugger-extension-api"; |
| 1267 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1268 | // Changes the DCHECKS to dump memory and continue instead of displaying error |
| 1269 | // dialog. This is valid only in Release mode when --enable-dcheck is |
| 1270 | // specified. |
| 1271 | const char kSilentDumpOnDCHECK[] = "silent-dump-on-dcheck"; |
| 1272 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1273 | // Causes Chrome to launch without opening any windows by default. Useful if |
| 1274 | // one wishes to use Chrome as an ash server. |
| 1275 | const char kSilentLaunch[] = "silent-launch"; |
| 1276 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1277 | // Simulates an update being available. |
| 1278 | const char kSimulateUpgrade[] = "simulate-upgrade"; |
| 1279 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1280 | // Simulates a critical update being available. |
| 1281 | const char kSimulateCriticalUpdate[] = "simulate-critical-update"; |
| 1282 | |
| 1283 | // Simulates that current version is outdated. |
| 1284 | const char kSimulateOutdated[] = "simulate-outdated"; |
| 1285 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1286 | // Replaces the buffered data source for <audio> and <video> with a simplified |
| 1287 | // resource loader that downloads the entire resource into memory. |
| 1288 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1289 | // Origin for which SpdyProxy authentication is supported. |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1290 | const char kSpdyProxyAuthOrigin[] = "spdy-proxy-auth-origin"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1291 | |
| 1292 | // Speculative resource prefetching. |
| 1293 | const char kSpeculativeResourcePrefetching[] = |
| 1294 | "speculative-resource-prefetching"; |
| 1295 | |
| 1296 | // Speculative resource prefetching is disabled. |
| 1297 | const char kSpeculativeResourcePrefetchingDisabled[] = "disabled"; |
| 1298 | |
| 1299 | // Speculative resource prefetching will only learn about resources that need to |
| 1300 | // be prefetched but will not prefetch them. |
| 1301 | const char kSpeculativeResourcePrefetchingLearning[] = "learning"; |
| 1302 | |
| 1303 | // Speculative resource prefetching is enabled. |
| 1304 | const char kSpeculativeResourcePrefetchingEnabled[] = "enabled"; |
| 1305 | |
Torne (Richard Coles) | a93a17c | 2013-05-15 11:34:50 +0100 | [diff] [blame] | 1306 | // Specifies the URL where spelling service feedback data will be sent instead |
| 1307 | // of the default URL. This switch is for temporary testing only. |
| 1308 | // TODO(rouslan): Remove this flag when feedback testing is complete. Revisit by |
| 1309 | // August 2013. |
| 1310 | const char kSpellingServiceFeedbackUrl[] = "spelling-service-feedback-url"; |
| 1311 | |
Torne (Richard Coles) | 868fa2f | 2013-06-11 10:57:03 +0100 | [diff] [blame] | 1312 | // Specifies the number of seconds between sending batches of feedback to |
| 1313 | // spelling service. The default is 30 minutes. The mininum is 5 seconds. This |
| 1314 | // switch is for temporary testing only. |
| 1315 | // TODO(rouslan): Remove this flag when feedback testing is complete. Revisit by |
| 1316 | // August 2013. |
| 1317 | const char kSpellingServiceFeedbackIntervalSeconds[] = |
| 1318 | "spelling-service-feedback-interval-seconds"; |
| 1319 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1320 | // Specifies the maximum SSL/TLS version ("ssl3", "tls1", "tls1.1", or |
| 1321 | // "tls1.2"). |
| 1322 | const char kSSLVersionMax[] = "ssl-version-max"; |
| 1323 | |
| 1324 | // Specifies the minimum SSL/TLS version ("ssl3", "tls1", "tls1.1", or |
| 1325 | // "tls1.2"). |
| 1326 | const char kSSLVersionMin[] = "ssl-version-min"; |
| 1327 | |
| 1328 | // Starts the browser maximized, regardless of any previous settings. |
| 1329 | const char kStartMaximized[] = "start-maximized"; |
| 1330 | |
| 1331 | // Controls the width of time-of-day filters on the 'suggested' ntp page, in |
| 1332 | // minutes. |
| 1333 | const char kSuggestionNtpFilterWidth[] = "suggestion-ntp-filter-width"; |
| 1334 | |
| 1335 | // Enables a normal distribution dropoff to the relevancy of visits with respect |
| 1336 | // to the time of day. |
| 1337 | const char kSuggestionNtpGaussianFilter[] = "suggestion-ntp-gaussian-filter"; |
| 1338 | |
| 1339 | // Enables a linear dropoff to the relevancy of visits with respect to the time |
| 1340 | // of day. |
| 1341 | const char kSuggestionNtpLinearFilter[] = "suggestion-ntp-linear-filter"; |
| 1342 | |
| 1343 | // Allows insecure XMPP connections for sync (for testing). |
| 1344 | const char kSyncAllowInsecureXmppConnection[] = |
| 1345 | "sync-allow-insecure-xmpp-connection"; |
| 1346 | |
| 1347 | // Invalidates any login info passed into sync's XMPP connection. |
| 1348 | const char kSyncInvalidateXmppLogin[] = "sync-invalidate-xmpp-login"; |
| 1349 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1350 | // This flag causes sync to retry very quickly (see polling_constants.h) the |
| 1351 | // when it encounters an error, as the first step towards exponential backoff. |
| 1352 | const char kSyncShortInitialRetryOverride[] = |
| 1353 | "sync-short-initial-retry-override"; |
| 1354 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1355 | // Overrides the default host:port used for sync notifications. |
| 1356 | const char kSyncNotificationHostPort[] = "sync-notification-host-port"; |
| 1357 | |
| 1358 | // Overrides the default server used for profile sync. |
| 1359 | const char kSyncServiceURL[] = "sync-url"; |
| 1360 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1361 | // Makes the sync code to throw an unrecoverable error after initialization. |
| 1362 | // Useful for testing unrecoverable error scenarios. |
| 1363 | const char kSyncThrowUnrecoverableError[] = "sync-throw-unrecoverable-error"; |
| 1364 | |
| 1365 | |
| 1366 | // Tries to connect to XMPP using SSLTCP first (for testing). |
| 1367 | const char kSyncTrySsltcpFirstForXmpp[] = "sync-try-ssltcp-first-for-xmpp"; |
| 1368 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1369 | // Enables deferring sync backend initialization until user initiated changes |
| 1370 | // occur. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 1371 | const char kSyncEnableDeferredStartup[] = "sync-enable-deferred-startup"; |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1372 | |
Torne (Richard Coles) | 7d4cd47 | 2013-06-19 11:58:07 +0100 | [diff] [blame] | 1373 | // Disables use of OAuth2 token in sync components and reverts behavior to |
| 1374 | // ClientLogin token. |
| 1375 | const char kSyncDisableOAuth2Token[] = "sync-disable-oauth2-token"; |
| 1376 | |
Ben Murdoch | ca12bfa | 2013-07-23 11:17:05 +0100 | [diff] [blame] | 1377 | // Enables feature to avoid unnecessary GetUpdate requests. |
| 1378 | const char kSyncEnableGetUpdateAvoidance[] = |
| 1379 | "sync-enable-get-update-avoidance"; |
| 1380 | |
Torne (Richard Coles) | b2df76e | 2013-05-13 16:52:09 +0100 | [diff] [blame] | 1381 | // Enables directory support for sync filesystem |
| 1382 | const char kSyncfsEnableDirectoryOperation[] = |
| 1383 | "enable-syncfs-directory-operation"; |
| 1384 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1385 | // Enables tab dragging to create a real browser. |
| 1386 | const char kTabBrowserDragging[] = "enable-tab-browser-dragging"; |
| 1387 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1388 | // Passes the name of the current running automated test to Chrome. |
| 1389 | const char kTestName[] = "test-name"; |
| 1390 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1391 | // Type of the current test harness ("browser" or "ui"). |
| 1392 | const char kTestType[] = "test-type"; |
| 1393 | |
| 1394 | // Tells the app to listen for and broadcast testing-related messages on IPC |
| 1395 | // channel with the given ID. |
| 1396 | const char kTestingChannelID[] = "testing-channel"; |
| 1397 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1398 | // Enables tracking the amount of non-idle time spent viewing pages. |
| 1399 | const char kTrackActiveVisitTime[] = "track-active-visit-time"; |
| 1400 | |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 1401 | // Overrides the default server used for Google Translate. |
| 1402 | const char kTranslateScriptURL[] = "translate-script-url"; |
| 1403 | |
Ben Murdoch | 3240926 | 2013-08-07 11:04:47 +0100 | [diff] [blame] | 1404 | // Overrides security-origin with which Translate runs in an isolated world. |
| 1405 | const char kTranslateSecurityOrigin[] = "translate-security-origin"; |
| 1406 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1407 | // Disables same-origin check on HTTP resources pushed via a SPDY proxy. |
| 1408 | // The value is the host:port of the trusted proxy. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 1409 | const char kTrustedSpdyProxy[] = "trusted-spdy-proxy"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1410 | |
| 1411 | // Experimental. Shows a dialog asking the user to try chrome. This flag is to |
| 1412 | // be used only by the upgrade process. |
| 1413 | const char kTryChromeAgain[] = "try-chrome-again"; |
| 1414 | |
Torne (Richard Coles) | 90dce4d | 2013-05-29 14:40:03 +0100 | [diff] [blame] | 1415 | // Uninstalls an extension with the specified extension id. |
| 1416 | const char kUninstallExtension[] = "uninstall-extension"; |
| 1417 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1418 | // Runs un-installation steps that were done by chrome first-run. |
| 1419 | const char kUninstall[] = "uninstall"; |
| 1420 | |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 1421 | // Overrides per-origin quota settings to unlimited storage for any |
| 1422 | // apps/origins. This should be used only for testing purpose. |
| 1423 | const char kUnlimitedStorage[] = "unlimited-storage"; |
| 1424 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1425 | // Uses Spdy for the transport protocol instead of HTTP. This is a temporary |
| 1426 | // testing flag. |
| 1427 | const char kUseSpdy[] = "use-spdy"; |
| 1428 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1429 | // Disables use of the spelling web service and only provides suggestions. |
| 1430 | // This will only work if asynchronous spell checking is not disabled. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 1431 | const char kUseSpellingSuggestions[] = "use-spelling-suggestions"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1432 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1433 | // Sets the maximum concurrent streams over a SPDY session. |
| 1434 | const char kMaxSpdyConcurrentStreams[] = "max-spdy-concurrent-streams"; |
| 1435 | |
| 1436 | // Specifies the user data directory, which is where the browser will look for |
| 1437 | // all of its state. |
| 1438 | const char kUserDataDir[] = "user-data-dir"; |
| 1439 | |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 1440 | // Examines a .crx for validity and prints the result. |
| 1441 | const char kValidateCrx[] = "validate-crx"; |
| 1442 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1443 | // Uses experimental simple cache backend if possible. |
| 1444 | const char kUseSimpleCacheBackend[] = "use-simple-cache-backend"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1445 | |
| 1446 | // Specifies a custom URL for the server which reports variation data to the |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1447 | // client. Specifying this switch enables the Variations service on |
| 1448 | // unofficial builds. See variations_service.cc. |
| 1449 | const char kVariationsServerURL[] = "variations-server-url"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1450 | |
| 1451 | // Prints version information and quits. |
| 1452 | const char kVersion[] = "version"; |
| 1453 | |
| 1454 | // Cycle through a series of URLs listed in the specified file. |
| 1455 | const char kVisitURLs[] = "visit-urls"; |
| 1456 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1457 | // Adds the given extension ID to all the permission whitelists. |
| 1458 | const char kWhitelistedExtensionID[] = "whitelisted-extension-id"; |
| 1459 | |
| 1460 | // Specify the initial window position: --window-position=x,y |
| 1461 | const char kWindowPosition[] = "window-position"; |
| 1462 | |
| 1463 | // Specify the initial window size: --window-size=w,h |
| 1464 | const char kWindowSize[] = "window-size"; |
| 1465 | |
| 1466 | // Uses WinHTTP to fetch and evaluate PAC scripts. Otherwise the default is to |
| 1467 | // use Chromium's network stack to fetch, and V8 to evaluate. |
| 1468 | const char kWinHttpProxyResolver[] = "winhttp-proxy-resolver"; |
| 1469 | |
| 1470 | #if defined(ENABLE_PLUGIN_INSTALLATION) |
| 1471 | // Specifies a custom URL for fetching plug-ins metadata. Used for testing. |
| 1472 | const char kPluginsMetadataServerURL[] = "plugins-metadata-server-url"; |
| 1473 | #endif |
| 1474 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1475 | #if defined(OS_ANDROID) || defined(OS_IOS) |
| 1476 | // Enable SPDY proxy. |
| 1477 | const char kEnableSpdyProxyAuth[] = "enable-spdy-proxy-auth"; |
| 1478 | #endif // defined(OS_ANDROID) || defined(OS_IOS) |
| 1479 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1480 | #if defined(OS_ANDROID) |
Ben Murdoch | ca12bfa | 2013-07-23 11:17:05 +0100 | [diff] [blame] | 1481 | // Enables the new NTP. |
| 1482 | const char kEnableNewNTP[] = "enable-new-ntp"; |
| 1483 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1484 | // Pops the translate infobar if possible. |
| 1485 | const char kEnableTranslate[] = "enable-translate"; |
| 1486 | |
Ben Murdoch | ca12bfa | 2013-07-23 11:17:05 +0100 | [diff] [blame] | 1487 | // Registers for cloud policy using the BROWSER client type instead of the |
| 1488 | // ANDROID_BROWSER type. This enables skipping the server whitelist. |
| 1489 | // TODO(joaodasilva): remove this. http://crbug.com/248527 |
| 1490 | const char kFakeCloudPolicyType[] = "fake-cloud-policy-type"; |
| 1491 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1492 | // Uses the tablet specific UI components when available. |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1493 | const char kTabletUI[] = "tablet-ui"; |
| 1494 | #endif |
| 1495 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1496 | #if defined(USE_ASH) |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 1497 | const char kAshDisableTabScrubbing[] = "ash-disable-tab-scrubbing"; |
| 1498 | const char kOpenAsh[] = "open-ash"; |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1499 | #endif |
| 1500 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1501 | #if defined(OS_POSIX) |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1502 | // Used for turning on Breakpad crash reporting in a debug environment where |
| 1503 | // crash reporting is typically compiled but disabled. |
| 1504 | const char kEnableCrashReporterForTesting[] = |
| 1505 | "enable-crash-reporter-for-testing"; |
| 1506 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1507 | #if !defined(OS_MACOSX) && !defined(OS_CHROMEOS) |
| 1508 | // Specifies which password store to use (detect, default, gnome, kwallet). |
| 1509 | const char kPasswordStore[] = "password-store"; |
| 1510 | #endif |
| 1511 | #endif // OS_POSIX |
| 1512 | |
| 1513 | #if defined(OS_MACOSX) |
Ben Murdoch | 7dbb3d5 | 2013-07-17 14:55:54 +0100 | [diff] [blame] | 1514 | // Forcibly disables Lion-style on newer OSes, to allow developers to test the |
| 1515 | // older, SnowLeopard-style fullscreen. |
| 1516 | const char kDisableSystemFullscreenForTesting[] = |
| 1517 | "disable-system-fullscreen-for-testing"; |
| 1518 | |
Torne (Richard Coles) | 90dce4d | 2013-05-29 14:40:03 +0100 | [diff] [blame] | 1519 | // Enables the app list OSX .app shim, for showing the app list. If the flag is |
| 1520 | // not present, Chrome will check if the shim exists at startup, and delete it |
| 1521 | // if it does. |
| 1522 | const char kEnableAppListShim[] = "enable-app-list-shim"; |
| 1523 | |
Torne (Richard Coles) | 868fa2f | 2013-06-11 10:57:03 +0100 | [diff] [blame] | 1524 | // Enable to allow creation and launch of app shims for platform apps. |
| 1525 | const char kEnableAppShims[] = "enable-app-shims"; |
| 1526 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1527 | // Enables the tabs expose feature ( http://crbug.com/50307 ). |
| 1528 | const char kEnableExposeForTabs[] = "enable-expose-for-tabs"; |
| 1529 | |
Torne (Richard Coles) | 7d4cd47 | 2013-06-19 11:58:07 +0100 | [diff] [blame] | 1530 | // Enables a simplified fullscreen UI on Mac. |
| 1531 | const char kEnableSimplifiedFullscreen[] = "enable-simplified-fullscreen"; |
| 1532 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1533 | // Performs Keychain reauthorization from the command line on behalf of a |
| 1534 | // special Keychain reauthorization stub executable. Used during auto-update. |
| 1535 | const char kKeychainReauthorize[] = "keychain-reauthorize"; |
| 1536 | |
| 1537 | // A process type (switches::kProcessType) that relaunches the browser. See |
| 1538 | // chrome/browser/mac/relauncher.h. |
| 1539 | const char kRelauncherProcess[] = "relauncher"; |
| 1540 | |
| 1541 | // Uses mock keychain for testing purposes, which prevents blocking dialogs |
| 1542 | // from causing timeouts. |
| 1543 | const char kUseMockKeychain[] = "use-mock-keychain"; |
| 1544 | #endif |
| 1545 | |
| 1546 | #if defined(OS_WIN) |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1547 | // For the DelegateExecute verb handler to launch Chrome in metro mode on |
| 1548 | // Windows 8 and higher. Used when relaunching metro Chrome. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 1549 | const char kForceImmersive[] = "force-immersive"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1550 | |
| 1551 | // For the DelegateExecute verb handler to launch Chrome in desktop mode on |
| 1552 | // Windows 8 and higher. Used when relaunching metro Chrome. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 1553 | const char kForceDesktop[] = "force-desktop"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1554 | |
| 1555 | // Allows for disabling the overlapped I/O for TCP reads. |
| 1556 | // Possible values are "on" or "off". |
| 1557 | // The default is "on" which matches the existing behavior. |
| 1558 | // "off" switches to use non-blocking reads and WSAEventSelect. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 1559 | const char kOverlappedRead[] = "overlapped-reads"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1560 | |
| 1561 | // Relaunches metro Chrome on Windows 8 and higher using a given shortcut. |
Torne (Richard Coles) | c2e0dbd | 2013-05-09 18:35:53 +0100 | [diff] [blame] | 1562 | const char kRelaunchShortcut[] = "relaunch-shortcut"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1563 | |
| 1564 | // Waits for the given handle to be signaled before relaunching metro Chrome on |
| 1565 | // Windows 8 and higher. |
| 1566 | const char kWaitForMutex[] = "wait-for-mutex"; |
Torne (Richard Coles) | 868fa2f | 2013-06-11 10:57:03 +0100 | [diff] [blame] | 1567 | |
| 1568 | // Indicates that chrome was launched to service a search request in Windows 8. |
| 1569 | const char kWindows8Search[] = "windows8-search"; |
| 1570 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1571 | #endif |
| 1572 | |
Ben Murdoch | eb525c5 | 2013-07-10 11:40:50 +0100 | [diff] [blame] | 1573 | #if defined(OS_WIN) && defined(USE_AURA) |
| 1574 | // Requests that Chrome connect to the running Metro viewer process. |
| 1575 | const char kViewerConnect[] = "viewer-connect"; |
| 1576 | |
| 1577 | // Requests that Chrome launch the Metro viewer process via the given appid |
| 1578 | // (which is assumed to be registered as default browser) and synchronously |
| 1579 | // connect to it. |
| 1580 | const char kViewerLaunchViaAppId[] = "viewer-launch-via-appid"; |
| 1581 | #endif |
| 1582 | |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1583 | #ifndef NDEBUG |
| 1584 | // Enables overriding the path of file manager extension. |
| 1585 | const char kFileManagerExtensionPath[] = "filemgr-ext-path"; |
| 1586 | |
Torne (Richard Coles) | 2a99a7e | 2013-03-28 15:31:22 +0000 | [diff] [blame] | 1587 | // Enables overriding the path of image loader extension. |
| 1588 | const char kImageLoaderExtensionPath[] = "image-loader-ext-path"; |
Torne (Richard Coles) | 5821806 | 2012-11-14 11:43:16 +0000 | [diff] [blame] | 1589 | #endif // NDEBUG |
| 1590 | |
| 1591 | // Controls print preview in the browser process. |
| 1592 | #if defined(GOOGLE_CHROME_BUILD) |
| 1593 | // Disables print preview (For testing, and for users who don't like us. :[ ) |
| 1594 | const char kDisablePrintPreview[] = "disable-print-preview"; |
| 1595 | #else |
| 1596 | // Enables print preview (Force enable on Chromium, which normally does not |
| 1597 | // have the PDF viewer required for print preview.) |
| 1598 | const char kEnablePrintPreview[] = "enable-print-preview"; |
| 1599 | #endif |
| 1600 | |
| 1601 | // ----------------------------------------------------------------------------- |
| 1602 | // DO NOT ADD YOUR CRAP TO THE BOTTOM OF THIS FILE. |
| 1603 | // |
| 1604 | // You were going to just dump your switches here, weren't you? Instead, please |
| 1605 | // put them in alphabetical order above, or in order inside the appropriate |
| 1606 | // ifdef at the bottom. The order should match the header. |
| 1607 | // ----------------------------------------------------------------------------- |
| 1608 | |
| 1609 | } // namespace switches |