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 "content" command-line switches.
6 
7 #ifndef CONTENT_PUBLIC_COMMON_CONTENT_SWITCHES_H_
8 #define CONTENT_PUBLIC_COMMON_CONTENT_SWITCHES_H_
9 
10 #include "build/build_config.h"
11 #include "content/common/content_export.h"
12 #include "media/media_buildflags.h"
13 
14 namespace switches {
15 
16 // All switches in alphabetical order. The switches should be documented
17 // alongside the definition of their values in the .cc file.
18 CONTENT_EXPORT extern const char kAllowPreCommitInput[];
19 CONTENT_EXPORT extern const char kAllowFileAccessFromFiles[];
20 CONTENT_EXPORT extern const char kAllowInsecureLocalhost[];
21 CONTENT_EXPORT extern const char kAllowLoopbackInPeerConnection[];
22 CONTENT_EXPORT extern const char kAllowSyncXHRInPageDismissal[];
23 CONTENT_EXPORT extern const char kAndroidFontsPath[];
24 CONTENT_EXPORT extern const char kAppCacheForceEnabled[];
25 CONTENT_EXPORT extern const char kBrowserCrashTest[];
26 CONTENT_EXPORT extern const char kBrowserStartupDialog[];
27 CONTENT_EXPORT extern const char kBrowserSubprocessPath[];
28 CONTENT_EXPORT extern const char kBrowserTest[];
29 CONTENT_EXPORT extern const char kConversionsDebugMode[];
30 CONTENT_EXPORT extern const char kDisable2dCanvasAntialiasing[];
31 CONTENT_EXPORT extern const char kDisable2dCanvasImageChromium[];
32 CONTENT_EXPORT extern const char kDisable3DAPIs[];
33 CONTENT_EXPORT extern const char kDisableAccelerated2dCanvas[];
34 CONTENT_EXPORT extern const char kDisableYUVImageDecoding[];
35 CONTENT_EXPORT extern const char kDisableAcceleratedVideoEncode[];
36 extern const char kDisableBackingStoreLimit[];
37 CONTENT_EXPORT extern const char
38     kDisableBackgroundingOccludedWindowsForTesting[];
39 CONTENT_EXPORT extern const char kDisableBackgroundTimerThrottling[];
40 CONTENT_EXPORT extern const char kDisableBackForwardCache[];
41 CONTENT_EXPORT extern const char kDisableBlinkFeatures[];
42 CONTENT_EXPORT extern const char kDisableDatabases[];
43 CONTENT_EXPORT extern const char kDisableDisplayList2dCanvas[];
44 extern const char kDisableDomainBlockingFor3DAPIs[];
45 CONTENT_EXPORT extern const char kDisableInProcessStackTraces[];
46 CONTENT_EXPORT extern const char kDisableWebGL[];
47 CONTENT_EXPORT extern const char kDisableWebGL2[];
48 CONTENT_EXPORT extern const char kDisableFileSystem[];
49 CONTENT_EXPORT extern const char kDisableFlash3d[];
50 CONTENT_EXPORT extern const char kDisableFlashStage3d[];
51 CONTENT_EXPORT extern const char kDisableGestureRequirementForPresentation[];
52 CONTENT_EXPORT extern const char kDisableGpu[];
53 CONTENT_EXPORT extern const char kDisableGpuCompositing[];
54 CONTENT_EXPORT extern const char kDisableGpuEarlyInit[];
55 CONTENT_EXPORT extern const char kDisableGpuMemoryBufferCompositorResources[];
56 CONTENT_EXPORT extern const char kDisableGpuMemoryBufferVideoFrames[];
57 extern const char kDisableGpuProcessCrashLimit[];
58 CONTENT_EXPORT extern const char kDisableSoftwareCompositingFallback[];
59 CONTENT_EXPORT extern const char kDisableGpuWatchdog[];
60 CONTENT_EXPORT extern const char kDisableIpcFloodingProtection[];
61 CONTENT_EXPORT extern const char kDisableJavaScriptHarmonyShipping[];
62 CONTENT_EXPORT extern const char kDisableLowLatencyDxva[];
63 CONTENT_EXPORT extern const char kDisableHangMonitor[];
64 extern const char kDisableHistogramCustomizer[];
65 CONTENT_EXPORT extern const char kDisableLCDText[];
66 CONTENT_EXPORT extern const char kDisableKillAfterBadIPC[];
67 CONTENT_EXPORT extern const char kDisableLocalStorage[];
68 CONTENT_EXPORT extern const char kDisableLogging[];
69 CONTENT_EXPORT extern const char kDisableNewContentRenderingTimeout[];
70 CONTENT_EXPORT extern const char kDisableNotifications[];
71 CONTENT_EXPORT extern const char kDisableOriginTrialControlledBlinkFeatures[];
72 extern const char kDisablePepper3d[];
73 CONTENT_EXPORT extern const char kDisablePepper3DImageChromium[];
74 CONTENT_EXPORT extern const char kDisablePermissionsAPI[];
75 CONTENT_EXPORT extern const char kDisablePinch[];
76 CONTENT_EXPORT extern const char kDisablePresentationAPI[];
77 CONTENT_EXPORT extern const char kDisablePushStateThrottle[];
78 CONTENT_EXPORT extern const char kDisableReadingFromCanvas[];
79 extern const char kDisableRemoteFonts[];
80 CONTENT_EXPORT extern const char kDisableRemotePlaybackAPI[];
81 extern const char kDisableRendererAccessibility[];
82 CONTENT_EXPORT extern const char kDisableRendererBackgrounding[];
83 CONTENT_EXPORT extern const char kDisableResourceScheduler[];
84 CONTENT_EXPORT extern const char kDisableSharedWorkers[];
85 CONTENT_EXPORT extern const char kDisableSkiaRuntimeOpts[];
86 CONTENT_EXPORT extern const char kDisableSmoothScrolling[];
87 CONTENT_EXPORT extern const char kDisableSoftwareRasterizer[];
88 CONTENT_EXPORT extern const char kDisableSpeechAPI[];
89 CONTENT_EXPORT extern const char kDisableSpeechSynthesisAPI[];
90 CONTENT_EXPORT extern const char kDisableTargetBlankImpliesNoOpener[];
91 CONTENT_EXPORT extern const char kDisableTestCerts[];
92 CONTENT_EXPORT extern const char kDisableThreadedCompositing[];
93 extern const char kDisableV8IdleTasks[];
94 CONTENT_EXPORT extern const char kDisableWebGLImageChromium[];
95 CONTENT_EXPORT extern const char kDisableWebSecurity[];
96 CONTENT_EXPORT extern const char kDisableZeroCopyDxgiVideo[];
97 CONTENT_EXPORT extern const char kDomAutomationController[];
98 extern const char kDisable2dCanvasClipAntialiasing[];
99 CONTENT_EXPORT extern const char kDumpBlinkRuntimeCallStats[];
100 CONTENT_EXPORT extern const char kEnableAccessibilityObjectModel[];
101 CONTENT_EXPORT extern const char kEnableAggressiveDOMStorageFlushing[];
102 CONTENT_EXPORT extern const char kEnableAutomation[];
103 CONTENT_EXPORT extern const char kEnableBlinkFeatures[];
104 CONTENT_EXPORT extern const char kEnableCaretBrowsing[];
105 CONTENT_EXPORT extern const char kEnableDisplayList2dCanvas[];
106 CONTENT_EXPORT extern const char kEnableExperimentalCookieFeatures[];
107 CONTENT_EXPORT extern const char kEnableExperimentalWebAssemblyFeatures[];
108 CONTENT_EXPORT extern const char kEnableExperimentalWebPlatformFeatures[];
109 CONTENT_EXPORT extern const char kEnableBlinkTestFeatures[];
110 CONTENT_EXPORT extern const char kEnableFtp[];
111 CONTENT_EXPORT extern const char kEnableGpuMemoryBufferVideoFrames[];
112 CONTENT_EXPORT extern const char kEnableLCDText[];
113 CONTENT_EXPORT extern const char kEnableLogging[];
114 CONTENT_EXPORT extern const char kEnableNetworkInformationDownlinkMax[];
115 CONTENT_EXPORT extern const char kEnableNewCanvas2DAPI[];
116 CONTENT_EXPORT extern const char kDisableNv12DxgiVideo[];
117 CONTENT_EXPORT extern const char kEnablePluginPlaceholderTesting[];
118 CONTENT_EXPORT extern const char kEnablePreciseMemoryInfo[];
119 CONTENT_EXPORT extern const char kEnableServiceBinaryLauncher[];
120 extern const char kEnableSkiaBenchmarking[];
121 CONTENT_EXPORT extern const char kEnableSmoothScrolling[];
122 CONTENT_EXPORT extern const char kEnableSpatialNavigation[];
123 CONTENT_EXPORT extern const char kEnableStrictMixedContentChecking[];
124 CONTENT_EXPORT extern const char kEnableStrictPowerfulFeatureRestrictions[];
125 CONTENT_EXPORT extern const char kEnableThreadedCompositing[];
126 CONTENT_EXPORT extern const char kEnableTracing[];
127 CONTENT_EXPORT extern const char kEnableTracingOutput[];
128 CONTENT_EXPORT extern const char kEnableUserMediaScreenCapturing[];
129 CONTENT_EXPORT extern const char kEnableUseZoomForDSF[];
130 CONTENT_EXPORT extern const char kEnableViewport[];
131 CONTENT_EXPORT extern const char kEnableVtune[];
132 CONTENT_EXPORT extern const char kEnableWebAuthDeprecatedMojoTestingApi[];
133 CONTENT_EXPORT extern const char kEnableWebGLDraftExtensions[];
134 CONTENT_EXPORT extern const char kEnableWebGLImageChromium[];
135 CONTENT_EXPORT extern const char kEnableWebVR[];
136 CONTENT_EXPORT extern const char kFieldTrialHandle[];
137 CONTENT_EXPORT extern const char kFileUrlPathAlias[];
138 CONTENT_EXPORT extern const char kForceDisplayList2dCanvas[];
139 CONTENT_EXPORT extern const char kDisableOopRasterization[];
140 CONTENT_EXPORT extern const char kEnableOopRasterization[];
141 CONTENT_EXPORT extern const char kForceOverlayFullscreenVideo[];
142 CONTENT_EXPORT extern const char kForcePresentationReceiverForTesting[];
143 CONTENT_EXPORT extern const char kForceRendererAccessibility[];
144 CONTENT_EXPORT extern const char kGenerateAccessibilityTestExpectations[];
145 extern const char kGpuLauncher[];
146 CONTENT_EXPORT extern const char kGpuProcess[];
147 CONTENT_EXPORT extern const char kGpuSandboxStartEarly[];
148 CONTENT_EXPORT extern const char kGpuStartupDialog[];
149 CONTENT_EXPORT extern const char kInitialVirtualTime[];
150 CONTENT_EXPORT extern const char kInProcessGPU[];
151 CONTENT_EXPORT extern const char kIPCConnectionTimeout[];
152 CONTENT_EXPORT extern const char kIsolateOrigins[];
153 CONTENT_EXPORT extern const char kJavaScriptFlags[];
154 CONTENT_EXPORT extern const char kJavaScriptHarmony[];
155 CONTENT_EXPORT extern const char kEnableUnsafeFastJSCalls[];
156 CONTENT_EXPORT extern const char kLaunchAsBrowser[];
157 CONTENT_EXPORT extern const char kLogGpuControlListDecisions[];
158 CONTENT_EXPORT extern const char kLoggingLevel[];
159 CONTENT_EXPORT extern const char kLogFile[];
160 CONTENT_EXPORT extern const char kMainFrameResizesAreOrientationChanges[];
161 extern const char kMaxActiveWebGLContexts[];
162 CONTENT_EXPORT extern const char kMaxDecodedImageSizeMb[];
163 CONTENT_EXPORT extern const char kMessageLoopTypeUi[];
164 CONTENT_EXPORT extern const char kMHTMLGeneratorOption[];
165 CONTENT_EXPORT extern const char kMHTMLSkipNostoreMain[];
166 CONTENT_EXPORT extern const char kMHTMLSkipNostoreAll[];
167 CONTENT_EXPORT extern const char kMockCertVerifierDefaultResultForTesting[];
168 CONTENT_EXPORT extern const char kMojoCoreLibraryPath[];
169 CONTENT_EXPORT extern const char kMojoLocalStorage[];
170 CONTENT_EXPORT extern const char kNoZygote[];
171 extern const char kNoV8UntrustedCodeMitigations[];
172 CONTENT_EXPORT extern const char kNumRasterThreads[];
173 CONTENT_EXPORT extern const char kPpapiInProcess[];
174 extern const char kPpapiPluginLauncher[];
175 CONTENT_EXPORT extern const char kPpapiPluginProcess[];
176 extern const char kPpapiStartupDialog[];
177 CONTENT_EXPORT extern const char kProcessPerSite[];
178 CONTENT_EXPORT extern const char kProcessPerTab[];
179 CONTENT_EXPORT extern const char kProcessType[];
180 CONTENT_EXPORT extern const char kProxyServer[];
181 CONTENT_EXPORT extern const char kPullToRefresh[];
182 CONTENT_EXPORT extern const char kRegisterPepperPlugins[];
183 CONTENT_EXPORT extern const char kRemoteDebuggingPipe[];
184 CONTENT_EXPORT extern const char kRemoteDebuggingPort[];
185 CONTENT_EXPORT extern const char kRendererClientId[];
186 extern const char kRendererCmdPrefix[];
187 CONTENT_EXPORT extern const char kRendererProcess[];
188 CONTENT_EXPORT extern const char kRendererProcessLimit[];
189 CONTENT_EXPORT extern const char kRendererStartupDialog[];
190 CONTENT_EXPORT extern const char kRunManualTestsFlag[];
191 extern const char kSandboxIPCProcess[];
192 CONTENT_EXPORT extern const char kSharedFiles[];
193 CONTENT_EXPORT extern const char kSingleProcess[];
194 CONTENT_EXPORT extern const char kSitePerProcess[];
195 CONTENT_EXPORT extern const char kDisableSiteIsolation[];
196 CONTENT_EXPORT extern const char kStartFullscreen[];
197 CONTENT_EXPORT extern const char kStatsCollectionController[];
198 extern const char kSkiaFontCacheLimitMb[];
199 extern const char kSkiaResourceCacheLimitMb[];
200 CONTENT_EXPORT extern const char kTestType[];
201 CONTENT_EXPORT extern const char kTouchEventFeatureDetection[];
202 CONTENT_EXPORT extern const char kTouchEventFeatureDetectionAuto[];
203 CONTENT_EXPORT extern const char kTouchEventFeatureDetectionEnabled[];
204 CONTENT_EXPORT extern const char kTouchEventFeatureDetectionDisabled[];
205 CONTENT_EXPORT extern const char kTrustableWebBundleFileUrl[];
206 CONTENT_EXPORT extern const char kUseFakeCodecForPeerConnection[];
207 CONTENT_EXPORT extern const char kUseFakeUIForMediaStream[];
208 CONTENT_EXPORT extern const char kVideoImageTextureTarget[];
209 CONTENT_EXPORT extern const char kUseMobileUserAgent[];
210 CONTENT_EXPORT extern const char kUseMockCertVerifierForTesting[];
211 extern const char kUtilityCmdPrefix[];
212 CONTENT_EXPORT extern const char kUtilityProcess[];
213 CONTENT_EXPORT extern const char kUtilityStartupDialog[];
214 CONTENT_EXPORT extern const char kUtilitySubType[];
215 CONTENT_EXPORT extern const char kV8CacheOptions[];
216 CONTENT_EXPORT extern const char kValidateInputEventStream[];
217 CONTENT_EXPORT extern const char kWaitForDebuggerChildren[];
218 CONTENT_EXPORT extern const char kWebglAntialiasingMode[];
219 CONTENT_EXPORT extern const char kWebglMSAASampleCount[];
220 CONTENT_EXPORT extern const char kZygoteCmdPrefix[];
221 CONTENT_EXPORT extern const char kZygoteProcess[];
222 
223 CONTENT_EXPORT extern const char kWebOtpBackend[];
224 CONTENT_EXPORT extern const char kWebOtpBackendSmsVerification[];
225 CONTENT_EXPORT extern const char kWebOtpBackendUserConsent[];
226 CONTENT_EXPORT extern const char kWebOtpBackendAuto[];
227 CONTENT_EXPORT extern const char kDisableWebRtcEncryption[];
228 CONTENT_EXPORT extern const char kDisableWebRtcHWDecoding[];
229 CONTENT_EXPORT extern const char kDisableWebRtcHWEncoding[];
230 CONTENT_EXPORT extern const char kEnableWebRtcSrtpAesGcm[];
231 CONTENT_EXPORT extern const char kEnableWebRtcSrtpEncryptedHeaders[];
232 CONTENT_EXPORT extern const char kEnableWebRtcStunOrigin[];
233 CONTENT_EXPORT extern const char kEnforceWebRtcIPPermissionCheck[];
234 CONTENT_EXPORT extern const char kForceWebRtcIPHandlingPolicy[];
235 CONTENT_EXPORT extern const char kWaitForDebuggerWebUI[];
236 extern const char kWebRtcMaxCaptureFramerate[];
237 extern const char kWebRtcMaxCpuConsumptionPercentage[];
238 CONTENT_EXPORT extern const char kWebRtcStunProbeTrialParameter[];
239 CONTENT_EXPORT extern const char kWebRtcLocalEventLogging[];
240 CONTENT_EXPORT extern const char kDisableScrollToTextFragment[];
241 
242 CONTENT_EXPORT extern const char kWebXrForceRuntime[];
243 CONTENT_EXPORT extern const char kWebXrRuntimeNone[];
244 CONTENT_EXPORT extern const char kWebXrRuntimeOrientationSensors[];
245 CONTENT_EXPORT extern const char kWebXrRuntimeOpenXr[];
246 CONTENT_EXPORT extern const char kWebXrRuntimeWMR[];
247 
248 #if (defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)) || defined(OS_BSD)
249 CONTENT_EXPORT extern const char kEnableAcceleratedVideoDecode[];
250 #endif
251 CONTENT_EXPORT extern const char kDisableAcceleratedVideoDecode[];
252 
253 #if defined(OS_ANDROID)
254 CONTENT_EXPORT extern const char kDisableMediaSessionAPI[];
255 CONTENT_EXPORT extern const char kDisableOoprDebugCrashDump[];
256 CONTENT_EXPORT extern const char kDisableOverscrollEdgeEffect[];
257 CONTENT_EXPORT extern const char kDisablePullToRefreshEffect[];
258 CONTENT_EXPORT extern const char kDisableScreenOrientationLock[];
259 CONTENT_EXPORT extern const char kDisableSiteIsolationForPolicy[];
260 CONTENT_EXPORT extern const char kDisableTimeoutsForProfiling[];
261 CONTENT_EXPORT extern const char kEnableAdaptiveSelectionHandleOrientation[];
262 CONTENT_EXPORT extern const char kEnableLongpressDragSelection[];
263 CONTENT_EXPORT extern const char kForceOnlineConnectionStateForIndicator[];
264 extern const char kNetworkCountryIso[];
265 CONTENT_EXPORT extern const char kRemoteDebuggingSocketName[];
266 CONTENT_EXPORT extern const char kRendererWaitForJavaDebugger[];
267 #endif
268 
269 #if (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_FREEBSD) || \
270   defined(OS_DRAGONFLY)
271 CONTENT_EXPORT extern const char kEnableSpeechDispatcher[];
272 #endif
273 
274 #if defined(OS_WIN)
275 CONTENT_EXPORT extern const char kPrefetchArgumentRenderer[];
276 CONTENT_EXPORT extern const char kPrefetchArgumentGpu[];
277 CONTENT_EXPORT extern const char kPrefetchArgumentPpapi[];
278 CONTENT_EXPORT extern const char kPrefetchArgumentPpapiBroker[];
279 CONTENT_EXPORT extern const char kPrefetchArgumentOther[];
280 // This switch contains the device scale factor passed to certain processes
281 // like renderers, etc.
282 CONTENT_EXPORT extern const char kDeviceScaleFactor[];
283 CONTENT_EXPORT extern const char kDisableLegacyIntermediateWindow[];
284 CONTENT_EXPORT extern const char kEnableWin7WebRtcHWH264Decoding[];
285 // Switch to pass the font cache shared memory handle to the renderer.
286 CONTENT_EXPORT extern const char kFontCacheSharedHandle[];
287 CONTENT_EXPORT extern const char kPpapiAntialiasedTextEnabled[];
288 CONTENT_EXPORT extern const char kPpapiSubpixelRenderingSetting[];
289 CONTENT_EXPORT extern const char kRaiseTimerFrequency[];
290 CONTENT_EXPORT extern const char kGpu2StartupDialog[];
291 #endif
292 
293 #if defined(ENABLE_IPC_FUZZER)
294 extern const char kIpcDumpDirectory[];
295 extern const char kIpcFuzzerTestcase[];
296 #endif
297 
298 // DON'T ADD RANDOM STUFF HERE. Put it in the main section above in
299 // alphabetical order, or in one of the ifdefs (also in order in each section).
300 
301 }  // namespace switches
302 
303 #endif  // CONTENT_PUBLIC_COMMON_CONTENT_SWITCHES_H_
304