OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/common/content_switches.h" | 5 #include "content/common/content_switches.h" |
6 | 6 |
7 namespace switches { | 7 namespace switches { |
8 | 8 |
9 // By default, file:// URIs cannot read other file:// URIs. This is an | 9 // By default, file:// URIs cannot read other file:// URIs. This is an |
10 // override for developers who need the old behavior for testing. | 10 // override for developers who need the old behavior for testing. |
11 const char kAllowFileAccessFromFiles[] = "allow-file-access-from-files"; | 11 const char kAllowFileAccessFromFiles[] = "allow-file-access-from-files"; |
12 | 12 |
13 // Allows debugging of sandboxed processes (see zygote_main_linux.cc). | 13 // Allows debugging of sandboxed processes (see zygote_main_linux.cc). |
14 const char kAllowSandboxDebugging[] = "allow-sandbox-debugging"; | 14 const char kAllowSandboxDebugging[] = "allow-sandbox-debugging"; |
15 | 15 |
16 // Path to the exe to run for the renderer and plugin subprocesses. | 16 // Path to the exe to run for the renderer and plugin subprocesses. |
17 const char kBrowserSubprocessPath[] = "browser-subprocess-path"; | 17 const char kBrowserSubprocessPath[] = "browser-subprocess-path"; |
18 | 18 |
19 // Disables client-visible 3D APIs, in particular WebGL and Pepper 3D. | 19 // Disables client-visible 3D APIs, in particular WebGL and Pepper 3D. |
20 // This is controlled by policy and is kept separate from the other | 20 // This is controlled by policy and is kept separate from the other |
21 // enable/disable switches to avoid accidentally regressing the policy | 21 // enable/disable switches to avoid accidentally regressing the policy |
22 // support for controlling access to these APIs. | 22 // support for controlling access to these APIs. |
23 const char kDisable3DAPIs[] = "disable-3d-apis"; | 23 const char kDisable3DAPIs[] = "disable-3d-apis"; |
24 | 24 |
| 25 // Disables accelerated compositing. |
| 26 const char kDisableAcceleratedCompositing[] = "disable-accelerated-compositing"; |
| 27 |
25 // Disable the ApplicationCache. | 28 // Disable the ApplicationCache. |
26 const char kDisableApplicationCache[] = "disable-application-cache"; | 29 const char kDisableApplicationCache[] = "disable-application-cache"; |
27 | 30 |
28 // Disable limits on the number of backing stores. Can prevent blinking for | 31 // Disable limits on the number of backing stores. Can prevent blinking for |
29 // users with many windows/tabs and lots of memory. | 32 // users with many windows/tabs and lots of memory. |
30 const char kDisableBackingStoreLimit[] = "disable-backing-store-limit"; | 33 const char kDisableBackingStoreLimit[] = "disable-backing-store-limit"; |
31 | 34 |
32 // Disables HTML5 DB support. | 35 // Disables HTML5 DB support. |
33 const char kDisableDatabases[] = "disable-databases"; | 36 const char kDisableDatabases[] = "disable-databases"; |
34 | 37 |
| 38 // Disables data transfer items. |
| 39 const char kDisableDataTransferItems[] = "disable-data-transfer-items"; |
| 40 |
35 // Disables desktop notifications (default enabled on windows). | 41 // Disables desktop notifications (default enabled on windows). |
36 const char kDisableDesktopNotifications[] = "disable-desktop-notifications"; | 42 const char kDisableDesktopNotifications[] = "disable-desktop-notifications"; |
37 | 43 |
| 44 // Disables device orientation events. |
| 45 const char kDisableDeviceOrientation[] = "disable-device-orientation"; |
| 46 |
38 // Disable experimental WebGL support. | 47 // Disable experimental WebGL support. |
39 const char kDisableExperimentalWebGL[] = "disable-webgl"; | 48 const char kDisableExperimentalWebGL[] = "disable-webgl"; |
40 | 49 |
41 // Disable FileSystem API. | 50 // Disable FileSystem API. |
42 const char kDisableFileSystem[] = "disable-file-system"; | 51 const char kDisableFileSystem[] = "disable-file-system"; |
43 | 52 |
| 53 // Suppresses support for the Geolocation javascript API. |
| 54 const char kDisableGeolocation[] = "disable-geolocation"; |
| 55 |
| 56 // Disable GL multisampling. |
| 57 const char kDisableGLMultisampling[] = "disable-gl-multisampling"; |
| 58 |
| 59 // Disable the GLSL translator. |
| 60 const char kDisableGLSLTranslator[] = "disable-glsl-translator"; |
| 61 |
44 // Disable the GPU process sandbox. | 62 // Disable the GPU process sandbox. |
45 const char kDisableGpuSandbox[] = "disable-gpu-sandbox"; | 63 const char kDisableGpuSandbox[] = "disable-gpu-sandbox"; |
46 | 64 |
47 // Disable the thread that crashes the GPU process if it stops responding to | 65 // Disable the thread that crashes the GPU process if it stops responding to |
48 // messages. | 66 // messages. |
49 const char kDisableGpuWatchdog[] = "disable-gpu-watchdog"; | 67 const char kDisableGpuWatchdog[] = "disable-gpu-watchdog"; |
50 | 68 |
51 // Temporary flag to disable hole punching for accelerated surfaces. This is | 69 // Temporary flag to disable hole punching for accelerated surfaces. This is |
52 // here to aid debugging eventual problems, it can be removed once hole punching | 70 // here to aid debugging eventual problems, it can be removed once hole punching |
53 // has been out there for a few dev channel releases without problems. | 71 // has been out there for a few dev channel releases without problems. |
54 const char kDisableHolePunching[] = "disable-hole-punching"; | 72 const char kDisableHolePunching[] = "disable-hole-punching"; |
55 | 73 |
| 74 // Disable the Indexed Database API. |
| 75 const char kDisableIndexedDatabase[] = "disable-indexed-database"; |
| 76 |
| 77 // Prevent Java from running. |
| 78 const char kDisableJava[] = "disable-java"; |
| 79 |
| 80 // Don't execute JavaScript (browser JS like the new tab page still runs). |
| 81 const char kDisableJavaScript[] = "disable-javascript"; |
| 82 |
| 83 // Disable JavaScript I18N API. |
| 84 const char kDisableJavaScriptI18NAPI[] = "disable-javascript-i18n-api"; |
| 85 |
| 86 // Disable LocalStorage. |
| 87 const char kDisableLocalStorage[] = "disable-local-storage"; |
| 88 |
56 // Force logging to be disabled. Logging is enabled by default in debug | 89 // Force logging to be disabled. Logging is enabled by default in debug |
57 // builds. | 90 // builds. |
58 const char kDisableLogging[] = "disable-logging"; | 91 const char kDisableLogging[] = "disable-logging"; |
59 | 92 |
60 // Prevent plugins from running. | 93 // Prevent plugins from running. |
61 const char kDisablePlugins[] = "disable-plugins"; | 94 const char kDisablePlugins[] = "disable-plugins"; |
62 | 95 |
63 // Disable pop-up blocking. | 96 // Disable pop-up blocking. |
64 const char kDisablePopupBlocking[] = "disable-popup-blocking"; | 97 const char kDisablePopupBlocking[] = "disable-popup-blocking"; |
65 | 98 |
66 // Disable the seccomp sandbox (Linux only) | 99 // Disable the seccomp sandbox (Linux only) |
67 const char kDisableSeccompSandbox[] = "disable-seccomp-sandbox"; | 100 const char kDisableSeccompSandbox[] = "disable-seccomp-sandbox"; |
68 | 101 |
| 102 // Disable session storage. |
| 103 const char kDisableSessionStorage[] = "disable-session-storage"; |
| 104 |
| 105 // Enable shared workers. Functionality not yet complete. |
| 106 const char kDisableSharedWorkers[] = "disable-shared-workers"; |
| 107 |
| 108 // Disables speech input. |
| 109 const char kDisableSpeechInput[] = "disable-speech-input"; |
| 110 |
69 // Disable Web Sockets support. | 111 // Disable Web Sockets support. |
70 const char kDisableWebSockets[] = "disable-web-sockets"; | 112 const char kDisableWebSockets[] = "disable-web-sockets"; |
71 | 113 |
72 // Enable hardware accelerated page drawing. | 114 // Enable hardware accelerated page drawing. |
73 // Please note that this flag is honored only if chromium is compiled with | 115 // Please note that this flag is honored only if chromium is compiled with |
74 // SKIA_GPU flag, which can be enabled by setting use_skia_gpu variable to 1 | 116 // SKIA_GPU flag, which can be enabled by setting use_skia_gpu variable to 1 |
75 // in build/features_override.gypi. | 117 // in build/features_override.gypi. |
76 const char kEnableAcceleratedDrawing[] = "enable-accelerated-drawing"; | 118 const char kEnableAcceleratedDrawing[] = "enable-accelerated-drawing"; |
77 | 119 |
78 // Enables the benchmarking extensions. | 120 // Enables the benchmarking extensions. |
79 const char kEnableBenchmarking[] = "enable-benchmarking"; | 121 const char kEnableBenchmarking[] = "enable-benchmarking"; |
80 | 122 |
| 123 // Enables device motion events. |
| 124 const char kEnableDeviceMotion[] = "enable-device-motion"; |
| 125 |
81 // Enable the GPU plugin and Pepper 3D rendering. | 126 // Enable the GPU plugin and Pepper 3D rendering. |
82 const char kEnableGPUPlugin[] = "enable-gpu-plugin"; | 127 const char kEnableGPUPlugin[] = "enable-gpu-plugin"; |
83 | 128 |
84 // Force logging to be enabled. Logging is disabled by default in release | 129 // Force logging to be enabled. Logging is disabled by default in release |
85 // builds. | 130 // builds. |
86 const char kEnableLogging[] = "enable-logging"; | 131 const char kEnableLogging[] = "enable-logging"; |
87 | 132 |
88 // On Windows, converts the page to the currently-installed monitor profile. | 133 // On Windows, converts the page to the currently-installed monitor profile. |
89 // This does NOT enable color management for images. The source is still | 134 // This does NOT enable color management for images. The source is still |
90 // assumed to be sRGB. | 135 // assumed to be sRGB. |
91 const char kEnableMonitorProfile[] = "enable-monitor-profile"; | 136 const char kEnableMonitorProfile[] = "enable-monitor-profile"; |
92 | 137 |
93 // Enable caching of pre-parsed JS script data. See http://crbug.com/32407. | 138 // Enable caching of pre-parsed JS script data. See http://crbug.com/32407. |
94 const char kEnablePreparsedJsCaching[] = "enable-preparsed-js-caching"; | 139 const char kEnablePreparsedJsCaching[] = "enable-preparsed-js-caching"; |
95 | 140 |
96 // Cause the OS X sandbox write to syslog every time an access to a resource | 141 // Cause the OS X sandbox write to syslog every time an access to a resource |
97 // is denied by the sandbox. | 142 // is denied by the sandbox. |
98 const char kEnableSandboxLogging[] = "enable-sandbox-logging"; | 143 const char kEnableSandboxLogging[] = "enable-sandbox-logging"; |
99 | 144 |
100 // Enable the seccomp sandbox (Linux only) | 145 // Enable the seccomp sandbox (Linux only) |
101 const char kEnableSeccompSandbox[] = "enable-seccomp-sandbox"; | 146 const char kEnableSeccompSandbox[] = "enable-seccomp-sandbox"; |
102 | 147 |
103 // Enables StatsTable, logging statistics to a global named shared memory table. | 148 // Enables StatsTable, logging statistics to a global named shared memory table. |
104 const char kEnableStatsTable[] = "enable-stats-table"; | 149 const char kEnableStatsTable[] = "enable-stats-table"; |
105 | 150 |
| 151 // Enable web audio API. |
| 152 const char kEnableWebAudio[] = "enable-webaudio"; |
| 153 |
106 // Enables experimental features for the geolocation API. | 154 // Enables experimental features for the geolocation API. |
107 // Current features: | 155 // Current features: |
108 // - CoreLocation support for Mac OS X 10.6 | 156 // - CoreLocation support for Mac OS X 10.6 |
109 // - Gateway location for Linux and Windows | 157 // - Gateway location for Linux and Windows |
110 // - Location platform support for Windows 7 | 158 // - Location platform support for Windows 7 |
111 const char kExperimentalLocationFeatures[] = "experimental-location-features"; | 159 const char kExperimentalLocationFeatures[] = "experimental-location-features"; |
112 | 160 |
113 // Load NPAPI plugins from the specified directory. | 161 // Load NPAPI plugins from the specified directory. |
114 const char kExtraPluginDir[] = "extra-plugin-dir"; | 162 const char kExtraPluginDir[] = "extra-plugin-dir"; |
115 | 163 |
116 // Causes the process to run as an extension subprocess. | 164 // Causes the process to run as an extension subprocess. |
117 const char kExtensionProcess[] = "extension"; | 165 const char kExtensionProcess[] = "extension"; |
118 | 166 |
119 // Extra command line options for launching the GPU process (normally used | 167 // Extra command line options for launching the GPU process (normally used |
120 // for debugging). Use like renderer-cmd-prefix. | 168 // for debugging). Use like renderer-cmd-prefix. |
121 const char kGpuLauncher[] = "gpu-launcher"; | 169 const char kGpuLauncher[] = "gpu-launcher"; |
122 | 170 |
123 // Makes this process a GPU sub-process. | 171 // Makes this process a GPU sub-process. |
124 const char kGpuProcess[] = "gpu-process"; | 172 const char kGpuProcess[] = "gpu-process"; |
125 | 173 |
126 // Causes the GPU process to display a dialog on launch. | 174 // Causes the GPU process to display a dialog on launch. |
127 const char kGpuStartupDialog[] = "gpu-startup-dialog"; | 175 const char kGpuStartupDialog[] = "gpu-startup-dialog"; |
128 | 176 |
129 // Run the GPU process as a thread in the browser process. | 177 // Run the GPU process as a thread in the browser process. |
130 const char kInProcessGPU[] = "in-process-gpu"; | 178 const char kInProcessGPU[] = "in-process-gpu"; |
131 | 179 |
| 180 // Runs plugins inside the renderer process |
| 181 const char kInProcessPlugins[] = "in-process-plugins"; |
| 182 |
132 // Runs WebGL inside the renderer process. | 183 // Runs WebGL inside the renderer process. |
133 const char kInProcessWebGL[] = "in-process-webgl"; | 184 const char kInProcessWebGL[] = "in-process-webgl"; |
134 | 185 |
| 186 // Specifies the flags passed to JS engine |
| 187 const char kJavaScriptFlags[] = "js-flags"; |
| 188 |
135 // Use LevelDB as back-end for Indexed Database API. | 189 // Use LevelDB as back-end for Indexed Database API. |
136 const char kLevelDBIndexedDatabase[] = "indexeddb-use-leveldb"; | 190 const char kLevelDBIndexedDatabase[] = "indexeddb-use-leveldb"; |
137 | 191 |
138 // Load an NPAPI plugin from the specified path. | 192 // Load an NPAPI plugin from the specified path. |
139 const char kLoadPlugin[] = "load-plugin"; | 193 const char kLoadPlugin[] = "load-plugin"; |
140 | 194 |
141 // Sets the minimum log level. Valid values are from 0 to 3: | 195 // Sets the minimum log level. Valid values are from 0 to 3: |
142 // INFO = 0, WARNING = 1, LOG_ERROR = 2, LOG_FATAL = 3. | 196 // INFO = 0, WARNING = 1, LOG_ERROR = 2, LOG_FATAL = 3. |
143 const char kLoggingLevel[] = "log-level"; | 197 const char kLoggingLevel[] = "log-level"; |
144 | 198 |
145 // Make plugin processes log their sent and received messages to VLOG(1). | 199 // Make plugin processes log their sent and received messages to VLOG(1). |
146 const char kLogPluginMessages[] = "log-plugin-messages"; | 200 const char kLogPluginMessages[] = "log-plugin-messages"; |
147 | 201 |
148 // Causes the process to run as a NativeClient loader. | 202 // Causes the process to run as a NativeClient loader. |
149 const char kNaClLoaderProcess[] = "nacl-loader"; | 203 const char kNaClLoaderProcess[] = "nacl-loader"; |
150 | 204 |
| 205 // Support a separate switch that enables the v8 playback extension. |
| 206 // The extension causes javascript calls to Date.now() and Math.random() |
| 207 // to return consistent values, such that subsequent loads of the same |
| 208 // page will result in consistent js-generated data and XHR requests. |
| 209 // Pages may still be able to generate inconsistent data from plugins. |
| 210 const char kNoJsRandomness[] = "no-js-randomness"; |
| 211 |
151 // Don't send HTTP-Referer headers. | 212 // Don't send HTTP-Referer headers. |
152 const char kNoReferrers[] = "no-referrers"; | 213 const char kNoReferrers[] = "no-referrers"; |
153 | 214 |
154 // Disables the sandbox for all process types that are normally sandboxed. | 215 // Disables the sandbox for all process types that are normally sandboxed. |
155 const char kNoSandbox[] = "no-sandbox"; | 216 const char kNoSandbox[] = "no-sandbox"; |
156 | 217 |
| 218 // Read previously recorded data from the cache. Only cached data is read. |
| 219 // See kRecordMode. |
| 220 const char kPlaybackMode[] = "playback-mode"; |
| 221 |
157 // Specifies a command that should be used to launch the plugin process. Useful | 222 // Specifies a command that should be used to launch the plugin process. Useful |
158 // for running the plugin process through purify or quantify. Ex: | 223 // for running the plugin process through purify or quantify. Ex: |
159 // --plugin-launcher="path\to\purify /Run=yes" | 224 // --plugin-launcher="path\to\purify /Run=yes" |
160 const char kPluginLauncher[] = "plugin-launcher"; | 225 const char kPluginLauncher[] = "plugin-launcher"; |
161 | 226 |
162 // Tells the plugin process the path of the plugin to load | 227 // Tells the plugin process the path of the plugin to load |
163 const char kPluginPath[] = "plugin-path"; | 228 const char kPluginPath[] = "plugin-path"; |
164 | 229 |
165 // Causes the process to run as a plugin subprocess. | 230 // Causes the process to run as a plugin subprocess. |
166 const char kPluginProcess[] = "plugin"; | 231 const char kPluginProcess[] = "plugin"; |
(...skipping 29 matching lines...) Expand all Loading... |
196 // for each site instance (i.e., group of pages from the same registered | 261 // for each site instance (i.e., group of pages from the same registered |
197 // domain with script connections to each other). | 262 // domain with script connections to each other). |
198 const char kProcessPerSite[] = "process-per-site"; | 263 const char kProcessPerSite[] = "process-per-site"; |
199 | 264 |
200 // Runs each set of script-connected tabs (i.e., a BrowsingInstance) in its own | 265 // Runs each set of script-connected tabs (i.e., a BrowsingInstance) in its own |
201 // renderer process. We default to using a renderer process for each | 266 // renderer process. We default to using a renderer process for each |
202 // site instance (i.e., group of pages from the same registered domain with | 267 // site instance (i.e., group of pages from the same registered domain with |
203 // script connections to each other). | 268 // script connections to each other). |
204 const char kProcessPerTab[] = "process-per-tab"; | 269 const char kProcessPerTab[] = "process-per-tab"; |
205 | 270 |
| 271 // Chrome supports a playback and record mode. Record mode saves *everything* |
| 272 // to the cache. Playback mode reads data exclusively from the cache. This |
| 273 // allows us to record a session into the cache and then replay it at will. |
| 274 // See also kPlaybackMode. |
| 275 const char kRecordMode[] = "record-mode"; |
| 276 |
206 // The value of this switch determines whether the process is started as a | 277 // The value of this switch determines whether the process is started as a |
207 // renderer or plugin host. If it's empty, it's the browser. | 278 // renderer or plugin host. If it's empty, it's the browser. |
208 const char kProcessType[] = "type"; | 279 const char kProcessType[] = "type"; |
209 | 280 |
210 // Causes the process to run as a profile import subprocess. | 281 // Causes the process to run as a profile import subprocess. |
211 const char kProfileImportProcess[] = "profile-import"; | 282 const char kProfileImportProcess[] = "profile-import"; |
212 | 283 |
213 // Register Pepper plugins (see pepper_plugin_registry.cc for its format). | 284 // Register Pepper plugins (see pepper_plugin_registry.cc for its format). |
214 const char kRegisterPepperPlugins[] = "register-pepper-plugins"; | 285 const char kRegisterPepperPlugins[] = "register-pepper-plugins"; |
215 | 286 |
216 // On POSIX only: the contents of this flag are prepended to the renderer | 287 // On POSIX only: the contents of this flag are prepended to the renderer |
217 // command line. Useful values might be "valgrind" or "xterm -e gdb --args". | 288 // command line. Useful values might be "valgrind" or "xterm -e gdb --args". |
218 const char kRendererCmdPrefix[] = "renderer-cmd-prefix"; | 289 const char kRendererCmdPrefix[] = "renderer-cmd-prefix"; |
219 | 290 |
220 // Causes the renderer process to crash on launch. | 291 // Causes the renderer process to crash on launch. |
221 const char kRendererCrashTest[] = "renderer-crash-test"; | 292 const char kRendererCrashTest[] = "renderer-crash-test"; |
222 | 293 |
223 // Causes the process to run as renderer instead of as browser. | 294 // Causes the process to run as renderer instead of as browser. |
224 const char kRendererProcess[] = "renderer"; | 295 const char kRendererProcess[] = "renderer"; |
225 | 296 |
226 // Causes the renderer process to display a dialog on launch. | 297 // Causes the renderer process to display a dialog on launch. |
227 const char kRendererStartupDialog[] = "renderer-startup-dialog"; | 298 const char kRendererStartupDialog[] = "renderer-startup-dialog"; |
228 | 299 |
229 // Runs the plugin processes inside the sandbox. | 300 // Runs the plugin processes inside the sandbox. |
230 const char kSafePlugins[] = "safe-plugins"; | 301 const char kSafePlugins[] = "safe-plugins"; |
231 | 302 |
232 // Causes the process to run as a service process. | 303 // Causes the process to run as a service process. |
233 const char kServiceProcess[] = "service"; | 304 const char kServiceProcess[] = "service"; |
234 | 305 |
| 306 // Visibly render a border around paint rects in the web page to help debug |
| 307 // and study painting behavior. |
| 308 const char kShowPaintRects[] = "show-paint-rects"; |
| 309 |
235 // Runs the renderer and plugins in the same process as the browser | 310 // Runs the renderer and plugins in the same process as the browser |
236 const char kSingleProcess[] = "single-process"; | 311 const char kSingleProcess[] = "single-process"; |
237 | 312 |
238 // Runs the security test for the renderer sandbox. | 313 // Runs the security test for the renderer sandbox. |
239 const char kTestSandbox[] = "test-sandbox"; | 314 const char kTestSandbox[] = "test-sandbox"; |
240 | 315 |
241 // Grant unlimited quota to store files to this process. | 316 // Grant unlimited quota to store files to this process. |
242 // Used for testing Pepper's FileRef/FileIO/FileSystem implementations. | 317 // Used for testing Pepper's FileRef/FileIO/FileSystem implementations. |
243 // DO NOT USE FOR OTHER PURPOSES. | 318 // DO NOT USE FOR OTHER PURPOSES. |
244 // TODO(dumi): remove the switch when we have a real quota implementation. | 319 // TODO(dumi): remove the switch when we have a real quota implementation. |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
277 | 352 |
278 // Causes the process to run as a worker subprocess. | 353 // Causes the process to run as a worker subprocess. |
279 const char kWorkerProcess[] = "worker"; | 354 const char kWorkerProcess[] = "worker"; |
280 | 355 |
281 // The prefix used when starting the zygote process. (i.e. 'gdb --args') | 356 // The prefix used when starting the zygote process. (i.e. 'gdb --args') |
282 const char kZygoteCmdPrefix[] = "zygote-cmd-prefix"; | 357 const char kZygoteCmdPrefix[] = "zygote-cmd-prefix"; |
283 | 358 |
284 // Causes the process to run as a renderer zygote. | 359 // Causes the process to run as a renderer zygote. |
285 const char kZygoteProcess[] = "zygote"; | 360 const char kZygoteProcess[] = "zygote"; |
286 } // namespace switches | 361 } // namespace switches |
OLD | NEW |