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// 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
10#include "build/build_config.h"
11
12#include "base/base_switches.h"
13#include "components/autofill/core/common/autofill_switches.h"
14#include "content/public/common/content_switches.h"
15
16namespace switches {
17
18// -----------------------------------------------------------------------------
19// Can't find the switch you are looking for? Try looking in
20// media/base/media_switches.cc or ui/gl/gl_switches.cc or one of the
21// .cc files corresponding to the *_switches.h files included above
22// instead.
23// -----------------------------------------------------------------------------
24
25// All switches in alphabetical order. The switches should be documented
26// alongside the definition of their values in the .cc file.
27extern const char kAllowCreateExistingManagedUsers[];
28extern const char kAllowCrossOriginAuthPrompt[];
29extern const char kAllowFileAccess[];
30extern const char kAllowHTTPBackgroundPage[];
31extern const char kAllowHttpScreenCapture[];
32extern const char kAllowNaClCrxFsAPI[];
33extern const char kAllowNaClFileHandleAPI[];
34extern const char kAllowNaClSocketAPI[];
35extern const char kAllowOutdatedPlugins[];
36extern const char kAllowRunningInsecureContent[];
37extern const char kAlwaysAuthorizePlugins[];
38extern const char kAppId[];
39extern const char kApp[];
40extern const char kAppsDevtool[];
41extern const char kAppWindowSize[];
42extern const char kAppsCheckoutURL[];
43extern const char kAppsGalleryDownloadURL[];
44extern const char kAppsGalleryInstallAutoConfirmForTests[];
45extern const char kAppsGalleryURL[];
46extern const char kAppsGalleryUpdateURL[];
47extern const char kAppModeAuthCode[];
48extern const char kAppModeOAuth2Token[];
49extern const char kAppsNewInstallBubble[];
50extern const char kAppsNoThrob[];
51extern const char kAppsUseNativeFrame[];
52extern const char kAuthExtensionPath[];
53extern const char kAuthNegotiateDelegateWhitelist[];
54extern const char kAuthSchemes[];
55extern const char kAuthServerWhitelist[];
56extern const char kAutoLaunchAtStartup[];
57extern const char kAutomationClientChannelID[];
58extern const char kAutomationReinitializeOnChannelError[];
59extern const char kCancelFirstRun[];
60extern const char kCheckForUpdateIntervalSec[];
61extern const char kCheckCloudPrintConnectorPolicy[];
62extern const char kChromeFrame[];
63extern const char kChromeVersion[];
64extern const char kCipherSuiteBlacklist[];
65extern const char kClearTokenService[];
66extern const char kCloudPolicyInvalidationDelay[];
67extern const char kCloudPrintDeleteFile[];
68extern const char kCloudPrintFile[];
69extern const char kCloudPrintJobTitle[];
70extern const char kCloudPrintFileType[];
71extern const char kCloudPrintPrintTicket[];
72extern const char kCloudPrintSetupProxy[];
73extern const char kCloudPrintServiceURL[];
74extern const char kComponentUpdater[];
75extern const char kConflictingModulesCheck[];
76extern const char kContentSettings2[];
77extern const char kCountry[];
78extern const char kCrashOnHangThreads[];
79extern const char kCreateBrowserOnStartupForTests[];
80extern const char kDebugEnableFrameToggle[];
81extern const char kDebugPackedApps[];
82extern const char kDebugPrint[];
83extern const char kDeviceManagementUrl[];
84extern const char kDiagnostics[];
85extern const char kDiagnosticsFormat[];
86extern const char kDiagnosticsRecovery[];
87extern const char kDisableAppList[];
88extern const char kDisableAsyncDns[];
89extern const char kDisableAuthNegotiateCnameLookup[];
90extern const char kDisableBackgroundMode[];
91extern const char kDisableBackgroundNetworking[];
92extern const char kDisableBetterPopupBlocking[];
93extern const char kDisableBundledPpapiFlash[];
94extern const char kDisableBookmarkAutocompleteProvider[];
95extern const char kDisableClientSidePhishingDetection[];
96extern const char kDisableCloudPolicyOnSignin[];
97extern const char kDisableComponentUpdate[];
98extern const char kDisableCRLSets[];
99extern const char kDisableCustomJumpList[];
100extern const char kDisableDefaultApps[];
101extern const char kDisableDhcpWpad[];
102extern const char kDisableDnsProbes[];
103extern const char kDisableExtensionsFileAccessCheck[];
104extern const char kDisableExtensionsHttpThrottling[];
105extern const char kDisableExtensionsResourceWhitelist[];
106extern const char kDisableExtensions[];
107extern const char kDisableImprovedDownloadProtection[];
108extern const char kDisableInstantExtendedAPI[];
109extern const char kDisableIPv6[];
110extern const char kDisableIPPooling[];
111extern const char kDisableLocalFirstLoadNTP[];
112extern const char kDisableMinimizeOnSecondLauncherItemClick[];
113extern const char kDisableNTPOtherSessionsMenu[];
114extern const char kDisableOmniboxAutoCompletionForIme[];
115extern const char kDisablePasswordAutofillPublicSuffixDomainMatching[];
116extern const char kDisablePnaclInstall[];
117extern const char kDisablePopupBlocking[];
118extern const char kDisablePreconnect[];
119extern const char kDisablePrerenderLocalPredictor[];
120extern const char kDisablePromptOnRepost[];
121extern const char kDisableQuic[];
122extern const char kDisableQuicHttps[];
123extern const char kDisableRestoreBackgroundContents[];
124extern const char kDisableRestoreSessionState[];
125extern const char kDisableScriptedPrintThrottling[];
126extern const char kDisableSpdy31[];
127extern const char kDisableSync[];
128extern const char kDisableSyncAppSettings[];
129extern const char kDisableSyncApps[];
130extern const char kDisableSyncAutofill[];
131extern const char kDisableSyncAutofillProfile[];
132extern const char kDisableSyncBookmarks[];
133extern const char kDisableSyncDictionary[];
134extern const char kDisableSyncExtensionSettings[];
135extern const char kDisableSyncExtensions[];
136extern const char kDisableSyncFavicons[];
137extern const char kDisableSyncPasswords[];
138extern const char kDisableSyncPreferences[];
139extern const char kDisableSyncPriorityPreferences[];
140extern const char kDisableSyncSearchEngines[];
141extern const char kDisableSyncSyncedNotifications[];
142extern const char kDisableSyncTabs[];
143extern const char kDisableSyncThemes[];
144extern const char kDisableSyncTypedUrls[];
145extern const char kDisableTranslate[];
146extern const char kDisableTLSChannelID[];
147extern const char kDisableWebResources[];
148extern const char kDisableZeroBrowsersOpenForTests[];
149extern const char kDiskCacheDir[];
150extern const char kDiskCacheSize[];
151extern const char kDnsLogDetails[];
152extern const char kDnsPrefetchDisable[];
153extern const char kEasyOffStoreExtensionInstall[];
154extern const char kEnableAdview[];
155extern const char kEnableAdviewSrcAttribute[];
156extern const char kEnableAppList[];
157extern const char kEnableAppWindowControls[];
158extern const char kEnableAsyncDns[];
159extern const char kEnableAuthNegotiatePort[];
160extern const char kEnableAutologin[];
161extern const char kEnableBenchmarking[];
162extern const char kEnableCloudPolicyPush[];
163extern const char kEnableCloudPrintProxy[];
164extern const char kEnableComponentCloudPolicy[];
165extern const char kEnableContacts[];
166extern const char kEnableDeviceDiscovery[];
167extern const char kEnableDevToolsExperiments[];
168extern const char kEnableDnsProbes[];
169extern const char kEnableExtensionActivityLogging[];
170extern const char kEnableExtensionActivityLogTesting[];
171extern const char kEnableFastUnload[];
172extern const char kEnableFileCookies[];
173extern const char kEnableGoogleNowIntegration[];
174extern const char kEnableHttp2Draft04[];
175extern const char kEnableInstantExtendedAPI[];
176extern const char kEnableIPCFuzzing[];
177extern const char kEnableIPPooling[];
178extern const char kEnableIPv6[];
179extern const char kEnableLocalFirstLoadNTP[];
180extern const char kEnableManagedStorage[];
181extern const char kEnableManagedUsers[];
182extern const char kEnableMemoryInfo[];
183extern const char kEnableMetricsReportingForTesting[];
184extern const char kEnableNaCl[];
185extern const char kEnableNetBenchmarking[];
186extern const char kEnableNpn[];
187extern const char kEnableNpnHttpOnly[];
188extern const char kEnableOmniboxAutoCompletionForIme[];
189extern const char kEnablePanels[];
190extern const char kEnablePasswordAutofillPublicSuffixDomainMatching[];
191extern const char kEnablePasswordGeneration[];
192extern const char kEnablePnacl[];
193extern const char kEnableProfiling[];
194extern const char kEnableQuic[];
195extern const char kEnableQuicHttps[];
196extern const char kEnableQuickofficeViewing[];
197extern const char kEnableResetProfileSettings[];
198extern const char kEnableResourceContentSettings[];
199extern const char kEnableSavePasswordBubble[];
200extern const char kEnableSdch[];
201extern const char kEnableStickyKeys[];
202extern const char kDisableStickyKeys[];
203extern const char kDisableSpdy31[];
204extern const char kEnableSpdy4a2[];
205extern const char kEnableSpdyCredentialFrames[];
206extern const char kEnableSpellingAutoCorrect[];
207extern const char kEnableSpellingServiceFeedback[];
208extern const char kEnableStackedTabStrip[];
209extern const char kEnableSuggestionsTabPage[];
210extern const char kEnableSyncSyncedNotifications[];
211extern const char kEnableTabGroupsContextMenu[];
212extern const char kEnableThumbnailRetargeting[];
213extern const char kEnableTranslateSettings[];
214extern const char kEnableUnrestrictedSSL3Fallback[];
215extern const char kEnableUserAlternateProtocolPorts[];
216extern const char kEnableWatchdog[];
217extern const char kEnableWebSocketOverSpdy[];
218extern const char kExtensionsInActionBox[];
219extern const char kEventPageIdleTime[];
220extern const char kEventPageSuspendingTime[];
221extern const char kExplicitlyAllowedPorts[];
222extern const char kExtensionProcess[];
223extern const char kExtensionsUpdateFrequency[];
224extern const char kExtraSearchQueryParams[];
225extern const char kFakeVariationsChannel[];
226extern const char kFastStart[];
227extern const char kFlagSwitchesBegin[];
228extern const char kFlagSwitchesEnd[];
229extern const char kFeedbackServer[];
230extern const char kFileDescriptorLimit[];
231extern const char kForceAppMode[];
232extern const char kForceFirstRun[];
233extern const char kForceLoadCloudPolicy[];
234extern const char kGaiaProfileInfo[];
235extern const char kGoogleBaseURL[];
236extern const char kGoogleSearchDomainCheckURL[];
237extern const char kGSSAPILibraryName[];
238extern const char kHelp[];
239extern const char kHelpShort[];
240extern const char kHideIcons[];
241extern const char kHistoryDisableFullHistorySync[];
242extern const char kHistoryEnableGroupByDomain[];
243extern const char kHistoryWebHistoryUrl[];
244extern const char kHomePage[];
245extern const char kHostRules[];
246extern const char kHostResolverParallelism[];
247extern const char kHostResolverRetryAttempts[];
248extern const char kIgnoreUrlFetcherCertRequests[];
249extern const char kIncognito[];
250extern const char kInstallFromWebstore[];
251extern const char kInstantNewTabURL[];
252extern const char kInstantProcess[];
253extern const char kKeepAliveForTest[];
254extern const char kKioskMode[];
255extern const char kKioskModePrinting[];
256extern const char kLimitedInstallFromWebstore[];
257extern const char kLoadComponentExtension[];
258extern const char kLoadExtension[];
259extern const char kMakeDefaultBrowser[];
260extern const char kManagedUserSyncToken[];
261extern const char kMediaCacheSize[];
262extern const char kMemoryProfiling[];
263extern const char kMessageLoopHistogrammer[];
264extern const char kMetricsRecordingOnly[];
265extern const char kMultiProfiles[];
266extern const char kNativeMessagingHosts[];
267extern const char kNetLogLevel[];
268extern const char kNewProfileManagement[];
269extern const char kNoDefaultBrowserCheck[];
270extern const char kNoDisplayingInsecureContent[];
271extern const char kNoEvents[];
272extern const char kNoExperiments[];
273extern const char kNoFirstRun[];
274extern const char kNoJsRandomness[];
275extern const char kNoNetworkProfileWarning[];
276extern const char kNoProxyServer[];
277extern const char kNoPings[];
278extern const char kNoServiceAutorun[];
279extern const char kNoStartupWindow[];
280extern const char kNoManagedUserAcknowledgmentCheck[];
281extern const char kNtpAppInstallHint[];
282extern const char kNumPacThreads[];
283extern const char kOnlyBlockSettingThirdPartyCookies[];
284extern const char kOpenInNewWindow[];
285extern const char kOrganicInstall[];
286extern const char kOriginToForceQuicOn[];
287extern const char kOriginalProcessStartTime[];
288extern const char kPackExtension[];
289extern const char kPackExtensionKey[];
290extern const char kParentProfile[];
291extern const char kPerformanceMonitorGathering[];
292extern const char kPlaybackMode[];
293extern const char kPnaclDir[];
294extern const char kPpapiFlashInProcess[];
295extern const char kPpapiFlashPath[];
296extern const char kPpapiFlashVersion[];
297extern const char kPrerenderFromOmnibox[];
298extern const char kPrerenderFromOmniboxSwitchValueAuto[];
299extern const char kPrerenderFromOmniboxSwitchValueDisabled[];
300extern const char kPrerenderFromOmniboxSwitchValueEnabled[];
301extern const char kPrerenderMode[];
302extern const char kPrerenderModeSwitchValueAuto[];
303extern const char kPrerenderModeSwitchValueDisabled[];
304extern const char kPrerenderModeSwitchValueEnabled[];
305extern const char kPrerenderModeSwitchValuePrefetchOnly[];
306extern const char kProductVersion[];
307extern const char kProfileDirectory[];
308extern const char kProfilingAtStart[];
309extern const char kProfilingFile[];
310extern const char kProfilingFlush[];
311extern const char kProfilingOutputFile[];
312extern const char kPromoServerURL[];
313extern const char kPromptForExternalExtensions[];
314extern const char kProxyAutoDetect[];
315extern const char kProxyBypassList[];
316extern const char kProxyPacUrl[];
317extern const char kProxyServer[];
318extern const char kPurgeMemoryButton[];
319extern const char kRecordStats[];
320extern const char kRecordMode[];
321extern const char kRemoteDebuggingFrontend[];
322extern const char kRemoteDebuggingRawUSB[];
323extern const char kRendererPrintPreview[];
324extern const char kResetVariationState[];
325extern const char kRestoreLastSession[];
326extern const char kSavePageAsMHTML[];
327extern const char kSbURLPrefix[];
328extern const char kSbDisableAutoUpdate[];
329extern const char kSbDisableDownloadProtection[];
330extern const char kSbDisableExtensionBlacklist[];
331extern const char kSbDisableSideEffectFreeWhitelist[];
332extern const char kSbDownloadFeedbackURL[];
333extern const char kSbEnableDownloadFeedback[];
334extern const char kScriptBadges[];
335extern const char kScriptBubble[];
336extern const char kServiceProcess[];
337extern const char kSilentDebuggerExtensionAPI[];
338extern const char kSilentLaunch[];
339extern const char kSetToken[];
340extern const char kShowAppList[];
341extern const char kShowIcons[];
342extern const char kShowShelfAlignmentMenu[];
343extern const char kSigninProcess[];
344extern const char kSilentDumpOnDCHECK[];
345extern const char kSimulateUpgrade[];
346extern const char kSimulateCriticalUpdate[];
347extern const char kSimulateOutdated[];
348extern const char kSpeculativeResourcePrefetching[];
349extern const char kSpeculativeResourcePrefetchingDisabled[];
350extern const char kSpeculativeResourcePrefetchingLearning[];
351extern const char kSpdyProxyAuthOrigin[];
352extern const char kSpeculativeResourcePrefetchingEnabled[];
353extern const char kSpellingServiceFeedbackUrl[];
354extern const char kSpellingServiceFeedbackIntervalSeconds[];
355extern const char kSSLVersionMax[];
356extern const char kSSLVersionMin[];
357extern const char kStartMaximized[];
358extern const char kSuggestionNtpFilterWidth[];
359extern const char kSuggestionNtpGaussianFilter[];
360extern const char kSuggestionNtpLinearFilter[];
361extern const char kSyncAllowInsecureXmppConnection[];
362extern const char kSyncInvalidateXmppLogin[];
363extern const char kSyncShortInitialRetryOverride[];
364extern const char kSyncNotificationHostPort[];
365extern const char kSyncServiceURL[];
366extern const char kSyncThrowUnrecoverableError[];
367extern const char kSyncTrySsltcpFirstForXmpp[];
368extern const char kSyncEnableDeferredStartup[];
369extern const char kSyncDisableOAuth2Token[];
370extern const char kSyncEnableGetUpdateAvoidance[];
371extern const char kSyncfsEnableDirectoryOperation[];
372extern const char kTabBrowserDragging[];
373extern const char kTabCapture[];
374extern const char kTestName[];
375extern const char kTestType[];
376extern const char kTestingChannelID[];
377extern const char kTrackActiveVisitTime[];
378extern const char kTranslateScriptURL[];
379extern const char kTranslateSecurityOrigin[];
380extern const char kTrustedSpdyProxy[];
381extern const char kTryChromeAgain[];
382extern const char kUninstallExtension[];
383extern const char kUninstall[];
384extern const char kUnlimitedStorage[];
385extern const char kUseSimpleCacheBackend[];
386extern const char kUseSpdy[];
387extern const char kUseSpellingSuggestions[];
388extern const char kMaxSpdyConcurrentStreams[];
389extern const char kUserDataDir[];
390extern const char kValidateCrx[];
391extern const char kVariationsServerURL[];
392extern const char kVersion[];
393extern const char kVisitURLs[];
394extern const char kWhitelistedExtensionID[];
395extern const char kWindowPosition[];
396extern const char kWindowSize[];
397extern const char kWinHttpProxyResolver[];
398
399#if defined(ENABLE_PLUGIN_INSTALLATION)
400extern const char kPluginsMetadataServerURL[];
401#endif
402
403#if defined(OS_ANDROID) || defined(OS_IOS)
404extern const char kEnableSpdyProxyAuth[];
405#endif  // defined(OS_ANDROID) || defined(OS_IOS)
406
407#if defined(OS_ANDROID)
408extern const char kEnableNewNTP[];
409extern const char kEnableTranslate[];
410extern const char kFakeCloudPolicyType[];
411extern const char kTabletUI[];
412#endif
413
414#if defined(USE_ASH)
415extern const char kAshDisableTabScrubbing[];
416extern const char kOpenAsh[];
417#endif
418
419#if defined(OS_POSIX)
420extern const char kEnableCrashReporterForTesting[];
421#if !defined(OS_MACOSX) && !defined(OS_CHROMEOS)
422extern const char kPasswordStore[];
423#endif
424#endif
425
426#if defined(OS_MACOSX)
427extern const char kDisableSystemFullscreenForTesting[];
428extern const char kEnableAppListShim[];
429extern const char kEnableAppShims[];
430extern const char kEnableExposeForTabs[];
431extern const char kEnableSimplifiedFullscreen[];
432extern const char kKeychainReauthorize[];
433extern const char kRelauncherProcess[];
434extern const char kUseMockKeychain[];
435#endif
436
437#if defined(OS_WIN)
438extern const char kForceImmersive[];
439extern const char kForceDesktop[];
440extern const char kOverlappedRead[];
441extern const char kPrintRaster[];
442extern const char kRelaunchShortcut[];
443extern const char kWaitForMutex[];
444extern const char kWindows8Search[];
445#endif
446
447#if defined(OS_WIN) && defined(USE_AURA)
448extern const char kViewerConnect[];
449extern const char kViewerLaunchViaAppId[];
450#endif
451
452#ifndef NDEBUG
453extern const char kFileManagerExtensionPath[];
454extern const char kImageLoaderExtensionPath[];
455#endif
456
457#if defined(GOOGLE_CHROME_BUILD)
458extern const char kDisablePrintPreview[];
459#else
460extern const char kEnablePrintPreview[];
461#endif
462
463// DON'T ADD RANDOM STUFF HERE. Put it in the main section above in
464// alphabetical order, or in one of the ifdefs (also in order in each section).
465
466}  // namespace switches
467
468#endif  // CHROME_COMMON_CHROME_SWITCHES_H_
469