blob: 65dc1c2dec3923438f2b9c49f3fb24804a8d0efc [file] [log] [blame]
vabr0215a8e2017-03-28 12:47:341// Copyright 2017 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/browser/flag_descriptions.h"
6
Brett Wilson7b44537e2017-08-18 01:38:287// Keep in identical order as the header file, see the comment at the top
8// for formatting rules.
9
vabr0215a8e2017-03-28 12:47:3410namespace flag_descriptions {
11
Brett Wilsonf27ff602017-07-07 22:28:4712const char kAccelerated2dCanvasName[] = "Accelerated 2D canvas";
13const char kAccelerated2dCanvasDescription[] =
14 "Enables the use of the GPU to perform 2d canvas rendering instead of "
15 "using software rendering.";
horodb71a5a2017-06-09 16:08:2416
Brett Wilsonf27ff602017-07-07 22:28:4717const char kAcceleratedVideoDecodeName[] = "Hardware-accelerated video decode";
18const char kAcceleratedVideoDecodeDescription[] =
19 "Hardware-accelerated video decode where available.";
20
21const char kAffiliationBasedMatchingName[] =
22 "Affiliation based matching in password manager";
23const char kAffiliationBasedMatchingDescription[] =
24 "Allow credentials stored for Android applications to be filled into "
25 "corresponding websites.";
26
27const char kAllowInsecureLocalhostName[] =
28 "Allow invalid certificates for resources loaded from localhost.";
29const char kAllowInsecureLocalhostDescription[] =
30 "Allows requests to localhost over HTTPS even when an invalid certificate "
31 "is presented.";
32
33const char kAllowNaclSocketApiName[] = "NaCl Socket API.";
34const char kAllowNaclSocketApiDescription[] =
35 "Allows applications to use NaCl Socket API. Use only to test NaCl "
36 "plugins.";
37
38const char kAppBannersName[] = "App Banners";
39const char kAppBannersDescription[] =
40 "Enable the display of Progressive Web App banners, which prompt a user to "
41 "add a web app to their shelf, or other platform-specific equivalent.";
42
yoshiki iguchi4a10c5f2017-11-29 20:16:5443const char kAshSidebarName[] = "Sidebar";
44const char kAshSidebarDescription[] = "Enable the experimental sidebar.";
45
Tetsui Ohkubo2852b952018-02-23 04:12:0146const char kSystemTrayUnifiedName[] = "New system menu";
47const char kSystemTrayUnifiedDescription[] =
Tetsui Ohkubof860b8e2018-02-16 03:50:5548 "Enable the experimental system menu.";
49
Sathya Gunasekaranbc706d62018-02-09 21:44:2250const char kArrayPrototypeValuesName[] = "Array.prototype.values ES6 method";
51const char kArrayPrototypeValuesDescription[] =
52 "Enables Array.prototype.values method";
53
Khushalba202212017-07-12 19:53:4954const char kAsyncImageDecodingName[] = "AsyncImageDecoding";
55const char kAsyncImageDecodingDescription[] =
56 "Enables asynchronous decoding of images from raster for web content";
57
Brett Wilsonf27ff602017-07-07 22:28:4758const char kAutoplayPolicyName[] = "Autoplay policy";
59const char kAutoplayPolicyDescription[] =
60 "Policy used when deciding if audio or video is allowed to autoplay.";
61
62const char kAutoplayPolicyUserGestureRequiredForCrossOrigin[] =
63 "User gesture is required for cross-origin iframes.";
64const char kAutoplayPolicyNoUserGestureRequired[] =
65 "No user gesture is required.";
66const char kAutoplayPolicyUserGestureRequired[] = "User gesture is required.";
67const char kAutoplayPolicyDocumentUserActivation[] =
68 "Document user activation is required.";
69
Johanne0cc6902017-11-16 00:23:5070extern const char kAv1DecoderName[] = "Enable AV1 video decoding.";
71extern const char kAv1DecoderDescription[] =
72 "Allow decoding of files with the AV1 video codec.";
73
Brett Wilsonf27ff602017-07-07 22:28:4774const char kBackgroundVideoTrackOptimizationName[] =
75 "Optimize background video playback.";
76const char kBackgroundVideoTrackOptimizationDescription[] =
77 "Disable video tracks when the video is played in the background to "
78 "optimize performance.";
79
80const char kBleAdvertisingInExtensionsName[] = "BLE Advertising in Chrome Apps";
81const char kBleAdvertisingInExtensionsDescription[] =
82 "Enables BLE Advertising in Chrome Apps. BLE Advertising might interfere "
83 "with regular use of Bluetooth Low Energy features.";
84
Charles Harrisond629cc62017-10-05 01:39:5485const char kBlockTabUndersName[] = "Block tab-unders";
86const char kBlockTabUndersDescription[] =
87 "Blocks tab-unders in Chrome with some native UI to allow the user to "
88 "proceed.";
89
arthursonzognif2bc2d202017-11-08 11:01:0290const char kNavigationMojoResponseName[] = "Navigation response using Mojo";
91const char kNavigationMojoResponseDescription[] =
92 "Browser side navigation (aka PlzNavigate) is using blob URLs to deliver "
93 "the body of the main resource to the renderer process. This flag replaces "
94 "this mechanism by using a Mojo DataPipe.";
95
Brett Wilsonf27ff602017-07-07 22:28:4796const char kBrowserTaskSchedulerName[] = "Task Scheduler";
97const char kBrowserTaskSchedulerDescription[] =
98 "Enables redirection of some task posting APIs to the task scheduler.";
99
Carlos IL766fbc882018-02-16 02:34:52100const char kBundledConnectionHelpName[] = "Bundled Connection Help";
101const char kBundledConnectionHelpDescription[] =
102 "Enables or disables redirecting users who get an interstitial when "
103 "accessing https://support.google.com/chrome/answer/6098869 to local "
104 "connection help content.";
105
Brett Wilsonf27ff602017-07-07 22:28:47106const char kBypassAppBannerEngagementChecksName[] =
107 "Bypass user engagement checks";
108const char kBypassAppBannerEngagementChecksDescription[] =
109 "Bypasses user engagement checks for displaying app banners, such as "
110 "requiring that users have visited the site before and that the banner "
111 "hasn't been shown recently. This allows developers to test that other "
112 "eligibility requirements for showing app banners, such as having a "
113 "manifest, are met.";
114
Lucas Garronb9539b732017-10-31 00:22:09115const char kCommittedInterstitialsName[] = "Committed Interstitials";
116const char kCommittedInterstitialsDescription[] =
117 "Use committed error pages instead of transient navigation entries "
118 "for interstitial error pages (e.g. certificate errors).";
119
Brett Wilsonf27ff602017-07-07 22:28:47120const char kCastStreamingHwEncodingName[] =
121 "Cast Streaming hardware video encoding";
122const char kCastStreamingHwEncodingDescription[] =
123 "This option enables support in Cast Streaming for encoding video streams "
124 "using platform hardware.";
125
Amber Won478561d2017-08-19 01:02:59126const char kClickToOpenPDFName[] = "Click to open embedded PDFs";
127const char kClickToOpenPDFDescription[] =
128 "When the PDF plugin is unavailable, show a click-to-open placeholder for "
129 "embedded PDFs.";
130
Gary Kacmarcikfb69b212017-11-14 03:41:08131const char kClipboardContentSettingName[] = "Clipboard content setting";
132const char kClipboardContentSettingDescription[] =
133 "Enables a site-wide permission in the UI which controls access to the "
134 "asynchronous clipboard web API";
135
Brett Wilsonf27ff602017-07-07 22:28:47136const char kCloudImportName[] = "Cloud Import";
137const char kCloudImportDescription[] = "Allows the cloud-import feature.";
138
Christopher Cameronceb8727d2017-09-07 23:53:16139const char kForceColorProfileSRGB[] = "sRGB";
140const char kForceColorProfileP3[] = "Display P3 D65";
141const char kForceColorProfileColorSpin[] = "Color spin with gamma 2.4";
142const char kForceColorProfileHdr[] = "scRGB linear (HDR where available)";
143
144const char kForceColorProfileName[] = "Force color profile";
145const char kForceColorProfileDescription[] =
146 "Forces Chrome to use a specific color profile instead of the color "
147 "of the window's current monitor, as specified by the operating system.";
148
Brett Wilsonf27ff602017-07-07 22:28:47149const char kCompositedLayerBordersName[] = "Composited render layer borders";
150const char kCompositedLayerBordersDescription[] =
151 "Renders a border around composited Render Layers to help debug and study "
152 "layer compositing.";
153
Theresa Wellington39f634e12018-01-17 01:42:51154const char kContextualSuggestionsAboveArticlesName[] =
155 "Enable Contextual Suggestions Above Articles";
156const char kContextualSuggestionsAboveArticlesDescription[] =
157 "If enabled, shows contextual suggestions in a linear list above "
158 "article suggestions.";
159
Brett Wilsonf27ff602017-07-07 22:28:47160const char kContextualSuggestionsCarouselName[] =
Theresa Wellington39f634e12018-01-17 01:42:51161 "Enable Contextual Suggestions Carousel";
Brett Wilsonf27ff602017-07-07 22:28:47162const char kContextualSuggestionsCarouselDescription[] =
163 "If enabled, shows contextual suggestions in a horizontal carousel in "
164 "bottom sheet content.";
165
166const char kCreditCardAssistName[] = "Credit Card Assisted Filling";
167const char kCreditCardAssistDescription[] =
168 "Enable assisted credit card filling on certain sites.";
169
170const char kCrossProcessGuestViewIsolationName[] =
171 "Cross process frames for guests";
172const char kCrossProcessGuestViewIsolationDescription[] =
173 "Highly experimental where guests such as <webview> are implemented on "
174 "the out-of-process iframe infrastructure.";
175
Thanh Le659cb102017-12-20 22:00:19176const char kDataSaverServerPreviewsName[] = "Data Saver Server Previews";
177const char kDataSaverServerPreviewsDescription[] =
178 "Allow the Data Reduction Proxy to serve previews.";
Brett Wilsonf27ff602017-07-07 22:28:47179
180const char kDatasaverPromptName[] = "Cellular Data Saver Prompt";
181const char kDatasaverPromptDescription[] =
182 "Enables a prompt, which appears when a cellular network connection is "
183 "detected, to take the user to the Data Saver extension page on Chrome Web "
184 "Store.";
185const char kDatasaverPromptDemoMode[] = "Demo mode";
186
187const char kDebugPackedAppName[] = "Debugging for packed apps";
188const char kDebugPackedAppDescription[] =
189 "Enables debugging context menu options such as Inspect Element for packed "
190 "applications.";
191
192const char kDefaultTileHeightName[] = "Default tile height";
193const char kDefaultTileHeightDescription[] = "Specify the default tile height.";
194const char kDefaultTileHeightShort[] = "128";
195const char kDefaultTileHeightTall[] = "256";
196const char kDefaultTileHeightGrande[] = "512";
197const char kDefaultTileHeightVenti[] = "1024";
198
199const char kDefaultTileWidthName[] = "Default tile width";
200const char kDefaultTileWidthDescription[] = "Specify the default tile width.";
201const char kDefaultTileWidthShort[] = "128";
202const char kDefaultTileWidthTall[] = "256";
203const char kDefaultTileWidthGrande[] = "512";
204const char kDefaultTileWidthVenti[] = "1024";
205
206const char kDebugShortcutsName[] = "Debugging keyboard shortcuts";
207const char kDebugShortcutsDescription[] =
208 "Enables additional keyboard shortcuts that are useful for debugging Ash.";
209
210const char kDeviceDiscoveryNotificationsName[] =
211 "Device Discovery Notifications";
212const char kDeviceDiscoveryNotificationsDescription[] =
213 "Device discovery notifications on local network.";
214
215const char kDevtoolsExperimentsName[] = "Developer Tools experiments";
216const char kDevtoolsExperimentsDescription[] =
217 "Enables Developer Tools experiments. Use Settings panel in Developer "
218 "Tools to toggle individual experiments.";
219
220const char kDisableAudioForDesktopShareName[] =
221 "Disable Audio For Desktop Share";
222const char kDisableAudioForDesktopShareDescription[] =
223 "With this flag on, desktop share picker window will not let the user "
224 "choose whether to share audio.";
225
Chris Palmer917bc052018-03-14 19:28:31226const char kDisablePushStateThrottleName[] = "Disable pushState throttling";
227const char kDisablePushStateThrottleDescription[] =
228 "Disables throttling of history.pushState and history.replaceState method "
229 "calls.";
230
Brett Wilsonf27ff602017-07-07 22:28:47231const char kDisableTabForDesktopShareName[] =
232 "Disable Desktop Share with tab source";
233const char kDisableTabForDesktopShareDescription[] =
234 "This flag controls whether users can choose a tab for desktop share.";
235
236const char kDisallowDocWrittenScriptsUiName[] =
237 "Block scripts loaded via document.write";
238const char kDisallowDocWrittenScriptsUiDescription[] =
239 "Disallows fetches for third-party parser-blocking scripts inserted into "
240 "the main frame via document.write.";
241
Brett Wilsonf27ff602017-07-07 22:28:47242const char kDistanceFieldTextName[] = "Distance field text";
243const char kDistanceFieldTextDescription[] =
244 "Text is rendered with signed distance fields rather than bitmap alpha "
245 "masks.";
246
247const char kDriveSearchInChromeLauncherName[] =
248 "Drive Search in Chrome App Launcher";
249const char kDriveSearchInChromeLauncherDescription[] =
250 "Files from Drive will show up when searching the Chrome App Launcher.";
251
Brett Wilsonf27ff602017-07-07 22:28:47252const char kEasyUnlockBluetoothLowEnergyDiscoveryName[] =
253 "Smart Lock Bluetooth Low Energy Discovery";
254const char kEasyUnlockBluetoothLowEnergyDiscoveryDescription[] =
Tim Song52c142c62017-07-20 03:29:07255 "Disables a Smart Lock setting that allows Chromebook to discover phones "
Brett Wilsonf27ff602017-07-07 22:28:47256 "over Bluetooth Low Energy in order to unlock the Chromebook when the "
257 "phone is in its proximity.";
258
Gustavo Sacomotofb11164f2017-07-21 12:56:18259const char kEasyUnlockPromotionsName[] = "Smart Lock Promotions";
260const char kEasyUnlockPromotionsDescription[] =
261 "Enables Smart Lock promotions. Promotions will be periodically display "
262 "if the user is eligible.";
263
Brett Wilsonf27ff602017-07-07 22:28:47264const char kEmbeddedExtensionOptionsName[] = "Embedded extension options";
265const char kEmbeddedExtensionOptionsDescription[] =
266 "Display extension options as an embedded element in chrome://extensions "
267 "rather than opening a new tab.";
268
269const char kEnableAsmWasmName[] =
270 "Experimental Validate Asm.js and convert to WebAssembly when valid.";
271const char kEnableAsmWasmDescription[] =
272 R"*(Validate Asm.js when "use asm" is present and then convert to )*"
273 R"*(WebAssembly.)*";
274
Shanfeng Zhang19c16562017-10-17 02:30:40275const char kEnableAutofillCreditCardAblationExperimentDisplayName[] =
276 "Credit card autofill ablation experiment.";
277const char kEnableAutofillCreditCardAblationExperimentDescription[] =
278 "If enabled, credit card autofill suggestions will not display.";
279
Brett Wilsonf27ff602017-07-07 22:28:47280const char kEnableAutofillCreditCardLastUsedDateDisplayName[] =
281 "Display the last used date of a credit card in autofill.";
282const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
283 "If enabled, display the last used date of a credit card in autofill.";
284
285const char kEnableAutofillCreditCardUploadCvcPromptName[] =
286 "Enable requesting missing CVC during Autofill credit card upload";
287const char kEnableAutofillCreditCardUploadCvcPromptDescription[] =
288 "If enabled, requests missing CVC when offering to upload credit cards to "
289 "Google Payments.";
290
Jared Saul1e4786a2017-12-14 01:43:09291const char kEnableAutofillCreditCardUploadSendDetectedValuesName[] =
292 "Always send metadata on detected form values for Autofill credit card "
293 "upload";
294const char kEnableAutofillCreditCardUploadSendDetectedValuesDescription[] =
295 "If enabled, always checks with Google Payments when deciding whether to "
296 "offer credit card upload, even if some data is missing.";
297
Jared Saul5c2a1482017-12-09 00:24:31298const char kEnableAutofillCreditCardUploadSendPanFirstSixName[] =
299 "Send first six digits of PAN when deciding whether to offer Autofill "
300 "credit card upload";
301const char kEnableAutofillCreditCardUploadSendPanFirstSixDescription[] =
302 "If enabled, when deciding whether to offer credit card upload to Google "
303 "Payments, sends the first six digits of the card number to avoid cases "
304 "where card upload is likely to fail.";
305
Jason Guo71f621e2017-10-13 04:18:53306const char kEnableAutofillSendBillingCustomerNumberName[] =
307 "Enable autofill sending billing customer number when calling Google "
308 "Payments";
309const char kEnableAutofillSendBillingCustomerNumberDescription[] =
310 "If enabled, autofill sends billing customer number when calling Google "
311 "Payments.";
312
tmartinocd414732018-02-12 19:01:01313const char kEnableAutofillNativeDropdownViewsName[] =
314 "Display Autofill Dropdown Using Views";
315const char kEnableAutofillNativeDropdownViewsDescription[] =
316 "If enabled, the Autofill Dropdown will be built natively using Views, "
317 "rather than painted directly to a canvas.";
318
Vitalii Iarko4f9834ce2017-08-04 07:05:19319const char kEnableBreakingNewsPushName[] = "Breaking News Push";
320const char kEnableBreakingNewsPushDescription[] =
321 "Listen for breaking news content suggestions (e.g. for New Tab Page) "
322 "through Google Cloud Messaging.";
323
Brett Wilsonf27ff602017-07-07 22:28:47324const char kEnableBrotliName[] = "Brotli Content-Encoding.";
325const char kEnableBrotliDescription[] =
326 "Enable Brotli Content-Encoding support.";
327
Qiang Xu0f602fe62017-12-22 01:31:20328const char kEnableCaptivePortalRandomUrl[] = "Captive Portal url Randomization";
329const char kEnableCaptivePortalRandomUrlDescription[] =
330 "Enable Captive Portal URL randomization.";
331
sclittle50e4bb92017-07-08 02:23:03332const char kEnableClientLoFiName[] = "Client-side Lo-Fi previews";
333
334const char kEnableClientLoFiDescription[] =
335 "Enable showing low fidelity images on some pages on slow networks.";
336
David Reveman87b4b692018-03-09 21:22:22337const char kEnableCursorMotionBlurName[] = "Enable Cursor Motion Blur";
338const char kEnableCursorMotionBlurDescription[] =
339 "Enable motion blur effect for the cursor.";
340
Doug Arnett08b4067b2017-10-12 20:14:44341const char kEnableNoScriptPreviewsName[] = "NoScript previews";
342
343const char kEnableNoScriptPreviewsDescription[] =
344 "Enable disabling JavaScript on some pages on slow networks.";
345
Thanh Le2c279fbc2017-11-21 01:25:40346const char kDataReductionProxyServerAlternative1[] = "Use alt. server config 1";
347const char kDataReductionProxyServerAlternative2[] = "Use alt. server config 2";
348const char kDataReductionProxyServerAlternative3[] = "Use alt. server config 3";
349const char kDataReductionProxyServerAlternative4[] = "Use alt. server config 4";
350const char kDataReductionProxyServerAlternative5[] = "Use alt. server config 5";
351const char kDataReductionProxyServerAlternative6[] = "Use alt. server config 6";
352const char kDataReductionProxyServerAlternative7[] = "Use alt. server config 7";
353const char kDataReductionProxyServerAlternative8[] = "Use alt. server config 8";
354const char kDataReductionProxyServerAlternative9[] = "Use alt. server config 9";
355const char kDataReductionProxyServerAlternative10[] =
356 "Use alt. server config 10";
Brett Wilsonf27ff602017-07-07 22:28:47357const char kEnableDataReductionProxyServerExperimentName[] =
358 "Use an alternative Data Saver back end configuration.";
359const char kEnableDataReductionProxyServerExperimentDescription[] =
360 "Enable a different approach to saving data by configuring the back end "
361 "server";
362
363const char kEnableDataReductionProxySavingsPromoName[] =
364 "Data Saver 1 MB Savings Promo";
365const char kEnableDataReductionProxySavingsPromoDescription[] =
366 "Enable a Data Saver promo for 1 MB of savings. If Data Saver has already "
367 "saved 1 MB of data, then the promo will not be shown. Data Saver must be "
368 "enabled for the promo to be shown.";
369
Matt Giucad4870432017-11-24 01:04:38370const char kEnableDesktopPWAsName[] = "Desktop PWAs";
371const char kEnableDesktopPWAsDescription[] =
372 "Experimental windowing and install banner treatment for Progressive Web "
373 "Apps on desktop platforms. Implies #enable-experimental-app-banners.";
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17374
Giovanni Ortuño Urquidi40c8e792018-02-28 04:18:59375const char kEnableDesktopPWAsLinkCapturingName[] =
376 "Desktop PWAs Link Capturing";
377const char kEnableDesktopPWAsLinkCapturingDescription[] =
378 "Experimentally enable link capturing for Desktop PWAs. Navigations to "
379 "URLs that are in-scope of Desktop PWAs will open in a window. Requires "
380 "#enable-desktop-pwas.";
381
Ahmed Fakhry0037de02018-01-29 19:58:31382const char kEnableDockedMagnifierName[] = "Docked Magnifier";
383const char kEnableDockedMagnifierDescription[] =
384 "Enables the Docked Magnifier (a.k.a. picture-in-picture magnifier).";
385
Brett Wilsonf27ff602017-07-07 22:28:47386const char kEnableEnumeratingAudioDevicesName[] =
387 "Experimentally enable enumerating audio devices.";
388const char kEnableEnumeratingAudioDevicesDescription[] =
389 "Experimentally enable the use of enumerating audio devices.";
390
391const char kEnableGenericSensorName[] = "Generic Sensor";
392const char kEnableGenericSensorDescription[] =
Mikhail Pozdnyakov73373a62017-08-24 17:31:25393 "Enables motion sensor classes based on Generic Sensor API, i.e. "
394 "Accelerometer, LinearAccelerationSensor, Gyroscope, "
395 "AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
396
397const char kEnableGenericSensorExtraClassesName[] =
398 "Generic Sensor Extra Classes";
399const char kEnableGenericSensorExtraClassesDescription[] =
400 "Enables an extra set of sensor classes based on Generic Sensor API, which "
401 "expose previously unavailable platform features, i.e. AmbientLightSensor "
402 "and Magnetometer interfaces.";
Brett Wilsonf27ff602017-07-07 22:28:47403
Brett Wilsonf27ff602017-07-07 22:28:47404const char kEnableHDRName[] = "HDR mode";
405const char kEnableHDRDescription[] =
406 "Enables HDR support on compatible displays.";
407
408const char kEnableHeapProfilingName[] = "Heap profiling";
409const char kEnableHeapProfilingDescription[] = "Enables heap profiling.";
410const char kEnableHeapProfilingModePseudo[] = "Enabled (pseudo mode)";
411const char kEnableHeapProfilingModeNative[] = "Enabled (native mode)";
412const char kEnableHeapProfilingTaskProfiler[] = "Enabled (task mode)";
413
414const char kEnableHttpFormWarningName[] =
415 "Show in-form warnings for sensitive fields when the top-level page is not "
Eric Lawrenceed8fccf2017-09-08 21:27:15416 "HTTPS";
Brett Wilsonf27ff602017-07-07 22:28:47417const char kEnableHttpFormWarningDescription[] =
418 "Attaches a warning UI to any password or credit card fields detected when "
419 "the top-level page is not HTTPS";
420
Sidney San Martín9375b892017-09-09 00:29:54421const char kEnableMacMaterialDesignDownloadShelfName[] =
422 "Enable Material Design download shelf";
423
424const char kEnableMacMaterialDesignDownloadShelfDescription[] =
425 "If enabled, the download shelf uses Material Design.";
426
Tatiana Gornakafb40452017-07-31 13:50:04427const char kEnableManualFallbacksFillingName[] =
428 "Manual fallbacks for password manager forms filling";
429const char kEnableManualFallbacksFillingDescription[] =
430 "If enabled, then if user clicks on the password field on a form, popup "
431 "might contain generation fallbacks or 'Show all saved passwords' "
432 "fallback.";
433
vabr0215a8e2017-03-28 12:47:34434const char kEnableMaterialDesignBookmarksName[] =
435 "Enable Material Design bookmarks";
vabr0215a8e2017-03-28 12:47:34436const char kEnableMaterialDesignBookmarksDescription[] =
437 "If enabled, the chrome://bookmarks/ URL loads the Material Design "
438 "bookmarks page.";
439
vabr0215a8e2017-03-28 12:47:34440const char kEnableMaterialDesignExtensionsName[] =
441 "Enable Material Design extensions";
vabr0215a8e2017-03-28 12:47:34442const char kEnableMaterialDesignExtensionsDescription[] =
443 "If enabled, the chrome://extensions/ URL loads the Material Design "
444 "extensions page.";
445
Anton Urusov47cd4932017-09-19 14:41:41446const char kEnablePolicyToolName[] = "Enable policy management page";
447const char kEnablePolicyToolDescription[] =
448 "If enabled, the chrome://policy-tool URL loads a page for managing "
449 "policies.";
450
Tsuyoshi Horoea7edb72017-11-12 04:14:00451const char kEnablePWAFullCodeCacheName[] = "Enable PWA full code cache";
452const char kEnablePWAFullCodeCacheDescription[] =
453 "Generate V8 code cache in Cache Storage while installing Service Worker "
454 "for PWAs.";
455
Weidong Guof1e5a892018-01-06 02:26:39456const char kDisableMultiMirroringName[] =
Weidong Guo7dfd1482017-11-08 05:56:28457 "Display mirroring across multiple displays.";
Weidong Guof1e5a892018-01-06 02:26:39458const char kDisableMultiMirroringDescription[] =
459 "Disable Display mirroring across multiple displays.";
Weidong Guo7dfd1482017-11-08 05:56:28460
Brett Wilsonf27ff602017-07-07 22:28:47461const char kEnableNavigationTracingName[] = "Enable navigation tracing";
462const char kEnableNavigationTracingDescription[] =
463 "This is to be used in conjunction with the trace-upload-url flag. "
464 "WARNING: When enabled, Chrome will record performance data for every "
465 "navigation and upload it to the URL specified by the trace-upload-url "
466 "flag. The trace may include personally identifiable information (PII) "
467 "such as the titles and URLs of websites you visit.";
468
Bernhard Bauer5533f9912017-11-06 17:56:02469const char kEnableNetworkLoggingToFileName[] = "Enable network logging to file";
470const char kEnableNetworkLoggingToFileDescription[] =
471 "Enables network logging to a file named netlog.json in the user data "
472 "directory. The file can be imported into chrome://net-internals.";
473
Brett Wilsonf27ff602017-07-07 22:28:47474const char kEnableNetworkServiceName[] = "Enable network service";
475const char kEnableNetworkServiceDescription[] =
476 "Enables the network service, which makes network requests through a "
477 "separate service. Note: most features don't work with this yet.";
478
John Abd-El-Malek8067cc02017-12-04 23:23:20479const char kEnableNetworkServiceInProcessName[] =
480 "Runs network service in-process";
481const char kEnableNetworkServiceInProcessDescription[] =
482 "Runs the network service in the browser process.";
483
dpapaded8349472017-10-25 03:21:27484const char kEnableNewPrintPreview[] = "Enable new Print Preview UI";
485const char kEnableNewPrintPreviewDescription[] =
486 "If enabled, Print Preview will display a newer UI";
487
Ahmed Fakhry2fd8fc82017-07-28 16:31:12488const char kEnableNightLightName[] = "Enable Night Light";
489const char kEnableNightLightDescription[] =
490 "Enable the Night Light feature which controls the color temperature of "
491 "the screen.";
492
xlou8b56f672018-02-09 23:34:30493const char kEnableNupPrintingName[] = "Enable N-up printing";
494const char kEnableNupPrintingDescription[] =
495 "Enable N-up printing in the print preview panel.";
496
Sophie Chang117a3b22017-10-24 22:25:36497const char kEnableOptimizationHintsName[] = "Optimization Hints";
498const char kEnableOptimizationHintsDescription[] =
499 "Enable the Optimization Hints feature which incorporates server hints"
500 "into decisions for what optimizations to perform on some pages on slow "
501 "networks.";
502
Yutaka Hirano98be3272017-08-07 17:55:39503const char kEnableOutOfBlinkCORSName[] = "Out of blink CORS";
504const char kEnableOutOfBlinkCORSDescription[] =
505 "CORS handling logic is moved out of blink.";
506
kylechar7051c092018-02-05 20:31:39507const char kVizDisplayCompositorName[] = "Viz Display Compositor (OOP-D)";
508const char kVizDisplayCompositorDescription[] =
509 "If enabled, the display compositor runs as part of the viz service in the"
510 "GPU process.";
511
Ria Jiang6a129b982018-03-01 18:30:40512const char kVizHitTestDrawQuadName[] = "Viz Hit-test Draw-quad version";
513const char kVizHitTestDrawQuadDescription[] =
514 "If enabled, event targeting uses the new viz-assisted hit-testing logic, "
515 "with hit-test data computed from the CompositorFrame.";
516
Erik Chen49bbfa22017-08-18 08:49:56517const char kEnableOutOfProcessHeapProfilingName[] =
Albert J. Wong174174762018-01-18 23:50:23518 "Out of process heap profiling start mode.";
Erik Chen49bbfa22017-08-18 08:49:56519const char kEnableOutOfProcessHeapProfilingDescription[] =
520 "Creates a profiling service that records stacktraces for all live, "
erikchen94aca892018-01-18 00:21:19521 "malloced objects. Heap dumps can be obtained at chrome://tracing "
522 "[category:memory-infra] and chrome://memory-internals. This setting "
523 "controls which processes are profiled. As long as this setting is not "
524 "disabled, users can start profiling any given process in "
525 "chrome://memory-internals.";
526const char kEnableOutOfProcessHeapProfilingModeMinimal[] = "Browser and GPU";
527const char kEnableOutOfProcessHeapProfilingModeAll[] = "All processes";
528const char kEnableOutOfProcessHeapProfilingModeAllRenderers[] = "All renderers";
529const char kEnableOutOfProcessHeapProfilingModeBrowser[] = "Only browser";
530const char kEnableOutOfProcessHeapProfilingModeGpu[] = "Only GPU.";
erikchen0a5dd692017-12-12 00:53:10531const char kEnableOutOfProcessHeapProfilingModeManual[] =
erikchen94aca892018-01-18 00:21:19532 "None by default. Visit chrome://memory-internals to choose which "
533 "processes to profile.";
Albert J. Wongbd5bd902017-11-09 19:56:15534const char kEnableOutOfProcessHeapProfilingModeRendererSampling[] =
535 "Profile a random sampling of renderer processes, ensuring only one is "
536 "ever profiled at a time.";
erikchen94aca892018-01-18 00:21:19537
Erik Chen8bb76b52017-12-06 19:06:25538const char kOutOfProcessHeapProfilingKeepSmallAllocations[] =
erikchen94aca892018-01-18 00:21:19539 "Emit small allocations in memlog heap dumps.";
Erik Chen8bb76b52017-12-06 19:06:25540const char kOutOfProcessHeapProfilingKeepSmallAllocationsDescription[] =
541 "By default, small allocations are pruned from the heap dump. This reduces "
542 "the size of the compressed trace by 100x. If pruning is disabled, the "
543 "chrome://tracing UI may be unable to take or load the trace. Save the "
544 "trace directly using chrome://memory-internals, and use other mechanisms "
545 "[e.g. diff_heap_profiler.py] to examine the trace. Note that "
546 "automatically uploaded traces will always be pruned. This only affects "
547 "manually taken memory-infra traces.";
Erik Chen49bbfa22017-08-18 08:49:56548
erikchen8bc20d82018-02-14 03:21:51549const char kOutOfProcessHeapProfilingSampling[] = "Sample memlog allocations";
550const char kOutOfProcessHeapProfilingSamplingDescription[] =
551 "Use a poisson process to sample allocations. Defaults to a sample rate of "
erikchen99bfce02018-02-14 20:29:22552 "10000. This results in low noise for large and/or frequent allocations ["
553 "[size * frequency >> 10000]. This means that aggregate numbers [e.g. "
554 "total size of malloc-ed objects] and large and/or frequent allocations "
555 "can be trusted with high fidelity.";
erikchen8bc20d82018-02-14 03:21:51556
Erik Chen3303fd0232018-01-11 20:29:05557const char kOOPHPStackModeName[] =
558 "The type of stack to record for memlog heap dumps";
559const char kOOPHPStackModeDescription[] =
erikchen94aca892018-01-18 00:21:19560 "By default, memlog heap dumps record native stacks, which requires a "
561 "post-processing step to symbolize. Requires a custom build with frame "
erikchen011ad3f2018-01-26 17:54:55562 "pointers to work on Android. Native with thread names will add the thread "
563 "name as the first frame of each native stack. It's also possible to "
564 "record a pseudo stack using trace events as identifiers. It's also "
565 "possible to do a mix of both.";
erikchen94aca892018-01-18 00:21:19566const char kOOPHPStackModeMixed[] = "Mixed";
567const char kOOPHPStackModeNative[] = "Native";
erikchen011ad3f2018-01-26 17:54:55568const char kOOPHPStackModeNativeWithThreadNames[] = "Native with thread names";
erikchen94aca892018-01-18 00:21:19569const char kOOPHPStackModePseudo[] = "Trace events";
Erik Chen3303fd0232018-01-11 20:29:05570
François Beaufort2e75f492018-02-08 20:44:46571const char kEnablePictureInPictureName[] = "Enable Picture-in-Picture.";
Brett Wilsonf27ff602017-07-07 22:28:47572const char kEnablePictureInPictureDescription[] =
François Beaufort2e75f492018-02-08 20:44:46573 "Enable the Picture-in-Picture feature for videos.";
Brett Wilsonf27ff602017-07-07 22:28:47574
F#m59d036e2017-09-13 07:22:17575const char kEnablePixelCanvasRecordingName[] = "Enable pixel canvas recording";
576const char kEnablePixelCanvasRecordingDescription[] =
577 "Pixel canvas recording allows the compositor to raster contents aligned "
578 "with the pixel and improves text rendering. This should be enabled when a "
579 "device is using fractional scale factor.";
580
Brett Wilsonf27ff602017-07-07 22:28:47581const char kEnableTokenBindingName[] = "Token Binding.";
582const char kEnableTokenBindingDescription[] = "Enable Token Binding support.";
583
Sahel Sharifyd732ab12017-11-29 23:03:16584extern const char kEnableTouchpadAndWheelScrollLatchingName[] =
585 "Wheel Scroll Latching.";
586extern const char kEnableTouchpadAndWheelScrollLatchingDescription[] =
587 "Wheel scroll latching enforces latching to a single element for the "
588 "duration of a scroll sequence.";
589
Brett Wilsonf27ff602017-07-07 22:28:47590const char kEnableUseZoomForDsfName[] =
591 "Use Blink's zoom for device scale factor.";
592const char kEnableUseZoomForDsfDescription[] =
593 "If enabled, Blink uses its zooming mechanism to scale content for device "
594 "scale factor.";
595const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
596const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
597const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
598
599const char kEnableScrollAnchoringName[] = "Scroll Anchoring";
600const char kEnableScrollAnchoringDescription[] =
601 "Adjusts scroll position to prevent visible jumps when offscreen content "
602 "changes.";
603
Patrick Noland8ee016e2018-01-24 11:44:53604const char kEnableScrollAnchorSerializationName[] =
605 "Scroll Anchor Serialization";
606const char kEnableScrollAnchorSerializationDescription[] =
607 "Save the scroll anchor and use it to restore the scroll position when "
608 "navigating.";
609
Brad Nelson5cd500e2018-01-04 00:50:19610const char kEnableSharedArrayBufferName[] =
611 "Experimental enabled SharedArrayBuffer support in JavaScript.";
612const char kEnableSharedArrayBufferDescription[] =
613 "Enable SharedArrayBuffer support in JavaScript.";
614
Brett Wilsonf27ff602017-07-07 22:28:47615const char kEnableWasmName[] = "WebAssembly structured cloning support.";
616const char kEnableWasmDescription[] =
617 "Enable web pages to use WebAssembly structured cloning.";
618
Brett Wilsonf27ff602017-07-07 22:28:47619const char kEnableImageCaptureAPIName[] = "Image Capture API";
620const char kEnableImageCaptureAPIDescription[] =
621 "Enables the Web Platform Image Capture API: takePhoto(), "
622 "getPhotoCapabilities(), etc.";
623
624const char kEnableZeroSuggestRedirectToChromeName[] =
625 "Experimental contextual omnibox suggestion";
626const char kEnableZeroSuggestRedirectToChromeDescription[] =
627 "Change omnibox contextual suggestions to an experimental source. Note "
628 "that this is not an on/off switch for contextual omnibox and it only "
629 "applies to suggestions provided before the user starts typing a URL or a "
630 "search query (i.e. zero suggest).";
631
632const char kEnableWasmStreamingName[] =
633 "WebAssembly streaming compile/instantiate support.";
634const char kEnableWasmStreamingDescription[] =
635 "WebAssembly.{compile|instantiate} taking a Response as parameter.";
636
Brett Wilsonf27ff602017-07-07 22:28:47637const char kExpensiveBackgroundTimerThrottlingName[] =
638 "Throttle expensive background timers";
639const char kExpensiveBackgroundTimerThrottlingDescription[] =
640 "Enables intervention to limit CPU usage of background timers to 1%.";
641
642const char kExperimentalAppBannersName[] = "Experimental app banners";
643const char kExperimentalAppBannersDescription[] =
Matt Giucad4870432017-11-24 01:04:38644 "Enables a new experimental app banner flow and UI. Implies "
645 "#enable-app-banners.";
Brett Wilsonf27ff602017-07-07 22:28:47646
647const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
648const char kExperimentalCanvasFeaturesDescription[] =
649 "Enables the use of experimental canvas features which are still in "
650 "development.";
651
Nicholas Verneccd8259802018-02-22 01:22:04652const char kExperimentalCrostiniUIName[] = "Experimental Crostini";
653const char kExperimentalCrostiniUIDescription[] =
654 "Enables in-development Crostini features.";
655
Brett Wilsonf27ff602017-07-07 22:28:47656const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
657const char kExperimentalExtensionApisDescription[] =
658 "Enables experimental extension APIs. Note that the extension gallery "
659 "doesn't allow you to upload extensions that use experimental APIs.";
660
661const char kExperimentalFullscreenExitUIName[] =
662 "Experimental fullscreen exit UI";
663const char kExperimentalFullscreenExitUIDescription[] =
664 "Displays experimental UI to allow mouse and touch input methods to exit "
665 "fullscreen mode.";
666
Brett Wilsonf27ff602017-07-07 22:28:47667const char kExperimentalKeyboardLockUiName[] = "Experimental keyboard lock UI.";
668const char kExperimentalKeyboardLockUiDescription[] =
669 "An experimental full screen with keyboard lock mode requiring users to "
670 "hold Esc to exit.";
671
672const char kExperimentalSecurityFeaturesName[] =
673 "Potentially annoying security features";
674const char kExperimentalSecurityFeaturesDescription[] =
675 "Enables several security features that will likely break one or more "
676 "pages that you visit on a daily basis. Strict mixed content checking, for "
677 "example. And locking powerful features to secure contexts. This flag will "
678 "probably annoy you.";
679
680const char kExperimentalWebPlatformFeaturesName[] =
681 "Experimental Web Platform features";
682const char kExperimentalWebPlatformFeaturesDescription[] =
683 "Enables experimental Web Platform features that are in development.";
684
685const char kExtensionContentVerificationName[] =
686 "Extension Content Verification";
687const char kExtensionContentVerificationDescription[] =
688 "This flag can be used to turn on verification that the contents of the "
689 "files on disk for extensions from the webstore match what they're "
690 "expected to be. This can be used to turn on this feature if it would not "
691 "otherwise have been turned on, but cannot be used to turn it off (because "
692 "this setting can be tampered with by malware).";
693const char kExtensionContentVerificationBootstrap[] =
694 "Bootstrap (get expected hashes, but do not enforce them)";
695const char kExtensionContentVerificationEnforce[] =
696 "Enforce (try to get hashes, and enforce them if successful)";
697const char kExtensionContentVerificationEnforceStrict[] =
698 "Enforce strict (hard fail if we can't get hashes)";
699
700const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
701const char kExtensionsOnChromeUrlsDescription[] =
702 "Enables running extensions on chrome:// URLs, where extensions explicitly "
703 "request this permission.";
galinapae72e152017-05-12 13:12:28704
Brett Wilsonecb80982017-07-12 20:34:51705const char kFastUnloadName[] = "Fast tab/window close";
706const char kFastUnloadDescription[] =
707 "Enables fast tab/window closing - runs a tab's onunload js handler "
708 "independently of the GUI.";
vabr0215a8e2017-03-28 12:47:34709
Brett Wilsonecb80982017-07-12 20:34:51710const char kFeaturePolicyName[] = "Feature Policy";
711const char kFeaturePolicyDescription[] =
712 "Enables granting and removing access to features through the "
713 "Feature-Policy HTTP header.";
vabr0215a8e2017-03-28 12:47:34714
Brett Wilsonecb80982017-07-12 20:34:51715const char kFontCacheScalingName[] = "FontCache scaling";
716const char kFontCacheScalingDescription[] =
717 "Reuse a cached font in the renderer to serve different sizes of font for "
718 "faster layout.";
719
720const char kForceEffectiveConnectionTypeName[] =
721 "Override effective connection type";
722const char kForceEffectiveConnectionTypeDescription[] =
723 "Overrides the effective connection type of the current connection "
Thanh Lea98f12f2017-12-18 19:35:30724 "returned by the network quality estimator. Slow 2G on Cellular returns "
725 "Slow 2G when connected to a cellular network, and the actual estimate "
726 "effective connection type when not on a cellular network. Previews are "
727 "usually served on 2G networks.";
Brett Wilsonecb80982017-07-12 20:34:51728const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
729const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
730const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
Thanh Lea98f12f2017-12-18 19:35:30731const char kEffectiveConnectionTypeSlow2GOnCellularDescription[] =
732 "Slow 2G On Cellular";
Brett Wilsonecb80982017-07-12 20:34:51733const char kEffectiveConnectionType2GDescription[] = "2G";
734const char kEffectiveConnectionType3GDescription[] = "3G";
735const char kEffectiveConnectionType4GDescription[] = "4G";
736
737const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
738const char kFillOnAccountSelectDescription[] =
739 "Filling of passwords when an account is explicitly selected by the user "
740 "rather than autofilling credentials on page load.";
741
Brett Wilsonecb80982017-07-12 20:34:51742const char kForceTextDirectionName[] = "Force text direction";
743const char kForceTextDirectionDescription[] =
744 "Explicitly force the per-character directionality of UI text to "
745 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
746 "direction of the character language.";
747const char kForceDirectionLtr[] = "Left-to-right";
748const char kForceDirectionRtl[] = "Right-to-left";
749
750const char kForceUiDirectionName[] = "Force UI direction";
751const char kForceUiDirectionDescription[] =
752 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
753 "mode, overriding the default direction of the UI language.";
754
755const char kFramebustingName[] =
756 "Framebusting requires same-origin or a user gesture";
757const char kFramebustingDescription[] =
758 "Don't permit an iframe to navigate the top level browsing context unless "
759 "they are same-origin or the iframe is processing a user gesture.";
760
761const char kGamepadExtensionsName[] = "Gamepad Extensions";
762const char kGamepadExtensionsDescription[] =
763 "Enabling this option allows web applications to access experimental "
764 "extensions to the Gamepad APIs.";
765
Brett Wilsonecb80982017-07-12 20:34:51766const char kGpuRasterizationMsaaSampleCountName[] =
767 "GPU rasterization MSAA sample count.";
768const char kGpuRasterizationMsaaSampleCountDescription[] =
769 "Specify the number of MSAA samples for GPU rasterization.";
770const char kGpuRasterizationMsaaSampleCountZero[] = "0";
771const char kGpuRasterizationMsaaSampleCountTwo[] = "2";
772const char kGpuRasterizationMsaaSampleCountFour[] = "4";
773const char kGpuRasterizationMsaaSampleCountEight[] = "8";
774const char kGpuRasterizationMsaaSampleCountSixteen[] = "16";
775
776const char kGpuRasterizationName[] = "GPU rasterization";
777const char kGpuRasterizationDescription[] =
778 "Use GPU to rasterize web content. Requires impl-side painting.";
Brett Wilson7b44537e2017-08-18 01:38:28779const char kForceGpuRasterization[] = "Force-enabled for all layers";
Brett Wilsonecb80982017-07-12 20:34:51780
781const char kGoogleProfileInfoName[] = "Google profile name and icon";
782const char kGoogleProfileInfoDescription[] =
783 "Enables using Google information to populate the profile name and icon in "
784 "the avatar menu.";
785
786const char kHarfbuzzRendertextName[] = "HarfBuzz for UI text";
787const char kHarfbuzzRendertextDescription[] =
788 "Enable cross-platform HarfBuzz layout engine for UI text. Doesn't affect "
789 "web content.";
790
Manu Cornete5f855b2018-03-13 03:35:25791const char kHideNonActiveAppsFromShelfName[] =
792 "Hide apps that are not running from the shelf";
793const char kHideNonActiveAppsFromShelfDescription[] =
794 "Save space in the shelf by hiding apps that are not running.";
795
Brett Wilsonecb80982017-07-12 20:34:51796const char kHistoryRequiresUserGestureName[] =
797 "New history entries require a user gesture.";
798const char kHistoryRequiresUserGestureDescription[] =
799 "Require a user gesture to add a history entry.";
800const char kHyperlinkAuditingName[] = "Hyperlink auditing";
801const char kHyperlinkAuditingDescription[] = "Sends hyperlink auditing pings.";
802
803const char kHostedAppQuitNotificationName[] =
804 "Quit notification for hosted apps";
805const char kHostedAppQuitNotificationDescription[] =
806 "Display a notification when quitting Chrome if hosted apps are currently "
807 "running.";
808
809const char kHostedAppShimCreationName[] =
810 "Creation of app shims for hosted apps on Mac";
811const char kHostedAppShimCreationDescription[] =
812 "Create app shims on Mac when creating a hosted app.";
813
Ana-Cosmina Popescuda3bcbe2017-09-22 18:24:48814const char kHtmlBasedUsernameDetectorName[] = "HTML-based username detector";
815const char kHtmlBasedUsernameDetectorDescription[] =
816 "Use HTML-based username detector for the password manager.";
817
Brett Wilsonecb80982017-07-12 20:34:51818const char kIconNtpName[] = "Large icons on the New Tab page";
819const char kIconNtpDescription[] =
820 "Enable the experimental New Tab page using large icons.";
821
822const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
823const char kIgnoreGpuBlacklistDescription[] =
824 "Overrides the built-in software rendering list and enables "
825 "GPU-acceleration on unsupported system configurations.";
826
Thanh Le5f090efa52017-12-27 22:39:44827const char kIgnorePreviewsBlacklistName[] = "Ignore Previews Blacklist";
828const char kIgnorePreviewsBlacklistDescription[] =
829 "Ignore decisions made by the PreviewsBlackList";
830
Brett Wilsonecb80982017-07-12 20:34:51831const char kImportantSitesInCbdName[] =
832 "Important sites options in clear browsing data dialog";
833const char kImportantSitesInCbdDescription[] =
834 "Include the option to whitelist important sites in the clear browsing "
835 "data dialog.";
836
Claudio Magni61c210922017-12-28 00:29:51837const char kImprovedLanguageSettingsName[] = "Improved Language Settings";
838const char kImprovedLanguageSettingsDescription[] =
839 "Set of changes for Language Settings. These changes are intended to fix "
840 "the major bugs related to Language Settings.";
841
Brett Wilsonecb80982017-07-12 20:34:51842const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
843const char kInProductHelpDemoModeChoiceDescription[] =
844 "Selects the In-Product Help demo mode.";
845
846const char kJavascriptHarmonyName[] = "Experimental JavaScript";
847const char kJavascriptHarmonyDescription[] =
848 "Enable web pages to use experimental JavaScript features.";
849
850const char kJavascriptHarmonyShippingName[] =
851 "Latest stable JavaScript features";
852const char kJavascriptHarmonyShippingDescription[] =
853 "Some web pages use legacy or non-standard JavaScript extensions that may "
854 "conflict with the latest JavaScript features. This flag allows disabling "
855 "support of those features for compatibility with such pages.";
856
Yutaka Hiranof7f2f632017-09-06 10:40:08857const char kKeepAliveRendererForKeepaliveRequestsName[] =
858 "Keep a renderer alive for keepalive fetch requests";
859const char kKeepAliveRendererForKeepaliveRequestsDescription[] =
860 "Keep a render process alive when the process has a pending fetch request "
861 "with `keepalive' specified.";
862
Joe Downing095fd6d2018-02-01 18:40:36863const char kKeyboardLockApiName[] = "Experimental keyboard lock API.";
864const char kKeyboardLockApiDescription[] =
865 "Enables websites to use the new keyboard{Lock|Unlock} API to intercept "
866 "specific key events and have them routed directly to the webpage when in "
867 "fullscreen mode. Implies #experimental-keyboard-lock-ui.";
868
Brett Wilsonecb80982017-07-12 20:34:51869const char kLcdTextName[] = "LCD text antialiasing";
870const char kLcdTextDescription[] =
871 "If disabled, text is rendered with grayscale antialiasing instead of LCD "
872 "(subpixel) when doing accelerated compositing.";
873
Matt Giucac399982f2017-10-06 07:51:29874const char kLeftToRightUrlsName[] =
875 "Render bidirectional URLs from left to right";
876const char kLeftToRightUrlsDescription[] =
877 "An experimental Bidi URL rendering algorithm where the URL components are "
878 "always shown in order from left to right, regardless of any RTL "
879 "characters. (The contents of each component are still rendered with the "
880 "normal Bidi algorithm.)";
881
Brett Wilsonecb80982017-07-12 20:34:51882const char kLoadMediaRouterComponentExtensionName[] =
883 "Load Media Router Component Extension";
884const char kLoadMediaRouterComponentExtensionDescription[] =
885 "Loads the Media Router component extension at startup.";
886
Derek Chengd24c68c2018-03-12 19:09:32887const char kMediaRouterCastAllowAllIPsName[] =
888 "Connect to Cast devices on all IP addresses";
889const char kMediaRouterCastAllowAllIPsDescription[] =
890 "Have the Media Router connect to Cast devices on all IP addresses, not "
891 "just RFC1918/RFC4913 private addresses.";
892
Brett Wilsonecb80982017-07-12 20:34:51893const char kManualPasswordGenerationName[] = "Manual password generation.";
894const char kManualPasswordGenerationDescription[] =
895 "Show a 'Generate Password' option on the context menu for all password "
896 "fields.";
897
Dominic Battref27e8762017-08-23 11:16:25898const char kManualPasswordSavingName[] = "Manual password saving.";
899const char kManualPasswordSavingDescription[] =
900 "Show the password manager icon when typing into a password filed. "
901 "Clicking it allows to save the password without submitting the form.";
902
Brett Wilsonecb80982017-07-12 20:34:51903const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
904const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
Brett Wilsonecb80982017-07-12 20:34:51905
Lei Zhang2eca9082017-10-17 20:42:50906const char kMaterialDesignIncognitoNTPName[] = "Material Design Incognito NTP.";
907const char kMaterialDesignIncognitoNTPDescription[] =
Brett Wilsonecb80982017-07-12 20:34:51908 "If enabled, the Incognito New Tab page uses the new material design with "
909 "a better readable text.";
910
911const char kMediaRemotingName[] = "Media Remoting during Cast Tab Mirroring";
912const char kMediaRemotingDescription[] =
913 "When Casting a tab to a remote device, enabling this turns on an "
914 "optimization that forwards the content bitstream directly to the remote "
915 "device when a video is fullscreened.";
916
917const char kMemoryAblationName[] = "Memory ablation experiment";
918const char kMemoryAblationDescription[] =
919 "Allocates extra memory in the browser process.";
920
921const char kMemoryCoordinatorName[] = "Memory coordinator";
922const char kMemoryCoordinatorDescription[] =
923 "Enable memory coordinator instead of memory pressure listeners.";
924
925const char kMessageCenterNewStyleNotificationName[] = "New style notification";
926const char kMessageCenterNewStyleNotificationDescription[] =
927 "Enables the experiment style of material-design notification";
928
Brett Wilsonecb80982017-07-12 20:34:51929const char kMhtmlGeneratorOptionName[] = "MHTML Generation Option";
930const char kMhtmlGeneratorOptionDescription[] =
931 "Provides experimental options for MHTML file generator.";
932const char kMhtmlSkipNostoreMain[] = "Skips no-store main frame.";
933const char kMhtmlSkipNostoreAll[] = "Skips all no-store resources.";
934
Kouhei Ueno08445c22017-09-05 03:58:30935const char kModuleScriptsDynamicImportName[] =
936 "Enable ECMAScript 6 modules dynamic import";
937const char kModuleScriptsDynamicImportDescription[] =
938 "Enables ECMAScript 6 modules dynamic \"import\" syntax support in V8 and "
939 "Blink.";
940
Hiroshige Hayashizaki15c2eb92017-10-20 04:57:05941const char kModuleScriptsImportMetaUrlName[] =
942 "Enable ECMAScript 6 modules import.meta.url";
943const char kModuleScriptsImportMetaUrlDescription[] =
944 "Enables ECMAScript 6 modules import.meta.url syntax support in V8 and "
945 "Blink.";
946
Brett Wilsonecb80982017-07-12 20:34:51947const char kNewAudioRenderingMixingStrategyName[] =
948 "New audio rendering mixing strategy";
949const char kNewAudioRenderingMixingStrategyDescription[] =
950 "Use the new audio rendering mixing strategy.";
951
952const char kNewBookmarkAppsName[] = "The new bookmark app system";
953const char kNewBookmarkAppsDescription[] =
954 "Enables the new system for creating bookmark apps.";
955
Brett Wilsonecb80982017-07-12 20:34:51956const char kNewRemotePlaybackPipelineName[] =
957 "Enable the new remote playback pipeline.";
958const char kNewRemotePlaybackPipelineDescription[] =
959 "Enable the new pipeline for playing media element remotely via "
960 "RemotePlayback API or native controls.";
CJ DiMeglio7b4a199f2017-11-30 01:26:50961const char kUseSurfaceLayerForVideoName[] =
962 "Enable the use of SurfaceLayer objects for videos.";
963const char kUseSurfaceLayerForVideoDescription[] =
964 "Enable compositing onto a Surface instead of a VideoLayer "
965 "for videos.";
Brett Wilsonecb80982017-07-12 20:34:51966
967const char kNewUsbBackendName[] = "Enable new USB backend";
968const char kNewUsbBackendDescription[] =
969 "Enables the new experimental USB backend for Windows.";
vabr0215a8e2017-03-28 12:47:34970
brettw5f9c1642017-05-14 17:12:48971const char kNostatePrefetchName[] = "No-State Prefetch";
vabr0215a8e2017-03-28 12:47:34972const char kNostatePrefetchDescription[] =
973 R"*("No-State Prefetch" pre-downloads resources to improve load )*"
974 R"*(times. "Prerender" does a full pre-rendering of the page, to )*"
975 R"*(improve load times even more. "Simple Load" does nothing and is )*"
976 R"*(similar to disabling the feature, but collects more metrics for )*"
977 R"*(comparison purposes.)*";
978
Brett Wilsonecb80982017-07-12 20:34:51979const char kNotificationsNativeFlagName[] = "Enable native notifications.";
980const char kNotificationsNativeFlagDescription[] =
981 "Enable support for using the native notification toasts and notification "
982 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:34983
Zentaro Kavanaghbad511c2017-10-18 22:29:00984#if defined(OS_POSIX)
985const char kNtlmV2EnabledName[] = "Enable NTLMv2 Authentication";
986const char kNtlmV2EnabledDescription[] =
987 "Enable NTLMv2 HTTP Authentication. This disables NTLMv1 support.";
988#endif
989
Brett Wilsonecb80982017-07-12 20:34:51990const char kNumRasterThreadsName[] = "Number of raster threads";
991const char kNumRasterThreadsDescription[] =
992 "Specify the number of raster threads.";
993const char kNumRasterThreadsOne[] = "1";
994const char kNumRasterThreadsTwo[] = "2";
995const char kNumRasterThreadsThree[] = "3";
996const char kNumRasterThreadsFour[] = "4";
997
998const char kOfferStoreUnmaskedWalletCardsName[] =
999 "Google Payments card saving checkbox";
1000const char kOfferStoreUnmaskedWalletCardsDescription[] =
1001 "Show the checkbox to offer local saving of a credit card downloaded from "
1002 "the server.";
1003
1004const char kOfflineAutoReloadName[] = "Offline Auto-Reload Mode";
1005const char kOfflineAutoReloadDescription[] =
1006 "Pages that fail to load while the browser is offline will be "
1007 "auto-reloaded when the browser is online again.";
1008
1009const char kOfflineAutoReloadVisibleOnlyName[] =
1010 "Only Auto-Reload Visible Tabs";
1011const char kOfflineAutoReloadVisibleOnlyDescription[] =
1012 "Pages that fail to load while the browser is offline will only be "
1013 "auto-reloaded if their tab is visible.";
1014
Brett Wilsonecb80982017-07-12 20:34:511015const char kOmniboxDisplayTitleForCurrentUrlName[] =
1016 "Include title for the current URL in the omnibox";
1017const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
1018 "In the event that the omnibox provides suggestions on-focus, the URL of "
1019 "the current page is provided as the first suggestion without a title. "
1020 "Enabling this flag causes the title to be displayed.";
1021
Benoit Lizeab08362c2017-07-19 14:50:541022const char kOmniboxSpareRendererName[] =
1023 "Start spare renderer on omnibox focus";
1024const char kOmniboxSpareRendererDescription[] =
1025 "When the omnibox is focused, start an empty spare renderer. This can "
1026 "speed up the load of the navigation from the omnibox.";
1027
Tommy C. Li8875a442017-08-23 00:10:591028const char kOmniboxUIElideSuggestionUrlAfterHostName[] =
1029 "Omnibox UI Elide Suggestion URL After Host";
1030const char kOmniboxUIElideSuggestionUrlAfterHostDescription[] =
1031 "Elides the path, query, and ref of suggested URLs in the Omnibox "
1032 "dropdown.";
1033
Tommy C. Lid79d4402017-12-22 22:49:121034const char kOmniboxUIHideSteadyStateUrlSchemeAndSubdomainsName[] =
1035 "Omnibox UI Hide Steady-State URL Scheme and Trivial Subdomains";
1036const char kOmniboxUIHideSteadyStateUrlSchemeAndSubdomainsDescription[] =
1037 "In the Omnibox, hide the scheme and trivial subdomains from steady state "
1038 "displayed URLs. Hidden portions are restored during editing.";
1039
Brett Wilsonecb80982017-07-12 20:34:511040const char kOmniboxUIMaxAutocompleteMatchesName[] =
1041 "Omnibox UI Max Autocomplete Matches";
1042
1043const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
1044 "Changes the maximum number of autocomplete matches displayed in the "
1045 "Omnibox UI.";
1046
1047const char kOmniboxUINarrowDropdownName[] = "Omnibox UI Narrow Dropdown";
1048const char kOmniboxUINarrowDropdownDescription[] =
1049 "Makes the suggestions dropdown width match the omnibox width.";
1050
Justin Donnelly65c9e8b2017-10-01 05:15:011051const char kOmniboxUIShowSuggestionFaviconsName[] =
1052 "Omnibox UI Show Suggestion Favicons";
1053const char kOmniboxUIShowSuggestionFaviconsDescription[] =
1054 "Shows favicons instead of generic vector icons for URL suggestions in the "
1055 "Omnibox dropdown.";
1056
1057const char kOmniboxUISwapTitleAndUrlName[] = "Omnibox UI Swap Title and URL";
1058const char kOmniboxUISwapTitleAndUrlDescription[] =
1059 "In the omnibox dropdown, shows titles before URLs when both are "
1060 "available.";
1061
Brett Wilsonecb80982017-07-12 20:34:511062const char kOmniboxUIVerticalLayoutName[] = "Omnibox UI Vertical Layout";
1063const char kOmniboxUIVerticalLayoutDescription[] =
1064 "Displays Omnibox sugestions in 2 lines - title over origin.";
1065
1066const char kOmniboxUIVerticalMarginName[] = "Omnibox UI Vertical Margin";
1067const char kOmniboxUIVerticalMarginDescription[] =
1068 "Changes the vertical margin in the Omnibox UI.";
1069
Troy Hildebrandtb32637ca2018-02-21 23:25:091070const char kOmniboxVoiceSearchAlwaysVisibleName[] =
1071 "Omnibox Voice Search Always Visible";
1072const char kOmniboxVoiceSearchAlwaysVisibleDescription[] =
1073 "Always displays voice search icon in focused omnibox as long as voice "
1074 "search is possible";
1075
Brett Wilsonecb80982017-07-12 20:34:511076const char kOriginTrialsName[] = "Origin Trials";
1077const char kOriginTrialsDescription[] =
1078 "Enables origin trials for controlling access to feature/API experiments.";
1079
Becca Hughes930d8cd2017-10-02 11:09:121080const char kOverflowIconsForMediaControlsName[] =
1081 "Icons on Media Controls Overflow Menu";
1082const char kOverflowIconsForMediaControlsDescription[] =
1083 "Displays icons on the overflow menu of the native media controls";
1084
Brett Wilsonecb80982017-07-12 20:34:511085const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
1086const char kOverlayScrollbarsDescription[] =
1087 "Enable the experimental overlay scrollbars implementation. You must also "
1088 "enable threaded compositing to have the scrollbars animate.";
1089
chaopenge8aa016b2017-08-24 15:20:191090const char kOverlayScrollbarsFlashAfterAnyScrollUpdateName[] =
1091 "Flash Overlay Scrollbars After Any Scroll Update";
1092const char kOverlayScrollbarsFlashAfterAnyScrollUpdateDescription[] =
1093 "Flash Overlay Scrollbars After any scroll update happends in page. You"
1094 " must also enable Overlay Scrollbars.";
1095
chaopeng343678022017-08-24 18:45:001096const char kOverlayScrollbarsFlashWhenMouseEnterName[] =
1097 "Flash Overlay Scrollbars When Mouse Enter";
1098const char kOverlayScrollbarsFlashWhenMouseEnterDescription[] =
1099 "Flash Overlay Scrollbars When Mouse Enter a scrollable area. You must also"
1100 " enable Overlay Scrollbars.";
1101
Claudio Magni81326f92017-09-01 05:21:181102const char kUseNewAcceptLanguageHeaderName[] = "Use new Accept-Language header";
1103const char kUseNewAcceptLanguageHeaderDescription[] =
1104 "Adds the base language code after other corresponding language+region "
1105 "codes. This ensures that users receive content in their preferred "
1106 "language.";
1107
Brett Wilsonecb80982017-07-12 20:34:511108const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
1109const char kOverscrollHistoryNavigationDescription[] =
Mohsen Izadi88b392a2018-02-15 06:57:481110 "History navigation in response to horizontal overscroll.";
Brett Wilsonecb80982017-07-12 20:34:511111const char kOverscrollHistoryNavigationSimpleUi[] = "Simple";
Mohsen Izadi88b392a2018-02-15 06:57:481112const char kOverscrollHistoryNavigationParallaxUi[] = "Parallax";
Brett Wilsonecb80982017-07-12 20:34:511113
1114const char kOverscrollStartThresholdName[] = "Overscroll start threshold";
1115const char kOverscrollStartThresholdDescription[] =
1116 "Changes overscroll start threshold relative to the default value.";
1117const char kOverscrollStartThreshold133Percent[] = "133%";
1118const char kOverscrollStartThreshold166Percent[] = "166%";
1119const char kOverscrollStartThreshold200Percent[] = "200%";
1120
Xing Liu5400a002017-09-15 21:48:291121const char kParallelDownloadingName[] = "Parallel downloading";
1122const char kParallelDownloadingDescription[] =
Yannic Bonenbergera32f9902017-11-20 18:47:061123 "Enable parallel downloading to accelerate download speed.";
Xing Liu5400a002017-09-15 21:48:291124
Brett Wilsonecb80982017-07-12 20:34:511125const char kPassiveEventListenerDefaultName[] =
1126 "Passive Event Listener Override";
1127const char kPassiveEventListenerDefaultDescription[] =
1128 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
1129 "haven't requested otherwise) to be treated as passive. This will break "
1130 "touch/wheel behavior on some websites but is useful for demonstrating the "
1131 "potential performance benefits of adopting passive event listeners.";
1132const char kPassiveEventListenerTrue[] = "True (when unspecified)";
1133const char kPassiveEventListenerForceAllTrue[] = "Force All True";
1134
1135const char kPassiveEventListenersDueToFlingName[] =
1136 "Touch Event Listeners Passive Default During Fling";
1137const char kPassiveEventListenersDueToFlingDescription[] =
1138 "Forces touchstart, and first touchmove per scroll event listeners during "
1139 "fling to be treated as passive.";
1140
1141const char kPassiveDocumentEventListenersName[] =
1142 "Document Level Event Listeners Passive Default";
1143const char kPassiveDocumentEventListenersDescription[] =
1144 "Forces touchstart, and touchmove event listeners on document level "
1145 "targets (which haven't requested otherwise) to be treated as passive.";
1146
1147const char kPasswordForceSavingName[] = "Force-saving of passwords";
1148const char kPasswordForceSavingDescription[] =
1149 "Allow the user to manually enforce password saving instead of relying on "
1150 "password manager's heuristics.";
1151
1152const char kPasswordGenerationName[] = "Password generation";
1153const char kPasswordGenerationDescription[] =
1154 "Allow the user to have Chrome generate passwords when it detects account "
1155 "creation pages.";
1156
Vaclav Brozekd8a3f542017-11-16 14:21:131157const char kPasswordExportName[] = "Password export";
1158const char kPasswordExportDescription[] =
1159 "Export functionality in password settings.";
1160
1161const char kPasswordImportName[] = "Password import";
1162const char kPasswordImportDescription[] =
1163 "Import functionality in password settings.";
Brett Wilsonecb80982017-07-12 20:34:511164
Friedrich Horschig03c91982018-01-25 14:21:281165const char kPasswordSearchMobileName[] = "Password search";
1166const char kPasswordSearchMobileDescription[] =
1167 "Search functionality in password settings.";
1168
Tom Sepez92a2cd242018-03-13 19:23:091169const char kPdfIsolationName[] = "PDF Isolation";
1170const char kPdfIsolationDescription[] =
1171 "Render PDF files from different origins in different plugin processes.";
1172
Brett Wilsonecb80982017-07-12 20:34:511173const char kPermissionsBlacklistName[] = "Permissions Blacklist";
1174const char kPermissionsBlacklistDescription[] =
1175 "Enables the Permissions Blacklist, which blocks permissions for "
1176 "blacklisted sites for Safe Browsing users.";
1177
1178const char kPinchScaleName[] = "Pinch scale";
1179const char kPinchScaleDescription[] =
1180 "Enables experimental support for scale using pinch.";
1181
Doug Arnett620ff542018-02-06 17:54:221182const char kPreviewsAllowedName[] = "Previews Allowed";
1183const char kPreviewsAllowedDescription[] =
1184 "Allows previews to be shown subject to specific preview types being "
1185 "enabled and the client experiencing specific triggering conditions. "
1186 "May be used as a kill-switch to turn off all potential preview types.";
1187
Brett Wilsonecb80982017-07-12 20:34:511188const char kPrintPdfAsImageName[] = "Print Pdf as Image";
1189const char kPrintPdfAsImageDescription[] =
1190 "If enabled, an option to print PDF files as images will be available in "
1191 "print preview.";
1192
1193const char kPrintPreviewRegisterPromosName[] =
1194 "Print Preview Registration Promos";
1195const char kPrintPreviewRegisterPromosDescription[] =
1196 "Enable registering unregistered cloud printers from print preview.";
1197
1198const char kProtectSyncCredentialName[] = "Autofill sync credential";
1199const char kProtectSyncCredentialDescription[] =
1200 "How the password manager handles autofill for the sync credential.";
1201
1202const char kProtectSyncCredentialOnReauthName[] =
1203 "Autofill sync credential only for transactional reauth pages";
1204const char kProtectSyncCredentialOnReauthDescription[] =
1205 "How the password manager handles autofill for the sync credential only "
1206 "for transactional reauth pages.";
1207
Mohsen Izadi93faac12017-07-29 04:45:151208const char kPullToRefreshName[] = "Pull-to-refresh gesture";
1209const char kPullToRefreshDescription[] =
1210 "Pull-to-refresh gesture in response to vertical overscroll.";
1211
Brett Wilsonecb80982017-07-12 20:34:511212const char kPushApiBackgroundModeName[] = "Enable Push API background mode";
1213const char kPushApiBackgroundModeDescription[] =
1214 "Enable background mode for the Push API. This allows Chrome to continue "
1215 "running after the last window is closed, and to launch at OS startup, if "
1216 "the Push API needs it.";
1217
Troy Hildebrandt7228ad12018-02-23 21:18:241218const char kQueryInOmniboxName[] = "Query in Omnibox";
1219const char kQueryInOmniboxDescription[] =
1220 "Only display query terms in the omnibox when viewing a search results "
1221 "page.";
1222
Brett Wilsonecb80982017-07-12 20:34:511223const char kQuicName[] = "Experimental QUIC protocol";
1224const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1225
1226const char kReducedReferrerGranularityName[] =
1227 "Reduce default 'referer' header granularity.";
1228const char kReducedReferrerGranularityDescription[] =
1229 "If a page hasn't set an explicit referrer policy, setting this flag will "
1230 "reduce the amount of information in the 'referer' header for cross-origin "
1231 "requests.";
1232
Claudio Magnie0a80bb2018-01-31 02:52:581233extern const char kRegionalLocalesAsDisplayUIName[] =
1234 "Allow regional locales as display UI";
1235extern const char kRegionalLocalesAsDisplayUIDescription[] =
1236 "This flag allows regional locales to be selected as display UI by the "
1237 "user in Language Settings. The actual locale of the system is derived "
1238 "from the user selection based on some simple fallback logic.";
1239
Christian Dullweber1af31e62018-02-22 11:49:481240const char kRemoveNavigationHistoryName[] =
Christian Dullweberb13ffda2018-02-23 11:42:141241 "Remove navigation entry on history deletion";
Christian Dullweber1af31e62018-02-22 11:49:481242const char kRemoveNavigationHistoryDescription[] =
1243 "Remove a navigation entry when the corresponding history entry has been "
1244 "deleted.";
1245
Mihai Sardarescu6d0f5b72017-10-30 11:24:381246const char kRemoveUsageOfDeprecatedGaiaSigninEndpointName[] =
1247 "Remove usage of the deprecated GAIA sign-in endpoint";
1248const char kRemoveUsageOfDeprecatedGaiaSigninEndpointDescription[] =
1249 "The Gaia sign-in endpoint used for full-tab sign-in page is deprecated. "
1250 "This flags controls wheter it should no longer be used during a sign-in "
1251 " flow.";
1252
Yutaka Hirano4c0f2f5d452017-11-17 04:24:351253const char kRendererSideResourceSchedulerName[] =
1254 "Renderer side ResourceScheduler";
1255const char kRendererSideResourceSchedulerDescription[] =
1256 "Migrate some ResourceScheduler functionalities to renderer";
1257
Brett Wilsonecb80982017-07-12 20:34:511258const char kRequestTabletSiteName[] =
1259 "Request tablet site option in the settings menu";
1260const char kRequestTabletSiteDescription[] =
1261 "Allows the user to request tablet site. Web content is often optimized "
1262 "for tablet devices. When this option is selected the user agent string is "
1263 "changed to indicate a tablet device. Web content optimized for tablets is "
1264 "received there after for the current tab.";
1265
1266const char kResetAppListInstallStateName[] =
1267 "Reset the App Launcher install state on every restart.";
1268const char kResetAppListInstallStateDescription[] =
1269 "Reset the App Launcher install state on every restart. While this flag is "
1270 "set, Chrome will forget the launcher has been installed each time it "
1271 "starts. This is used for testing the App Launcher install flow.";
1272
1273const char kResourceLoadSchedulerName[] = "Use the resource load scheduler";
1274const char kResourceLoadSchedulerDescription[] =
1275 "Uses the resource load scheduler in blink to schedule and throttle "
1276 "resource load requests.";
1277
Brett Wilsonecb80982017-07-12 20:34:511278const char kSafeSearchUrlReportingName[] = "SafeSearch URLs reporting.";
1279const char kSafeSearchUrlReportingDescription[] =
1280 "If enabled, inappropriate URLs can be reported back to SafeSearch.";
1281
Alexei Filippov98772752018-01-27 08:26:521282const char kSamplingHeapProfilerName[] = "Native memory sampling profiler.";
1283const char kSamplingHeapProfilerDescription[] =
1284 "Enables native memory sampling profiler with specified rate in KiB. "
1285 "If sampling rate is not provided the default value of 128 KiB is used.";
1286
Brett Wilsonecb80982017-07-12 20:34:511287const char kSaveasMenuLabelExperimentName[] =
1288 "Switch 'Save as' menu labels to 'Download'";
1289const char kSaveasMenuLabelExperimentDescription[] =
1290 "Enables an experiment to switch menu labels that use 'Save as...' to "
1291 "'Download'.";
1292
1293const char kSavePageAsMhtmlName[] = "Save Page as MHTML";
1294const char kSavePageAsMhtmlDescription[] =
1295 "Enables saving pages as MHTML: a single text file containing HTML and all "
1296 "sub-resources.";
1297
Nate Chapin9638e7102017-09-20 22:11:011298const char kSavePreviousDocumentResourcesName[] =
1299 "Save Previous Document Resources";
1300const char kSavePreviousDocumentResourcesDescription[] =
1301 "Saves an old document's cached resources until the specified point in the "
1302 "next document's lifecycle.";
1303const char kSavePreviousDocumentResourcesNever[] =
1304 "Don't explicitly save resources";
1305const char kSavePreviousDocumentResourcesUntilOnDOMContentLoaded[] =
1306 "Save resources until onDOMContentLoaded completes";
1307const char kSavePreviousDocumentResourcesUntilOnLoad[] =
1308 "Save resources until onload completes";
1309
Brett Wilsonecb80982017-07-12 20:34:511310const char kScrollPredictionName[] = "Scroll prediction";
1311const char kScrollPredictionDescription[] =
1312 "Predicts the finger's future position during scrolls allowing time to "
1313 "render the frame before the finger is there.";
1314
1315const char kSecondaryUiMd[] =
1316 "Material Design in the rest of the browser's native UI";
1317const char kSecondaryUiMdDescription[] =
1318 "Extends the --top-chrome-md setting to secondary UI (bubbles, dialogs, "
1319 "etc.). On Mac, this enables MacViews, which uses toolkit-views for native "
1320 "browser dialogs.";
1321
1322const char kServiceWorkerNavigationPreloadName[] =
1323 "Service worker navigation preload.";
1324const char kServiceWorkerNavigationPreloadDescription[] =
1325 "Enable web pages to use the experimental service worker navigation "
1326 "preload API.";
1327
gogeraldd5061b592017-09-06 23:39:551328const char kServiceWorkerPaymentAppsName[] = "Service Worker payment apps";
1329const char kServiceWorkerPaymentAppsDescription[] =
1330 "Enable Service Worker applications to integrate as payment apps";
1331
Makoto Shimazu22078cc2018-02-21 03:01:441332extern const char kServiceWorkerServicificationName[] =
1333 "Servicified service workers";
1334extern const char kServiceWorkerServicificationDescription[] =
1335 "Enable the servicified service workers. A servicified service worker can "
1336 "have direct connection from its clients, so that fetch events can be "
1337 "dispatched through the connection without hopping to the browser process.";
Makoto Shimazud9f333c2017-08-08 07:23:171338
Tsuyoshi Horobcb1c642017-11-24 16:32:141339const char kServiceWorkerScriptFullCodeCacheName[] =
1340 "Service worker script full code cache.";
1341const char kServiceWorkerScriptFullCodeCacheDescription[] =
1342 "Generate V8 full code cache of Service Worker scripts while installing.";
1343
Brett Wilsonecb80982017-07-12 20:34:511344const char kSettingsWindowName[] = "Show settings in a window";
1345const char kSettingsWindowDescription[] =
1346 "Settings will be shown in a dedicated window instead of as a browser tab.";
1347
Trent Apted750ba7022017-10-23 13:36:251348const char kShowAllDialogsWithViewsToolkitName[] =
1349 "Show all dialogs with Views toolkit";
1350const char kShowAllDialogsWithViewsToolkitDescription[] =
1351 "All browser dialogs will be shown using the Views toolkit rather than "
1352 "Cocoa. This requires <a href=\"#secondary-ui-md\">#secondary-ui-md</a>.";
1353
Brett Wilsonecb80982017-07-12 20:34:511354const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
1355const char kShowAutofillSignaturesDescription[] =
1356 "Annotates web forms with Autofill signatures as HTML attributes.";
1357
1358const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
1359const char kShowAutofillTypePredictionsDescription[] =
1360 "Annotates web forms with Autofill field type predictions as placeholder "
1361 "text.";
1362
1363const char kShowOverdrawFeedbackName[] = "Show overdraw feedback";
1364const char kShowOverdrawFeedbackDescription[] =
1365 "Visualize overdraw by color-coding elements based on if they have other "
1366 "elements drawn underneath.";
1367
yiyixbdfa9a0b2017-10-23 22:21:471368const char kEnableDrawOcclusionName[] = "Enable draw occlusion";
1369const char kEnableDrawOcclusionDescription[] =
1370 "Enable the system to use draw occlusion to skip draw quads when they are "
1371 "not shown on the screen.";
1372
Brett Wilsonecb80982017-07-12 20:34:511373const char kShowSavedCopyName[] = "Show Saved Copy Button";
1374const char kShowSavedCopyDescription[] =
1375 "When a page fails to load, if a stale copy of the page exists in the "
1376 "browser cache, a button will be presented to allow the user to load that "
1377 "stale copy. The primary enabling choice puts the button in the most "
1378 "salient position on the error page; the secondary enabling choice puts it "
1379 "secondary to the reload button.";
1380const char kEnableShowSavedCopyPrimary[] = "Enable: Primary";
1381const char kEnableShowSavedCopySecondary[] = "Enable: Secondary";
1382const char kDisableShowSavedCopy[] = "Disable";
1383
Brett Wilsonecb80982017-07-12 20:34:511384const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1385const char kSilentDebuggerExtensionApiDescription[] =
1386 "Do not show the infobar when an extension attaches to a page via "
1387 "chrome.debugger API. This is required to debug extension background "
1388 "pages.";
1389
Tsuyoshi Horo53895ba92018-03-14 04:06:481390const char kSignedHTTPExchangeName[] = "Signed HTTP Exchange";
1391const char kSignedHTTPExchangeDescription[] =
1392 "Enables Origin-Signed HTTP Exchanges support which is still in "
1393 "development. Warning: Enabling this may pose a security risk.";
1394
Brett Wilsonecb80982017-07-12 20:34:511395const char kSimpleCacheBackendName[] = "Simple Cache for HTTP";
1396const char kSimpleCacheBackendDescription[] =
1397 "The Simple Cache for HTTP is a new cache. It relies on the filesystem for "
1398 "disk space allocation.";
1399
1400const char kSimplifiedFullscreenUiName[] =
1401 "Simplified full screen / mouse lock UI.";
1402const char kSimplifiedFullscreenUiDescription[] =
1403 "A simplified new user experience when entering page-triggered full screen "
1404 "or mouse pointer lock states.";
1405
Christopher Thompson75ff845d2018-02-01 20:12:461406const char kSimplifyHttpsIndicatorName[] = "Simplify HTTPS indicator UI";
1407const char kSimplifyHttpsIndicatorDescription[] =
1408 "Change the UI treatment for HTTPS pages.";
1409
Brett Wilsonecb80982017-07-12 20:34:511410const char kSingleClickAutofillName[] = "Single-click autofill";
1411const char kSingleClickAutofillDescription[] =
1412 "Make autofill suggestions on initial mouse click on a form element.";
1413
Nick Carter855bc492018-03-10 00:44:571414const char kStrictSiteIsolationName[] = "Strict site isolation";
1415const char kStrictSiteIsolationDescription[] =
1416 "Security mode that enables site isolation for all sites. When enabled, "
1417 "each renderer process will contain pages from at most one site, using "
1418 "out-of-process iframes when needed. When enabled, this flag forces the "
1419 "strictest site isolation mode (SitePerProcess). When disabled, the site "
1420 "isolation mode will be determined by enterprise policy or field trial.";
1421
1422const char kSiteIsolationTrialOptOutName[] = "Site isolation trial opt-out";
1423const char kSiteIsolationTrialOptOutDescription[] =
1424 "Opts out of field trials that enable site isolation modes "
1425 "(SitePerProcess, IsolateOrigins, etc). Intended for diagnosing bugs that "
1426 "may be due to out-of-process iframes. Opt-out has no effect if site "
1427 "isolation is force-enabled via #enable-site-per-process or enterprise "
1428 "policy. Caution: this disables important mitigations for the Spectre CPU "
1429 "vulnerability affecting most computers.";
1430extern const char kSiteIsolationTrialOptOutChoiceDefault[] = "Default";
1431extern const char kSiteIsolationTrialOptOutChoiceOptOut[] =
1432 "Opt-out (not recommended)";
Brett Wilsonecb80982017-07-12 20:34:511433
1434const char kSiteSettings[] = "Site settings with All sites and Site details";
1435const char kSiteSettingsDescription[] =
1436 "Adds new ways of viewing Site settings.";
1437
Brett Wilsonecb80982017-07-12 20:34:511438const char kSmoothScrollingName[] = "Smooth Scrolling";
1439const char kSmoothScrollingDescription[] =
1440 "Animate smoothly when scrolling page content.";
1441
1442const char kSoftwareRasterizerName[] = "3D software rasterizer";
1443const char kSoftwareRasterizerDescription[] =
1444 "Fall back to a 3D software rasterizer when the GPU cannot be used.";
1445
Wei-Yin Chen (陳威尹)deff0802018-01-19 06:29:201446const char kSoleIntegrationName[] = "Sole integration";
1447const char kSoleIntegrationDescription[] =
1448 "Enable Sole integration for browser customization. You must restart "
1449 "the browser twice for changes to take effect.";
1450
Tommy Steimel77704be2017-08-28 22:14:401451const char kSoundContentSettingName[] = "Sound content setting";
1452const char kSoundContentSettingDescription[] =
1453 "Enable site-wide muting in content settings and tab strip context menu.";
1454
Alexandr Ilinf0500ed32017-09-27 21:12:361455const char kSpeculativePreconnectName[] = "Enable new preconnect predictor";
1456const char kSpeculativePreconnectDescription[] =
1457 "Enable the new implementation of preconnect and DNS preresolve. "
1458 "\"Learning\" means that only database construction is enabled, "
1459 "\"Preconnect\" enables both learning and preconnect and disables the "
1460 "existing implementation. \"No preconnect\" disables both implementations.";
1461
Brett Wilsonecb80982017-07-12 20:34:511462const char kSpeculativePrefetchName[] = "Speculative Prefetch";
vabr0215a8e2017-03-28 12:47:341463const char kSpeculativePrefetchDescription[] =
1464 R"*("Speculative Prefetch" fetches likely resources early to improve )*"
1465 R"*(load times, based on a local database (see chrome://predictors). )*"
1466 R"*("Learning" means that only the database construction is enabled, )*"
1467 R"*("Prefetching" that learning and prefetching are enabled.)*";
1468
Justin Donnelly4e448cb2017-07-07 21:32:131469const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
1470 "Enable speculative start of a service worker when a search is predicted.";
Justin Donnelly4e448cb2017-07-07 21:32:131471const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
1472 "If enabled, when the user enters text in the omnibox that looks like a "
1473 "a query, any service worker associated with the search engine the query "
1474 "will be sent to is started early.";
1475
Brett Wilsonecb80982017-07-12 20:34:511476const char kSpellingFeedbackFieldTrialName[] = "Spelling Feedback Field Trial";
1477const char kSpellingFeedbackFieldTrialDescription[] =
1478 "Enable the field trial for sending user feedback to spelling service.";
horo201d49492017-05-19 05:31:401479
Shubhie Panickerfaf082ed2018-01-03 04:49:151480const char kStopInBackgroundName[] = "Stop in background";
1481const char kStopInBackgroundDescription[] =
1482 "Stop scheduler task queues, in the background, "
1483 " after certain grace time.";
1484
1485const char kStopLoadingInBackgroundName[] = "Stop loading in background";
1486const char kStopLoadingInBackgroundDescription[] =
1487 "Stop loading tasks and loading "
1488 "resources, in the background, after certain grace time.";
1489
Brett Wilsonecb80982017-07-12 20:34:511490const char kSuggestionsWithSubStringMatchName[] =
1491 "Substring matching for Autofill suggestions";
1492const char kSuggestionsWithSubStringMatchDescription[] =
1493 "Match Autofill suggestions based on substrings (token prefixes) rather "
1494 "than just prefixes.";
vabr0215a8e2017-03-28 12:47:341495
Brett Wilsonecb80982017-07-12 20:34:511496const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1497const char kSyncSandboxDescription[] =
1498 "Connects to the testing server for Chrome Sync.";
vabr0215a8e2017-03-28 12:47:341499
Brett Wilsonecb80982017-07-12 20:34:511500const char kTabAudioMutingName[] = "Tab audio muting UI control";
1501const char kTabAudioMutingDescription[] =
1502 "When enabled, the audio indicators in the tab strip double as tab audio "
1503 "mute controls. This also adds commands in the tab context menu for "
1504 "quickly muting multiple selected tabs.";
vabr0215a8e2017-03-28 12:47:341505
Christian Dullweberd0d96f02017-09-13 09:22:511506const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1507const char kTabsInCbdDescription[] =
1508 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
1509
Becky Zhou99c22802017-10-19 05:09:271510const char kTabModalJsDialogName[] = "Auto-dismissing JavaScript Dialogs";
1511const char kTabModalJsDialogDescription[] =
1512 "If enabled, the JavaScript dialog will be auto dismissable when switching"
1513 " tab.";
1514
Brett Wilsonecb80982017-07-12 20:34:511515const char kTcpFastOpenName[] = "TCP Fast Open";
1516const char kTcpFastOpenDescription[] =
1517 "Enable the option to send extra authentication information in the initial "
1518 "SYN packet for a previously connected client, allowing faster data send "
1519 "start.";
vabr0215a8e2017-03-28 12:47:341520
Daniele Castagna0fead93e2018-01-10 20:40:291521const char kTintGlCompositedContentName[] = "Tint GL-composited content";
1522const char kTintGlCompositedContentDescription[] =
1523 "Tint contents composited using GL with a shade of red to help debug and "
1524 "study overlay support.";
1525
Brett Wilsonecb80982017-07-12 20:34:511526const char kTopChromeMd[] = "UI Layout for the browser's top chrome";
1527const char kTopChromeMdDescription[] =
Ahmed Fakhryb2552be92018-03-02 00:56:581528 "Toggles between 1) Normal - for clamshell devices, 2) Hybrid (previously "
1529 "touch) - middle point for devices with a touch screen, and 3) Touchable "
1530 "- new unified interface for touch and convertibles (Chrome OS).";
Brett Wilsonecb80982017-07-12 20:34:511531const char kTopChromeMdMaterial[] = "Normal";
Eugene Girard42dedf722017-10-12 21:07:531532const char kTopChromeMdMaterialAuto[] = "Auto";
Trent Aptedd3e5f022018-03-01 07:25:461533const char kTopChromeMdMaterialHybrid[] = "Hybrid";
Ahmed Fakhryb2552be92018-03-02 00:56:581534const char kTopChromeMdMaterialTouchOptimized[] = "Touchable";
vabr0215a8e2017-03-28 12:47:341535
Brett Wilsonecb80982017-07-12 20:34:511536const char kThreadedScrollingName[] = "Threaded scrolling";
1537const char kThreadedScrollingDescription[] =
1538 "Threaded handling of scroll-related input events. Disabling this will "
1539 "force all such scroll events to be handled on the main thread. Note that "
1540 "this can dramatically hurt scrolling performance of most websites and is "
1541 "intended for testing purposes only.";
1542
Steven Valdez4584b2482017-07-14 01:11:571543const char kTLS13VariantName[] = "TLS 1.3";
1544const char kTLS13VariantDescription[] = "Sets the TLS 1.3 variant used.";
1545const char kTLS13VariantDisabled[] = "Disabled";
Steven Valdez57d88652017-10-05 21:05:111546const char kTLS13VariantDeprecated[] = "Disabled (Deprecated Setting)";
Steven Valdez781157b2018-01-11 13:32:041547const char kTLS13VariantDraft23[] = "Enabled (Draft 23)";
Steven Valdez4584b2482017-07-14 01:11:571548
Brett Wilsonecb80982017-07-12 20:34:511549const char kTopDocumentIsolationName[] = "Top document isolation";
1550const char kTopDocumentIsolationDescription[] =
1551 "Highly experimental performance mode where cross-site iframes are kept in "
1552 "a separate process from the top document. In this mode, iframes from "
1553 "different third-party sites will be allowed to share a process.";
1554
Dominick Ng8896b1cd2017-10-17 23:24:361555const char kTopSitesFromSiteEngagementName[] = "Top Sites from Site Engagement";
1556const char kTopSitesFromSiteEngagementDescription[] =
1557 "Enable Top Sites on the New Tab Page to be sourced and sorted using site "
1558 "engagement.";
1559
Brett Wilsonecb80982017-07-12 20:34:511560const char kTouchAdjustmentName[] = "Touch adjustment";
1561const char kTouchAdjustmentDescription[] =
1562 "Refine the position of a touch gesture in order to compensate for touches "
1563 "having poor resolution compared to a mouse.";
1564
1565const char kTouchDragDropName[] = "Touch initiated drag and drop";
1566const char kTouchDragDropDescription[] =
1567 "Touch drag and drop can be initiated through long press on a draggable "
1568 "element.";
1569
1570const char kTouchEventsName[] = "Touch Events API";
1571const char kTouchEventsDescription[] =
1572 "Force Touch Events API feature detection to always be enabled or "
1573 "disabled, or to be enabled when a touchscreen is detected on startup "
Ella Gea6a203c92017-10-26 19:09:291574 "(Automatic).";
Brett Wilsonecb80982017-07-12 20:34:511575
1576const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
1577const char kTouchSelectionStrategyDescription[] =
1578 "Controls how text selection granularity changes when touch text selection "
1579 "handles are dragged. Non-default behavior is experimental.";
1580const char kTouchSelectionStrategyCharacter[] = "Character";
1581const char kTouchSelectionStrategyDirection[] = "Direction";
1582
1583const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
1584const char kTraceUploadUrlDescription[] =
1585 "This is to be used in conjunction with the enable-navigation-tracing "
1586 "flag. Please select the label that best describes the recorded traces. "
1587 "This will choose the destination the traces are uploaded to. If you are "
1588 "not sure, select other. If left empty, no traces will be uploaded.";
1589const char kTraceUploadUrlChoiceOther[] = "Other";
1590const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1591const char kTraceUploadUrlChoiceQa[] = "QA";
1592const char kTraceUploadUrlChoiceTesting[] = "Testing";
1593
Philippe Hamel7fdaa452017-09-29 17:22:491594const char kTranslateRankerEnforcementName[] =
1595 "Enforce TranslateRanker decisions";
1596const char kTranslateRankerEnforcementDescription[] =
1597 "Improved Translate UI triggering logic. TranslateRanker decides whether "
1598 "or not Translate UI should be triggered in a given context.";
1599
Brett Wilsonecb80982017-07-12 20:34:511600const char kTrySupportedChannelLayoutsName[] =
1601 "Causes audio output streams to check if channel layouts other than the "
1602 "default hardware layout are available.";
1603const char kTrySupportedChannelLayoutsDescription[] =
1604 "Causes audio output streams to check if channel layouts other than the "
1605 "default hardware layout are available. Turning this on will allow the OS "
1606 "to do stereo to surround expansion if supported. May expose third party "
1607 "driver bugs, use with caution.";
1608
David Roger6762a092018-01-31 15:55:071609const char kUnifiedConsentName[] = "Unified Consent";
1610const char kUnifiedConsentDescription[] =
1611 "Enables a unified management of user consent for privacy-related "
1612 "features. This includes new confirmation screens and improved settings "
1613 "pages.";
1614
Brett Wilsonecb80982017-07-12 20:34:511615const char kUiPartialSwapName[] = "Partial swap";
1616const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
1617
Chris Pickel3a227ae62017-08-24 10:47:261618const char kUseDdljsonApiName[] = "Use new ddljson API for Doodles";
1619const char kUseDdljsonApiDescription[] =
1620 "Enables the new ddljson API to fetch Doodles for the NTP.";
1621
Becca Hughes59c05b42017-11-03 13:11:581622const char kUseModernMediaControlsName[] = "New Media Controls";
1623const char kUseModernMediaControlsDescription[] =
1624 "Enables the new style native media controls.";
1625
Mustaq Ahmedc646c0a2017-10-20 20:08:301626const char kUserActivationV2Name[] = "User Activation v2";
1627const char kUserActivationV2Description[] =
1628 "Enable simple user activation for APIs that are otherwise controlled by "
1629 "user gesture tokens.";
1630
Brett Wilsonecb80982017-07-12 20:34:511631const char kUserConsentForExtensionScriptsName[] =
1632 "User consent for extension scripts";
1633const char kUserConsentForExtensionScriptsDescription[] =
1634 "Require user consent for an extension running a script on the page, if "
1635 "the extension requested permission to run on all urls.";
1636
1637const char kUseSuggestionsEvenIfFewFeatureName[] =
1638 "Disable minimum for server-side tile suggestions on NTP.";
1639const char kUseSuggestionsEvenIfFewFeatureDescription[] =
1640 "Request server-side suggestions even if there are only very few of them "
1641 "and use them for tiles on the New Tab Page.";
1642
1643const char kV8CacheOptionsName[] = "V8 caching mode.";
1644const char kV8CacheOptionsDescription[] =
1645 "Caching mode for the V8 JavaScript engine.";
Brett Wilsonecb80982017-07-12 20:34:511646const char kV8CacheOptionsCode[] = "Cache V8 compiler data.";
1647
Hitoshi Yoshida3e5db562017-09-11 02:31:081648const char kV8ContextSnapshotName[] = "Use a snapshot to create V8 contexts.";
1649const char kV8ContextSnapshotDescription[] =
1650 "Sets to use a snapshot to create V8 contexts in frame creation.";
1651
Michael Hablich896d52662017-10-23 15:59:571652const char kV8VmFutureName[] = "Future V8 VM features";
1653const char kV8VmFutureDescription[] =
1654 "This enables upcoming and experimental V8 VM features. "
1655 "This flag does not enable experimental JavaScript features.";
1656
Brett Wilsonecb80982017-07-12 20:34:511657const char kVideoFullscreenOrientationLockName[] =
1658 "Lock screen orientation when playing a video fullscreen.";
1659const char kVideoFullscreenOrientationLockDescription[] =
1660 "Lock the screen orientation of the device to match video orientation when "
1661 "a video goes fullscreen. Only on phones.";
1662
1663const char kVideoRotateToFullscreenName[] =
1664 "Rotate-to-fullscreen gesture for videos.";
1665const char kVideoRotateToFullscreenDescription[] =
1666 "Enter/exit fullscreen when device is rotated to/from the orientation of "
1667 "the video. Only on phones.";
1668
1669const char kWalletServiceUseSandboxName[] =
1670 "Use Google Payments sandbox servers";
1671const char kWalletServiceUseSandboxDescription[] =
1672 "For developers: use the sandbox service for Google Payments API calls.";
1673
Brett Wilsonecb80982017-07-12 20:34:511674const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
1675const char kWebglDraftExtensionsDescription[] =
1676 "Enabling this option allows web applications to access the WebGL "
1677 "Extensions that are still in draft status.";
1678
1679const char kWebMidiName[] = "Web MIDI API";
1680const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
1681
1682const char kWebPaymentsName[] = "Web Payments";
1683const char kWebPaymentsDescription[] =
1684 "Enable Web Payments API integration, a JavaScript API for merchants.";
1685
Mathieu Perreault51339b82017-07-20 17:06:051686const char kWebPaymentsModifiersName[] = "Enable web payment modifiers";
1687const char kWebPaymentsModifiersDescription[] =
1688 "If the website provides modifiers in the payment request, show the custom "
1689 "total for each payment instrument, update the shopping cart when "
1690 "instruments are switched, and send modified payment method specific data "
1691 "to the payment app.";
1692
Brett Wilsonecb80982017-07-12 20:34:511693const char kWebrtcEchoCanceller3Name[] = "WebRTC Echo Canceller 3.";
1694const char kWebrtcEchoCanceller3Description[] =
1695 "Experimental WebRTC echo canceller (AEC3).";
1696
1697const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
1698const char kWebrtcHwDecodingDescription[] =
1699 "Support in WebRTC for decoding video streams using platform hardware.";
1700
1701const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
1702const char kWebrtcHwEncodingDescription[] =
1703 "Support in WebRTC for encoding video streams using platform hardware.";
1704
1705const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
1706const char kWebrtcHwH264EncodingDescription[] =
1707 "Support in WebRTC for encoding h264 video streams using platform "
1708 "hardware.";
1709
1710const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
1711const char kWebrtcHwVP8EncodingDescription[] =
1712 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
1713
Niels Möller090866a2018-02-13 10:55:031714const char kWebrtcNewEncodeCpuLoadEstimatorName[] =
1715 "WebRTC new encode cpu load estimator";
1716const char kWebrtcNewEncodeCpuLoadEstimatorDescription[] =
1717 "Enable new estimator for the encoder cpu load, for evaluation and "
1718 "testing. Intended to improve accuracy when screen casting.";
1719
Brett Wilsonecb80982017-07-12 20:34:511720const char kWebrtcSrtpAesGcmName[] =
1721 "Negotiation with GCM cipher suites for SRTP in WebRTC";
1722const char kWebrtcSrtpAesGcmDescription[] =
1723 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
1724
Joachim Bauch4a41d7512017-08-23 14:24:231725const char kWebrtcSrtpEncryptedHeadersName[] =
1726 "Negotiation with encrypted header extensions for SRTP in WebRTC";
1727const char kWebrtcSrtpEncryptedHeadersDescription[] =
1728 "When enabled, WebRTC will try to negotiate encrypted header extensions "
1729 "for SRTP.";
1730
Brett Wilsonecb80982017-07-12 20:34:511731const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
1732const char kWebrtcStunOriginDescription[] =
1733 "When enabled, Stun messages generated by WebRTC will contain the Origin "
1734 "header.";
1735
1736const char kWebvrName[] = "WebVR";
1737const char kWebvrDescription[] =
David Dorwin5a496c32017-11-17 01:45:051738 "Allow web applications to access experimental "
Brandon Jonese9d9b2b2017-12-11 22:20:111739 "Virtual Reality functionality via the WebVR 1.1 API. This feature will "
1740 "eventually be replaced by the WebXR Device API. Warning: Enabling this "
1741 "will also allow WebVR content on insecure origins to access these "
1742 "powerful APIs, and may pose a security risk.";
Brett Wilsonecb80982017-07-12 20:34:511743
Brandon Jonese9d9b2b2017-12-11 22:20:111744const char kWebXrName[] = "WebXR Device API";
1745const char kWebXrDescription[] =
1746 "Allow web applications to access experimental APIs to interact with "
1747 "Virtual Reality (VR) and Augmented Reality (AR) devices.";
1748
Anna Maria57ecf7592018-01-12 03:10:401749const char kWebXrOrientationSensorDeviceName[] =
1750 "WebXR orientation sensor device";
1751const char kWebXrOrientationSensorDeviceDescription[] =
1752 "When no VR platform device is available, expose a non-presenting device "
1753 "based on the device's orientation sensors, if available.";
1754
Brett Wilsonecb80982017-07-12 20:34:511755const char kWifiCredentialSyncName[] = "WiFi credential sync";
1756const char kWifiCredentialSyncDescription[] =
1757 "Enables synchronizing WiFi network settings across devices. When enabled, "
1758 "the WiFi credential datatype is registered with Chrome Sync, and WiFi "
1759 "credentials are synchronized subject to user preferences. (See also, "
1760 "chrome://settings/syncSetup.)";
1761
1762const char kZeroCopyName[] = "Zero-copy rasterizer";
1763const char kZeroCopyDescription[] =
1764 "Raster threads write directly to GPU memory associated with tiles.";
vabr0215a8e2017-03-28 12:47:341765
Brett Wilsonff596952017-07-14 01:06:551766// Android ---------------------------------------------------------------------
1767
1768#if defined(OS_ANDROID)
1769
1770const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
1771const char kAiaFetchingDescription[] =
1772 "Enable intermediate certificate fetching when a server does not provide "
1773 "sufficient certificates to build a chain to a trusted root.";
1774
1775const char kAccessibilityTabSwitcherName[] = "Accessibility Tab Switcher";
1776const char kAccessibilityTabSwitcherDescription[] =
1777 "Enable the accessibility tab switcher for Android.";
1778
Wei-Yin Chen (陳威尹)80683452017-10-02 19:08:251779const char kAllowReaderForAccessibilityName[] = "Reader Mode for Accessibility";
1780const char kAllowReaderForAccessibilityDescription[] =
1781 "Allows Reader Mode on any articles, even if the page is mobile-friendly.";
1782
Brett Wilsonff596952017-07-14 01:06:551783const char kAndroidAutofillAccessibilityName[] = "Autofill Accessibility";
1784const char kAndroidAutofillAccessibilityDescription[] =
1785 "Enable accessibility for autofill popup.";
1786
1787const char kAndroidPaymentAppsName[] = "Android payment apps";
1788const char kAndroidPaymentAppsDescription[] =
1789 "Enable third party Android apps to integrate as payment apps";
1790
Miriam Gershenson8cf1397222018-01-23 22:48:291791const char kAsyncDnsName[] = "Async DNS resolver";
1792const char kAsyncDnsDescription[] = "Enables the built-in DNS resolver.";
1793
Brett Wilsonff596952017-07-14 01:06:551794const char kAutofillAccessoryViewName[] =
1795 "Autofill suggestions as keyboard accessory view";
1796const char kAutofillAccessoryViewDescription[] =
1797 "Shows Autofill suggestions on top of the keyboard rather than in a "
1798 "dropdown.";
1799
1800const char kBackgroundLoaderForDownloadsName[] =
1801 "Enables background downloading of pages.";
1802const char kBackgroundLoaderForDownloadsDescription[] =
1803 "Enables downloading pages in the background in case page is not yet "
1804 "loaded in current tab.";
1805
Matthew Jones6c1f5e22018-02-06 18:19:531806const char kChromeDuplexName[] = "Chrome Duplex";
1807const char kChromeDuplexDescription[] =
1808 "Enables Chrome Duplex, split toolbar Chrome Home, on Android.";
Theresa Wellingtonb9243b22017-12-01 16:23:051809
Daniel Park825a16f32017-12-08 00:44:261810const char kChromeHomeEnableSurveyName[] = "Enable Chrome Home survey";
1811const char kChromeHomeEnableSurveyDescription[] =
1812 "If enabled, the survey process will allow surveys using sample "
1813 "parameters.";
1814
Theresa Wellingtonb9243b22017-12-01 16:23:051815const char kChromeHomeInactivitySheetExpansionName[] =
1816 "Expansion of Chrome Home bottom sheet on startup";
1817const char kChromeHomeInactivitySheetExpansionDescription[] =
1818 "Expand bottom sheet on startup in Chrome Home after a period of"
1819 " inactivity.";
1820
Matthew Joneseab91aa2017-12-19 16:12:421821const char kChromeHomeMenuItemsName[] =
1822 "Show bookmarks, downloads, and history menu items in Chrome Home";
1823const char kChromeHomeMenuItemsDescription[] =
1824 "Shows bookmarks, downloads, and history menu items in the overflow menu"
1825 " when Chrome Home is enabled. These items will open the bottom sheet to"
1826 " show the desired content.";
1827
Theresa Wellingtonc4cff8a12017-11-28 04:13:181828const char kChromeHomePersistentIphName[] = "Chrome Home Persistent Iph";
1829const char kChromeHomePersistentIphDescription[] =
1830 "Wait to dismiss the Chrome Home IPH until the user inteacts with the "
1831 "toolbar or a timer expires.";
1832
Theresa Wellington13977c832017-12-13 16:59:111833const char kChromeHomePullToRefreshIphAtTopName[] =
1834 "Chrome Home Pull-To-Refresh Iph At Top";
1835const char kChromeHomePullToRefreshIphAtTopDescription[] =
1836 "Show the Chrome Home pull-to-refresh help bubble at the top of the screen";
1837
Brett Wilsonff596952017-07-14 01:06:551838const char kChromeHomeSwipeLogicName[] = "Chrome Home Swipe Logic";
1839const char kChromeHomeSwipeLogicDescription[] =
1840 "Various swipe logic options for Chrome Home for sheet expansion.";
1841const char kChromeHomeSwipeLogicRestrictArea[] = "Restrict swipable area";
Matthew Jonesbe384ee42017-10-31 19:57:151842const char kChromeHomeSwipeLogicVelocity[] = "Velocity suppression model";
Brett Wilsonff596952017-07-14 01:06:551843
Matthew Jones5b7f1d62018-01-23 00:37:251844const char kChromeModernDesignName[] = "Chrome Modern Design";
1845const char kChromeModernDesignDescription[] =
Matthew Jones213a0692018-02-05 20:07:451846 "Enable modern design for Chrome. Chrome must be restarted twice for this "
1847 "flag to take effect.";
Matthew Jones5b7f1d62018-01-23 00:37:251848
Megan Jablonskic61eb1b82017-10-02 18:03:061849const char kChromeMemexName[] = "Chrome Memex";
1850const char kChromeMemexDescription[] =
1851 "Enables Chrome Memex homepage on Android. Restricted to opted-in "
1852 "Googlers.";
1853
Sarath Singapati83aef1c2017-11-16 15:54:521854const char kClearOldBrowsingDataName[] = "Clear older browsing data";
1855const char kClearOldBrowsingDataDescription[] =
1856 "Enables clearing of browsing data which is older than a given time "
1857 "period.";
1858
Brett Wilsonff596952017-07-14 01:06:551859const char kContentSuggestionsCategoryOrderName[] =
1860 "Default content suggestions category order (e.g. on NTP)";
1861const char kContentSuggestionsCategoryOrderDescription[] =
1862 "Set default order of content suggestion categories (e.g. on the NTP).";
1863
1864const char kContentSuggestionsCategoryRankerName[] =
1865 "Content suggestions category ranker (e.g. on NTP)";
1866const char kContentSuggestionsCategoryRankerDescription[] =
1867 "Set category ranker to order categories of content suggestions (e.g. on "
1868 "the NTP).";
1869
Vitalii Iarkof52ff802017-09-14 12:34:241870const char kContentSuggestionsDebugLogName[] = "Content suggestions debug log";
1871const char kContentSuggestionsDebugLogDescription[] =
1872 "Enable content suggestions debug log accessible through "
1873 "snippets-internals.";
1874
Donn Denman8e58ead2017-11-04 01:44:011875const char kContextualSearchMlTapSuppressionName[] =
1876 "Contextual Search ML tap suppression";
1877const char kContextualSearchMlTapSuppressionDescription[] =
1878 "Enables tap gestures to be suppressed to improve CTR by applying machine "
Donn Denman59729812018-01-09 01:27:021879 "learning. The \"Contextual Search Ranker prediction\" flag must also be "
1880 "enabled!";
Brett Wilsonff596952017-07-14 01:06:551881
1882const char kContextualSearchName[] = "Contextual Search";
1883const char kContextualSearchDescription[] =
1884 "Whether or not Contextual Search is enabled.";
1885
Donn Denman59729812018-01-09 01:27:021886const char kContextualSearchRankerQueryName[] =
1887 "Contextual Search Ranker prediction";
1888const char kContextualSearchRankerQueryDescription[] =
1889 "Enables prediction of tap gestures using Assist-Ranker machine learning.";
1890
1891const char kContextualSearchSecondTapName[] =
1892 "Contextual Search second tap triggering";
1893const char kContextualSearchSecondTapDescription[] =
1894 "Enables triggering on a second tap gesture even when Ranker would "
1895 "normally suppress that tap.";
1896
Dmitry Skiba9c3efa72017-07-20 22:01:141897const char kDontPrefetchLibrariesName[] = "Don't Prefetch Libraries";
1898const char kDontPrefetchLibrariesDescription[] =
1899 "Don't prefetch libraries after loading.";
1900
Joy Ming5fd29ca62017-10-02 22:51:221901const char kDownloadsForegroundName[] = "Enable downloads foreground";
1902const char kDownloadsForegroundDescription[] =
1903 "Enable downloads as a foreground service for all versions of Android.";
1904
Joy Ming189b0cc2017-12-08 19:42:431905const char kDownloadsLocationChangeName[] = "Enable downloads location change";
1906const char kDownloadsLocationChangeDescription[] =
1907 "Enable changing default downloads storage location on Android.";
1908
Brett Wilsonff596952017-07-14 01:06:551909const char kEnableAndroidPayIntegrationV1Name[] = "Enable Android Pay v1";
1910const char kEnableAndroidPayIntegrationV1Description[] =
1911 "Enable integration with Android Pay using the first version of the API";
1912
1913const char kEnableAndroidPayIntegrationV2Name[] = "Enable Android Pay v2";
1914const char kEnableAndroidPayIntegrationV2Description[] =
1915 "Enable integration with Android Pay using the second version of the API";
1916
Vitalii Iarkof4ed32d2017-09-26 13:15:531917const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
Brett Wilsonff596952017-07-14 01:06:551918const char kEnableAndroidSpellcheckerDescription[] =
1919 "Enables use of the Android spellchecker.";
Brett Wilsonff596952017-07-14 01:06:551920
Lei Tianbd5a3bf2018-02-28 19:01:161921const char kEnableCommandLineOnNonRootedName[] =
1922 "Enable command line on non-rooted devices";
1923const char kEnableCommandLineOnNoRootedDescription[] =
1924 "Enable reading command line file on non-rooted devices (DANGEROUS).";
1925
Vitalii Iarkof4ed32d2017-09-26 13:15:531926const char kEnableContentSuggestionsNewFaviconServerName[] =
1927 "Get favicons for content suggestions from a new server.";
1928const char kEnableContentSuggestionsNewFaviconServerDescription[] =
1929 "If enabled, the content suggestions (on the NTP) will get favicons from a "
1930 "new favicon server.";
Brett Wilsonff596952017-07-14 01:06:551931
1932const char kEnableContentSuggestionsSettingsName[] =
1933 "Show content suggestions settings.";
1934const char kEnableContentSuggestionsSettingsDescription[] =
1935 "If enabled, the content suggestions settings will be available from the "
1936 "main settings menu.";
1937
Vitalii Iarkof4ed32d2017-09-26 13:15:531938const char kEnableContentSuggestionsThumbnailDominantColorName[] =
1939 "Use content suggestions thumbnail dominant color.";
1940const char kEnableContentSuggestionsThumbnailDominantColorDescription[] =
1941 "Use content suggestions thumbnail dominant color as a placeholder before "
1942 "the real thumbnail is fetched (requires Chrome Home).";
1943
Brett Wilsonff596952017-07-14 01:06:551944const char kEnableCustomContextMenuName[] = "Enable custom context menu";
1945const char kEnableCustomContextMenuDescription[] =
1946 "Enables a new context menu when a link, image, or video is pressed within "
1947 "Chrome.";
1948
1949const char kEnableCustomFeedbackUiName[] = "Enable Custom Feedback UI";
1950const char kEnableCustomFeedbackUiDescription[] =
1951 "Enables a custom feedback UI when submitting feedback through Google "
1952 "Feedback. Works with Google Play Services v10.2+";
1953
1954const char kEnableDataReductionProxyMainMenuName[] =
Theresa Wellington141e4af2017-10-23 20:28:471955 "Enable Data Saver main menu item";
Brett Wilsonff596952017-07-14 01:06:551956const char kEnableDataReductionProxyMainMenuDescription[] =
Theresa Wellington141e4af2017-10-23 20:28:471957 "Enables the Data Saver menu item in the main menu";
Brett Wilsonff596952017-07-14 01:06:551958
Brett Wilsonff596952017-07-14 01:06:551959const char kEnableOmniboxClipboardProviderName[] =
1960 "Omnibox clipboard URL suggestions";
1961const char kEnableOmniboxClipboardProviderDescription[] =
1962 "Provide a suggestion of the URL stored in the clipboard (if any) upon "
1963 "focus in the omnibox.";
1964
1965const char kEnableExpandedAutofillCreditCardPopupLayoutName[] =
1966 "Use expanded autofill credit card popup layout.";
1967const char kEnableExpandedAutofillCreditCardPopupLayoutDescription[] =
1968 "If enabled, displays autofill credit card popup using expanded layout.";
1969
Becky Zhoua7f11d62018-02-01 16:02:531970const char kEnableNtpArticleSuggestionsExpandableHeaderName[] =
1971 "Show article suggestions expandable header on New Tab Page";
1972const char kEnableNtpArticleSuggestionsExpandableHeaderDescription[] =
1973 "If enabled, the article suggestions content on New Tab Page can be "
1974 "toggled shown or hidden by clicking the expandable header.";
1975
Brett Wilsonff596952017-07-14 01:06:551976const char kEnableNtpAssetDownloadSuggestionsName[] =
1977 "Show asset downloads on the New Tab page";
1978const char kEnableNtpAssetDownloadSuggestionsDescription[] =
1979 "If enabled, the list of content suggestions on the New Tab page will "
1980 "contain assets (e.g. books, pictures, audio) that the user downloaded for "
1981 "later use.";
1982
1983const char kEnableNtpBookmarkSuggestionsName[] =
1984 "Show recently visited bookmarks on the New Tab page";
1985const char kEnableNtpBookmarkSuggestionsDescription[] =
1986 "If enabled, the list of content suggestions on the New Tab page will "
1987 "contain recently visited bookmarks.";
1988
1989const char kEnableNtpForeignSessionsSuggestionsName[] =
1990 "Show recent foreign tabs on the New Tab page";
1991const char kEnableNtpForeignSessionsSuggestionsDescription[] =
1992 "If enabled, the list of content suggestions on the New Tab page will "
1993 "contain recent foreign tabs.";
1994
Brett Wilsonff596952017-07-14 01:06:551995const char kEnableNtpOfflinePageDownloadSuggestionsName[] =
1996 "Show offline page downloads on the New Tab page";
1997const char kEnableNtpOfflinePageDownloadSuggestionsDescription[] =
1998 "If enabled, the list of content suggestions on the New Tab page will "
1999 "contain pages that the user downloaded for later use.";
2000
2001const char kEnableNtpRemoteSuggestionsName[] =
2002 "Show server-side suggestions on the New Tab page";
2003const char kEnableNtpRemoteSuggestionsDescription[] =
2004 "If enabled, the list of content suggestions on the New Tab page will "
2005 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
2006 "allows to override the source used to retrieve these server-side "
2007 "suggestions.";
2008
2009const char kEnableNtpSnippetsVisibilityName[] =
2010 "Make New Tab Page Snippets more visible.";
2011const char kEnableNtpSnippetsVisibilityDescription[] =
2012 "If enabled, the NTP snippets will become more discoverable with a larger "
2013 "portion of the first card above the fold.";
2014
2015const char kEnableNtpSuggestionsNotificationsName[] =
2016 "Notify about new content suggestions available at the New Tab page";
2017const char kEnableNtpSuggestionsNotificationsDescription[] =
2018 "If enabled, notifications will inform about new content suggestions on "
2019 "the New Tab page.";
2020
2021const char kEnablePhysicalWebName[] = "Enable the Physical Web.";
2022const char kEnablePhysicalWebDescription[] =
2023 "Enable scanning for URLs from Physical Web objects.";
2024
2025const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
2026const char kEnableOfflinePreviewsDescription[] =
2027 "Enable showing offline page previews on slow networks.";
2028
2029const char kEnableOskOverscrollName[] = "Enable OSK Overscroll";
2030const char kEnableOskOverscrollDescription[] =
2031 "Enable OSK overscroll support. With this flag on, the OSK will only "
2032 "resize the visual viewport.";
2033
2034const char kEnableSpecialLocaleName[] =
2035 "Enable custom logic for special locales.";
2036const char kEnableSpecialLocaleDescription[] =
2037 "Enable custom logic for special locales. In this mode, Chrome might "
2038 "behave differently in some locales.";
2039
Brett Wilsonff596952017-07-14 01:06:552040const char kEnableWebNfcName[] = "WebNFC";
2041const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
2042
gogeraldf3cbb422017-07-26 14:37:122043const char kEnableWebPaymentsMethodSectionOrderV2Name[] =
2044 "Enable Web Payments method section order V2.";
2045const char kEnableWebPaymentsMethodSectionOrderV2Description[] =
2046 "Enable this option to display payment method section above address "
2047 "section instead of below it.";
2048
Brett Wilsonff596952017-07-14 01:06:552049const char kEnableWebPaymentsSingleAppUiSkipName[] =
2050 "Enable Web Payments single app UI skip";
2051const char kEnableWebPaymentsSingleAppUiSkipDescription[] =
2052 "Enable Web Payments to skip showing its UI if the developer specifies a "
2053 "single app.";
2054
Raymes Khoury582b43132017-12-12 23:54:302055const char kGrantNotificationsToDSEName[] =
2056 "Grant notifications to the Default Search Engine";
2057const char kGrantNotificationsToDSENameDescription[] =
2058 "Automatically grant the notifications permission to the Default Search "
2059 "Engine";
2060
Theresa920e0ed2018-03-07 18:12:442061const char kInterestFeedContentSuggestionsDescription[] =
2062 "Use the interest feed to render content suggestions. Currently content "
2063 "suggestions are shown on the New Tab Page.";
2064const char kInterestFeedContentSuggestionsName[] =
2065 "Interest Feed Content Suggestions";
2066
Brett Wilsonff596952017-07-14 01:06:552067const char kKeepPrefetchedContentSuggestionsName[] =
2068 "Keep prefetched content suggestions";
2069const char kKeepPrefetchedContentSuggestionsDescription[] =
2070 "If enabled, some of prefetched content suggestions are not replaced by "
2071 "the new fetched suggestions.";
2072
Leo Zhang051b75482017-12-20 03:28:302073const char kLanguagesPreferenceName[] = "Language Settings";
2074const char kLanguagesPreferenceDescription[] =
2075 "Enable this option for Language Settings feature on Android.";
2076
Brett Wilsonff596952017-07-14 01:06:552077const char kLsdPermissionPromptName[] =
2078 "Location Settings Dialog Permission Prompt";
2079const char kLsdPermissionPromptDescription[] =
2080 "Whether to use the Google Play Services Location Settings Dialog "
2081 "permission dialog.";
2082
Amirhossein Simjour97b4154f2018-02-20 03:49:592083const char kModalPermissionDialogViewName[] = "Modal Permission Dialog";
2084const char kModalPermissionDialogViewDescription[] =
2085 "Enable this option to use ModalDialogManager for permission Dialogs.";
2086
Brett Wilsonff596952017-07-14 01:06:552087const char kMediaScreenCaptureName[] = "Experimental ScreenCapture.";
2088const char kMediaScreenCaptureDescription[] =
2089 "Enable this option for experimental ScreenCapture feature on Android.";
2090
2091const char kModalPermissionPromptsName[] = "Modal Permission Prompts";
2092const char kModalPermissionPromptsDescription[] =
2093 "Whether to use permission dialogs in place of permission infobars.";
2094
Brett Wilsonff596952017-07-14 01:06:552095const char kNewPhotoPickerName[] = "Enable new Photopicker";
2096const char kNewPhotoPickerDescription[] =
2097 "Activates the new picker for selecting photos.";
2098
2099const char kNoCreditCardAbort[] = "No Credit Card Abort";
2100const char kNoCreditCardAbortDescription[] =
2101 "Whether or not the No Credit Card Abort is enabled.";
2102
2103const char kNtpCondensedLayoutName[] = "Condensed NTP layout";
2104const char kNtpCondensedLayoutDescription[] =
2105 "Show a condensed layout on the New Tab Page.";
2106
2107const char kNtpCondensedTileLayoutName[] = "Condensed NTP tile layout";
2108const char kNtpCondensedTileLayoutDescription[] =
2109 "Show a condensed tile layout on the New Tab Page.";
2110
Michael van Ouwerkerkcdbbe332017-11-24 15:07:062111const char kNtpModernLayoutName[] = "Modern NTP layout";
2112const char kNtpModernLayoutDescription[] =
2113 "Show a modern layout on the New Tab Page.";
2114
Theresa6bd5f282018-03-09 16:40:032115const char kNtpShortcutsName[] = "NTP Shortcuts";
2116const char kNtpShortcutsDescription[] =
2117 "Show shortcuts for bookmarks and downloads on the New Tab Page.";
2118
Nicolas Dossou-gbete56f37dc2017-08-10 16:14:042119const char kSiteExplorationUiName[] = "Site Exploration UI";
2120const char kSiteExplorationUiDescription[] =
2121 "Show site suggestions in the Exploration UI";
2122
Brett Wilsonff596952017-07-14 01:06:552123const char kNtpGoogleGInOmniboxName[] = "Google G in New Tab Page omnibox";
2124const char kNtpGoogleGInOmniboxDescription[] =
2125 "Show a Google G in the omnibox on the New Tab Page.";
2126
Brett Wilsonff596952017-07-14 01:06:552127const char kOfflineBookmarksName[] = "Enable offline bookmarks";
2128const char kOfflineBookmarksDescription[] =
2129 "Enable saving bookmarked pages for offline viewing.";
2130
Brett Wilsonff596952017-07-14 01:06:552131const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
2132const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
2133
2134const char kOfflinePagesCtV2Name[] = "Enable Offline Pages CT V2 features.";
2135const char kOfflinePagesCtV2Description[] =
2136 "V2 features include attributing pages to the app that initiated the "
2137 "custom tabs, and being able to query for pages by page attribution.";
2138
Carlos Knippschild09272ecd2017-12-09 03:29:362139const char kOfflinePagesLimitlessPrefetchingName[] =
2140 "Removes resource usage limits for the prefetching of offline pages.";
2141const char kOfflinePagesLimitlessPrefetchingDescription[] =
2142 "Allows the prefetching of suggested offline pages to ignore resource "
2143 "usage limits. This allows it to completely ignore data usage limitations "
2144 "and allows downloads to happen with any kind of connection.";
2145
Brett Wilsonff596952017-07-14 01:06:552146const char kOfflinePagesLoadSignalCollectingName[] =
2147 "Enables collecting load timing data for offline page snapshots.";
2148const char kOfflinePagesLoadSignalCollectingDescription[] =
2149 "Enables loading completeness data collection while writing an offline "
2150 "page. This data is collected in the snapshotted offline page to allow "
2151 "data analysis to improve deciding when to make the offline snapshot.";
2152
Candice Sy229768e02017-12-21 00:19:222153const char kOfflinePagesDescriptivePendingStatusName[] =
2154 "Enables descriptive pending download status text.";
2155const char kOfflinePagesDescriptivePendingStatusDescription[] =
2156 "Enables pending download status text in notifications and Downloads Home "
2157 "to state the reason the request is pending.";
2158
Brett Wilsonff596952017-07-14 01:06:552159const char kOfflinePagesPrefetchingName[] =
2160 "Enables suggested offline pages to be prefetched.";
2161const char kOfflinePagesPrefetchingDescription[] =
2162 "Enables suggested offline pages to be prefetched, so useful content is "
2163 "available while offline.";
2164
Cathy Li3d5379e2017-09-07 00:11:092165const char kOfflinePagesPrefetchingUIName[] =
2166 "Enables prefetched offline pages to be shown in UI.";
2167const char kOfflinePagesPrefetchingUIDescription[] =
2168 "Enables prefetched offline pages to raise notifications and be shown in "
2169 "download home UI.";
2170
Pete Williamson7845dff2017-09-20 11:06:192171const char kOfflinePagesResourceBasedSnapshotName[] =
2172 "Enables offline page snapshots to be based on percentage of page loaded.";
2173const char kOfflinePagesResourceBasedSnapshotDescription[] =
2174 "Enables offline page snapshots to use a resource percentage based "
2175 "approach for determining when the page is loaded as opposed to a time "
2176 "based approach";
2177
Collin Baker17f92a52017-07-19 21:41:252178const char kOfflinePagesRenovationsName[] = "Enables offline page renovations.";
2179const char kOfflinePagesRenovationsDescription[] =
2180 "Enables offline page renovations which correct issues with dynamic "
2181 "content that occur when offlining pages that use JavaScript.";
2182
Brett Wilsonff596952017-07-14 01:06:552183const char kOfflinePagesSharingName[] = "Enables offline pages to be shared.";
2184const char kOfflinePagesSharingDescription[] =
2185 "Enables the saved offline pages to be shared via other applications.";
2186
2187const char kOfflinePagesSvelteConcurrentLoadingName[] =
2188 "Enables concurrent background loading on svelte.";
2189const char kOfflinePagesSvelteConcurrentLoadingDescription[] =
2190 "Enables concurrent background loading (or downloading) of pages on "
2191 "Android svelte (512MB RAM) devices. Otherwise, background loading will "
2192 "happen when the svelte device is idle.";
2193
2194const char kOffliningRecentPagesName[] =
2195 "Enable offlining of recently visited pages";
2196const char kOffliningRecentPagesDescription[] =
2197 "Enable storing recently visited pages locally for offline use. Requires "
2198 "Offline Pages to be enabled.";
2199
Lei Zhang2eca9082017-10-17 20:42:502200const char kPayWithGoogleV1Name[] = "Pay with Google v1";
2201const char kPayWithGoogleV1Description[] =
Brett Wilsonff596952017-07-14 01:06:552202 "Enable Pay with Google integration into Web Payments with API version "
2203 "'1'.";
2204
Matthew Jonesa88b95852017-11-08 23:13:502205const char kProgressBarThrottleName[] = "Android progress update throttling.";
2206const char kProgressBarThrottleDescription[] =
2207 "Limit the maximum progress update to make progress appear smoother.";
2208
Brett Wilsonff596952017-07-14 01:06:552209const char kPullToRefreshEffectName[] = "The pull-to-refresh effect";
2210const char kPullToRefreshEffectDescription[] =
2211 "Page reloads triggered by vertically overscrolling content.";
2212
Piotr Swigon7c296ef2017-08-29 04:32:002213const char kPwaImprovedSplashScreenName[] =
2214 "Improved Splash Screen for standalone PWAs";
2215const char kPwaImprovedSplashScreenDescription[] =
2216 "Enables the Improved Splash Screen UX for standalone PWAs based on new "
2217 "Web App Manifest attributes";
Piotr Swigon9f630b32017-07-26 09:42:492218const char kPwaPersistentNotificationName[] =
2219 "Persistent notification in standalone PWA";
2220const char kPwaPersistentNotificationDescription[] =
2221 "Enables a persistent Android notification for standalone PWAs";
2222
Brett Wilsonff596952017-07-14 01:06:552223const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
2224const char kReaderModeHeuristicsDescription[] =
2225 "Determines what pages the Reader Mode infobar is shown on.";
2226const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
2227const char kReaderModeHeuristicsAdaboost[] = "Non-mobile-friendly articles";
2228const char kReaderModeHeuristicsAllArticles[] = "All articles";
2229const char kReaderModeHeuristicsAlwaysOff[] = "Never";
2230const char kReaderModeHeuristicsAlwaysOn[] = "Always";
2231
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:182232const char kReaderModeInCCTName[] = "Reader Mode in CCT";
2233const char kReaderModeInCCTDescription[] =
2234 "Open Reader Mode in Chrome Custom Tabs.";
2235
Brett Wilsonff596952017-07-14 01:06:552236const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2237const char kSetMarketUrlForTestingDescription[] =
2238 "When enabled, sets the market URL for use in testing the update menu "
2239 "item.";
2240
2241const char kSpannableInlineAutocompleteName[] = "Spannable inline autocomplete";
2242const char kSpannableInlineAutocompleteDescription[] =
2243 "A new type of inline autocomplete for the omnibox that works with "
2244 "keyboards that compose text.";
2245
Brett Wilsonff596952017-07-14 01:06:552246const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2247const char kUpdateMenuBadgeDescription[] =
2248 "When enabled, an update badge will be shown on the app menu button.";
2249
2250const char kUpdateMenuItemCustomSummaryDescription[] =
2251 "When this flag and the force show update menu item flag are enabled, a "
2252 "custom summary string will be displayed below the update menu item.";
2253const char kUpdateMenuItemCustomSummaryName[] =
2254 "Update menu item custom summary";
2255
2256const char kUpdateMenuItemName[] = "Force show update menu item";
2257const char kUpdateMenuItemDescription[] =
2258 R"*(When enabled, an "Update Chrome" item will be shown in the app )*"
2259 R"*(menu.)*";
2260
Amirhossein Simjourd78bbcf2018-02-02 16:23:392261const char kVrBrowsingNativeAndroidUiName[] = "VR browsing native android ui";
2262const char kVrBrowsingNativeAndroidUiDescription[] =
2263 "Enable Android UI elements in VR.";
2264
Marc Treib93af46a2017-08-23 13:30:002265const char kThirdPartyDoodlesName[] =
2266 "Enable Doodles for third-party search engines";
2267const char kThirdPartyDoodlesDescription[] =
2268 "Enables fetching and displaying Doodles on the NTP for third-party search "
2269 "engines.";
2270
Klaus Weidneraaf697f2018-01-18 20:07:362271const char kWebXrRenderPathName[] = "WebXR presentation render path";
2272const char kWebXrRenderPathDescription[] =
2273 "Render path to use for WebXR presentation (including WebVR)";
2274const char kWebXrRenderPathChoiceClientWaitDescription[] =
2275 "ClientWait (Baseline)";
2276const char kWebXrRenderPathChoiceGpuFenceDescription[] =
2277 "GpuFence (Android N+)";
2278
Brett Wilson7b44537e2017-08-18 01:38:282279// Non-Android -----------------------------------------------------------------
Brett Wilsonff596952017-07-14 01:06:552280
Brett Wilson7b44537e2017-08-18 01:38:282281#else // !defined(OS_ANDROID)
brettw5f9c1642017-05-14 17:12:482282
Brett Wilson7b44537e2017-08-18 01:38:282283const char kAccountConsistencyName[] =
2284 "Identity consistency between browser and cookie jar";
2285const char kAccountConsistencyDescription[] =
2286 "When enabled, the browser manages signing in and out of Google accounts.";
2287const char kAccountConsistencyChoiceMirror[] = "Mirror";
2288const char kAccountConsistencyChoiceDice[] = "Dice";
vabr0215a8e2017-03-28 12:47:342289
Chris Pickel3a227ae62017-08-24 10:47:262290const char kDoodlesOnLocalNtpName[] = "Enable doodles on the local NTP";
2291const char kDoodlesOnLocalNtpDescription[] =
2292 "Show doodles on the local New Tab page if Google is the default search "
2293 "engine.";
2294
mlamouriff56c092017-05-11 15:31:392295const char kEnableAudioFocusName[] = "Manage audio focus across tabs";
mlamouriff56c092017-05-11 15:31:392296const char kEnableAudioFocusDescription[] =
vabr0215a8e2017-03-28 12:47:342297 "Manage audio focus across tabs to improve the audio mixing.";
mlamouriff56c092017-05-11 15:31:392298const char kEnableAudioFocusDisabled[] = "Disabled";
mlamouriff56c092017-05-11 15:31:392299const char kEnableAudioFocusEnabled[] = "Enabled";
mlamouriff56c092017-05-11 15:31:392300const char kEnableAudioFocusEnabledDuckFlash[] =
vabr0215a8e2017-03-28 12:47:342301 "Enabled (Flash lowers volume when interrupted by other sound, "
2302 "experimental)";
2303
Brett Wilson7b44537e2017-08-18 01:38:282304const char kEnableNewAppMenuIconName[] = "Enable the New App Menu Icon";
2305const char kEnableNewAppMenuIconDescription[] =
2306 "Use the new app menu icon with update notification animations.";
vabr0215a8e2017-03-28 12:47:342307
2308const char kOmniboxEntitySuggestionsName[] = "Omnibox entity suggestions";
vabr0215a8e2017-03-28 12:47:342309const char kOmniboxEntitySuggestionsDescription[] =
krbcc621412017-06-01 19:40:282310 "Enable receiving entity suggestions - disambiguation descriptions - for "
2311 "Omnibox suggestions.";
2312
Dave Schuyler598a4a42018-01-04 02:15:102313const char kOmniboxRichEntitySuggestionsName[] =
2314 "Omnibox rich entity suggestions";
2315const char kOmniboxRichEntitySuggestionsDescription[] =
2316 "Display entity suggestions using images and an enhanced layout; showing "
2317 "more context and descriptive text about the entity";
2318
Kevin Bailey898669972017-11-06 15:34:492319const char kOmniboxTabSwitchSuggestionsName[] =
2320 "Omnibox tab switch suggestions";
2321const char kOmniboxTabSwitchSuggestionsDescription[] =
2322 "Enable suggestions for switching to open tabs within the Omnibox.";
2323
krbcc621412017-06-01 19:40:282324const char kOmniboxTailSuggestionsName[] = "Omnibox tail suggestions";
2325const char kOmniboxTailSuggestionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192326 "Enable receiving tail suggestions, a type of search suggestion based on "
2327 "the last few words in the query, for the Omnibox.";
vabr0215a8e2017-03-28 12:47:342328
Brett Wilson7b44537e2017-08-18 01:38:282329const char kOneGoogleBarOnLocalNtpName[] =
2330 "Enable the OneGoogleBar on the local NTP";
2331const char kOneGoogleBarOnLocalNtpDescription[] =
2332 "Show a OneGoogleBar on the local New Tab page if Google is the default "
2333 "search engine.";
2334
Brett Wilson7b44537e2017-08-18 01:38:282335const char kUseGoogleLocalNtpName[] = "Enable using the Google local NTP";
2336const char kUseGoogleLocalNtpDescription[] =
2337 "Use the local New Tab page if Google is the default search engine.";
spqchan064a8112017-04-18 16:46:322338
Brett Wilson7b44537e2017-08-18 01:38:282339const char kVoiceSearchOnLocalNtpName[] =
2340 "Enable Voice Search on the local NTP";
2341const char kVoiceSearchOnLocalNtpDescription[] =
2342 "Show a microphone for voice search on the local New Tab page "
2343 "if Google is the default search engine.";
2344
Kim Paulhamus33f87b12018-01-18 22:00:422345const char kEnableWebAuthenticationAPIName[] = "Web Authentication API.";
2346const char kEnableWebAuthenticationAPIDescription[] =
2347 "Enable Web Authentication API support.";
2348
Brett Wilson7b44537e2017-08-18 01:38:282349#if defined(GOOGLE_CHROME_BUILD)
2350
2351const char kGoogleBrandedContextMenuName[] =
2352 "Google branding in the context menu";
2353const char kGoogleBrandedContextMenuDescription[] =
2354 "Shows a Google icon next to context menu items powered by Google "
2355 "services.";
2356
2357#endif // !defined(GOOGLE_CHROME_BUILD)
2358
2359#endif // !defined(OS_ANDROID)
2360
2361// Windows ---------------------------------------------------------------------
2362
2363#if defined(OS_WIN)
2364
2365const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
2366const char kCloudPrintXpsDescription[] =
2367 "XPS enables advanced options for classic printers connected to the Cloud "
2368 "Print with Chrome. Printers must be re-connected after changing this "
2369 "flag.";
2370
Dave Tapuskadd43469d2017-08-22 22:15:532371const char kDirectManipulationStylusName[] = "Direct Manipulation Stylus";
2372const char kDirectManipulationStylusDescription[] =
2373 "If enabled, Chrome will scroll web pages on stylus drag.";
2374
Brett Wilson7b44537e2017-08-18 01:38:282375const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
2376const char kDisablePostscriptPrintingDescription[] =
2377 "Disables PostScript generation when printing to PostScript capable "
2378 "printers, and uses EMF generation in its place.";
2379
2380const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
2381const char kEnableAppcontainerDescription[] =
2382 "Enables the use of an AppContainer on sandboxed processes to improve "
2383 "security.";
2384
2385const char kEnableD3DVsync[] = "D3D v-sync";
2386const char kEnableD3DVsyncDescription[] =
2387 "Produces v-sync signal by having D3D wait for vertical blanking interval "
2388 "to occur.";
2389
2390const char kEnableDesktopIosPromotionsName[] = "Desktop to iOS promotions.";
2391const char kEnableDesktopIosPromotionsDescription[] =
2392 "Enable Desktop to iOS promotions, and allow users to see them if they are "
2393 "eligible.";
2394
James Forshawfd0ce342018-02-14 09:55:392395const char kEnableGpuAppcontainerName[] = "Enable GPU AppContainer Lockdown.";
2396const char kEnableGpuAppcontainerDescription[] =
2397 "Enables the use of an AppContainer for the GPU sandboxed processes to "
2398 "improve security.";
2399
Brett Wilson7b44537e2017-08-18 01:38:282400const char kGdiTextPrinting[] = "GDI Text Printing";
2401const char kGdiTextPrintingDescription[] =
2402 "Use GDI to print text as simply text";
2403
Brett Wilson7b44537e2017-08-18 01:38:282404const char kTraceExportEventsToEtwName[] =
2405 "Enable exporting of tracing events to ETW.";
2406const char kTraceExportEventsToEtwDesription[] =
2407 "If enabled, trace events will be exported to the Event Tracing for "
2408 "Windows (ETW) and can then be captured by tools such as UIForETW or "
2409 "Xperf.";
2410
2411const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2412const char kUseWinrtMidiApiDescription[] =
2413 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
2414 "later).";
2415
2416const char kWindows10CustomTitlebarName[] = "Custom-drawn Windows 10 Titlebar";
2417const char kWindows10CustomTitlebarDescription[] =
2418 "If enabled, Chrome will draw the titlebar and caption buttons instead of "
2419 "deferring to Windows.";
2420
Wez6656c572017-08-29 22:29:582421#if DCHECK_IS_ON() && defined(SYZYASAN)
Lei Zhang2eca9082017-10-17 20:42:502422const char kSyzyAsanDcheckIsFatalName[] = "DCHECKs are fatal";
2423const char kSyzyAsanDcheckIsFatalDescription[] =
Wez6656c572017-08-29 22:29:582424 "By default Chrome will evaluate DCHECKs in SyzyASAN builds, but only log "
2425 "failed DCHECKs. If enabled, DCHECKs will crash the calling process.";
2426#endif // DCHECK_IS_ON() && defined(SYZYASAN)
2427
Brett Wilson7b44537e2017-08-18 01:38:282428#endif // defined(OS_WIN)
2429
2430// Mac -------------------------------------------------------------------------
2431
2432#if defined(OS_MACOSX)
2433
2434const char kAppInfoDialogName[] = "Toolkit-Views App Info Dialog.";
2435const char kAppInfoDialogDescription[] =
2436 "Makes the Toolkit-Views based App Info dialog accessible from "
2437 "chrome://apps or chrome://extensions in place of the native extension "
2438 "permissions dialog, or the details link (which is a link to the Web "
2439 "Store).";
2440
2441const char kAppWindowCyclingName[] = "Custom Window Cycling for Chrome Apps.";
2442const char kAppWindowCyclingDescription[] =
2443 "Changes the behavior of Cmd+` when a Chrome App becomes active. When "
2444 "enabled, Chrome Apps will not be cycled when Cmd+` is pressed from a "
2445 "browser window, and browser windows will not be cycled when a Chrome App "
2446 "is active.";
2447
Lei Zhang2eca9082017-10-17 20:42:502448const char kCreditCardAutofillTouchBarName[] = "Credit Card Autofill Touch Bar";
2449const char kCreditCardAutofillTouchBarDescription[] =
Brett Wilson7b44537e2017-08-18 01:38:282450 "Shows Credit Card Autofill Suggestions on the Touch Bar.";
2451
2452const char kFullscreenToolbarRevealName[] =
2453 "Enables the toolbar in fullscreen to reveal itself.";
2454const char kFullscreenToolbarRevealDescription[] =
2455 "Reveal the toolbar in fullscreen for a short period when the tab strip "
2456 "has changed.";
2457
2458const char kContentFullscreenName[] = "Improved Content Fullscreen";
2459const char kContentFullscreenDescription[] =
2460 "Fullscreen content window detaches from main browser window and goes to "
2461 "a new space without moving or changing the original browser window.";
2462
Lei Zhang2eca9082017-10-17 20:42:502463const char kDialogTouchBarName[] = "Dialog Touch Bar";
2464const char kDialogTouchBarDescription[] =
Brett Wilson7b44537e2017-08-18 01:38:282465 "Shows Dialog buttons on the Touch Bar.";
2466
2467const char kHostedAppsInWindowsName[] =
2468 "Allow hosted apps to be opened in windows";
2469const char kHostedAppsInWindowsDescription[] =
2470 "Allows hosted apps to be opened in windows instead of being limited to "
2471 "tabs.";
2472
Lei Zhang2eca9082017-10-17 20:42:502473const char kMacRTLName[] = "Enable RTL";
2474const char kMacRTLDescription[] = "Mirrors the UI for RTL language users";
Brett Wilson7b44537e2017-08-18 01:38:282475
Lei Zhang2eca9082017-10-17 20:42:502476const char kMacSystemShareMenuName[] = "Enable System Share Menu";
2477const char kMacSystemShareMenuDescription[] =
Leonard Grey2bdd08f2017-10-03 18:40:522478 "Enables sharing via macOS share extensions.";
2479
Lei Zhang2eca9082017-10-17 20:42:502480const char kMacTouchBarName[] = "Hardware Touch Bar";
2481const char kMacTouchBarDescription[] = "Control the use of the Touch Bar.";
Brett Wilson7b44537e2017-08-18 01:38:282482
2483const char kMacV2SandboxName[] = "Mac V2 Sandbox";
2484const char kMacV2SandboxDescription[] =
2485 "Eliminates the unsandboxed warmup phase and sandboxes processes for their "
2486 "entire life cycle.";
2487
2488const char kMacViewsNativeAppWindowsName[] = "Toolkit-Views App Windows.";
2489const char kMacViewsNativeAppWindowsDescription[] =
2490 "Controls whether to use Toolkit-Views based Chrome App windows.";
2491
Jérôme Lebelff683d42017-11-10 10:24:022492const char kMacViewsProfileChooserName[] =
2493 "Profile chooser menu with toolkit-views on Mac";
2494const char kMacViewsProfileChooserDescription[] =
2495 "Enables profile chooser menu based on toolkit-views, on Mac";
2496
Brett Wilson7b44537e2017-08-18 01:38:282497const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
2498const char kMacViewsTaskManagerDescription[] =
2499 "Controls whether to use the Toolkit-Views based Task Manager.";
2500
2501const char kTabDetachingInFullscreenName[] =
2502 "Allow tab detaching in fullscreen";
2503const char kTabDetachingInFullscreenDescription[] =
2504 "Allow tabs to detach from the tabstrip when in fullscreen mode on Mac.";
2505
2506const char kTabStripKeyboardFocusName[] = "Tab Strip Keyboard Focus";
2507const char kTabStripKeyboardFocusDescription[] =
2508 "Enable keyboard focus for the tabs in the tab strip.";
2509
Brett Wilson7b44537e2017-08-18 01:38:282510#endif
2511
2512// Chrome OS -------------------------------------------------------------------
vabr0215a8e2017-03-28 12:47:342513
2514#if defined(OS_CHROMEOS)
2515
Brett Wilson7b44537e2017-08-18 01:38:282516const char kAcceleratedMjpegDecodeName[] =
2517 "Hardware-accelerated mjpeg decode for captured frame";
2518const char kAcceleratedMjpegDecodeDescription[] =
2519 "Enable hardware-accelerated mjpeg decode for captured frame where "
2520 "available.";
vabr0215a8e2017-03-28 12:47:342521
Brett Wilson7b44537e2017-08-18 01:38:282522const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click";
2523const char kAllowTouchpadThreeFingerClickDescription[] =
2524 "Enables touchpad three-finger-click as middle button.";
vabr0215a8e2017-03-28 12:47:342525
Brett Wilson7b44537e2017-08-18 01:38:282526const char kArcBootCompleted[] = "Load Android apps automatically";
2527const char kArcBootCompletedDescription[] =
2528 "Allow Android apps to start automatically after signing in.";
vabr0215a8e2017-03-28 12:47:342529
Lev Rumyantsev7a8544312017-08-18 19:26:512530const char kArcNativeBridgeExperimentName[] =
2531 "Enable native bridge experiment for ARC";
2532const char kArcNativeBridgeExperimentDescription[] =
2533 "Enables experimental native bridge feature.";
2534
lgchengecd1c1a62018-01-09 02:59:462535const char kArcUsbHostName[] = "Enable ARC USB host integration";
2536const char kArcUsbHostDescription[] =
2537 "Allow Android apps to use USB host feature on ChromeOS devices.";
2538
Kevin Cernekeeb7f96a52017-10-25 17:40:182539const char kArcVpnName[] = "Enable ARC VPN integration";
2540const char kArcVpnDescription[] =
2541 "Allow Android VPN clients to tunnel Chrome traffic.";
2542
Brett Wilson7b44537e2017-08-18 01:38:282543const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
2544const char kAshEnableUnifiedDesktopDescription[] =
2545 "Enable unified desktop mode which allows a window to span multiple "
2546 "displays.";
vabr0215a8e2017-03-28 12:47:342547
Sean Kau5e956192017-10-06 22:25:172548const char kBulkPrintersName[] = "Bulk Printers Policy";
2549const char kBulkPrintersDescription[] = "Enables the new bulk printers policy";
2550
Brett Wilson7b44537e2017-08-18 01:38:282551const char kCaptivePortalBypassProxyName[] =
2552 "Bypass proxy for Captive Portal Authorization";
2553const char kCaptivePortalBypassProxyDescription[] =
2554 "If proxy is configured, it usually prevents from authorization on "
2555 "different captive portals. This enables opening captive portal "
2556 "authorization dialog in a separate window, which ignores proxy settings.";
vabr0215a8e2017-03-28 12:47:342557
Brett Wilson7b44537e2017-08-18 01:38:282558const char kCrOSComponentName[] = "Chrome OS Component";
2559const char kCrOSComponentDescription[] =
Xiaochu Liu4c1b75d2017-12-18 23:52:082560 "Disable the use of componentized escpr CUPS filter.";
vabr0215a8e2017-03-28 12:47:342561
Xiaochu Liu51d03fd2017-09-08 23:51:022562const char kCrOSContainerName[] = "Chrome OS Container";
2563const char kCrOSContainerDescription[] =
2564 "Enable the use of Chrome OS Container utility.";
2565
Brett Wilson7b44537e2017-08-18 01:38:282566const char kCrosRegionsModeName[] = "Cros-regions load mode";
2567const char kCrosRegionsModeDescription[] =
2568 "This flag controls cros-regions load mode";
2569const char kCrosRegionsModeDefault[] = "Default";
2570const char kCrosRegionsModeOverride[] = "Override VPD values.";
2571const char kCrosRegionsModeHide[] = "Hide VPD values.";
vabr0215a8e2017-03-28 12:47:342572
Jacob Dufault2becbc482017-08-25 00:36:352573const char kDisableLockScreenAppsName[] = "Disable lock screen note taking";
2574const char kDisableLockScreenAppsDescription[] =
2575 "Disable new-note action handler apps on the lock screen. The user will "
2576 "not be able to launch the preferred note-taking action from the lock "
2577 "screen, provided that the app supports lock screen note taking.";
2578
Sammie Quonef6b4882017-09-14 16:50:052579const char kDisableTabletAutohideTitlebarsName[] =
2580 "Disable autohide titlebars in tablet mode";
2581const char kDisableTabletAutohideTitlebarsDescription[] =
2582 "Disable tablet mode autohide titlebars functionality. The user will be "
2583 "able to see the titlebar in tablet mode.";
2584
xdaid45327d2018-01-29 18:57:072585const char kDisableTabletSplitViewName[] = "Disable split view in Tablet mode";
2586const char kDisableTabletSplitViewDescription[] =
2587 "Disable split view for Chrome OS tablet mode.";
2588
Brett Wilson7b44537e2017-08-18 01:38:282589const char kEnablePerUserTimezoneName[] = "Per-user time zone preferences.";
2590const char kEnablePerUserTimezoneDescription[] =
2591 "Chrome OS system timezone preference is stored and handled for each user "
2592 "individually.";
vabr0215a8e2017-03-28 12:47:342593
Brett Wilson7b44537e2017-08-18 01:38:282594const char kDisableSystemTimezoneAutomaticDetectionName[] =
2595 "SystemTimezoneAutomaticDetection policy support";
2596const char kDisableSystemTimezoneAutomaticDetectionDescription[] =
2597 "Disable system timezone automatic detection device policy.";
vabr0215a8e2017-03-28 12:47:342598
Lei Zhang2eca9082017-10-17 20:42:502599const char kEnableBackgroundBlurName[] = "Enable background blur.";
2600const char kEnableBackgroundBlurDescription[] =
Wenzhao Zang50fb0b22017-11-07 01:38:422601 "Enables background blur for the Peeking Launcher and Tab Switcher.";
Alex Newcomer43cb7f12017-07-28 17:37:392602
Brett Wilson7b44537e2017-08-18 01:38:282603const char kEnableChromevoxArcSupportName[] = "ChromeVox ARC support";
2604const char kEnableChromevoxArcSupportDescription[] =
2605 "Enable ChromeVox screen reader features in ARC";
vabr0215a8e2017-03-28 12:47:342606
F#m75862c92018-01-25 19:10:472607const char kEnableDisplayZoomSettingName[] = "Enable display zoom settings";
2608const char kEnableDisplayZoomSettingDescription[] =
2609 "Allows the user to modify the display size or zoom via the chrome display "
2610 "settings page.";
2611
Brett Wilson7b44537e2017-08-18 01:38:282612const char kEnableEhvInputName[] =
2613 "Emoji, handwriting and voice input on opt-in IME menu";
2614const char kEnableEhvInputDescription[] =
2615 "Enable access to emoji, handwriting and voice input form opt-in IME menu.";
vabr0215a8e2017-03-28 12:47:342616
Brett Wilson7b44537e2017-08-18 01:38:282617const char kEnableEncryptionMigrationName[] =
2618 "Enable encryption migration of user data";
2619const char kEnableEncryptionMigrationDescription[] =
2620 "If enabled and the device supports ARC, the user will be asked to update "
2621 "the encryption of user data when the user signs in.";
vabr0215a8e2017-03-28 12:47:342622
Blake O'Hare9e9317b22017-10-24 02:49:352623const char kEnableFloatingVirtualKeyboardName[] =
2624 "Enable floating virtual keyboard";
2625const char kEnableFloatingVirtualKeyboardDescription[] =
2626 "If enabled, the keyboard will use floating behavior by default.";
2627
Brett Wilson7b44537e2017-08-18 01:38:282628const char kEnableImeMenuName[] = "Enable opt-in IME menu";
2629const char kEnableImeMenuDescription[] =
2630 "Enable access to the new IME menu in the Language Settings page.";
vabr0215a8e2017-03-28 12:47:342631
Jordy Greenblatt2f23df22018-02-22 19:49:192632const char kEnableUnifiedMultiDeviceSettingsName[] =
2633 "Enable unified MultiDevice settings";
2634const char kEnableUnifiedMultiDeviceSettingsDescription[] =
2635 "If enabled, the Chrome OS Settings UI will include a menu for the unified "
2636 "MultiDevice settings.";
2637
2638const char kEnableUnifiedMultiDeviceSetupName[] =
2639 "Enable unified MultiDevice setup";
2640const char kEnableUnifiedMultiDeviceSetupDescription[] =
2641 "Enable the device to setup all MultiDevice services in a single workflow.";
2642
Klemen Kozjek05fc4512017-10-18 12:51:102643const char kEnableZipArchiverPackerName[] = "ZIP archiver - Packer";
2644const char kEnableZipArchiverPackerDescription[] =
2645 "Enable the ability to archive files on Drive in the Files app";
2646
Tatsuhisa Yamaguchi5c07d2532017-11-10 03:52:412647const char kZipArchiverUnpackerName[] = "ZIP archiver - Unpacker";
2648const char kZipArchiverUnpackerDescription[] =
2649 "Enable or disable the ability to unpack archives in incognito mode";
Brett Wilson7b44537e2017-08-18 01:38:282650
2651const char kEolNotificationName[] = "Disable Device End of Life notification.";
2652const char kEolNotificationDescription[] =
2653 "Disable Notifcation when Device is End of Life.";
2654
2655const char kExperimentalAccessibilityFeaturesName[] =
2656 "Experimental accessibility features";
2657const char kExperimentalAccessibilityFeaturesDescription[] =
2658 "Enable additional accessibility features in the Settings page.";
2659
2660const char kExperimentalInputViewFeaturesName[] =
2661 "Experimental input view features";
2662const char kExperimentalInputViewFeaturesDescription[] =
2663 "Enable experimental features for IME input views.";
2664
2665const char kFileManagerTouchModeName[] = "Files App. touch mode";
2666const char kFileManagerTouchModeDescription[] =
2667 "Touchscreen-specific interactions of the Files app.";
2668
2669const char kFirstRunUiTransitionsName[] =
2670 "Animated transitions in the first-run tutorial";
2671const char kFirstRunUiTransitionsDescription[] =
2672 "Transitions during first-run tutorial are animated.";
2673
Brett Wilson7b44537e2017-08-18 01:38:282674const char kForceEnableStylusToolsName[] = "Force enable stylus features";
2675const char kForceEnableStylusToolsDescription[] =
2676 "Forces display of the stylus tools menu in the shelf and the stylus "
2677 "section in settings, even if there is no attached stylus device.";
2678
2679const char kGestureEditingName[] = "Gesture editing for the virtual keyboard.";
2680const char kGestureEditingDescription[] =
2681 "Enable/Disable gesture editing option in the settings page for the "
2682 "virtual keyboard.";
2683
2684const char kGestureTypingName[] = "Gesture typing for the virtual keyboard.";
2685const char kGestureTypingDescription[] =
2686 "Enable/Disable gesture typing option in the settings page for the virtual "
2687 "keyboard.";
2688
2689const char kInputViewName[] = "Input views";
2690const char kInputViewDescription[] =
2691 "Enable IME extensions to supply custom views for user input such as "
2692 "virtual keyboards.";
2693
Megumi Hattori5a0d4182018-03-06 11:09:502694const char kLockScreenNotificationName[] = "Lock screen notification";
2695const char kLockScreenNotificationDescription[] =
2696 "Enable notifications on the lock screen.";
2697
Brett Wilson7b44537e2017-08-18 01:38:282698const char kMemoryPressureThresholdName[] =
2699 "Memory discard strategy for advanced pressure handling";
2700const char kMemoryPressureThresholdDescription[] =
2701 "Memory discarding strategy to use";
2702const char kConservativeThresholds[] =
2703 "Conservative memory pressure release strategy";
2704const char kAggressiveCacheDiscardThresholds[] =
2705 "Aggressive cache release strategy";
2706const char kAggressiveTabDiscardThresholds[] =
2707 "Aggressive tab release strategy";
2708const char kAggressiveThresholds[] =
2709 "Aggressive tab and cache release strategy";
2710
2711const char kMtpWriteSupportName[] = "MTP write support";
2712const char kMtpWriteSupportDescription[] =
2713 "MTP write support in File System API (and file manager). In-place editing "
2714 "operations are not supported.";
2715
2716const char kMultideviceName[] = "Enable multidevice features";
2717const char kMultideviceDescription[] =
2718 "Enables UI for controlling multidevice features.";
vabr0215a8e2017-03-28 12:47:342719
Kyle Horimoto027590fb2018-02-13 22:19:482720const char kMultiDeviceApiName[] = "Enables the MultiDevice API";
2721const char kMultiDeviceApiDescription[] =
2722 "Enable Mojo-based API which provides synced device metadata and the "
2723 "ability to connect to other devices associated the logged-in Google "
2724 "account.";
2725
Bailey Berrodca8eeca02017-11-18 00:49:122726const char kNativeSmbName[] = "Native Smb Client";
2727const char kNativeSmbDescription[] =
2728 "If enabled, allows connections to an smb filesystem via Files app";
Bailey Berrofc0da1b2017-11-02 11:02:302729
vabr0215a8e2017-03-28 12:47:342730const char kNetworkPortalNotificationName[] =
2731 "Notifications about captive portals";
vabr0215a8e2017-03-28 12:47:342732const char kNetworkPortalNotificationDescription[] =
2733 "If enabled, notification is displayed when device is connected to a "
2734 "network behind captive portal.";
2735
Steven Bennetts77b67972017-12-14 19:38:322736const char kDisableNetworkSettingsConfigName[] =
2737 "Disable Settings based Network Configuration";
2738const char kDisableNetworkSettingsConfigDescription[] =
2739 "Disables the Settings based network configuration UI and restores the "
2740 "Views based configuration dialog.";
stevenjbe1d457382017-05-24 22:37:242741
Brett Wilson7b44537e2017-08-18 01:38:282742const char kNewKoreanImeName[] = "New Korean IME";
2743const char kNewKoreanImeDescription[] =
2744 "New Korean IME, which is based on Google Input Tools' HMM engine.";
vabr0215a8e2017-03-28 12:47:342745
Brett Wilson7b44537e2017-08-18 01:38:282746const char kNewZipUnpackerName[] = "New ZIP unpacker";
2747const char kNewZipUnpackerDescription[] =
2748 "New ZIP unpacker flow, based on the File System Provider API.";
vabr0215a8e2017-03-28 12:47:342749
Brett Wilson7b44537e2017-08-18 01:38:282750const char kPhysicalKeyboardAutocorrectName[] = "Physical keyboard autocorrect";
2751const char kPhysicalKeyboardAutocorrectDescription[] =
2752 "Enable physical keyboard autocorrect for US keyboard, which can provide "
2753 "suggestions as typing on physical keyboard.";
vabr0215a8e2017-03-28 12:47:342754
2755const char kPrinterProviderSearchAppName[] =
2756 "Chrome Web Store Gallery app for printer drivers";
vabr0215a8e2017-03-28 12:47:342757const char kPrinterProviderSearchAppDescription[] =
2758 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:192759 "searches Chrome Web Store for extensions that support printing to a USB "
2760 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:342761
Brett Wilson7b44537e2017-08-18 01:38:282762const char kQuickUnlockPinName[] = "Quick Unlock (PIN)";
2763const char kQuickUnlockPinDescription[] =
2764 "Enabling PIN quick unlock allows you to use a PIN to unlock your ChromeOS "
2765 "device on the lock screen after you have signed into your device.";
2766const char kQuickUnlockPinSignin[] = "Enable PIN when logging in.";
2767const char kQuickUnlockPinSigninDescription[] =
2768 "Enabling PIN allows you to use a PIN to sign in and unlock your ChromeOS "
2769 "device. After changing this flag PIN needs to be set up again.";
2770const char kQuickUnlockFingerprint[] = "Quick Unlock (Fingerprint)";
2771const char kQuickUnlockFingerprintDescription[] =
2772 "Enabling fingerprint quick unlock allows you to setup and use a "
2773 "fingerprint to unlock your Chromebook on the lock screen after you have "
2774 "signed into your device.";
vabr0215a8e2017-03-28 12:47:342775
Brett Wilson7b44537e2017-08-18 01:38:282776const char kOfficeEditingComponentAppName[] =
2777 "Office Editing for Docs, Sheets & Slides";
2778const char kOfficeEditingComponentAppDescription[] =
2779 "Office Editing for Docs, Sheets & Slides for testing purposes.";
Daniel Erat33054b22017-06-27 16:18:072780
James Cook0ba192bf2017-12-01 20:53:112781const char kShowTapsName[] = "Show taps";
2782const char kShowTapsDescription[] =
2783 "Draws a circle at each touch point, which makes touch points more obvious "
2784 "when projecting or mirroring the display. Similar to the Android OS "
2785 "developer option.";
2786
2787const char kShowTouchHudName[] = "Show HUD for touch points";
2788const char kShowTouchHudDescription[] =
2789 "Shows a trail of colored dots for the last few touch points. Pressing "
2790 "Ctrl-Alt-I shows a heads-up display view in the top-left corner. Helps "
2791 "debug hardware issues that generate spurious touch events.";
2792
Chung-Sheng Wu468b0b32017-09-01 14:41:572793const char kSysInternalsName[] = "Enable Sys-Internals";
2794const char kSysInternalsDescription[] =
2795 "If enabled, user can monitor system information at "
2796 "chrome://sys-internals.";
2797
Evan Stadecbac7cb2018-03-13 18:19:382798const char kSkipExtraAshWindowPositioningName[] =
2799 "Simplified browser window positioning";
2800const char kSkipExtraAshWindowPositioningDescription[] =
2801 "Skips over Ash-specific positioning logic for new browser windows.";
2802
Brett Wilson7b44537e2017-08-18 01:38:282803const char kTeamDrivesName[] = "Enable Team Drives Integration";
2804const char kTeamDrivesDescription[] =
2805 "If enabled, files under Team Drives will appear in the Files app.";
vabr0215a8e2017-03-28 12:47:342806
Brett Wilson7b44537e2017-08-18 01:38:282807const char kTetherName[] = "Instant Tethering";
2808const char kTetherDescription[] =
2809 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
2810 "phone to share its Internet connection with this device.";
stanisc14bed0b132017-05-10 17:46:372811
Brett Wilson7b44537e2017-08-18 01:38:282812const char kTouchscreenCalibrationName[] =
2813 "Enable/disable touchscreen calibration option in material design settings";
2814const char kTouchscreenCalibrationDescription[] =
2815 "If enabled, the user can calibrate the touch screen displays in "
2816 "chrome://settings/display.";
yhanadac5bff5b2017-05-18 06:37:092817
Mitsuru Oshima63d3f2a2017-08-23 00:12:112818// Force UI Mode
2819const char kUiModeName[] = "Force Ui Mode";
2820const char kUiModeDescription[] =
2821 R"*(This flag can be used to force a certain mode on to a chromebook, )*"
2822 R"*(despite its current orientation. "Tablet" means that the )*"
2823 R"*(chromebook will act as if it were in tablet mode. "Clamshell" )*"
2824 R"*(means that the chromebook will act as if it were in clamshell )*"
2825 R"*(mode . "Auto" means that the chromebook will alternate between )*"
2826 R"*(the two, based on its orientation.)*";
2827const char kUiModeTablet[] = "TouchView";
2828const char kUiModeClamshell[] = "Clamshell";
2829const char kUiModeAuto[] = "Auto (default)";
2830
bruthigeafb0c02017-06-09 13:11:532831const char kUiDevToolsName[] = "Enable native UI inspection";
2832const char kUiDevToolsDescription[] =
2833 "Enables inspection of native UI elements. For local inspection use "
2834 "chrome://inspect#other";
2835
James Cooka1bcfa9a2018-01-30 00:18:402836const char kUseMusName[] = "Mojo UI service (mus)";
2837const char kUseMusDescription[] =
2838 "Handles input events, display configuration, and windowing in a mojo "
2839 "service on a thread in the browser process.";
2840
2841const char kUseMashName[] = "Out-of-process system UI (mash)";
2842const char kUseMashDescription[] =
2843 "Runs the mojo UI service (mus) and the ash window manager and system UI "
2844 "in a separate process.";
Brett Wilson7b44537e2017-08-18 01:38:282845
Miguel Casas-Sanchez8ba32f92017-11-07 05:03:342846// TODO(mcasas): remove after https://crbug.com/771345.
2847const char kUseMonitorColorSpaceName[] = "Use monitor color space";
2848const char kUseMonitorColorSpaceDescription[] =
2849 "Enables Chrome to use the color space information provided by the monitor"
2850 " instead of the default sRGB color space.";
2851
Brett Wilson7b44537e2017-08-18 01:38:282852const char kVideoPlayerChromecastSupportName[] =
2853 "Experimental Chromecast support for Video Player";
2854const char kVideoPlayerChromecastSupportDescription[] =
2855 "This option enables experimental Chromecast support for Video Player app "
2856 "on ChromeOS.";
2857
2858const char kVirtualKeyboardName[] = "Virtual Keyboard";
2859const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
2860
2861const char kVirtualKeyboardOverscrollName[] = "Virtual Keyboard Overscroll";
2862const char kVirtualKeyboardOverscrollDescription[] =
2863 "Enables virtual keyboard overscroll support.";
2864
2865const char kVoiceInputName[] = "Voice input on virtual keyboard";
2866const char kVoiceInputDescription[] =
2867 "Enables voice input on virtual keyboard.";
2868
2869const char kWakeOnPacketsName[] = "Wake On Packets";
2870const char kWakeOnPacketsDescription[] =
2871 "Enables waking the device based on the receipt of some network packets.";
orenb21da031c2017-06-30 21:24:202872
yhanadac5bff5b2017-05-18 06:37:092873#endif // defined(OS_CHROMEOS)
2874
Brett Wilson7b44537e2017-08-18 01:38:282875// Random platform combinations -----------------------------------------------
2876
2877#if defined(OS_WIN) || defined(OS_LINUX)
2878
2879const char kEnableInputImeApiName[] = "Enable Input IME API";
2880const char kEnableInputImeApiDescription[] =
2881 "Enable the use of chrome.input.ime API.";
2882
2883#endif // defined(OS_WIN) || defined(OS_LINUX)
2884
2885#if defined(OS_WIN) || defined(OS_MACOSX)
2886
2887const char kAutomaticTabDiscardingName[] = "Automatic tab discarding";
2888const char kAutomaticTabDiscardingDescription[] =
2889 "If enabled, tabs get automatically discarded from memory when the system "
2890 "memory is low. Discarded tabs are still visible on the tab strip and get "
2891 "reloaded when clicked on. Info about discarded tabs can be found at "
2892 "chrome://discards.";
2893
2894#endif // defined(OS_WIN) || defined(OS_MACOSX)
2895
2896// Feature flags --------------------------------------------------------------
2897
2898#if BUILDFLAG(ENABLE_VR)
2899
David Dorwin5a496c32017-11-17 01:45:052900const char kWebVrVsyncAlignName[] = "WebVR VSync-aligned timing";
2901const char kWebVrVsyncAlignDescription[] =
2902 "Align WebVR application rendering with VSync for smoother animations.";
2903
Brett Wilson7b44537e2017-08-18 01:38:282904#if defined(OS_ANDROID)
2905
David Dorwin5a496c32017-11-17 01:45:052906const char kVrBrowsingName[] = "VR browsing";
2907const char kVrBrowsingDescription[] =
2908 "Browsing within a VR headset if available for this device.";
Brett Wilson7b44537e2017-08-18 01:38:282909
Yash Malik50bcfc12017-11-18 00:47:592910const char kVrBrowserKeyboardName[] = "Chrome VR virtual keyboard.";
2911const char kVrBrowserKeyboardDescription[] =
2912 "Enable a virtual keyboard for Chrome VR.";
2913
Yash Malikb78e72a72018-02-21 09:14:102914const char kVrWebInputEditingName[] = "VR browsing web input editing";
2915const char kVrWebInputEditingDescription[] =
2916 "Allow editing web input fields while in VR mode.";
2917
David Dorwin5a496c32017-11-17 01:45:052918const char kVrBrowsingExperimentalFeaturesName[] =
2919 "VR browsing experimental features";
2920const char kVrBrowsingExperimentalFeaturesDescription[] =
2921 "Experimental VR browsing features that are under development.";
Brett Wilson7b44537e2017-08-18 01:38:282922
David Dorwin5a496c32017-11-17 01:45:052923const char kVrBrowsingExperimentalRenderingName[] =
2924 "VR browsing experimental rendering features";
2925const char kVrBrowsingExperimentalRenderingDescription[] =
2926 "Experimental rendering features for VR browsing (e.g. power-saving "
2927 "rendering modes).";
Michael Thiessenb480fe92017-10-26 16:25:102928
David Dorwin5a496c32017-11-17 01:45:052929const char kVrBrowsingInCustomTabName[] = "VR browsing in Custom Tabs";
2930const char kVrBrowsingInCustomTabDescription[] =
2931 "Allow browsing within a VR headset while in a Custom Tab.";
2932
Michael Thiessen37895912018-01-19 20:15:542933const char kVrIconInDaydreamHomeName[] = "Chrome icon in Daydream Home";
2934const char kVrIconInDaydreamHomeDescription[] =
2935 "Adds an icon to Daydream Home that allows launching Chrome in VR.";
2936
David Dorwin5a496c32017-11-17 01:45:052937const char kWebVrAutopresentFromIntentName[] =
2938 "WebVR auto presentation from intents";
2939const char kWebVrAutopresentFromIntentDescription[] =
2940 "Allow auto presentation of WebVR content from trusted first-party apps.";
Brett Wilson7b44537e2017-08-18 01:38:282941
2942#endif // OS_ANDROID
2943
Bill Orr103ed272018-02-14 21:23:052944#if BUILDFLAG(ENABLE_OCULUS_VR)
2945const char kOculusVRName[] = "Oculus hardware support";
2946const char kOculusVRDescription[] =
2947 "If enabled, Chrome will use Oculus devices for VR (supported only on "
2948 "Windows 10 or later).";
2949#endif // ENABLE_OCULUS_VR
2950
Bill Orr49527562017-11-22 16:58:482951#if BUILDFLAG(ENABLE_OPENVR)
2952const char kOpenVRName[] = "OpenVR hardware support";
2953const char kOpenVRDescription[] =
Bill Orr5056e692018-01-17 02:08:072954 "If enabled, Chrome will use OpenVR devices for VR (supported only on "
2955 "Windows 10 or later).";
Bill Orr49527562017-11-22 16:58:482956#endif // ENABLE_OPENVR
2957
Brett Wilson7b44537e2017-08-18 01:38:282958#endif // ENABLE_VR
2959
Nico Weberaf3b00b2017-09-11 17:58:172960#if BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:282961
2962const char kNaclDebugMaskName[] =
2963 "Restrict Native Client GDB-based debugging by pattern";
2964const char kNaclDebugMaskDescription[] =
2965 "Restricts Native Client application GDB-based debugging by URL of "
2966 "manifest file. Native Client GDB-based debugging must be enabled for this "
2967 "option to work.";
2968const char kNaclDebugMaskChoiceDebugAll[] = "Debug everything.";
2969const char kNaclDebugMaskChoiceExcludeUtilsPnacl[] =
2970 "Debug everything except secure shell and the PNaCl translator.";
2971const char kNaclDebugMaskChoiceIncludeDebug[] =
2972 "Debug only if manifest URL ends with debug.nmf.";
2973
2974const char kNaclDebugName[] = "Native Client GDB-based debugging";
2975const char kNaclDebugDescription[] =
2976 "Enable GDB debug stub. This will stop a Native Client application on "
2977 "startup and wait for nacl-gdb (from the NaCl SDK) to attach to it.";
2978
2979const char kNaclName[] = "Native Client";
2980const char kNaclDescription[] =
2981 "Support Native Client for all web applications, even those that were not "
2982 "installed from the Chrome Web Store.";
2983
2984const char kPnaclSubzeroName[] = "Force PNaCl Subzero";
2985const char kPnaclSubzeroDescription[] =
2986 "Force the use of PNaCl's fast Subzero translator for all pexe files.";
2987
Nico Weberaf3b00b2017-09-11 17:58:172988#endif // BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:282989
Brett Wilson7b44537e2017-08-18 01:38:282990#if BUILDFLAG(ENABLE_WEBRTC)
2991
2992const char kWebrtcH264WithOpenh264FfmpegName[] =
2993 "WebRTC H.264 software video encoder/decoder";
2994const char kWebrtcH264WithOpenh264FfmpegDescription[] =
2995 "When enabled, an H.264 software video encoder/decoder pair is included. "
2996 "If a hardware encoder/decoder is also available it may be used instead of "
2997 "this encoder/decoder.";
2998
2999#endif // BUILDFLAG(ENABLE_WEBRTC)
3000
James Cookf9d34d22017-10-04 16:39:353001#if defined(OS_CHROMEOS)
Brett Wilson7b44537e2017-08-18 01:38:283002
Wenzhao Zang50fb0b22017-11-07 01:38:423003const char kAshDisableLoginDimAndBlurName[] =
3004 "Disable dimming and blur on login screen.";
3005const char kAshDisableLoginDimAndBlurDescription[] =
3006 "Disable dimming and blur on login screen.";
3007
Brett Wilson7b44537e2017-08-18 01:38:283008const char kAshDisableSmoothScreenRotationName[] =
3009 "Disable smooth rotation animations.";
3010const char kAshDisableSmoothScreenRotationDescription[] =
3011 "Disable smooth rotation animations.";
3012
wutaoead73f582018-02-11 23:25:363013const char kAshDisableTrilinearFilteringName[] = "Disable trilinear filtering.";
3014const char kAshDisableTrilinearFilteringDescription[] =
3015 "Disable trilinear filtering.";
3016
Qiang Xub7e921072017-12-07 21:02:113017const char kAshEnableDisplayMoveWindowAccelsName[] =
3018 "Enable shortcuts for moving window between displays.";
3019const char kAshEnableDisplayMoveWindowAccelsDescription[] =
3020 "Enable shortcuts for moving window between displays.";
3021
wutaoc70d7b92017-11-01 08:06:013022const char kAshEnableKeyboardShortcutViewerName[] =
3023 "Enable keyboard shortcut viewer.";
3024const char kAshEnableKeyboardShortcutViewerDescription[] =
3025 "Enable keyboard shortcut viewer.";
3026
Brett Wilson7b44537e2017-08-18 01:38:283027const char kAshEnableMirroredScreenName[] = "Enable mirrored screen mode.";
3028const char kAshEnableMirroredScreenDescription[] =
3029 "Enable the mirrored screen mode. This mode flips the screen image "
3030 "horizontally.";
3031
Sammie Quon4e14214d2018-01-30 22:45:243032const char kAshEnableNewOverviewUiName[] = "Enable new overview UI.";
3033const char kAshEnableNewOverviewUiDescription[] =
3034 "Enables the new overview mode UI.";
3035
wutaod9cbcd32018-02-17 02:31:063036const char kAshEnableNewOverviewAnimationsName[] =
3037 "Enable new overview animations.";
3038const char kAshEnableNewOverviewAnimationsDescription[] =
3039 "Enables the new overview mode animations.";
3040
Qiang Xufa19cfd2018-01-29 19:36:503041const char kAshEnablePersistentWindowBoundsName[] =
3042 "Enable persistent window bounds in multi-displays scenario.";
3043const char kAshEnablePersistentWindowBoundsDescription[] =
3044 "Enable persistent window bounds in multi-displays scenario.";
3045
Brett Wilson7b44537e2017-08-18 01:38:283046const char kAshShelfColorName[] = "Shelf color in Chrome OS system UI";
3047const char kAshShelfColorDescription[] =
3048 "Enables/disables the shelf color to be a derived from the wallpaper. The "
3049 "--ash-shelf-color-scheme flag defines how that color is derived.";
3050
3051const char kAshShelfColorScheme[] = "Shelf color scheme in Chrome OS System UI";
3052const char kAshShelfColorSchemeDescription[] =
3053 "Specify how the color is derived from the wallpaper. This flag is only "
3054 "used when the --ash-shelf-color flag is enabled. Defaults to Dark & Muted";
3055const char kAshShelfColorSchemeLightVibrant[] = "Light & Vibrant";
3056const char kAshShelfColorSchemeNormalVibrant[] = "Normal & Vibrant";
3057const char kAshShelfColorSchemeDarkVibrant[] = "Dark & Vibrant";
3058const char kAshShelfColorSchemeLightMuted[] = "Light & Muted";
3059const char kAshShelfColorSchemeNormalMuted[] = "Normal & Muted";
3060const char kAshShelfColorSchemeDarkMuted[] = "Dark & Muted";
3061
Wenzhao Zang06a28872018-02-23 04:01:353062const char kEnableNewWallpaperPickerName[] = "Enable new wallpaper picker";
3063const char kEnableNewWallpaperPickerDescription[] =
3064 "Enable the redesigned wallpaper picker with new wallpaper collections.";
3065
Brett Wilson7b44537e2017-08-18 01:38:283066const char kMaterialDesignInkDropAnimationSpeedName[] =
Mike Wasserman2115b162017-09-19 23:42:373067 "Material design ink drop animation speed";
Brett Wilson7b44537e2017-08-18 01:38:283068const char kMaterialDesignInkDropAnimationSpeedDescription[] =
3069 "Sets the speed of the experimental visual feedback animations for "
3070 "material design.";
3071const char kMaterialDesignInkDropAnimationFast[] = "Fast";
3072const char kMaterialDesignInkDropAnimationSlow[] = "Slow";
3073
3074const char kUiShowCompositedLayerBordersName[] =
3075 "Show UI composited layer borders";
3076const char kUiShowCompositedLayerBordersDescription[] =
3077 "Show border around composited layers created by UI.";
3078const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
3079const char kUiShowCompositedLayerBordersSurface[] = "Surface";
3080const char kUiShowCompositedLayerBordersLayer[] = "Layer";
3081const char kUiShowCompositedLayerBordersAll[] = "All";
3082
3083const char kUiSlowAnimationsName[] = "Slow UI animations";
3084const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
3085
James Cookf9d34d22017-10-04 16:39:353086#endif // defined(OS_CHROMEOS)
Brett Wilson7b44537e2017-08-18 01:38:283087
Brett Wilson7b44537e2017-08-18 01:38:283088#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3089
3090const char kAutofillCreditCardUploadName[] =
3091 "Enable offering upload of Autofilled credit cards";
3092const char kAutofillCreditCardUploadDescription[] =
3093 "Enables a new option to upload credit cards to Google Payments for sync "
3094 "to all Chrome devices.";
3095
3096#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3097
3098// ============================================================================
3099// Don't just add flags to the end, put them in the right section in
3100// alphabetical order just like the header file.
3101// ============================================================================
3102
vabr0215a8e2017-03-28 12:47:343103} // namespace flag_descriptions