chrome_switches.cc revision 513209b27ff55e2841eac0e4120199c23acce758
1// Copyright (c) 2010 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 10namespace switches { 11 12// ----------------------------------------------------------------------------- 13// Can't find the switch you are looking for? try looking in 14// base/base_switches.cc instead. 15// ----------------------------------------------------------------------------- 16 17// Activate (make foreground) myself on launch. Helpful when Chrome 18// is launched on the command line (e.g. by Selenium). Only needed on Mac. 19const char kActivateOnLaunch[] = "activate-on-launch"; 20 21// By default, file:// URIs cannot read other file:// URIs. This is an 22// override for developers who need the old behavior for testing. 23const char kAllowFileAccessFromFiles[] = "allow-file-access-from-files"; 24 25// Disable checking of the renegotiation extension and any future checks over 26// and above what a "traditional" SSL stack might do. This has been requested 27// in order to support some web development tools that intercept SSL 28// connections. 29const char kAllowSSLMITMProxies[] = "allow-ssl-mitm-proxies"; 30 31// Allows debugging of sandboxed processes (see zygote_main_linux.cc). 32const char kAllowSandboxDebugging[] = "allow-sandbox-debugging"; 33 34// Allows injecting extensions and user scripts on the extensions 35// gallery site. Normally prevented for security reasons, but can be 36// useful for automation testing of the gallery. 37const char kAllowScriptingGallery[] = "allow-scripting-gallery"; 38 39// Enable web inspector for all windows, even if they're part of the browser. 40// Allows us to use our dev tools to debug browser windows itself. 41const char kAlwaysEnableDevTools[] = "always-enable-dev-tools"; 42 43// Specifies that the associated value should be launched in "application" mode. 44const char kApp[] = "app"; 45 46// Specifies that the extension-app with the specified id should be launched 47// according to its configuration. 48const char kAppId[] = "app-id"; 49 50// The URL to use for the gallery link in the app launcher. 51const char kAppsGalleryURL[] = "apps-gallery-url"; 52 53// Disable throbber for extension apps. 54const char kAppsNoThrob[] = "apps-no-throb"; 55 56// Whitelist of servers that Negotiate will generate delegated Kerberos tickets 57// for. 58const char kAuthNegotiateDelegateWhitelist[] = 59 "auth-negotiate-delegate-whitelist"; 60 61// HTTP authentication schemes to enable. This is a comma separated list 62// of authentication schemes (basic, digest, ntlm, and negotiate). By default 63// all schemes are enabled. The primary use of this command line flag is to help 64// triage autentication-related issues reported by end-users. 65const char kAuthSchemes[] = "auth-schemes"; 66 67// Whitelist of servers which NTLM and Negotiate can automatically authenticate 68// with using the default credentials of the currently logged in user. 69const char kAuthServerWhitelist[] = "auth-server-whitelist"; 70 71// The value of this switch tells the app to listen for and broadcast 72// automation-related messages on IPC channel with the given ID. 73const char kAutomationClientChannelID[] = "automation-channel"; 74 75// Block non-sandboxed plugins. 76const char kBlockNonSandboxedPlugins[] = "block-nonsandboxed-plugins"; 77 78// Causes the browser process to throw an assertion on startup. 79const char kBrowserAssertTest[] = "assert-test"; 80 81// Causes the browser process to crash on startup. 82const char kBrowserCrashTest[] = "crash-test"; 83 84// Path to the exe to run for the renderer and plugin subprocesses. 85const char kBrowserSubprocessPath[] = "browser-subprocess-path"; 86 87// How often (in seconds) to check for updates. Should only be used for 88// testing purposes. 89const char kCheckForUpdateIntervalSec[] = "check-for-update-interval"; 90 91// Run Chrome in Chrome Frame mode. This means that Chrome expects to be run 92// as a dependent process of the Chrome Frame plugin. 93const char kChromeFrame[] = "chrome-frame"; 94 95// The unique id to be used for this cloud print proxy instance. 96const char kCloudPrintProxyId[] = "cloud-print-proxy-id"; 97 98// The URL of the cloud print service to use, overrides any value 99// stored in preferences, and the default. Only used if the cloud 100// print service has been enabled (see enable-cloud-print). 101const char kCloudPrintServiceURL[] = "cloud-print-service"; 102 103// Causes the browser process to inspect loaded and registered DLLs for 104// known conflicts and warn the user. 105const char kConflictingModulesCheck[] = "conflicting-modules-check"; 106 107// The Country we should use. This is normally obtained from the operating 108// system during first run and cached in the preferences afterwards. This is a 109// string value, the 2 letter code from ISO 3166-1. 110const char kCountry[] = "country"; 111 112// Enables support to debug printing subsystem. 113const char kDebugPrint[] = "debug-print"; 114 115// Triggers a pletora of diagnostic modes. 116const char kDiagnostics[] = "diagnostics"; 117 118// Disables accelerated compositing. 119const char kDisableAcceleratedCompositing[] = 120 "disable-accelerated-compositing"; 121 122// Disables the alternate window station for the renderer. 123const char kDisableAltWinstation[] = "disable-winsta"; 124 125// Disable the ApplicationCache. 126const char kDisableApplicationCache[] = "disable-application-cache"; 127 128// Replaces the audio IPC layer for <audio> and <video> with a mock audio 129// device, useful when using remote desktop or machines without sound cards. 130// This is temporary until we fix the underlying problem. 131// 132// TODO(scherkus): remove --disable-audio when we have a proper fallback 133// mechanism. 134const char kDisableAudio[] = "disable-audio"; 135 136// Disable CNAME lookup of the host when generating the Kerberos SPN for a 137// Negotiate challenge. See HttpAuthHandlerNegotiate::CreateSPN 138// for more background. 139const char kDisableAuthNegotiateCnameLookup[] = 140 "disable-auth-negotiate-cname-lookup"; 141 142// Disable several subsystems which run network requests in the background. 143// This is for use when doing network performance testing to avoid noise 144// in the measurements. 145const char kDisableBackgroundNetworking[] = "disable-background-networking"; 146 147// Disable limits on the number of backing stores. Can prevent blinking for 148// users with many windows/tabs and lots of memory. 149const char kDisableBackingStoreLimit[] = "disable-backing-store-limit"; 150 151// Disable click-to-play for blocked plug-ins. 152const char kDisableClickToPlay[] = "disable-click-to-play"; 153 154// Disables establishing a backup TCP connection if a specified timeout is 155// exceeded. 156const char kDisableConnectBackupJobs[] = "disable-connect-backup-jobs"; 157 158// Disable requests that webkit labels TargetIsPrefetch. As of 159// writing only <link rel=prefetch...> but also eventually 160// Link: headers. 161const char kDisableContentPrefetch[] = "disable-content-prefetch"; 162 163// Disables the custom JumpList on Windows 7. 164const char kDisableCustomJumpList[] = "disable-custom-jumplist"; 165 166// Disables HTML5 DB support. 167const char kDisableDatabases[] = "disable-databases"; 168 169// Disables desktop notifications (default enabled on windows). 170const char kDisableDesktopNotifications[] = "disable-desktop-notifications"; 171 172// Browser flag to disable the web inspector for all renderers. 173const char kDisableDevTools[] = "disable-dev-tools"; 174 175// Disables device orientation events. 176const char kDisableDeviceOrientation[] = "disable-device-orientation"; 177 178// Disable experimental WebGL support. 179const char kDisableExperimentalWebGL[] = "disable-webgl"; 180 181// Disable extensions. 182const char kDisableExtensions[] = "disable-extensions"; 183 184// Disable checking for user opt-in for extensions that want to inject script 185// into file URLs (ie, always allow it). This is used during automated testing. 186const char kDisableExtensionsFileAccessCheck[] = 187 "disable-extensions-file-access-check"; 188 189// Disable FileSystem API. 190const char kDisableFileSystem[] = "disable-file-system"; 191 192// Suppresses support for the Geolocation javascript API. 193const char kDisableGeolocation[] = "disable-geolocation"; 194 195// Disable the GLSL translator. 196const char kDisableGLSLTranslator[] = "disable-glsl-translator"; 197 198// Disable the thread that crashes the GPU process if it stops responding to 199// messages. 200const char kDisableGpuWatchdog[] = "disable-gpu-watchdog"; 201 202// Suppresses hang monitor dialogs in renderer processes. This may allow slow 203// unload handlers on a page to prevent the tab from closing, but the Task 204// Manager can be used to terminate the offending process in this case. 205const char kDisableHangMonitor[] = "disable-hang-monitor"; 206 207// Disable the use of the HistoryQuickProvider for autocomplete results. 208const char kDisableHistoryQuickProvider[] = "disable-history-quick-provider"; 209 210// Disable the use of the HistoryURLProvider for autocomplete results. 211const char kDisableHistoryURLProvider[] = "disable-history-url-provider"; 212 213// Disable the Indexed Database API. 214const char kDisableIndexedDatabase[] = "disable-indexed-database"; 215 216// Disable the internal Flash Player. 217const char kDisableInternalFlash[] = "disable-internal-flash"; 218 219// Don't resolve hostnames to IPv6 addresses. This can be used when debugging 220// issues relating to IPv6, but shouldn't otherwise be needed. Be sure to 221// file bugs if something isn't working properly in the presence of IPv6. 222// This flag can be overidden by the "enable-ipv6" flag. 223const char kDisableIPv6[] = "disable-ipv6"; 224 225// Disable speculative TCP/IP preconnection. 226const char kDisablePreconnect[] = "disable-preconnect"; 227 228// Don't execute JavaScript (browser JS like the new tab page still runs). 229const char kDisableJavaScript[] = "disable-javascript"; 230 231// Prevent Java from running. 232const char kDisableJava[] = "disable-java"; 233 234// Disable LocalStorage. 235const char kDisableLocalStorage[] = "disable-local-storage"; 236 237// Force logging to be disabled. Logging is enabled by default in debug 238// builds. 239const char kDisableLogging[] = "disable-logging"; 240 241// Whether we should prevent the new tab page from showing the first run 242// notification. 243const char kDisableNewTabFirstRun[] = "disable-new-tab-first-run"; 244 245// Prevent outdated plugins from running. 246const char kDisableOutdatedPlugins[] = "disable-outdated-plugins"; 247 248// Prevent plugins from running. 249const char kDisablePlugins[] = "disable-plugins"; 250 251// Disable pop-up blocking. 252const char kDisablePopupBlocking[] = "disable-popup-blocking"; 253 254// Normally when the user attempts to navigate to a page that was the result of 255// a post we prompt to make sure they want to. This switch may be used to 256// disable that check. This switch is used during automated testing. 257const char kDisablePromptOnRepost[] = "disable-prompt-on-repost"; 258 259// Disable remote web font support. SVG font should always work whether 260// this option is specified or not. 261const char kDisableRemoteFonts[] = "disable-remote-fonts"; 262 263// Turns off the accessibility in the renderer. 264const char kDisableRendererAccessibility[] = "disable-renderer-accessibility"; 265 266// Prevents the URLs of BackgroundContents from being remembered and re-launched 267// when the browser restarts. 268const char kDisableRestoreBackgroundContents[] = 269 "disable-restore-background-contents"; 270 271// Disable session storage. 272const char kDisableSessionStorage[] = "disable-session-storage"; 273 274// Enable shared workers. Functionality not yet complete. 275const char kDisableSharedWorkers[] = "disable-shared-workers"; 276 277// Disable site-specific tailoring to compatibility issues in WebKit. 278const char kDisableSiteSpecificQuirks[] = "disable-site-specific-quirks"; 279 280// Disables speech input. 281const char kDisableSpeechInput[] = "disable-speech-input"; 282 283// Disable False Start in SSL and TLS connections. 284const char kDisableSSLFalseStart[] = "disable-ssl-false-start"; 285 286// Disable syncing browser data to a Google Account. 287const char kDisableSync[] = "disable-sync"; 288 289// Disable syncing of apps. 290const char kDisableSyncApps[] = "disable-sync-apps"; 291 292// Disable syncing of autofill. 293const char kDisableSyncAutofill[] = "disable-sync-autofill"; 294 295// Disable syncing of bookmarks. 296const char kDisableSyncBookmarks[] = "disable-sync-bookmarks"; 297 298// Disable syncing of extensions. 299const char kDisableSyncExtensions[] = "disable-sync-extensions"; 300 301// Disable syncing of preferences. 302const char kDisableSyncPreferences[] = "disable-sync-preferences"; 303 304// Disable syncing of themes. 305const char kDisableSyncThemes[] = "disable-sync-themes"; 306 307// TabCloseableStateWatcher disallows closing of tabs and browsers under certain 308// situations on ChromeOS. Some tests expect tabs or browsers to close, so we 309// need a switch to disable the watcher. 310const char kDisableTabCloseableStateWatcher[] = 311 "disable-tab-closeable-state-watcher"; 312 313// Allow disabling of translate from the command line to assist with 314// automated browser testing (e.g. Selenium/WebDriver). Normal 315// browser users should disable translate with the preference. 316const char kDisableTranslate[] = "disable-translate"; 317 318// Enables the backend service for web resources, used in the new tab page for 319// loading tips and recommendations from a JSON feed. 320const char kDisableWebResources[] = "disable-web-resources"; 321 322// Don't enforce the same-origin policy. (Used by people testing their sites.) 323const char kDisableWebSecurity[] = "disable-web-security"; 324 325// Disable Web Sockets support. 326const char kDisableWebSockets[] = "disable-web-sockets"; 327 328// Use a specific disk cache location, rather than one derived from the 329// UserDatadir. 330const char kDiskCacheDir[] = "disk-cache-dir"; 331 332// Forces the maximum disk space to be used by the disk cache, in bytes. 333const char kDiskCacheSize[] = "disk-cache-size"; 334 335const char kDnsLogDetails[] = "dns-log-details"; 336 337// Disables prefetching of DNS information. 338const char kDnsPrefetchDisable[] = "dns-prefetch-disable"; 339 340// Use the specified DNS server for raw DNS resolution. 341const char kDnsServer[] = "dns-server"; 342 343// Specifies if the dom_automation_controller_ needs to be bound in the 344// renderer. This binding happens on per-frame basis and hence can potentially 345// be a performance bottleneck. One should only enable it when automating 346// dom based tests. 347const char kDomAutomationController[] = "dom-automation"; 348 349// Dump any accumualted histograms to the log when browser terminates (requires 350// logging to be enabled to really do anything). Used by developers and test 351// scripts. 352const char kDumpHistogramsOnExit[] = "dump-histograms-on-exit"; 353 354// Enable displaying net log events on the command line. 355extern const char kLogNetLog[] = "log-net-log"; 356 357// Enable gpu-accelerated 2d canvas. 358const char kEnableAccelerated2dCanvas[] = "enable-accelerated-2d-canvas"; 359 360// Enables WebKit accessibility within the renderer process. 361const char kEnableAccessibility[] = "enable-accessibility"; 362 363// Enables AeroPeek for each tab. (This switch only works on Windows 7). 364const char kEnableAeroPeekTabs[] = "enable-aero-peek-tabs"; 365 366// Enables the application section of the new tab page. 367const char kEnableAppLauncher[] = "enable-app-launcher"; 368 369// Enable the inclusion of non-standard ports when generating the Kerberos SPN 370// in response to a Negotiate challenge. See HttpAuthHandlerNegotiate::CreateSPN 371// for more background. 372const char kEnableAuthNegotiatePort[] = "enable-auth-negotiate-port"; 373 374// Enable background mode (background apps will keep chrome running in the 375// background and allow chrome to launch on startup). 376const char kEnableBackgroundMode[] = "enable-background-mode"; 377 378// Enables the benchmarking extensions. 379const char kEnableBenchmarking[] = "enable-benchmarking"; 380 381// This flag enables UI for clearing server data. Temporarily in place 382// until there's a server endpoint deployed. 383const char kEnableClearServerData[] = "enable-clear-server-data"; 384 385// This applies only when the process type is "service". Enables the 386// Cloud Print Proxy component within the service process. 387const char kEnableCloudPrintProxy[] = "enable-cloud-print-proxy"; 388 389// Enables the Cloud Print dialog hosting code. 390const char kEnableCloudPrint[] = "enable-cloud-print"; 391 392// Enable the Confirm to Quit experiment. 393const char kEnableConfirmToQuit[] = "enable-confirm-to-quit"; 394 395// Enables establishing a backup TCP connection if a specified timeout is 396// exceeded. 397const char kEnableConnectBackupJobs[] = "enable-connect-backup-jobs"; 398 399// Enable requests that webkit labels TargetIsPrefetch. As of 400// writing only <link rel=prefetch...> but also eventually 401// Link: headers. 402const char kEnableContentPrefetch[] = "enable-content-prefetch"; 403 404// Whether default apps should be installed in this profile. This flag has no 405// effect on Chrome OS because default apps are always enabled there. 406const char kEnableDefaultApps[] = "enable-default-apps"; 407 408// Enables device motion events. 409const char kEnableDeviceMotion[] = "enable-device-motion"; 410 411// Enable DNS side checking of certificates. Still experimental, should only 412// be used by developers at the current time. 413const char kEnableDNSCertProvenanceChecking[] = 414 "enable-dns-cert-provenance-checking"; 415 416const char kEnableDNSSECCerts[] = "enable-dnssec-certs"; 417 418// Enables extension APIs that are in development. 419const char kEnableExperimentalExtensionApis[] = 420 "enable-experimental-extension-apis"; 421 422// Enable experimental timeline API. 423const char kEnableExtensionTimelineApi[] = "enable-extension-timeline-api"; 424 425// Enable the fastback page cache. 426const char kEnableFastback[] = "enable-fastback"; 427 428// By default, cookies are not allowed on file://. They are needed for 429// testing, for example page cycler and layout tests. See bug 1157243. 430const char kEnableFileCookies[] = "enable-file-cookies"; 431 432// Enable IPv6 support, even if probes suggest that it may not be fully 433// supported. Some probes may require internet connections, and this flag will 434// allow support independent of application testing. 435// This flag overrides "disable-ipv6" which appears elswhere in this file. 436const char kEnableIPv6[] = "enable-ipv6"; 437 438// Enable the GPU plugin and Pepper 3D rendering. 439const char kEnableGPUPlugin[] = "enable-gpu-plugin"; 440 441// Force logging to be enabled. Logging is disabled by default in release 442// builds. 443const char kEnableLogging[] = "enable-logging"; 444 445// Allows reporting memory info (JS heap size) to page. 446const char kEnableMemoryInfo[] = "enable-memory-info"; 447 448// On Windows, converts the page to the currently-installed monitor profile. 449// This does NOT enable color management for images. The source is still 450// assumed to be sRGB. 451const char kEnableMonitorProfile[] = "enable-monitor-profile"; 452 453// Runs the Native Client inside the renderer process and enables GPU plugin 454// (internally adds kInternalNaCl and lEnableGpuPlugin to the command line). 455const char kEnableNaCl[] = "enable-nacl"; 456 457// Enables debugging via RSP over a socket. 458const char kEnableNaClDebug[] = "enable-nacl-debug"; 459 460// Enable Native Web Worker support. 461const char kEnableNativeWebWorkers[] = "enable-native-web-workers"; 462 463// Is the predictive varition of instant enabled? 464const char kEnablePredictiveInstant[] = "enable-predictive-instant"; 465 466// This applies only when the process type is "service". Enables the 467// Chromoting Host Process within the service process. 468const char kEnableRemoting[] = "enable-remoting"; 469 470// Enable content settings based on host *and* plug-in. 471const char kEnableResourceContentSettings[] = 472 "enable-resource-content-settings"; 473 474// Enable speculative prerendering of pages. 475const char kEnablePagePrerender[] = "enable-page-prerender"; 476 477// Enable speculative TCP/IP preconnection. 478const char kEnablePreconnect[] = "enable-preconnect"; 479 480// Enable caching of pre-parsed JS script data. See http://crbug.com/32407. 481const char kEnablePreparsedJsCaching[] = "enable-preparsed-js-caching"; 482 483// Enable print preview (work in progress). 484const char kEnablePrintPreview[] = "enable-print-preview"; 485 486// Enable the IsSearchProviderInstalled and InstallSearchProvider with an extra 487// parameter to indicate if the provider should be the default. 488const char kEnableSearchProviderApiV2[] = "enable-search-provider-api-v2"; 489 490// Enables 0-RTT HTTPS handshakes. 491const char kEnableSnapStart[] = "enable-snap-start"; 492 493// Enables StatsTable, logging statistics to a global named shared memory table. 494const char kEnableStatsTable[] = "enable-stats-table"; 495 496// Enable syncing browser data to a Google Account. 497const char kEnableSync[] = "enable-sync"; 498 499// Enable syncing browser autofill. 500const char kEnableSyncAutofill[] = "enable-sync-autofill"; 501 502// Enable syncing browser passwords. 503const char kEnableSyncPasswords[] = "enable-sync-passwords"; 504 505// Enable syncing browser sessions. 506const char kEnableSyncSessions[] = "enable-sync-sessions"; 507 508// Enable syncing browser typed urls. 509const char kEnableSyncTypedUrls[] = "enable-sync-typed-urls"; 510 511// Enable tabbed options, ie: dom-ui version of options window. 512const char kEnableTabbedOptions[] = "enable-tabbed-options"; 513 514// Enable use of experimental TCP sockets API for sending data in the 515// SYN packet. 516const char kEnableTcpFastOpen[] = "enable-tcp-fastopen"; 517 518// Enables TopSites. 519const char kEnableTopSites[] = "enable-top-sites"; 520 521// Whether or not the touch events API is exposed. 522const char kEnableTouch[] = "enable-touch"; 523 524// Is verbatim instant enabled? 525const char kEnableVerbatimInstant[] = "enable-verbatim-instant"; 526 527// Enables the option to show tabs as a vertical stack down the side of the 528// browser window. 529const char kEnableVerticalTabs[] = "enable-vertical-tabs"; 530 531// Enables support for fullscreen video. Current implementation is 532// incomplete and this flag is used for development and testing. 533const char kEnableVideoFullscreen[] = "enable-video-fullscreen"; 534 535// Enables video logging where video elements log playback performance data to 536// the debug log. 537const char kEnableVideoLogging[] = "enable-video-logging"; 538 539// Spawn threads to watch for excessive delays in specified message loops. 540// User should set breakpoints on Alarm() to examine problematic thread. 541// Usage: -enable-watchdog=[ui][io] 542// Order of the listed sub-arguments does not matter. 543const char kEnableWatchdog[] = "enable-watchdog"; 544 545// Disable WebKit's XSSAuditor. The XSSAuditor mitigates reflective XSS. 546const char kEnableXSSAuditor[] = "enable-xss-auditor"; 547 548// Enables experimental features for the geolocation API. 549// Current features: 550// - CoreLocation support for Mac OS X 10.6 551// - Gateway location for Linux and Windows 552// - Location platform support for Windows 7 553const char kExperimentalLocationFeatures[] = "experimental-location-features"; 554 555// Enables experimental features for Spellchecker. Right now, the first 556// experimental feature is auto spell correct, which corrects words which are 557// misppelled by typing the word with two consecutive letters swapped. The 558// features that will be added next are: 559// 1 - Allow multiple spellcheckers to work simultaneously. 560// 2 - Allow automatic detection of spell check language. 561// TODO(sidchat): Implement the above fetaures to work under this flag. 562const char kExperimentalSpellcheckerFeatures[] = 563 "experimental-spellchecker-features"; 564 565// Explicitly allow additional ports using a comma separated list of port 566// numbers. 567const char kExplicitlyAllowedPorts[] = "explicitly-allowed-ports"; 568 569// Causes the process to run as an extension subprocess. 570const char kExtensionProcess[] = "extension"; 571 572// Frequency in seconds for Extensions auto-update. 573const char kExtensionsUpdateFrequency[] = "extensions-update-frequency"; 574 575// These two flags are added around the switches about:flags adds to the 576// command line. This is useful to see which switches were added by about:flags 577// on about:version. They don't have any effect. 578const char kFlagSwitchesBegin[] = "flag-switches-begin"; 579const char kFlagSwitchesEnd[] = "flag-switches-end"; 580 581// Alternative feedback server to use when submitting user feedback 582const char kFeedbackServer[] = "feedback-server"; 583 584// The file descriptor limit is set to the value of this switch, subject to the 585// OS hard limits. Useful for testing that file descriptor exhaustion is handled 586// gracefully. 587const char kFileDescriptorLimit[] = "file-descriptor-limit"; 588 589// Display the First Run experience when the browser is started, regardless of 590// whether or not it's actually the first run. 591const char kFirstRun[] = "first-run"; 592 593// Forces the apps/webstore promo to be shown, independent of whether it has 594// timed out, etc. Useful for testing. 595const char kForceAppsPromoVisible[] = "force-apps-promo-visible"; 596 597// Some field tests may rendomized in the browser, and the randomly selected 598// outcome needs to be propogated to the renderer. For instance, this is used 599// to modify histograms recorded in the renderer, or to get the renderer to 600// also set of its state (initialize, or not initialize components) to match the 601// experiment(s). 602// The argument is a string-ized list of experiment names, and the associated 603// value that was randomly selected. In the recent implementetaion, the 604// persistent representation generated by field_trial.cc and later decoded, is a 605// list of name and value pairs, separated by slashes. See field trial.cc for 606// current details. 607const char kForceFieldTestNameAndValue[] = "force-fieldtest"; 608 609// Forces the internal PDF plugin to be used for this run, even if it's disabled 610// by default. Used for testing. 611const char kForceInternalPDFPlugin[] = "force-internal-pdf"; 612 613// Force renderer accessibility to be on instead of enabling it on demand when 614// a screen reader is detected. The disable-renderer-accessibility switch 615// overrides this if present. 616const char kForceRendererAccessibility[] = "force-renderer-accessibility"; 617 618// Extra command line options for launching the GPU process (normally used 619// for debugging). Use like renderer-cmd-prefix. 620const char kGpuLauncher[] = "gpu-launcher"; 621 622// Makes this process a GPU sub-process. 623const char kGpuProcess[] = "gpu-process"; 624 625// Causes the GPU process to display a dialog on launch. 626const char kGpuStartupDialog[] = "gpu-startup-dialog"; 627 628// These flags show the man page on Linux. They are equivalent to each 629// other. 630const char kHelp[] = "help"; 631const char kHelpShort[] = "h"; 632 633// Make Windows happy by allowing it to show "Enable access to this program" 634// checkbox in Add/Remove Programs->Set Program Access and Defaults. This 635// only shows an error box because the only way to hide Chrome is by 636// uninstalling it. 637const char kHideIcons[] = "hide-icons"; 638 639// The value of this switch specifies which page will be displayed 640// in newly-opened tabs. We need this for testing purposes so 641// that the UI tests don't depend on what comes up for http://google.com. 642const char kHomePage[] = "homepage"; 643 644// Comma separated list of rules that control how hostnames are mapped. 645// 646// For example: 647// "MAP * 127.0.0.1" --> Forces all hostnames to be mapped to 127.0.0.1 648// "MAP *.google.com proxy" --> Forces all google.com subdomains to be 649// resolved to "proxy". 650// "MAP test.com [::1]:77 --> Forces "test.com" to resolve to IPv6 loopback. 651// Will also force the port of the resulting 652// socket address to be 77. 653// "MAP * baz, EXCLUDE www.google.com" --> Remaps everything to "baz", 654// except for "www.google.com". 655// 656// These mappings apply to the endpoint host in a URLRequest (the TCP connect 657// and host resolver in a direct connection, and the CONNECT in an http proxy 658// connection, and the endpoint host in a SOCKS proxy connection). 659const char kHostRules[] = "host-rules"; 660 661// The maximum number of concurrent host resolve requests (i.e. DNS) to allow. 662const char kHostResolverParallelism[] = "host-resolver-parallelism"; 663 664// These mappings only apply to the host resolver. 665const char kHostResolverRules[] = "host-resolver-rules"; 666 667// Perform importing from another browser. The value associated with this 668// setting encodes the target browser and what items to import. 669const char kImport[] = "import"; 670 671// Perform bookmark importing from an HTML file. The value associated with this 672// setting encodes the file path. It may be used jointly with kImport. 673const char kImportFromFile[] = "import-from-file"; 674 675// Runs plugins inside the renderer process 676const char kInProcessPlugins[] = "in-process-plugins"; 677 678// Runs WebGL inside the renderer process. 679const char kInProcessWebGL[] = "in-process-webgl"; 680 681// Causes the browser to launch directly in incognito mode. 682const char kIncognito[] = "incognito"; 683 684// URL to use for instant. If specified this overrides the url from the 685// TemplateURL. 686const char kInstantURL[] = "instant-url"; 687 688// Runs the Native Client inside the renderer process. 689const char kInternalNaCl[] = "internal-nacl"; 690 691// Runs a trusted Pepper plugin inside the renderer process. 692const char kInternalPepper[] = "internal-pepper"; 693 694// Specifies the flags passed to JS engine 695const char kJavaScriptFlags[] = "js-flags"; 696 697// Used for testing - keeps browser alive after last browser window closes. 698const char kKeepAliveForTest[] = "keep-alive-for-test"; 699 700// Load an extension from the specified directory. 701const char kLoadExtension[] = "load-extension"; 702 703// Uninstall an extension with the specified extension id. 704const char kUninstallExtension[] = "uninstall-extension"; 705 706// Load an NPAPI plugin from the specified path. 707const char kLoadPlugin[] = "load-plugin"; 708 709// Load NPAPI plugins from the specified directory. 710const char kExtraPluginDir[] = "extra-plugin-dir"; 711 712// Make plugin processes log their sent and received messages to VLOG(1). 713const char kLogPluginMessages[] = "log-plugin-messages"; 714 715// Sets the minimum log level. Valid values are from 0 to 3: 716// INFO = 0, WARNING = 1, LOG_ERROR = 2, LOG_FATAL = 3. 717const char kLoggingLevel[] = "log-level"; 718 719// Make Chrome default browser 720const char kMakeDefaultBrowser[] = "make-default-browser"; 721 722// Forces the maximum disk space to be used by the media cache, in bytes. 723const char kMediaCacheSize[] = "media-cache-size"; 724 725// Enable dynamic loading of the Memory Profiler DLL, which will trace 726// all memory allocations during the run. 727const char kMemoryProfiling[] = "memory-profile"; 728 729// Enable histograming of tasks served by MessageLoop. See about:histograms/Loop 730// for results, which show frequency of messages on each thread, including APC 731// count, object signalling count, etc. 732const char kMessageLoopHistogrammer[] = "message-loop-histogrammer"; 733 734// Enables the recording of metrics reports but disables reporting. In 735// contrast to kDisableMetrics, this executes all the code that a normal client 736// would use for reporting, except the report is dropped rather than sent to 737// the server. This is useful for finding issues in the metrics code during UI 738// and performance tests. 739const char kMetricsRecordingOnly[] = "metrics-recording-only"; 740 741// Sets the default IP address (interface) for the stub (normally 127.0.0.1). 742const char kNaClDebugIP[] = "nacl-debug-ip"; 743 744// Sets the default port range for debugging. 745const char kNaClDebugPorts[] = "nacl-debug-ports"; 746 747// Causes the process to run as a NativeClient broker 748// (used for launching NaCl loader processes on 64-bit Windows). 749const char kNaClBrokerProcess[] = "nacl-broker"; 750 751// Causes the process to run as a NativeClient loader. 752const char kNaClLoaderProcess[] = "nacl-loader"; 753 754// Causes the Native Client process to display a dialog on launch. 755const char kNaClStartupDialog[] = "nacl-startup-dialog"; 756 757// Disables the default browser check. Useful for UI/browser tests where we 758// want to avoid having the default browser info-bar displayed. 759const char kNoDefaultBrowserCheck[] = "no-default-browser-check"; 760 761// Don't record/playback events when using record & playback. 762const char kNoEvents[] = "no-events"; 763 764// Bypass the First Run experience when the browser is started, regardless of 765// Disables all experiments set on about:flags. Does not disable about:flags 766// itself. Useful if an experiment makes chrome crash at startup: One can start 767// chrome with --no-experiments, disable the problematic lab at about:flags and 768// then restart chrome without this switch again. 769const char kNoExperiments[] = "no-experiments"; 770 771// whether or not it's actually the first run. Overrides kFirstRun in case 772// you're for some reason tempted to pass them both. 773const char kNoFirstRun[] = "no-first-run"; 774 775// Support a separate switch that enables the v8 playback extension. 776// The extension causes javascript calls to Date.now() and Math.random() 777// to return consistent values, such that subsequent loads of the same 778// page will result in consistent js-generated data and XHR requests. 779// Pages may still be able to generate inconsistent data from plugins. 780const char kNoJsRandomness[] = "no-js-randomness"; 781 782// Don't send hyperlink auditing pings 783const char kNoPings[] = "no-pings"; 784 785// Don't use a proxy server, always make direct connections. Overrides any 786// other proxy server flags that are passed. 787const char kNoProxyServer[] = "no-proxy-server"; 788 789// Don't send HTTP-Referer headers. 790const char kNoReferrers[] = "no-referrers"; 791 792// Runs the renderer outside the sandbox. 793const char kNoSandbox[] = "no-sandbox"; 794 795// Does not automatically open a browser window on startup (used when launching 796// Chrome for the purpose of hosting background apps). 797const char kNoStartupWindow[] = "no-startup-window"; 798 799// Show a desktop notification that the cloud print token has expired and 800// that user needs to re-authenticate. 801const char kNotifyCloudPrintTokenExpired[] = "notify-cp-token-expired"; 802 803// Specifies the maximum number of threads to use for running the Proxy 804// Autoconfig (PAC) script. 805const char kNumPacThreads[] = "num-pac-threads"; 806 807// Launch URL in new browser window. 808const char kOpenInNewWindow[] = "new-window"; 809 810// Simulate an organic Chrome install. 811const char kOrganicInstall[] = "organic"; 812 813// Package an extension to a .crx installable file from a given directory. 814const char kPackExtension[] = "pack-extension"; 815 816// Optional PEM private key is to use in signing packaged .crx. 817const char kPackExtensionKey[] = "pack-extension-key"; 818 819// Specifies the path to the user data folder for the parent profile. 820const char kParentProfile[] = "parent-profile"; 821 822// Read previously recorded data from the cache. Only cached data is read. 823// See kRecordMode. 824const char kPlaybackMode[] = "playback-mode"; 825 826// Specifies the plugin data directory, which is where plugins (Gears 827// specifically) will store its state. 828const char kPluginDataDir[] = "plugin-data-dir"; 829 830// Specifies a command that should be used to launch the plugin process. Useful 831// for running the plugin process through purify or quantify. Ex: 832// --plugin-launcher="path\to\purify /Run=yes" 833const char kPluginLauncher[] = "plugin-launcher"; 834 835// Tells the plugin process the path of the plugin to load 836const char kPluginPath[] = "plugin-path"; 837 838// Causes the process to run as a plugin subprocess. 839const char kPluginProcess[] = "plugin"; 840 841// Causes the plugin process to display a dialog on launch. 842const char kPluginStartupDialog[] = "plugin-startup-dialog"; 843 844// Establishes a channel to the GPU process asynchronously and (re)launches it 845// if necessary when a renderer process starts. 846const char kPrelaunchGpuProcess[] = "prelaunch-gpu-process"; 847 848// Prints the pages on the screen. 849const char kPrint[] = "print"; 850 851// Runs a single process for each site (i.e., group of pages from the same 852// registered domain) the user visits. We default to using a renderer process 853// for each site instance (i.e., group of pages from the same registered 854// domain with script connections to each other). 855const char kProcessPerSite[] = "process-per-site"; 856 857// Runs each set of script-connected tabs (i.e., a BrowsingInstance) in its own 858// renderer process. We default to using a renderer process for each 859// site instance (i.e., group of pages from the same registered domain with 860// script connections to each other). 861const char kProcessPerTab[] = "process-per-tab"; 862 863// The value of this switch determines whether the process is started as a 864// renderer or plugin host. If it's empty, it's the browser. 865const char kProcessType[] = "type"; 866 867// Output the product version information and quit. Used as an internal api to 868// detect the installed version of Chrome on Linux. 869const char kProductVersion[] = "product-version"; 870 871// Causes the process to run as a profile import subprocess. 872const char kProfileImportProcess[] = "profile-import"; 873 874// Force proxy auto-detection. 875const char kProxyAutoDetect[] = "proxy-auto-detect"; 876 877// Specify a list of hosts for whom we bypass proxy settings and use direct 878// connections. Ignored if --proxy-auto-detect or --no-proxy-server are 879// also specified. 880// This is a comma separated list of bypass rules. See: 881// "net/proxy/proxy_bypass_rules.h" for the format of these rules. 882const char kProxyBypassList[] = "proxy-bypass-list"; 883 884// Use the pac script at the given URL 885const char kProxyPacUrl[] = "proxy-pac-url"; 886 887// Use a specified proxy server, overrides system settings. This switch only 888// affects HTTP and HTTPS requests. 889const char kProxyServer[] = "proxy-server"; 890 891// Adds a "Purge memory" button to the Task Manager, which tries to dump as 892// much memory as possible. This is mostly useful for testing how well the 893// MemoryPurger functionality works. 894// 895// NOTE: This is only implemented for Views. 896const char kPurgeMemoryButton[] = "purge-memory-button"; 897 898// Chrome supports a playback and record mode. Record mode saves *everything* 899// to the cache. Playback mode reads data exclusively from the cache. This 900// allows us to record a session into the cache and then replay it at will. 901// See also kPlaybackMode. 902const char kRecordMode[] = "record-mode"; 903 904// Register pepper plugins that should be loaded into the renderer. 905const char kRegisterPepperPlugins[] = "register-pepper-plugins"; 906 907// Enable remote debug over HTTP on the specified port. 908const char kRemoteDebuggingPort[] = "remote-debugging-port"; 909 910// Enable remote debug / automation shell on the specified port. 911const char kRemoteShellPort[] = "remote-shell-port"; 912 913// Causes the renderer process to throw an assertion on launch. 914const char kRendererAssertTest[] = "renderer-assert-test"; 915 916#if !defined(OFFICIAL_BUILD) 917// Causes the renderer process to throw an assertion on launch. 918const char kRendererCheckFalseTest[] = "renderer-check-false-test"; 919#endif 920 921// On POSIX only: the contents of this flag are prepended to the renderer 922// command line. Useful values might be "valgrind" or "xterm -e gdb --args". 923const char kRendererCmdPrefix[] = "renderer-cmd-prefix"; 924 925// Causes the renderer process to crash on launch. 926const char kRendererCrashTest[] = "renderer-crash-test"; 927 928// Causes the process to run as renderer instead of as browser. 929const char kRendererProcess[] = "renderer"; 930 931// Causes the renderer process to display a dialog on launch. 932const char kRendererStartupDialog[] = "renderer-startup-dialog"; 933 934// Indicates the last session should be restored on startup. This overrides 935// the preferences value and is primarily intended for testing. The value of 936// this switch is the number of tabs to wait until loaded before 937// 'load completed' is sent to the ui_test. 938const char kRestoreLastSession[] = "restore-last-session"; 939 940// Runs the plugin processes inside the sandbox. 941const char kSafePlugins[] = "safe-plugins"; 942 943// URL prefix used by safebrowsing to fetch hash, download data and 944// report malware. 945const char kSbInfoURLPrefix[] = "safebrowsing-info-url-prefix"; 946 947// URL prefix used by safebrowsing to get MAC key. 948const char kSbMacKeyURLPrefix[] = "safebrowsing-mackey-url-prefix"; 949 950// If present, safebrowsing only performs update when 951// SafeBrowsingProtocolManager::ForceScheduleNextUpdate() is explicitly called. 952// This is used for testing only. 953const char kSbDisableAutoUpdate[] = "safebrowsing-disable-auto-update"; 954 955// Enable support for SDCH filtering (dictionary based expansion of content). 956// Optional argument is *the* only domain name that will have SDCH suppport. 957// Default is "-enable-sdch" to advertise SDCH on all domains. 958// Sample usage with argument: "-enable-sdch=.google.com" 959// SDCH is currently only supported server-side for searches on google.com. 960const char kSdchFilter[] = "enable-sdch"; 961 962// Enables the showing of an info-bar instructing user they can search directly 963// from the omnibox. 964const char kSearchInOmniboxHint[] = "search-in-omnibox-hint"; 965 966// Causes the process to run as a service process. 967const char kServiceProcess[] = "service"; 968 969// The LSID of the account to use for the service process. 970const char kServiceAccountLsid[] = "service-account-lsid"; 971 972// See kHideIcons. 973const char kShowIcons[] = "show-icons"; 974 975// If true the instant opt-in promo is shown in the omnibox. 976const char kShowInstantOptIn[] = "show-instant-opt-in"; 977 978// Renders a border around composited Render Layers to help debug and study 979// layer compositing. 980const char kShowCompositedLayerBorders[] = "show-composited-layer-borders"; 981 982// Visibly render a border around paint rects in the web page to help debug 983// and study painting behavior. 984const char kShowPaintRects[] = "show-paint-rects"; 985 986// Change the DCHECKS to dump memory and continue instead of displaying error 987// dialog. This is valid only in Release mode when --enable-dcheck is 988// specified. 989const char kSilentDumpOnDCHECK[] = "silent-dump-on-dcheck"; 990 991// Replaces the buffered data source for <audio> and <video> with a simplified 992// resource loader that downloads the entire resource into memory. 993// 994// TODO(scherkus): remove --simple-data-source when our media resource loading 995// is cleaned up and playback testing completed. 996const char kSimpleDataSource[] = "simple-data-source"; 997 998// Runs the renderer and plugins in the same process as the browser 999const char kSingleProcess[] = "single-process"; 1000 1001// Start the browser maximized, regardless of any previous settings. 1002const char kStartMaximized[] = "start-maximized"; 1003 1004// Allow insecure XMPP connections for sync (for testing). 1005const char kSyncAllowInsecureXmppConnection[] = 1006 "sync-allow-insecure-xmpp-connection"; 1007 1008// Invalidate any login info passed into sync's XMPP connection. 1009const char kSyncInvalidateXmppLogin[] = "sync-invalidate-xmpp-login"; 1010 1011// Use the SyncerThread implementation that matches up with the old pthread 1012// impl semantics, but using Chrome synchronization primitives. The only 1013// difference between this and the default is that we now have no timeout on 1014// Stop(). Should only use if you experience problems with the default. 1015const char kSyncerThreadTimedStop[] = "syncer-thread-timed-stop"; 1016 1017// Override the default notification method for sync. 1018const char kSyncNotificationMethod[] = "sync-notification-method"; 1019 1020// Override the default host used for sync notifications. Can be either 1021// "host" or "host:port". 1022const char kSyncNotificationHost[] = "sync-notification-host"; 1023 1024// Override the default server used for profile sync. 1025const char kSyncServiceURL[] = "sync-url"; 1026 1027// Try to connect to XMPP using SSLTCP first (for testing). 1028const char kSyncTrySsltcpFirstForXmpp[] = "sync-try-ssltcp-first-for-xmpp"; 1029 1030// Pass the name of the current running automated test to Chrome. 1031const char kTestName[] = "test-name"; 1032 1033// Runs the security test for the renderer sandbox. 1034const char kTestSandbox[] = "test-sandbox"; 1035 1036// Runs the security test for the NaCl loader sandbox. 1037const char kTestNaClSandbox[] = "test-nacl-sandbox"; 1038 1039// Pass the type of the current test harness ("browser" or "ui") 1040const char kTestType[] = "test-type"; 1041 1042// The value of this switch tells the app to listen for and broadcast 1043// testing-related messages on IPC channel with the given ID. 1044const char kTestingChannelID[] = "testing-channel"; 1045 1046// Excludes these plugins from the plugin sandbox. 1047// This is a comma-separated list of plugin library names. 1048const char kTrustedPlugins[] = "trusted-plugins"; 1049 1050// Experimental. Shows a dialog asking the user to try chrome. This flag 1051// is to be used only by the upgrade process. 1052const char kTryChromeAgain[] = "try-chrome-again"; 1053 1054// Runs un-installation steps that were done by chrome first-run. 1055const char kUninstall[] = "uninstall"; 1056 1057// Use Spdy for the transport protocol instead of HTTP. 1058// This is a temporary testing flag. 1059const char kUseSpdy[] = "use-spdy"; 1060 1061// Ignore certificate related errors. 1062const char kIgnoreCertificateErrors[] = "ignore-certificate-errors"; 1063 1064// Set the maximum SPDY sessions per domain. 1065const char kMaxSpdySessionsPerDomain[] = "max-spdy-sessions-per-domain"; 1066 1067// Set the maximum concurrent streams over a SPDY session. 1068const char kMaxSpdyConcurrentStreams[] = "max-spdy-concurrent-streams"; 1069 1070// Grant unlimited quota to store files to this process. 1071// Used for testing Pepper's FileRef/FileIO/FileSystem implementations. 1072// DO NOT USE FOR OTHER PURPOSES. 1073// TODO(dumi): remove the switch when we have a real quota implementation. 1074const char kUnlimitedQuotaForFiles[] = "unlimited-quota-for-files"; 1075 1076// This is for testing IndexedDB and will give any website you visit unlimited 1077// quota in IndexedDB. This should only be used for development and not general 1078// browsing. It is ignored in single process mode. 1079const char kUnlimitedQuotaForIndexedDB[] = "unlimited-quota-for-indexeddb"; 1080 1081// Use the low fragmentation heap for the CRT. 1082const char kUseLowFragHeapCrt[] = "use-lf-heap"; 1083 1084// A string used to override the default user agent with a custom one. 1085const char kUserAgent[] = "user-agent"; 1086 1087// Specifies the user data directory, which is where the browser will look 1088// for all of its state. 1089const char kUserDataDir[] = "user-data-dir"; 1090 1091// directory to locate user scripts in as an over-ride of the default 1092const char kUserScriptsDir[] = "user-scripts-dir"; 1093 1094// On POSIX only: the contents of this flag are prepended to the utility 1095// process command line. Useful values might be "valgrind" or "xterm -e gdb 1096// --args". 1097const char kUtilityCmdPrefix[] = "utility-cmd-prefix"; 1098 1099// Causes the process to run as a utility subprocess. 1100const char kUtilityProcess[] = "utility"; 1101 1102// The utility process is sandboxed, with access to one directory. This flag 1103// specifies the directory that can be accessed. 1104const char kUtilityProcessAllowedDir[] = "utility-allowed-dir"; 1105 1106// Print version information and quit. 1107const char kVersion[] = "version"; 1108 1109// Will add kWaitForDebugger to every child processes. If a value is passed, it 1110// will be used as a filter to determine if the child process should have the 1111// kWaitForDebugger flag passed on or not. 1112const char kWaitForDebuggerChildren[] = "wait-for-debugger-children"; 1113 1114// Causes the worker process allocation to use as many processes as cores. 1115const char kWebWorkerProcessPerCore[] = "web-worker-process-per-core"; 1116 1117// Causes workers to run together in one process, depending on their domains. 1118// Note this is duplicated in webworkerclient_impl.cc 1119const char kWebWorkerShareProcesses[] = "web-worker-share-processes"; 1120 1121// Use WinHTTP to fetch and evaluate PAC scripts. Otherwise the default is 1122// to use Chromium's network stack to fetch, and V8 to evaluate. 1123const char kWinHttpProxyResolver[] = "winhttp-proxy-resolver"; 1124 1125// Causes the process to run as a worker subprocess. 1126const char kWorkerProcess[] = "worker"; 1127 1128// The prefix used when starting the zygote process. (i.e. 'gdb --args') 1129const char kZygoteCmdPrefix[] = "zygote-cmd-prefix"; 1130 1131// Causes the process to run as a renderer zygote. 1132const char kZygoteProcess[] = "zygote"; 1133 1134#if defined(OS_CHROMEOS) 1135// Enable the redirection of viewable document requests to the Google 1136// Document Viewer. 1137const char kEnableGView[] = "enable-gview"; 1138 1139// Should we show the image based login? 1140const char kEnableLoginImages[] = "enable-login-images"; 1141 1142// Enable Chrome-as-a-login-manager behavior. 1143const char kLoginManager[] = "login-manager"; 1144 1145// Allows to override the first login screen. The value should be the name 1146// of the first login screen to show (see 1147// chrome/browser/chromeos/login/login_wizard_view.cc for actual names). 1148// Ignored if kLoginManager is not specified. 1149// TODO(avayvod): Remove when the switch is no longer needed for testing. 1150const char kLoginScreen[] = "login-screen"; 1151 1152// Allows control over the initial login screen size. Pass width,height. 1153const char kLoginScreenSize[] = "login-screen-size"; 1154 1155// Attempts to load libcros and validate it, then exits. A nonzero return code 1156// means the library could not be loaded correctly. 1157const char kTestLoadLibcros[] = "test-load-libcros"; 1158 1159// Specifies the profile to use once a chromeos user is logged in. 1160const char kLoginProfile[] = "login-profile"; 1161 1162// Specifies the user which is already logged in. 1163const char kLoginUser[] = "login-user"; 1164// Specifies a password to be used to login (along with login-user). 1165const char kLoginPassword[] = "login-password"; 1166 1167// Attempts to perform Chrome OS offline and online login in parallel. 1168const char kParallelAuth[] = "parallel-auth"; 1169 1170// Use the frame layout used in chromeos. 1171const char kChromeosFrame[] = "chromeos-frame"; 1172 1173// Use the given language for UI in the input method candidate window. 1174const char kCandidateWindowLang[] = "lang"; 1175 1176// Indicates that the browser is in "browse without sign-in" (Guest session) 1177// mode. Should completely disable extensions, sync and bookmarks. 1178const char kGuestSession[] = "bwsi"; 1179 1180// Indicates that stub implementations of the libcros library should be used. 1181// This is typically used to test the chromeos build of chrome on the desktop. 1182const char kStubCros[] = "stub-cros"; 1183 1184// URL of the html page for Screen Saver. 1185const char kScreenSaverUrl[] = "screen-saver-url"; 1186 1187// Flag to trigger ChromeOS system log compression during feedback submit. 1188const char kCompressSystemFeedback[] = "compress-sys-feedback"; 1189 1190// Forces usage of libcros stub implementation. For testing purposes, this 1191// switch separates chrome code from the rest of ChromeOS. 1192const char kForceStubLibcros[] = "force-stub-libcros"; 1193 1194// Enables DOMUI menu. 1195const char kEnableDOMUIMenu[] = "enable-domui-menu"; 1196 1197#endif 1198 1199#if defined(OS_LINUX) 1200// Specify the amount the trackpad should scroll by. 1201const char kScrollPixels[] = "scroll-pixels"; 1202#endif 1203 1204#if defined(OS_MACOSX) || defined(OS_WIN) 1205// Use the system SSL library (Secure Transport on Mac, SChannel on Windows) 1206// instead of NSS for SSL. 1207const char kUseSystemSSL[] = "use-system-ssl"; 1208#endif 1209 1210#if defined(OS_POSIX) 1211// A flag, generated internally by Chrome for renderer and other helper process 1212// command lines on Linux and Mac. It tells the helper process to enable crash 1213// dumping and reporting, because helpers cannot access the profile or other 1214// files needed to make this decision. 1215const char kEnableCrashReporter[] = "enable-crash-reporter"; 1216 1217// Bypass the error dialog when the profile lock couldn't be attained. 1218// This switch is used during automated testing. 1219const char kNoProcessSingletonDialog[] = "no-process-singleton-dialog"; 1220 1221#if !defined(OS_MACOSX) 1222// Specifies which password store to use (detect, default, gnome, kwallet). 1223const char kPasswordStore[] = "password-store"; 1224#endif 1225#endif 1226 1227#if defined(OS_MACOSX) 1228// Temporary flag to disable hole punching for accelerated surfaces. This is 1229// here to aid debugging eventual problems, it can be removed once hole punching 1230// has been out there for a few dev channel releases without problems. 1231const char kDisableHolePunching[] = "disable-hole-punching"; 1232 1233// Enables the tabs expose feature ( http://crbug.com/50307 ). 1234const char kEnableExposeForTabs[] = "enable-expose-for-tabs"; 1235 1236// Cause the OS X sandbox write to syslog every time an access to a resource 1237// is denied by the sandbox. 1238const char kEnableSandboxLogging[] = "enable-sandbox-logging"; 1239 1240 1241// Temporary flag to revert to the old WorkerPool implementation. 1242// This will be removed once we either fix the Mac WorkerPool 1243// implementation, or completely switch to the shared (with Linux) 1244// implementation. 1245const char kDisableLinuxWorkerPool[] = "disable-linux-worker-pool"; 1246#else 1247// Enable Kiosk mode. 1248const char kKioskMode[] = "kiosk"; 1249#endif 1250 1251#ifndef NDEBUG 1252// Clear the token service before using it. This allows simulating 1253// the expiration of credentials during testing. 1254const char kClearTokenService[] = "clear-token-service"; 1255 1256// Debug only switch to specify which gears plugin dll to load. 1257const char kGearsPluginPathOverride[] = "gears-plugin-path"; 1258 1259// Sets a token in the token service, for testing. 1260const char kSetToken[] = "set-token"; 1261 1262// Debug only switch to specify which websocket live experiment host to be used. 1263// If host is specified, it also makes initial delay shorter (5 min to 5 sec) 1264// to make it faster to test websocket live experiment code. 1265const char kWebSocketLiveExperimentHost[] = "websocket-live-experiment-host"; 1266#endif 1267 1268// USE_SECCOMP_SANDBOX controls whether the seccomp sandbox is opt-in or -out. 1269// TODO(evan): unify all of these once we turn the seccomp sandbox always 1270// on. Also remove the #include of command_line.h above. 1271#if defined(USE_SECCOMP_SANDBOX) 1272// Disable the seccomp sandbox (Linux only) 1273const char kDisableSeccompSandbox[] = "disable-seccomp-sandbox"; 1274#else 1275// Enable the seccomp sandbox (Linux only) 1276const char kEnableSeccompSandbox[] = "enable-seccomp-sandbox"; 1277#endif 1278 1279bool SeccompSandboxEnabled() { 1280#if defined(USE_SECCOMP_SANDBOX) 1281 return !CommandLine::ForCurrentProcess()->HasSwitch( 1282 switches::kDisableSeccompSandbox); 1283#else 1284 return CommandLine::ForCurrentProcess()->HasSwitch( 1285 switches::kEnableSeccompSandbox); 1286#endif 1287} 1288 1289// ----------------------------------------------------------------------------- 1290// DO NOT ADD YOUR CRAP TO THE BOTTOM OF THIS FILE. 1291// 1292// You were going to just dump your switches here, weren't you? Instead, 1293// please put them in alphabetical order above, or in order inside the 1294// appropriate ifdef at the bottom. The order should match the header. 1295// ----------------------------------------------------------------------------- 1296 1297} // namespace switches 1298