blob: 7e5c869e4ec0519391baf9a85a3f4f0972f7ed25 [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
Shubhie Panicker48616c32017-10-26 21:46:2512const char kStopLoadingInBackgroundName[] = "Stop loading in background";
13const char kStopLoadingInBackgroundDescription[] =
14 "Stop loading tasks and loading "
15 "resources, in the background, after certain grace time.";
16
Brett Wilsonf27ff602017-07-07 22:28:4717const char kAccelerated2dCanvasName[] = "Accelerated 2D canvas";
18const char kAccelerated2dCanvasDescription[] =
19 "Enables the use of the GPU to perform 2d canvas rendering instead of "
20 "using software rendering.";
horodb71a5a2017-06-09 16:08:2421
Brett Wilsonf27ff602017-07-07 22:28:4722const char kAcceleratedVideoDecodeName[] = "Hardware-accelerated video decode";
23const char kAcceleratedVideoDecodeDescription[] =
24 "Hardware-accelerated video decode where available.";
25
26const char kAffiliationBasedMatchingName[] =
27 "Affiliation based matching in password manager";
28const char kAffiliationBasedMatchingDescription[] =
29 "Allow credentials stored for Android applications to be filled into "
30 "corresponding websites.";
31
32const char kAllowInsecureLocalhostName[] =
33 "Allow invalid certificates for resources loaded from localhost.";
34const char kAllowInsecureLocalhostDescription[] =
35 "Allows requests to localhost over HTTPS even when an invalid certificate "
36 "is presented.";
37
38const char kAllowNaclSocketApiName[] = "NaCl Socket API.";
39const char kAllowNaclSocketApiDescription[] =
40 "Allows applications to use NaCl Socket API. Use only to test NaCl "
41 "plugins.";
42
43const char kAppBannersName[] = "App Banners";
44const char kAppBannersDescription[] =
45 "Enable the display of Progressive Web App banners, which prompt a user to "
46 "add a web app to their shelf, or other platform-specific equivalent.";
47
yoshiki iguchi4a10c5f2017-11-29 20:16:5448const char kAshSidebarName[] = "Sidebar";
49const char kAshSidebarDescription[] = "Enable the experimental sidebar.";
50
Khushalba202212017-07-12 19:53:4951const char kAsyncImageDecodingName[] = "AsyncImageDecoding";
52const char kAsyncImageDecodingDescription[] =
53 "Enables asynchronous decoding of images from raster for web content";
54
Brett Wilsonf27ff602017-07-07 22:28:4755const char kAutoplayPolicyName[] = "Autoplay policy";
56const char kAutoplayPolicyDescription[] =
57 "Policy used when deciding if audio or video is allowed to autoplay.";
58
59const char kAutoplayPolicyUserGestureRequiredForCrossOrigin[] =
60 "User gesture is required for cross-origin iframes.";
61const char kAutoplayPolicyNoUserGestureRequired[] =
62 "No user gesture is required.";
63const char kAutoplayPolicyUserGestureRequired[] = "User gesture is required.";
64const char kAutoplayPolicyDocumentUserActivation[] =
65 "Document user activation is required.";
66
Johanne0cc6902017-11-16 00:23:5067extern const char kAv1DecoderName[] = "Enable AV1 video decoding.";
68extern const char kAv1DecoderDescription[] =
69 "Allow decoding of files with the AV1 video codec.";
70
Brett Wilsonf27ff602017-07-07 22:28:4771const char kBackgroundVideoTrackOptimizationName[] =
72 "Optimize background video playback.";
73const char kBackgroundVideoTrackOptimizationDescription[] =
74 "Disable video tracks when the video is played in the background to "
75 "optimize performance.";
76
77const char kBleAdvertisingInExtensionsName[] = "BLE Advertising in Chrome Apps";
78const char kBleAdvertisingInExtensionsDescription[] =
79 "Enables BLE Advertising in Chrome Apps. BLE Advertising might interfere "
80 "with regular use of Bluetooth Low Energy features.";
81
Charles Harrisond629cc62017-10-05 01:39:5482const char kBlockTabUndersName[] = "Block tab-unders";
83const char kBlockTabUndersDescription[] =
84 "Blocks tab-unders in Chrome with some native UI to allow the user to "
85 "proceed.";
86
arthursonzognif2bc2d202017-11-08 11:01:0287const char kNavigationMojoResponseName[] = "Navigation response using Mojo";
88const char kNavigationMojoResponseDescription[] =
89 "Browser side navigation (aka PlzNavigate) is using blob URLs to deliver "
90 "the body of the main resource to the renderer process. This flag replaces "
91 "this mechanism by using a Mojo DataPipe.";
92
Brett Wilsonf27ff602017-07-07 22:28:4793const char kBrowserTaskSchedulerName[] = "Task Scheduler";
94const char kBrowserTaskSchedulerDescription[] =
95 "Enables redirection of some task posting APIs to the task scheduler.";
96
97const char kBypassAppBannerEngagementChecksName[] =
98 "Bypass user engagement checks";
99const char kBypassAppBannerEngagementChecksDescription[] =
100 "Bypasses user engagement checks for displaying app banners, such as "
101 "requiring that users have visited the site before and that the banner "
102 "hasn't been shown recently. This allows developers to test that other "
103 "eligibility requirements for showing app banners, such as having a "
104 "manifest, are met.";
105
Lucas Garronb9539b732017-10-31 00:22:09106const char kCommittedInterstitialsName[] = "Committed Interstitials";
107const char kCommittedInterstitialsDescription[] =
108 "Use committed error pages instead of transient navigation entries "
109 "for interstitial error pages (e.g. certificate errors).";
110
Marc Treib026acc532017-10-17 18:39:59111const char kCaptureThumbnailOnNavigatingAwayName[] =
112 "Capture page thumbnail on navigating away";
113const char kCaptureThumbnailOnNavigatingAwayDescription[] =
114 "Capture a page thumbnail (for use on the New Tab page) when navigating "
115 "away from the current page, in addition to other times a thumbnail may be "
116 "captured.";
117
Brett Wilsonf27ff602017-07-07 22:28:47118const char kCastStreamingHwEncodingName[] =
119 "Cast Streaming hardware video encoding";
120const char kCastStreamingHwEncodingDescription[] =
121 "This option enables support in Cast Streaming for encoding video streams "
122 "using platform hardware.";
123
Amber Won478561d2017-08-19 01:02:59124const char kClickToOpenPDFName[] = "Click to open embedded PDFs";
125const char kClickToOpenPDFDescription[] =
126 "When the PDF plugin is unavailable, show a click-to-open placeholder for "
127 "embedded PDFs.";
128
Gary Kacmarcikfb69b212017-11-14 03:41:08129const char kClipboardContentSettingName[] = "Clipboard content setting";
130const char kClipboardContentSettingDescription[] =
131 "Enables a site-wide permission in the UI which controls access to the "
132 "asynchronous clipboard web API";
133
Brett Wilsonf27ff602017-07-07 22:28:47134const char kCloudImportName[] = "Cloud Import";
135const char kCloudImportDescription[] = "Allows the cloud-import feature.";
136
Christopher Cameronceb8727d2017-09-07 23:53:16137const char kForceColorProfileSRGB[] = "sRGB";
138const char kForceColorProfileP3[] = "Display P3 D65";
139const char kForceColorProfileColorSpin[] = "Color spin with gamma 2.4";
140const char kForceColorProfileHdr[] = "scRGB linear (HDR where available)";
141
142const char kForceColorProfileName[] = "Force color profile";
143const char kForceColorProfileDescription[] =
144 "Forces Chrome to use a specific color profile instead of the color "
145 "of the window's current monitor, as specified by the operating system.";
146
Brett Wilsonf27ff602017-07-07 22:28:47147const char kCompositedLayerBordersName[] = "Composited render layer borders";
148const char kCompositedLayerBordersDescription[] =
149 "Renders a border around composited Render Layers to help debug and study "
150 "layer compositing.";
151
152const char kContextualSuggestionsCarouselName[] =
153 "Enable Contextual Suggestions";
154const char kContextualSuggestionsCarouselDescription[] =
155 "If enabled, shows contextual suggestions in a horizontal carousel in "
156 "bottom sheet content.";
157
158const char kCreditCardAssistName[] = "Credit Card Assisted Filling";
159const char kCreditCardAssistDescription[] =
160 "Enable assisted credit card filling on certain sites.";
161
162const char kCrossProcessGuestViewIsolationName[] =
163 "Cross process frames for guests";
164const char kCrossProcessGuestViewIsolationDescription[] =
165 "Highly experimental where guests such as <webview> are implemented on "
166 "the out-of-process iframe infrastructure.";
167
Brett Wilsonf27ff602017-07-07 22:28:47168const char kDataReductionProxyLoFiName[] = "Data Saver Lo-Fi mode";
169const char kDataReductionProxyLoFiDescription[] =
170 "Forces Data Saver Lo-Fi mode to be always enabled, enabled only on "
171 "cellular connections, or disabled. Data Saver must be enabled for Lo-Fi "
172 "mode to be used.";
173const char kDataReductionProxyLoFiAlwaysOn[] = "Always on";
174const char kDataReductionProxyLoFiCellularOnly[] = "Cellular only";
175const char kDataReductionProxyLoFiDisabled[] = "Disable";
176const char kDataReductionProxyLoFiSlowConnectionsOnly[] =
177 "Slow connections only";
178
179const char kDatasaverPromptName[] = "Cellular Data Saver Prompt";
180const char kDatasaverPromptDescription[] =
181 "Enables a prompt, which appears when a cellular network connection is "
182 "detected, to take the user to the Data Saver extension page on Chrome Web "
183 "Store.";
184const char kDatasaverPromptDemoMode[] = "Demo mode";
185
186const char kDebugPackedAppName[] = "Debugging for packed apps";
187const char kDebugPackedAppDescription[] =
188 "Enables debugging context menu options such as Inspect Element for packed "
189 "applications.";
190
191const char kDefaultTileHeightName[] = "Default tile height";
192const char kDefaultTileHeightDescription[] = "Specify the default tile height.";
193const char kDefaultTileHeightShort[] = "128";
194const char kDefaultTileHeightTall[] = "256";
195const char kDefaultTileHeightGrande[] = "512";
196const char kDefaultTileHeightVenti[] = "1024";
197
198const char kDefaultTileWidthName[] = "Default tile width";
199const char kDefaultTileWidthDescription[] = "Specify the default tile width.";
200const char kDefaultTileWidthShort[] = "128";
201const char kDefaultTileWidthTall[] = "256";
202const char kDefaultTileWidthGrande[] = "512";
203const char kDefaultTileWidthVenti[] = "1024";
204
205const char kDebugShortcutsName[] = "Debugging keyboard shortcuts";
206const char kDebugShortcutsDescription[] =
207 "Enables additional keyboard shortcuts that are useful for debugging Ash.";
208
209const char kDeviceDiscoveryNotificationsName[] =
210 "Device Discovery Notifications";
211const char kDeviceDiscoveryNotificationsDescription[] =
212 "Device discovery notifications on local network.";
213
214const char kDevtoolsExperimentsName[] = "Developer Tools experiments";
215const char kDevtoolsExperimentsDescription[] =
216 "Enables Developer Tools experiments. Use Settings panel in Developer "
217 "Tools to toggle individual experiments.";
218
219const char kDisableAudioForDesktopShareName[] =
220 "Disable Audio For Desktop Share";
221const char kDisableAudioForDesktopShareDescription[] =
222 "With this flag on, desktop share picker window will not let the user "
223 "choose whether to share audio.";
224
Brett Wilsonf27ff602017-07-07 22:28:47225const char kDisableTabForDesktopShareName[] =
226 "Disable Desktop Share with tab source";
227const char kDisableTabForDesktopShareDescription[] =
228 "This flag controls whether users can choose a tab for desktop share.";
229
230const char kDisallowDocWrittenScriptsUiName[] =
231 "Block scripts loaded via document.write";
232const char kDisallowDocWrittenScriptsUiDescription[] =
233 "Disallows fetches for third-party parser-blocking scripts inserted into "
234 "the main frame via document.write.";
235
Brett Wilsonf27ff602017-07-07 22:28:47236const char kDistanceFieldTextName[] = "Distance field text";
237const char kDistanceFieldTextDescription[] =
238 "Text is rendered with signed distance fields rather than bitmap alpha "
239 "masks.";
240
241const char kDriveSearchInChromeLauncherName[] =
242 "Drive Search in Chrome App Launcher";
243const char kDriveSearchInChromeLauncherDescription[] =
244 "Files from Drive will show up when searching the Chrome App Launcher.";
245
Brett Wilsonf27ff602017-07-07 22:28:47246const char kEasyUnlockBluetoothLowEnergyDiscoveryName[] =
247 "Smart Lock Bluetooth Low Energy Discovery";
248const char kEasyUnlockBluetoothLowEnergyDiscoveryDescription[] =
Tim Song52c142c62017-07-20 03:29:07249 "Disables a Smart Lock setting that allows Chromebook to discover phones "
Brett Wilsonf27ff602017-07-07 22:28:47250 "over Bluetooth Low Energy in order to unlock the Chromebook when the "
251 "phone is in its proximity.";
252
Gustavo Sacomotofb11164f2017-07-21 12:56:18253const char kEasyUnlockPromotionsName[] = "Smart Lock Promotions";
254const char kEasyUnlockPromotionsDescription[] =
255 "Enables Smart Lock promotions. Promotions will be periodically display "
256 "if the user is eligible.";
257
Brett Wilsonf27ff602017-07-07 22:28:47258const char kEmbeddedExtensionOptionsName[] = "Embedded extension options";
259const char kEmbeddedExtensionOptionsDescription[] =
260 "Display extension options as an embedded element in chrome://extensions "
261 "rather than opening a new tab.";
262
263const char kEnableAsmWasmName[] =
264 "Experimental Validate Asm.js and convert to WebAssembly when valid.";
265const char kEnableAsmWasmDescription[] =
266 R"*(Validate Asm.js when "use asm" is present and then convert to )*"
267 R"*(WebAssembly.)*";
268
Shanfeng Zhang19c16562017-10-17 02:30:40269const char kEnableAutofillCreditCardAblationExperimentDisplayName[] =
270 "Credit card autofill ablation experiment.";
271const char kEnableAutofillCreditCardAblationExperimentDescription[] =
272 "If enabled, credit card autofill suggestions will not display.";
273
Brett Wilsonf27ff602017-07-07 22:28:47274const char kEnableAutofillCreditCardBankNameDisplayName[] =
275 "Display the issuer bank name of a credit card in autofill.";
276const char kEnableAutofillCreditCardBankNameDisplayDescription[] =
277 "If enabled, displays the issuer bank name of a credit card in autofill.";
278
279const char kEnableAutofillCreditCardLastUsedDateDisplayName[] =
280 "Display the last used date of a credit card in autofill.";
281const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
282 "If enabled, display the last used date of a credit card in autofill.";
283
284const char kEnableAutofillCreditCardUploadCvcPromptName[] =
285 "Enable requesting missing CVC during Autofill credit card upload";
286const char kEnableAutofillCreditCardUploadCvcPromptDescription[] =
287 "If enabled, requests missing CVC when offering to upload credit cards to "
288 "Google Payments.";
289
Jared Saul5c2a1482017-12-09 00:24:31290const char kEnableAutofillCreditCardUploadSendPanFirstSixName[] =
291 "Send first six digits of PAN when deciding whether to offer Autofill "
292 "credit card upload";
293const char kEnableAutofillCreditCardUploadSendPanFirstSixDescription[] =
294 "If enabled, when deciding whether to offer credit card upload to Google "
295 "Payments, sends the first six digits of the card number to avoid cases "
296 "where card upload is likely to fail.";
297
Jason Guo71f621e2017-10-13 04:18:53298const char kEnableAutofillSendBillingCustomerNumberName[] =
299 "Enable autofill sending billing customer number when calling Google "
300 "Payments";
301const char kEnableAutofillSendBillingCustomerNumberDescription[] =
302 "If enabled, autofill sends billing customer number when calling Google "
303 "Payments.";
304
Mathieu Perreault069024e12017-10-24 01:14:08305const char kEnableAutofillToolkitViewsCreditCardDialogsMac[] =
306 "Enable toolkit-views credit card dialogs on Mac";
307const char kEnableAutofillToolkitViewsCreditCardDialogsMacDescription[] =
308 "Enable more modern credit card dialogs on Mac, based on toolkit-views.";
309
Vitalii Iarko4f9834ce2017-08-04 07:05:19310const char kEnableBreakingNewsPushName[] = "Breaking News Push";
311const char kEnableBreakingNewsPushDescription[] =
312 "Listen for breaking news content suggestions (e.g. for New Tab Page) "
313 "through Google Cloud Messaging.";
314
Brett Wilsonf27ff602017-07-07 22:28:47315const char kEnableBrotliName[] = "Brotli Content-Encoding.";
316const char kEnableBrotliDescription[] =
317 "Enable Brotli Content-Encoding support.";
318
sclittle50e4bb92017-07-08 02:23:03319const char kEnableClientLoFiName[] = "Client-side Lo-Fi previews";
320
321const char kEnableClientLoFiDescription[] =
322 "Enable showing low fidelity images on some pages on slow networks.";
323
Doug Arnett08b4067b2017-10-12 20:14:44324const char kEnableNoScriptPreviewsName[] = "NoScript previews";
325
326const char kEnableNoScriptPreviewsDescription[] =
327 "Enable disabling JavaScript on some pages on slow networks.";
328
Brett Wilsonf27ff602017-07-07 22:28:47329const char kEnableDataReductionProxyLitePageName[] =
330 "Lite pages for Data Saver Lo-Fi mode";
331const char kEnableDataReductionProxyLitePageDescription[] =
332 "Enable lite pages in Data Saver Lo-Fi mode. Previews of pages will be "
333 "shown instead of image placeholders when Lo-Fi is on. Data Saver and "
334 "Lo-Fi must be enabled for lite pages to be shown.";
335
Thanh Le2c279fbc2017-11-21 01:25:40336const char kDataReductionProxyServerAlternative1[] = "Use alt. server config 1";
337const char kDataReductionProxyServerAlternative2[] = "Use alt. server config 2";
338const char kDataReductionProxyServerAlternative3[] = "Use alt. server config 3";
339const char kDataReductionProxyServerAlternative4[] = "Use alt. server config 4";
340const char kDataReductionProxyServerAlternative5[] = "Use alt. server config 5";
341const char kDataReductionProxyServerAlternative6[] = "Use alt. server config 6";
342const char kDataReductionProxyServerAlternative7[] = "Use alt. server config 7";
343const char kDataReductionProxyServerAlternative8[] = "Use alt. server config 8";
344const char kDataReductionProxyServerAlternative9[] = "Use alt. server config 9";
345const char kDataReductionProxyServerAlternative10[] =
346 "Use alt. server config 10";
Brett Wilsonf27ff602017-07-07 22:28:47347const char kEnableDataReductionProxyServerExperimentName[] =
348 "Use an alternative Data Saver back end configuration.";
349const char kEnableDataReductionProxyServerExperimentDescription[] =
350 "Enable a different approach to saving data by configuring the back end "
351 "server";
352
353const char kEnableDataReductionProxySavingsPromoName[] =
354 "Data Saver 1 MB Savings Promo";
355const char kEnableDataReductionProxySavingsPromoDescription[] =
356 "Enable a Data Saver promo for 1 MB of savings. If Data Saver has already "
357 "saved 1 MB of data, then the promo will not be shown. Data Saver must be "
358 "enabled for the promo to be shown.";
359
Matt Giucad4870432017-11-24 01:04:38360const char kEnableDesktopPWAsName[] = "Desktop PWAs";
361const char kEnableDesktopPWAsDescription[] =
362 "Experimental windowing and install banner treatment for Progressive Web "
363 "Apps on desktop platforms. Implies #enable-experimental-app-banners.";
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17364
Brett Wilsonf27ff602017-07-07 22:28:47365const char kEnableEnumeratingAudioDevicesName[] =
366 "Experimentally enable enumerating audio devices.";
367const char kEnableEnumeratingAudioDevicesDescription[] =
368 "Experimentally enable the use of enumerating audio devices.";
369
370const char kEnableGenericSensorName[] = "Generic Sensor";
371const char kEnableGenericSensorDescription[] =
Mikhail Pozdnyakov73373a62017-08-24 17:31:25372 "Enables motion sensor classes based on Generic Sensor API, i.e. "
373 "Accelerometer, LinearAccelerationSensor, Gyroscope, "
374 "AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
375
376const char kEnableGenericSensorExtraClassesName[] =
377 "Generic Sensor Extra Classes";
378const char kEnableGenericSensorExtraClassesDescription[] =
379 "Enables an extra set of sensor classes based on Generic Sensor API, which "
380 "expose previously unavailable platform features, i.e. AmbientLightSensor "
381 "and Magnetometer interfaces.";
Brett Wilsonf27ff602017-07-07 22:28:47382
Brett Wilsonf27ff602017-07-07 22:28:47383const char kEnableHDRName[] = "HDR mode";
384const char kEnableHDRDescription[] =
385 "Enables HDR support on compatible displays.";
386
387const char kEnableHeapProfilingName[] = "Heap profiling";
388const char kEnableHeapProfilingDescription[] = "Enables heap profiling.";
389const char kEnableHeapProfilingModePseudo[] = "Enabled (pseudo mode)";
390const char kEnableHeapProfilingModeNative[] = "Enabled (native mode)";
391const char kEnableHeapProfilingTaskProfiler[] = "Enabled (task mode)";
392
393const char kEnableHttpFormWarningName[] =
394 "Show in-form warnings for sensitive fields when the top-level page is not "
Eric Lawrenceed8fccf2017-09-08 21:27:15395 "HTTPS";
Brett Wilsonf27ff602017-07-07 22:28:47396const char kEnableHttpFormWarningDescription[] =
397 "Attaches a warning UI to any password or credit card fields detected when "
398 "the top-level page is not HTTPS";
399
Sidney San Martín9375b892017-09-09 00:29:54400const char kEnableMacMaterialDesignDownloadShelfName[] =
401 "Enable Material Design download shelf";
402
403const char kEnableMacMaterialDesignDownloadShelfDescription[] =
404 "If enabled, the download shelf uses Material Design.";
405
Tatiana Gornakafb40452017-07-31 13:50:04406const char kEnableManualFallbacksFillingName[] =
407 "Manual fallbacks for password manager forms filling";
408const char kEnableManualFallbacksFillingDescription[] =
409 "If enabled, then if user clicks on the password field on a form, popup "
410 "might contain generation fallbacks or 'Show all saved passwords' "
411 "fallback.";
412
vabr0215a8e2017-03-28 12:47:34413const char kEnableMaterialDesignBookmarksName[] =
414 "Enable Material Design bookmarks";
vabr0215a8e2017-03-28 12:47:34415const char kEnableMaterialDesignBookmarksDescription[] =
416 "If enabled, the chrome://bookmarks/ URL loads the Material Design "
417 "bookmarks page.";
418
vabr0215a8e2017-03-28 12:47:34419const char kEnableMaterialDesignExtensionsName[] =
420 "Enable Material Design extensions";
vabr0215a8e2017-03-28 12:47:34421const char kEnableMaterialDesignExtensionsDescription[] =
422 "If enabled, the chrome://extensions/ URL loads the Material Design "
423 "extensions page.";
424
Anton Urusov47cd4932017-09-19 14:41:41425const char kEnablePolicyToolName[] = "Enable policy management page";
426const char kEnablePolicyToolDescription[] =
427 "If enabled, the chrome://policy-tool URL loads a page for managing "
428 "policies.";
429
Tsuyoshi Horoea7edb72017-11-12 04:14:00430const char kEnablePWAFullCodeCacheName[] = "Enable PWA full code cache";
431const char kEnablePWAFullCodeCacheDescription[] =
432 "Generate V8 code cache in Cache Storage while installing Service Worker "
433 "for PWAs.";
434
Weidong Guo7dfd1482017-11-08 05:56:28435const char kEnableMultiMirroringName[] =
436 "Display mirroring across multiple displays.";
437const char kEnableMultiMirroringDescription[] =
438 "Enable Display mirroring across multiple displays.";
439
Brett Wilsonf27ff602017-07-07 22:28:47440const char kEnableNavigationTracingName[] = "Enable navigation tracing";
441const char kEnableNavigationTracingDescription[] =
442 "This is to be used in conjunction with the trace-upload-url flag. "
443 "WARNING: When enabled, Chrome will record performance data for every "
444 "navigation and upload it to the URL specified by the trace-upload-url "
445 "flag. The trace may include personally identifiable information (PII) "
446 "such as the titles and URLs of websites you visit.";
447
Bernhard Bauer5533f9912017-11-06 17:56:02448const char kEnableNetworkLoggingToFileName[] = "Enable network logging to file";
449const char kEnableNetworkLoggingToFileDescription[] =
450 "Enables network logging to a file named netlog.json in the user data "
451 "directory. The file can be imported into chrome://net-internals.";
452
Brett Wilsonf27ff602017-07-07 22:28:47453const char kEnableNetworkServiceName[] = "Enable network service";
454const char kEnableNetworkServiceDescription[] =
455 "Enables the network service, which makes network requests through a "
456 "separate service. Note: most features don't work with this yet.";
457
John Abd-El-Malek8067cc02017-12-04 23:23:20458const char kEnableNetworkServiceInProcessName[] =
459 "Runs network service in-process";
460const char kEnableNetworkServiceInProcessDescription[] =
461 "Runs the network service in the browser process.";
462
dpapaded8349472017-10-25 03:21:27463const char kEnableNewPrintPreview[] = "Enable new Print Preview UI";
464const char kEnableNewPrintPreviewDescription[] =
465 "If enabled, Print Preview will display a newer UI";
466
Ahmed Fakhry2fd8fc82017-07-28 16:31:12467const char kEnableNightLightName[] = "Enable Night Light";
468const char kEnableNightLightDescription[] =
469 "Enable the Night Light feature which controls the color temperature of "
470 "the screen.";
471
Sophie Chang117a3b22017-10-24 22:25:36472const char kEnableOptimizationHintsName[] = "Optimization Hints";
473const char kEnableOptimizationHintsDescription[] =
474 "Enable the Optimization Hints feature which incorporates server hints"
475 "into decisions for what optimizations to perform on some pages on slow "
476 "networks.";
477
Yutaka Hirano98be3272017-08-07 17:55:39478const char kEnableOutOfBlinkCORSName[] = "Out of blink CORS";
479const char kEnableOutOfBlinkCORSDescription[] =
480 "CORS handling logic is moved out of blink.";
481
Erik Chen49bbfa22017-08-18 08:49:56482const char kEnableOutOfProcessHeapProfilingName[] =
483 "Out of process heap profiling.";
484const char kEnableOutOfProcessHeapProfilingDescription[] =
485 "Creates a profiling service that records stacktraces for all live, "
486 "malloced objects.";
erikchen1dff1812017-09-11 21:27:36487const char kEnableOutOfProcessHeapProfilingModeMinimal[] =
488 "Profile only the browser and GPU processes.";
Erik Chen49bbfa22017-08-18 08:49:56489const char kEnableOutOfProcessHeapProfilingModeAll[] = "Profile all processes.";
erikchen0a5dd692017-12-12 00:53:10490const char kEnableOutOfProcessHeapProfilingModeAllRenderers[] =
491 "Profiles all renderers.";
Albert J. Wongbd5bd902017-11-09 19:56:15492const char kEnableOutOfProcessHeapProfilingModeBrowser[] =
493 "Profile only the browser processes.";
494const char kEnableOutOfProcessHeapProfilingModeGpu[] =
495 "Profile only the GPU processes.";
erikchen0a5dd692017-12-12 00:53:10496const char kEnableOutOfProcessHeapProfilingModeManual[] =
497 "By default, no processes are profiled. User may choose to start-profiling "
498 "processes via chrome://memory-internals.";
Albert J. Wongbd5bd902017-11-09 19:56:15499const char kEnableOutOfProcessHeapProfilingModeRendererSampling[] =
500 "Profile a random sampling of renderer processes, ensuring only one is "
501 "ever profiled at a time.";
Erik Chen8bb76b52017-12-06 19:06:25502const char kOutOfProcessHeapProfilingKeepSmallAllocations[] =
503 "Keep track of even the small allocations in memlog heap dumps.";
504const char kOutOfProcessHeapProfilingKeepSmallAllocationsDescription[] =
505 "By default, small allocations are pruned from the heap dump. This reduces "
506 "the size of the compressed trace by 100x. If pruning is disabled, the "
507 "chrome://tracing UI may be unable to take or load the trace. Save the "
508 "trace directly using chrome://memory-internals, and use other mechanisms "
509 "[e.g. diff_heap_profiler.py] to examine the trace. Note that "
510 "automatically uploaded traces will always be pruned. This only affects "
511 "manually taken memory-infra traces.";
Erik Chen49bbfa22017-08-18 08:49:56512
Brett Wilsonf27ff602017-07-07 22:28:47513const char kEnablePictureInPictureName[] = "Enable picture in picture.";
514const char kEnablePictureInPictureDescription[] =
515 "Enable the picture in picture feature for videos.";
516
F#m59d036e2017-09-13 07:22:17517const char kEnablePixelCanvasRecordingName[] = "Enable pixel canvas recording";
518const char kEnablePixelCanvasRecordingDescription[] =
519 "Pixel canvas recording allows the compositor to raster contents aligned "
520 "with the pixel and improves text rendering. This should be enabled when a "
521 "device is using fractional scale factor.";
522
Brett Wilsonf27ff602017-07-07 22:28:47523const char kEnableTokenBindingName[] = "Token Binding.";
524const char kEnableTokenBindingDescription[] = "Enable Token Binding support.";
525
Sahel Sharifyd732ab12017-11-29 23:03:16526extern const char kEnableTouchpadAndWheelScrollLatchingName[] =
527 "Wheel Scroll Latching.";
528extern const char kEnableTouchpadAndWheelScrollLatchingDescription[] =
529 "Wheel scroll latching enforces latching to a single element for the "
530 "duration of a scroll sequence.";
531
Irmak Kavasoglu7e16af02017-07-19 09:52:47532const char kEnableUsernameCorrectionName[] = "Enable username correction";
533const char kEnableUsernameCorrectionDescription[] =
534 "While on the pending password state, add an edit button to the bubble so "
535 "that user can edit the username.";
536
Brett Wilsonf27ff602017-07-07 22:28:47537const char kEnableUseZoomForDsfName[] =
538 "Use Blink's zoom for device scale factor.";
539const char kEnableUseZoomForDsfDescription[] =
540 "If enabled, Blink uses its zooming mechanism to scale content for device "
541 "scale factor.";
542const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
543const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
544const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
545
546const char kEnableScrollAnchoringName[] = "Scroll Anchoring";
547const char kEnableScrollAnchoringDescription[] =
548 "Adjusts scroll position to prevent visible jumps when offscreen content "
549 "changes.";
550
Brett Wilsonf27ff602017-07-07 22:28:47551const char kEnableWasmName[] = "WebAssembly structured cloning support.";
552const char kEnableWasmDescription[] =
553 "Enable web pages to use WebAssembly structured cloning.";
554
Brett Wilsonf27ff602017-07-07 22:28:47555const char kEnableImageCaptureAPIName[] = "Image Capture API";
556const char kEnableImageCaptureAPIDescription[] =
557 "Enables the Web Platform Image Capture API: takePhoto(), "
558 "getPhotoCapabilities(), etc.";
559
560const char kEnableZeroSuggestRedirectToChromeName[] =
561 "Experimental contextual omnibox suggestion";
562const char kEnableZeroSuggestRedirectToChromeDescription[] =
563 "Change omnibox contextual suggestions to an experimental source. Note "
564 "that this is not an on/off switch for contextual omnibox and it only "
565 "applies to suggestions provided before the user starts typing a URL or a "
566 "search query (i.e. zero suggest).";
567
568const char kEnableWasmStreamingName[] =
569 "WebAssembly streaming compile/instantiate support.";
570const char kEnableWasmStreamingDescription[] =
571 "WebAssembly.{compile|instantiate} taking a Response as parameter.";
572
Brett Wilsonf27ff602017-07-07 22:28:47573const char kExpensiveBackgroundTimerThrottlingName[] =
574 "Throttle expensive background timers";
575const char kExpensiveBackgroundTimerThrottlingDescription[] =
576 "Enables intervention to limit CPU usage of background timers to 1%.";
577
578const char kExperimentalAppBannersName[] = "Experimental app banners";
579const char kExperimentalAppBannersDescription[] =
Matt Giucad4870432017-11-24 01:04:38580 "Enables a new experimental app banner flow and UI. Implies "
581 "#enable-app-banners.";
Brett Wilsonf27ff602017-07-07 22:28:47582
583const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
584const char kExperimentalCanvasFeaturesDescription[] =
585 "Enables the use of experimental canvas features which are still in "
586 "development.";
587
588const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
589const char kExperimentalExtensionApisDescription[] =
590 "Enables experimental extension APIs. Note that the extension gallery "
591 "doesn't allow you to upload extensions that use experimental APIs.";
592
593const char kExperimentalFullscreenExitUIName[] =
594 "Experimental fullscreen exit UI";
595const char kExperimentalFullscreenExitUIDescription[] =
596 "Displays experimental UI to allow mouse and touch input methods to exit "
597 "fullscreen mode.";
598
Brett Wilsonf27ff602017-07-07 22:28:47599const char kExperimentalKeyboardLockUiName[] = "Experimental keyboard lock UI.";
600const char kExperimentalKeyboardLockUiDescription[] =
601 "An experimental full screen with keyboard lock mode requiring users to "
602 "hold Esc to exit.";
603
604const char kExperimentalSecurityFeaturesName[] =
605 "Potentially annoying security features";
606const char kExperimentalSecurityFeaturesDescription[] =
607 "Enables several security features that will likely break one or more "
608 "pages that you visit on a daily basis. Strict mixed content checking, for "
609 "example. And locking powerful features to secure contexts. This flag will "
610 "probably annoy you.";
611
612const char kExperimentalWebPlatformFeaturesName[] =
613 "Experimental Web Platform features";
614const char kExperimentalWebPlatformFeaturesDescription[] =
615 "Enables experimental Web Platform features that are in development.";
616
617const char kExtensionContentVerificationName[] =
618 "Extension Content Verification";
619const char kExtensionContentVerificationDescription[] =
620 "This flag can be used to turn on verification that the contents of the "
621 "files on disk for extensions from the webstore match what they're "
622 "expected to be. This can be used to turn on this feature if it would not "
623 "otherwise have been turned on, but cannot be used to turn it off (because "
624 "this setting can be tampered with by malware).";
625const char kExtensionContentVerificationBootstrap[] =
626 "Bootstrap (get expected hashes, but do not enforce them)";
627const char kExtensionContentVerificationEnforce[] =
628 "Enforce (try to get hashes, and enforce them if successful)";
629const char kExtensionContentVerificationEnforceStrict[] =
630 "Enforce strict (hard fail if we can't get hashes)";
631
632const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
633const char kExtensionsOnChromeUrlsDescription[] =
634 "Enables running extensions on chrome:// URLs, where extensions explicitly "
635 "request this permission.";
galinapae72e152017-05-12 13:12:28636
Brett Wilsonecb80982017-07-12 20:34:51637const char kFastUnloadName[] = "Fast tab/window close";
638const char kFastUnloadDescription[] =
639 "Enables fast tab/window closing - runs a tab's onunload js handler "
640 "independently of the GUI.";
vabr0215a8e2017-03-28 12:47:34641
Brett Wilsonecb80982017-07-12 20:34:51642const char kFeaturePolicyName[] = "Feature Policy";
643const char kFeaturePolicyDescription[] =
644 "Enables granting and removing access to features through the "
645 "Feature-Policy HTTP header.";
vabr0215a8e2017-03-28 12:47:34646
Brett Wilsonecb80982017-07-12 20:34:51647const char kFetchKeepaliveTimeoutSettingName[] =
648 "Fetch API keepalive timeout setting";
649const char kFetchKeepaliveTimeoutSettingDescription[] =
650 "This is for setting the timeout value for Fetch API with keepalive option "
651 "and SendBeacon";
652
653const char kFontCacheScalingName[] = "FontCache scaling";
654const char kFontCacheScalingDescription[] =
655 "Reuse a cached font in the renderer to serve different sizes of font for "
656 "faster layout.";
657
658const char kForceEffectiveConnectionTypeName[] =
659 "Override effective connection type";
660const char kForceEffectiveConnectionTypeDescription[] =
661 "Overrides the effective connection type of the current connection "
662 "returned by the network quality estimator.";
663const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
664const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
665const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
666const char kEffectiveConnectionType2GDescription[] = "2G";
667const char kEffectiveConnectionType3GDescription[] = "3G";
668const char kEffectiveConnectionType4GDescription[] = "4G";
669
670const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
671const char kFillOnAccountSelectDescription[] =
672 "Filling of passwords when an account is explicitly selected by the user "
673 "rather than autofilling credentials on page load.";
674
Brett Wilsonecb80982017-07-12 20:34:51675const char kForceTextDirectionName[] = "Force text direction";
676const char kForceTextDirectionDescription[] =
677 "Explicitly force the per-character directionality of UI text to "
678 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
679 "direction of the character language.";
680const char kForceDirectionLtr[] = "Left-to-right";
681const char kForceDirectionRtl[] = "Right-to-left";
682
683const char kForceUiDirectionName[] = "Force UI direction";
684const char kForceUiDirectionDescription[] =
685 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
686 "mode, overriding the default direction of the UI language.";
687
688const char kFramebustingName[] =
689 "Framebusting requires same-origin or a user gesture";
690const char kFramebustingDescription[] =
691 "Don't permit an iframe to navigate the top level browsing context unless "
692 "they are same-origin or the iframe is processing a user gesture.";
693
694const char kGamepadExtensionsName[] = "Gamepad Extensions";
695const char kGamepadExtensionsDescription[] =
696 "Enabling this option allows web applications to access experimental "
697 "extensions to the Gamepad APIs.";
698
sohan3f00ffc2017-07-14 22:28:08699const char kGlCompositedOverlayCandidateQuadBordersName[] =
700 "GL composited overlay candidate quad borders";
701const char kGlCompositedOverlayCandidateQuadBordersDescription[] =
Alex Newcomer43cb7f12017-07-28 17:37:39702 "Renders a border around GL composited overlay candidate quads to help "
703 "debug and study overlay support.";
Brett Wilsonecb80982017-07-12 20:34:51704
705const char kGpuRasterizationMsaaSampleCountName[] =
706 "GPU rasterization MSAA sample count.";
707const char kGpuRasterizationMsaaSampleCountDescription[] =
708 "Specify the number of MSAA samples for GPU rasterization.";
709const char kGpuRasterizationMsaaSampleCountZero[] = "0";
710const char kGpuRasterizationMsaaSampleCountTwo[] = "2";
711const char kGpuRasterizationMsaaSampleCountFour[] = "4";
712const char kGpuRasterizationMsaaSampleCountEight[] = "8";
713const char kGpuRasterizationMsaaSampleCountSixteen[] = "16";
714
715const char kGpuRasterizationName[] = "GPU rasterization";
716const char kGpuRasterizationDescription[] =
717 "Use GPU to rasterize web content. Requires impl-side painting.";
Brett Wilson7b44537e2017-08-18 01:38:28718const char kForceGpuRasterization[] = "Force-enabled for all layers";
Brett Wilsonecb80982017-07-12 20:34:51719
720const char kGoogleProfileInfoName[] = "Google profile name and icon";
721const char kGoogleProfileInfoDescription[] =
722 "Enables using Google information to populate the profile name and icon in "
723 "the avatar menu.";
724
725const char kHarfbuzzRendertextName[] = "HarfBuzz for UI text";
726const char kHarfbuzzRendertextDescription[] =
727 "Enable cross-platform HarfBuzz layout engine for UI text. Doesn't affect "
728 "web content.";
729
730const char kHistoryRequiresUserGestureName[] =
731 "New history entries require a user gesture.";
732const char kHistoryRequiresUserGestureDescription[] =
733 "Require a user gesture to add a history entry.";
734const char kHyperlinkAuditingName[] = "Hyperlink auditing";
735const char kHyperlinkAuditingDescription[] = "Sends hyperlink auditing pings.";
736
737const char kHostedAppQuitNotificationName[] =
738 "Quit notification for hosted apps";
739const char kHostedAppQuitNotificationDescription[] =
740 "Display a notification when quitting Chrome if hosted apps are currently "
741 "running.";
742
743const char kHostedAppShimCreationName[] =
744 "Creation of app shims for hosted apps on Mac";
745const char kHostedAppShimCreationDescription[] =
746 "Create app shims on Mac when creating a hosted app.";
747
Ana-Cosmina Popescuda3bcbe2017-09-22 18:24:48748const char kHtmlBasedUsernameDetectorName[] = "HTML-based username detector";
749const char kHtmlBasedUsernameDetectorDescription[] =
750 "Use HTML-based username detector for the password manager.";
751
Brett Wilsonecb80982017-07-12 20:34:51752const char kIconNtpName[] = "Large icons on the New Tab page";
753const char kIconNtpDescription[] =
754 "Enable the experimental New Tab page using large icons.";
755
756const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
757const char kIgnoreGpuBlacklistDescription[] =
758 "Overrides the built-in software rendering list and enables "
759 "GPU-acceleration on unsupported system configurations.";
760
761const char kImportantSitesInCbdName[] =
762 "Important sites options in clear browsing data dialog";
763const char kImportantSitesInCbdDescription[] =
764 "Include the option to whitelist important sites in the clear browsing "
765 "data dialog.";
766
Brett Wilsonecb80982017-07-12 20:34:51767const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
768const char kInProductHelpDemoModeChoiceDescription[] =
769 "Selects the In-Product Help demo mode.";
770
771const char kJavascriptHarmonyName[] = "Experimental JavaScript";
772const char kJavascriptHarmonyDescription[] =
773 "Enable web pages to use experimental JavaScript features.";
774
775const char kJavascriptHarmonyShippingName[] =
776 "Latest stable JavaScript features";
777const char kJavascriptHarmonyShippingDescription[] =
778 "Some web pages use legacy or non-standard JavaScript extensions that may "
779 "conflict with the latest JavaScript features. This flag allows disabling "
780 "support of those features for compatibility with such pages.";
781
Yutaka Hiranof7f2f632017-09-06 10:40:08782const char kKeepAliveRendererForKeepaliveRequestsName[] =
783 "Keep a renderer alive for keepalive fetch requests";
784const char kKeepAliveRendererForKeepaliveRequestsDescription[] =
785 "Keep a render process alive when the process has a pending fetch request "
786 "with `keepalive' specified.";
787
Brett Wilsonecb80982017-07-12 20:34:51788const char kLcdTextName[] = "LCD text antialiasing";
789const char kLcdTextDescription[] =
790 "If disabled, text is rendered with grayscale antialiasing instead of LCD "
791 "(subpixel) when doing accelerated compositing.";
792
Matt Giucac399982f2017-10-06 07:51:29793const char kLeftToRightUrlsName[] =
794 "Render bidirectional URLs from left to right";
795const char kLeftToRightUrlsDescription[] =
796 "An experimental Bidi URL rendering algorithm where the URL components are "
797 "always shown in order from left to right, regardless of any RTL "
798 "characters. (The contents of each component are still rendered with the "
799 "normal Bidi algorithm.)";
800
Brett Wilsonecb80982017-07-12 20:34:51801const char kLoadMediaRouterComponentExtensionName[] =
802 "Load Media Router Component Extension";
803const char kLoadMediaRouterComponentExtensionDescription[] =
804 "Loads the Media Router component extension at startup.";
805
806const char kManualPasswordGenerationName[] = "Manual password generation.";
807const char kManualPasswordGenerationDescription[] =
808 "Show a 'Generate Password' option on the context menu for all password "
809 "fields.";
810
Dominic Battref27e8762017-08-23 11:16:25811const char kManualPasswordSavingName[] = "Manual password saving.";
812const char kManualPasswordSavingDescription[] =
813 "Show the password manager icon when typing into a password filed. "
814 "Clicking it allows to save the password without submitting the form.";
815
Brett Wilsonecb80982017-07-12 20:34:51816const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
817const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
818const char kMarkHttpAsDangerous[] = "Always mark HTTP as actively dangerous";
Brett Wilsonecb80982017-07-12 20:34:51819
Lei Zhang2eca9082017-10-17 20:42:50820const char kMaterialDesignIncognitoNTPName[] = "Material Design Incognito NTP.";
821const char kMaterialDesignIncognitoNTPDescription[] =
Brett Wilsonecb80982017-07-12 20:34:51822 "If enabled, the Incognito New Tab page uses the new material design with "
823 "a better readable text.";
824
825const char kMediaRemotingName[] = "Media Remoting during Cast Tab Mirroring";
826const char kMediaRemotingDescription[] =
827 "When Casting a tab to a remote device, enabling this turns on an "
828 "optimization that forwards the content bitstream directly to the remote "
829 "device when a video is fullscreened.";
830
831const char kMemoryAblationName[] = "Memory ablation experiment";
832const char kMemoryAblationDescription[] =
833 "Allocates extra memory in the browser process.";
834
835const char kMemoryCoordinatorName[] = "Memory coordinator";
836const char kMemoryCoordinatorDescription[] =
837 "Enable memory coordinator instead of memory pressure listeners.";
838
839const char kMessageCenterNewStyleNotificationName[] = "New style notification";
840const char kMessageCenterNewStyleNotificationDescription[] =
841 "Enables the experiment style of material-design notification";
842
Brett Wilsonecb80982017-07-12 20:34:51843const char kMhtmlGeneratorOptionName[] = "MHTML Generation Option";
844const char kMhtmlGeneratorOptionDescription[] =
845 "Provides experimental options for MHTML file generator.";
846const char kMhtmlSkipNostoreMain[] = "Skips no-store main frame.";
847const char kMhtmlSkipNostoreAll[] = "Skips all no-store resources.";
848
Miguel Casas-Sanchez10769c82017-07-27 23:52:04849const char kMojoVideoEncodeAcceleratorName[] =
850 "Hardware-accelerated video encoder accessed using Mojo IPC";
851const char kMojoVideoEncodeAcceleratorDescription[] =
852 "Use new Mojo IPC to access hardware-accelerated video encoder, where "
853 "available.";
854
Kouhei Ueno08445c22017-09-05 03:58:30855const char kModuleScriptsDynamicImportName[] =
856 "Enable ECMAScript 6 modules dynamic import";
857const char kModuleScriptsDynamicImportDescription[] =
858 "Enables ECMAScript 6 modules dynamic \"import\" syntax support in V8 and "
859 "Blink.";
860
Hiroshige Hayashizaki15c2eb92017-10-20 04:57:05861const char kModuleScriptsImportMetaUrlName[] =
862 "Enable ECMAScript 6 modules import.meta.url";
863const char kModuleScriptsImportMetaUrlDescription[] =
864 "Enables ECMAScript 6 modules import.meta.url syntax support in V8 and "
865 "Blink.";
866
Brett Wilsonecb80982017-07-12 20:34:51867const char kNewAudioRenderingMixingStrategyName[] =
868 "New audio rendering mixing strategy";
869const char kNewAudioRenderingMixingStrategyDescription[] =
870 "Use the new audio rendering mixing strategy.";
871
872const char kNewBookmarkAppsName[] = "The new bookmark app system";
873const char kNewBookmarkAppsDescription[] =
874 "Enables the new system for creating bookmark apps.";
875
Brett Wilsonecb80982017-07-12 20:34:51876const char kNewRemotePlaybackPipelineName[] =
877 "Enable the new remote playback pipeline.";
878const char kNewRemotePlaybackPipelineDescription[] =
879 "Enable the new pipeline for playing media element remotely via "
880 "RemotePlayback API or native controls.";
CJ DiMeglio7b4a199f2017-11-30 01:26:50881const char kUseSurfaceLayerForVideoName[] =
882 "Enable the use of SurfaceLayer objects for videos.";
883const char kUseSurfaceLayerForVideoDescription[] =
884 "Enable compositing onto a Surface instead of a VideoLayer "
885 "for videos.";
Brett Wilsonecb80982017-07-12 20:34:51886
887const char kNewUsbBackendName[] = "Enable new USB backend";
888const char kNewUsbBackendDescription[] =
889 "Enables the new experimental USB backend for Windows.";
vabr0215a8e2017-03-28 12:47:34890
brettw5f9c1642017-05-14 17:12:48891const char kNostatePrefetchName[] = "No-State Prefetch";
vabr0215a8e2017-03-28 12:47:34892const char kNostatePrefetchDescription[] =
893 R"*("No-State Prefetch" pre-downloads resources to improve load )*"
894 R"*(times. "Prerender" does a full pre-rendering of the page, to )*"
895 R"*(improve load times even more. "Simple Load" does nothing and is )*"
896 R"*(similar to disabling the feature, but collects more metrics for )*"
897 R"*(comparison purposes.)*";
898
Brett Wilsonecb80982017-07-12 20:34:51899const char kNotificationsNativeFlagName[] = "Enable native notifications.";
900const char kNotificationsNativeFlagDescription[] =
901 "Enable support for using the native notification toasts and notification "
902 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:34903
Zentaro Kavanaghbad511c2017-10-18 22:29:00904#if defined(OS_POSIX)
905const char kNtlmV2EnabledName[] = "Enable NTLMv2 Authentication";
906const char kNtlmV2EnabledDescription[] =
907 "Enable NTLMv2 HTTP Authentication. This disables NTLMv1 support.";
908#endif
909
Brett Wilsonecb80982017-07-12 20:34:51910const char kNumRasterThreadsName[] = "Number of raster threads";
911const char kNumRasterThreadsDescription[] =
912 "Specify the number of raster threads.";
913const char kNumRasterThreadsOne[] = "1";
914const char kNumRasterThreadsTwo[] = "2";
915const char kNumRasterThreadsThree[] = "3";
916const char kNumRasterThreadsFour[] = "4";
917
918const char kOfferStoreUnmaskedWalletCardsName[] =
919 "Google Payments card saving checkbox";
920const char kOfferStoreUnmaskedWalletCardsDescription[] =
921 "Show the checkbox to offer local saving of a credit card downloaded from "
922 "the server.";
923
924const char kOfflineAutoReloadName[] = "Offline Auto-Reload Mode";
925const char kOfflineAutoReloadDescription[] =
926 "Pages that fail to load while the browser is offline will be "
927 "auto-reloaded when the browser is online again.";
928
929const char kOfflineAutoReloadVisibleOnlyName[] =
930 "Only Auto-Reload Visible Tabs";
931const char kOfflineAutoReloadVisibleOnlyDescription[] =
932 "Pages that fail to load while the browser is offline will only be "
933 "auto-reloaded if their tab is visible.";
934
935const char kOffMainThreadFetchName[] = "Off-main-thread fetch for Web Workers";
936const char kOffMainThreadFetchDescription[] =
937 "If enabled, the resource fetches from worker threads will not be blocked "
938 "by the busy main thread.";
939
940const char kOmniboxDisplayTitleForCurrentUrlName[] =
941 "Include title for the current URL in the omnibox";
942const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
943 "In the event that the omnibox provides suggestions on-focus, the URL of "
944 "the current page is provided as the first suggestion without a title. "
945 "Enabling this flag causes the title to be displayed.";
946
Benoit Lizeab08362c2017-07-19 14:50:54947const char kOmniboxSpareRendererName[] =
948 "Start spare renderer on omnibox focus";
949const char kOmniboxSpareRendererDescription[] =
950 "When the omnibox is focused, start an empty spare renderer. This can "
951 "speed up the load of the navigation from the omnibox.";
952
Tommy C. Li8875a442017-08-23 00:10:59953const char kOmniboxUIElideSuggestionUrlAfterHostName[] =
954 "Omnibox UI Elide Suggestion URL After Host";
955const char kOmniboxUIElideSuggestionUrlAfterHostDescription[] =
956 "Elides the path, query, and ref of suggested URLs in the Omnibox "
957 "dropdown.";
958
Brett Wilsonecb80982017-07-12 20:34:51959const char kOmniboxUIHideSuggestionUrlSchemeName[] =
960 "Omnibox UI Hide Suggestion URL Scheme";
961const char kOmniboxUIHideSuggestionUrlSchemeDescription[] =
962 "Elides the schemes of suggested URLs in the Omnibox dropdown.";
963
964const char kOmniboxUIHideSuggestionUrlTrivialSubdomainsName[] =
965 "Omnibox UI Hide Suggestion URL Trivial Subdomains";
966const char kOmniboxUIHideSuggestionUrlTrivialSubdomainsDescription[] =
967 "Elides trivially informative subdomains from suggested URLs in the "
968 "Omnibox dropdown (e.g. www. and m.).";
969
970const char kOmniboxUIMaxAutocompleteMatchesName[] =
971 "Omnibox UI Max Autocomplete Matches";
972
973const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
974 "Changes the maximum number of autocomplete matches displayed in the "
975 "Omnibox UI.";
976
977const char kOmniboxUINarrowDropdownName[] = "Omnibox UI Narrow Dropdown";
978const char kOmniboxUINarrowDropdownDescription[] =
979 "Makes the suggestions dropdown width match the omnibox width.";
980
Justin Donnelly65c9e8b2017-10-01 05:15:01981const char kOmniboxUIShowSuggestionFaviconsName[] =
982 "Omnibox UI Show Suggestion Favicons";
983const char kOmniboxUIShowSuggestionFaviconsDescription[] =
984 "Shows favicons instead of generic vector icons for URL suggestions in the "
985 "Omnibox dropdown.";
986
987const char kOmniboxUISwapTitleAndUrlName[] = "Omnibox UI Swap Title and URL";
988const char kOmniboxUISwapTitleAndUrlDescription[] =
989 "In the omnibox dropdown, shows titles before URLs when both are "
990 "available.";
991
Brett Wilsonecb80982017-07-12 20:34:51992const char kOmniboxUIVerticalLayoutName[] = "Omnibox UI Vertical Layout";
993const char kOmniboxUIVerticalLayoutDescription[] =
994 "Displays Omnibox sugestions in 2 lines - title over origin.";
995
996const char kOmniboxUIVerticalMarginName[] = "Omnibox UI Vertical Margin";
997const char kOmniboxUIVerticalMarginDescription[] =
998 "Changes the vertical margin in the Omnibox UI.";
999
1000const char kOriginTrialsName[] = "Origin Trials";
1001const char kOriginTrialsDescription[] =
1002 "Enables origin trials for controlling access to feature/API experiments.";
1003
Becca Hughes930d8cd2017-10-02 11:09:121004const char kOverflowIconsForMediaControlsName[] =
1005 "Icons on Media Controls Overflow Menu";
1006const char kOverflowIconsForMediaControlsDescription[] =
1007 "Displays icons on the overflow menu of the native media controls";
1008
Brett Wilsonecb80982017-07-12 20:34:511009const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
1010const char kOverlayScrollbarsDescription[] =
1011 "Enable the experimental overlay scrollbars implementation. You must also "
1012 "enable threaded compositing to have the scrollbars animate.";
1013
chaopenge8aa016b2017-08-24 15:20:191014const char kOverlayScrollbarsFlashAfterAnyScrollUpdateName[] =
1015 "Flash Overlay Scrollbars After Any Scroll Update";
1016const char kOverlayScrollbarsFlashAfterAnyScrollUpdateDescription[] =
1017 "Flash Overlay Scrollbars After any scroll update happends in page. You"
1018 " must also enable Overlay Scrollbars.";
1019
chaopeng343678022017-08-24 18:45:001020const char kOverlayScrollbarsFlashWhenMouseEnterName[] =
1021 "Flash Overlay Scrollbars When Mouse Enter";
1022const char kOverlayScrollbarsFlashWhenMouseEnterDescription[] =
1023 "Flash Overlay Scrollbars When Mouse Enter a scrollable area. You must also"
1024 " enable Overlay Scrollbars.";
1025
Claudio Magni81326f92017-09-01 05:21:181026const char kUseNewAcceptLanguageHeaderName[] = "Use new Accept-Language header";
1027const char kUseNewAcceptLanguageHeaderDescription[] =
1028 "Adds the base language code after other corresponding language+region "
1029 "codes. This ensures that users receive content in their preferred "
1030 "language.";
1031
Brett Wilsonecb80982017-07-12 20:34:511032const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
1033const char kOverscrollHistoryNavigationDescription[] =
1034 "Experimental history navigation in response to horizontal overscroll.";
1035const char kOverscrollHistoryNavigationSimpleUi[] = "Simple";
1036
1037const char kOverscrollStartThresholdName[] = "Overscroll start threshold";
1038const char kOverscrollStartThresholdDescription[] =
1039 "Changes overscroll start threshold relative to the default value.";
1040const char kOverscrollStartThreshold133Percent[] = "133%";
1041const char kOverscrollStartThreshold166Percent[] = "166%";
1042const char kOverscrollStartThreshold200Percent[] = "200%";
1043
Xing Liu5400a002017-09-15 21:48:291044const char kParallelDownloadingName[] = "Parallel downloading";
1045const char kParallelDownloadingDescription[] =
Yannic Bonenbergera32f9902017-11-20 18:47:061046 "Enable parallel downloading to accelerate download speed.";
Xing Liu5400a002017-09-15 21:48:291047
Brett Wilsonecb80982017-07-12 20:34:511048const char kPassiveEventListenerDefaultName[] =
1049 "Passive Event Listener Override";
1050const char kPassiveEventListenerDefaultDescription[] =
1051 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
1052 "haven't requested otherwise) to be treated as passive. This will break "
1053 "touch/wheel behavior on some websites but is useful for demonstrating the "
1054 "potential performance benefits of adopting passive event listeners.";
1055const char kPassiveEventListenerTrue[] = "True (when unspecified)";
1056const char kPassiveEventListenerForceAllTrue[] = "Force All True";
1057
1058const char kPassiveEventListenersDueToFlingName[] =
1059 "Touch Event Listeners Passive Default During Fling";
1060const char kPassiveEventListenersDueToFlingDescription[] =
1061 "Forces touchstart, and first touchmove per scroll event listeners during "
1062 "fling to be treated as passive.";
1063
1064const char kPassiveDocumentEventListenersName[] =
1065 "Document Level Event Listeners Passive Default";
1066const char kPassiveDocumentEventListenersDescription[] =
1067 "Forces touchstart, and touchmove event listeners on document level "
1068 "targets (which haven't requested otherwise) to be treated as passive.";
1069
1070const char kPasswordForceSavingName[] = "Force-saving of passwords";
1071const char kPasswordForceSavingDescription[] =
1072 "Allow the user to manually enforce password saving instead of relying on "
1073 "password manager's heuristics.";
1074
1075const char kPasswordGenerationName[] = "Password generation";
1076const char kPasswordGenerationDescription[] =
1077 "Allow the user to have Chrome generate passwords when it detects account "
1078 "creation pages.";
1079
Vaclav Brozekd8a3f542017-11-16 14:21:131080const char kPasswordExportName[] = "Password export";
1081const char kPasswordExportDescription[] =
1082 "Export functionality in password settings.";
1083
1084const char kPasswordImportName[] = "Password import";
1085const char kPasswordImportDescription[] =
1086 "Import functionality in password settings.";
Brett Wilsonecb80982017-07-12 20:34:511087
Maxim Kolosovskiyd97b94612017-09-19 20:10:391088const char kPasswordSelectionName[] =
1089 "Password selection and eye icon in prompt";
1090const char kPasswordSelectionDescription[] =
1091 "Show a password selector and an eye icon in prompt";
1092
Brett Wilsonecb80982017-07-12 20:34:511093const char kPermissionActionReportingName[] = "Permission Action Reporting";
1094const char kPermissionActionReportingDescription[] =
1095 "Enables permission action reporting to Safe Browsing servers for opted in "
1096 "users.";
1097
1098const char kPermissionsBlacklistName[] = "Permissions Blacklist";
1099const char kPermissionsBlacklistDescription[] =
1100 "Enables the Permissions Blacklist, which blocks permissions for "
1101 "blacklisted sites for Safe Browsing users.";
1102
1103const char kPinchScaleName[] = "Pinch scale";
1104const char kPinchScaleDescription[] =
1105 "Enables experimental support for scale using pinch.";
1106
Brett Wilsonecb80982017-07-12 20:34:511107const char kPrintPdfAsImageName[] = "Print Pdf as Image";
1108const char kPrintPdfAsImageDescription[] =
1109 "If enabled, an option to print PDF files as images will be available in "
1110 "print preview.";
1111
1112const char kPrintPreviewRegisterPromosName[] =
1113 "Print Preview Registration Promos";
1114const char kPrintPreviewRegisterPromosDescription[] =
1115 "Enable registering unregistered cloud printers from print preview.";
1116
1117const char kProtectSyncCredentialName[] = "Autofill sync credential";
1118const char kProtectSyncCredentialDescription[] =
1119 "How the password manager handles autofill for the sync credential.";
1120
1121const char kProtectSyncCredentialOnReauthName[] =
1122 "Autofill sync credential only for transactional reauth pages";
1123const char kProtectSyncCredentialOnReauthDescription[] =
1124 "How the password manager handles autofill for the sync credential only "
1125 "for transactional reauth pages.";
1126
Mohsen Izadi93faac12017-07-29 04:45:151127const char kPullToRefreshName[] = "Pull-to-refresh gesture";
1128const char kPullToRefreshDescription[] =
1129 "Pull-to-refresh gesture in response to vertical overscroll.";
1130
Brett Wilsonecb80982017-07-12 20:34:511131const char kPushApiBackgroundModeName[] = "Enable Push API background mode";
1132const char kPushApiBackgroundModeDescription[] =
1133 "Enable background mode for the Push API. This allows Chrome to continue "
1134 "running after the last window is closed, and to launch at OS startup, if "
1135 "the Push API needs it.";
1136
Piotr Swigon46929d12017-08-11 07:16:331137const char kPwaMinimalUiName[] = "Minimal-UI display mode for PWAs";
1138const char kPwaMinimalUiDescription[] =
1139 "Enables support for Minimal-UI display mode for installed PWAs";
1140
Brett Wilsonecb80982017-07-12 20:34:511141const char kQuicName[] = "Experimental QUIC protocol";
1142const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1143
1144const char kReducedReferrerGranularityName[] =
1145 "Reduce default 'referer' header granularity.";
1146const char kReducedReferrerGranularityDescription[] =
1147 "If a page hasn't set an explicit referrer policy, setting this flag will "
1148 "reduce the amount of information in the 'referer' header for cross-origin "
1149 "requests.";
1150
Mihai Sardarescu6d0f5b72017-10-30 11:24:381151const char kRemoveUsageOfDeprecatedGaiaSigninEndpointName[] =
1152 "Remove usage of the deprecated GAIA sign-in endpoint";
1153const char kRemoveUsageOfDeprecatedGaiaSigninEndpointDescription[] =
1154 "The Gaia sign-in endpoint used for full-tab sign-in page is deprecated. "
1155 "This flags controls wheter it should no longer be used during a sign-in "
1156 " flow.";
1157
Yutaka Hirano4c0f2f5d452017-11-17 04:24:351158const char kRendererSideResourceSchedulerName[] =
1159 "Renderer side ResourceScheduler";
1160const char kRendererSideResourceSchedulerDescription[] =
1161 "Migrate some ResourceScheduler functionalities to renderer";
1162
Brett Wilsonecb80982017-07-12 20:34:511163const char kRequestTabletSiteName[] =
1164 "Request tablet site option in the settings menu";
1165const char kRequestTabletSiteDescription[] =
1166 "Allows the user to request tablet site. Web content is often optimized "
1167 "for tablet devices. When this option is selected the user agent string is "
1168 "changed to indicate a tablet device. Web content optimized for tablets is "
1169 "received there after for the current tab.";
1170
1171const char kResetAppListInstallStateName[] =
1172 "Reset the App Launcher install state on every restart.";
1173const char kResetAppListInstallStateDescription[] =
1174 "Reset the App Launcher install state on every restart. While this flag is "
1175 "set, Chrome will forget the launcher has been installed each time it "
1176 "starts. This is used for testing the App Launcher install flow.";
1177
1178const char kResourceLoadSchedulerName[] = "Use the resource load scheduler";
1179const char kResourceLoadSchedulerDescription[] =
1180 "Uses the resource load scheduler in blink to schedule and throttle "
1181 "resource load requests.";
1182
Brett Wilsonecb80982017-07-12 20:34:511183const char kSafeSearchUrlReportingName[] = "SafeSearch URLs reporting.";
1184const char kSafeSearchUrlReportingDescription[] =
1185 "If enabled, inappropriate URLs can be reported back to SafeSearch.";
1186
1187const char kSaveasMenuLabelExperimentName[] =
1188 "Switch 'Save as' menu labels to 'Download'";
1189const char kSaveasMenuLabelExperimentDescription[] =
1190 "Enables an experiment to switch menu labels that use 'Save as...' to "
1191 "'Download'.";
1192
1193const char kSavePageAsMhtmlName[] = "Save Page as MHTML";
1194const char kSavePageAsMhtmlDescription[] =
1195 "Enables saving pages as MHTML: a single text file containing HTML and all "
1196 "sub-resources.";
1197
Nate Chapin9638e7102017-09-20 22:11:011198const char kSavePreviousDocumentResourcesName[] =
1199 "Save Previous Document Resources";
1200const char kSavePreviousDocumentResourcesDescription[] =
1201 "Saves an old document's cached resources until the specified point in the "
1202 "next document's lifecycle.";
1203const char kSavePreviousDocumentResourcesNever[] =
1204 "Don't explicitly save resources";
1205const char kSavePreviousDocumentResourcesUntilOnDOMContentLoaded[] =
1206 "Save resources until onDOMContentLoaded completes";
1207const char kSavePreviousDocumentResourcesUntilOnLoad[] =
1208 "Save resources until onload completes";
1209
Brett Wilsonecb80982017-07-12 20:34:511210const char kScrollPredictionName[] = "Scroll prediction";
1211const char kScrollPredictionDescription[] =
1212 "Predicts the finger's future position during scrolls allowing time to "
1213 "render the frame before the finger is there.";
1214
1215const char kSecondaryUiMd[] =
1216 "Material Design in the rest of the browser's native UI";
1217const char kSecondaryUiMdDescription[] =
1218 "Extends the --top-chrome-md setting to secondary UI (bubbles, dialogs, "
1219 "etc.). On Mac, this enables MacViews, which uses toolkit-views for native "
1220 "browser dialogs.";
1221
1222const char kServiceWorkerNavigationPreloadName[] =
1223 "Service worker navigation preload.";
1224const char kServiceWorkerNavigationPreloadDescription[] =
1225 "Enable web pages to use the experimental service worker navigation "
1226 "preload API.";
1227
gogeraldd5061b592017-09-06 23:39:551228const char kServiceWorkerPaymentAppsName[] = "Service Worker payment apps";
1229const char kServiceWorkerPaymentAppsDescription[] =
1230 "Enable Service Worker applications to integrate as payment apps";
1231
Makoto Shimazud9f333c2017-08-08 07:23:171232const char kServiceWorkerScriptStreamingName[] =
1233 "Service worker script streaming.";
1234const char kServiceWorkerScriptStreamingDescription[] =
1235 "Installed scripts for a service worker are sent over a dedicated "
1236 "message pipe and data pipes, and that is never be blocked on the main "
1237 "thread.";
1238
Tsuyoshi Horobcb1c642017-11-24 16:32:141239const char kServiceWorkerScriptFullCodeCacheName[] =
1240 "Service worker script full code cache.";
1241const char kServiceWorkerScriptFullCodeCacheDescription[] =
1242 "Generate V8 full code cache of Service Worker scripts while installing.";
1243
Brett Wilsonecb80982017-07-12 20:34:511244const char kSettingsWindowName[] = "Show settings in a window";
1245const char kSettingsWindowDescription[] =
1246 "Settings will be shown in a dedicated window instead of as a browser tab.";
1247
Trent Apted750ba7022017-10-23 13:36:251248const char kShowAllDialogsWithViewsToolkitName[] =
1249 "Show all dialogs with Views toolkit";
1250const char kShowAllDialogsWithViewsToolkitDescription[] =
1251 "All browser dialogs will be shown using the Views toolkit rather than "
1252 "Cocoa. This requires <a href=\"#secondary-ui-md\">#secondary-ui-md</a>.";
1253
Brett Wilsonecb80982017-07-12 20:34:511254const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
1255const char kShowAutofillSignaturesDescription[] =
1256 "Annotates web forms with Autofill signatures as HTML attributes.";
1257
1258const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
1259const char kShowAutofillTypePredictionsDescription[] =
1260 "Annotates web forms with Autofill field type predictions as placeholder "
1261 "text.";
1262
1263const char kShowOverdrawFeedbackName[] = "Show overdraw feedback";
1264const char kShowOverdrawFeedbackDescription[] =
1265 "Visualize overdraw by color-coding elements based on if they have other "
1266 "elements drawn underneath.";
1267
yiyixbdfa9a0b2017-10-23 22:21:471268const char kEnableDrawOcclusionName[] = "Enable draw occlusion";
1269const char kEnableDrawOcclusionDescription[] =
1270 "Enable the system to use draw occlusion to skip draw quads when they are "
1271 "not shown on the screen.";
1272
Brett Wilsonecb80982017-07-12 20:34:511273const char kShowSavedCopyName[] = "Show Saved Copy Button";
1274const char kShowSavedCopyDescription[] =
1275 "When a page fails to load, if a stale copy of the page exists in the "
1276 "browser cache, a button will be presented to allow the user to load that "
1277 "stale copy. The primary enabling choice puts the button in the most "
1278 "salient position on the error page; the secondary enabling choice puts it "
1279 "secondary to the reload button.";
1280const char kEnableShowSavedCopyPrimary[] = "Enable: Primary";
1281const char kEnableShowSavedCopySecondary[] = "Enable: Secondary";
1282const char kDisableShowSavedCopy[] = "Disable";
1283
Brett Wilsonecb80982017-07-12 20:34:511284const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1285const char kSilentDebuggerExtensionApiDescription[] =
1286 "Do not show the infobar when an extension attaches to a page via "
1287 "chrome.debugger API. This is required to debug extension background "
1288 "pages.";
1289
1290const char kSimpleCacheBackendName[] = "Simple Cache for HTTP";
1291const char kSimpleCacheBackendDescription[] =
1292 "The Simple Cache for HTTP is a new cache. It relies on the filesystem for "
1293 "disk space allocation.";
1294
1295const char kSimplifiedFullscreenUiName[] =
1296 "Simplified full screen / mouse lock UI.";
1297const char kSimplifiedFullscreenUiDescription[] =
1298 "A simplified new user experience when entering page-triggered full screen "
1299 "or mouse pointer lock states.";
1300
1301const char kSingleClickAutofillName[] = "Single-click autofill";
1302const char kSingleClickAutofillDescription[] =
1303 "Make autofill suggestions on initial mouse click on a form element.";
1304
Brett Wilsonecb80982017-07-12 20:34:511305const char kSitePerProcessName[] = "Strict site isolation";
1306const char kSitePerProcessDescription[] =
Nasko Oskov6042073fe2017-12-08 20:35:171307 "Experimental security mode that ensures each renderer process "
Brett Wilsonecb80982017-07-12 20:34:511308 "contains pages from at most one site. In this mode, out-of-process "
1309 "iframes will be used whenever an iframe is cross-site.";
1310
1311const char kSiteSettings[] = "Site settings with All sites and Site details";
1312const char kSiteSettingsDescription[] =
1313 "Adds new ways of viewing Site settings.";
1314
1315const char kSlimmingPaintInvalidationName[] = "Slimming paint invalidation.";
1316const char kSlimmingPaintInvalidationDescription[] =
1317 "Whether to enable a new paint invalidation system.";
1318
1319const char kSmoothScrollingName[] = "Smooth Scrolling";
1320const char kSmoothScrollingDescription[] =
1321 "Animate smoothly when scrolling page content.";
1322
1323const char kSoftwareRasterizerName[] = "3D software rasterizer";
1324const char kSoftwareRasterizerDescription[] =
1325 "Fall back to a 3D software rasterizer when the GPU cannot be used.";
1326
Tommy Steimel77704be2017-08-28 22:14:401327const char kSoundContentSettingName[] = "Sound content setting";
1328const char kSoundContentSettingDescription[] =
1329 "Enable site-wide muting in content settings and tab strip context menu.";
1330
Alexandr Ilinf0500ed32017-09-27 21:12:361331const char kSpeculativePreconnectName[] = "Enable new preconnect predictor";
1332const char kSpeculativePreconnectDescription[] =
1333 "Enable the new implementation of preconnect and DNS preresolve. "
1334 "\"Learning\" means that only database construction is enabled, "
1335 "\"Preconnect\" enables both learning and preconnect and disables the "
1336 "existing implementation. \"No preconnect\" disables both implementations.";
1337
Brett Wilsonecb80982017-07-12 20:34:511338const char kSpeculativePrefetchName[] = "Speculative Prefetch";
vabr0215a8e2017-03-28 12:47:341339const char kSpeculativePrefetchDescription[] =
1340 R"*("Speculative Prefetch" fetches likely resources early to improve )*"
1341 R"*(load times, based on a local database (see chrome://predictors). )*"
1342 R"*("Learning" means that only the database construction is enabled, )*"
1343 R"*("Prefetching" that learning and prefetching are enabled.)*";
1344
Justin Donnelly4e448cb2017-07-07 21:32:131345const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
1346 "Enable speculative start of a service worker when a search is predicted.";
Justin Donnelly4e448cb2017-07-07 21:32:131347const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
1348 "If enabled, when the user enters text in the omnibox that looks like a "
1349 "a query, any service worker associated with the search engine the query "
1350 "will be sent to is started early.";
1351
Brett Wilsonecb80982017-07-12 20:34:511352const char kSpellingFeedbackFieldTrialName[] = "Spelling Feedback Field Trial";
1353const char kSpellingFeedbackFieldTrialDescription[] =
1354 "Enable the field trial for sending user feedback to spelling service.";
horo201d49492017-05-19 05:31:401355
Brett Wilsonecb80982017-07-12 20:34:511356const char kSuggestionsWithSubStringMatchName[] =
1357 "Substring matching for Autofill suggestions";
1358const char kSuggestionsWithSubStringMatchDescription[] =
1359 "Match Autofill suggestions based on substrings (token prefixes) rather "
1360 "than just prefixes.";
vabr0215a8e2017-03-28 12:47:341361
Brett Wilsonecb80982017-07-12 20:34:511362const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1363const char kSyncSandboxDescription[] =
1364 "Connects to the testing server for Chrome Sync.";
vabr0215a8e2017-03-28 12:47:341365
Brett Wilsonecb80982017-07-12 20:34:511366const char kTabAudioMutingName[] = "Tab audio muting UI control";
1367const char kTabAudioMutingDescription[] =
1368 "When enabled, the audio indicators in the tab strip double as tab audio "
1369 "mute controls. This also adds commands in the tab context menu for "
1370 "quickly muting multiple selected tabs.";
vabr0215a8e2017-03-28 12:47:341371
Christian Dullweberd0d96f02017-09-13 09:22:511372const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1373const char kTabsInCbdDescription[] =
1374 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
1375
Becky Zhou99c22802017-10-19 05:09:271376const char kTabModalJsDialogName[] = "Auto-dismissing JavaScript Dialogs";
1377const char kTabModalJsDialogDescription[] =
1378 "If enabled, the JavaScript dialog will be auto dismissable when switching"
1379 " tab.";
1380
Brett Wilsonecb80982017-07-12 20:34:511381const char kTcpFastOpenName[] = "TCP Fast Open";
1382const char kTcpFastOpenDescription[] =
1383 "Enable the option to send extra authentication information in the initial "
1384 "SYN packet for a previously connected client, allowing faster data send "
1385 "start.";
vabr0215a8e2017-03-28 12:47:341386
Brett Wilsonecb80982017-07-12 20:34:511387const char kTopChromeMd[] = "UI Layout for the browser's top chrome";
1388const char kTopChromeMdDescription[] =
1389 R"*(Toggles between normal and touch (formerly "hybrid") layouts.)*";
1390const char kTopChromeMdMaterial[] = "Normal";
Eugene Girard42dedf722017-10-12 21:07:531391const char kTopChromeMdMaterialAuto[] = "Auto";
Brett Wilsonecb80982017-07-12 20:34:511392const char kTopChromeMdMaterialHybrid[] = "Touch";
vabr0215a8e2017-03-28 12:47:341393
Brett Wilsonecb80982017-07-12 20:34:511394const char kThreadedScrollingName[] = "Threaded scrolling";
1395const char kThreadedScrollingDescription[] =
1396 "Threaded handling of scroll-related input events. Disabling this will "
1397 "force all such scroll events to be handled on the main thread. Note that "
1398 "this can dramatically hurt scrolling performance of most websites and is "
1399 "intended for testing purposes only.";
1400
Steven Valdez4584b2482017-07-14 01:11:571401const char kTLS13VariantName[] = "TLS 1.3";
1402const char kTLS13VariantDescription[] = "Sets the TLS 1.3 variant used.";
1403const char kTLS13VariantDisabled[] = "Disabled";
Steven Valdez57d88652017-10-05 21:05:111404const char kTLS13VariantDeprecated[] = "Disabled (Deprecated Setting)";
Steven Valdez49408842017-12-13 18:34:481405const char kTLS13VariantDraft22[] = "Enabled (Draft 22)";
Steven Valdezf00f8782017-09-13 18:05:281406const char kTLS13VariantExperiment2[] = "Enabled (Experiment 2)";
Steven Valdez4584b2482017-07-14 01:11:571407
Brett Wilsonecb80982017-07-12 20:34:511408const char kTopDocumentIsolationName[] = "Top document isolation";
1409const char kTopDocumentIsolationDescription[] =
1410 "Highly experimental performance mode where cross-site iframes are kept in "
1411 "a separate process from the top document. In this mode, iframes from "
1412 "different third-party sites will be allowed to share a process.";
1413
Dominick Ng8896b1cd2017-10-17 23:24:361414const char kTopSitesFromSiteEngagementName[] = "Top Sites from Site Engagement";
1415const char kTopSitesFromSiteEngagementDescription[] =
1416 "Enable Top Sites on the New Tab Page to be sourced and sorted using site "
1417 "engagement.";
1418
Brett Wilsonecb80982017-07-12 20:34:511419const char kTouchAdjustmentName[] = "Touch adjustment";
1420const char kTouchAdjustmentDescription[] =
1421 "Refine the position of a touch gesture in order to compensate for touches "
1422 "having poor resolution compared to a mouse.";
1423
1424const char kTouchDragDropName[] = "Touch initiated drag and drop";
1425const char kTouchDragDropDescription[] =
1426 "Touch drag and drop can be initiated through long press on a draggable "
1427 "element.";
1428
1429const char kTouchEventsName[] = "Touch Events API";
1430const char kTouchEventsDescription[] =
1431 "Force Touch Events API feature detection to always be enabled or "
1432 "disabled, or to be enabled when a touchscreen is detected on startup "
1433 "(Automatic, the default).";
1434
1435const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
1436const char kTouchSelectionStrategyDescription[] =
1437 "Controls how text selection granularity changes when touch text selection "
1438 "handles are dragged. Non-default behavior is experimental.";
1439const char kTouchSelectionStrategyCharacter[] = "Character";
1440const char kTouchSelectionStrategyDirection[] = "Direction";
1441
1442const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
1443const char kTraceUploadUrlDescription[] =
1444 "This is to be used in conjunction with the enable-navigation-tracing "
1445 "flag. Please select the label that best describes the recorded traces. "
1446 "This will choose the destination the traces are uploaded to. If you are "
1447 "not sure, select other. If left empty, no traces will be uploaded.";
1448const char kTraceUploadUrlChoiceOther[] = "Other";
1449const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1450const char kTraceUploadUrlChoiceQa[] = "QA";
1451const char kTraceUploadUrlChoiceTesting[] = "Testing";
1452
1453const char kTranslate2016q2UiName[] = "Translate 2016Q2 UI";
1454const char kTranslate2016q2UiDescription[] =
1455 "Improved triggering logic and look for Translate Bubble UI";
1456
Philippe Hamel7fdaa452017-09-29 17:22:491457const char kTranslateRankerEnforcementName[] =
1458 "Enforce TranslateRanker decisions";
1459const char kTranslateRankerEnforcementDescription[] =
1460 "Improved Translate UI triggering logic. TranslateRanker decides whether "
1461 "or not Translate UI should be triggered in a given context.";
1462
Brett Wilsonecb80982017-07-12 20:34:511463const char kTrySupportedChannelLayoutsName[] =
1464 "Causes audio output streams to check if channel layouts other than the "
1465 "default hardware layout are available.";
1466const char kTrySupportedChannelLayoutsDescription[] =
1467 "Causes audio output streams to check if channel layouts other than the "
1468 "default hardware layout are available. Turning this on will allow the OS "
1469 "to do stereo to surround expansion if supported. May expose third party "
1470 "driver bugs, use with caution.";
1471
1472const char kUiPartialSwapName[] = "Partial swap";
1473const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
1474
Chris Pickel3a227ae62017-08-24 10:47:261475const char kUseDdljsonApiName[] = "Use new ddljson API for Doodles";
1476const char kUseDdljsonApiDescription[] =
1477 "Enables the new ddljson API to fetch Doodles for the NTP.";
1478
Becca Hughes59c05b42017-11-03 13:11:581479const char kUseModernMediaControlsName[] = "New Media Controls";
1480const char kUseModernMediaControlsDescription[] =
1481 "Enables the new style native media controls.";
1482
Mustaq Ahmedc646c0a2017-10-20 20:08:301483const char kUserActivationV2Name[] = "User Activation v2";
1484const char kUserActivationV2Description[] =
1485 "Enable simple user activation for APIs that are otherwise controlled by "
1486 "user gesture tokens.";
1487
Brett Wilsonecb80982017-07-12 20:34:511488const char kUserConsentForExtensionScriptsName[] =
1489 "User consent for extension scripts";
1490const char kUserConsentForExtensionScriptsDescription[] =
1491 "Require user consent for an extension running a script on the page, if "
1492 "the extension requested permission to run on all urls.";
1493
1494const char kUseSuggestionsEvenIfFewFeatureName[] =
1495 "Disable minimum for server-side tile suggestions on NTP.";
1496const char kUseSuggestionsEvenIfFewFeatureDescription[] =
1497 "Request server-side suggestions even if there are only very few of them "
1498 "and use them for tiles on the New Tab Page.";
1499
1500const char kV8CacheOptionsName[] = "V8 caching mode.";
1501const char kV8CacheOptionsDescription[] =
1502 "Caching mode for the V8 JavaScript engine.";
1503const char kV8CacheOptionsParse[] = "Cache V8 parser data.";
1504const char kV8CacheOptionsCode[] = "Cache V8 compiler data.";
1505
Hitoshi Yoshida3e5db562017-09-11 02:31:081506const char kV8ContextSnapshotName[] = "Use a snapshot to create V8 contexts.";
1507const char kV8ContextSnapshotDescription[] =
1508 "Sets to use a snapshot to create V8 contexts in frame creation.";
1509
Michael Hablich896d52662017-10-23 15:59:571510const char kV8VmFutureName[] = "Future V8 VM features";
1511const char kV8VmFutureDescription[] =
1512 "This enables upcoming and experimental V8 VM features. "
1513 "This flag does not enable experimental JavaScript features.";
1514
Brett Wilsonecb80982017-07-12 20:34:511515const char kVibrateRequiresUserGestureName[] =
1516 "Requiring user gesture for the Vibration API";
1517const char kVibrateRequiresUserGestureDescription[] =
1518 "Block the Vibration API if no user gesture has been received on the frame "
1519 "or any embedded frame.";
1520
1521const char kVideoFullscreenOrientationLockName[] =
1522 "Lock screen orientation when playing a video fullscreen.";
1523const char kVideoFullscreenOrientationLockDescription[] =
1524 "Lock the screen orientation of the device to match video orientation when "
1525 "a video goes fullscreen. Only on phones.";
1526
1527const char kVideoRotateToFullscreenName[] =
1528 "Rotate-to-fullscreen gesture for videos.";
1529const char kVideoRotateToFullscreenDescription[] =
1530 "Enter/exit fullscreen when device is rotated to/from the orientation of "
1531 "the video. Only on phones.";
1532
1533const char kWalletServiceUseSandboxName[] =
1534 "Use Google Payments sandbox servers";
1535const char kWalletServiceUseSandboxDescription[] =
1536 "For developers: use the sandbox service for Google Payments API calls.";
1537
Brett Wilsonecb80982017-07-12 20:34:511538const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
1539const char kWebglDraftExtensionsDescription[] =
1540 "Enabling this option allows web applications to access the WebGL "
1541 "Extensions that are still in draft status.";
1542
1543const char kWebMidiName[] = "Web MIDI API";
1544const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
1545
1546const char kWebPaymentsName[] = "Web Payments";
1547const char kWebPaymentsDescription[] =
1548 "Enable Web Payments API integration, a JavaScript API for merchants.";
1549
Mathieu Perreault51339b82017-07-20 17:06:051550const char kWebPaymentsModifiersName[] = "Enable web payment modifiers";
1551const char kWebPaymentsModifiersDescription[] =
1552 "If the website provides modifiers in the payment request, show the custom "
1553 "total for each payment instrument, update the shopping cart when "
1554 "instruments are switched, and send modified payment method specific data "
1555 "to the payment app.";
1556
Brett Wilsonecb80982017-07-12 20:34:511557const char kWebrtcEchoCanceller3Name[] = "WebRTC Echo Canceller 3.";
1558const char kWebrtcEchoCanceller3Description[] =
1559 "Experimental WebRTC echo canceller (AEC3).";
1560
1561const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
1562const char kWebrtcHwDecodingDescription[] =
1563 "Support in WebRTC for decoding video streams using platform hardware.";
1564
1565const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
1566const char kWebrtcHwEncodingDescription[] =
1567 "Support in WebRTC for encoding video streams using platform hardware.";
1568
1569const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
1570const char kWebrtcHwH264EncodingDescription[] =
1571 "Support in WebRTC for encoding h264 video streams using platform "
1572 "hardware.";
1573
1574const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
1575const char kWebrtcHwVP8EncodingDescription[] =
1576 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
1577
1578const char kWebrtcSrtpAesGcmName[] =
1579 "Negotiation with GCM cipher suites for SRTP in WebRTC";
1580const char kWebrtcSrtpAesGcmDescription[] =
1581 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
1582
Joachim Bauch4a41d7512017-08-23 14:24:231583const char kWebrtcSrtpEncryptedHeadersName[] =
1584 "Negotiation with encrypted header extensions for SRTP in WebRTC";
1585const char kWebrtcSrtpEncryptedHeadersDescription[] =
1586 "When enabled, WebRTC will try to negotiate encrypted header extensions "
1587 "for SRTP.";
1588
Brett Wilsonecb80982017-07-12 20:34:511589const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
1590const char kWebrtcStunOriginDescription[] =
1591 "When enabled, Stun messages generated by WebRTC will contain the Origin "
1592 "header.";
1593
1594const char kWebvrName[] = "WebVR";
1595const char kWebvrDescription[] =
David Dorwin5a496c32017-11-17 01:45:051596 "Allow web applications to access experimental "
Brandon Jonese9d9b2b2017-12-11 22:20:111597 "Virtual Reality functionality via the WebVR 1.1 API. This feature will "
1598 "eventually be replaced by the WebXR Device API. Warning: Enabling this "
1599 "will also allow WebVR content on insecure origins to access these "
1600 "powerful APIs, and may pose a security risk.";
Brett Wilsonecb80982017-07-12 20:34:511601
David Dorwin5a496c32017-11-17 01:45:051602const char kWebVrExperimentalRenderingName[] =
1603 "WebVR experimental rendering optimizations";
1604const char kWebVrExperimentalRenderingDescription[] =
1605 "Experimental rendering path optimizations for WebVR.";
1606
Brandon Jonese9d9b2b2017-12-11 22:20:111607const char kWebXrName[] = "WebXR Device API";
1608const char kWebXrDescription[] =
1609 "Allow web applications to access experimental APIs to interact with "
1610 "Virtual Reality (VR) and Augmented Reality (AR) devices.";
1611
Brett Wilsonecb80982017-07-12 20:34:511612const char kWifiCredentialSyncName[] = "WiFi credential sync";
1613const char kWifiCredentialSyncDescription[] =
1614 "Enables synchronizing WiFi network settings across devices. When enabled, "
1615 "the WiFi credential datatype is registered with Chrome Sync, and WiFi "
1616 "credentials are synchronized subject to user preferences. (See also, "
1617 "chrome://settings/syncSetup.)";
1618
1619const char kZeroCopyName[] = "Zero-copy rasterizer";
1620const char kZeroCopyDescription[] =
1621 "Raster threads write directly to GPU memory associated with tiles.";
vabr0215a8e2017-03-28 12:47:341622
Brett Wilsonff596952017-07-14 01:06:551623// Android ---------------------------------------------------------------------
1624
1625#if defined(OS_ANDROID)
1626
1627const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
1628const char kAiaFetchingDescription[] =
1629 "Enable intermediate certificate fetching when a server does not provide "
1630 "sufficient certificates to build a chain to a trusted root.";
1631
1632const char kAccessibilityTabSwitcherName[] = "Accessibility Tab Switcher";
1633const char kAccessibilityTabSwitcherDescription[] =
1634 "Enable the accessibility tab switcher for Android.";
1635
Wei-Yin Chen (陳威尹)80683452017-10-02 19:08:251636const char kAllowReaderForAccessibilityName[] = "Reader Mode for Accessibility";
1637const char kAllowReaderForAccessibilityDescription[] =
1638 "Allows Reader Mode on any articles, even if the page is mobile-friendly.";
1639
Brett Wilsonff596952017-07-14 01:06:551640const char kAndroidAutofillAccessibilityName[] = "Autofill Accessibility";
1641const char kAndroidAutofillAccessibilityDescription[] =
1642 "Enable accessibility for autofill popup.";
1643
1644const char kAndroidPaymentAppsName[] = "Android payment apps";
1645const char kAndroidPaymentAppsDescription[] =
1646 "Enable third party Android apps to integrate as payment apps";
1647
Iulia Harasim0b5a4312017-07-21 16:20:501648const char kAndroidSigninPromosName[] = "Signin promos for Android.";
1649const char kAndroidSigninPromosDescription[] =
1650 "New signin promos for Android which will be displayed in content "
1651 "suggestions, Settings, Bookmarks and Recent Tabs.";
1652
Tatiana Gornak38ab3562017-07-28 11:04:181653const char kAndroidViewPasswordsName[] = "Copy and view passwords for Android";
1654const char kAndroidViewPasswordsDescription[] =
1655 "Enables copying and viewing passwords in settings.";
1656
Miriam Gershenson23cfe346e2017-09-28 14:49:291657const char kAsyncDnsName[] = "Async DNS resolver";
1658const char kAsyncDnsDescription[] = "Enables the built-in DNS resolver.";
1659
Brett Wilsonff596952017-07-14 01:06:551660const char kAutofillAccessoryViewName[] =
1661 "Autofill suggestions as keyboard accessory view";
1662const char kAutofillAccessoryViewDescription[] =
1663 "Shows Autofill suggestions on top of the keyboard rather than in a "
1664 "dropdown.";
1665
1666const char kBackgroundLoaderForDownloadsName[] =
1667 "Enables background downloading of pages.";
1668const char kBackgroundLoaderForDownloadsDescription[] =
1669 "Enables downloading pages in the background in case page is not yet "
1670 "loaded in current tab.";
1671
Theresa Wellingtonb9243b22017-12-01 16:23:051672const char kChromeHomeName[] = "Chrome Home";
1673const char kChromeHomeDescription[] =
1674 "Enables Chrome Home on Android. You must restart the browser"
1675 " twice for changes to take effect.";
1676
1677const char kChromeHomeBottomNavLabelsName[] =
1678 "Chrome Home bottom navigation menu item labels.";
1679const char kChromeHomeBottomNavLabelsDescription[] =
1680 "Enables text labels for Chrome Home bottom navigation menu items.";
1681
1682const char kChromeHomeClearUrlOnOpenName[] = "Chrome Home clear url on open";
1683const char kChromeHomeClearUrlOnOpenDescription[] =
1684 "Clear omnibox URL when the bottom sheet is opened.";
1685
Daniel Park825a16f32017-12-08 00:44:261686const char kChromeHomeEnableSurveyName[] = "Enable Chrome Home survey";
1687const char kChromeHomeEnableSurveyDescription[] =
1688 "If enabled, the survey process will allow surveys using sample "
1689 "parameters.";
1690
Theresa Wellingtonb9243b22017-12-01 16:23:051691const char kChromeHomeInactivitySheetExpansionName[] =
1692 "Expansion of Chrome Home bottom sheet on startup";
1693const char kChromeHomeInactivitySheetExpansionDescription[] =
1694 "Expand bottom sheet on startup in Chrome Home after a period of"
1695 " inactivity.";
1696
Theresa Wellington82d6f6ef2017-10-12 02:39:131697const char kChromeHomeOptOutSnackbarName[] = "Chrome Home Opt-out Snackbar";
1698const char kChromeHomeOptOutSnackbarDescription[] =
1699 "Show a snackbar prompting users to take a survey the first time they"
1700 " opt-out of Chrome Home";
1701
Theresa Wellingtonc4cff8a12017-11-28 04:13:181702const char kChromeHomePersistentIphName[] = "Chrome Home Persistent Iph";
1703const char kChromeHomePersistentIphDescription[] =
1704 "Wait to dismiss the Chrome Home IPH until the user inteacts with the "
1705 "toolbar or a timer expires.";
1706
Theresa Wellingtondd71c5c2017-10-02 15:50:381707const char kChromeHomePersonalizedOmniboxSuggestionsName[] =
1708 "Chrome Home Personalized Omnibox Suggestions";
1709const char kChromeHomePersonalizedOmniboxSuggestionsDescription[] =
1710 "Enable personalized omnibox suggestions on focus for Chrome Home.";
1711
Matthew Jones4214d2a12017-09-28 18:35:111712const char kChromeHomePromoName[] = "Chrome Home Promo";
1713const char kChromeHomePromoDescription[] =
Matthew Jonesdcdf51b2017-10-12 20:02:331714 "Enable showing the opt-in/out Chrome Home promo.";
Matthew Jones4214d2a12017-09-28 18:35:111715
Theresa Wellington13977c832017-12-13 16:59:111716const char kChromeHomePullToRefreshIphAtTopName[] =
1717 "Chrome Home Pull-To-Refresh Iph At Top";
1718const char kChromeHomePullToRefreshIphAtTopDescription[] =
1719 "Show the Chrome Home pull-to-refresh help bubble at the top of the screen";
1720
Theresa Wellington306c4cdc2017-12-07 16:43:081721const char kChromeHomeShowGoogleGName[] = "Chrome Home Show Google G";
1722const char kChromeHomeShowGoogleGDescription[] =
1723 "Show the Google G when the url is cleared. The flag to clear the url "
1724 "when the sheet is opened must also be set.";
1725
Brett Wilsonff596952017-07-14 01:06:551726const char kChromeHomeSwipeLogicName[] = "Chrome Home Swipe Logic";
1727const char kChromeHomeSwipeLogicDescription[] =
1728 "Various swipe logic options for Chrome Home for sheet expansion.";
1729const char kChromeHomeSwipeLogicRestrictArea[] = "Restrict swipable area";
Matthew Jonesbe384ee42017-10-31 19:57:151730const char kChromeHomeSwipeLogicVelocity[] = "Velocity suppression model";
Brett Wilsonff596952017-07-14 01:06:551731
Megan Jablonskic61eb1b82017-10-02 18:03:061732const char kChromeMemexName[] = "Chrome Memex";
1733const char kChromeMemexDescription[] =
1734 "Enables Chrome Memex homepage on Android. Restricted to opted-in "
1735 "Googlers.";
1736
Sarath Singapati83aef1c2017-11-16 15:54:521737const char kClearOldBrowsingDataName[] = "Clear older browsing data";
1738const char kClearOldBrowsingDataDescription[] =
1739 "Enables clearing of browsing data which is older than a given time "
1740 "period.";
1741
Brett Wilsonff596952017-07-14 01:06:551742const char kContentSuggestionsCategoryOrderName[] =
1743 "Default content suggestions category order (e.g. on NTP)";
1744const char kContentSuggestionsCategoryOrderDescription[] =
1745 "Set default order of content suggestion categories (e.g. on the NTP).";
1746
1747const char kContentSuggestionsCategoryRankerName[] =
1748 "Content suggestions category ranker (e.g. on NTP)";
1749const char kContentSuggestionsCategoryRankerDescription[] =
1750 "Set category ranker to order categories of content suggestions (e.g. on "
1751 "the NTP).";
1752
Vitalii Iarkof52ff802017-09-14 12:34:241753const char kContentSuggestionsDebugLogName[] = "Content suggestions debug log";
1754const char kContentSuggestionsDebugLogDescription[] =
1755 "Enable content suggestions debug log accessible through "
1756 "snippets-internals.";
1757
Donn Denman8e58ead2017-11-04 01:44:011758const char kContextualSearchMlTapSuppressionName[] =
1759 "Contextual Search ML tap suppression";
1760const char kContextualSearchMlTapSuppressionDescription[] =
1761 "Enables tap gestures to be suppressed to improve CTR by applying machine "
1762 "learning.";
Brett Wilsonff596952017-07-14 01:06:551763
1764const char kContextualSearchName[] = "Contextual Search";
1765const char kContextualSearchDescription[] =
1766 "Whether or not Contextual Search is enabled.";
1767
Dmitry Skiba9c3efa72017-07-20 22:01:141768const char kDontPrefetchLibrariesName[] = "Don't Prefetch Libraries";
1769const char kDontPrefetchLibrariesDescription[] =
1770 "Don't prefetch libraries after loading.";
1771
Joy Ming5fd29ca62017-10-02 22:51:221772const char kDownloadsForegroundName[] = "Enable downloads foreground";
1773const char kDownloadsForegroundDescription[] =
1774 "Enable downloads as a foreground service for all versions of Android.";
1775
Joy Ming189b0cc2017-12-08 19:42:431776const char kDownloadsLocationChangeName[] = "Enable downloads location change";
1777const char kDownloadsLocationChangeDescription[] =
1778 "Enable changing default downloads storage location on Android.";
1779
Brett Wilsonff596952017-07-14 01:06:551780const char kEnableAndroidPayIntegrationV1Name[] = "Enable Android Pay v1";
1781const char kEnableAndroidPayIntegrationV1Description[] =
1782 "Enable integration with Android Pay using the first version of the API";
1783
1784const char kEnableAndroidPayIntegrationV2Name[] = "Enable Android Pay v2";
1785const char kEnableAndroidPayIntegrationV2Description[] =
1786 "Enable integration with Android Pay using the second version of the API";
1787
Vitalii Iarkof4ed32d2017-09-26 13:15:531788const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
Brett Wilsonff596952017-07-14 01:06:551789const char kEnableAndroidSpellcheckerDescription[] =
1790 "Enables use of the Android spellchecker.";
Brett Wilsonff596952017-07-14 01:06:551791
Vitalii Iarkof4ed32d2017-09-26 13:15:531792const char kEnableContentSuggestionsNewFaviconServerName[] =
1793 "Get favicons for content suggestions from a new server.";
1794const char kEnableContentSuggestionsNewFaviconServerDescription[] =
1795 "If enabled, the content suggestions (on the NTP) will get favicons from a "
1796 "new favicon server.";
Brett Wilsonff596952017-07-14 01:06:551797
1798const char kEnableContentSuggestionsSettingsName[] =
1799 "Show content suggestions settings.";
1800const char kEnableContentSuggestionsSettingsDescription[] =
1801 "If enabled, the content suggestions settings will be available from the "
1802 "main settings menu.";
1803
Vitalii Iarkof4ed32d2017-09-26 13:15:531804const char kEnableContentSuggestionsThumbnailDominantColorName[] =
1805 "Use content suggestions thumbnail dominant color.";
1806const char kEnableContentSuggestionsThumbnailDominantColorDescription[] =
1807 "Use content suggestions thumbnail dominant color as a placeholder before "
1808 "the real thumbnail is fetched (requires Chrome Home).";
1809
Brett Wilsonff596952017-07-14 01:06:551810const char kEnableCopylessPasteName[] = "App Indexing (Copyless Paste)";
1811const char kEnableCopylessPasteDescription[] =
1812 "Provide suggestions for text input, based on your recent context. For "
1813 "example, if you looked at a restaurant website and switched to the Maps "
1814 "app, the keyboard would offer the name of that restaurant as a suggestion "
1815 "to enter into the search bar. The data is indexed locally, and never sent "
1816 "to the server. It's disabled in incognito mode.";
1817
1818const char kEnableCustomContextMenuName[] = "Enable custom context menu";
1819const char kEnableCustomContextMenuDescription[] =
1820 "Enables a new context menu when a link, image, or video is pressed within "
1821 "Chrome.";
1822
1823const char kEnableCustomFeedbackUiName[] = "Enable Custom Feedback UI";
1824const char kEnableCustomFeedbackUiDescription[] =
1825 "Enables a custom feedback UI when submitting feedback through Google "
1826 "Feedback. Works with Google Play Services v10.2+";
1827
1828const char kEnableDataReductionProxyMainMenuName[] =
Theresa Wellington141e4af2017-10-23 20:28:471829 "Enable Data Saver main menu item";
Brett Wilsonff596952017-07-14 01:06:551830const char kEnableDataReductionProxyMainMenuDescription[] =
Theresa Wellington141e4af2017-10-23 20:28:471831 "Enables the Data Saver menu item in the main menu";
Brett Wilsonff596952017-07-14 01:06:551832
1833const char kEnableDataReductionProxySiteBreakdownName[] =
1834 "Data Saver Site Breakdown";
1835const char kEnableDataReductionProxySiteBreakdownDescription[] =
1836 "Enable the site breakdown on the Data Saver settings page.";
1837
1838const char kEnableOmniboxClipboardProviderName[] =
1839 "Omnibox clipboard URL suggestions";
1840const char kEnableOmniboxClipboardProviderDescription[] =
1841 "Provide a suggestion of the URL stored in the clipboard (if any) upon "
1842 "focus in the omnibox.";
1843
1844const char kEnableExpandedAutofillCreditCardPopupLayoutName[] =
1845 "Use expanded autofill credit card popup layout.";
1846const char kEnableExpandedAutofillCreditCardPopupLayoutDescription[] =
1847 "If enabled, displays autofill credit card popup using expanded layout.";
1848
1849const char kEnableFaviconsFromWebManifestName[] =
1850 "Load favicons from Web Manifests";
1851const char kEnableFaviconsFromWebManifestDescription[] =
1852 "Fetch Web Manifests on page load to read favicons from them.";
1853
Takashi Toyoshima4fa5a71442017-11-09 14:02:481854const char kEnableMidiManagerDynamicInstantiationName[] =
1855 "MIDIManager dynamic instantiation for Web MIDI.";
1856const char kEnableMidiManagerDynamicInstantiationDescription[] =
1857 "Enable MIDIManager dynamic instantiation for Web MIDI.";
1858
Brett Wilsonff596952017-07-14 01:06:551859const char kEnableNtpAssetDownloadSuggestionsName[] =
1860 "Show asset downloads on the New Tab page";
1861const char kEnableNtpAssetDownloadSuggestionsDescription[] =
1862 "If enabled, the list of content suggestions on the New Tab page will "
1863 "contain assets (e.g. books, pictures, audio) that the user downloaded for "
1864 "later use.";
1865
1866const char kEnableNtpBookmarkSuggestionsName[] =
1867 "Show recently visited bookmarks on the New Tab page";
1868const char kEnableNtpBookmarkSuggestionsDescription[] =
1869 "If enabled, the list of content suggestions on the New Tab page will "
1870 "contain recently visited bookmarks.";
1871
1872const char kEnableNtpForeignSessionsSuggestionsName[] =
1873 "Show recent foreign tabs on the New Tab page";
1874const char kEnableNtpForeignSessionsSuggestionsDescription[] =
1875 "If enabled, the list of content suggestions on the New Tab page will "
1876 "contain recent foreign tabs.";
1877
Brett Wilsonff596952017-07-14 01:06:551878const char kEnableNtpOfflinePageDownloadSuggestionsName[] =
1879 "Show offline page downloads on the New Tab page";
1880const char kEnableNtpOfflinePageDownloadSuggestionsDescription[] =
1881 "If enabled, the list of content suggestions on the New Tab page will "
1882 "contain pages that the user downloaded for later use.";
1883
1884const char kEnableNtpRemoteSuggestionsName[] =
1885 "Show server-side suggestions on the New Tab page";
1886const char kEnableNtpRemoteSuggestionsDescription[] =
1887 "If enabled, the list of content suggestions on the New Tab page will "
1888 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
1889 "allows to override the source used to retrieve these server-side "
1890 "suggestions.";
1891
1892const char kEnableNtpSnippetsVisibilityName[] =
1893 "Make New Tab Page Snippets more visible.";
1894const char kEnableNtpSnippetsVisibilityDescription[] =
1895 "If enabled, the NTP snippets will become more discoverable with a larger "
1896 "portion of the first card above the fold.";
1897
1898const char kEnableNtpSuggestionsNotificationsName[] =
1899 "Notify about new content suggestions available at the New Tab page";
1900const char kEnableNtpSuggestionsNotificationsDescription[] =
1901 "If enabled, notifications will inform about new content suggestions on "
1902 "the New Tab page.";
1903
1904const char kEnablePhysicalWebName[] = "Enable the Physical Web.";
1905const char kEnablePhysicalWebDescription[] =
1906 "Enable scanning for URLs from Physical Web objects.";
1907
1908const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
1909const char kEnableOfflinePreviewsDescription[] =
1910 "Enable showing offline page previews on slow networks.";
1911
1912const char kEnableOskOverscrollName[] = "Enable OSK Overscroll";
1913const char kEnableOskOverscrollDescription[] =
1914 "Enable OSK overscroll support. With this flag on, the OSK will only "
1915 "resize the visual viewport.";
1916
1917const char kEnableSpecialLocaleName[] =
1918 "Enable custom logic for special locales.";
1919const char kEnableSpecialLocaleDescription[] =
1920 "Enable custom logic for special locales. In this mode, Chrome might "
1921 "behave differently in some locales.";
1922
Brett Wilsonff596952017-07-14 01:06:551923const char kEnableWebNfcName[] = "WebNFC";
1924const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
1925
gogeraldf3cbb422017-07-26 14:37:121926const char kEnableWebPaymentsMethodSectionOrderV2Name[] =
1927 "Enable Web Payments method section order V2.";
1928const char kEnableWebPaymentsMethodSectionOrderV2Description[] =
1929 "Enable this option to display payment method section above address "
1930 "section instead of below it.";
1931
Brett Wilsonff596952017-07-14 01:06:551932const char kEnableWebPaymentsSingleAppUiSkipName[] =
1933 "Enable Web Payments single app UI skip";
1934const char kEnableWebPaymentsSingleAppUiSkipDescription[] =
1935 "Enable Web Payments to skip showing its UI if the developer specifies a "
1936 "single app.";
1937
Raymes Khoury582b43132017-12-12 23:54:301938const char kGrantNotificationsToDSEName[] =
1939 "Grant notifications to the Default Search Engine";
1940const char kGrantNotificationsToDSENameDescription[] =
1941 "Automatically grant the notifications permission to the Default Search "
1942 "Engine";
1943
Brett Wilsonff596952017-07-14 01:06:551944const char kHerbPrototypeChoicesName[] = "Switch preferred flavor of Herb";
1945const char kHerbPrototypeChoicesDescription[] =
1946 "Switching this option changes which tab management prototype is being "
1947 "tested.";
1948const char kHerbPrototypeFlavorElderberry[] =
1949 "ELDERBERRY: All View Intents in CCT v2";
1950
1951const char kKeepPrefetchedContentSuggestionsName[] =
1952 "Keep prefetched content suggestions";
1953const char kKeepPrefetchedContentSuggestionsDescription[] =
1954 "If enabled, some of prefetched content suggestions are not replaced by "
1955 "the new fetched suggestions.";
1956
1957const char kLsdPermissionPromptName[] =
1958 "Location Settings Dialog Permission Prompt";
1959const char kLsdPermissionPromptDescription[] =
1960 "Whether to use the Google Play Services Location Settings Dialog "
1961 "permission dialog.";
1962
Brett Wilsonff596952017-07-14 01:06:551963const char kMediaScreenCaptureName[] = "Experimental ScreenCapture.";
1964const char kMediaScreenCaptureDescription[] =
1965 "Enable this option for experimental ScreenCapture feature on Android.";
1966
1967const char kModalPermissionPromptsName[] = "Modal Permission Prompts";
1968const char kModalPermissionPromptsDescription[] =
1969 "Whether to use permission dialogs in place of permission infobars.";
1970
Brett Wilsonff596952017-07-14 01:06:551971const char kNewPhotoPickerName[] = "Enable new Photopicker";
1972const char kNewPhotoPickerDescription[] =
1973 "Activates the new picker for selecting photos.";
1974
1975const char kNoCreditCardAbort[] = "No Credit Card Abort";
1976const char kNoCreditCardAbortDescription[] =
1977 "Whether or not the No Credit Card Abort is enabled.";
1978
1979const char kNtpCondensedLayoutName[] = "Condensed NTP layout";
1980const char kNtpCondensedLayoutDescription[] =
1981 "Show a condensed layout on the New Tab Page.";
1982
1983const char kNtpCondensedTileLayoutName[] = "Condensed NTP tile layout";
1984const char kNtpCondensedTileLayoutDescription[] =
1985 "Show a condensed tile layout on the New Tab Page.";
1986
Michael van Ouwerkerkcdbbe332017-11-24 15:07:061987const char kNtpModernLayoutName[] = "Modern NTP layout";
1988const char kNtpModernLayoutDescription[] =
1989 "Show a modern layout on the New Tab Page.";
1990
Nicolas Dossou-gbete56f37dc2017-08-10 16:14:041991const char kSiteExplorationUiName[] = "Site Exploration UI";
1992const char kSiteExplorationUiDescription[] =
1993 "Show site suggestions in the Exploration UI";
1994
Brett Wilsonff596952017-07-14 01:06:551995const char kNtpGoogleGInOmniboxName[] = "Google G in New Tab Page omnibox";
1996const char kNtpGoogleGInOmniboxDescription[] =
1997 "Show a Google G in the omnibox on the New Tab Page.";
1998
Brett Wilsonff596952017-07-14 01:06:551999const char kNtpPopularSitesName[] = "Show popular sites on the New Tab page";
2000const char kNtpPopularSitesDescription[] =
2001 "Pre-populate the New Tab page with popular sites.";
2002
Brett Wilsonff596952017-07-14 01:06:552003const char kOfflineBookmarksName[] = "Enable offline bookmarks";
2004const char kOfflineBookmarksDescription[] =
2005 "Enable saving bookmarked pages for offline viewing.";
2006
Brett Wilsonff596952017-07-14 01:06:552007const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
2008const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
2009
2010const char kOfflinePagesCtV2Name[] = "Enable Offline Pages CT V2 features.";
2011const char kOfflinePagesCtV2Description[] =
2012 "V2 features include attributing pages to the app that initiated the "
2013 "custom tabs, and being able to query for pages by page attribution.";
2014
Carlos Knippschild09272ecd2017-12-09 03:29:362015const char kOfflinePagesLimitlessPrefetchingName[] =
2016 "Removes resource usage limits for the prefetching of offline pages.";
2017const char kOfflinePagesLimitlessPrefetchingDescription[] =
2018 "Allows the prefetching of suggested offline pages to ignore resource "
2019 "usage limits. This allows it to completely ignore data usage limitations "
2020 "and allows downloads to happen with any kind of connection.";
2021
Brett Wilsonff596952017-07-14 01:06:552022const char kOfflinePagesLoadSignalCollectingName[] =
2023 "Enables collecting load timing data for offline page snapshots.";
2024const char kOfflinePagesLoadSignalCollectingDescription[] =
2025 "Enables loading completeness data collection while writing an offline "
2026 "page. This data is collected in the snapshotted offline page to allow "
2027 "data analysis to improve deciding when to make the offline snapshot.";
2028
2029const char kOfflinePagesPrefetchingName[] =
2030 "Enables suggested offline pages to be prefetched.";
2031const char kOfflinePagesPrefetchingDescription[] =
2032 "Enables suggested offline pages to be prefetched, so useful content is "
2033 "available while offline.";
2034
Cathy Li3d5379e2017-09-07 00:11:092035const char kOfflinePagesPrefetchingUIName[] =
2036 "Enables prefetched offline pages to be shown in UI.";
2037const char kOfflinePagesPrefetchingUIDescription[] =
2038 "Enables prefetched offline pages to raise notifications and be shown in "
2039 "download home UI.";
2040
Pete Williamson7845dff2017-09-20 11:06:192041const char kOfflinePagesResourceBasedSnapshotName[] =
2042 "Enables offline page snapshots to be based on percentage of page loaded.";
2043const char kOfflinePagesResourceBasedSnapshotDescription[] =
2044 "Enables offline page snapshots to use a resource percentage based "
2045 "approach for determining when the page is loaded as opposed to a time "
2046 "based approach";
2047
Collin Baker17f92a52017-07-19 21:41:252048const char kOfflinePagesRenovationsName[] = "Enables offline page renovations.";
2049const char kOfflinePagesRenovationsDescription[] =
2050 "Enables offline page renovations which correct issues with dynamic "
2051 "content that occur when offlining pages that use JavaScript.";
2052
Brett Wilsonff596952017-07-14 01:06:552053const char kOfflinePagesSharingName[] = "Enables offline pages to be shared.";
2054const char kOfflinePagesSharingDescription[] =
2055 "Enables the saved offline pages to be shared via other applications.";
2056
2057const char kOfflinePagesSvelteConcurrentLoadingName[] =
2058 "Enables concurrent background loading on svelte.";
2059const char kOfflinePagesSvelteConcurrentLoadingDescription[] =
2060 "Enables concurrent background loading (or downloading) of pages on "
2061 "Android svelte (512MB RAM) devices. Otherwise, background loading will "
2062 "happen when the svelte device is idle.";
2063
2064const char kOffliningRecentPagesName[] =
2065 "Enable offlining of recently visited pages";
2066const char kOffliningRecentPagesDescription[] =
2067 "Enable storing recently visited pages locally for offline use. Requires "
2068 "Offline Pages to be enabled.";
2069
Lei Zhang2eca9082017-10-17 20:42:502070const char kPayWithGoogleV1Name[] = "Pay with Google v1";
2071const char kPayWithGoogleV1Description[] =
Brett Wilsonff596952017-07-14 01:06:552072 "Enable Pay with Google integration into Web Payments with API version "
2073 "'1'.";
2074
Matthew Jonesa88b95852017-11-08 23:13:502075const char kProgressBarThrottleName[] = "Android progress update throttling.";
2076const char kProgressBarThrottleDescription[] =
2077 "Limit the maximum progress update to make progress appear smoother.";
2078
Brett Wilsonff596952017-07-14 01:06:552079const char kProgressBarCompletionName[] =
2080 "Android phone page load progress bar completion time.";
2081const char kProgressBarCompletionDescription[] =
2082 "Configures Android phone page loading progress bar completion time.";
2083const char kProgressBarCompletionLoadEvent[] =
2084 R"*(Top loading frame's onload event ("everything" is done in the )*"
2085 R"*(page, historical behavior).)*";
2086const char kProgressBarCompletionResourcesBeforeDcl[] =
2087 "Main frame's domContentLoaded and all resources loads started before "
2088 "domContentLoaded (iframes ignored).";
2089const char kProgressBarCompletionDomContentLoaded[] =
2090 "Main frame's domContentLoaded (iframes ignored).";
2091const char kProgressBarCompletionResourcesBeforeDclAndSameOriginIframes[] =
2092 "domContentLoaded and all resources loads started before domContentLoaded "
2093 "(main frame and same origin iframes).";
2094
2095const char kPullToRefreshEffectName[] = "The pull-to-refresh effect";
2096const char kPullToRefreshEffectDescription[] =
2097 "Page reloads triggered by vertically overscrolling content.";
2098
Piotr Swigon7c296ef2017-08-29 04:32:002099const char kPwaImprovedSplashScreenName[] =
2100 "Improved Splash Screen for standalone PWAs";
2101const char kPwaImprovedSplashScreenDescription[] =
2102 "Enables the Improved Splash Screen UX for standalone PWAs based on new "
2103 "Web App Manifest attributes";
Piotr Swigon9f630b32017-07-26 09:42:492104const char kPwaPersistentNotificationName[] =
2105 "Persistent notification in standalone PWA";
2106const char kPwaPersistentNotificationDescription[] =
2107 "Enables a persistent Android notification for standalone PWAs";
2108
Brett Wilsonff596952017-07-14 01:06:552109const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
2110const char kReaderModeHeuristicsDescription[] =
2111 "Determines what pages the Reader Mode infobar is shown on.";
2112const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
2113const char kReaderModeHeuristicsAdaboost[] = "Non-mobile-friendly articles";
2114const char kReaderModeHeuristicsAllArticles[] = "All articles";
2115const char kReaderModeHeuristicsAlwaysOff[] = "Never";
2116const char kReaderModeHeuristicsAlwaysOn[] = "Always";
2117
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:182118const char kReaderModeInCCTName[] = "Reader Mode in CCT";
2119const char kReaderModeInCCTDescription[] =
2120 "Open Reader Mode in Chrome Custom Tabs.";
2121
Brett Wilsonff596952017-07-14 01:06:552122const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2123const char kSetMarketUrlForTestingDescription[] =
2124 "When enabled, sets the market URL for use in testing the update menu "
2125 "item.";
2126
2127const char kSpannableInlineAutocompleteName[] = "Spannable inline autocomplete";
2128const char kSpannableInlineAutocompleteDescription[] =
2129 "A new type of inline autocomplete for the omnibox that works with "
2130 "keyboards that compose text.";
2131
Brett Wilsonff596952017-07-14 01:06:552132const char kTranslateCompactUIName[] = "New Translate Infobar";
2133const char kTranslateCompactUIDescription[] =
2134 "Enable the new Translate compact infobar UI.";
2135
2136const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2137const char kUpdateMenuBadgeDescription[] =
2138 "When enabled, an update badge will be shown on the app menu button.";
2139
2140const char kUpdateMenuItemCustomSummaryDescription[] =
2141 "When this flag and the force show update menu item flag are enabled, a "
2142 "custom summary string will be displayed below the update menu item.";
2143const char kUpdateMenuItemCustomSummaryName[] =
2144 "Update menu item custom summary";
2145
2146const char kUpdateMenuItemName[] = "Force show update menu item";
2147const char kUpdateMenuItemDescription[] =
2148 R"*(When enabled, an "Update Chrome" item will be shown in the app )*"
2149 R"*(menu.)*";
2150
Marc Treib93af46a2017-08-23 13:30:002151const char kThirdPartyDoodlesName[] =
2152 "Enable Doodles for third-party search engines";
2153const char kThirdPartyDoodlesDescription[] =
2154 "Enables fetching and displaying Doodles on the NTP for third-party search "
2155 "engines.";
2156
Brett Wilson7b44537e2017-08-18 01:38:282157// Non-Android -----------------------------------------------------------------
Brett Wilsonff596952017-07-14 01:06:552158
Brett Wilson7b44537e2017-08-18 01:38:282159#else // !defined(OS_ANDROID)
brettw5f9c1642017-05-14 17:12:482160
Brett Wilson7b44537e2017-08-18 01:38:282161const char kAccountConsistencyName[] =
2162 "Identity consistency between browser and cookie jar";
2163const char kAccountConsistencyDescription[] =
2164 "When enabled, the browser manages signing in and out of Google accounts.";
2165const char kAccountConsistencyChoiceMirror[] = "Mirror";
2166const char kAccountConsistencyChoiceDice[] = "Dice";
vabr0215a8e2017-03-28 12:47:342167
Chris Pickel3a227ae62017-08-24 10:47:262168const char kDoodlesOnLocalNtpName[] = "Enable doodles on the local NTP";
2169const char kDoodlesOnLocalNtpDescription[] =
2170 "Show doodles on the local New Tab page if Google is the default search "
2171 "engine.";
2172
mlamouriff56c092017-05-11 15:31:392173const char kEnableAudioFocusName[] = "Manage audio focus across tabs";
mlamouriff56c092017-05-11 15:31:392174const char kEnableAudioFocusDescription[] =
vabr0215a8e2017-03-28 12:47:342175 "Manage audio focus across tabs to improve the audio mixing.";
mlamouriff56c092017-05-11 15:31:392176const char kEnableAudioFocusDisabled[] = "Disabled";
mlamouriff56c092017-05-11 15:31:392177const char kEnableAudioFocusEnabled[] = "Enabled";
mlamouriff56c092017-05-11 15:31:392178const char kEnableAudioFocusEnabledDuckFlash[] =
vabr0215a8e2017-03-28 12:47:342179 "Enabled (Flash lowers volume when interrupted by other sound, "
2180 "experimental)";
2181
Brett Wilson7b44537e2017-08-18 01:38:282182const char kEnableNewAppMenuIconName[] = "Enable the New App Menu Icon";
2183const char kEnableNewAppMenuIconDescription[] =
2184 "Use the new app menu icon with update notification animations.";
vabr0215a8e2017-03-28 12:47:342185
2186const char kOmniboxEntitySuggestionsName[] = "Omnibox entity suggestions";
vabr0215a8e2017-03-28 12:47:342187const char kOmniboxEntitySuggestionsDescription[] =
krbcc621412017-06-01 19:40:282188 "Enable receiving entity suggestions - disambiguation descriptions - for "
2189 "Omnibox suggestions.";
2190
Kevin Bailey898669972017-11-06 15:34:492191const char kOmniboxTabSwitchSuggestionsName[] =
2192 "Omnibox tab switch suggestions";
2193const char kOmniboxTabSwitchSuggestionsDescription[] =
2194 "Enable suggestions for switching to open tabs within the Omnibox.";
2195
krbcc621412017-06-01 19:40:282196const char kOmniboxTailSuggestionsName[] = "Omnibox tail suggestions";
2197const char kOmniboxTailSuggestionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192198 "Enable receiving tail suggestions, a type of search suggestion based on "
2199 "the last few words in the query, for the Omnibox.";
vabr0215a8e2017-03-28 12:47:342200
Brett Wilson7b44537e2017-08-18 01:38:282201const char kOneGoogleBarOnLocalNtpName[] =
2202 "Enable the OneGoogleBar on the local NTP";
2203const char kOneGoogleBarOnLocalNtpDescription[] =
2204 "Show a OneGoogleBar on the local New Tab page if Google is the default "
2205 "search engine.";
2206
ojan38c678352017-04-11 20:27:552207const char kPauseBackgroundTabsName[] = "Pause background tabs";
2208const char kPauseBackgroundTabsDescription[] =
2209 "Pause timers in background tabs after 5 minutes on desktop.";
2210
Brett Wilson7b44537e2017-08-18 01:38:282211const char kUseGoogleLocalNtpName[] = "Enable using the Google local NTP";
2212const char kUseGoogleLocalNtpDescription[] =
2213 "Use the local New Tab page if Google is the default search engine.";
spqchan064a8112017-04-18 16:46:322214
Brett Wilson7b44537e2017-08-18 01:38:282215const char kVoiceSearchOnLocalNtpName[] =
2216 "Enable Voice Search on the local NTP";
2217const char kVoiceSearchOnLocalNtpDescription[] =
2218 "Show a microphone for voice search on the local New Tab page "
2219 "if Google is the default search engine.";
2220
2221#if defined(GOOGLE_CHROME_BUILD)
2222
2223const char kGoogleBrandedContextMenuName[] =
2224 "Google branding in the context menu";
2225const char kGoogleBrandedContextMenuDescription[] =
2226 "Shows a Google icon next to context menu items powered by Google "
2227 "services.";
2228
2229#endif // !defined(GOOGLE_CHROME_BUILD)
2230
2231#endif // !defined(OS_ANDROID)
2232
2233// Windows ---------------------------------------------------------------------
2234
2235#if defined(OS_WIN)
2236
2237const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
2238const char kCloudPrintXpsDescription[] =
2239 "XPS enables advanced options for classic printers connected to the Cloud "
2240 "Print with Chrome. Printers must be re-connected after changing this "
2241 "flag.";
2242
Dave Tapuskadd43469d2017-08-22 22:15:532243const char kDirectManipulationStylusName[] = "Direct Manipulation Stylus";
2244const char kDirectManipulationStylusDescription[] =
2245 "If enabled, Chrome will scroll web pages on stylus drag.";
2246
Brett Wilson7b44537e2017-08-18 01:38:282247const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
2248const char kDisablePostscriptPrintingDescription[] =
2249 "Disables PostScript generation when printing to PostScript capable "
2250 "printers, and uses EMF generation in its place.";
2251
2252const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
2253const char kEnableAppcontainerDescription[] =
2254 "Enables the use of an AppContainer on sandboxed processes to improve "
2255 "security.";
2256
2257const char kEnableD3DVsync[] = "D3D v-sync";
2258const char kEnableD3DVsyncDescription[] =
2259 "Produces v-sync signal by having D3D wait for vertical blanking interval "
2260 "to occur.";
2261
2262const char kEnableDesktopIosPromotionsName[] = "Desktop to iOS promotions.";
2263const char kEnableDesktopIosPromotionsDescription[] =
2264 "Enable Desktop to iOS promotions, and allow users to see them if they are "
2265 "eligible.";
2266
2267const char kGdiTextPrinting[] = "GDI Text Printing";
2268const char kGdiTextPrintingDescription[] =
2269 "Use GDI to print text as simply text";
2270
2271const char kMergeKeyCharEventsName[] =
2272 "Enable or disable merging merging the key event (WM_KEY*) with char event "
2273 "(WM_CHAR).";
2274const char kMergeKeyCharEventsDescription[] =
2275 "If disabled, Chrome will handle WM_KEY* and WM_CHAR separately.";
2276
2277const char kTraceExportEventsToEtwName[] =
2278 "Enable exporting of tracing events to ETW.";
2279const char kTraceExportEventsToEtwDesription[] =
2280 "If enabled, trace events will be exported to the Event Tracing for "
2281 "Windows (ETW) and can then be captured by tools such as UIForETW or "
2282 "Xperf.";
2283
2284const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2285const char kUseWinrtMidiApiDescription[] =
2286 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
2287 "later).";
2288
2289const char kWindows10CustomTitlebarName[] = "Custom-drawn Windows 10 Titlebar";
2290const char kWindows10CustomTitlebarDescription[] =
2291 "If enabled, Chrome will draw the titlebar and caption buttons instead of "
2292 "deferring to Windows.";
2293
Wez6656c572017-08-29 22:29:582294#if DCHECK_IS_ON() && defined(SYZYASAN)
Lei Zhang2eca9082017-10-17 20:42:502295const char kSyzyAsanDcheckIsFatalName[] = "DCHECKs are fatal";
2296const char kSyzyAsanDcheckIsFatalDescription[] =
Wez6656c572017-08-29 22:29:582297 "By default Chrome will evaluate DCHECKs in SyzyASAN builds, but only log "
2298 "failed DCHECKs. If enabled, DCHECKs will crash the calling process.";
2299#endif // DCHECK_IS_ON() && defined(SYZYASAN)
2300
Brett Wilson7b44537e2017-08-18 01:38:282301#endif // defined(OS_WIN)
2302
2303// Mac -------------------------------------------------------------------------
2304
2305#if defined(OS_MACOSX)
2306
2307const char kAppInfoDialogName[] = "Toolkit-Views App Info Dialog.";
2308const char kAppInfoDialogDescription[] =
2309 "Makes the Toolkit-Views based App Info dialog accessible from "
2310 "chrome://apps or chrome://extensions in place of the native extension "
2311 "permissions dialog, or the details link (which is a link to the Web "
2312 "Store).";
2313
2314const char kAppWindowCyclingName[] = "Custom Window Cycling for Chrome Apps.";
2315const char kAppWindowCyclingDescription[] =
2316 "Changes the behavior of Cmd+` when a Chrome App becomes active. When "
2317 "enabled, Chrome Apps will not be cycled when Cmd+` is pressed from a "
2318 "browser window, and browser windows will not be cycled when a Chrome App "
2319 "is active.";
2320
Lei Zhang2eca9082017-10-17 20:42:502321const char kCreditCardAutofillTouchBarName[] = "Credit Card Autofill Touch Bar";
2322const char kCreditCardAutofillTouchBarDescription[] =
Brett Wilson7b44537e2017-08-18 01:38:282323 "Shows Credit Card Autofill Suggestions on the Touch Bar.";
2324
2325const char kFullscreenToolbarRevealName[] =
2326 "Enables the toolbar in fullscreen to reveal itself.";
2327const char kFullscreenToolbarRevealDescription[] =
2328 "Reveal the toolbar in fullscreen for a short period when the tab strip "
2329 "has changed.";
2330
2331const char kContentFullscreenName[] = "Improved Content Fullscreen";
2332const char kContentFullscreenDescription[] =
2333 "Fullscreen content window detaches from main browser window and goes to "
2334 "a new space without moving or changing the original browser window.";
2335
Lei Zhang2eca9082017-10-17 20:42:502336const char kDialogTouchBarName[] = "Dialog Touch Bar";
2337const char kDialogTouchBarDescription[] =
Brett Wilson7b44537e2017-08-18 01:38:282338 "Shows Dialog buttons on the Touch Bar.";
2339
2340const char kHostedAppsInWindowsName[] =
2341 "Allow hosted apps to be opened in windows";
2342const char kHostedAppsInWindowsDescription[] =
2343 "Allows hosted apps to be opened in windows instead of being limited to "
2344 "tabs.";
2345
Lei Zhang2eca9082017-10-17 20:42:502346const char kMacRTLName[] = "Enable RTL";
2347const char kMacRTLDescription[] = "Mirrors the UI for RTL language users";
Brett Wilson7b44537e2017-08-18 01:38:282348
Lei Zhang2eca9082017-10-17 20:42:502349const char kMacSystemShareMenuName[] = "Enable System Share Menu";
2350const char kMacSystemShareMenuDescription[] =
Leonard Grey2bdd08f2017-10-03 18:40:522351 "Enables sharing via macOS share extensions.";
2352
Lei Zhang2eca9082017-10-17 20:42:502353const char kMacTouchBarName[] = "Hardware Touch Bar";
2354const char kMacTouchBarDescription[] = "Control the use of the Touch Bar.";
Brett Wilson7b44537e2017-08-18 01:38:282355
2356const char kMacV2SandboxName[] = "Mac V2 Sandbox";
2357const char kMacV2SandboxDescription[] =
2358 "Eliminates the unsandboxed warmup phase and sandboxes processes for their "
2359 "entire life cycle.";
2360
2361const char kMacViewsNativeAppWindowsName[] = "Toolkit-Views App Windows.";
2362const char kMacViewsNativeAppWindowsDescription[] =
2363 "Controls whether to use Toolkit-Views based Chrome App windows.";
2364
Jérôme Lebelff683d42017-11-10 10:24:022365const char kMacViewsProfileChooserName[] =
2366 "Profile chooser menu with toolkit-views on Mac";
2367const char kMacViewsProfileChooserDescription[] =
2368 "Enables profile chooser menu based on toolkit-views, on Mac";
2369
Brett Wilson7b44537e2017-08-18 01:38:282370const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
2371const char kMacViewsTaskManagerDescription[] =
2372 "Controls whether to use the Toolkit-Views based Task Manager.";
2373
2374const char kTabDetachingInFullscreenName[] =
2375 "Allow tab detaching in fullscreen";
2376const char kTabDetachingInFullscreenDescription[] =
2377 "Allow tabs to detach from the tabstrip when in fullscreen mode on Mac.";
2378
2379const char kTabStripKeyboardFocusName[] = "Tab Strip Keyboard Focus";
2380const char kTabStripKeyboardFocusDescription[] =
2381 "Enable keyboard focus for the tabs in the tab strip.";
2382
2383const char kTranslateNewUxName[] = "New Translate UX";
2384const char kTranslateNewUxDescription[] =
2385 "Enable the new Translate bubble UX is offered instead of the infobar.";
2386
Brett Wilson7b44537e2017-08-18 01:38:282387#endif
2388
2389// Chrome OS -------------------------------------------------------------------
vabr0215a8e2017-03-28 12:47:342390
2391#if defined(OS_CHROMEOS)
2392
Brett Wilson7b44537e2017-08-18 01:38:282393const char kAcceleratedMjpegDecodeName[] =
2394 "Hardware-accelerated mjpeg decode for captured frame";
2395const char kAcceleratedMjpegDecodeDescription[] =
2396 "Enable hardware-accelerated mjpeg decode for captured frame where "
2397 "available.";
vabr0215a8e2017-03-28 12:47:342398
Brett Wilson7b44537e2017-08-18 01:38:282399const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click";
2400const char kAllowTouchpadThreeFingerClickDescription[] =
2401 "Enables touchpad three-finger-click as middle button.";
vabr0215a8e2017-03-28 12:47:342402
Brett Wilson7b44537e2017-08-18 01:38:282403const char kArcBootCompleted[] = "Load Android apps automatically";
2404const char kArcBootCompletedDescription[] =
2405 "Allow Android apps to start automatically after signing in.";
vabr0215a8e2017-03-28 12:47:342406
Lev Rumyantsev7a8544312017-08-18 19:26:512407const char kArcNativeBridgeExperimentName[] =
2408 "Enable native bridge experiment for ARC";
2409const char kArcNativeBridgeExperimentDescription[] =
2410 "Enables experimental native bridge feature.";
2411
Kevin Cernekeeb7f96a52017-10-25 17:40:182412const char kArcVpnName[] = "Enable ARC VPN integration";
2413const char kArcVpnDescription[] =
2414 "Allow Android VPN clients to tunnel Chrome traffic.";
2415
Brett Wilson7b44537e2017-08-18 01:38:282416const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
2417const char kAshEnableUnifiedDesktopDescription[] =
2418 "Enable unified desktop mode which allows a window to span multiple "
2419 "displays.";
vabr0215a8e2017-03-28 12:47:342420
Brett Wilson7b44537e2017-08-18 01:38:282421const char kBootAnimationName[] = "Boot animation";
2422const char kBootAnimationDescription[] =
2423 "Wallpaper boot animation (except for OOBE case).";
vabr0215a8e2017-03-28 12:47:342424
Sean Kau5e956192017-10-06 22:25:172425const char kBulkPrintersName[] = "Bulk Printers Policy";
2426const char kBulkPrintersDescription[] = "Enables the new bulk printers policy";
2427
Brett Wilson7b44537e2017-08-18 01:38:282428const char kCaptivePortalBypassProxyName[] =
2429 "Bypass proxy for Captive Portal Authorization";
2430const char kCaptivePortalBypassProxyDescription[] =
2431 "If proxy is configured, it usually prevents from authorization on "
2432 "different captive portals. This enables opening captive portal "
2433 "authorization dialog in a separate window, which ignores proxy settings.";
vabr0215a8e2017-03-28 12:47:342434
Brett Wilson7b44537e2017-08-18 01:38:282435const char kCrOSComponentName[] = "Chrome OS Component";
2436const char kCrOSComponentDescription[] =
2437 "Enable the use of componentized escpr CUPS filter.";
vabr0215a8e2017-03-28 12:47:342438
Xiaochu Liu51d03fd2017-09-08 23:51:022439const char kCrOSContainerName[] = "Chrome OS Container";
2440const char kCrOSContainerDescription[] =
2441 "Enable the use of Chrome OS Container utility.";
2442
Brett Wilson7b44537e2017-08-18 01:38:282443const char kCrosRegionsModeName[] = "Cros-regions load mode";
2444const char kCrosRegionsModeDescription[] =
2445 "This flag controls cros-regions load mode";
2446const char kCrosRegionsModeDefault[] = "Default";
2447const char kCrosRegionsModeOverride[] = "Override VPD values.";
2448const char kCrosRegionsModeHide[] = "Hide VPD values.";
vabr0215a8e2017-03-28 12:47:342449
Jacob Dufault2becbc482017-08-25 00:36:352450const char kDisableLockScreenAppsName[] = "Disable lock screen note taking";
2451const char kDisableLockScreenAppsDescription[] =
2452 "Disable new-note action handler apps on the lock screen. The user will "
2453 "not be able to launch the preferred note-taking action from the lock "
2454 "screen, provided that the app supports lock screen note taking.";
2455
Sammie Quonef6b4882017-09-14 16:50:052456const char kDisableTabletAutohideTitlebarsName[] =
2457 "Disable autohide titlebars in tablet mode";
2458const char kDisableTabletAutohideTitlebarsDescription[] =
2459 "Disable tablet mode autohide titlebars functionality. The user will be "
2460 "able to see the titlebar in tablet mode.";
2461
Brett Wilson7b44537e2017-08-18 01:38:282462const char kEnablePerUserTimezoneName[] = "Per-user time zone preferences.";
2463const char kEnablePerUserTimezoneDescription[] =
2464 "Chrome OS system timezone preference is stored and handled for each user "
2465 "individually.";
vabr0215a8e2017-03-28 12:47:342466
Brett Wilson7b44537e2017-08-18 01:38:282467const char kDisableSystemTimezoneAutomaticDetectionName[] =
2468 "SystemTimezoneAutomaticDetection policy support";
2469const char kDisableSystemTimezoneAutomaticDetectionDescription[] =
2470 "Disable system timezone automatic detection device policy.";
vabr0215a8e2017-03-28 12:47:342471
Lei Zhang2eca9082017-10-17 20:42:502472const char kEnableBackgroundBlurName[] = "Enable background blur.";
2473const char kEnableBackgroundBlurDescription[] =
Wenzhao Zang50fb0b22017-11-07 01:38:422474 "Enables background blur for the Peeking Launcher and Tab Switcher.";
Alex Newcomer43cb7f12017-07-28 17:37:392475
Brett Wilson7b44537e2017-08-18 01:38:282476const char kEnableAndroidWallpapersAppName[] = "Android Wallpapers App";
2477const char kEnableAndroidWallpapersAppDescription[] =
2478 "Enables the Android Wallpapers App as the default Wallpaper App on Chrome "
2479 "OS.";
vabr0215a8e2017-03-28 12:47:342480
Brett Wilson7b44537e2017-08-18 01:38:282481const char kEnableChromevoxArcSupportName[] = "ChromeVox ARC support";
2482const char kEnableChromevoxArcSupportDescription[] =
2483 "Enable ChromeVox screen reader features in ARC";
vabr0215a8e2017-03-28 12:47:342484
Brett Wilson7b44537e2017-08-18 01:38:282485const char kEnableEhvInputName[] =
2486 "Emoji, handwriting and voice input on opt-in IME menu";
2487const char kEnableEhvInputDescription[] =
2488 "Enable access to emoji, handwriting and voice input form opt-in IME menu.";
vabr0215a8e2017-03-28 12:47:342489
Brett Wilson7b44537e2017-08-18 01:38:282490const char kEnableEncryptionMigrationName[] =
2491 "Enable encryption migration of user data";
2492const char kEnableEncryptionMigrationDescription[] =
2493 "If enabled and the device supports ARC, the user will be asked to update "
2494 "the encryption of user data when the user signs in.";
vabr0215a8e2017-03-28 12:47:342495
Blake O'Hare9e9317b22017-10-24 02:49:352496const char kEnableFloatingVirtualKeyboardName[] =
2497 "Enable floating virtual keyboard";
2498const char kEnableFloatingVirtualKeyboardDescription[] =
2499 "If enabled, the keyboard will use floating behavior by default.";
2500
Brett Wilson7b44537e2017-08-18 01:38:282501const char kEnableImeMenuName[] = "Enable opt-in IME menu";
2502const char kEnableImeMenuDescription[] =
2503 "Enable access to the new IME menu in the Language Settings page.";
vabr0215a8e2017-03-28 12:47:342504
xdai6459d0ca2017-10-11 19:23:102505const char kEnableTabletSplitViewName[] = "Split view in Tablet mode";
2506const char kEnableTabletSplitViewDescription[] =
2507 "Enable split view for Chrome OS tablet mode.";
2508
Klemen Kozjek05fc4512017-10-18 12:51:102509const char kEnableZipArchiverPackerName[] = "ZIP archiver - Packer";
2510const char kEnableZipArchiverPackerDescription[] =
2511 "Enable the ability to archive files on Drive in the Files app";
2512
Tatsuhisa Yamaguchi5c07d2532017-11-10 03:52:412513const char kZipArchiverUnpackerName[] = "ZIP archiver - Unpacker";
2514const char kZipArchiverUnpackerDescription[] =
2515 "Enable or disable the ability to unpack archives in incognito mode";
Brett Wilson7b44537e2017-08-18 01:38:282516
2517const char kEolNotificationName[] = "Disable Device End of Life notification.";
2518const char kEolNotificationDescription[] =
2519 "Disable Notifcation when Device is End of Life.";
2520
2521const char kExperimentalAccessibilityFeaturesName[] =
2522 "Experimental accessibility features";
2523const char kExperimentalAccessibilityFeaturesDescription[] =
2524 "Enable additional accessibility features in the Settings page.";
2525
2526const char kExperimentalInputViewFeaturesName[] =
2527 "Experimental input view features";
2528const char kExperimentalInputViewFeaturesDescription[] =
2529 "Enable experimental features for IME input views.";
2530
2531const char kFileManagerTouchModeName[] = "Files App. touch mode";
2532const char kFileManagerTouchModeDescription[] =
2533 "Touchscreen-specific interactions of the Files app.";
2534
2535const char kFirstRunUiTransitionsName[] =
2536 "Animated transitions in the first-run tutorial";
2537const char kFirstRunUiTransitionsDescription[] =
2538 "Transitions during first-run tutorial are animated.";
2539
Brett Wilson7b44537e2017-08-18 01:38:282540const char kForceEnableStylusToolsName[] = "Force enable stylus features";
2541const char kForceEnableStylusToolsDescription[] =
2542 "Forces display of the stylus tools menu in the shelf and the stylus "
2543 "section in settings, even if there is no attached stylus device.";
2544
2545const char kGestureEditingName[] = "Gesture editing for the virtual keyboard.";
2546const char kGestureEditingDescription[] =
2547 "Enable/Disable gesture editing option in the settings page for the "
2548 "virtual keyboard.";
2549
2550const char kGestureTypingName[] = "Gesture typing for the virtual keyboard.";
2551const char kGestureTypingDescription[] =
2552 "Enable/Disable gesture typing option in the settings page for the virtual "
2553 "keyboard.";
2554
2555const char kInputViewName[] = "Input views";
2556const char kInputViewDescription[] =
2557 "Enable IME extensions to supply custom views for user input such as "
2558 "virtual keyboards.";
2559
2560const char kMemoryPressureThresholdName[] =
2561 "Memory discard strategy for advanced pressure handling";
2562const char kMemoryPressureThresholdDescription[] =
2563 "Memory discarding strategy to use";
2564const char kConservativeThresholds[] =
2565 "Conservative memory pressure release strategy";
2566const char kAggressiveCacheDiscardThresholds[] =
2567 "Aggressive cache release strategy";
2568const char kAggressiveTabDiscardThresholds[] =
2569 "Aggressive tab release strategy";
2570const char kAggressiveThresholds[] =
2571 "Aggressive tab and cache release strategy";
2572
2573const char kMtpWriteSupportName[] = "MTP write support";
2574const char kMtpWriteSupportDescription[] =
2575 "MTP write support in File System API (and file manager). In-place editing "
2576 "operations are not supported.";
2577
2578const char kMultideviceName[] = "Enable multidevice features";
2579const char kMultideviceDescription[] =
2580 "Enables UI for controlling multidevice features.";
vabr0215a8e2017-03-28 12:47:342581
Bailey Berrodca8eeca02017-11-18 00:49:122582const char kNativeSmbName[] = "Native Smb Client";
2583const char kNativeSmbDescription[] =
2584 "If enabled, allows connections to an smb filesystem via Files app";
Bailey Berrofc0da1b2017-11-02 11:02:302585
vabr0215a8e2017-03-28 12:47:342586const char kNetworkPortalNotificationName[] =
2587 "Notifications about captive portals";
vabr0215a8e2017-03-28 12:47:342588const char kNetworkPortalNotificationDescription[] =
2589 "If enabled, notification is displayed when device is connected to a "
2590 "network behind captive portal.";
2591
stevenjbe1d457382017-05-24 22:37:242592const char kNetworkSettingsConfigName[] =
2593 "Settings based Network Configuration";
stevenjbe1d457382017-05-24 22:37:242594const char kNetworkSettingsConfigDescription[] =
2595 "Enables the Settings based network configuration UI instead of the Views "
2596 "based configuration dialog.";
2597
Brett Wilson7b44537e2017-08-18 01:38:282598const char kNewKoreanImeName[] = "New Korean IME";
2599const char kNewKoreanImeDescription[] =
2600 "New Korean IME, which is based on Google Input Tools' HMM engine.";
vabr0215a8e2017-03-28 12:47:342601
Brett Wilson7b44537e2017-08-18 01:38:282602const char kNewZipUnpackerName[] = "New ZIP unpacker";
2603const char kNewZipUnpackerDescription[] =
2604 "New ZIP unpacker flow, based on the File System Provider API.";
vabr0215a8e2017-03-28 12:47:342605
Brett Wilson7b44537e2017-08-18 01:38:282606const char kPhysicalKeyboardAutocorrectName[] = "Physical keyboard autocorrect";
2607const char kPhysicalKeyboardAutocorrectDescription[] =
2608 "Enable physical keyboard autocorrect for US keyboard, which can provide "
2609 "suggestions as typing on physical keyboard.";
vabr0215a8e2017-03-28 12:47:342610
2611const char kPrinterProviderSearchAppName[] =
2612 "Chrome Web Store Gallery app for printer drivers";
vabr0215a8e2017-03-28 12:47:342613const char kPrinterProviderSearchAppDescription[] =
2614 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:192615 "searches Chrome Web Store for extensions that support printing to a USB "
2616 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:342617
Brett Wilson7b44537e2017-08-18 01:38:282618const char kQuickUnlockPinName[] = "Quick Unlock (PIN)";
2619const char kQuickUnlockPinDescription[] =
2620 "Enabling PIN quick unlock allows you to use a PIN to unlock your ChromeOS "
2621 "device on the lock screen after you have signed into your device.";
2622const char kQuickUnlockPinSignin[] = "Enable PIN when logging in.";
2623const char kQuickUnlockPinSigninDescription[] =
2624 "Enabling PIN allows you to use a PIN to sign in and unlock your ChromeOS "
2625 "device. After changing this flag PIN needs to be set up again.";
2626const char kQuickUnlockFingerprint[] = "Quick Unlock (Fingerprint)";
2627const char kQuickUnlockFingerprintDescription[] =
2628 "Enabling fingerprint quick unlock allows you to setup and use a "
2629 "fingerprint to unlock your Chromebook on the lock screen after you have "
2630 "signed into your device.";
vabr0215a8e2017-03-28 12:47:342631
Brett Wilson7b44537e2017-08-18 01:38:282632const char kOfficeEditingComponentAppName[] =
2633 "Office Editing for Docs, Sheets & Slides";
2634const char kOfficeEditingComponentAppDescription[] =
2635 "Office Editing for Docs, Sheets & Slides for testing purposes.";
Daniel Erat33054b22017-06-27 16:18:072636
James Cook0ba192bf2017-12-01 20:53:112637const char kShowTapsName[] = "Show taps";
2638const char kShowTapsDescription[] =
2639 "Draws a circle at each touch point, which makes touch points more obvious "
2640 "when projecting or mirroring the display. Similar to the Android OS "
2641 "developer option.";
2642
2643const char kShowTouchHudName[] = "Show HUD for touch points";
2644const char kShowTouchHudDescription[] =
2645 "Shows a trail of colored dots for the last few touch points. Pressing "
2646 "Ctrl-Alt-I shows a heads-up display view in the top-left corner. Helps "
2647 "debug hardware issues that generate spurious touch events.";
2648
Chung-Sheng Wu468b0b32017-09-01 14:41:572649const char kSysInternalsName[] = "Enable Sys-Internals";
2650const char kSysInternalsDescription[] =
2651 "If enabled, user can monitor system information at "
2652 "chrome://sys-internals.";
2653
Brett Wilson7b44537e2017-08-18 01:38:282654const char kTeamDrivesName[] = "Enable Team Drives Integration";
2655const char kTeamDrivesDescription[] =
2656 "If enabled, files under Team Drives will appear in the Files app.";
vabr0215a8e2017-03-28 12:47:342657
Brett Wilson7b44537e2017-08-18 01:38:282658const char kTetherName[] = "Instant Tethering";
2659const char kTetherDescription[] =
2660 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
2661 "phone to share its Internet connection with this device.";
stanisc14bed0b132017-05-10 17:46:372662
Brett Wilson7b44537e2017-08-18 01:38:282663const char kTouchscreenCalibrationName[] =
2664 "Enable/disable touchscreen calibration option in material design settings";
2665const char kTouchscreenCalibrationDescription[] =
2666 "If enabled, the user can calibrate the touch screen displays in "
2667 "chrome://settings/display.";
yhanadac5bff5b2017-05-18 06:37:092668
Mitsuru Oshima63d3f2a2017-08-23 00:12:112669// Force UI Mode
2670const char kUiModeName[] = "Force Ui Mode";
2671const char kUiModeDescription[] =
2672 R"*(This flag can be used to force a certain mode on to a chromebook, )*"
2673 R"*(despite its current orientation. "Tablet" means that the )*"
2674 R"*(chromebook will act as if it were in tablet mode. "Clamshell" )*"
2675 R"*(means that the chromebook will act as if it were in clamshell )*"
2676 R"*(mode . "Auto" means that the chromebook will alternate between )*"
2677 R"*(the two, based on its orientation.)*";
2678const char kUiModeTablet[] = "TouchView";
2679const char kUiModeClamshell[] = "Clamshell";
2680const char kUiModeAuto[] = "Auto (default)";
2681
bruthigeafb0c02017-06-09 13:11:532682const char kUiDevToolsName[] = "Enable native UI inspection";
2683const char kUiDevToolsDescription[] =
2684 "Enables inspection of native UI elements. For local inspection use "
2685 "chrome://inspect#other";
2686
Brett Wilson7b44537e2017-08-18 01:38:282687const char kUseMusName[] = "Mus";
2688const char kUseMusDescription[] = "Enable the Mojo UI service.";
2689const char kEnableMashDescription[] =
2690 "Mash (UI, Chrome and ash in separate services)";
2691const char kEnableMusDescription[] =
2692 "Mus (UI in separate service, Chrome and ash in same service)";
2693
Miguel Casas-Sanchez8ba32f92017-11-07 05:03:342694// TODO(mcasas): remove after https://crbug.com/771345.
2695const char kUseMonitorColorSpaceName[] = "Use monitor color space";
2696const char kUseMonitorColorSpaceDescription[] =
2697 "Enables Chrome to use the color space information provided by the monitor"
2698 " instead of the default sRGB color space.";
2699
Brett Wilson7b44537e2017-08-18 01:38:282700const char kVideoPlayerChromecastSupportName[] =
2701 "Experimental Chromecast support for Video Player";
2702const char kVideoPlayerChromecastSupportDescription[] =
2703 "This option enables experimental Chromecast support for Video Player app "
2704 "on ChromeOS.";
2705
2706const char kVirtualKeyboardName[] = "Virtual Keyboard";
2707const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
2708
2709const char kVirtualKeyboardOverscrollName[] = "Virtual Keyboard Overscroll";
2710const char kVirtualKeyboardOverscrollDescription[] =
2711 "Enables virtual keyboard overscroll support.";
2712
2713const char kVoiceInputName[] = "Voice input on virtual keyboard";
2714const char kVoiceInputDescription[] =
2715 "Enables voice input on virtual keyboard.";
2716
2717const char kWakeOnPacketsName[] = "Wake On Packets";
2718const char kWakeOnPacketsDescription[] =
2719 "Enables waking the device based on the receipt of some network packets.";
orenb21da031c2017-06-30 21:24:202720
yhanadac5bff5b2017-05-18 06:37:092721#endif // defined(OS_CHROMEOS)
2722
Brett Wilson7b44537e2017-08-18 01:38:282723// Random platform combinations -----------------------------------------------
2724
2725#if defined(OS_WIN) || defined(OS_LINUX)
2726
2727const char kEnableInputImeApiName[] = "Enable Input IME API";
2728const char kEnableInputImeApiDescription[] =
2729 "Enable the use of chrome.input.ime API.";
2730
2731#endif // defined(OS_WIN) || defined(OS_LINUX)
2732
2733#if defined(OS_WIN) || defined(OS_MACOSX)
2734
2735const char kAutomaticTabDiscardingName[] = "Automatic tab discarding";
2736const char kAutomaticTabDiscardingDescription[] =
2737 "If enabled, tabs get automatically discarded from memory when the system "
2738 "memory is low. Discarded tabs are still visible on the tab strip and get "
2739 "reloaded when clicked on. Info about discarded tabs can be found at "
2740 "chrome://discards.";
2741
2742#endif // defined(OS_WIN) || defined(OS_MACOSX)
2743
2744// Feature flags --------------------------------------------------------------
2745
2746#if BUILDFLAG(ENABLE_VR)
2747
David Dorwin5a496c32017-11-17 01:45:052748const char kWebVrVsyncAlignName[] = "WebVR VSync-aligned timing";
2749const char kWebVrVsyncAlignDescription[] =
2750 "Align WebVR application rendering with VSync for smoother animations.";
2751
Brett Wilson7b44537e2017-08-18 01:38:282752#if defined(OS_ANDROID)
2753
David Dorwin5a496c32017-11-17 01:45:052754const char kVrBrowsingName[] = "VR browsing";
2755const char kVrBrowsingDescription[] =
2756 "Browsing within a VR headset if available for this device.";
Brett Wilson7b44537e2017-08-18 01:38:282757
Yash Malik50bcfc12017-11-18 00:47:592758const char kVrBrowserKeyboardName[] = "Chrome VR virtual keyboard.";
2759const char kVrBrowserKeyboardDescription[] =
2760 "Enable a virtual keyboard for Chrome VR.";
2761
David Dorwin5a496c32017-11-17 01:45:052762const char kVrBrowsingExperimentalFeaturesName[] =
2763 "VR browsing experimental features";
2764const char kVrBrowsingExperimentalFeaturesDescription[] =
2765 "Experimental VR browsing features that are under development.";
Brett Wilson7b44537e2017-08-18 01:38:282766
David Dorwin5a496c32017-11-17 01:45:052767const char kVrBrowsingExperimentalRenderingName[] =
2768 "VR browsing experimental rendering features";
2769const char kVrBrowsingExperimentalRenderingDescription[] =
2770 "Experimental rendering features for VR browsing (e.g. power-saving "
2771 "rendering modes).";
Michael Thiessenb480fe92017-10-26 16:25:102772
David Dorwin5a496c32017-11-17 01:45:052773const char kVrBrowsingInCustomTabName[] = "VR browsing in Custom Tabs";
2774const char kVrBrowsingInCustomTabDescription[] =
2775 "Allow browsing within a VR headset while in a Custom Tab.";
2776
2777const char kVrLaunchIntentsName[] = "VR intents";
2778const char kVrLaunchIntentsDescription[] =
Yash Malik812aebe2017-10-31 18:17:262779 "Allow intents to launch Chrome in VR mode.";
2780
David Dorwin5a496c32017-11-17 01:45:052781const char kWebVrAutopresentFromIntentName[] =
2782 "WebVR auto presentation from intents";
2783const char kWebVrAutopresentFromIntentDescription[] =
2784 "Allow auto presentation of WebVR content from trusted first-party apps.";
Brett Wilson7b44537e2017-08-18 01:38:282785
2786#endif // OS_ANDROID
2787
Bill Orr49527562017-11-22 16:58:482788#if BUILDFLAG(ENABLE_OPENVR)
2789const char kOpenVRName[] = "OpenVR hardware support";
2790const char kOpenVRDescription[] =
2791 "If enabled, Chrome will use OpenVR devices for VR.";
2792#endif // ENABLE_OPENVR
2793
Brett Wilson7b44537e2017-08-18 01:38:282794#endif // ENABLE_VR
2795
Nico Weberaf3b00b2017-09-11 17:58:172796#if BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:282797
2798const char kNaclDebugMaskName[] =
2799 "Restrict Native Client GDB-based debugging by pattern";
2800const char kNaclDebugMaskDescription[] =
2801 "Restricts Native Client application GDB-based debugging by URL of "
2802 "manifest file. Native Client GDB-based debugging must be enabled for this "
2803 "option to work.";
2804const char kNaclDebugMaskChoiceDebugAll[] = "Debug everything.";
2805const char kNaclDebugMaskChoiceExcludeUtilsPnacl[] =
2806 "Debug everything except secure shell and the PNaCl translator.";
2807const char kNaclDebugMaskChoiceIncludeDebug[] =
2808 "Debug only if manifest URL ends with debug.nmf.";
2809
2810const char kNaclDebugName[] = "Native Client GDB-based debugging";
2811const char kNaclDebugDescription[] =
2812 "Enable GDB debug stub. This will stop a Native Client application on "
2813 "startup and wait for nacl-gdb (from the NaCl SDK) to attach to it.";
2814
2815const char kNaclName[] = "Native Client";
2816const char kNaclDescription[] =
2817 "Support Native Client for all web applications, even those that were not "
2818 "installed from the Chrome Web Store.";
2819
2820const char kPnaclSubzeroName[] = "Force PNaCl Subzero";
2821const char kPnaclSubzeroDescription[] =
2822 "Force the use of PNaCl's fast Subzero translator for all pexe files.";
2823
Nico Weberaf3b00b2017-09-11 17:58:172824#endif // BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:282825
Brett Wilson7b44537e2017-08-18 01:38:282826#if BUILDFLAG(ENABLE_WEBRTC)
2827
2828const char kWebrtcH264WithOpenh264FfmpegName[] =
2829 "WebRTC H.264 software video encoder/decoder";
2830const char kWebrtcH264WithOpenh264FfmpegDescription[] =
2831 "When enabled, an H.264 software video encoder/decoder pair is included. "
2832 "If a hardware encoder/decoder is also available it may be used instead of "
2833 "this encoder/decoder.";
2834
2835#endif // BUILDFLAG(ENABLE_WEBRTC)
2836
James Cookf9d34d22017-10-04 16:39:352837#if defined(OS_CHROMEOS)
Brett Wilson7b44537e2017-08-18 01:38:282838
Wenzhao Zang50fb0b22017-11-07 01:38:422839const char kAshDisableLoginDimAndBlurName[] =
2840 "Disable dimming and blur on login screen.";
2841const char kAshDisableLoginDimAndBlurDescription[] =
2842 "Disable dimming and blur on login screen.";
2843
Brett Wilson7b44537e2017-08-18 01:38:282844const char kAshDisableSmoothScreenRotationName[] =
2845 "Disable smooth rotation animations.";
2846const char kAshDisableSmoothScreenRotationDescription[] =
2847 "Disable smooth rotation animations.";
2848
Qiang Xub7e921072017-12-07 21:02:112849const char kAshEnableDisplayMoveWindowAccelsName[] =
2850 "Enable shortcuts for moving window between displays.";
2851const char kAshEnableDisplayMoveWindowAccelsDescription[] =
2852 "Enable shortcuts for moving window between displays.";
2853
wutaoc70d7b92017-11-01 08:06:012854const char kAshEnableKeyboardShortcutViewerName[] =
2855 "Enable keyboard shortcut viewer.";
2856const char kAshEnableKeyboardShortcutViewerDescription[] =
2857 "Enable keyboard shortcut viewer.";
2858
Brett Wilson7b44537e2017-08-18 01:38:282859const char kAshEnableMirroredScreenName[] = "Enable mirrored screen mode.";
2860const char kAshEnableMirroredScreenDescription[] =
2861 "Enable the mirrored screen mode. This mode flips the screen image "
2862 "horizontally.";
2863
2864const char kAshShelfColorName[] = "Shelf color in Chrome OS system UI";
2865const char kAshShelfColorDescription[] =
2866 "Enables/disables the shelf color to be a derived from the wallpaper. The "
2867 "--ash-shelf-color-scheme flag defines how that color is derived.";
2868
2869const char kAshShelfColorScheme[] = "Shelf color scheme in Chrome OS System UI";
2870const char kAshShelfColorSchemeDescription[] =
2871 "Specify how the color is derived from the wallpaper. This flag is only "
2872 "used when the --ash-shelf-color flag is enabled. Defaults to Dark & Muted";
2873const char kAshShelfColorSchemeLightVibrant[] = "Light & Vibrant";
2874const char kAshShelfColorSchemeNormalVibrant[] = "Normal & Vibrant";
2875const char kAshShelfColorSchemeDarkVibrant[] = "Dark & Vibrant";
2876const char kAshShelfColorSchemeLightMuted[] = "Light & Muted";
2877const char kAshShelfColorSchemeNormalMuted[] = "Normal & Muted";
2878const char kAshShelfColorSchemeDarkMuted[] = "Dark & Muted";
2879
Mike Wassermana38a8a62017-10-02 03:04:272880const char kAshDisableShelfModelSynchronization[] =
2881 "Disable shelf model synchronization";
2882const char kAshDisableShelfModelSynchronizationDescription[] =
2883 "Use a single in-process shelf data model shared between Chrome and Ash. "
2884 "This only applies to the Classic Ash and Mus configs; synchronization "
2885 "between two models is required when running the Mash config via --mash.";
Mike Wasserman2115b162017-09-19 23:42:372886
Brett Wilson7b44537e2017-08-18 01:38:282887const char kMaterialDesignInkDropAnimationSpeedName[] =
Mike Wasserman2115b162017-09-19 23:42:372888 "Material design ink drop animation speed";
Brett Wilson7b44537e2017-08-18 01:38:282889const char kMaterialDesignInkDropAnimationSpeedDescription[] =
2890 "Sets the speed of the experimental visual feedback animations for "
2891 "material design.";
2892const char kMaterialDesignInkDropAnimationFast[] = "Fast";
2893const char kMaterialDesignInkDropAnimationSlow[] = "Slow";
2894
2895const char kUiShowCompositedLayerBordersName[] =
2896 "Show UI composited layer borders";
2897const char kUiShowCompositedLayerBordersDescription[] =
2898 "Show border around composited layers created by UI.";
2899const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
2900const char kUiShowCompositedLayerBordersSurface[] = "Surface";
2901const char kUiShowCompositedLayerBordersLayer[] = "Layer";
2902const char kUiShowCompositedLayerBordersAll[] = "All";
2903
2904const char kUiSlowAnimationsName[] = "Slow UI animations";
2905const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
2906
James Cookf9d34d22017-10-04 16:39:352907#endif // defined(OS_CHROMEOS)
Brett Wilson7b44537e2017-08-18 01:38:282908
Brett Wilson735e1452017-11-13 21:04:092909#if defined(TOOLKIT_VIEWS)
2910
2911const char kExperimentalTabControllerName[] = "Experimental tab controller.";
2912const char kExperimentalTabControllerDescription[] =
2913 "Enable controller for highly experimental tab policies.";
2914
2915#endif // defined(TOOLKIT_VIEWS)
2916
Brett Wilson7b44537e2017-08-18 01:38:282917#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
2918
2919const char kAutofillCreditCardUploadName[] =
2920 "Enable offering upload of Autofilled credit cards";
2921const char kAutofillCreditCardUploadDescription[] =
2922 "Enables a new option to upload credit cards to Google Payments for sync "
2923 "to all Chrome devices.";
2924
2925#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
2926
2927// ============================================================================
2928// Don't just add flags to the end, put them in the right section in
2929// alphabetical order just like the header file.
2930// ============================================================================
2931
vabr0215a8e2017-03-28 12:47:342932} // namespace flag_descriptions