chrome_switches.h revision 3f50c38dc070f4bb515c1b64450dae14f316474e
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// Defines all the command-line switches used by Chrome.
6
7#ifndef CHROME_COMMON_CHROME_SWITCHES_H_
8#define CHROME_COMMON_CHROME_SWITCHES_H_
9#pragma once
10
11#include "build/build_config.h"
12#include "base/base_switches.h"
13
14namespace switches {
15
16// -----------------------------------------------------------------------------
17// Can't find the switch you are looking for? Try looking in
18// base/base_switches.cc instead.
19// -----------------------------------------------------------------------------
20
21// All switches in alphabetical order. The switches should be documented
22// alongside the definition of their values in the .cc file.
23extern const char kActivateOnLaunch[];
24extern const char kAllowFileAccessFromFiles[];
25extern const char kAllowFileAccess[];
26extern const char kAllowOutdatedPlugins[];
27extern const char kAllowSSLMITMProxies[];
28extern const char kAllowSandboxDebugging[];
29extern const char kAllowScriptingGallery[];
30extern const char kAlwaysEnableDevTools[];
31extern const char kApp[];
32extern const char kAppId[];
33extern const char kAppsGalleryReturnTokens[];
34extern const char kAppsGalleryURL[];
35extern const char kAppsGalleryUpdateURL[];
36extern const char kAppsNoThrob[];
37extern const char kAuthNegotiateDelegateWhitelist[];
38extern const char kAuthSchemes[];
39extern const char kAuthServerWhitelist[];
40extern const char kAutomationClientChannelID[];
41extern const char kBrowserAssertTest[];
42extern const char kBrowserCrashTest[];
43extern const char kBrowserSubprocessPath[];
44extern const char kCheckForUpdateIntervalSec[];
45extern const char kChromeFrame[];
46extern const char kChromeVersion[];
47extern const char kCloudPrintProxyId[];
48extern const char kCloudPrintServiceURL[];
49extern const char kConflictingModulesCheck[];
50extern const char kCountry[];
51extern const char kDebugPrint[];
52extern const char kDeviceManagementUrl[];
53extern const char kDiagnostics[];
54extern const char kDisable3DAPIs[];
55extern const char kDisableAcceleratedCompositing[];
56extern const char kDisableAcceleratedVideo[];
57extern const char kDisableAltWinstation[];
58extern const char kDisableApplicationCache[];
59extern const char kDisableAudio[];
60extern const char kDisableAuthNegotiateCnameLookup[];
61extern const char kDisableBackgroundMode[];
62extern const char kDisableBackgroundNetworking[];
63extern const char kDisableBackingStoreLimit[];
64extern const char kDisableBlockContentAnimation[];
65extern const char kDisableConnectBackupJobs[];
66extern const char kDisableContentPrefetch[];
67extern const char kDisableCustomJumpList[];
68extern const char kDisableDatabases[];
69extern const char kDisableDesktopNotifications[];
70extern const char kDisableDevTools[];
71extern const char kDisableDeviceOrientation[];
72extern const char kDisableEnforcedThrottling[];
73extern const char kDisableExperimentalWebGL[];
74extern const char kDisableExtensionsFileAccessCheck[];
75extern const char kDisableExtensions[];
76extern const char kDisableFileSystem[];
77extern const char kDisableFlashSandbox[];
78extern const char kDisableGLSLTranslator[];
79extern const char kDisableGeolocation[];
80extern const char kDisableGpuWatchdog[];
81extern const char kDisableHangMonitor[];
82extern const char kDisableHistoryQuickProvider[];
83extern const char kDisableHistoryURLProvider[];
84extern const char kDisableInternalFlash[];
85extern const char kDisableIndexedDatabase[];
86extern const char kDisableIPv6[];
87extern const char kDisableJavaScript[];
88extern const char kDisableJava[];
89extern const char kDisableLocalStorage[];
90extern const char kDisableLogging[];
91extern const char kDisableNewTabFirstRun[];
92extern const char kDisablePlugins[];
93extern const char kDisablePopupBlocking[];
94extern const char kDisablePreconnect[];
95extern const char kDisablePromptOnRepost[];
96extern const char kDisableRemoteFonts[];
97extern const char kDisableRendererAccessibility[];
98extern const char kDisableRestoreBackgroundContents[];
99extern const char kDisableSessionStorage[];
100extern const char kDisableSharedWorkers[];
101extern const char kDisableSiteSpecificQuirks[];
102extern const char kDisableSpeechInput[];
103extern const char kDisableSSLFalseStart[];
104extern const char kDisableSync[];
105extern const char kDisableSyncApps[];
106extern const char kDisableSyncAutofill[];
107extern const char kDisableSyncAutofillProfile[];
108extern const char kDisableSyncBookmarks[];
109extern const char kDisableSyncExtensions[];
110extern const char kDisableSyncPreferences[];
111extern const char kDisableSyncThemes[];
112extern const char kDisableTabbedOptions[];
113extern const char kDisableTabCloseableStateWatcher[];
114extern const char kDisableTranslate[];
115extern const char kDisableWebResources[];
116extern const char kDisableWebSecurity[];
117extern const char kDisableWebSockets[];
118extern const char kDiskCacheDir[];
119extern const char kDiskCacheSize[];
120extern const char kDnsLogDetails[];
121extern const char kDnsPrefetchDisable[];
122extern const char kDnsServer[];
123extern const char kDomAutomationController[];
124extern const char kDumpHistogramsOnExit[];
125extern const char kEnableAccelerated2dCanvas[];
126extern const char kEnableAcceleratedLayers[];
127extern const char kEnableAccessibility[];
128extern const char kEnableAeroPeekTabs[];
129extern const char kEnableAuthNegotiatePort[];
130extern const char kEnableBenchmarking[];
131extern const char kEnableClientSidePhishingDetection[];
132extern const char kEnableClearServerData[];
133extern const char kEnableClickToPlay[];
134extern const char kEnableCloudPrintProxy[];
135extern const char kEnableCloudPrint[];
136extern const char kEnableConfirmToQuit[];
137extern const char kEnableConnectBackupJobs[];
138extern const char kEnableContentPrefetch[];
139extern const char kEnableCrxlessWebApps[];
140extern const char kEnableDeviceMotion[];
141extern const char kEnableDNSCertProvenanceChecking[];
142extern const char kEnableDNSSECCerts[];
143extern const char kEnableExperimentalExtensionApis[];
144extern const char kEnableExtensionTimelineApi[];
145extern const char kEnableFastback[];
146extern const char kEnableFileCookies[];
147extern const char kEnableGPUPlugin[];
148extern const char kEnableIPv6[];
149extern const char kEnableLogging[];
150extern const char kEnableMemoryInfo[];
151extern const char kEnableMonitorProfile[];
152extern const char kEnableNaCl[];
153extern const char kEnableNaClDebug[];
154extern const char kEnableNativeWebWorkers[];
155extern const char kEnablePagePrerender[];
156extern const char kEnableSyncNewAutofill[];
157extern const char kEnablePreconnect[];
158extern const char kEnablePredictiveInstant[];
159extern const char kEnablePredictiveNoAutoCompleteInstant[];
160extern const char kEnablePreparsedJsCaching[];
161extern const char kEnablePrintPreview[];
162extern const char kEnableRemoting[];
163extern const char kEnableResourceContentSettings[];
164extern const char kEnableSearchProviderApiV2[];
165extern const char kEnableSnapStart[];
166extern const char kEnableSpeechInput[];
167extern const char kEnableStatsTable[];
168extern const char kEnableSync[];
169extern const char kEnableSyncAutofill[];
170extern const char kEnableSyncPasswords[];
171extern const char kEnableSyncPreferences[];
172extern const char kEnableSyncSessions[];
173extern const char kEnableSyncTypedUrls[];
174extern const char kEnableTcpFastOpen[];
175extern const char kEnableTopSites[];
176extern const char kEnableTouch[];
177extern const char kEnableVerbatimInstant[];
178extern const char kEnableVerticalTabs[];
179extern const char kEnableVideoFullscreen[];
180extern const char kEnableVideoLogging[];
181extern const char kEnableWatchdog[];
182extern const char kEnableXSSAuditor[];
183// Experimental features.
184extern const char kExperimentalLocationFeatures[];
185extern const char kExperimentalSpellcheckerFeatures[];
186// End experimental features.
187extern const char kExplicitlyAllowedPorts[];
188extern const char kExtensionProcess[];
189extern const char kExtensionsUpdateFrequency[];
190extern const char kFlagSwitchesBegin[];
191extern const char kFlagSwitchesEnd[];
192extern const char kFeedbackServer[];
193extern const char kFileDescriptorLimit[];
194extern const char kFirstRun[];
195extern const char kForceAppsPromoVisible[];
196extern const char kForceFieldTestNameAndValue[];
197extern const char kForceInternalPDFPlugin[];
198extern const char kForceRendererAccessibility[];
199extern const char kForceStubLibcros[];
200extern const char kGpuLauncher[];
201extern const char kGpuProcess[];
202extern const char kGpuStartupDialog[];
203extern const char kGSSAPILibraryName[];
204extern const char kHelp[];
205extern const char kHelpShort[];
206extern const char kHideIcons[];
207extern const char kHomePage[];
208extern const char kHostRules[];
209extern const char kHostResolverParallelism[];
210extern const char kHostResolverRules[];
211extern const char kIgnoreGpuBlacklist[];
212extern const char kImport[];
213extern const char kImportFromFile[];
214extern const char kInProcessPlugins[];
215extern const char kInProcessWebGL[];
216extern const char kIncognito[];
217extern const char kInstantURL[];
218extern const char kInternalNaCl[];
219extern const char kInternalPepper[];
220extern const char kJavaScriptFlags[];
221extern const char kKeepAliveForTest[];
222extern const char kLoadExtension[];
223extern const char kUninstallExtension[];
224extern const char kLoadPlugin[];
225extern const char kExtraPluginDir[];
226extern const char kLogNetLog[];
227extern const char kLogPluginMessages[];
228extern const char kLoggingLevel[];
229extern const char kMakeDefaultBrowser[];
230extern const char kMediaCacheSize[];
231extern const char kMemoryProfiling[];
232extern const char kMessageLoopHistogrammer[];
233extern const char kMetricsRecordingOnly[];
234extern const char kNaClDebugIP[];
235extern const char kNaClDebugPorts[];
236extern const char kNaClBrokerProcess[];
237extern const char kNaClLoaderProcess[];
238extern const char kNaClStartupDialog[];
239extern const char kNoDefaultBrowserCheck[];
240extern const char kNoEvents[];
241extern const char kNoExperiments[];
242extern const char kNoFirstRun[];
243extern const char kNoGpuSandbox[];
244extern const char kNoJsRandomness[];
245extern const char kNoProxyServer[];
246extern const char kNoReferrers[];
247extern const char kNoPings[];
248extern const char kNoSandbox[];
249extern const char kNoStartupWindow[];
250extern const char kNotifyCloudPrintTokenExpired[];
251extern const char kNumPacThreads[];
252extern const char kOpenInNewWindow[];
253extern const char kOrganicInstall[];
254extern const char kPackExtension[];
255extern const char kPackExtensionKey[];
256extern const char kParentProfile[];
257extern const char kPlaybackMode[];
258extern const char kPluginDataDir[];
259extern const char kPluginLauncher[];
260extern const char kPluginPath[];
261extern const char kPluginProcess[];
262extern const char kPluginStartupDialog[];
263extern const char kPpapiOutOfProcess[];
264extern const char kPpapiPluginLauncher[];
265extern const char kPpapiPluginProcess[];
266extern const char kPpapiStartupDialog[];
267extern const char kPrelaunchGpuProcess[];
268extern const char kPrint[];
269extern const char kProcessPerSite[];
270extern const char kProcessPerTab[];
271extern const char kProcessType[];
272extern const char kProductVersion[];
273extern const char kProfileImportProcess[];
274extern const char kProxyAutoDetect[];
275extern const char kProxyBypassList[];
276extern const char kProxyPacUrl[];
277extern const char kProxyServer[];
278extern const char kPurgeMemoryButton[];
279extern const char kRecordMode[];
280extern const char kRegisterPepperPlugins[];
281extern const char kRemoteDebuggingPort[];
282extern const char kRemoteShellPort[];
283extern const char kRendererAssertTest[];
284extern const char kRendererCmdPrefix[];
285extern const char kRendererCrashTest[];
286extern const char kRendererProcess[];
287extern const char kRendererStartupDialog[];
288extern const char kRestoreLastSession[];
289extern const char kSafePlugins[];
290extern const char kSbInfoURLPrefix[];
291extern const char kSbMacKeyURLPrefix[];
292extern const char kSbDisableAutoUpdate[];
293extern const char kSbEnableDownloadProtection[];
294extern const char kSdchFilter[];
295extern const char kSearchInOmniboxHint[];
296extern const char kServiceProcess[];
297extern const char kServiceAccountLsid[];
298extern const char kShowCompositedLayerBorders[];
299extern const char kShowIcons[];
300extern const char kShowPaintRects[];
301extern const char kSilentDumpOnDCHECK[];
302extern const char kSimpleDataSource[];
303extern const char kSingleProcess[];
304extern const char kStartMaximized[];
305extern const char kSyncAllowInsecureXmppConnection[];
306extern const char kSyncInvalidateXmppLogin[];
307extern const char kSyncerThreadTimedStop[];
308extern const char kSyncNotificationMethod[];
309extern const char kSyncNotificationHost[];
310extern const char kSyncServiceURL[];
311extern const char kSyncTrySsltcpFirstForXmpp[];
312extern const char kTestNaClSandbox[];
313extern const char kTestName[];
314extern const char kTestSandbox[];
315extern const char kTestType[];
316extern const char kTestingChannelID[];
317extern const char kTrustedPlugins[];
318extern const char kTryChromeAgain[];
319extern const char kUninstall[];
320extern const char kUseSpdy[];
321extern const char kIgnoreCertificateErrors[];
322extern const char kMaxSpdySessionsPerDomain[];
323extern const char kMaxSpdyConcurrentStreams[];
324extern const char kUnlimitedQuotaForFiles[];
325extern const char kUnlimitedQuotaForIndexedDB[];
326extern const char kUseLowFragHeapCrt[];
327extern const char kUserAgent[];
328extern const char kUserDataDir[];
329extern const char kUserScriptsDir[];
330extern const char kUtilityCmdPrefix[];
331extern const char kUtilityProcess[];
332extern const char kUtilityProcessAllowedDir[];
333extern const char kVersion[];
334extern const char kWaitForDebuggerChildren[];
335extern const char kWebWorkerProcessPerCore[];
336extern const char kWebWorkerShareProcesses[];
337extern const char kWinHttpProxyResolver[];
338extern const char kWorkerProcess[];
339extern const char kZygoteCmdPrefix[];
340extern const char kZygoteProcess[];
341
342#if defined(OS_CHROMEOS)
343extern const char kEnableGView[];
344extern const char kEnableLoginImages[];
345extern const char kLoginManager[];
346// TODO(avayvod): Remove this flag when it's unnecessary for testing
347// purposes.
348extern const char kLoginScreen[];
349extern const char kLoginScreenSize[];
350extern const char kTestLoadLibcros[];
351extern const char kLoginProfile[];
352extern const char kLoginUser[];
353extern const char kLoginPassword[];
354extern const char kLoginUserWithNewPassword[];
355extern const char kParallelAuth[];
356extern const char kChromeosFrame[];
357extern const char kCandidateWindowLang[];
358extern const char kGuestSession[];
359extern const char kStubCros[];
360extern const char kScreenSaverUrl[];
361extern const char kCompressSystemFeedback[];
362extern const char kEnableDOMUIMenu[];
363extern const char kEnableMediaPlayer[];
364extern const char kEnableAdvancedFileSystem[];
365#endif
366
367#if defined(OS_LINUX)
368extern const char kScrollPixels[];
369#endif
370
371#if defined(OS_MACOSX) || defined(OS_WIN)
372extern const char kUseSystemSSL[];
373#endif
374
375#if defined(OS_POSIX)
376extern const char kEnableCrashReporter[];
377extern const char kNoProcessSingletonDialog[];
378#if !defined(OS_MACOSX)
379extern const char kPasswordStore[];
380#endif
381#endif
382
383#if defined(OS_MACOSX)
384extern const char kDisableHolePunching[];
385extern const char kEnableExposeForTabs[];
386extern const char kEnableSandboxLogging[];
387#else
388extern const char kKioskMode[];
389#endif
390
391#ifndef NDEBUG
392extern const char kClearTokenService[];
393extern const char kGearsPluginPathOverride[];
394extern const char kSetToken[];
395extern const char kWebSocketLiveExperimentHost[];
396#endif
397
398#if !defined(OFFICIAL_BUILD)
399extern const char kRendererCheckFalseTest[];
400#endif
401
402#if defined(HAVE_XINPUT2)
403extern const char kTouchDevices[];
404#endif
405
406extern const char kDisableSeccompSandbox[];
407extern const char kEnableSeccompSandbox[];
408
409// Return true if the switches indicate the seccomp sandbox is enabled.
410bool SeccompSandboxEnabled();
411
412// DON'T ADD RANDOM STUFF HERE. Put it in the main section above in
413// alphabetical order, or in one of the ifdefs (also in order in each section).
414
415}  // namespace switches
416
417#endif  // CHROME_COMMON_CHROME_SWITCHES_H_
418