blob: 487b1279192a9d5ccbecbb55bd6be99de2f34f35 [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
Khushalba202212017-07-12 19:53:4943const char kAsyncImageDecodingName[] = "AsyncImageDecoding";
44const char kAsyncImageDecodingDescription[] =
45 "Enables asynchronous decoding of images from raster for web content";
46
Brett Wilsonf27ff602017-07-07 22:28:4747const char kAutoplayPolicyName[] = "Autoplay policy";
48const char kAutoplayPolicyDescription[] =
49 "Policy used when deciding if audio or video is allowed to autoplay.";
50
51const char kAutoplayPolicyUserGestureRequiredForCrossOrigin[] =
52 "User gesture is required for cross-origin iframes.";
53const char kAutoplayPolicyNoUserGestureRequired[] =
54 "No user gesture is required.";
55const char kAutoplayPolicyUserGestureRequired[] = "User gesture is required.";
56const char kAutoplayPolicyDocumentUserActivation[] =
57 "Document user activation is required.";
58
59const char kBackgroundVideoTrackOptimizationName[] =
60 "Optimize background video playback.";
61const char kBackgroundVideoTrackOptimizationDescription[] =
62 "Disable video tracks when the video is played in the background to "
63 "optimize performance.";
64
65const char kBleAdvertisingInExtensionsName[] = "BLE Advertising in Chrome Apps";
66const char kBleAdvertisingInExtensionsDescription[] =
67 "Enables BLE Advertising in Chrome Apps. BLE Advertising might interfere "
68 "with regular use of Bluetooth Low Energy features.";
69
70const char kBrowserSideNavigationName[] = "Enable browser side navigation";
horodb71a5a2017-06-09 16:08:2471const char kBrowserSideNavigationDescription[] =
horo3beccfb2017-06-19 14:47:0172 "Enable browser side navigation (aka PlzNavigate).";
horodb71a5a2017-06-09 16:08:2473
Brett Wilsonf27ff602017-07-07 22:28:4774const char kBrowserTaskSchedulerName[] = "Task Scheduler";
75const char kBrowserTaskSchedulerDescription[] =
76 "Enables redirection of some task posting APIs to the task scheduler.";
77
78const char kBypassAppBannerEngagementChecksName[] =
79 "Bypass user engagement checks";
80const char kBypassAppBannerEngagementChecksDescription[] =
81 "Bypasses user engagement checks for displaying app banners, such as "
82 "requiring that users have visited the site before and that the banner "
83 "hasn't been shown recently. This allows developers to test that other "
84 "eligibility requirements for showing app banners, such as having a "
85 "manifest, are met.";
86
87const char kCaptureThumbnailOnLoadFinishedName[] =
88 "Capture page thumbnail on load finished";
89const char kCaptureThumbnailOnLoadFinishedDescription[] =
90 "Capture a page thumbnail (for use on the New Tab page) when the page load "
91 "finishes, in addition to other times a thumbnail may be captured.";
92
Marc Treibe3651be2017-07-14 11:05:4093const char kCaptureThumbnailOnNavigatingAwayName[] =
94 "Capture page thumbnail on navigating away";
95const char kCaptureThumbnailOnNavigatingAwayDescription[] =
96 "Capture a page thumbnail (for use on the New Tab page) when navigating "
97 "away from the current page, in addition to other times a thumbnail may be "
98 "captured.";
99
Brett Wilsonf27ff602017-07-07 22:28:47100const char kCastStreamingHwEncodingName[] =
101 "Cast Streaming hardware video encoding";
102const char kCastStreamingHwEncodingDescription[] =
103 "This option enables support in Cast Streaming for encoding video streams "
104 "using platform hardware.";
105
Amber Won478561d2017-08-19 01:02:59106const char kClickToOpenPDFName[] = "Click to open embedded PDFs";
107const char kClickToOpenPDFDescription[] =
108 "When the PDF plugin is unavailable, show a click-to-open placeholder for "
109 "embedded PDFs.";
110
Brett Wilsonf27ff602017-07-07 22:28:47111const char kCloudImportName[] = "Cloud Import";
112const char kCloudImportDescription[] = "Allows the cloud-import feature.";
113
114const char kColorCorrectRenderingName[] = "Color correct rendering";
115const char kColorCorrectRenderingDescription[] =
116 "Enables color correct rendering of web content.";
117
118const char kCompositedLayerBordersName[] = "Composited render layer borders";
119const char kCompositedLayerBordersDescription[] =
120 "Renders a border around composited Render Layers to help debug and study "
121 "layer compositing.";
122
123const char kContextualSuggestionsCarouselName[] =
124 "Enable Contextual Suggestions";
125const char kContextualSuggestionsCarouselDescription[] =
126 "If enabled, shows contextual suggestions in a horizontal carousel in "
127 "bottom sheet content.";
128
129const char kCreditCardAssistName[] = "Credit Card Assisted Filling";
130const char kCreditCardAssistDescription[] =
131 "Enable assisted credit card filling on certain sites.";
132
133const char kCrossProcessGuestViewIsolationName[] =
134 "Cross process frames for guests";
135const char kCrossProcessGuestViewIsolationDescription[] =
136 "Highly experimental where guests such as <webview> are implemented on "
137 "the out-of-process iframe infrastructure.";
138
Brett Wilsonf27ff602017-07-07 22:28:47139const char kDataReductionProxyLoFiName[] = "Data Saver Lo-Fi mode";
140const char kDataReductionProxyLoFiDescription[] =
141 "Forces Data Saver Lo-Fi mode to be always enabled, enabled only on "
142 "cellular connections, or disabled. Data Saver must be enabled for Lo-Fi "
143 "mode to be used.";
144const char kDataReductionProxyLoFiAlwaysOn[] = "Always on";
145const char kDataReductionProxyLoFiCellularOnly[] = "Cellular only";
146const char kDataReductionProxyLoFiDisabled[] = "Disable";
147const char kDataReductionProxyLoFiSlowConnectionsOnly[] =
148 "Slow connections only";
149
150const char kDatasaverPromptName[] = "Cellular Data Saver Prompt";
151const char kDatasaverPromptDescription[] =
152 "Enables a prompt, which appears when a cellular network connection is "
153 "detected, to take the user to the Data Saver extension page on Chrome Web "
154 "Store.";
155const char kDatasaverPromptDemoMode[] = "Demo mode";
156
157const char kDebugPackedAppName[] = "Debugging for packed apps";
158const char kDebugPackedAppDescription[] =
159 "Enables debugging context menu options such as Inspect Element for packed "
160 "applications.";
161
162const char kDefaultTileHeightName[] = "Default tile height";
163const char kDefaultTileHeightDescription[] = "Specify the default tile height.";
164const char kDefaultTileHeightShort[] = "128";
165const char kDefaultTileHeightTall[] = "256";
166const char kDefaultTileHeightGrande[] = "512";
167const char kDefaultTileHeightVenti[] = "1024";
168
169const char kDefaultTileWidthName[] = "Default tile width";
170const char kDefaultTileWidthDescription[] = "Specify the default tile width.";
171const char kDefaultTileWidthShort[] = "128";
172const char kDefaultTileWidthTall[] = "256";
173const char kDefaultTileWidthGrande[] = "512";
174const char kDefaultTileWidthVenti[] = "1024";
175
176const char kDebugShortcutsName[] = "Debugging keyboard shortcuts";
177const char kDebugShortcutsDescription[] =
178 "Enables additional keyboard shortcuts that are useful for debugging Ash.";
179
180const char kDeviceDiscoveryNotificationsName[] =
181 "Device Discovery Notifications";
182const char kDeviceDiscoveryNotificationsDescription[] =
183 "Device discovery notifications on local network.";
184
185const char kDevtoolsExperimentsName[] = "Developer Tools experiments";
186const char kDevtoolsExperimentsDescription[] =
187 "Enables Developer Tools experiments. Use Settings panel in Developer "
188 "Tools to toggle individual experiments.";
189
190const char kDisableAudioForDesktopShareName[] =
191 "Disable Audio For Desktop Share";
192const char kDisableAudioForDesktopShareDescription[] =
193 "With this flag on, desktop share picker window will not let the user "
194 "choose whether to share audio.";
195
Brett Wilsonf27ff602017-07-07 22:28:47196const char kDisableTabForDesktopShareName[] =
197 "Disable Desktop Share with tab source";
198const char kDisableTabForDesktopShareDescription[] =
199 "This flag controls whether users can choose a tab for desktop share.";
200
201const char kDisallowDocWrittenScriptsUiName[] =
202 "Block scripts loaded via document.write";
203const char kDisallowDocWrittenScriptsUiDescription[] =
204 "Disallows fetches for third-party parser-blocking scripts inserted into "
205 "the main frame via document.write.";
206
207const char kDisplayList2dCanvasName[] = "Display list 2D canvas";
208const char kDisplayList2dCanvasDescription[] =
209 "Enables the use of display lists to record 2D canvas commands. This "
210 "allows 2D canvas rasterization to be performed on separate thread.";
211
212const char kDistanceFieldTextName[] = "Distance field text";
213const char kDistanceFieldTextDescription[] =
214 "Text is rendered with signed distance fields rather than bitmap alpha "
215 "masks.";
216
217const char kDriveSearchInChromeLauncherName[] =
218 "Drive Search in Chrome App Launcher";
219const char kDriveSearchInChromeLauncherDescription[] =
220 "Files from Drive will show up when searching the Chrome App Launcher.";
221
222const char kDropSyncCredentialName[] =
223 "Drop sync credentials from password manager";
224const char kDropSyncCredentialDescription[] =
225 "The password manager will not offer to save the credential used to sync.";
226
227const char kEasyUnlockBluetoothLowEnergyDiscoveryName[] =
228 "Smart Lock Bluetooth Low Energy Discovery";
229const char kEasyUnlockBluetoothLowEnergyDiscoveryDescription[] =
Tim Song52c142c62017-07-20 03:29:07230 "Disables a Smart Lock setting that allows Chromebook to discover phones "
Brett Wilsonf27ff602017-07-07 22:28:47231 "over Bluetooth Low Energy in order to unlock the Chromebook when the "
232 "phone is in its proximity.";
233
Gustavo Sacomotofb11164f2017-07-21 12:56:18234const char kEasyUnlockPromotionsName[] = "Smart Lock Promotions";
235const char kEasyUnlockPromotionsDescription[] =
236 "Enables Smart Lock promotions. Promotions will be periodically display "
237 "if the user is eligible.";
238
Brett Wilsonf27ff602017-07-07 22:28:47239const char kEmbeddedExtensionOptionsName[] = "Embedded extension options";
240const char kEmbeddedExtensionOptionsDescription[] =
241 "Display extension options as an embedded element in chrome://extensions "
242 "rather than opening a new tab.";
243
244const char kEnableAsmWasmName[] =
245 "Experimental Validate Asm.js and convert to WebAssembly when valid.";
246const char kEnableAsmWasmDescription[] =
247 R"*(Validate Asm.js when "use asm" is present and then convert to )*"
248 R"*(WebAssembly.)*";
249
250const char kEnableAutofillCreditCardBankNameDisplayName[] =
251 "Display the issuer bank name of a credit card in autofill.";
252const char kEnableAutofillCreditCardBankNameDisplayDescription[] =
253 "If enabled, displays the issuer bank name of a credit card in autofill.";
254
255const char kEnableAutofillCreditCardLastUsedDateDisplayName[] =
256 "Display the last used date of a credit card in autofill.";
257const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
258 "If enabled, display the last used date of a credit card in autofill.";
259
260const char kEnableAutofillCreditCardUploadCvcPromptName[] =
261 "Enable requesting missing CVC during Autofill credit card upload";
262const char kEnableAutofillCreditCardUploadCvcPromptDescription[] =
263 "If enabled, requests missing CVC when offering to upload credit cards to "
264 "Google Payments.";
265
Jared Saule4446d12017-08-15 20:01:13266const char kEnableAutofillCreditCardUploadGoogleLogoName[] =
267 "Show Google Logo for Autofill credit card upload";
268const char kEnableAutofillCreditCardUploadGoogleLogoDescription[] =
269 "If enabled, displays the Google logo in the save prompt when offering to "
270 "upload credit cards to Google Payments.";
271
jsaul19ef81c2017-08-09 18:53:40272const char kEnableAutofillCreditCardUploadNewUiName[] =
273 "Enable updated UI for Autofill credit card upload";
274const char kEnableAutofillCreditCardUploadNewUiDescription[] =
275 "If enabled, displays a new save card bubble/infobar design when offering "
276 "to upload credit cards to Google Payments.";
277
Vitalii Iarko4f9834ce2017-08-04 07:05:19278const char kEnableBreakingNewsPushName[] = "Breaking News Push";
279const char kEnableBreakingNewsPushDescription[] =
280 "Listen for breaking news content suggestions (e.g. for New Tab Page) "
281 "through Google Cloud Messaging.";
282
Brett Wilsonf27ff602017-07-07 22:28:47283const char kEnableBrotliName[] = "Brotli Content-Encoding.";
284const char kEnableBrotliDescription[] =
285 "Enable Brotli Content-Encoding support.";
286
287const char kEnableClearBrowsingDataCountersName[] =
288 "Enable Clear browsing data counters.";
289const char kEnableClearBrowsingDataCountersDescription[] =
290 "Shows data volume counters in the Clear browsing data dialog.";
291
sclittle50e4bb92017-07-08 02:23:03292const char kEnableClientLoFiName[] = "Client-side Lo-Fi previews";
293
294const char kEnableClientLoFiDescription[] =
295 "Enable showing low fidelity images on some pages on slow networks.";
296
Brett Wilsonf27ff602017-07-07 22:28:47297const char kEnableDataReductionProxyLitePageName[] =
298 "Lite pages for Data Saver Lo-Fi mode";
299const char kEnableDataReductionProxyLitePageDescription[] =
300 "Enable lite pages in Data Saver Lo-Fi mode. Previews of pages will be "
301 "shown instead of image placeholders when Lo-Fi is on. Data Saver and "
302 "Lo-Fi must be enabled for lite pages to be shown.";
303
304const char kDataReductionProxyServerAlternative[] =
305 "Use alternative server configuration";
306const char kEnableDataReductionProxyServerExperimentName[] =
307 "Use an alternative Data Saver back end configuration.";
308const char kEnableDataReductionProxyServerExperimentDescription[] =
309 "Enable a different approach to saving data by configuring the back end "
310 "server";
311
312const char kEnableDataReductionProxySavingsPromoName[] =
313 "Data Saver 1 MB Savings Promo";
314const char kEnableDataReductionProxySavingsPromoDescription[] =
315 "Enable a Data Saver promo for 1 MB of savings. If Data Saver has already "
316 "saved 1 MB of data, then the promo will not be shown. Data Saver must be "
317 "enabled for the promo to be shown.";
318
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17319const char kEnableDesktopPWAWindowingName[] =
320 "Windowing related features for desktop PWAs.";
321const char kEnableDesktopPWAWindowingDescription[] =
322 "Enable experimental windowing features for desktop PWAs.";
323
Brett Wilsonf27ff602017-07-07 22:28:47324const char kEnableEnumeratingAudioDevicesName[] =
325 "Experimentally enable enumerating audio devices.";
326const char kEnableEnumeratingAudioDevicesDescription[] =
327 "Experimentally enable the use of enumerating audio devices.";
328
329const char kEnableGenericSensorName[] = "Generic Sensor";
330const char kEnableGenericSensorDescription[] =
Mikhail Pozdnyakov73373a62017-08-24 17:31:25331 "Enables motion sensor classes based on Generic Sensor API, i.e. "
332 "Accelerometer, LinearAccelerationSensor, Gyroscope, "
333 "AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
334
335const char kEnableGenericSensorExtraClassesName[] =
336 "Generic Sensor Extra Classes";
337const char kEnableGenericSensorExtraClassesDescription[] =
338 "Enables an extra set of sensor classes based on Generic Sensor API, which "
339 "expose previously unavailable platform features, i.e. AmbientLightSensor "
340 "and Magnetometer interfaces.";
Brett Wilsonf27ff602017-07-07 22:28:47341
Brett Wilsonf27ff602017-07-07 22:28:47342const char kEnableHDRName[] = "HDR mode";
343const char kEnableHDRDescription[] =
344 "Enables HDR support on compatible displays.";
345
346const char kEnableHeapProfilingName[] = "Heap profiling";
347const char kEnableHeapProfilingDescription[] = "Enables heap profiling.";
348const char kEnableHeapProfilingModePseudo[] = "Enabled (pseudo mode)";
349const char kEnableHeapProfilingModeNative[] = "Enabled (native mode)";
350const char kEnableHeapProfilingTaskProfiler[] = "Enabled (task mode)";
351
352const char kEnableHttpFormWarningName[] =
353 "Show in-form warnings for sensitive fields when the top-level page is not "
354 "not HTTPS";
355const char kEnableHttpFormWarningDescription[] =
356 "Attaches a warning UI to any password or credit card fields detected when "
357 "the top-level page is not HTTPS";
358
359const char kEnableIdleTimeSpellCheckingName[] =
360 "Enable idle time spell checker";
361const char kEnableIdleTimeSpellCheckingDescription[] =
362 "Make spell-checking code run only when the browser is idle, so that input "
363 "latency is reduced, especially when editing long articles, emails, etc.";
vabr0215a8e2017-03-28 12:47:34364
Tatiana Gornakafb40452017-07-31 13:50:04365const char kEnableManualFallbacksFillingName[] =
366 "Manual fallbacks for password manager forms filling";
367const char kEnableManualFallbacksFillingDescription[] =
368 "If enabled, then if user clicks on the password field on a form, popup "
369 "might contain generation fallbacks or 'Show all saved passwords' "
370 "fallback.";
371
vabr0215a8e2017-03-28 12:47:34372const char kEnableMaterialDesignBookmarksName[] =
373 "Enable Material Design bookmarks";
vabr0215a8e2017-03-28 12:47:34374const char kEnableMaterialDesignBookmarksDescription[] =
375 "If enabled, the chrome://bookmarks/ URL loads the Material Design "
376 "bookmarks page.";
377
vabr0215a8e2017-03-28 12:47:34378const char kEnableMaterialDesignExtensionsName[] =
379 "Enable Material Design extensions";
vabr0215a8e2017-03-28 12:47:34380const char kEnableMaterialDesignExtensionsDescription[] =
381 "If enabled, the chrome://extensions/ URL loads the Material Design "
382 "extensions page.";
383
vabr0215a8e2017-03-28 12:47:34384const char kEnableMaterialDesignFeedbackName[] =
385 "Enable Material Design feedback";
vabr0215a8e2017-03-28 12:47:34386const char kEnableMaterialDesignFeedbackDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19387 "If enabled, reporting an issue will load the Material Design feedback UI.";
vabr0215a8e2017-03-28 12:47:34388
Brett Wilsonf27ff602017-07-07 22:28:47389const char kEnableMidiManagerDynamicInstantiationName[] =
390 "MIDIManager dynamic instantiation for Web MIDI.";
391const char kEnableMidiManagerDynamicInstantiationDescription[] =
392 "Enable MIDIManager dynamic instantiation for Web MIDI.";
393
394const char kEnableNavigationTracingName[] = "Enable navigation tracing";
395const char kEnableNavigationTracingDescription[] =
396 "This is to be used in conjunction with the trace-upload-url flag. "
397 "WARNING: When enabled, Chrome will record performance data for every "
398 "navigation and upload it to the URL specified by the trace-upload-url "
399 "flag. The trace may include personally identifiable information (PII) "
400 "such as the titles and URLs of websites you visit.";
401
402const char kEnableNetworkServiceName[] = "Enable network service";
403const char kEnableNetworkServiceDescription[] =
404 "Enables the network service, which makes network requests through a "
405 "separate service. Note: most features don't work with this yet.";
406
Ahmed Fakhry2fd8fc82017-07-28 16:31:12407const char kEnableNightLightName[] = "Enable Night Light";
408const char kEnableNightLightDescription[] =
409 "Enable the Night Light feature which controls the color temperature of "
410 "the screen.";
411
Yutaka Hirano98be3272017-08-07 17:55:39412const char kEnableOutOfBlinkCORSName[] = "Out of blink CORS";
413const char kEnableOutOfBlinkCORSDescription[] =
414 "CORS handling logic is moved out of blink.";
415
Erik Chen49bbfa22017-08-18 08:49:56416const char kEnableOutOfProcessHeapProfilingName[] =
417 "Out of process heap profiling.";
418const char kEnableOutOfProcessHeapProfilingDescription[] =
419 "Creates a profiling service that records stacktraces for all live, "
420 "malloced objects.";
421const char kEnableOutOfProcessHeapProfilingModeBrowser[] =
422 "Profile only the browser process.";
423const char kEnableOutOfProcessHeapProfilingModeAll[] = "Profile all processes.";
424
Brett Wilsonf27ff602017-07-07 22:28:47425const char kEnablePictureInPictureName[] = "Enable picture in picture.";
426const char kEnablePictureInPictureDescription[] =
427 "Enable the picture in picture feature for videos.";
428
429const char kEnableTokenBindingName[] = "Token Binding.";
430const char kEnableTokenBindingDescription[] = "Enable Token Binding support.";
431
Irmak Kavasoglu7e16af02017-07-19 09:52:47432const char kEnableUsernameCorrectionName[] = "Enable username correction";
433const char kEnableUsernameCorrectionDescription[] =
434 "While on the pending password state, add an edit button to the bubble so "
435 "that user can edit the username.";
436
Brett Wilsonf27ff602017-07-07 22:28:47437const char kEnableUseZoomForDsfName[] =
438 "Use Blink's zoom for device scale factor.";
439const char kEnableUseZoomForDsfDescription[] =
440 "If enabled, Blink uses its zooming mechanism to scale content for device "
441 "scale factor.";
442const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
443const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
444const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
445
446const char kEnableScrollAnchoringName[] = "Scroll Anchoring";
447const char kEnableScrollAnchoringDescription[] =
448 "Adjusts scroll position to prevent visible jumps when offscreen content "
449 "changes.";
450
451const char kEnableSharedArrayBufferName[] =
452 "Experimental enabled SharedArrayBuffer support in JavaScript.";
453const char kEnableSharedArrayBufferDescription[] =
454 "Enable SharedArrayBuffer support in JavaScript.";
455
456const char kEnableWasmName[] = "WebAssembly structured cloning support.";
457const char kEnableWasmDescription[] =
458 "Enable web pages to use WebAssembly structured cloning.";
459
460const char kEnableWebUsbName[] = "WebUSB";
461const char kEnableWebUsbDescription[] = "Enable WebUSB support.";
462
463const char kEnableImageCaptureAPIName[] = "Image Capture API";
464const char kEnableImageCaptureAPIDescription[] =
465 "Enables the Web Platform Image Capture API: takePhoto(), "
466 "getPhotoCapabilities(), etc.";
467
468const char kEnableZeroSuggestRedirectToChromeName[] =
469 "Experimental contextual omnibox suggestion";
470const char kEnableZeroSuggestRedirectToChromeDescription[] =
471 "Change omnibox contextual suggestions to an experimental source. Note "
472 "that this is not an on/off switch for contextual omnibox and it only "
473 "applies to suggestions provided before the user starts typing a URL or a "
474 "search query (i.e. zero suggest).";
475
476const char kEnableWasmStreamingName[] =
477 "WebAssembly streaming compile/instantiate support.";
478const char kEnableWasmStreamingDescription[] =
479 "WebAssembly.{compile|instantiate} taking a Response as parameter.";
480
481const char kEnableWebfontsInterventionName[] =
482 "New version of User Agent Intervention for WebFonts loading.";
483const char kEnableWebfontsInterventionDescription[] =
484 "Enable New version of User Agent Intervention for WebFonts loading.";
485const char kEnableWebfontsInterventionV2ChoiceDefault[] = "Default";
486const char kEnableWebfontsInterventionV2ChoiceEnabledWith2g[] = "Enabled: 2G";
487const char kEnableWebfontsInterventionV2ChoiceEnabledWith3g[] = "Enabled: 3G";
488const char kEnableWebfontsInterventionV2ChoiceEnabledWithSlow2g[] =
489 "Enabled: Slow 2G";
490const char kEnableWebfontsInterventionV2ChoiceDisabled[] = "Disabled";
491
492const char kEnableWebfontsInterventionTriggerName[] =
493 "Trigger User Agent Intervention for WebFonts loading always.";
494const char kEnableWebfontsInterventionTriggerDescription[] =
495 "Enable to trigger User Agent Intervention for WebFonts loading always. "
496 "This flag affects only when the intervention is enabled.";
497
498const char kEnableWebNotificationCustomLayoutsName[] =
499 "Enable custom layouts for Web Notifications.";
500const char kEnableWebNotificationCustomLayoutsDescription[] =
501 "Enable custom layouts for Web Notifications. They will have subtle layout "
502 "improvements that are otherwise not possible.";
503
504const char kExpensiveBackgroundTimerThrottlingName[] =
505 "Throttle expensive background timers";
506const char kExpensiveBackgroundTimerThrottlingDescription[] =
507 "Enables intervention to limit CPU usage of background timers to 1%.";
508
509const char kExperimentalAppBannersName[] = "Experimental app banners";
510const char kExperimentalAppBannersDescription[] =
511 "Enables a new experimental app banner flow and UI";
512
513const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
514const char kExperimentalCanvasFeaturesDescription[] =
515 "Enables the use of experimental canvas features which are still in "
516 "development.";
517
518const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
519const char kExperimentalExtensionApisDescription[] =
520 "Enables experimental extension APIs. Note that the extension gallery "
521 "doesn't allow you to upload extensions that use experimental APIs.";
522
523const char kExperimentalFullscreenExitUIName[] =
524 "Experimental fullscreen exit UI";
525const char kExperimentalFullscreenExitUIDescription[] =
526 "Displays experimental UI to allow mouse and touch input methods to exit "
527 "fullscreen mode.";
528
529const char kExperimentalHotwordHardwareName[] =
530 "Simulated hardware 'Ok Google' features";
531const char kExperimentalHotwordHardwareDescription[] =
532 "Enables an experimental version of 'Ok Google' hotword detection features "
533 "that have a hardware dependency.";
534
535const char kExperimentalKeyboardLockUiName[] = "Experimental keyboard lock UI.";
536const char kExperimentalKeyboardLockUiDescription[] =
537 "An experimental full screen with keyboard lock mode requiring users to "
538 "hold Esc to exit.";
539
540const char kExperimentalSecurityFeaturesName[] =
541 "Potentially annoying security features";
542const char kExperimentalSecurityFeaturesDescription[] =
543 "Enables several security features that will likely break one or more "
544 "pages that you visit on a daily basis. Strict mixed content checking, for "
545 "example. And locking powerful features to secure contexts. This flag will "
546 "probably annoy you.";
547
548const char kExperimentalWebPlatformFeaturesName[] =
549 "Experimental Web Platform features";
550const char kExperimentalWebPlatformFeaturesDescription[] =
551 "Enables experimental Web Platform features that are in development.";
552
553const char kExtensionContentVerificationName[] =
554 "Extension Content Verification";
555const char kExtensionContentVerificationDescription[] =
556 "This flag can be used to turn on verification that the contents of the "
557 "files on disk for extensions from the webstore match what they're "
558 "expected to be. This can be used to turn on this feature if it would not "
559 "otherwise have been turned on, but cannot be used to turn it off (because "
560 "this setting can be tampered with by malware).";
561const char kExtensionContentVerificationBootstrap[] =
562 "Bootstrap (get expected hashes, but do not enforce them)";
563const char kExtensionContentVerificationEnforce[] =
564 "Enforce (try to get hashes, and enforce them if successful)";
565const char kExtensionContentVerificationEnforceStrict[] =
566 "Enforce strict (hard fail if we can't get hashes)";
567
568const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
569const char kExtensionsOnChromeUrlsDescription[] =
570 "Enables running extensions on chrome:// URLs, where extensions explicitly "
571 "request this permission.";
galinapae72e152017-05-12 13:12:28572
Brett Wilsonecb80982017-07-12 20:34:51573const char kFastUnloadName[] = "Fast tab/window close";
574const char kFastUnloadDescription[] =
575 "Enables fast tab/window closing - runs a tab's onunload js handler "
576 "independently of the GUI.";
vabr0215a8e2017-03-28 12:47:34577
Brett Wilsonecb80982017-07-12 20:34:51578const char kFeaturePolicyName[] = "Feature Policy";
579const char kFeaturePolicyDescription[] =
580 "Enables granting and removing access to features through the "
581 "Feature-Policy HTTP header.";
vabr0215a8e2017-03-28 12:47:34582
Brett Wilsonecb80982017-07-12 20:34:51583const char kFetchKeepaliveTimeoutSettingName[] =
584 "Fetch API keepalive timeout setting";
585const char kFetchKeepaliveTimeoutSettingDescription[] =
586 "This is for setting the timeout value for Fetch API with keepalive option "
587 "and SendBeacon";
588
589const char kFontCacheScalingName[] = "FontCache scaling";
590const char kFontCacheScalingDescription[] =
591 "Reuse a cached font in the renderer to serve different sizes of font for "
592 "faster layout.";
593
594const char kForceEffectiveConnectionTypeName[] =
595 "Override effective connection type";
596const char kForceEffectiveConnectionTypeDescription[] =
597 "Overrides the effective connection type of the current connection "
598 "returned by the network quality estimator.";
599const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
600const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
601const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
602const char kEffectiveConnectionType2GDescription[] = "2G";
603const char kEffectiveConnectionType3GDescription[] = "3G";
604const char kEffectiveConnectionType4GDescription[] = "4G";
605
606const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
607const char kFillOnAccountSelectDescription[] =
608 "Filling of passwords when an account is explicitly selected by the user "
609 "rather than autofilling credentials on page load.";
610
Brett Wilsonecb80982017-07-12 20:34:51611const char kForceTextDirectionName[] = "Force text direction";
612const char kForceTextDirectionDescription[] =
613 "Explicitly force the per-character directionality of UI text to "
614 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
615 "direction of the character language.";
616const char kForceDirectionLtr[] = "Left-to-right";
617const char kForceDirectionRtl[] = "Right-to-left";
618
619const char kForceUiDirectionName[] = "Force UI direction";
620const char kForceUiDirectionDescription[] =
621 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
622 "mode, overriding the default direction of the UI language.";
623
624const char kFramebustingName[] =
625 "Framebusting requires same-origin or a user gesture";
626const char kFramebustingDescription[] =
627 "Don't permit an iframe to navigate the top level browsing context unless "
628 "they are same-origin or the iframe is processing a user gesture.";
629
630const char kGamepadExtensionsName[] = "Gamepad Extensions";
631const char kGamepadExtensionsDescription[] =
632 "Enabling this option allows web applications to access experimental "
633 "extensions to the Gamepad APIs.";
634
sohan3f00ffc2017-07-14 22:28:08635const char kGlCompositedOverlayCandidateQuadBordersName[] =
636 "GL composited overlay candidate quad borders";
637const char kGlCompositedOverlayCandidateQuadBordersDescription[] =
Alex Newcomer43cb7f12017-07-28 17:37:39638 "Renders a border around GL composited overlay candidate quads to help "
639 "debug and study overlay support.";
Brett Wilsonecb80982017-07-12 20:34:51640
641const char kGpuRasterizationMsaaSampleCountName[] =
642 "GPU rasterization MSAA sample count.";
643const char kGpuRasterizationMsaaSampleCountDescription[] =
644 "Specify the number of MSAA samples for GPU rasterization.";
645const char kGpuRasterizationMsaaSampleCountZero[] = "0";
646const char kGpuRasterizationMsaaSampleCountTwo[] = "2";
647const char kGpuRasterizationMsaaSampleCountFour[] = "4";
648const char kGpuRasterizationMsaaSampleCountEight[] = "8";
649const char kGpuRasterizationMsaaSampleCountSixteen[] = "16";
650
651const char kGpuRasterizationName[] = "GPU rasterization";
652const char kGpuRasterizationDescription[] =
653 "Use GPU to rasterize web content. Requires impl-side painting.";
Brett Wilson7b44537e2017-08-18 01:38:28654const char kForceGpuRasterization[] = "Force-enabled for all layers";
Brett Wilsonecb80982017-07-12 20:34:51655
656const char kGoogleProfileInfoName[] = "Google profile name and icon";
657const char kGoogleProfileInfoDescription[] =
658 "Enables using Google information to populate the profile name and icon in "
659 "the avatar menu.";
660
661const char kHarfbuzzRendertextName[] = "HarfBuzz for UI text";
662const char kHarfbuzzRendertextDescription[] =
663 "Enable cross-platform HarfBuzz layout engine for UI text. Doesn't affect "
664 "web content.";
665
666const char kHistoryRequiresUserGestureName[] =
667 "New history entries require a user gesture.";
668const char kHistoryRequiresUserGestureDescription[] =
669 "Require a user gesture to add a history entry.";
670const char kHyperlinkAuditingName[] = "Hyperlink auditing";
671const char kHyperlinkAuditingDescription[] = "Sends hyperlink auditing pings.";
672
673const char kHostedAppQuitNotificationName[] =
674 "Quit notification for hosted apps";
675const char kHostedAppQuitNotificationDescription[] =
676 "Display a notification when quitting Chrome if hosted apps are currently "
677 "running.";
678
679const char kHostedAppShimCreationName[] =
680 "Creation of app shims for hosted apps on Mac";
681const char kHostedAppShimCreationDescription[] =
682 "Create app shims on Mac when creating a hosted app.";
683
684const char kIconNtpName[] = "Large icons on the New Tab page";
685const char kIconNtpDescription[] =
686 "Enable the experimental New Tab page using large icons.";
687
688const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
689const char kIgnoreGpuBlacklistDescription[] =
690 "Overrides the built-in software rendering list and enables "
691 "GPU-acceleration on unsupported system configurations.";
692
693const char kImportantSitesInCbdName[] =
694 "Important sites options in clear browsing data dialog";
695const char kImportantSitesInCbdDescription[] =
696 "Include the option to whitelist important sites in the clear browsing "
697 "data dialog.";
698
699const char kInertVisualViewportName[] = "Inert visual viewport.";
700const char kInertVisualViewportDescription[] =
701 "Experiment to have all APIs reflect the layout viewport. This will make "
702 "window.scroll properties relative to the layout viewport.";
703
704const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
705const char kInProductHelpDemoModeChoiceDescription[] =
706 "Selects the In-Product Help demo mode.";
707
708const char kJavascriptHarmonyName[] = "Experimental JavaScript";
709const char kJavascriptHarmonyDescription[] =
710 "Enable web pages to use experimental JavaScript features.";
711
712const char kJavascriptHarmonyShippingName[] =
713 "Latest stable JavaScript features";
714const char kJavascriptHarmonyShippingDescription[] =
715 "Some web pages use legacy or non-standard JavaScript extensions that may "
716 "conflict with the latest JavaScript features. This flag allows disabling "
717 "support of those features for compatibility with such pages.";
718
719const char kLcdTextName[] = "LCD text antialiasing";
720const char kLcdTextDescription[] =
721 "If disabled, text is rendered with grayscale antialiasing instead of LCD "
722 "(subpixel) when doing accelerated compositing.";
723
724const char kLoadMediaRouterComponentExtensionName[] =
725 "Load Media Router Component Extension";
726const char kLoadMediaRouterComponentExtensionDescription[] =
727 "Loads the Media Router component extension at startup.";
728
729const char kManualPasswordGenerationName[] = "Manual password generation.";
730const char kManualPasswordGenerationDescription[] =
731 "Show a 'Generate Password' option on the context menu for all password "
732 "fields.";
733
Dominic Battref27e8762017-08-23 11:16:25734const char kManualPasswordSavingName[] = "Manual password saving.";
735const char kManualPasswordSavingDescription[] =
736 "Show the password manager icon when typing into a password filed. "
737 "Clicking it allows to save the password without submitting the form.";
738
Brett Wilsonecb80982017-07-12 20:34:51739const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
740const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
741const char kMarkHttpAsDangerous[] = "Always mark HTTP as actively dangerous";
742const char kMarkHttpAsNonSecureAfterEditing[] =
743 "Warn on HTTP after editing forms";
744const char kMarkHttpAsNonSecureWhileIncognito[] =
745 "Warn on HTTP while in Incognito mode";
746const char kMarkHttpAsNonSecureWhileIncognitoOrEditing[] =
747 "Warn on HTTP while in Incognito mode or after editing forms";
748
749extern const char kMaterialDesignIncognitoNTPName[] =
750 "Material Design Incognito NTP.";
751extern const char kMaterialDesignIncognitoNTPDescription[] =
752 "If enabled, the Incognito New Tab page uses the new material design with "
753 "a better readable text.";
754
755const char kMediaRemotingName[] = "Media Remoting during Cast Tab Mirroring";
756const char kMediaRemotingDescription[] =
757 "When Casting a tab to a remote device, enabling this turns on an "
758 "optimization that forwards the content bitstream directly to the remote "
759 "device when a video is fullscreened.";
760
761const char kMemoryAblationName[] = "Memory ablation experiment";
762const char kMemoryAblationDescription[] =
763 "Allocates extra memory in the browser process.";
764
765const char kMemoryCoordinatorName[] = "Memory coordinator";
766const char kMemoryCoordinatorDescription[] =
767 "Enable memory coordinator instead of memory pressure listeners.";
768
769const char kMessageCenterNewStyleNotificationName[] = "New style notification";
770const char kMessageCenterNewStyleNotificationDescription[] =
771 "Enables the experiment style of material-design notification";
772
773const char kMessageCenterAlwaysScrollUpUponRemovalName[] =
774 "Experiments that message center always scroll up upon notification "
775 "removal";
776const char kMessageCenterAlwaysScrollUpUponRemovalDescription[] =
777 "Enables experiment that message center always scroll up when a "
778 "notification is removed.";
779
780const char kMhtmlGeneratorOptionName[] = "MHTML Generation Option";
781const char kMhtmlGeneratorOptionDescription[] =
782 "Provides experimental options for MHTML file generator.";
783const char kMhtmlSkipNostoreMain[] = "Skips no-store main frame.";
784const char kMhtmlSkipNostoreAll[] = "Skips all no-store resources.";
785
786const char kMojoLoadingName[] = "Use Mojo IPC for resource loading";
787const char kMojoLoadingDescription[] =
788 "Use Mojo IPC instead of traditional Chrome IPC for resource loading.";
789
Miguel Casas-Sanchez10769c82017-07-27 23:52:04790const char kMojoVideoEncodeAcceleratorName[] =
791 "Hardware-accelerated video encoder accessed using Mojo IPC";
792const char kMojoVideoEncodeAcceleratorDescription[] =
793 "Use new Mojo IPC to access hardware-accelerated video encoder, where "
794 "available.";
795
Brett Wilsonecb80982017-07-12 20:34:51796const char kModuleScriptsName[] = "Enable ECMAScript 6 modules";
797const char kModuleScriptsDescription[] =
798 "Enables ECMAScript 6 modules support in Blink.";
799
Kouhei Ueno08445c22017-09-05 03:58:30800const char kModuleScriptsDynamicImportName[] =
801 "Enable ECMAScript 6 modules dynamic import";
802const char kModuleScriptsDynamicImportDescription[] =
803 "Enables ECMAScript 6 modules dynamic \"import\" syntax support in V8 and "
804 "Blink.";
805
Brett Wilsonecb80982017-07-12 20:34:51806const char kNewAudioRenderingMixingStrategyName[] =
807 "New audio rendering mixing strategy";
808const char kNewAudioRenderingMixingStrategyDescription[] =
809 "Use the new audio rendering mixing strategy.";
810
811const char kNewBookmarkAppsName[] = "The new bookmark app system";
812const char kNewBookmarkAppsDescription[] =
813 "Enables the new system for creating bookmark apps.";
814
815const char kNewOmniboxAnswerTypesName[] =
816 "New omnibox answers in suggest types";
817const char kNewOmniboxAnswerTypesDescription[] =
818 "Enables new types of answers in the omnibox suggest drop-down: currency "
819 "conversions, dictionary definitions, sports scores, translations, and "
820 "when is.";
821
822const char kNewRemotePlaybackPipelineName[] =
823 "Enable the new remote playback pipeline.";
824const char kNewRemotePlaybackPipelineDescription[] =
825 "Enable the new pipeline for playing media element remotely via "
826 "RemotePlayback API or native controls.";
827
828const char kNewUsbBackendName[] = "Enable new USB backend";
829const char kNewUsbBackendDescription[] =
830 "Enables the new experimental USB backend for Windows.";
vabr0215a8e2017-03-28 12:47:34831
brettw5f9c1642017-05-14 17:12:48832const char kNostatePrefetchName[] = "No-State Prefetch";
vabr0215a8e2017-03-28 12:47:34833const char kNostatePrefetchDescription[] =
834 R"*("No-State Prefetch" pre-downloads resources to improve load )*"
835 R"*(times. "Prerender" does a full pre-rendering of the page, to )*"
836 R"*(improve load times even more. "Simple Load" does nothing and is )*"
837 R"*(similar to disabling the feature, but collects more metrics for )*"
838 R"*(comparison purposes.)*";
839
Brett Wilsonecb80982017-07-12 20:34:51840const char kNotificationsNativeFlagName[] = "Enable native notifications.";
841const char kNotificationsNativeFlagDescription[] =
842 "Enable support for using the native notification toasts and notification "
843 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:34844
Brett Wilsonecb80982017-07-12 20:34:51845const char kNumRasterThreadsName[] = "Number of raster threads";
846const char kNumRasterThreadsDescription[] =
847 "Specify the number of raster threads.";
848const char kNumRasterThreadsOne[] = "1";
849const char kNumRasterThreadsTwo[] = "2";
850const char kNumRasterThreadsThree[] = "3";
851const char kNumRasterThreadsFour[] = "4";
852
853const char kOfferStoreUnmaskedWalletCardsName[] =
854 "Google Payments card saving checkbox";
855const char kOfferStoreUnmaskedWalletCardsDescription[] =
856 "Show the checkbox to offer local saving of a credit card downloaded from "
857 "the server.";
858
859const char kOfflineAutoReloadName[] = "Offline Auto-Reload Mode";
860const char kOfflineAutoReloadDescription[] =
861 "Pages that fail to load while the browser is offline will be "
862 "auto-reloaded when the browser is online again.";
863
864const char kOfflineAutoReloadVisibleOnlyName[] =
865 "Only Auto-Reload Visible Tabs";
866const char kOfflineAutoReloadVisibleOnlyDescription[] =
867 "Pages that fail to load while the browser is offline will only be "
868 "auto-reloaded if their tab is visible.";
869
870const char kOffMainThreadFetchName[] = "Off-main-thread fetch for Web Workers";
871const char kOffMainThreadFetchDescription[] =
872 "If enabled, the resource fetches from worker threads will not be blocked "
873 "by the busy main thread.";
874
875const char kOmniboxDisplayTitleForCurrentUrlName[] =
876 "Include title for the current URL in the omnibox";
877const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
878 "In the event that the omnibox provides suggestions on-focus, the URL of "
879 "the current page is provided as the first suggestion without a title. "
880 "Enabling this flag causes the title to be displayed.";
881
Benoit Lizeab08362c2017-07-19 14:50:54882const char kOmniboxSpareRendererName[] =
883 "Start spare renderer on omnibox focus";
884const char kOmniboxSpareRendererDescription[] =
885 "When the omnibox is focused, start an empty spare renderer. This can "
886 "speed up the load of the navigation from the omnibox.";
887
Tommy C. Li8875a442017-08-23 00:10:59888const char kOmniboxUIElideSuggestionUrlAfterHostName[] =
889 "Omnibox UI Elide Suggestion URL After Host";
890const char kOmniboxUIElideSuggestionUrlAfterHostDescription[] =
891 "Elides the path, query, and ref of suggested URLs in the Omnibox "
892 "dropdown.";
893
Brett Wilsonecb80982017-07-12 20:34:51894const char kOmniboxUIHideSuggestionUrlSchemeName[] =
895 "Omnibox UI Hide Suggestion URL Scheme";
896const char kOmniboxUIHideSuggestionUrlSchemeDescription[] =
897 "Elides the schemes of suggested URLs in the Omnibox dropdown.";
898
899const char kOmniboxUIHideSuggestionUrlTrivialSubdomainsName[] =
900 "Omnibox UI Hide Suggestion URL Trivial Subdomains";
901const char kOmniboxUIHideSuggestionUrlTrivialSubdomainsDescription[] =
902 "Elides trivially informative subdomains from suggested URLs in the "
903 "Omnibox dropdown (e.g. www. and m.).";
904
Tommy C. Li8875a442017-08-23 00:10:59905const char kOmniboxUIShowSuggestionFaviconsName[] =
906 "Omnibox UI Show Suggestion Favicons";
907const char kOmniboxUIShowSuggestionFaviconsDescription[] =
908 "Shows favicons instead of generic vector icons for URL suggestions in the "
909 "Omnibox dropdown.";
910
Brett Wilsonecb80982017-07-12 20:34:51911const char kOmniboxUIMaxAutocompleteMatchesName[] =
912 "Omnibox UI Max Autocomplete Matches";
913
914const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
915 "Changes the maximum number of autocomplete matches displayed in the "
916 "Omnibox UI.";
917
918const char kOmniboxUINarrowDropdownName[] = "Omnibox UI Narrow Dropdown";
919const char kOmniboxUINarrowDropdownDescription[] =
920 "Makes the suggestions dropdown width match the omnibox width.";
921
922const char kOmniboxUIVerticalLayoutName[] = "Omnibox UI Vertical Layout";
923const char kOmniboxUIVerticalLayoutDescription[] =
924 "Displays Omnibox sugestions in 2 lines - title over origin.";
925
926const char kOmniboxUIVerticalMarginName[] = "Omnibox UI Vertical Margin";
927const char kOmniboxUIVerticalMarginDescription[] =
928 "Changes the vertical margin in the Omnibox UI.";
929
930const char kOriginTrialsName[] = "Origin Trials";
931const char kOriginTrialsDescription[] =
932 "Enables origin trials for controlling access to feature/API experiments.";
933
934const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
935const char kOverlayScrollbarsDescription[] =
936 "Enable the experimental overlay scrollbars implementation. You must also "
937 "enable threaded compositing to have the scrollbars animate.";
938
chaopenge8aa016b2017-08-24 15:20:19939const char kOverlayScrollbarsFlashAfterAnyScrollUpdateName[] =
940 "Flash Overlay Scrollbars After Any Scroll Update";
941const char kOverlayScrollbarsFlashAfterAnyScrollUpdateDescription[] =
942 "Flash Overlay Scrollbars After any scroll update happends in page. You"
943 " must also enable Overlay Scrollbars.";
944
chaopeng343678022017-08-24 18:45:00945const char kOverlayScrollbarsFlashWhenMouseEnterName[] =
946 "Flash Overlay Scrollbars When Mouse Enter";
947const char kOverlayScrollbarsFlashWhenMouseEnterDescription[] =
948 "Flash Overlay Scrollbars When Mouse Enter a scrollable area. You must also"
949 " enable Overlay Scrollbars.";
950
Claudio Magni81326f92017-09-01 05:21:18951const char kUseNewAcceptLanguageHeaderName[] = "Use new Accept-Language header";
952const char kUseNewAcceptLanguageHeaderDescription[] =
953 "Adds the base language code after other corresponding language+region "
954 "codes. This ensures that users receive content in their preferred "
955 "language.";
956
Brett Wilsonecb80982017-07-12 20:34:51957const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
958const char kOverscrollHistoryNavigationDescription[] =
959 "Experimental history navigation in response to horizontal overscroll.";
960const char kOverscrollHistoryNavigationSimpleUi[] = "Simple";
961
962const char kOverscrollStartThresholdName[] = "Overscroll start threshold";
963const char kOverscrollStartThresholdDescription[] =
964 "Changes overscroll start threshold relative to the default value.";
965const char kOverscrollStartThreshold133Percent[] = "133%";
966const char kOverscrollStartThreshold166Percent[] = "166%";
967const char kOverscrollStartThreshold200Percent[] = "200%";
968
969const char kPassiveEventListenerDefaultName[] =
970 "Passive Event Listener Override";
971const char kPassiveEventListenerDefaultDescription[] =
972 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
973 "haven't requested otherwise) to be treated as passive. This will break "
974 "touch/wheel behavior on some websites but is useful for demonstrating the "
975 "potential performance benefits of adopting passive event listeners.";
976const char kPassiveEventListenerTrue[] = "True (when unspecified)";
977const char kPassiveEventListenerForceAllTrue[] = "Force All True";
978
979const char kPassiveEventListenersDueToFlingName[] =
980 "Touch Event Listeners Passive Default During Fling";
981const char kPassiveEventListenersDueToFlingDescription[] =
982 "Forces touchstart, and first touchmove per scroll event listeners during "
983 "fling to be treated as passive.";
984
985const char kPassiveDocumentEventListenersName[] =
986 "Document Level Event Listeners Passive Default";
987const char kPassiveDocumentEventListenersDescription[] =
988 "Forces touchstart, and touchmove event listeners on document level "
989 "targets (which haven't requested otherwise) to be treated as passive.";
990
991const char kPasswordForceSavingName[] = "Force-saving of passwords";
992const char kPasswordForceSavingDescription[] =
993 "Allow the user to manually enforce password saving instead of relying on "
994 "password manager's heuristics.";
995
996const char kPasswordGenerationName[] = "Password generation";
997const char kPasswordGenerationDescription[] =
998 "Allow the user to have Chrome generate passwords when it detects account "
999 "creation pages.";
1000
1001const char kPasswordImportExportName[] = "Password import and export";
1002const char kPasswordImportExportDescription[] =
1003 "Import and Export functionality in password settings.";
1004
1005const char kPermissionActionReportingName[] = "Permission Action Reporting";
1006const char kPermissionActionReportingDescription[] =
1007 "Enables permission action reporting to Safe Browsing servers for opted in "
1008 "users.";
1009
1010const char kPermissionsBlacklistName[] = "Permissions Blacklist";
1011const char kPermissionsBlacklistDescription[] =
1012 "Enables the Permissions Blacklist, which blocks permissions for "
1013 "blacklisted sites for Safe Browsing users.";
1014
1015const char kPinchScaleName[] = "Pinch scale";
1016const char kPinchScaleDescription[] =
1017 "Enables experimental support for scale using pinch.";
1018
Brett Wilsonecb80982017-07-12 20:34:511019const char kPrintPdfAsImageName[] = "Print Pdf as Image";
1020const char kPrintPdfAsImageDescription[] =
1021 "If enabled, an option to print PDF files as images will be available in "
1022 "print preview.";
1023
1024const char kPrintPreviewRegisterPromosName[] =
1025 "Print Preview Registration Promos";
1026const char kPrintPreviewRegisterPromosDescription[] =
1027 "Enable registering unregistered cloud printers from print preview.";
1028
1029const char kProtectSyncCredentialName[] = "Autofill sync credential";
1030const char kProtectSyncCredentialDescription[] =
1031 "How the password manager handles autofill for the sync credential.";
1032
1033const char kProtectSyncCredentialOnReauthName[] =
1034 "Autofill sync credential only for transactional reauth pages";
1035const char kProtectSyncCredentialOnReauthDescription[] =
1036 "How the password manager handles autofill for the sync credential only "
1037 "for transactional reauth pages.";
1038
Mohsen Izadi93faac12017-07-29 04:45:151039const char kPullToRefreshName[] = "Pull-to-refresh gesture";
1040const char kPullToRefreshDescription[] =
1041 "Pull-to-refresh gesture in response to vertical overscroll.";
1042
Brett Wilsonecb80982017-07-12 20:34:511043const char kPushApiBackgroundModeName[] = "Enable Push API background mode";
1044const char kPushApiBackgroundModeDescription[] =
1045 "Enable background mode for the Push API. This allows Chrome to continue "
1046 "running after the last window is closed, and to launch at OS startup, if "
1047 "the Push API needs it.";
1048
Piotr Swigon46929d12017-08-11 07:16:331049const char kPwaMinimalUiName[] = "Minimal-UI display mode for PWAs";
1050const char kPwaMinimalUiDescription[] =
1051 "Enables support for Minimal-UI display mode for installed PWAs";
1052
Brett Wilsonecb80982017-07-12 20:34:511053const char kQuicName[] = "Experimental QUIC protocol";
1054const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1055
1056const char kReducedReferrerGranularityName[] =
1057 "Reduce default 'referer' header granularity.";
1058const char kReducedReferrerGranularityDescription[] =
1059 "If a page hasn't set an explicit referrer policy, setting this flag will "
1060 "reduce the amount of information in the 'referer' header for cross-origin "
1061 "requests.";
1062
1063const char kRequestTabletSiteName[] =
1064 "Request tablet site option in the settings menu";
1065const char kRequestTabletSiteDescription[] =
1066 "Allows the user to request tablet site. Web content is often optimized "
1067 "for tablet devices. When this option is selected the user agent string is "
1068 "changed to indicate a tablet device. Web content optimized for tablets is "
1069 "received there after for the current tab.";
1070
1071const char kResetAppListInstallStateName[] =
1072 "Reset the App Launcher install state on every restart.";
1073const char kResetAppListInstallStateDescription[] =
1074 "Reset the App Launcher install state on every restart. While this flag is "
1075 "set, Chrome will forget the launcher has been installed each time it "
1076 "starts. This is used for testing the App Launcher install flow.";
1077
1078const char kResourceLoadSchedulerName[] = "Use the resource load scheduler";
1079const char kResourceLoadSchedulerDescription[] =
1080 "Uses the resource load scheduler in blink to schedule and throttle "
1081 "resource load requests.";
1082
Brett Wilsonecb80982017-07-12 20:34:511083const char kSafeSearchUrlReportingName[] = "SafeSearch URLs reporting.";
1084const char kSafeSearchUrlReportingDescription[] =
1085 "If enabled, inappropriate URLs can be reported back to SafeSearch.";
1086
1087const char kSaveasMenuLabelExperimentName[] =
1088 "Switch 'Save as' menu labels to 'Download'";
1089const char kSaveasMenuLabelExperimentDescription[] =
1090 "Enables an experiment to switch menu labels that use 'Save as...' to "
1091 "'Download'.";
1092
1093const char kSavePageAsMhtmlName[] = "Save Page as MHTML";
1094const char kSavePageAsMhtmlDescription[] =
1095 "Enables saving pages as MHTML: a single text file containing HTML and all "
1096 "sub-resources.";
1097
Brett Wilsonecb80982017-07-12 20:34:511098const char kScrollPredictionName[] = "Scroll prediction";
1099const char kScrollPredictionDescription[] =
1100 "Predicts the finger's future position during scrolls allowing time to "
1101 "render the frame before the finger is there.";
1102
1103const char kSecondaryUiMd[] =
1104 "Material Design in the rest of the browser's native UI";
1105const char kSecondaryUiMdDescription[] =
1106 "Extends the --top-chrome-md setting to secondary UI (bubbles, dialogs, "
1107 "etc.). On Mac, this enables MacViews, which uses toolkit-views for native "
1108 "browser dialogs.";
1109
1110const char kServiceWorkerNavigationPreloadName[] =
1111 "Service worker navigation preload.";
1112const char kServiceWorkerNavigationPreloadDescription[] =
1113 "Enable web pages to use the experimental service worker navigation "
1114 "preload API.";
1115
Makoto Shimazud9f333c2017-08-08 07:23:171116const char kServiceWorkerScriptStreamingName[] =
1117 "Service worker script streaming.";
1118const char kServiceWorkerScriptStreamingDescription[] =
1119 "Installed scripts for a service worker are sent over a dedicated "
1120 "message pipe and data pipes, and that is never be blocked on the main "
1121 "thread.";
1122
Brett Wilsonecb80982017-07-12 20:34:511123const char kSettingsWindowName[] = "Show settings in a window";
1124const char kSettingsWindowDescription[] =
1125 "Settings will be shown in a dedicated window instead of as a browser tab.";
1126
1127const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
1128const char kShowAutofillSignaturesDescription[] =
1129 "Annotates web forms with Autofill signatures as HTML attributes.";
1130
1131const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
1132const char kShowAutofillTypePredictionsDescription[] =
1133 "Annotates web forms with Autofill field type predictions as placeholder "
1134 "text.";
1135
1136const char kShowOverdrawFeedbackName[] = "Show overdraw feedback";
1137const char kShowOverdrawFeedbackDescription[] =
1138 "Visualize overdraw by color-coding elements based on if they have other "
1139 "elements drawn underneath.";
1140
1141const char kShowSavedCopyName[] = "Show Saved Copy Button";
1142const char kShowSavedCopyDescription[] =
1143 "When a page fails to load, if a stale copy of the page exists in the "
1144 "browser cache, a button will be presented to allow the user to load that "
1145 "stale copy. The primary enabling choice puts the button in the most "
1146 "salient position on the error page; the secondary enabling choice puts it "
1147 "secondary to the reload button.";
1148const char kEnableShowSavedCopyPrimary[] = "Enable: Primary";
1149const char kEnableShowSavedCopySecondary[] = "Enable: Secondary";
1150const char kDisableShowSavedCopy[] = "Disable";
1151
1152const char kShowTouchHudName[] = "Show HUD for touch points";
1153const char kShowTouchHudDescription[] =
1154 "Enables a heads-up display at the top-left corner of the screen that "
1155 "lists information about the touch-points on the screen.";
1156
1157const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1158const char kSilentDebuggerExtensionApiDescription[] =
1159 "Do not show the infobar when an extension attaches to a page via "
1160 "chrome.debugger API. This is required to debug extension background "
1161 "pages.";
1162
1163const char kSimpleCacheBackendName[] = "Simple Cache for HTTP";
1164const char kSimpleCacheBackendDescription[] =
1165 "The Simple Cache for HTTP is a new cache. It relies on the filesystem for "
1166 "disk space allocation.";
1167
1168const char kSimplifiedFullscreenUiName[] =
1169 "Simplified full screen / mouse lock UI.";
1170const char kSimplifiedFullscreenUiDescription[] =
1171 "A simplified new user experience when entering page-triggered full screen "
1172 "or mouse pointer lock states.";
1173
1174const char kSingleClickAutofillName[] = "Single-click autofill";
1175const char kSingleClickAutofillDescription[] =
1176 "Make autofill suggestions on initial mouse click on a form element.";
1177
1178const char kSiteDetails[] = "Site Details";
1179const char kSiteDetailsDescription[] =
1180 "Adds UI in MD Settings to view all content settings for a specific "
1181 "origin.";
1182
1183const char kSitePerProcessName[] = "Strict site isolation";
1184const char kSitePerProcessDescription[] =
1185 "Highly experimental security mode that ensures each renderer process "
1186 "contains pages from at most one site. In this mode, out-of-process "
1187 "iframes will be used whenever an iframe is cross-site.";
1188
1189const char kSiteSettings[] = "Site settings with All sites and Site details";
1190const char kSiteSettingsDescription[] =
1191 "Adds new ways of viewing Site settings.";
1192
1193const char kSlimmingPaintInvalidationName[] = "Slimming paint invalidation.";
1194const char kSlimmingPaintInvalidationDescription[] =
1195 "Whether to enable a new paint invalidation system.";
1196
1197const char kSmoothScrollingName[] = "Smooth Scrolling";
1198const char kSmoothScrollingDescription[] =
1199 "Animate smoothly when scrolling page content.";
1200
1201const char kSoftwareRasterizerName[] = "3D software rasterizer";
1202const char kSoftwareRasterizerDescription[] =
1203 "Fall back to a 3D software rasterizer when the GPU cannot be used.";
1204
Tommy Steimel77704be2017-08-28 22:14:401205const char kSoundContentSettingName[] = "Sound content setting";
1206const char kSoundContentSettingDescription[] =
1207 "Enable site-wide muting in content settings and tab strip context menu.";
1208
Brett Wilsonecb80982017-07-12 20:34:511209const char kSpeculativePrefetchName[] = "Speculative Prefetch";
vabr0215a8e2017-03-28 12:47:341210const char kSpeculativePrefetchDescription[] =
1211 R"*("Speculative Prefetch" fetches likely resources early to improve )*"
1212 R"*(load times, based on a local database (see chrome://predictors). )*"
1213 R"*("Learning" means that only the database construction is enabled, )*"
1214 R"*("Prefetching" that learning and prefetching are enabled.)*";
1215
Justin Donnelly4e448cb2017-07-07 21:32:131216const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
1217 "Enable speculative start of a service worker when a search is predicted.";
Justin Donnelly4e448cb2017-07-07 21:32:131218const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
1219 "If enabled, when the user enters text in the omnibox that looks like a "
1220 "a query, any service worker associated with the search engine the query "
1221 "will be sent to is started early.";
1222
Brett Wilsonecb80982017-07-12 20:34:511223const char kSpellingFeedbackFieldTrialName[] = "Spelling Feedback Field Trial";
1224const char kSpellingFeedbackFieldTrialDescription[] =
1225 "Enable the field trial for sending user feedback to spelling service.";
horo201d49492017-05-19 05:31:401226
Brett Wilsonecb80982017-07-12 20:34:511227const char kSuggestionsWithSubStringMatchName[] =
1228 "Substring matching for Autofill suggestions";
1229const char kSuggestionsWithSubStringMatchDescription[] =
1230 "Match Autofill suggestions based on substrings (token prefixes) rather "
1231 "than just prefixes.";
vabr0215a8e2017-03-28 12:47:341232
Brett Wilsonecb80982017-07-12 20:34:511233const char kSupervisedUserManagedBookmarksFolderName[] =
1234 "Managed bookmarks for supervised users";
1235const char kSupervisedUserManagedBookmarksFolderDescription[] =
1236 "Enable the managed bookmarks folder for supervised users.";
vabr0215a8e2017-03-28 12:47:341237
Brett Wilsonecb80982017-07-12 20:34:511238const char kSyncAppListName[] = "App Launcher sync";
1239const char kSyncAppListDescription[] =
1240 "Enable App Launcher sync. This also enables Folders where available (non "
1241 "OSX).";
vabr0215a8e2017-03-28 12:47:341242
Brett Wilsonecb80982017-07-12 20:34:511243const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1244const char kSyncSandboxDescription[] =
1245 "Connects to the testing server for Chrome Sync.";
vabr0215a8e2017-03-28 12:47:341246
Brett Wilsonecb80982017-07-12 20:34:511247const char kTabAudioMutingName[] = "Tab audio muting UI control";
1248const char kTabAudioMutingDescription[] =
1249 "When enabled, the audio indicators in the tab strip double as tab audio "
1250 "mute controls. This also adds commands in the tab context menu for "
1251 "quickly muting multiple selected tabs.";
vabr0215a8e2017-03-28 12:47:341252
Brett Wilsonecb80982017-07-12 20:34:511253const char kTcpFastOpenName[] = "TCP Fast Open";
1254const char kTcpFastOpenDescription[] =
1255 "Enable the option to send extra authentication information in the initial "
1256 "SYN packet for a previously connected client, allowing faster data send "
1257 "start.";
vabr0215a8e2017-03-28 12:47:341258
Brett Wilsonecb80982017-07-12 20:34:511259const char kTopChromeMd[] = "UI Layout for the browser's top chrome";
1260const char kTopChromeMdDescription[] =
1261 R"*(Toggles between normal and touch (formerly "hybrid") layouts.)*";
1262const char kTopChromeMdMaterial[] = "Normal";
1263const char kTopChromeMdMaterialHybrid[] = "Touch";
vabr0215a8e2017-03-28 12:47:341264
Brett Wilsonecb80982017-07-12 20:34:511265const char kThreadedScrollingName[] = "Threaded scrolling";
1266const char kThreadedScrollingDescription[] =
1267 "Threaded handling of scroll-related input events. Disabling this will "
1268 "force all such scroll events to be handled on the main thread. Note that "
1269 "this can dramatically hurt scrolling performance of most websites and is "
1270 "intended for testing purposes only.";
1271
Steven Valdez4584b2482017-07-14 01:11:571272const char kTLS13VariantName[] = "TLS 1.3";
1273const char kTLS13VariantDescription[] = "Sets the TLS 1.3 variant used.";
1274const char kTLS13VariantDisabled[] = "Disabled";
1275const char kTLS13VariantDraft[] = "Enabled (Draft)";
1276const char kTLS13VariantExperiment[] = "Enabled (Experiment)";
Steven Valdez2d7b4e82017-07-17 22:22:091277const char kTLS13VariantRecordTypeExperiment[] =
1278 "Enabled (Record Type Experiment)";
Steven Valdez2ee1c4a22017-07-19 20:39:311279const char kTLS13VariantNoSessionIDExperiment[] =
1280 "Enabled (No Session ID Experiment)";
Steven Valdez4584b2482017-07-14 01:11:571281
Brett Wilsonecb80982017-07-12 20:34:511282const char kTopDocumentIsolationName[] = "Top document isolation";
1283const char kTopDocumentIsolationDescription[] =
1284 "Highly experimental performance mode where cross-site iframes are kept in "
1285 "a separate process from the top document. In this mode, iframes from "
1286 "different third-party sites will be allowed to share a process.";
1287
1288const char kTouchAdjustmentName[] = "Touch adjustment";
1289const char kTouchAdjustmentDescription[] =
1290 "Refine the position of a touch gesture in order to compensate for touches "
1291 "having poor resolution compared to a mouse.";
1292
1293const char kTouchDragDropName[] = "Touch initiated drag and drop";
1294const char kTouchDragDropDescription[] =
1295 "Touch drag and drop can be initiated through long press on a draggable "
1296 "element.";
1297
1298const char kTouchEventsName[] = "Touch Events API";
1299const char kTouchEventsDescription[] =
1300 "Force Touch Events API feature detection to always be enabled or "
1301 "disabled, or to be enabled when a touchscreen is detected on startup "
1302 "(Automatic, the default).";
1303
1304const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
1305const char kTouchSelectionStrategyDescription[] =
1306 "Controls how text selection granularity changes when touch text selection "
1307 "handles are dragged. Non-default behavior is experimental.";
1308const char kTouchSelectionStrategyCharacter[] = "Character";
1309const char kTouchSelectionStrategyDirection[] = "Direction";
1310
1311const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
1312const char kTraceUploadUrlDescription[] =
1313 "This is to be used in conjunction with the enable-navigation-tracing "
1314 "flag. Please select the label that best describes the recorded traces. "
1315 "This will choose the destination the traces are uploaded to. If you are "
1316 "not sure, select other. If left empty, no traces will be uploaded.";
1317const char kTraceUploadUrlChoiceOther[] = "Other";
1318const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1319const char kTraceUploadUrlChoiceQa[] = "QA";
1320const char kTraceUploadUrlChoiceTesting[] = "Testing";
1321
1322const char kTranslate2016q2UiName[] = "Translate 2016Q2 UI";
1323const char kTranslate2016q2UiDescription[] =
1324 "Improved triggering logic and look for Translate Bubble UI";
1325
1326const char kTranslateLanguageByUlpName[] = "Translate Language by ULP";
1327const char kTranslateLanguageByUlpDescription[] =
1328 "Improved translate target language and triggering logic by considering "
1329 "information from User Language Profile (ULP).";
1330
1331const char kTrySupportedChannelLayoutsName[] =
1332 "Causes audio output streams to check if channel layouts other than the "
1333 "default hardware layout are available.";
1334const char kTrySupportedChannelLayoutsDescription[] =
1335 "Causes audio output streams to check if channel layouts other than the "
1336 "default hardware layout are available. Turning this on will allow the OS "
1337 "to do stereo to surround expansion if supported. May expose third party "
1338 "driver bugs, use with caution.";
1339
1340const char kUiPartialSwapName[] = "Partial swap";
1341const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
1342
Chris Pickel3a227ae62017-08-24 10:47:261343const char kUseDdljsonApiName[] = "Use new ddljson API for Doodles";
1344const char kUseDdljsonApiDescription[] =
1345 "Enables the new ddljson API to fetch Doodles for the NTP.";
1346
Brett Wilsonecb80982017-07-12 20:34:511347const char kUserConsentForExtensionScriptsName[] =
1348 "User consent for extension scripts";
1349const char kUserConsentForExtensionScriptsDescription[] =
1350 "Require user consent for an extension running a script on the page, if "
1351 "the extension requested permission to run on all urls.";
1352
1353const char kUseSuggestionsEvenIfFewFeatureName[] =
1354 "Disable minimum for server-side tile suggestions on NTP.";
1355const char kUseSuggestionsEvenIfFewFeatureDescription[] =
1356 "Request server-side suggestions even if there are only very few of them "
1357 "and use them for tiles on the New Tab Page.";
1358
1359const char kV8CacheOptionsName[] = "V8 caching mode.";
1360const char kV8CacheOptionsDescription[] =
1361 "Caching mode for the V8 JavaScript engine.";
1362const char kV8CacheOptionsParse[] = "Cache V8 parser data.";
1363const char kV8CacheOptionsCode[] = "Cache V8 compiler data.";
1364
1365const char kV8CacheStrategiesForCacheStorageName[] =
1366 "V8 caching strategy for CacheStorage.";
1367const char kV8CacheStrategiesForCacheStorageDescription[] =
1368 "Caching strategy of scripts in CacheStorage for the V8 JavaScript engine.";
1369const char kV8CacheStrategiesForCacheStorageNormal[] = "Normal";
1370const char kV8CacheStrategiesForCacheStorageAggressive[] = "Aggressive";
1371
1372const char kVibrateRequiresUserGestureName[] =
1373 "Requiring user gesture for the Vibration API";
1374const char kVibrateRequiresUserGestureDescription[] =
1375 "Block the Vibration API if no user gesture has been received on the frame "
1376 "or any embedded frame.";
1377
1378const char kVideoFullscreenOrientationLockName[] =
1379 "Lock screen orientation when playing a video fullscreen.";
1380const char kVideoFullscreenOrientationLockDescription[] =
1381 "Lock the screen orientation of the device to match video orientation when "
1382 "a video goes fullscreen. Only on phones.";
1383
1384const char kVideoRotateToFullscreenName[] =
1385 "Rotate-to-fullscreen gesture for videos.";
1386const char kVideoRotateToFullscreenDescription[] =
1387 "Enter/exit fullscreen when device is rotated to/from the orientation of "
1388 "the video. Only on phones.";
1389
1390const char kWalletServiceUseSandboxName[] =
1391 "Use Google Payments sandbox servers";
1392const char kWalletServiceUseSandboxDescription[] =
1393 "For developers: use the sandbox service for Google Payments API calls.";
1394
1395const char kWebgl2Name[] = "WebGL 2.0";
1396const char kWebgl2Description[] = "Allow web applications to access WebGL 2.0.";
1397
1398const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
1399const char kWebglDraftExtensionsDescription[] =
1400 "Enabling this option allows web applications to access the WebGL "
1401 "Extensions that are still in draft status.";
1402
1403const char kWebMidiName[] = "Web MIDI API";
1404const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
1405
1406const char kWebPaymentsName[] = "Web Payments";
1407const char kWebPaymentsDescription[] =
1408 "Enable Web Payments API integration, a JavaScript API for merchants.";
1409
Mathieu Perreault51339b82017-07-20 17:06:051410const char kWebPaymentsModifiersName[] = "Enable web payment modifiers";
1411const char kWebPaymentsModifiersDescription[] =
1412 "If the website provides modifiers in the payment request, show the custom "
1413 "total for each payment instrument, update the shopping cart when "
1414 "instruments are switched, and send modified payment method specific data "
1415 "to the payment app.";
1416
Brett Wilsonecb80982017-07-12 20:34:511417const char kWebrtcEchoCanceller3Name[] = "WebRTC Echo Canceller 3.";
1418const char kWebrtcEchoCanceller3Description[] =
1419 "Experimental WebRTC echo canceller (AEC3).";
1420
1421const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
1422const char kWebrtcHwDecodingDescription[] =
1423 "Support in WebRTC for decoding video streams using platform hardware.";
1424
1425const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
1426const char kWebrtcHwEncodingDescription[] =
1427 "Support in WebRTC for encoding video streams using platform hardware.";
1428
1429const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
1430const char kWebrtcHwH264EncodingDescription[] =
1431 "Support in WebRTC for encoding h264 video streams using platform "
1432 "hardware.";
1433
1434const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
1435const char kWebrtcHwVP8EncodingDescription[] =
1436 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
1437
1438const char kWebrtcSrtpAesGcmName[] =
1439 "Negotiation with GCM cipher suites for SRTP in WebRTC";
1440const char kWebrtcSrtpAesGcmDescription[] =
1441 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
1442
Joachim Bauch4a41d7512017-08-23 14:24:231443const char kWebrtcSrtpEncryptedHeadersName[] =
1444 "Negotiation with encrypted header extensions for SRTP in WebRTC";
1445const char kWebrtcSrtpEncryptedHeadersDescription[] =
1446 "When enabled, WebRTC will try to negotiate encrypted header extensions "
1447 "for SRTP.";
1448
Brett Wilsonecb80982017-07-12 20:34:511449const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
1450const char kWebrtcStunOriginDescription[] =
1451 "When enabled, Stun messages generated by WebRTC will contain the Origin "
1452 "header.";
1453
1454const char kWebvrName[] = "WebVR";
1455const char kWebvrDescription[] =
1456 "Enabling this option allows web applications to access experimental "
1457 "Virtual Reality APIs.";
1458
1459const char kWifiCredentialSyncName[] = "WiFi credential sync";
1460const char kWifiCredentialSyncDescription[] =
1461 "Enables synchronizing WiFi network settings across devices. When enabled, "
1462 "the WiFi credential datatype is registered with Chrome Sync, and WiFi "
1463 "credentials are synchronized subject to user preferences. (See also, "
1464 "chrome://settings/syncSetup.)";
1465
Tom Anderson5c3130ad2017-08-21 19:49:171466const char kWindowNavNativeFlagName[] =
1467 "Enable native window navigation buttons.";
1468const char kWindowNavNativeFlagDescription[] =
1469 "Whether the window frame buttons should be drawn using the system theme. "
1470 "Has no effect unless using the GTK3 theme.";
1471
Brett Wilsonecb80982017-07-12 20:34:511472const char kZeroCopyName[] = "Zero-copy rasterizer";
1473const char kZeroCopyDescription[] =
1474 "Raster threads write directly to GPU memory associated with tiles.";
vabr0215a8e2017-03-28 12:47:341475
Brett Wilsonff596952017-07-14 01:06:551476// Android ---------------------------------------------------------------------
1477
1478#if defined(OS_ANDROID)
1479
1480const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
1481const char kAiaFetchingDescription[] =
1482 "Enable intermediate certificate fetching when a server does not provide "
1483 "sufficient certificates to build a chain to a trusted root.";
1484
1485const char kAccessibilityTabSwitcherName[] = "Accessibility Tab Switcher";
1486const char kAccessibilityTabSwitcherDescription[] =
1487 "Enable the accessibility tab switcher for Android.";
1488
1489const char kAndroidAutofillAccessibilityName[] = "Autofill Accessibility";
1490const char kAndroidAutofillAccessibilityDescription[] =
1491 "Enable accessibility for autofill popup.";
1492
1493const char kAndroidPaymentAppsName[] = "Android payment apps";
1494const char kAndroidPaymentAppsDescription[] =
1495 "Enable third party Android apps to integrate as payment apps";
1496
Iulia Harasim0b5a4312017-07-21 16:20:501497const char kAndroidSigninPromosName[] = "Signin promos for Android.";
1498const char kAndroidSigninPromosDescription[] =
1499 "New signin promos for Android which will be displayed in content "
1500 "suggestions, Settings, Bookmarks and Recent Tabs.";
1501
Tatiana Gornak38ab3562017-07-28 11:04:181502const char kAndroidViewPasswordsName[] = "Copy and view passwords for Android";
1503const char kAndroidViewPasswordsDescription[] =
1504 "Enables copying and viewing passwords in settings.";
1505
Brett Wilsonff596952017-07-14 01:06:551506const char kAutofillAccessoryViewName[] =
1507 "Autofill suggestions as keyboard accessory view";
1508const char kAutofillAccessoryViewDescription[] =
1509 "Shows Autofill suggestions on top of the keyboard rather than in a "
1510 "dropdown.";
1511
1512const char kBackgroundLoaderForDownloadsName[] =
1513 "Enables background downloading of pages.";
1514const char kBackgroundLoaderForDownloadsDescription[] =
1515 "Enables downloading pages in the background in case page is not yet "
1516 "loaded in current tab.";
1517
Theresa Wellington37014d92017-08-23 02:09:201518const char kChromeHomeDoodleName[] = "Chrome Home Doodle.";
1519const char kChromeHomeDoodleDescription[] =
1520 "Enables showing the Doodle on the NTP for Chrome Home.";
1521
Brett Wilsonff596952017-07-14 01:06:551522const char kChromeHomeExpandButtonName[] = "Chrome Home Expand Button";
1523const char kChromeHomeExpandButtonDescription[] =
1524 "Enables the expand button for Chrome Home.";
1525
Michael van Ouwerkerk66e45322017-08-04 17:25:241526const char kChromeHomeModernLayoutName[] = "Modern layout for Chrome Home.";
1527const char kChromeHomeModernLayoutDescription[] =
1528 "Enables the modern layout for Chrome Home.";
1529
Brett Wilsonff596952017-07-14 01:06:551530const char kChromeHomeSwipeLogicName[] = "Chrome Home Swipe Logic";
1531const char kChromeHomeSwipeLogicDescription[] =
1532 "Various swipe logic options for Chrome Home for sheet expansion.";
1533const char kChromeHomeSwipeLogicRestrictArea[] = "Restrict swipable area";
1534const char kChromeHomeSwipeLogicButtonOnly[] = "Swipe on expand button";
1535
1536const char kChromeHomeName[] = "Chrome Home";
1537const char kChromeHomeDescription[] =
1538 "Enables Chrome Home on Android. You must restart the browser"
1539 " twice for changes to take effect.";
1540
1541const char kContentSuggestionsCategoryOrderName[] =
1542 "Default content suggestions category order (e.g. on NTP)";
1543const char kContentSuggestionsCategoryOrderDescription[] =
1544 "Set default order of content suggestion categories (e.g. on the NTP).";
1545
1546const char kContentSuggestionsCategoryRankerName[] =
1547 "Content suggestions category ranker (e.g. on NTP)";
1548const char kContentSuggestionsCategoryRankerDescription[] =
1549 "Set category ranker to order categories of content suggestions (e.g. on "
1550 "the NTP).";
1551
1552const char kContextualSearchContextualCardsBarIntegration[] =
1553 "Contextual Search - Contextual Cards Integration";
1554const char kContextualSearchContextualCardsBarIntegrationDescription[] =
1555 "Whether or not integration of Contextual Cards data in the Contextual "
1556 "Search Bar is enabled.";
1557
1558const char kContextualSearchSingleActionsName[] =
1559 "Contextual Search - Single Actions";
1560const char kContextualSearchSingleActionsDescription[] =
1561 "Whether or not single actions using Contextual Cards data in the "
1562 "Contextual Search Bar is enabled.";
1563
1564const char kContextualSearchUrlActionsName[] =
1565 "Contextual Search - URL Actions";
1566const char kContextualSearchUrlActionsDescription[] =
1567 "Whether or not URL actions using Contextual Cards data in the Contextual "
1568 "Search Bar is enabled.";
1569
1570const char kContextualSearchName[] = "Contextual Search";
1571const char kContextualSearchDescription[] =
1572 "Whether or not Contextual Search is enabled.";
1573
Dmitry Skiba9c3efa72017-07-20 22:01:141574const char kDontPrefetchLibrariesName[] = "Don't Prefetch Libraries";
1575const char kDontPrefetchLibrariesDescription[] =
1576 "Don't prefetch libraries after loading.";
1577
Brett Wilsonff596952017-07-14 01:06:551578const char kEnableAndroidPayIntegrationV1Name[] = "Enable Android Pay v1";
1579const char kEnableAndroidPayIntegrationV1Description[] =
1580 "Enable integration with Android Pay using the first version of the API";
1581
1582const char kEnableAndroidPayIntegrationV2Name[] = "Enable Android Pay v2";
1583const char kEnableAndroidPayIntegrationV2Description[] =
1584 "Enable integration with Android Pay using the second version of the API";
1585
1586const char kEnableAndroidSpellcheckerDescription[] =
1587 "Enables use of the Android spellchecker.";
1588const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
1589
Brett Wilsonff596952017-07-14 01:06:551590const char kEnableContentSuggestionsNewFaviconServerName[] =
1591 "Get favicons for content suggestions from a new server.";
1592const char kEnableContentSuggestionsNewFaviconServerDescription[] =
1593 "If enabled, the content suggestions (on the NTP) will get favicons from a "
1594 "new favicon server.";
1595
1596const char kEnableContentSuggestionsLargeThumbnailName[] =
1597 "Large thumbnails layout for content suggestions cards.";
1598const char kEnableContentSuggestionsLargeThumbnailDescription[] =
1599 "If enabled, the content suggestions cards will use large thumbnails and "
1600 "some related adjustments.";
1601
1602const char kEnableContentSuggestionsVideoOverlayName[] =
1603 "Video icon overlay on thumbnails for content suggestions cards.";
1604const char kEnableContentSuggestionsVideoOverlayDescription[] =
1605 "If enabled, the content suggestions cards for suggestions with a video "
1606 "will show a video play icon overlay on the thumbnail.";
1607
1608const char kEnableContentSuggestionsSettingsName[] =
1609 "Show content suggestions settings.";
1610const char kEnableContentSuggestionsSettingsDescription[] =
1611 "If enabled, the content suggestions settings will be available from the "
1612 "main settings menu.";
1613
1614const char kEnableContentSuggestionsShowSummaryName[] =
1615 "Show content suggestions summaries.";
1616const char kEnableContentSuggestionsShowSummaryDescription[] =
1617 "If enabled, the content suggestions summaries will be shown.";
1618
1619const char kEnableCopylessPasteName[] = "App Indexing (Copyless Paste)";
1620const char kEnableCopylessPasteDescription[] =
1621 "Provide suggestions for text input, based on your recent context. For "
1622 "example, if you looked at a restaurant website and switched to the Maps "
1623 "app, the keyboard would offer the name of that restaurant as a suggestion "
1624 "to enter into the search bar. The data is indexed locally, and never sent "
1625 "to the server. It's disabled in incognito mode.";
1626
1627const char kEnableCustomContextMenuName[] = "Enable custom context menu";
1628const char kEnableCustomContextMenuDescription[] =
1629 "Enables a new context menu when a link, image, or video is pressed within "
1630 "Chrome.";
1631
1632const char kEnableCustomFeedbackUiName[] = "Enable Custom Feedback UI";
1633const char kEnableCustomFeedbackUiDescription[] =
1634 "Enables a custom feedback UI when submitting feedback through Google "
1635 "Feedback. Works with Google Play Services v10.2+";
1636
1637const char kEnableDataReductionProxyMainMenuName[] =
1638 "Enable Data Saver main menu footer";
1639const char kEnableDataReductionProxyMainMenuDescription[] =
1640 "Enables the Data Saver footer in the main menu";
1641
1642const char kEnableDataReductionProxySiteBreakdownName[] =
1643 "Data Saver Site Breakdown";
1644const char kEnableDataReductionProxySiteBreakdownDescription[] =
1645 "Enable the site breakdown on the Data Saver settings page.";
1646
1647const char kEnableOmniboxClipboardProviderName[] =
1648 "Omnibox clipboard URL suggestions";
1649const char kEnableOmniboxClipboardProviderDescription[] =
1650 "Provide a suggestion of the URL stored in the clipboard (if any) upon "
1651 "focus in the omnibox.";
1652
1653const char kEnableExpandedAutofillCreditCardPopupLayoutName[] =
1654 "Use expanded autofill credit card popup layout.";
1655const char kEnableExpandedAutofillCreditCardPopupLayoutDescription[] =
1656 "If enabled, displays autofill credit card popup using expanded layout.";
1657
1658const char kEnableFaviconsFromWebManifestName[] =
1659 "Load favicons from Web Manifests";
1660const char kEnableFaviconsFromWebManifestDescription[] =
1661 "Fetch Web Manifests on page load to read favicons from them.";
1662
1663const char kEnableNtpAssetDownloadSuggestionsName[] =
1664 "Show asset downloads on the New Tab page";
1665const char kEnableNtpAssetDownloadSuggestionsDescription[] =
1666 "If enabled, the list of content suggestions on the New Tab page will "
1667 "contain assets (e.g. books, pictures, audio) that the user downloaded for "
1668 "later use.";
1669
1670const char kEnableNtpBookmarkSuggestionsName[] =
1671 "Show recently visited bookmarks on the New Tab page";
1672const char kEnableNtpBookmarkSuggestionsDescription[] =
1673 "If enabled, the list of content suggestions on the New Tab page will "
1674 "contain recently visited bookmarks.";
1675
1676const char kEnableNtpForeignSessionsSuggestionsName[] =
1677 "Show recent foreign tabs on the New Tab page";
1678const char kEnableNtpForeignSessionsSuggestionsDescription[] =
1679 "If enabled, the list of content suggestions on the New Tab page will "
1680 "contain recent foreign tabs.";
1681
1682const char kEnableNtpMostLikelyFaviconsFromServerName[] =
1683 "Download favicons for NTP tiles from Google.";
1684const char kEnableNtpMostLikelyFaviconsFromServerDescription[] =
1685 "If enabled, missing favicons for NTP tiles get downloaded from Google. "
1686 "This only applies to tiles that originate from synced history.";
1687
Jan Krcal7fadbd32017-08-04 10:49:211688const char kNtpTilesLowerResolutionFaviconsName[] =
1689 "Show also lower resolution favicons in NTP tiles.";
1690const char kNtpTilesLowerResolutionFaviconsDescription[] =
1691 "If enabled, the size limit for a favicon to get displayed in an NTP tile "
1692 "decreases. Tiles where the largest available favicon is below this limit "
1693 "get displayed as colored tiles.";
1694
Brett Wilsonff596952017-07-14 01:06:551695const char kEnableNtpOfflinePageDownloadSuggestionsName[] =
1696 "Show offline page downloads on the New Tab page";
1697const char kEnableNtpOfflinePageDownloadSuggestionsDescription[] =
1698 "If enabled, the list of content suggestions on the New Tab page will "
1699 "contain pages that the user downloaded for later use.";
1700
1701const char kEnableNtpRemoteSuggestionsName[] =
1702 "Show server-side suggestions on the New Tab page";
1703const char kEnableNtpRemoteSuggestionsDescription[] =
1704 "If enabled, the list of content suggestions on the New Tab page will "
1705 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
1706 "allows to override the source used to retrieve these server-side "
1707 "suggestions.";
1708
1709const char kEnableNtpSnippetsVisibilityName[] =
1710 "Make New Tab Page Snippets more visible.";
1711const char kEnableNtpSnippetsVisibilityDescription[] =
1712 "If enabled, the NTP snippets will become more discoverable with a larger "
1713 "portion of the first card above the fold.";
1714
1715const char kEnableNtpSuggestionsNotificationsName[] =
1716 "Notify about new content suggestions available at the New Tab page";
1717const char kEnableNtpSuggestionsNotificationsDescription[] =
1718 "If enabled, notifications will inform about new content suggestions on "
1719 "the New Tab page.";
1720
1721const char kEnablePhysicalWebName[] = "Enable the Physical Web.";
1722const char kEnablePhysicalWebDescription[] =
1723 "Enable scanning for URLs from Physical Web objects.";
1724
1725const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
1726const char kEnableOfflinePreviewsDescription[] =
1727 "Enable showing offline page previews on slow networks.";
1728
1729const char kEnableOskOverscrollName[] = "Enable OSK Overscroll";
1730const char kEnableOskOverscrollDescription[] =
1731 "Enable OSK overscroll support. With this flag on, the OSK will only "
1732 "resize the visual viewport.";
1733
1734const char kEnableSpecialLocaleName[] =
1735 "Enable custom logic for special locales.";
1736const char kEnableSpecialLocaleDescription[] =
1737 "Enable custom logic for special locales. In this mode, Chrome might "
1738 "behave differently in some locales.";
1739
Brett Wilsonff596952017-07-14 01:06:551740const char kEnableWebNfcName[] = "WebNFC";
1741const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
1742
gogeraldf3cbb422017-07-26 14:37:121743const char kEnableWebPaymentsMethodSectionOrderV2Name[] =
1744 "Enable Web Payments method section order V2.";
1745const char kEnableWebPaymentsMethodSectionOrderV2Description[] =
1746 "Enable this option to display payment method section above address "
1747 "section instead of below it.";
1748
Brett Wilsonff596952017-07-14 01:06:551749const char kEnableWebPaymentsSingleAppUiSkipName[] =
1750 "Enable Web Payments single app UI skip";
1751const char kEnableWebPaymentsSingleAppUiSkipDescription[] =
1752 "Enable Web Payments to skip showing its UI if the developer specifies a "
1753 "single app.";
1754
1755const char kHerbPrototypeChoicesName[] = "Switch preferred flavor of Herb";
1756const char kHerbPrototypeChoicesDescription[] =
1757 "Switching this option changes which tab management prototype is being "
1758 "tested.";
1759const char kHerbPrototypeFlavorElderberry[] =
1760 "ELDERBERRY: All View Intents in CCT v2";
1761
1762const char kKeepPrefetchedContentSuggestionsName[] =
1763 "Keep prefetched content suggestions";
1764const char kKeepPrefetchedContentSuggestionsDescription[] =
1765 "If enabled, some of prefetched content suggestions are not replaced by "
1766 "the new fetched suggestions.";
1767
1768const char kLsdPermissionPromptName[] =
1769 "Location Settings Dialog Permission Prompt";
1770const char kLsdPermissionPromptDescription[] =
1771 "Whether to use the Google Play Services Location Settings Dialog "
1772 "permission dialog.";
1773
Brett Wilsonff596952017-07-14 01:06:551774const char kMediaScreenCaptureName[] = "Experimental ScreenCapture.";
1775const char kMediaScreenCaptureDescription[] =
1776 "Enable this option for experimental ScreenCapture feature on Android.";
1777
1778const char kModalPermissionPromptsName[] = "Modal Permission Prompts";
1779const char kModalPermissionPromptsDescription[] =
1780 "Whether to use permission dialogs in place of permission infobars.";
1781
1782const char kNewBackgroundLoaderName[] =
1783 "Use background loader instead of prerenderer to load pages.";
1784const char kNewBackgroundLoaderDescription[] =
1785 "Use background loader instead of prerenderer to asynchronously download "
1786 "pages.";
1787
1788const char kNewPhotoPickerName[] = "Enable new Photopicker";
1789const char kNewPhotoPickerDescription[] =
1790 "Activates the new picker for selecting photos.";
1791
1792const char kNoCreditCardAbort[] = "No Credit Card Abort";
1793const char kNoCreditCardAbortDescription[] =
1794 "Whether or not the No Credit Card Abort is enabled.";
1795
1796const char kNtpCondensedLayoutName[] = "Condensed NTP layout";
1797const char kNtpCondensedLayoutDescription[] =
1798 "Show a condensed layout on the New Tab Page.";
1799
1800const char kNtpCondensedTileLayoutName[] = "Condensed NTP tile layout";
1801const char kNtpCondensedTileLayoutDescription[] =
1802 "Show a condensed tile layout on the New Tab Page.";
1803
Nicolas Dossou-gbete56f37dc2017-08-10 16:14:041804const char kSiteExplorationUiName[] = "Site Exploration UI";
1805const char kSiteExplorationUiDescription[] =
1806 "Show site suggestions in the Exploration UI";
1807
Brett Wilsonff596952017-07-14 01:06:551808const char kNtpGoogleGInOmniboxName[] = "Google G in New Tab Page omnibox";
1809const char kNtpGoogleGInOmniboxDescription[] =
1810 "Show a Google G in the omnibox on the New Tab Page.";
1811
1812const char kNtpOfflinePagesName[] = "Enable NTP offline pages";
1813const char kNtpOfflinePagesDescription[] =
1814 "Enables badging of offline pages on the New Tab page. Only relevant if "
1815 "offline pages are enabled.";
1816
1817const char kNtpPopularSitesName[] = "Show popular sites on the New Tab page";
1818const char kNtpPopularSitesDescription[] =
1819 "Pre-populate the New Tab page with popular sites.";
1820
Brett Wilsonff596952017-07-14 01:06:551821const char kOfflineBookmarksName[] = "Enable offline bookmarks";
1822const char kOfflineBookmarksDescription[] =
1823 "Enable saving bookmarked pages for offline viewing.";
1824
1825const char kOfflinePagesAsyncDownloadName[] =
1826 R"*(Enables showing "DOWNLOAD WHEN ONLINE" button in error pages.)*";
1827const char kOfflinePagesAsyncDownloadDescription[] =
1828 R"*(Enables showing "DOWNLOAD WHEN ONLINE" button in error pages such )*"
1829 R"*(that the user can click on it to download the page later.)*";
1830
1831const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
1832const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
1833
1834const char kOfflinePagesCtV2Name[] = "Enable Offline Pages CT V2 features.";
1835const char kOfflinePagesCtV2Description[] =
1836 "V2 features include attributing pages to the app that initiated the "
1837 "custom tabs, and being able to query for pages by page attribution.";
1838
1839const char kOfflinePagesLoadSignalCollectingName[] =
1840 "Enables collecting load timing data for offline page snapshots.";
1841const char kOfflinePagesLoadSignalCollectingDescription[] =
1842 "Enables loading completeness data collection while writing an offline "
1843 "page. This data is collected in the snapshotted offline page to allow "
1844 "data analysis to improve deciding when to make the offline snapshot.";
1845
1846const char kOfflinePagesPrefetchingName[] =
1847 "Enables suggested offline pages to be prefetched.";
1848const char kOfflinePagesPrefetchingDescription[] =
1849 "Enables suggested offline pages to be prefetched, so useful content is "
1850 "available while offline.";
1851
Collin Baker17f92a52017-07-19 21:41:251852const char kOfflinePagesRenovationsName[] = "Enables offline page renovations.";
1853const char kOfflinePagesRenovationsDescription[] =
1854 "Enables offline page renovations which correct issues with dynamic "
1855 "content that occur when offlining pages that use JavaScript.";
1856
Brett Wilsonff596952017-07-14 01:06:551857const char kOfflinePagesSharingName[] = "Enables offline pages to be shared.";
1858const char kOfflinePagesSharingDescription[] =
1859 "Enables the saved offline pages to be shared via other applications.";
1860
1861const char kOfflinePagesSvelteConcurrentLoadingName[] =
1862 "Enables concurrent background loading on svelte.";
1863const char kOfflinePagesSvelteConcurrentLoadingDescription[] =
1864 "Enables concurrent background loading (or downloading) of pages on "
1865 "Android svelte (512MB RAM) devices. Otherwise, background loading will "
1866 "happen when the svelte device is idle.";
1867
1868const char kOffliningRecentPagesName[] =
1869 "Enable offlining of recently visited pages";
1870const char kOffliningRecentPagesDescription[] =
1871 "Enable storing recently visited pages locally for offline use. Requires "
1872 "Offline Pages to be enabled.";
1873
1874extern const char kPayWithGoogleV1Name[] = "Pay with Google v1";
1875extern const char kPayWithGoogleV1Description[] =
1876 "Enable Pay with Google integration into Web Payments with API version "
1877 "'1'.";
1878
Brett Wilsonff596952017-07-14 01:06:551879const char kProgressBarCompletionName[] =
1880 "Android phone page load progress bar completion time.";
1881const char kProgressBarCompletionDescription[] =
1882 "Configures Android phone page loading progress bar completion time.";
1883const char kProgressBarCompletionLoadEvent[] =
1884 R"*(Top loading frame's onload event ("everything" is done in the )*"
1885 R"*(page, historical behavior).)*";
1886const char kProgressBarCompletionResourcesBeforeDcl[] =
1887 "Main frame's domContentLoaded and all resources loads started before "
1888 "domContentLoaded (iframes ignored).";
1889const char kProgressBarCompletionDomContentLoaded[] =
1890 "Main frame's domContentLoaded (iframes ignored).";
1891const char kProgressBarCompletionResourcesBeforeDclAndSameOriginIframes[] =
1892 "domContentLoaded and all resources loads started before domContentLoaded "
1893 "(main frame and same origin iframes).";
1894
1895const char kPullToRefreshEffectName[] = "The pull-to-refresh effect";
1896const char kPullToRefreshEffectDescription[] =
1897 "Page reloads triggered by vertically overscrolling content.";
1898
Piotr Swigon7c296ef2017-08-29 04:32:001899const char kPwaImprovedSplashScreenName[] =
1900 "Improved Splash Screen for standalone PWAs";
1901const char kPwaImprovedSplashScreenDescription[] =
1902 "Enables the Improved Splash Screen UX for standalone PWAs based on new "
1903 "Web App Manifest attributes";
Piotr Swigon9f630b32017-07-26 09:42:491904const char kPwaPersistentNotificationName[] =
1905 "Persistent notification in standalone PWA";
1906const char kPwaPersistentNotificationDescription[] =
1907 "Enables a persistent Android notification for standalone PWAs";
1908
Brett Wilsonff596952017-07-14 01:06:551909const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
1910const char kReaderModeHeuristicsDescription[] =
1911 "Determines what pages the Reader Mode infobar is shown on.";
1912const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
1913const char kReaderModeHeuristicsAdaboost[] = "Non-mobile-friendly articles";
1914const char kReaderModeHeuristicsAllArticles[] = "All articles";
1915const char kReaderModeHeuristicsAlwaysOff[] = "Never";
1916const char kReaderModeHeuristicsAlwaysOn[] = "Always";
1917
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:181918const char kReaderModeInCCTName[] = "Reader Mode in CCT";
1919const char kReaderModeInCCTDescription[] =
1920 "Open Reader Mode in Chrome Custom Tabs.";
1921
Brett Wilsonff596952017-07-14 01:06:551922const char kServiceWorkerPaymentAppsName[] = "Service Worker payment apps";
1923const char kServiceWorkerPaymentAppsDescription[] =
1924 "Enable Service Worker applications to integrate as payment apps";
1925
1926const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
1927const char kSetMarketUrlForTestingDescription[] =
1928 "When enabled, sets the market URL for use in testing the update menu "
1929 "item.";
1930
1931const char kSpannableInlineAutocompleteName[] = "Spannable inline autocomplete";
1932const char kSpannableInlineAutocompleteDescription[] =
1933 "A new type of inline autocomplete for the omnibox that works with "
1934 "keyboards that compose text.";
1935
1936const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1937const char kTabsInCbdDescription[] =
1938 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
1939
1940const char kTranslateCompactUIName[] = "New Translate Infobar";
1941const char kTranslateCompactUIDescription[] =
1942 "Enable the new Translate compact infobar UI.";
1943
1944const char kUpdateMenuBadgeName[] = "Force show update menu badge";
1945const char kUpdateMenuBadgeDescription[] =
1946 "When enabled, an update badge will be shown on the app menu button.";
1947
1948const char kUpdateMenuItemCustomSummaryDescription[] =
1949 "When this flag and the force show update menu item flag are enabled, a "
1950 "custom summary string will be displayed below the update menu item.";
1951const char kUpdateMenuItemCustomSummaryName[] =
1952 "Update menu item custom summary";
1953
1954const char kUpdateMenuItemName[] = "Force show update menu item";
1955const char kUpdateMenuItemDescription[] =
1956 R"*(When enabled, an "Update Chrome" item will be shown in the app )*"
1957 R"*(menu.)*";
1958
1959const char kUseAndroidMidiApiName[] = "Use Android Midi API";
1960const char kUseAndroidMidiApiDescription[] =
1961 "Use Android Midi API for WebMIDI (effective only with Android M+ "
1962 "devices).";
1963
Marc Treib93af46a2017-08-23 13:30:001964const char kThirdPartyDoodlesName[] =
1965 "Enable Doodles for third-party search engines";
1966const char kThirdPartyDoodlesDescription[] =
1967 "Enables fetching and displaying Doodles on the NTP for third-party search "
1968 "engines.";
1969
Brett Wilsonff596952017-07-14 01:06:551970const char kXGEOVisibleNetworksName[] = "Enable XGEO Visible Networks";
1971const char kXGEOVisibleNetworksDescription[] =
1972 "If location permissions are granted, include visible networks in the XGEO "
1973 "Header for omnibox queries. This will only happen if location is not "
1974 "fresh or not available (for example, due to a cold start).";
1975
Brett Wilson7b44537e2017-08-18 01:38:281976// Non-Android -----------------------------------------------------------------
Brett Wilsonff596952017-07-14 01:06:551977
Brett Wilson7b44537e2017-08-18 01:38:281978#else // !defined(OS_ANDROID)
brettw5f9c1642017-05-14 17:12:481979
Brett Wilson7b44537e2017-08-18 01:38:281980const char kAccountConsistencyName[] =
1981 "Identity consistency between browser and cookie jar";
1982const char kAccountConsistencyDescription[] =
1983 "When enabled, the browser manages signing in and out of Google accounts.";
1984const char kAccountConsistencyChoiceMirror[] = "Mirror";
1985const char kAccountConsistencyChoiceDice[] = "Dice";
vabr0215a8e2017-03-28 12:47:341986
Chris Pickel3a227ae62017-08-24 10:47:261987const char kDoodlesOnLocalNtpName[] = "Enable doodles on the local NTP";
1988const char kDoodlesOnLocalNtpDescription[] =
1989 "Show doodles on the local New Tab page if Google is the default search "
1990 "engine.";
1991
mlamouriff56c092017-05-11 15:31:391992const char kEnableAudioFocusName[] = "Manage audio focus across tabs";
mlamouriff56c092017-05-11 15:31:391993const char kEnableAudioFocusDescription[] =
vabr0215a8e2017-03-28 12:47:341994 "Manage audio focus across tabs to improve the audio mixing.";
mlamouriff56c092017-05-11 15:31:391995const char kEnableAudioFocusDisabled[] = "Disabled";
mlamouriff56c092017-05-11 15:31:391996const char kEnableAudioFocusEnabled[] = "Enabled";
mlamouriff56c092017-05-11 15:31:391997const char kEnableAudioFocusEnabledDuckFlash[] =
vabr0215a8e2017-03-28 12:47:341998 "Enabled (Flash lowers volume when interrupted by other sound, "
1999 "experimental)";
2000
Brett Wilson7b44537e2017-08-18 01:38:282001const char kEnableNewAppMenuIconName[] = "Enable the New App Menu Icon";
2002const char kEnableNewAppMenuIconDescription[] =
2003 "Use the new app menu icon with update notification animations.";
vabr0215a8e2017-03-28 12:47:342004
2005const char kOmniboxEntitySuggestionsName[] = "Omnibox entity suggestions";
vabr0215a8e2017-03-28 12:47:342006const char kOmniboxEntitySuggestionsDescription[] =
krbcc621412017-06-01 19:40:282007 "Enable receiving entity suggestions - disambiguation descriptions - for "
2008 "Omnibox suggestions.";
2009
2010const char kOmniboxTailSuggestionsName[] = "Omnibox tail suggestions";
2011const char kOmniboxTailSuggestionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192012 "Enable receiving tail suggestions, a type of search suggestion based on "
2013 "the last few words in the query, for the Omnibox.";
vabr0215a8e2017-03-28 12:47:342014
Brett Wilson7b44537e2017-08-18 01:38:282015const char kOneGoogleBarOnLocalNtpName[] =
2016 "Enable the OneGoogleBar on the local NTP";
2017const char kOneGoogleBarOnLocalNtpDescription[] =
2018 "Show a OneGoogleBar on the local New Tab page if Google is the default "
2019 "search engine.";
2020
ojan38c678352017-04-11 20:27:552021const char kPauseBackgroundTabsName[] = "Pause background tabs";
2022const char kPauseBackgroundTabsDescription[] =
2023 "Pause timers in background tabs after 5 minutes on desktop.";
2024
Brett Wilson7b44537e2017-08-18 01:38:282025const char kUseGoogleLocalNtpName[] = "Enable using the Google local NTP";
2026const char kUseGoogleLocalNtpDescription[] =
2027 "Use the local New Tab page if Google is the default search engine.";
spqchan064a8112017-04-18 16:46:322028
Brett Wilson7b44537e2017-08-18 01:38:282029const char kVoiceSearchOnLocalNtpName[] =
2030 "Enable Voice Search on the local NTP";
2031const char kVoiceSearchOnLocalNtpDescription[] =
2032 "Show a microphone for voice search on the local New Tab page "
2033 "if Google is the default search engine.";
2034
2035#if defined(GOOGLE_CHROME_BUILD)
2036
2037const char kGoogleBrandedContextMenuName[] =
2038 "Google branding in the context menu";
2039const char kGoogleBrandedContextMenuDescription[] =
2040 "Shows a Google icon next to context menu items powered by Google "
2041 "services.";
2042
2043#endif // !defined(GOOGLE_CHROME_BUILD)
2044
2045#endif // !defined(OS_ANDROID)
2046
2047// Windows ---------------------------------------------------------------------
2048
2049#if defined(OS_WIN)
2050
2051const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
2052const char kCloudPrintXpsDescription[] =
2053 "XPS enables advanced options for classic printers connected to the Cloud "
2054 "Print with Chrome. Printers must be re-connected after changing this "
2055 "flag.";
2056
Dave Tapuskadd43469d2017-08-22 22:15:532057const char kDirectManipulationStylusName[] = "Direct Manipulation Stylus";
2058const char kDirectManipulationStylusDescription[] =
2059 "If enabled, Chrome will scroll web pages on stylus drag.";
2060
Brett Wilson7b44537e2017-08-18 01:38:282061const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
2062const char kDisablePostscriptPrintingDescription[] =
2063 "Disables PostScript generation when printing to PostScript capable "
2064 "printers, and uses EMF generation in its place.";
2065
2066const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
2067const char kEnableAppcontainerDescription[] =
2068 "Enables the use of an AppContainer on sandboxed processes to improve "
2069 "security.";
2070
2071const char kEnableD3DVsync[] = "D3D v-sync";
2072const char kEnableD3DVsyncDescription[] =
2073 "Produces v-sync signal by having D3D wait for vertical blanking interval "
2074 "to occur.";
2075
2076const char kEnableDesktopIosPromotionsName[] = "Desktop to iOS promotions.";
2077const char kEnableDesktopIosPromotionsDescription[] =
2078 "Enable Desktop to iOS promotions, and allow users to see them if they are "
2079 "eligible.";
2080
2081const char kGdiTextPrinting[] = "GDI Text Printing";
2082const char kGdiTextPrintingDescription[] =
2083 "Use GDI to print text as simply text";
2084
2085const char kMergeKeyCharEventsName[] =
2086 "Enable or disable merging merging the key event (WM_KEY*) with char event "
2087 "(WM_CHAR).";
2088const char kMergeKeyCharEventsDescription[] =
2089 "If disabled, Chrome will handle WM_KEY* and WM_CHAR separately.";
2090
2091const char kTraceExportEventsToEtwName[] =
2092 "Enable exporting of tracing events to ETW.";
2093const char kTraceExportEventsToEtwDesription[] =
2094 "If enabled, trace events will be exported to the Event Tracing for "
2095 "Windows (ETW) and can then be captured by tools such as UIForETW or "
2096 "Xperf.";
2097
2098const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2099const char kUseWinrtMidiApiDescription[] =
2100 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
2101 "later).";
2102
2103const char kWindows10CustomTitlebarName[] = "Custom-drawn Windows 10 Titlebar";
2104const char kWindows10CustomTitlebarDescription[] =
2105 "If enabled, Chrome will draw the titlebar and caption buttons instead of "
2106 "deferring to Windows.";
2107
Wez6656c572017-08-29 22:29:582108#if DCHECK_IS_ON() && defined(SYZYASAN)
2109extern const char kSyzyAsanDcheckIsFatalName[] = "DCHECKs are fatal";
2110extern const char kSyzyAsanDcheckIsFatalDescription[] =
2111 "By default Chrome will evaluate DCHECKs in SyzyASAN builds, but only log "
2112 "failed DCHECKs. If enabled, DCHECKs will crash the calling process.";
2113#endif // DCHECK_IS_ON() && defined(SYZYASAN)
2114
Brett Wilson7b44537e2017-08-18 01:38:282115#endif // defined(OS_WIN)
2116
2117// Mac -------------------------------------------------------------------------
2118
2119#if defined(OS_MACOSX)
2120
2121const char kAppInfoDialogName[] = "Toolkit-Views App Info Dialog.";
2122const char kAppInfoDialogDescription[] =
2123 "Makes the Toolkit-Views based App Info dialog accessible from "
2124 "chrome://apps or chrome://extensions in place of the native extension "
2125 "permissions dialog, or the details link (which is a link to the Web "
2126 "Store).";
2127
2128const char kAppWindowCyclingName[] = "Custom Window Cycling for Chrome Apps.";
2129const char kAppWindowCyclingDescription[] =
2130 "Changes the behavior of Cmd+` when a Chrome App becomes active. When "
2131 "enabled, Chrome Apps will not be cycled when Cmd+` is pressed from a "
2132 "browser window, and browser windows will not be cycled when a Chrome App "
2133 "is active.";
2134
2135extern const char kCreditCardAutofillTouchBarName[] =
2136 "Credit Card Autofill Touch Bar";
2137extern const char kCreditCardAutofillTouchBarDescription[] =
2138 "Shows Credit Card Autofill Suggestions on the Touch Bar.";
2139
2140const char kFullscreenToolbarRevealName[] =
2141 "Enables the toolbar in fullscreen to reveal itself.";
2142const char kFullscreenToolbarRevealDescription[] =
2143 "Reveal the toolbar in fullscreen for a short period when the tab strip "
2144 "has changed.";
2145
2146const char kContentFullscreenName[] = "Improved Content Fullscreen";
2147const char kContentFullscreenDescription[] =
2148 "Fullscreen content window detaches from main browser window and goes to "
2149 "a new space without moving or changing the original browser window.";
2150
2151extern const char kDialogTouchBarName[] = "Dialog Touch Bar";
2152extern const char kDialogTouchBarDescription[] =
2153 "Shows Dialog buttons on the Touch Bar.";
2154
2155const char kHostedAppsInWindowsName[] =
2156 "Allow hosted apps to be opened in windows";
2157const char kHostedAppsInWindowsDescription[] =
2158 "Allows hosted apps to be opened in windows instead of being limited to "
2159 "tabs.";
2160
2161extern const char kMacRTLName[] = "Enable RTL";
2162extern const char kMacRTLDescription[] =
2163 "Mirrors the UI for RTL language users";
2164
2165extern const char kMacTouchBarName[] = "Hardware Touch Bar";
2166extern const char kMacTouchBarDescription[] =
2167 "Control the use of the Touch Bar.";
2168
2169const char kMacV2SandboxName[] = "Mac V2 Sandbox";
2170const char kMacV2SandboxDescription[] =
2171 "Eliminates the unsandboxed warmup phase and sandboxes processes for their "
2172 "entire life cycle.";
2173
2174const char kMacViewsNativeAppWindowsName[] = "Toolkit-Views App Windows.";
2175const char kMacViewsNativeAppWindowsDescription[] =
2176 "Controls whether to use Toolkit-Views based Chrome App windows.";
2177
2178const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
2179const char kMacViewsTaskManagerDescription[] =
2180 "Controls whether to use the Toolkit-Views based Task Manager.";
2181
2182const char kTabDetachingInFullscreenName[] =
2183 "Allow tab detaching in fullscreen";
2184const char kTabDetachingInFullscreenDescription[] =
2185 "Allow tabs to detach from the tabstrip when in fullscreen mode on Mac.";
2186
2187const char kTabStripKeyboardFocusName[] = "Tab Strip Keyboard Focus";
2188const char kTabStripKeyboardFocusDescription[] =
2189 "Enable keyboard focus for the tabs in the tab strip.";
2190
2191const char kTranslateNewUxName[] = "New Translate UX";
2192const char kTranslateNewUxDescription[] =
2193 "Enable the new Translate bubble UX is offered instead of the infobar.";
2194
2195// Non-Mac ---------------------------------------------------------------------
2196
2197#else // !defined(OS_MACOSX)
2198
2199const char kPermissionPromptPersistenceToggleName[] =
2200 "Persistence Toggle in Permission Prompts";
2201const char kPermissionPromptPersistenceToggleDescription[] =
2202 "Whether to display a persistence toggle in permission prompts.";
2203
2204#endif
2205
2206// Chrome OS -------------------------------------------------------------------
vabr0215a8e2017-03-28 12:47:342207
2208#if defined(OS_CHROMEOS)
2209
Brett Wilson7b44537e2017-08-18 01:38:282210const char kAcceleratedMjpegDecodeName[] =
2211 "Hardware-accelerated mjpeg decode for captured frame";
2212const char kAcceleratedMjpegDecodeDescription[] =
2213 "Enable hardware-accelerated mjpeg decode for captured frame where "
2214 "available.";
vabr0215a8e2017-03-28 12:47:342215
Brett Wilson7b44537e2017-08-18 01:38:282216const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click";
2217const char kAllowTouchpadThreeFingerClickDescription[] =
2218 "Enables touchpad three-finger-click as middle button.";
vabr0215a8e2017-03-28 12:47:342219
Brett Wilson7b44537e2017-08-18 01:38:282220const char kArcBootCompleted[] = "Load Android apps automatically";
2221const char kArcBootCompletedDescription[] =
2222 "Allow Android apps to start automatically after signing in.";
vabr0215a8e2017-03-28 12:47:342223
Lev Rumyantsev7a8544312017-08-18 19:26:512224const char kArcNativeBridgeExperimentName[] =
2225 "Enable native bridge experiment for ARC";
2226const char kArcNativeBridgeExperimentDescription[] =
2227 "Enables experimental native bridge feature.";
2228
Brett Wilson7b44537e2017-08-18 01:38:282229const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
2230const char kAshEnableUnifiedDesktopDescription[] =
2231 "Enable unified desktop mode which allows a window to span multiple "
2232 "displays.";
vabr0215a8e2017-03-28 12:47:342233
Brett Wilson7b44537e2017-08-18 01:38:282234const char kBootAnimationName[] = "Boot animation";
2235const char kBootAnimationDescription[] =
2236 "Wallpaper boot animation (except for OOBE case).";
vabr0215a8e2017-03-28 12:47:342237
Brett Wilson7b44537e2017-08-18 01:38:282238const char kCaptivePortalBypassProxyName[] =
2239 "Bypass proxy for Captive Portal Authorization";
2240const char kCaptivePortalBypassProxyDescription[] =
2241 "If proxy is configured, it usually prevents from authorization on "
2242 "different captive portals. This enables opening captive portal "
2243 "authorization dialog in a separate window, which ignores proxy settings.";
vabr0215a8e2017-03-28 12:47:342244
Brett Wilson7b44537e2017-08-18 01:38:282245const char kCrOSComponentName[] = "Chrome OS Component";
2246const char kCrOSComponentDescription[] =
2247 "Enable the use of componentized escpr CUPS filter.";
vabr0215a8e2017-03-28 12:47:342248
Brett Wilson7b44537e2017-08-18 01:38:282249const char kCrosRegionsModeName[] = "Cros-regions load mode";
2250const char kCrosRegionsModeDescription[] =
2251 "This flag controls cros-regions load mode";
2252const char kCrosRegionsModeDefault[] = "Default";
2253const char kCrosRegionsModeOverride[] = "Override VPD values.";
2254const char kCrosRegionsModeHide[] = "Hide VPD values.";
vabr0215a8e2017-03-28 12:47:342255
Jacob Dufault2becbc482017-08-25 00:36:352256const char kDisableLockScreenAppsName[] = "Disable lock screen note taking";
2257const char kDisableLockScreenAppsDescription[] =
2258 "Disable new-note action handler apps on the lock screen. The user will "
2259 "not be able to launch the preferred note-taking action from the lock "
2260 "screen, provided that the app supports lock screen note taking.";
2261
Brett Wilson7b44537e2017-08-18 01:38:282262const char kDisableNewVirtualKeyboardBehaviorName[] =
2263 "New window behavior for the accessibility keyboard";
2264const char kDisableNewVirtualKeyboardBehaviorDescription[] =
2265 "Disable new window behavior for the accessibility keyboard in non-sticky "
2266 "mode (do not change work area in non-sticky mode).";
vabr0215a8e2017-03-28 12:47:342267
Brett Wilson7b44537e2017-08-18 01:38:282268const char kEnablePerUserTimezoneName[] = "Per-user time zone preferences.";
2269const char kEnablePerUserTimezoneDescription[] =
2270 "Chrome OS system timezone preference is stored and handled for each user "
2271 "individually.";
vabr0215a8e2017-03-28 12:47:342272
Brett Wilson7b44537e2017-08-18 01:38:282273const char kDisableSystemTimezoneAutomaticDetectionName[] =
2274 "SystemTimezoneAutomaticDetection policy support";
2275const char kDisableSystemTimezoneAutomaticDetectionDescription[] =
2276 "Disable system timezone automatic detection device policy.";
vabr0215a8e2017-03-28 12:47:342277
newcomer403ac142017-07-05 18:26:302278const char kEnableFullscreenAppListName[] = "Enable The Peeking Launcher";
newcomer403ac142017-07-05 18:26:302279const char kEnableFullscreenAppListDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192280 "The peeking launcher UI supports touch and provides more space for "
2281 "upcoming features.";
newcomer403ac142017-07-05 18:26:302282
Alex Newcomer43cb7f12017-07-28 17:37:392283extern const char kEnableBackgroundBlurName[] = "Enable background blur.";
2284extern const char kEnableBackgroundBlurDescription[] =
2285 "Enables background blur for the Peeking Launcher, Lock Screen, and Tab "
2286 "Switcher.";
2287
Brett Wilson7b44537e2017-08-18 01:38:282288const char kEnableAndroidWallpapersAppName[] = "Android Wallpapers App";
2289const char kEnableAndroidWallpapersAppDescription[] =
2290 "Enables the Android Wallpapers App as the default Wallpaper App on Chrome "
2291 "OS.";
vabr0215a8e2017-03-28 12:47:342292
Brett Wilson7b44537e2017-08-18 01:38:282293const char kEnableChromevoxArcSupportName[] = "ChromeVox ARC support";
2294const char kEnableChromevoxArcSupportDescription[] =
2295 "Enable ChromeVox screen reader features in ARC";
vabr0215a8e2017-03-28 12:47:342296
Brett Wilson7b44537e2017-08-18 01:38:282297const char kEnableEhvInputName[] =
2298 "Emoji, handwriting and voice input on opt-in IME menu";
2299const char kEnableEhvInputDescription[] =
2300 "Enable access to emoji, handwriting and voice input form opt-in IME menu.";
vabr0215a8e2017-03-28 12:47:342301
Brett Wilson7b44537e2017-08-18 01:38:282302const char kEnableEncryptionMigrationName[] =
2303 "Enable encryption migration of user data";
2304const char kEnableEncryptionMigrationDescription[] =
2305 "If enabled and the device supports ARC, the user will be asked to update "
2306 "the encryption of user data when the user signs in.";
vabr0215a8e2017-03-28 12:47:342307
Klemen Kozjekf2b30e452017-09-01 05:04:512308const char kEnableExternalDriveRename[] = "Enable external drive rename";
2309const char kEnableExternalDriveRenameDescription[] =
2310 "If enabled, external removable drives will get 'Rename' action in the "
2311 "context menu";
2312
Brett Wilson7b44537e2017-08-18 01:38:282313const char kEnableImeMenuName[] = "Enable opt-in IME menu";
2314const char kEnableImeMenuDescription[] =
2315 "Enable access to the new IME menu in the Language Settings page.";
vabr0215a8e2017-03-28 12:47:342316
Brett Wilson7b44537e2017-08-18 01:38:282317const char kEnableZipArchiverOnFileManagerName[] = "ZIP archiver for Drive";
2318const char kEnableZipArchiverOnFileManagerDescription[] =
2319 "Enable the ability to archive and unpack files on Drive in the Files app";
2320
2321const char kEolNotificationName[] = "Disable Device End of Life notification.";
2322const char kEolNotificationDescription[] =
2323 "Disable Notifcation when Device is End of Life.";
2324
2325const char kExperimentalAccessibilityFeaturesName[] =
2326 "Experimental accessibility features";
2327const char kExperimentalAccessibilityFeaturesDescription[] =
2328 "Enable additional accessibility features in the Settings page.";
2329
2330const char kExperimentalInputViewFeaturesName[] =
2331 "Experimental input view features";
2332const char kExperimentalInputViewFeaturesDescription[] =
2333 "Enable experimental features for IME input views.";
2334
2335const char kFileManagerTouchModeName[] = "Files App. touch mode";
2336const char kFileManagerTouchModeDescription[] =
2337 "Touchscreen-specific interactions of the Files app.";
2338
2339const char kFirstRunUiTransitionsName[] =
2340 "Animated transitions in the first-run tutorial";
2341const char kFirstRunUiTransitionsDescription[] =
2342 "Transitions during first-run tutorial are animated.";
2343
2344const char kFloatingVirtualKeyboardName[] = "Floating virtual keyboard.";
2345const char kFloatingVirtualKeyboardDescription[] =
2346 "Enable/Disable floating virtual keyboard.";
2347
2348const char kForceEnableStylusToolsName[] = "Force enable stylus features";
2349const char kForceEnableStylusToolsDescription[] =
2350 "Forces display of the stylus tools menu in the shelf and the stylus "
2351 "section in settings, even if there is no attached stylus device.";
2352
2353const char kGestureEditingName[] = "Gesture editing for the virtual keyboard.";
2354const char kGestureEditingDescription[] =
2355 "Enable/Disable gesture editing option in the settings page for the "
2356 "virtual keyboard.";
2357
2358const char kGestureTypingName[] = "Gesture typing for the virtual keyboard.";
2359const char kGestureTypingDescription[] =
2360 "Enable/Disable gesture typing option in the settings page for the virtual "
2361 "keyboard.";
2362
2363const char kInputViewName[] = "Input views";
2364const char kInputViewDescription[] =
2365 "Enable IME extensions to supply custom views for user input such as "
2366 "virtual keyboards.";
2367
2368const char kMemoryPressureThresholdName[] =
2369 "Memory discard strategy for advanced pressure handling";
2370const char kMemoryPressureThresholdDescription[] =
2371 "Memory discarding strategy to use";
2372const char kConservativeThresholds[] =
2373 "Conservative memory pressure release strategy";
2374const char kAggressiveCacheDiscardThresholds[] =
2375 "Aggressive cache release strategy";
2376const char kAggressiveTabDiscardThresholds[] =
2377 "Aggressive tab release strategy";
2378const char kAggressiveThresholds[] =
2379 "Aggressive tab and cache release strategy";
2380
2381const char kMtpWriteSupportName[] = "MTP write support";
2382const char kMtpWriteSupportDescription[] =
2383 "MTP write support in File System API (and file manager). In-place editing "
2384 "operations are not supported.";
2385
2386const char kMultideviceName[] = "Enable multidevice features";
2387const char kMultideviceDescription[] =
2388 "Enables UI for controlling multidevice features.";
vabr0215a8e2017-03-28 12:47:342389
2390const char kNetworkPortalNotificationName[] =
2391 "Notifications about captive portals";
vabr0215a8e2017-03-28 12:47:342392const char kNetworkPortalNotificationDescription[] =
2393 "If enabled, notification is displayed when device is connected to a "
2394 "network behind captive portal.";
2395
stevenjbe1d457382017-05-24 22:37:242396const char kNetworkSettingsConfigName[] =
2397 "Settings based Network Configuration";
stevenjbe1d457382017-05-24 22:37:242398const char kNetworkSettingsConfigDescription[] =
2399 "Enables the Settings based network configuration UI instead of the Views "
2400 "based configuration dialog.";
2401
Brett Wilson7b44537e2017-08-18 01:38:282402const char kNewKoreanImeName[] = "New Korean IME";
2403const char kNewKoreanImeDescription[] =
2404 "New Korean IME, which is based on Google Input Tools' HMM engine.";
vabr0215a8e2017-03-28 12:47:342405
Brett Wilson7b44537e2017-08-18 01:38:282406const char kNewZipUnpackerName[] = "New ZIP unpacker";
2407const char kNewZipUnpackerDescription[] =
2408 "New ZIP unpacker flow, based on the File System Provider API.";
vabr0215a8e2017-03-28 12:47:342409
Brett Wilson7b44537e2017-08-18 01:38:282410const char kPhysicalKeyboardAutocorrectName[] = "Physical keyboard autocorrect";
2411const char kPhysicalKeyboardAutocorrectDescription[] =
2412 "Enable physical keyboard autocorrect for US keyboard, which can provide "
2413 "suggestions as typing on physical keyboard.";
vabr0215a8e2017-03-28 12:47:342414
2415const char kPrinterProviderSearchAppName[] =
2416 "Chrome Web Store Gallery app for printer drivers";
vabr0215a8e2017-03-28 12:47:342417const char kPrinterProviderSearchAppDescription[] =
2418 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:192419 "searches Chrome Web Store for extensions that support printing to a USB "
2420 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:342421
Brett Wilson7b44537e2017-08-18 01:38:282422const char kQuickUnlockPinName[] = "Quick Unlock (PIN)";
2423const char kQuickUnlockPinDescription[] =
2424 "Enabling PIN quick unlock allows you to use a PIN to unlock your ChromeOS "
2425 "device on the lock screen after you have signed into your device.";
2426const char kQuickUnlockPinSignin[] = "Enable PIN when logging in.";
2427const char kQuickUnlockPinSigninDescription[] =
2428 "Enabling PIN allows you to use a PIN to sign in and unlock your ChromeOS "
2429 "device. After changing this flag PIN needs to be set up again.";
2430const char kQuickUnlockFingerprint[] = "Quick Unlock (Fingerprint)";
2431const char kQuickUnlockFingerprintDescription[] =
2432 "Enabling fingerprint quick unlock allows you to setup and use a "
2433 "fingerprint to unlock your Chromebook on the lock screen after you have "
2434 "signed into your device.";
vabr0215a8e2017-03-28 12:47:342435
Brett Wilson7b44537e2017-08-18 01:38:282436const char kOfficeEditingComponentAppName[] =
2437 "Office Editing for Docs, Sheets & Slides";
2438const char kOfficeEditingComponentAppDescription[] =
2439 "Office Editing for Docs, Sheets & Slides for testing purposes.";
Daniel Erat33054b22017-06-27 16:18:072440
2441const char kSpuriousPowerButtonWindowName[] = "Spurious power button window";
2442const char kSpuriousPowerButtonWindowDescription[] =
2443 "Number of recent accelerometer samples to examine to determine if a power "
2444 "button event was spurious.";
2445
2446const char kSpuriousPowerButtonAccelCountName[] =
2447 "Spurious power button acceleration count";
2448const char kSpuriousPowerButtonAccelCountDescription[] =
2449 "Number of recent acceleration samples that must meet or exceed exceed the "
2450 "threshold in order for a power button event to be considered spurious.";
2451
2452const char kSpuriousPowerButtonScreenAccelName[] =
2453 "Spurious power button screen acceleration threshold";
2454const char kSpuriousPowerButtonScreenAccelDescription[] =
2455 "Threshold (in m/s^2, disregarding gravity) that screen acceleration must "
2456 "meet or exceed for a power button event to be considered spurious.";
2457
2458const char kSpuriousPowerButtonKeyboardAccelName[] =
2459 "Spurious power button keyboard acceleration threshold";
2460const char kSpuriousPowerButtonKeyboardAccelDescription[] =
2461 "Threshold (in m/s^2, disregarding gravity) that keyboard acceleration "
2462 "must meet or exceed for a power button event to be considered spurious.";
2463
2464const char kSpuriousPowerButtonLidAngleChangeName[] =
2465 "Spurious power button lid angle change threshold";
2466const char kSpuriousPowerButtonLidAngleChangeDescription[] =
2467 "Change in lid angle (i.e. hinge between keyboard and screen) that must be "
2468 "met or exceeded for a power button event to be considered spurious.";
2469
Chung-Sheng Wu468b0b32017-09-01 14:41:572470const char kSysInternalsName[] = "Enable Sys-Internals";
2471const char kSysInternalsDescription[] =
2472 "If enabled, user can monitor system information at "
2473 "chrome://sys-internals.";
2474
Brett Wilson7b44537e2017-08-18 01:38:282475const char kTeamDrivesName[] = "Enable Team Drives Integration";
2476const char kTeamDrivesDescription[] =
2477 "If enabled, files under Team Drives will appear in the Files app.";
vabr0215a8e2017-03-28 12:47:342478
Brett Wilson7b44537e2017-08-18 01:38:282479const char kTetherName[] = "Instant Tethering";
2480const char kTetherDescription[] =
2481 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
2482 "phone to share its Internet connection with this device.";
stanisc14bed0b132017-05-10 17:46:372483
Brett Wilson7b44537e2017-08-18 01:38:282484const char kTouchscreenCalibrationName[] =
2485 "Enable/disable touchscreen calibration option in material design settings";
2486const char kTouchscreenCalibrationDescription[] =
2487 "If enabled, the user can calibrate the touch screen displays in "
2488 "chrome://settings/display.";
yhanadac5bff5b2017-05-18 06:37:092489
Mitsuru Oshima63d3f2a2017-08-23 00:12:112490// Force UI Mode
2491const char kUiModeName[] = "Force Ui Mode";
2492const char kUiModeDescription[] =
2493 R"*(This flag can be used to force a certain mode on to a chromebook, )*"
2494 R"*(despite its current orientation. "Tablet" means that the )*"
2495 R"*(chromebook will act as if it were in tablet mode. "Clamshell" )*"
2496 R"*(means that the chromebook will act as if it were in clamshell )*"
2497 R"*(mode . "Auto" means that the chromebook will alternate between )*"
2498 R"*(the two, based on its orientation.)*";
2499const char kUiModeTablet[] = "TouchView";
2500const char kUiModeClamshell[] = "Clamshell";
2501const char kUiModeAuto[] = "Auto (default)";
2502
bruthigeafb0c02017-06-09 13:11:532503const char kUiDevToolsName[] = "Enable native UI inspection";
2504const char kUiDevToolsDescription[] =
2505 "Enables inspection of native UI elements. For local inspection use "
2506 "chrome://inspect#other";
2507
Takashi Toyoshima14f64f562017-07-19 08:38:202508const char kUseCrosMidiServiceName[] = "Use Chrome OS MIDI Service";
2509const char kUseCrosMidiServiceNameDescription[] =
2510 "Use Chrome OS MIDI Service for Web MIDI and allow ARC to support Android "
2511 "MIDI.";
2512
Brett Wilson7b44537e2017-08-18 01:38:282513const char kUseMusName[] = "Mus";
2514const char kUseMusDescription[] = "Enable the Mojo UI service.";
2515const char kEnableMashDescription[] =
2516 "Mash (UI, Chrome and ash in separate services)";
2517const char kEnableMusDescription[] =
2518 "Mus (UI in separate service, Chrome and ash in same service)";
2519
2520const char kVideoPlayerChromecastSupportName[] =
2521 "Experimental Chromecast support for Video Player";
2522const char kVideoPlayerChromecastSupportDescription[] =
2523 "This option enables experimental Chromecast support for Video Player app "
2524 "on ChromeOS.";
2525
2526const char kVirtualKeyboardName[] = "Virtual Keyboard";
2527const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
2528
2529const char kVirtualKeyboardOverscrollName[] = "Virtual Keyboard Overscroll";
2530const char kVirtualKeyboardOverscrollDescription[] =
2531 "Enables virtual keyboard overscroll support.";
2532
2533const char kVoiceInputName[] = "Voice input on virtual keyboard";
2534const char kVoiceInputDescription[] =
2535 "Enables voice input on virtual keyboard.";
2536
2537const char kWakeOnPacketsName[] = "Wake On Packets";
2538const char kWakeOnPacketsDescription[] =
2539 "Enables waking the device based on the receipt of some network packets.";
orenb21da031c2017-06-30 21:24:202540
yhanadac5bff5b2017-05-18 06:37:092541#endif // defined(OS_CHROMEOS)
2542
Brett Wilson7b44537e2017-08-18 01:38:282543// Random platform combinations -----------------------------------------------
2544
2545#if defined(OS_WIN) || defined(OS_LINUX)
2546
2547const char kEnableInputImeApiName[] = "Enable Input IME API";
2548const char kEnableInputImeApiDescription[] =
2549 "Enable the use of chrome.input.ime API.";
2550
2551#endif // defined(OS_WIN) || defined(OS_LINUX)
2552
2553#if defined(OS_WIN) || defined(OS_MACOSX)
2554
2555const char kAutomaticTabDiscardingName[] = "Automatic tab discarding";
2556const char kAutomaticTabDiscardingDescription[] =
2557 "If enabled, tabs get automatically discarded from memory when the system "
2558 "memory is low. Discarded tabs are still visible on the tab strip and get "
2559 "reloaded when clicked on. Info about discarded tabs can be found at "
2560 "chrome://discards.";
2561
2562#endif // defined(OS_WIN) || defined(OS_MACOSX)
2563
2564// Feature flags --------------------------------------------------------------
2565
2566#if BUILDFLAG(ENABLE_VR)
2567
2568#if defined(OS_ANDROID)
2569
2570const char kEnableVrShellName[] = "Enable Chrome VR.";
2571const char kEnableVrShellDescription[] =
2572 "Allow browsing with a VR headset if available for this device.";
2573
2574const char kVrCustomTabBrowsingName[] = "Enable Custom Tab browsing in VR.";
2575const char kVrCustomTabBrowsingDescription[] =
2576 "Allow browsing with a VR headset in a Custom Tab if available for this "
2577 "device.";
2578
2579const char kWebVrAutopresentName[] = "Enable WebVr auto presentation";
2580const char kWebVrAutopresentDescription[] =
2581 "Allows auto presentation of WebVr content from trusted first-party apps";
2582
2583const char kWebVrVsyncAlignName[] = "Enable WebVR VSync-aligned timing";
2584const char kWebVrVsyncAlignDescription[] =
2585 "Enabling this option aligns WebVR application rendering with VSync "
2586 "for smoother animations.";
2587
2588#endif // OS_ANDROID
2589
2590const char kWebvrExperimentalRenderingName[] =
2591 "WebVR experimental rendering optimizations";
2592const char kWebvrExperimentalRenderingDescription[] =
2593 "Enabling this option activates experimental rendering path optimizations "
2594 "for WebVR.";
2595
2596#endif // ENABLE_VR
2597
2598#if !defined(DISABLE_NACL)
2599
2600const char kNaclDebugMaskName[] =
2601 "Restrict Native Client GDB-based debugging by pattern";
2602const char kNaclDebugMaskDescription[] =
2603 "Restricts Native Client application GDB-based debugging by URL of "
2604 "manifest file. Native Client GDB-based debugging must be enabled for this "
2605 "option to work.";
2606const char kNaclDebugMaskChoiceDebugAll[] = "Debug everything.";
2607const char kNaclDebugMaskChoiceExcludeUtilsPnacl[] =
2608 "Debug everything except secure shell and the PNaCl translator.";
2609const char kNaclDebugMaskChoiceIncludeDebug[] =
2610 "Debug only if manifest URL ends with debug.nmf.";
2611
2612const char kNaclDebugName[] = "Native Client GDB-based debugging";
2613const char kNaclDebugDescription[] =
2614 "Enable GDB debug stub. This will stop a Native Client application on "
2615 "startup and wait for nacl-gdb (from the NaCl SDK) to attach to it.";
2616
2617const char kNaclName[] = "Native Client";
2618const char kNaclDescription[] =
2619 "Support Native Client for all web applications, even those that were not "
2620 "installed from the Chrome Web Store.";
2621
2622const char kPnaclSubzeroName[] = "Force PNaCl Subzero";
2623const char kPnaclSubzeroDescription[] =
2624 "Force the use of PNaCl's fast Subzero translator for all pexe files.";
2625
2626#endif // !defined(DISABLE_NACL)
2627
Brett Wilson7b44537e2017-08-18 01:38:282628#if BUILDFLAG(ENABLE_WEBRTC)
2629
2630const char kWebrtcH264WithOpenh264FfmpegName[] =
2631 "WebRTC H.264 software video encoder/decoder";
2632const char kWebrtcH264WithOpenh264FfmpegDescription[] =
2633 "When enabled, an H.264 software video encoder/decoder pair is included. "
2634 "If a hardware encoder/decoder is also available it may be used instead of "
2635 "this encoder/decoder.";
2636
2637#endif // BUILDFLAG(ENABLE_WEBRTC)
2638
2639#if defined(USE_ASH)
2640
2641const char kAshDisableSmoothScreenRotationName[] =
2642 "Disable smooth rotation animations.";
2643const char kAshDisableSmoothScreenRotationDescription[] =
2644 "Disable smooth rotation animations.";
2645
2646const char kAshEnableMirroredScreenName[] = "Enable mirrored screen mode.";
2647const char kAshEnableMirroredScreenDescription[] =
2648 "Enable the mirrored screen mode. This mode flips the screen image "
2649 "horizontally.";
2650
2651const char kAshShelfColorName[] = "Shelf color in Chrome OS system UI";
2652const char kAshShelfColorDescription[] =
2653 "Enables/disables the shelf color to be a derived from the wallpaper. The "
2654 "--ash-shelf-color-scheme flag defines how that color is derived.";
2655
2656const char kAshShelfColorScheme[] = "Shelf color scheme in Chrome OS System UI";
2657const char kAshShelfColorSchemeDescription[] =
2658 "Specify how the color is derived from the wallpaper. This flag is only "
2659 "used when the --ash-shelf-color flag is enabled. Defaults to Dark & Muted";
2660const char kAshShelfColorSchemeLightVibrant[] = "Light & Vibrant";
2661const char kAshShelfColorSchemeNormalVibrant[] = "Normal & Vibrant";
2662const char kAshShelfColorSchemeDarkVibrant[] = "Dark & Vibrant";
2663const char kAshShelfColorSchemeLightMuted[] = "Light & Muted";
2664const char kAshShelfColorSchemeNormalMuted[] = "Normal & Muted";
2665const char kAshShelfColorSchemeDarkMuted[] = "Dark & Muted";
2666
2667const char kMaterialDesignInkDropAnimationSpeedName[] =
2668 "Material Design Ink Drop Animation Speed";
2669const char kMaterialDesignInkDropAnimationSpeedDescription[] =
2670 "Sets the speed of the experimental visual feedback animations for "
2671 "material design.";
2672const char kMaterialDesignInkDropAnimationFast[] = "Fast";
2673const char kMaterialDesignInkDropAnimationSlow[] = "Slow";
2674
2675const char kUiShowCompositedLayerBordersName[] =
2676 "Show UI composited layer borders";
2677const char kUiShowCompositedLayerBordersDescription[] =
2678 "Show border around composited layers created by UI.";
2679const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
2680const char kUiShowCompositedLayerBordersSurface[] = "Surface";
2681const char kUiShowCompositedLayerBordersLayer[] = "Layer";
2682const char kUiShowCompositedLayerBordersAll[] = "All";
2683
2684const char kUiSlowAnimationsName[] = "Slow UI animations";
2685const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
2686
2687#endif // defined(USE_ASH)
2688
2689#if defined(TOOLKIT_VIEWS) || defined(OS_MACOSX)
2690
2691const char kShowCertLinkOnPageInfoName[] = "Show certificate link";
2692const char kShowCertLinkOnPageInfoDescription[] =
2693 "Add a link from the Page Info bubble to the certificate viewer for HTTPS "
2694 "sites.";
2695
2696#endif // defined(TOOLKIT_VIEWS) || defined(OS_MACOSX)
2697
2698#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
2699
2700const char kAutofillCreditCardUploadName[] =
2701 "Enable offering upload of Autofilled credit cards";
2702const char kAutofillCreditCardUploadDescription[] =
2703 "Enables a new option to upload credit cards to Google Payments for sync "
2704 "to all Chrome devices.";
2705
2706#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
2707
2708// ============================================================================
2709// Don't just add flags to the end, put them in the right section in
2710// alphabetical order just like the header file.
2711// ============================================================================
2712
vabr0215a8e2017-03-28 12:47:342713} // namespace flag_descriptions