blob: 7202b08a98cc3b2a92caeeb5fffd5ebb410d9813 [file] [log] [blame]
vabr0215a8e2017-03-28 12:47:341// Copyright 2017 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "chrome/browser/flag_descriptions.h"
6
Brett Wilson7b44537e2017-08-18 01:38:287// Keep in identical order as the header file, see the comment at the top
8// for formatting rules.
9
vabr0215a8e2017-03-28 12:47:3410namespace flag_descriptions {
11
Brett Wilsonf27ff602017-07-07 22:28:4712const char kAccelerated2dCanvasName[] = "Accelerated 2D canvas";
13const char kAccelerated2dCanvasDescription[] =
14 "Enables the use of the GPU to perform 2d canvas rendering instead of "
15 "using software rendering.";
horodb71a5a2017-06-09 16:08:2416
Brett Wilsonf27ff602017-07-07 22:28:4717const char kAcceleratedVideoDecodeName[] = "Hardware-accelerated video decode";
18const char kAcceleratedVideoDecodeDescription[] =
19 "Hardware-accelerated video decode where available.";
20
21const char kAffiliationBasedMatchingName[] =
22 "Affiliation based matching in password manager";
23const char kAffiliationBasedMatchingDescription[] =
24 "Allow credentials stored for Android applications to be filled into "
25 "corresponding websites.";
26
27const char kAllowInsecureLocalhostName[] =
28 "Allow invalid certificates for resources loaded from localhost.";
29const char kAllowInsecureLocalhostDescription[] =
30 "Allows requests to localhost over HTTPS even when an invalid certificate "
31 "is presented.";
32
33const char kAllowNaclSocketApiName[] = "NaCl Socket API.";
34const char kAllowNaclSocketApiDescription[] =
35 "Allows applications to use NaCl Socket API. Use only to test NaCl "
36 "plugins.";
37
Kunihiko Sakamoto4d407982018-07-10 04:56:2938const char kAllowSignedHTTPExchangeCertsWithoutExtensionName[] =
39 "Allow Signed HTTP Exchange certificates without extension";
40const char kAllowSignedHTTPExchangeCertsWithoutExtensionDescription[] =
41 "Accepts Origin-Signed HTTP Exchanges to be signed with certificates "
42 "that do not have CanSignHttpExchangesDraft extension. Requires "
43 "#enable-signed-http-exchange. Warning: Enabling this may pose a security "
44 "risk.";
45
Jeremy Klein586b4ccc2018-06-09 21:05:4846const char kAndroidMessagesIntegrationName[] = "Android Messages integration";
47const char kAndroidMessagesIntegrationDescription[] =
48 "Enables Chrome OS integration with Android messages.";
49
Brett Wilsonf27ff602017-07-07 22:28:4750const char kAppBannersName[] = "App Banners";
51const char kAppBannersDescription[] =
52 "Enable the display of Progressive Web App banners, which prompt a user to "
53 "add a web app to their shelf, or other platform-specific equivalent.";
54
Ioana Pandelef9689a062018-06-22 15:35:5155const char kAutomaticPasswordGenerationName[] = "Automatic password generation";
56const char kAutomaticPasswordGenerationDescription[] =
57 "Allow Chrome to offer to generate passwords when it detects account "
58 "creation pages.";
59
Michael Lippautzebbc5a82018-05-30 10:41:4260const char kEnableBlinkHeapIncrementalMarkingName[] =
61 "Blink Heap Incremental Marking";
62const char kEnableBlinkHeapIncrementalMarkingDescription[] =
63 "Enable incremental marking in Blink";
64
Ulan Degenbaevb5466a92018-07-19 12:35:3465const char kEnableBloatedRendererDetectionName[] = "Bloated renderer detection";
66const char kEnableBloatedRendererDetectionDescription[] =
67 "Enable bloated renderer detection";
68
Tetsui Ohkubo2852b952018-02-23 04:12:0169const char kSystemTrayUnifiedName[] = "New system menu";
70const char kSystemTrayUnifiedDescription[] =
Tetsui Ohkubof860b8e2018-02-16 03:50:5571 "Enable the experimental system menu.";
72
Khushalba202212017-07-12 19:53:4973const char kAsyncImageDecodingName[] = "AsyncImageDecoding";
74const char kAsyncImageDecodingDescription[] =
75 "Enables asynchronous decoding of images from raster for web content";
76
Roger McFarlane2eceba982018-05-18 01:37:1177const char kAutofillCacheQueryResponsesName[] =
78 "Cache Autofill Query Responses";
79const char kAutofillCacheQueryResponsesDescription[] =
80 "When enabled, autofill will cache the responses it receives from the "
81 "crowd-sourced field type prediction server.";
82
sebsge35b762c2018-03-29 20:33:2783const char kAutofillDynamicFormsName[] = "Autofill Dynamic Forms";
84const char kAutofillDynamicFormsDescription[] =
85 "Allows autofill to fill dynamically changing forms";
86
Parastoo Geranmayeh2dcd14f92018-06-01 17:08:3987const char kAutofillPrefilledFieldsName[] = "Autofill Prefilled Fields";
88const char kAutofillPrefilledFieldsDescription[] =
89 "Allows autofill to fill fields previously filled by the website";
90
Parastoo Geranmayeh071d725c2018-06-26 17:35:2291const char kAutofillRationalizeRepeatedServerPredictionsName[] =
92 "Autofill Rationalization of Repeated Server Field Type Predictions";
93const char kAutofillRationalizeRepeatedServerPredictionsDescription[] =
94 "Allows autofill to rationalize repeated server field type predictions.";
95
Roger McFarlane1a37d7b2018-04-20 22:45:1996const char kAutofillEnforceMinRequiredFieldsForHeuristicsName[] =
97 "Autofill Enforce Min Required Fields For Heuristics";
98const char kAutofillEnforceMinRequiredFieldsForHeuristicsDescription[] =
99 "When enabled, autofill will generally require a form to have at least 3 "
100 "fields before allowing heuristic field-type prediction to occur.";
101
102const char kAutofillEnforceMinRequiredFieldsForQueryName[] =
103 "Autofill Enforce Min Required Fields For Query";
104const char kAutofillEnforceMinRequiredFieldsForQueryDescription[] =
105 "When enabled, autofill will generally require a form to have at least 3 "
106 "fields before querying the autofill server for field-type predictions.";
107
108const char kAutofillEnforceMinRequiredFieldsForUploadName[] =
109 "Autofill Enforce Min Required Fields For Upload";
110const char kAutofillEnforceMinRequiredFieldsForUploadDescription[] =
111 "When enabled, autofill will generally require a form to have at least 3 "
112 "fillable fields before uploading field-type votes for that form.";
113
Moe Ahmadid3ddfcb2018-04-20 19:51:08114const char kAutofillRestrictUnownedFieldsToFormlessCheckoutName[] =
115 "Restrict formless form extraction";
116const char kAutofillRestrictUnownedFieldsToFormlessCheckoutDescription[] =
117 "Restrict extraction of formless forms to checkout flows";
118
Brett Wilsonf27ff602017-07-07 22:28:47119const char kAutoplayPolicyName[] = "Autoplay policy";
120const char kAutoplayPolicyDescription[] =
121 "Policy used when deciding if audio or video is allowed to autoplay.";
122
123const char kAutoplayPolicyUserGestureRequiredForCrossOrigin[] =
124 "User gesture is required for cross-origin iframes.";
125const char kAutoplayPolicyNoUserGestureRequired[] =
126 "No user gesture is required.";
127const char kAutoplayPolicyUserGestureRequired[] = "User gesture is required.";
128const char kAutoplayPolicyDocumentUserActivation[] =
129 "Document user activation is required.";
130
Johanne0cc6902017-11-16 00:23:50131extern const char kAv1DecoderName[] = "Enable AV1 video decoding.";
132extern const char kAv1DecoderDescription[] =
133 "Allow decoding of files with the AV1 video codec.";
134
Brett Wilsonf27ff602017-07-07 22:28:47135const char kBackgroundVideoTrackOptimizationName[] =
136 "Optimize background video playback.";
137const char kBackgroundVideoTrackOptimizationDescription[] =
138 "Disable video tracks when the video is played in the background to "
139 "optimize performance.";
140
141const char kBleAdvertisingInExtensionsName[] = "BLE Advertising in Chrome Apps";
142const char kBleAdvertisingInExtensionsDescription[] =
143 "Enables BLE Advertising in Chrome Apps. BLE Advertising might interfere "
144 "with regular use of Bluetooth Low Energy features.";
145
Charles Harrisond629cc62017-10-05 01:39:54146const char kBlockTabUndersName[] = "Block tab-unders";
147const char kBlockTabUndersDescription[] =
148 "Blocks tab-unders in Chrome with some native UI to allow the user to "
149 "proceed.";
150
Brett Wilsonf27ff602017-07-07 22:28:47151const char kBrowserTaskSchedulerName[] = "Task Scheduler";
152const char kBrowserTaskSchedulerDescription[] =
153 "Enables redirection of some task posting APIs to the task scheduler.";
154
Carlos IL766fbc882018-02-16 02:34:52155const char kBundledConnectionHelpName[] = "Bundled Connection Help";
156const char kBundledConnectionHelpDescription[] =
Carlos ILaafcd73a2018-07-10 20:08:37157 "Enables or disables redirection to local help content for users who get "
158 "an interstitial after clicking the 'Learn More' link on a previous "
159 "interstitial.";
Carlos IL766fbc882018-02-16 02:34:52160
Brett Wilsonf27ff602017-07-07 22:28:47161const char kBypassAppBannerEngagementChecksName[] =
162 "Bypass user engagement checks";
163const char kBypassAppBannerEngagementChecksDescription[] =
164 "Bypasses user engagement checks for displaying app banners, such as "
165 "requiring that users have visited the site before and that the banner "
166 "hasn't been shown recently. This allows developers to test that other "
167 "eligibility requirements for showing app banners, such as having a "
168 "manifest, are met.";
169
Miguel Casas454d9cf2018-06-28 16:25:00170const char kCanvas2DImageChromiumName[] = "Canvas 2D Image Chromium";
171const char kCanvas2DImageChromiumDescription[] =
172 "Allows for using CHROMIUM_image GLES2 extension for HTML Canvas Contexts";
173
Brett Wilsonf27ff602017-07-07 22:28:47174const char kCastStreamingHwEncodingName[] =
175 "Cast Streaming hardware video encoding";
176const char kCastStreamingHwEncodingDescription[] =
177 "This option enables support in Cast Streaming for encoding video streams "
178 "using platform hardware.";
179
Amber Won478561d2017-08-19 01:02:59180const char kClickToOpenPDFName[] = "Click to open embedded PDFs";
181const char kClickToOpenPDFDescription[] =
182 "When the PDF plugin is unavailable, show a click-to-open placeholder for "
183 "embedded PDFs.";
184
Gary Kacmarcikfb69b212017-11-14 03:41:08185const char kClipboardContentSettingName[] = "Clipboard content setting";
186const char kClipboardContentSettingDescription[] =
187 "Enables a site-wide permission in the UI which controls access to the "
188 "asynchronous clipboard web API";
189
Peter Kastingb78046182018-06-29 20:15:13190const char kCloseButtonsInactiveTabs[] = "Close buttons on inactive tabs";
191const char kCloseButtonsInactiveTabsDescription[] =
192 "Shows close buttons on inactive tabs in non-touch mode.";
193
Brett Wilsonf27ff602017-07-07 22:28:47194const char kCloudImportName[] = "Cloud Import";
195const char kCloudImportDescription[] = "Allows the cloud-import feature.";
196
rbpotter9990eb42018-07-12 05:34:59197const char kCloudPrinterHandlerName[] = "Enable Cloud Printer Handler";
198const char kCloudPrinterHandlerDescription[] =
199 "Use the new cloud printer handler for communicating with the cloud "
200 "print server, instead of the cloud print interface in the Print "
201 "Preview WebUI.";
202
Christopher Cameronceb8727d2017-09-07 23:53:16203const char kForceColorProfileSRGB[] = "sRGB";
204const char kForceColorProfileP3[] = "Display P3 D65";
205const char kForceColorProfileColorSpin[] = "Color spin with gamma 2.4";
206const char kForceColorProfileHdr[] = "scRGB linear (HDR where available)";
207
208const char kForceColorProfileName[] = "Force color profile";
209const char kForceColorProfileDescription[] =
210 "Forces Chrome to use a specific color profile instead of the color "
211 "of the window's current monitor, as specified by the operating system.";
212
Brett Wilsonf27ff602017-07-07 22:28:47213const char kCompositedLayerBordersName[] = "Composited render layer borders";
214const char kCompositedLayerBordersDescription[] =
215 "Renders a border around composited Render Layers to help debug and study "
216 "layer compositing.";
217
Theresaf39c1882018-03-21 18:18:07218const char kContextualSuggestionsBottomSheetName[] =
Theresa818d3452018-05-22 00:08:07219 "Contextual Suggestions Bottom Sheet";
Theresaf39c1882018-03-21 18:18:07220const char kContextualSuggestionsBottomSheetDescription[] =
221 "If enabled, shows contextual suggestions in the bottom sheet.";
Brett Wilsonf27ff602017-07-07 22:28:47222
Theresac34db2d2018-06-28 00:03:11223const char kContextualSuggestionsButtonName[] = "Contextual Suggestions Button";
224const char kContextualSuggestionsButtonDescription[] =
225 "If enabled, shows a button to trigger contextual suggestions.";
226
Theresa818d3452018-05-22 00:08:07227const char kContextualSuggestionsSlimPeekUIName[] =
228 "Contextual Suggestions Slim Peek UI";
229const char kContextualSuggestionsSlimPeekUIDescription[] =
230 "Use a slimmer peek UI for the contextual suggestions bottom sheet.";
231
Theresa0f2947b92018-07-02 21:27:58232const char kContextualSuggestionsOptOutName[] =
233 "Contextual Suggestions Opt-out";
234const char kContextualSuggestionsOptOutDescription[] =
235 "If enabled, allows the user to opt out of contextual suggestions.";
236
Brett Wilsonf27ff602017-07-07 22:28:47237const char kCreditCardAssistName[] = "Credit Card Assisted Filling";
238const char kCreditCardAssistDescription[] =
239 "Enable assisted credit card filling on certain sites.";
240
241const char kCrossProcessGuestViewIsolationName[] =
242 "Cross process frames for guests";
243const char kCrossProcessGuestViewIsolationDescription[] =
244 "Highly experimental where guests such as <webview> are implemented on "
245 "the out-of-process iframe infrastructure.";
246
Thanh Le659cb102017-12-20 22:00:19247const char kDataSaverServerPreviewsName[] = "Data Saver Server Previews";
248const char kDataSaverServerPreviewsDescription[] =
249 "Allow the Data Reduction Proxy to serve previews.";
Brett Wilsonf27ff602017-07-07 22:28:47250
251const char kDatasaverPromptName[] = "Cellular Data Saver Prompt";
252const char kDatasaverPromptDescription[] =
253 "Enables a prompt, which appears when a cellular network connection is "
254 "detected, to take the user to the Data Saver extension page on Chrome Web "
255 "Store.";
256const char kDatasaverPromptDemoMode[] = "Demo mode";
257
Wez54dc71b2018-04-17 00:42:34258#if DCHECK_IS_CONFIGURABLE
259const char kDcheckIsFatalName[] = "DCHECKs are fatal";
260const char kDcheckIsFatalDescription[] =
261 "By default Chrome will evaluate in this build, but only log failures, "
262 "rather than crashing. If enabled, DCHECKs will crash the calling process.";
263#endif // DCHECK_IS_CONFIGURABLE
264
Brett Wilsonf27ff602017-07-07 22:28:47265const char kDebugPackedAppName[] = "Debugging for packed apps";
266const char kDebugPackedAppDescription[] =
267 "Enables debugging context menu options such as Inspect Element for packed "
268 "applications.";
269
270const char kDefaultTileHeightName[] = "Default tile height";
271const char kDefaultTileHeightDescription[] = "Specify the default tile height.";
272const char kDefaultTileHeightShort[] = "128";
273const char kDefaultTileHeightTall[] = "256";
274const char kDefaultTileHeightGrande[] = "512";
275const char kDefaultTileHeightVenti[] = "1024";
276
277const char kDefaultTileWidthName[] = "Default tile width";
278const char kDefaultTileWidthDescription[] = "Specify the default tile width.";
279const char kDefaultTileWidthShort[] = "128";
280const char kDefaultTileWidthTall[] = "256";
281const char kDefaultTileWidthGrande[] = "512";
282const char kDefaultTileWidthVenti[] = "1024";
283
284const char kDebugShortcutsName[] = "Debugging keyboard shortcuts";
285const char kDebugShortcutsDescription[] =
286 "Enables additional keyboard shortcuts that are useful for debugging Ash.";
287
288const char kDeviceDiscoveryNotificationsName[] =
289 "Device Discovery Notifications";
290const char kDeviceDiscoveryNotificationsDescription[] =
291 "Device discovery notifications on local network.";
292
293const char kDevtoolsExperimentsName[] = "Developer Tools experiments";
294const char kDevtoolsExperimentsDescription[] =
295 "Enables Developer Tools experiments. Use Settings panel in Developer "
296 "Tools to toggle individual experiments.";
297
298const char kDisableAudioForDesktopShareName[] =
299 "Disable Audio For Desktop Share";
300const char kDisableAudioForDesktopShareDescription[] =
301 "With this flag on, desktop share picker window will not let the user "
302 "choose whether to share audio.";
303
Chris Palmer917bc052018-03-14 19:28:31304const char kDisablePushStateThrottleName[] = "Disable pushState throttling";
305const char kDisablePushStateThrottleDescription[] =
306 "Disables throttling of history.pushState and history.replaceState method "
307 "calls.";
308
Brett Wilsonf27ff602017-07-07 22:28:47309const char kDisableTabForDesktopShareName[] =
310 "Disable Desktop Share with tab source";
311const char kDisableTabForDesktopShareDescription[] =
312 "This flag controls whether users can choose a tab for desktop share.";
313
314const char kDisallowDocWrittenScriptsUiName[] =
315 "Block scripts loaded via document.write";
316const char kDisallowDocWrittenScriptsUiDescription[] =
317 "Disallows fetches for third-party parser-blocking scripts inserted into "
318 "the main frame via document.write.";
319
Christopher Thompson2ffffa2c2018-05-18 23:06:37320const char kDisallowUnsafeHttpDownloadsName[] =
321 "Block unsafe downloads over insecure connections";
322const char kDisallowUnsafeHttpDownloadsNameDescription[] =
323 "Disallows downloads of unsafe files (files that can potentially execute "
324 "code), where the final download origin or any origin in the redirect "
325 "chain is insecure.";
326
Brett Wilsonf27ff602017-07-07 22:28:47327const char kDriveSearchInChromeLauncherName[] =
328 "Drive Search in Chrome App Launcher";
329const char kDriveSearchInChromeLauncherDescription[] =
330 "Files from Drive will show up when searching the Chrome App Launcher.";
331
Brett Wilsonf27ff602017-07-07 22:28:47332const char kEmbeddedExtensionOptionsName[] = "Embedded extension options";
333const char kEmbeddedExtensionOptionsDescription[] =
334 "Display extension options as an embedded element in chrome://extensions "
335 "rather than opening a new tab.";
336
Dominic Mazzoni8ac98962018-05-25 05:44:55337const char kEnableAccessibilityObjectModelName[] = "Accessibility Object Model";
338const char kEnableAccessibilityObjectModelDescription[] =
339 "Enables experimental support for Accessibility Object Model APIs "
340 "that are in development.";
341
Brett Wilsonf27ff602017-07-07 22:28:47342const char kEnableAsmWasmName[] =
343 "Experimental Validate Asm.js and convert to WebAssembly when valid.";
344const char kEnableAsmWasmDescription[] =
345 R"*(Validate Asm.js when "use asm" is present and then convert to )*"
346 R"*(WebAssembly.)*";
347
Anthony Vallee-Dubois968ae4d2018-03-15 16:56:36348const char kEnableWebPaymentsSingleAppUiSkipName[] =
349 "Enable Web Payments single app UI skip";
350const char kEnableWebPaymentsSingleAppUiSkipDescription[] =
351 "Enable Web Payments to skip showing its UI if the developer specifies a "
352 "single app.";
353
Florian Uunk8c428ea2018-07-18 11:12:52354const char kEnableAutofillAccountWalletStorageName[] =
355 "Enable the account data storage for autofill";
356const char kEnableAutofillAccountWalletStorageDescription[] =
357 "Enable the ephemeral storage for account data for autofill.";
358
Shanfeng Zhang19c16562017-10-17 02:30:40359const char kEnableAutofillCreditCardAblationExperimentDisplayName[] =
360 "Credit card autofill ablation experiment.";
361const char kEnableAutofillCreditCardAblationExperimentDescription[] =
362 "If enabled, credit card autofill suggestions will not display.";
363
Brett Wilsonf27ff602017-07-07 22:28:47364const char kEnableAutofillCreditCardLastUsedDateDisplayName[] =
365 "Display the last used date of a credit card in autofill.";
366const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
367 "If enabled, display the last used date of a credit card in autofill.";
368
Sujie Zhu2cf0e5c2018-07-17 18:00:27369const char kEnableAutofillCreditCardLocalCardMigrationName[] =
370 "Enable migrating local cards to Google Pay";
371const char kEnableAutofillCreditCardLocalCardMigrationDescription[] =
372 "If enabled, prompt migration of locally-saved credit cards to Google Pay.";
373
Jared Saulbc672a072018-06-16 05:22:12374const char kEnableAutofillCreditCardUploadEditableCardholderNameName[] =
375 "Make cardholder name editable in dialog during credit card upload";
376const char kEnableAutofillCreditCardUploadEditableCardholderNameDescription[] =
377 "If enabled, in certain situations when offering credit card upload to "
378 "Google Payments, the cardholder name can be edited within the "
379 "offer-to-save dialog, which is prefilled with the name from the signed-in "
380 "Google Account.";
381
Lakshmi Kumar Dabbiru51f1c202018-03-29 22:23:37382const char kEnableAutofillCreditCardUploadGooglePayOnAndroidBrandingName[] =
383 "Enable Google Pay branding when offering credit card upload on Android";
384const char
385 kEnableAutofillCreditCardUploadGooglePayOnAndroidBrandingDescription[] =
386 "If enabled, shows the Google Pay logo and a shorter header message "
387 "when credit card upload to Google Payments is offered on Android.";
388
Jared Saul5c2a1482017-12-09 00:24:31389const char kEnableAutofillCreditCardUploadSendPanFirstSixName[] =
390 "Send first six digits of PAN when deciding whether to offer Autofill "
391 "credit card upload";
392const char kEnableAutofillCreditCardUploadSendPanFirstSixDescription[] =
393 "If enabled, when deciding whether to offer credit card upload to Google "
394 "Payments, sends the first six digits of the card number to avoid cases "
395 "where card upload is likely to fail.";
396
siyua7c4e97b42018-04-24 02:49:42397const char kEnableAutofillCreditCardUploadUpdatePromptExplanationName[] =
398 "Enable updated prompt explanation when offering credit card upload";
399const char kEnableAutofillCreditCardUploadUpdatePromptExplanationDescription[] =
400 "If enabled, changes the server save card prompt's explanation to mention "
401 "the saving of the billing address.";
402
tmartinocd414732018-02-12 19:01:01403const char kEnableAutofillNativeDropdownViewsName[] =
404 "Display Autofill Dropdown Using Views";
405const char kEnableAutofillNativeDropdownViewsDescription[] =
406 "If enabled, the Autofill Dropdown will be built natively using Views, "
407 "rather than painted directly to a canvas.";
408
Fabio Tirelo87552e02018-07-06 15:43:21409const char kEnableAutofillSaveCardDialogUnlabeledExpirationDateName[] =
410 "Show unlabeled expiration dates on the save card dialog";
411const char kEnableAutofillSaveCardDialogUnlabeledExpirationDateDescription[] =
412 "If enabled, expiration dates on the save card dialog (both local and "
413 "upstream) are shown without an 'Exp:' label.";
414
Manas Verma99541e52018-08-03 20:37:23415const char kEnableAutofillSaveCardSignInAfterLocalSaveName[] =
416 "Show Sign-In/Sync promo after saving a card locally";
417const char kEnableAutofillSaveCardSignInAfterLocalSaveDescription[] =
418 "If enabled, shows a sign in prompt to the user after the user "
419 "saves a card locally. This also introduces a Manage Cards bubble "
420 "which you can access from the card icon after saving a card.";
421
Lakshmi Kumar Dabbirua3d0805f2018-05-22 22:04:23422const char kEnableAutofillSendExperimentIdsInPaymentsRPCsName[] =
423 "Send experiment flag IDs in calls to Google Payments";
424const char kEnableAutofillSendExperimentIdsInPaymentsRPCsDescription[] =
425 "If enabled, adds the status of certain experiment variations when making "
426 "calls to Google Payments.";
427
Becca Hughes4d896c42018-05-29 16:58:51428const char kEnableAutoplayIgnoreWebAudioName[] =
429 "Autoplay ignores WebAudio playbacks";
430const char kEnableAutoplayIgnoreWebAudioDescription[] =
431 "If enabled, autoplay restrictions will be ignored for WebAudio.";
432
Vitalii Iarko4f9834ce2017-08-04 07:05:19433const char kEnableBreakingNewsPushName[] = "Breaking News Push";
434const char kEnableBreakingNewsPushDescription[] =
435 "Listen for breaking news content suggestions (e.g. for New Tab Page) "
436 "through Google Cloud Messaging.";
437
Brett Wilsonf27ff602017-07-07 22:28:47438const char kEnableBrotliName[] = "Brotli Content-Encoding.";
439const char kEnableBrotliDescription[] =
440 "Enable Brotli Content-Encoding support.";
441
Qiang Xu0f602fe62017-12-22 01:31:20442const char kEnableCaptivePortalRandomUrl[] = "Captive Portal url Randomization";
443const char kEnableCaptivePortalRandomUrlDescription[] =
444 "Enable Captive Portal URL randomization.";
445
Eriko Kurimoto36975992018-08-09 07:15:13446const char kEnableChromevoxDeveloperOptionName[] =
447 "Enable Chromevox developer option";
448const char kEnableChromevoxDeveloperOptionDescription[] =
449 "This option provides tools for developing in chromevox.";
450
sclittle50e4bb92017-07-08 02:23:03451const char kEnableClientLoFiName[] = "Client-side Lo-Fi previews";
452
453const char kEnableClientLoFiDescription[] =
454 "Enable showing low fidelity images on some pages on slow networks.";
455
Patrick Noland8bc57472018-06-19 21:09:54456const char kEnableCSSFragmentIdentifiersName[] =
457 "Enable CSS Fragment Identifiers";
458const char kEnableCSSFragmentIdentifiersDescription[] =
459 "Enable support for specifying a target element using a css selector in "
460 "the fragment identifier.";
461
David Reveman87b4b692018-03-09 21:22:22462const char kEnableCursorMotionBlurName[] = "Enable Cursor Motion Blur";
463const char kEnableCursorMotionBlurDescription[] =
464 "Enable motion blur effect for the cursor.";
465
Ramin Halavati6f5d9852018-06-20 09:37:05466const char kEnableEphemeralFlashPermissionName[] =
467 "Enable Ephemeral Flash Permissions";
468const char kEnableEphemeralFlashPermissionDescription[] =
469 "When enabled, Flash plugin permissions are reset at the end of the "
470 "browser session.";
471
Doug Arnett08b4067b2017-10-12 20:14:44472const char kEnableNoScriptPreviewsName[] = "NoScript previews";
473
474const char kEnableNoScriptPreviewsDescription[] =
475 "Enable disabling JavaScript on some pages on slow networks.";
476
Thanh Le2c279fbc2017-11-21 01:25:40477const char kDataReductionProxyServerAlternative1[] = "Use alt. server config 1";
478const char kDataReductionProxyServerAlternative2[] = "Use alt. server config 2";
479const char kDataReductionProxyServerAlternative3[] = "Use alt. server config 3";
480const char kDataReductionProxyServerAlternative4[] = "Use alt. server config 4";
481const char kDataReductionProxyServerAlternative5[] = "Use alt. server config 5";
482const char kDataReductionProxyServerAlternative6[] = "Use alt. server config 6";
483const char kDataReductionProxyServerAlternative7[] = "Use alt. server config 7";
484const char kDataReductionProxyServerAlternative8[] = "Use alt. server config 8";
485const char kDataReductionProxyServerAlternative9[] = "Use alt. server config 9";
486const char kDataReductionProxyServerAlternative10[] =
487 "Use alt. server config 10";
Brett Wilsonf27ff602017-07-07 22:28:47488const char kEnableDataReductionProxyServerExperimentName[] =
489 "Use an alternative Data Saver back end configuration.";
490const char kEnableDataReductionProxyServerExperimentDescription[] =
491 "Enable a different approach to saving data by configuring the back end "
492 "server";
493
494const char kEnableDataReductionProxySavingsPromoName[] =
495 "Data Saver 1 MB Savings Promo";
496const char kEnableDataReductionProxySavingsPromoDescription[] =
497 "Enable a Data Saver promo for 1 MB of savings. If Data Saver has already "
498 "saved 1 MB of data, then the promo will not be shown. Data Saver must be "
499 "enabled for the promo to be shown.";
500
Matt Giucad4870432017-11-24 01:04:38501const char kEnableDesktopPWAsName[] = "Desktop PWAs";
502const char kEnableDesktopPWAsDescription[] =
503 "Experimental windowing and install banner treatment for Progressive Web "
504 "Apps on desktop platforms. Implies #enable-experimental-app-banners.";
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17505
Giovanni Ortuño Urquidi40c8e792018-02-28 04:18:59506const char kEnableDesktopPWAsLinkCapturingName[] =
507 "Desktop PWAs Link Capturing";
508const char kEnableDesktopPWAsLinkCapturingDescription[] =
509 "Experimentally enable link capturing for Desktop PWAs. Navigations to "
510 "URLs that are in-scope of Desktop PWAs will open in a window. Requires "
511 "#enable-desktop-pwas.";
512
Ahmed Fakhry0037de02018-01-29 19:58:31513const char kEnableDockedMagnifierName[] = "Docked Magnifier";
514const char kEnableDockedMagnifierDescription[] =
515 "Enables the Docked Magnifier (a.k.a. picture-in-picture magnifier).";
516
Ramya Nagarajan5b41d8d2018-04-02 19:53:02517const char kEnableEmojiContextMenuName[] = "Emoji Context Menu";
518const char kEnableEmojiContextMenuDescription[] =
Mathieu Perreault608546ee2018-05-09 00:35:09519 "Enables the Emoji picker item in context menus for editable text areas, if"
520 " supported by the operating system.";
Ramya Nagarajan5b41d8d2018-04-02 19:53:02521
Brett Wilsonf27ff602017-07-07 22:28:47522const char kEnableEnumeratingAudioDevicesName[] =
523 "Experimentally enable enumerating audio devices.";
524const char kEnableEnumeratingAudioDevicesDescription[] =
525 "Experimentally enable the use of enumerating audio devices.";
526
527const char kEnableGenericSensorName[] = "Generic Sensor";
528const char kEnableGenericSensorDescription[] =
Mikhail Pozdnyakov73373a62017-08-24 17:31:25529 "Enables motion sensor classes based on Generic Sensor API, i.e. "
530 "Accelerometer, LinearAccelerationSensor, Gyroscope, "
531 "AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
532
533const char kEnableGenericSensorExtraClassesName[] =
534 "Generic Sensor Extra Classes";
535const char kEnableGenericSensorExtraClassesDescription[] =
536 "Enables an extra set of sensor classes based on Generic Sensor API, which "
537 "expose previously unavailable platform features, i.e. AmbientLightSensor "
538 "and Magnetometer interfaces.";
Brett Wilsonf27ff602017-07-07 22:28:47539
Brett Wilsonf27ff602017-07-07 22:28:47540const char kEnableHDRName[] = "HDR mode";
541const char kEnableHDRDescription[] =
542 "Enables HDR support on compatible displays.";
543
Ryan Sturm6a850902018-06-09 02:27:34544const char kEnableHeavyPageCappingName[] = "Heavy Page Capping";
545const char kEnableHeavyPageCappingDescription[] =
Ryan Sturm1550abeb2018-06-18 20:05:09546 "Enable showing an InfoBar on data heavy pages that allows the user to "
Ryan Sturma2cd49f2018-06-20 17:09:25547 "pause sub-resource request loading on the page. Using the 'Low' option "
Ryan Sturm2a2f11e2018-07-17 23:01:01548 "will reduce the triggering threshold to 1MB. Data saver must be enabled "
549 "in order to see the InfoBar.";
Ryan Sturm6a850902018-06-09 02:27:34550
Brett Wilsonf27ff602017-07-07 22:28:47551const char kEnableHttpFormWarningName[] =
552 "Show in-form warnings for sensitive fields when the top-level page is not "
Eric Lawrenceed8fccf2017-09-08 21:27:15553 "HTTPS";
Brett Wilsonf27ff602017-07-07 22:28:47554const char kEnableHttpFormWarningDescription[] =
555 "Attaches a warning UI to any password or credit card fields detected when "
556 "the top-level page is not HTTPS";
557
Hiroshige Hayashizaki99d5821e2018-05-02 04:25:41558const char kLayeredAPIName[] = "Experimental layered APIs";
559const char kLayeredAPIDescription[] =
560 "Enable layered API infrastructure, as well as several experimental "
561 "layered APIs. The syntax and the APIs exposed are experimental and will "
562 "change over time.";
563
Ian Kilpatricke68ef11a2018-07-04 03:52:10564const char kEnableLayoutNGName[] = "Enable LayoutNG";
565const char kEnableLayoutNGDescription[] =
566 "Enable Blink's next generation layout engine.";
567
Scott Littled0fd2d002018-04-13 03:37:26568const char kEnableLazyFrameLoadingName[] = "Enable lazy frame loading";
569const char kEnableLazyFrameLoadingDescription[] =
570 "Defers the loading of certain cross-origin frames until the page is "
571 "scrolled down near them.";
572
rajendrant793ff512018-08-10 17:07:59573const char kEnableLazyImageLoadingName[] = "Enable lazy image loading";
574const char kEnableLazyImageLoadingDescription[] =
575 "Defers the loading of images until the page is scrolled down near them.";
576
Sidney San Martín9375b892017-09-09 00:29:54577const char kEnableMacMaterialDesignDownloadShelfName[] =
578 "Enable Material Design download shelf";
579
580const char kEnableMacMaterialDesignDownloadShelfDescription[] =
581 "If enabled, the download shelf uses Material Design.";
582
Anton Urusov47cd4932017-09-19 14:41:41583const char kEnablePolicyToolName[] = "Enable policy management page";
584const char kEnablePolicyToolDescription[] =
585 "If enabled, the chrome://policy-tool URL loads a page for managing "
586 "policies.";
587
Tsuyoshi Horoea7edb72017-11-12 04:14:00588const char kEnablePWAFullCodeCacheName[] = "Enable PWA full code cache";
589const char kEnablePWAFullCodeCacheDescription[] =
590 "Generate V8 code cache in Cache Storage while installing Service Worker "
591 "for PWAs.";
592
Weidong Guof1e5a892018-01-06 02:26:39593const char kDisableMultiMirroringName[] =
Weidong Guo7dfd1482017-11-08 05:56:28594 "Display mirroring across multiple displays.";
Weidong Guof1e5a892018-01-06 02:26:39595const char kDisableMultiMirroringDescription[] =
596 "Disable Display mirroring across multiple displays.";
Weidong Guo7dfd1482017-11-08 05:56:28597
Brett Wilsonf27ff602017-07-07 22:28:47598const char kEnableNavigationTracingName[] = "Enable navigation tracing";
599const char kEnableNavigationTracingDescription[] =
600 "This is to be used in conjunction with the trace-upload-url flag. "
601 "WARNING: When enabled, Chrome will record performance data for every "
602 "navigation and upload it to the URL specified by the trace-upload-url "
603 "flag. The trace may include personally identifiable information (PII) "
604 "such as the titles and URLs of websites you visit.";
605
Bernhard Bauer5533f9912017-11-06 17:56:02606const char kEnableNetworkLoggingToFileName[] = "Enable network logging to file";
607const char kEnableNetworkLoggingToFileDescription[] =
608 "Enables network logging to a file named netlog.json in the user data "
609 "directory. The file can be imported into chrome://net-internals.";
610
Brett Wilsonf27ff602017-07-07 22:28:47611const char kEnableNetworkServiceName[] = "Enable network service";
612const char kEnableNetworkServiceDescription[] =
613 "Enables the network service, which makes network requests through a "
614 "separate service. Note: most features don't work with this yet.";
615
John Abd-El-Malek8067cc02017-12-04 23:23:20616const char kEnableNetworkServiceInProcessName[] =
617 "Runs network service in-process";
618const char kEnableNetworkServiceInProcessDescription[] =
619 "Runs the network service in the browser process.";
620
dpapaded8349472017-10-25 03:21:27621const char kEnableNewPrintPreview[] = "Enable new Print Preview UI";
622const char kEnableNewPrintPreviewDescription[] =
rbpotter29690042018-06-18 19:28:37623 "If enabled, Print Preview will display a newer UI. This feature is "
624 "activated if either this flag or #upcoming-ui-features is enabled.";
dpapaded8349472017-10-25 03:21:27625
Ahmed Fakhry2fd8fc82017-07-28 16:31:12626const char kEnableNightLightName[] = "Enable Night Light";
627const char kEnableNightLightDescription[] =
628 "Enable the Night Light feature which controls the color temperature of "
629 "the screen.";
630
Tetsui Ohkuboc3eb87f72018-07-20 02:22:28631const char kEnableNotificationScrollBarName[] =
632 "Enable notification list scroll bar";
633const char kEnableNotificationScrollBarDescription[] =
634 "Enable the scroll bar of the notification list in Unified System Tray.";
635
xlou8b56f672018-02-09 23:34:30636const char kEnableNupPrintingName[] = "Enable N-up printing";
637const char kEnableNupPrintingDescription[] =
638 "Enable N-up printing in the print preview panel.";
639
Sophie Chang117a3b22017-10-24 22:25:36640const char kEnableOptimizationHintsName[] = "Optimization Hints";
641const char kEnableOptimizationHintsDescription[] =
Sophie Chang5454ce82018-07-16 17:44:50642 "Enable the Optimization Hints feature which incorporates server hints "
Sophie Chang117a3b22017-10-24 22:25:36643 "into decisions for what optimizations to perform on some pages on slow "
644 "networks.";
645
Yutaka Hirano98be3272017-08-07 17:55:39646const char kEnableOutOfBlinkCORSName[] = "Out of blink CORS";
647const char kEnableOutOfBlinkCORSDescription[] =
648 "CORS handling logic is moved out of blink.";
649
Sammie Quon0fbf0782018-05-01 22:11:08650const char kEnableOverviewSwipeToCloseName[] =
651 "Enable overview swipe to close.";
652const char kEnableOverviewSwipeToCloseDescription[] =
653 "Enables closing of items in overview mode by dragging or flinging "
654 "vertically.";
655
kylechar7051c092018-02-05 20:31:39656const char kVizDisplayCompositorName[] = "Viz Display Compositor (OOP-D)";
657const char kVizDisplayCompositorDescription[] =
658 "If enabled, the display compositor runs as part of the viz service in the"
659 "GPU process.";
660
Ria Jiang6a129b982018-03-01 18:30:40661const char kVizHitTestDrawQuadName[] = "Viz Hit-test Draw-quad version";
662const char kVizHitTestDrawQuadDescription[] =
663 "If enabled, event targeting uses the new viz-assisted hit-testing logic, "
664 "with hit-test data computed from the CompositorFrame.";
665
Erik Chen49bbfa22017-08-18 08:49:56666const char kEnableOutOfProcessHeapProfilingName[] =
Albert J. Wong174174762018-01-18 23:50:23667 "Out of process heap profiling start mode.";
Erik Chen49bbfa22017-08-18 08:49:56668const char kEnableOutOfProcessHeapProfilingDescription[] =
669 "Creates a profiling service that records stacktraces for all live, "
erikchen94aca892018-01-18 00:21:19670 "malloced objects. Heap dumps can be obtained at chrome://tracing "
671 "[category:memory-infra] and chrome://memory-internals. This setting "
672 "controls which processes are profiled. As long as this setting is not "
673 "disabled, users can start profiling any given process in "
674 "chrome://memory-internals.";
675const char kEnableOutOfProcessHeapProfilingModeMinimal[] = "Browser and GPU";
676const char kEnableOutOfProcessHeapProfilingModeAll[] = "All processes";
677const char kEnableOutOfProcessHeapProfilingModeAllRenderers[] = "All renderers";
678const char kEnableOutOfProcessHeapProfilingModeBrowser[] = "Only browser";
679const char kEnableOutOfProcessHeapProfilingModeGpu[] = "Only GPU.";
erikchen0a5dd692017-12-12 00:53:10680const char kEnableOutOfProcessHeapProfilingModeManual[] =
erikchen94aca892018-01-18 00:21:19681 "None by default. Visit chrome://memory-internals to choose which "
682 "processes to profile.";
Albert J. Wongbd5bd902017-11-09 19:56:15683const char kEnableOutOfProcessHeapProfilingModeRendererSampling[] =
684 "Profile a random sampling of renderer processes, ensuring only one is "
685 "ever profiled at a time.";
erikchen94aca892018-01-18 00:21:19686
Erik Chen8bb76b52017-12-06 19:06:25687const char kOutOfProcessHeapProfilingKeepSmallAllocations[] =
erikchen94aca892018-01-18 00:21:19688 "Emit small allocations in memlog heap dumps.";
Erik Chen8bb76b52017-12-06 19:06:25689const char kOutOfProcessHeapProfilingKeepSmallAllocationsDescription[] =
690 "By default, small allocations are pruned from the heap dump. This reduces "
691 "the size of the compressed trace by 100x. If pruning is disabled, the "
692 "chrome://tracing UI may be unable to take or load the trace. Save the "
693 "trace directly using chrome://memory-internals, and use other mechanisms "
694 "[e.g. diff_heap_profiler.py] to examine the trace. Note that "
695 "automatically uploaded traces will always be pruned. This only affects "
696 "manually taken memory-infra traces.";
Erik Chen49bbfa22017-08-18 08:49:56697
erikchen8bc20d82018-02-14 03:21:51698const char kOutOfProcessHeapProfilingSampling[] = "Sample memlog allocations";
699const char kOutOfProcessHeapProfilingSamplingDescription[] =
700 "Use a poisson process to sample allocations. Defaults to a sample rate of "
erikchen99bfce02018-02-14 20:29:22701 "10000. This results in low noise for large and/or frequent allocations ["
702 "[size * frequency >> 10000]. This means that aggregate numbers [e.g. "
703 "total size of malloc-ed objects] and large and/or frequent allocations "
704 "can be trusted with high fidelity.";
erikchen8bc20d82018-02-14 03:21:51705
Erik Chen3303fd0232018-01-11 20:29:05706const char kOOPHPStackModeName[] =
707 "The type of stack to record for memlog heap dumps";
708const char kOOPHPStackModeDescription[] =
erikchen94aca892018-01-18 00:21:19709 "By default, memlog heap dumps record native stacks, which requires a "
710 "post-processing step to symbolize. Requires a custom build with frame "
erikchen011ad3f2018-01-26 17:54:55711 "pointers to work on Android. Native with thread names will add the thread "
712 "name as the first frame of each native stack. It's also possible to "
713 "record a pseudo stack using trace events as identifiers. It's also "
714 "possible to do a mix of both.";
erikchen94aca892018-01-18 00:21:19715const char kOOPHPStackModeMixed[] = "Mixed";
716const char kOOPHPStackModeNative[] = "Native";
erikchen011ad3f2018-01-26 17:54:55717const char kOOPHPStackModeNativeWithThreadNames[] = "Native with thread names";
erikchen94aca892018-01-18 00:21:19718const char kOOPHPStackModePseudo[] = "Trace events";
Erik Chen3303fd0232018-01-11 20:29:05719
François Beaufort2e75f492018-02-08 20:44:46720const char kEnablePictureInPictureName[] = "Enable Picture-in-Picture.";
Brett Wilsonf27ff602017-07-07 22:28:47721const char kEnablePictureInPictureDescription[] =
François Beaufort2e75f492018-02-08 20:44:46722 "Enable the Picture-in-Picture feature for videos.";
Brett Wilsonf27ff602017-07-07 22:28:47723
F#m59d036e2017-09-13 07:22:17724const char kEnablePixelCanvasRecordingName[] = "Enable pixel canvas recording";
725const char kEnablePixelCanvasRecordingDescription[] =
726 "Pixel canvas recording allows the compositor to raster contents aligned "
727 "with the pixel and improves text rendering. This should be enabled when a "
728 "device is using fractional scale factor.";
729
vitaliiid36191b2018-06-11 07:40:49730extern const char kEnableSyncUserConsentSeparateTypeName[] =
731 "Enable separate sync type for consents";
732extern const char kEnableSyncUserConsentSeparateTypeDescription[] =
733 "Emit user consents as a separate sync type instead of user events.";
734
Mohamed Amir Yosef0178fa892018-07-23 17:43:52735const char kEnableSyncUSSBookmarksName[] = "Enable USS for bookmarks sync";
736const char kEnableSyncUSSBookmarksDescription[] =
737 "Enables the new, experimental implementation of bookmark sync";
738
Mikel Astiz38837f82018-04-24 22:23:23739const char kEnableSyncUSSSessionsName[] = "Enable USS for sessions sync";
740const char kEnableSyncUSSSessionsDescription[] =
741 "Enables the new, experimental implementation of session sync (aka tab "
742 "sync).";
743
Brett Wilsonf27ff602017-07-07 22:28:47744const char kEnableTokenBindingName[] = "Token Binding.";
745const char kEnableTokenBindingDescription[] = "Enable Token Binding support.";
746
747const char kEnableUseZoomForDsfName[] =
748 "Use Blink's zoom for device scale factor.";
749const char kEnableUseZoomForDsfDescription[] =
750 "If enabled, Blink uses its zooming mechanism to scale content for device "
751 "scale factor.";
752const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
753const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
754const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
755
Patrick Noland8ee016e2018-01-24 11:44:53756const char kEnableScrollAnchorSerializationName[] =
757 "Scroll Anchor Serialization";
758const char kEnableScrollAnchorSerializationDescription[] =
759 "Save the scroll anchor and use it to restore the scroll position when "
760 "navigating.";
761
Brad Nelson5cd500e2018-01-04 00:50:19762const char kEnableSharedArrayBufferName[] =
763 "Experimental enabled SharedArrayBuffer support in JavaScript.";
764const char kEnableSharedArrayBufferDescription[] =
765 "Enable SharedArrayBuffer support in JavaScript.";
766
Brett Wilsonf27ff602017-07-07 22:28:47767const char kEnableWasmName[] = "WebAssembly structured cloning support.";
768const char kEnableWasmDescription[] =
769 "Enable web pages to use WebAssembly structured cloning.";
770
Kim Paulhamusae635a32018-06-27 07:30:54771const char kEnableWebAuthenticationAPIName[] = "Web Authentication API";
772const char kEnableWebAuthenticationAPIDescription[] =
Kim Paulhamus92431372018-07-20 02:25:47773 "Enable Web Authentication API support.";
774
775extern const char kEnableWebAuthenticationCableSupportName[] =
776 "Web Authentication caBLE support";
777extern const char kEnableWebAuthenticationCableSupportDescription[] =
778 "Enable the cloud-assisted pairingless BLE protocol for use with "
779 "the Web Authentication API.";
Kim Paulhamusae635a32018-06-27 07:30:54780
Brett Wilsonf27ff602017-07-07 22:28:47781const char kEnableImageCaptureAPIName[] = "Image Capture API";
782const char kEnableImageCaptureAPIDescription[] =
783 "Enables the Web Platform Image Capture API: takePhoto(), "
784 "getPhotoCapabilities(), etc.";
785
786const char kEnableZeroSuggestRedirectToChromeName[] =
787 "Experimental contextual omnibox suggestion";
788const char kEnableZeroSuggestRedirectToChromeDescription[] =
789 "Change omnibox contextual suggestions to an experimental source. Note "
790 "that this is not an on/off switch for contextual omnibox and it only "
791 "applies to suggestions provided before the user starts typing a URL or a "
792 "search query (i.e. zero suggest).";
793
794const char kEnableWasmStreamingName[] =
795 "WebAssembly streaming compile/instantiate support.";
796const char kEnableWasmStreamingDescription[] =
797 "WebAssembly.{compile|instantiate} taking a Response as parameter.";
798
Clemens Hammacher0c8a15a2018-04-27 13:45:32799const char kEnableWasmBaselineName[] = "WebAssembly baseline compiler";
800const char kEnableWasmBaselineDescription[] =
801 "Enables WebAssembly baseline compilation and tier up.";
802
Ben Smith24c1e5c2018-06-20 01:09:02803const char kEnableWasmThreadsName[] = "WebAssembly threads support.";
804const char kEnableWasmThreadsDescription[] =
805 "Enables support for the WebAssembly Threads proposal. Implies "
806 "#shared-array-buffer and #enable-webassembly.";
807
Brett Wilsonf27ff602017-07-07 22:28:47808const char kExpensiveBackgroundTimerThrottlingName[] =
809 "Throttle expensive background timers";
810const char kExpensiveBackgroundTimerThrottlingDescription[] =
811 "Enables intervention to limit CPU usage of background timers to 1%.";
812
813const char kExperimentalAppBannersName[] = "Experimental app banners";
814const char kExperimentalAppBannersDescription[] =
Matt Giucad4870432017-11-24 01:04:38815 "Enables a new experimental app banner flow and UI. Implies "
816 "#enable-app-banners.";
Brett Wilsonf27ff602017-07-07 22:28:47817
818const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
819const char kExperimentalCanvasFeaturesDescription[] =
820 "Enables the use of experimental canvas features which are still in "
821 "development.";
822
Nicholas Verneccd8259802018-02-22 01:22:04823const char kExperimentalCrostiniUIName[] = "Experimental Crostini";
824const char kExperimentalCrostiniUIDescription[] =
825 "Enables in-development Crostini features.";
826
Brett Wilsonf27ff602017-07-07 22:28:47827const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
828const char kExperimentalExtensionApisDescription[] =
829 "Enables experimental extension APIs. Note that the extension gallery "
830 "doesn't allow you to upload extensions that use experimental APIs.";
831
832const char kExperimentalFullscreenExitUIName[] =
833 "Experimental fullscreen exit UI";
834const char kExperimentalFullscreenExitUIDescription[] =
835 "Displays experimental UI to allow mouse and touch input methods to exit "
836 "fullscreen mode.";
837
Ian Clelland37a985d2018-05-04 02:43:13838const char kExperimentalProductivityFeaturesName[] =
839 "Experimental Productivity Features";
840const char kExperimentalProductivityFeaturesDescription[] =
841 "Enable support for experimental developer productivity features, such as "
842 "Layered APIs and policies for avoiding slow rendering.";
843
Brett Wilsonf27ff602017-07-07 22:28:47844const char kExperimentalSecurityFeaturesName[] =
845 "Potentially annoying security features";
846const char kExperimentalSecurityFeaturesDescription[] =
847 "Enables several security features that will likely break one or more "
848 "pages that you visit on a daily basis. Strict mixed content checking, for "
849 "example. And locking powerful features to secure contexts. This flag will "
850 "probably annoy you.";
851
852const char kExperimentalWebPlatformFeaturesName[] =
853 "Experimental Web Platform features";
854const char kExperimentalWebPlatformFeaturesDescription[] =
855 "Enables experimental Web Platform features that are in development.";
856
857const char kExtensionContentVerificationName[] =
858 "Extension Content Verification";
859const char kExtensionContentVerificationDescription[] =
860 "This flag can be used to turn on verification that the contents of the "
861 "files on disk for extensions from the webstore match what they're "
862 "expected to be. This can be used to turn on this feature if it would not "
863 "otherwise have been turned on, but cannot be used to turn it off (because "
864 "this setting can be tampered with by malware).";
865const char kExtensionContentVerificationBootstrap[] =
866 "Bootstrap (get expected hashes, but do not enforce them)";
867const char kExtensionContentVerificationEnforce[] =
868 "Enforce (try to get hashes, and enforce them if successful)";
869const char kExtensionContentVerificationEnforceStrict[] =
870 "Enforce strict (hard fail if we can't get hashes)";
871
872const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
873const char kExtensionsOnChromeUrlsDescription[] =
874 "Enables running extensions on chrome:// URLs, where extensions explicitly "
875 "request this permission.";
galinapae72e152017-05-12 13:12:28876
Brett Wilsonecb80982017-07-12 20:34:51877const char kFastUnloadName[] = "Fast tab/window close";
878const char kFastUnloadDescription[] =
879 "Enables fast tab/window closing - runs a tab's onunload js handler "
880 "independently of the GUI.";
vabr0215a8e2017-03-28 12:47:34881
Brett Wilsonecb80982017-07-12 20:34:51882const char kFeaturePolicyName[] = "Feature Policy";
883const char kFeaturePolicyDescription[] =
884 "Enables granting and removing access to features through the "
885 "Feature-Policy HTTP header.";
vabr0215a8e2017-03-28 12:47:34886
Brett Wilsonecb80982017-07-12 20:34:51887const char kFontCacheScalingName[] = "FontCache scaling";
888const char kFontCacheScalingDescription[] =
889 "Reuse a cached font in the renderer to serve different sizes of font for "
890 "faster layout.";
891
892const char kForceEffectiveConnectionTypeName[] =
893 "Override effective connection type";
894const char kForceEffectiveConnectionTypeDescription[] =
895 "Overrides the effective connection type of the current connection "
Thanh Lea98f12f2017-12-18 19:35:30896 "returned by the network quality estimator. Slow 2G on Cellular returns "
897 "Slow 2G when connected to a cellular network, and the actual estimate "
898 "effective connection type when not on a cellular network. Previews are "
899 "usually served on 2G networks.";
Brett Wilsonecb80982017-07-12 20:34:51900const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
901const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
902const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
Thanh Lea98f12f2017-12-18 19:35:30903const char kEffectiveConnectionTypeSlow2GOnCellularDescription[] =
904 "Slow 2G On Cellular";
Brett Wilsonecb80982017-07-12 20:34:51905const char kEffectiveConnectionType2GDescription[] = "2G";
906const char kEffectiveConnectionType3GDescription[] = "3G";
907const char kEffectiveConnectionType4GDescription[] = "4G";
908
909const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
910const char kFillOnAccountSelectDescription[] =
911 "Filling of passwords when an account is explicitly selected by the user "
912 "rather than autofilling credentials on page load.";
913
Brett Wilsonecb80982017-07-12 20:34:51914const char kForceTextDirectionName[] = "Force text direction";
915const char kForceTextDirectionDescription[] =
916 "Explicitly force the per-character directionality of UI text to "
917 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
918 "direction of the character language.";
919const char kForceDirectionLtr[] = "Left-to-right";
920const char kForceDirectionRtl[] = "Right-to-left";
921
922const char kForceUiDirectionName[] = "Force UI direction";
923const char kForceUiDirectionDescription[] =
924 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
925 "mode, overriding the default direction of the UI language.";
926
927const char kFramebustingName[] =
928 "Framebusting requires same-origin or a user gesture";
929const char kFramebustingDescription[] =
930 "Don't permit an iframe to navigate the top level browsing context unless "
931 "they are same-origin or the iframe is processing a user gesture.";
932
933const char kGamepadExtensionsName[] = "Gamepad Extensions";
934const char kGamepadExtensionsDescription[] =
Anna Offenwanger06dc6062018-04-12 07:56:22935 "Enables experimental extensions to the Gamepad APIs.";
Matt Reynoldsa8f2f692018-07-16 17:12:06936const char kGamepadPollingRateName[] = "Override Gamepad Polling Rate";
Matt Reynolds660a47752018-06-28 19:42:48937const char kGamepadPollingRateDescription[] =
Matt Reynoldsa8f2f692018-07-16 17:12:06938 "Overrides the rate at which gamepad input devices are polled. Increasing "
Matt Reynolds660a47752018-06-28 19:42:48939 "the polling rate improves the average latency of button and axis inputs "
940 "but may negatively affect performance.";
Matt Reynolds043469f2018-05-01 22:56:58941const char kGamepadVibrationName[] = "Gamepad Vibration";
942const char kGamepadVibrationDescription[] =
943 "Enables haptic vibration effects on supported gamepads.";
Brett Wilsonecb80982017-07-12 20:34:51944
Brett Wilsonecb80982017-07-12 20:34:51945const char kGpuRasterizationMsaaSampleCountName[] =
946 "GPU rasterization MSAA sample count.";
947const char kGpuRasterizationMsaaSampleCountDescription[] =
948 "Specify the number of MSAA samples for GPU rasterization.";
949const char kGpuRasterizationMsaaSampleCountZero[] = "0";
950const char kGpuRasterizationMsaaSampleCountTwo[] = "2";
951const char kGpuRasterizationMsaaSampleCountFour[] = "4";
952const char kGpuRasterizationMsaaSampleCountEight[] = "8";
953const char kGpuRasterizationMsaaSampleCountSixteen[] = "16";
954
955const char kGpuRasterizationName[] = "GPU rasterization";
956const char kGpuRasterizationDescription[] =
957 "Use GPU to rasterize web content. Requires impl-side painting.";
Brett Wilson7b44537e2017-08-18 01:38:28958const char kForceGpuRasterization[] = "Force-enabled for all layers";
Brett Wilsonecb80982017-07-12 20:34:51959
960const char kGoogleProfileInfoName[] = "Google profile name and icon";
961const char kGoogleProfileInfoDescription[] =
962 "Enables using Google information to populate the profile name and icon in "
963 "the avatar menu.";
964
965const char kHarfbuzzRendertextName[] = "HarfBuzz for UI text";
966const char kHarfbuzzRendertextDescription[] =
967 "Enable cross-platform HarfBuzz layout engine for UI text. Doesn't affect "
968 "web content.";
969
Takumi Fujimotofb71e332018-03-31 14:04:08970const char kViewsCastDialogName[] = "Views Cast dialog";
971const char kViewsCastDialogDescription[] =
Takumi Fujimoto541e5e22018-05-30 00:46:31972 "Replace the WebUI Cast dialog with a Views toolkit dialog. This requires "
Takumi Fujimoto28351acc2018-05-31 17:19:53973 "#views-browser-windows on Mac. This feature is activated if either this "
Robert Liao3ecf97c2018-06-05 01:24:54974 "flag or #upcoming-ui-features is enabled";
Takumi Fujimotofb71e332018-03-31 14:04:08975
Manu Cornet4a908de2018-04-09 04:32:27976const char kHideActiveAppsFromShelfName[] =
977 "Hide running apps (that are not pinned) from the shelf";
978const char kHideActiveAppsFromShelfDescription[] =
979 "Save space in the shelf by hiding running apps (that are not pinned).";
Manu Cornete5f855b2018-03-13 03:35:25980
Brett Wilsonecb80982017-07-12 20:34:51981const char kHistoryRequiresUserGestureName[] =
982 "New history entries require a user gesture.";
983const char kHistoryRequiresUserGestureDescription[] =
984 "Require a user gesture to add a history entry.";
985const char kHyperlinkAuditingName[] = "Hyperlink auditing";
986const char kHyperlinkAuditingDescription[] = "Sends hyperlink auditing pings.";
987
Ryan Landay4242dbc22018-04-04 01:47:33988const char kHorizontalTabSwitcherAndroidName[] =
989 "Enable horizontal tab switcher";
990const char kHorizontalTabSwitcherAndroidDescription[] =
991 "Changes the layout of the Android tab switcher so tabs scroll "
992 "horizontally instead of vertically.";
993
Brett Wilsonecb80982017-07-12 20:34:51994const char kHostedAppQuitNotificationName[] =
995 "Quit notification for hosted apps";
996const char kHostedAppQuitNotificationDescription[] =
997 "Display a notification when quitting Chrome if hosted apps are currently "
998 "running.";
999
1000const char kHostedAppShimCreationName[] =
1001 "Creation of app shims for hosted apps on Mac";
1002const char kHostedAppShimCreationDescription[] =
1003 "Create app shims on Mac when creating a hosted app.";
1004
Ana-Cosmina Popescuda3bcbe2017-09-22 18:24:481005const char kHtmlBasedUsernameDetectorName[] = "HTML-based username detector";
1006const char kHtmlBasedUsernameDetectorDescription[] =
1007 "Use HTML-based username detector for the password manager.";
1008
Brett Wilsonecb80982017-07-12 20:34:511009const char kIconNtpName[] = "Large icons on the New Tab page";
1010const char kIconNtpDescription[] =
1011 "Enable the experimental New Tab page using large icons.";
1012
Mustafa Emre Acer9f169912018-07-23 22:40:131013const char kIdnNavigationSuggestionsName[] =
1014 "Navigation suggestions for internationalized domain names";
1015const char kIdnNavigationSuggestionsDescription[] =
1016 "Enable navigation suggestions for internationalized domain names that are "
1017 "visually similar to popular domains.";
1018
Brett Wilsonecb80982017-07-12 20:34:511019const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
1020const char kIgnoreGpuBlacklistDescription[] =
1021 "Overrides the built-in software rendering list and enables "
1022 "GPU-acceleration on unsupported system configurations.";
1023
Ryan Sturm8c3dbc92018-06-26 19:22:371024const char kIgnorePreviewsBlacklistName[] = "Ignore Previews Blocklist";
Thanh Le5f090efa52017-12-27 22:39:441025const char kIgnorePreviewsBlacklistDescription[] =
Ryan Sturm8c3dbc92018-06-26 19:22:371026 "Ignore decisions made by the PreviewsBlockList";
Thanh Le5f090efa52017-12-27 22:39:441027
Claudio Magni61c210922017-12-28 00:29:511028const char kImprovedLanguageSettingsName[] = "Improved Language Settings";
1029const char kImprovedLanguageSettingsDescription[] =
1030 "Set of changes for Language Settings. These changes are intended to fix "
1031 "the major bugs related to Language Settings.";
1032
Brett Wilsonecb80982017-07-12 20:34:511033const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
1034const char kInProductHelpDemoModeChoiceDescription[] =
1035 "Selects the In-Product Help demo mode.";
1036
1037const char kJavascriptHarmonyName[] = "Experimental JavaScript";
1038const char kJavascriptHarmonyDescription[] =
1039 "Enable web pages to use experimental JavaScript features.";
1040
1041const char kJavascriptHarmonyShippingName[] =
1042 "Latest stable JavaScript features";
1043const char kJavascriptHarmonyShippingDescription[] =
1044 "Some web pages use legacy or non-standard JavaScript extensions that may "
1045 "conflict with the latest JavaScript features. This flag allows disabling "
1046 "support of those features for compatibility with such pages.";
1047
gogeraldfd7675d2018-06-19 22:57:351048const char kJustInTimeServiceWorkerPaymentAppName[] =
1049 "Just-in-time service worker payment app";
1050const char kJustInTimeServiceWorkerPaymentAppDescription[] =
1051 "Allow crawling just-in-time service worker payment app when there is no "
1052 "installed service worker payment app for a payment request.";
1053
Yutaka Hiranof7f2f632017-09-06 10:40:081054const char kKeepAliveRendererForKeepaliveRequestsName[] =
1055 "Keep a renderer alive for keepalive fetch requests";
1056const char kKeepAliveRendererForKeepaliveRequestsDescription[] =
1057 "Keep a render process alive when the process has a pending fetch request "
1058 "with `keepalive' specified.";
1059
Joe Downing095fd6d2018-02-01 18:40:361060const char kKeyboardLockApiName[] = "Experimental keyboard lock API.";
1061const char kKeyboardLockApiDescription[] =
1062 "Enables websites to use the new keyboard{Lock|Unlock} API to intercept "
1063 "specific key events and have them routed directly to the webpage when in "
1064 "fullscreen mode. Implies #experimental-keyboard-lock-ui.";
1065
Brett Wilsonecb80982017-07-12 20:34:511066const char kLcdTextName[] = "LCD text antialiasing";
1067const char kLcdTextDescription[] =
1068 "If disabled, text is rendered with grayscale antialiasing instead of LCD "
1069 "(subpixel) when doing accelerated compositing.";
1070
Matt Giucac399982f2017-10-06 07:51:291071const char kLeftToRightUrlsName[] =
1072 "Render bidirectional URLs from left to right";
1073const char kLeftToRightUrlsDescription[] =
1074 "An experimental Bidi URL rendering algorithm where the URL components are "
1075 "always shown in order from left to right, regardless of any RTL "
1076 "characters. (The contents of each component are still rendered with the "
1077 "normal Bidi algorithm.)";
1078
Brett Wilsonecb80982017-07-12 20:34:511079const char kLoadMediaRouterComponentExtensionName[] =
1080 "Load Media Router Component Extension";
1081const char kLoadMediaRouterComponentExtensionDescription[] =
1082 "Loads the Media Router component extension at startup.";
1083
spqchanb87755692018-04-05 00:46:091084const char kMacViewsAutofillPopupName[] =
1085 "Uses the Views Autofill Popup on Mac";
1086const char kMacViewsAutofillPopupDescription[] =
1087 "Autofill popup will be shown using the Views toolkit rather than Cocoa.";
Derek Chengd24c68c2018-03-12 19:09:321088
Brett Wilsonecb80982017-07-12 20:34:511089const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
1090const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
Brett Wilsonecb80982017-07-12 20:34:511091
Lei Zhang2eca9082017-10-17 20:42:501092const char kMaterialDesignIncognitoNTPName[] = "Material Design Incognito NTP.";
1093const char kMaterialDesignIncognitoNTPDescription[] =
Brett Wilsonecb80982017-07-12 20:34:511094 "If enabled, the Incognito New Tab page uses the new material design with "
1095 "a better readable text.";
1096
spqchanb87755692018-04-05 00:46:091097const char kMediaRouterCastAllowAllIPsName[] =
1098 "Connect to Cast devices on all IP addresses";
1099const char kMediaRouterCastAllowAllIPsDescription[] =
1100 "Have the Media Router connect to Cast devices on all IP addresses, not "
1101 "just RFC1918/RFC4913 private addresses.";
1102
Brett Wilsonecb80982017-07-12 20:34:511103const char kMemoryCoordinatorName[] = "Memory coordinator";
1104const char kMemoryCoordinatorDescription[] =
1105 "Enable memory coordinator instead of memory pressure listeners.";
1106
1107const char kMessageCenterNewStyleNotificationName[] = "New style notification";
1108const char kMessageCenterNewStyleNotificationDescription[] =
1109 "Enables the experiment style of material-design notification";
1110
Brett Wilsonecb80982017-07-12 20:34:511111const char kMhtmlGeneratorOptionName[] = "MHTML Generation Option";
1112const char kMhtmlGeneratorOptionDescription[] =
1113 "Provides experimental options for MHTML file generator.";
1114const char kMhtmlSkipNostoreMain[] = "Skips no-store main frame.";
1115const char kMhtmlSkipNostoreAll[] = "Skips all no-store resources.";
1116
Kouhei Ueno08445c22017-09-05 03:58:301117const char kModuleScriptsDynamicImportName[] =
1118 "Enable ECMAScript 6 modules dynamic import";
1119const char kModuleScriptsDynamicImportDescription[] =
1120 "Enables ECMAScript 6 modules dynamic \"import\" syntax support in V8 and "
1121 "Blink.";
1122
Hiroshige Hayashizaki15c2eb92017-10-20 04:57:051123const char kModuleScriptsImportMetaUrlName[] =
1124 "Enable ECMAScript 6 modules import.meta.url";
1125const char kModuleScriptsImportMetaUrlDescription[] =
1126 "Enables ECMAScript 6 modules import.meta.url syntax support in V8 and "
1127 "Blink.";
1128
Brett Wilsonecb80982017-07-12 20:34:511129const char kNewAudioRenderingMixingStrategyName[] =
1130 "New audio rendering mixing strategy";
1131const char kNewAudioRenderingMixingStrategyDescription[] =
1132 "Use the new audio rendering mixing strategy.";
1133
1134const char kNewBookmarkAppsName[] = "The new bookmark app system";
1135const char kNewBookmarkAppsDescription[] =
1136 "Enables the new system for creating bookmark apps.";
1137
Vadym Doroshenkocd4ff782018-07-24 13:41:021138const char kNewPasswordFormParsingName[] =
1139 "New password form parsing for filling passwords";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241140const char kNewPasswordFormParsingDescription[] =
Vadym Doroshenkocd4ff782018-07-24 13:41:021141 "Replaces existing form parsing for filling in password manager with a new "
1142 "version, currently under development. WARNING: when enabled, Password "
1143 "Manager might stop working";
1144
1145const char kNewPasswordFormParsingForSavingName[] =
1146 "New password form parsing for saving passwords";
1147const char kNewPasswordFormParsingForSavingDescription[] =
1148 "Replaces existing form parsing for saving in password manager with a new "
1149 "version, currently under development. WARNING: when enabled, Password "
1150 "Manager might stop working";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241151
Brett Wilsonecb80982017-07-12 20:34:511152const char kNewRemotePlaybackPipelineName[] =
1153 "Enable the new remote playback pipeline.";
1154const char kNewRemotePlaybackPipelineDescription[] =
1155 "Enable the new pipeline for playing media element remotely via "
1156 "RemotePlayback API or native controls.";
CJ DiMeglio7b4a199f2017-11-30 01:26:501157const char kUseSurfaceLayerForVideoName[] =
1158 "Enable the use of SurfaceLayer objects for videos.";
1159const char kUseSurfaceLayerForVideoDescription[] =
1160 "Enable compositing onto a Surface instead of a VideoLayer "
1161 "for videos.";
Brett Wilsonecb80982017-07-12 20:34:511162
1163const char kNewUsbBackendName[] = "Enable new USB backend";
1164const char kNewUsbBackendDescription[] =
1165 "Enables the new experimental USB backend for Windows.";
vabr0215a8e2017-03-28 12:47:341166
Sonny Sasaka2d200432018-03-22 17:43:161167const char kNewblueName[] = "Newblue";
1168const char kNewblueDescription[] =
1169 "Enables the use of newblue Bluetooth daemon.";
1170
Peter Kasting63097912018-06-30 02:09:031171const char kNewTabButtonPosition[] = "New tab button position";
1172const char kNewTabButtonPositionDescription[] =
1173 "Controls placement of the new tab button within the tabstrip.";
1174const char kNewTabButtonPositionOppositeCaption[] = "Opposite caption buttons";
1175const char kNewTabButtonPositionLeading[] = "Leading";
1176const char kNewTabButtonPositionAfterTabs[] = "After tabs";
1177const char kNewTabButtonPositionTrailing[] = "Trailing";
1178
Egor Pasko6fed3822018-05-30 10:33:141179const char kNostatePrefetchName[] = "NoState Prefetch";
vabr0215a8e2017-03-28 12:47:341180const char kNostatePrefetchDescription[] =
Egor Pasko6fed3822018-05-30 10:33:141181 R"*(If enabled, pre-downloads resources to improve page load speed.)*";
vabr0215a8e2017-03-28 12:47:341182
Alex Newcomerd7b0cc42018-05-25 22:58:481183const char kNotificationIndicatorName[] = "Notification Indicators";
1184const char kNotificationIndicatorDescription[] =
1185 "Enable notification indicators, which appear on app icons when a "
1186 "notification is active. This will also enable notifications in context "
1187 "menus.";
1188
Brett Wilsonecb80982017-07-12 20:34:511189const char kNotificationsNativeFlagName[] = "Enable native notifications.";
1190const char kNotificationsNativeFlagDescription[] =
1191 "Enable support for using the native notification toasts and notification "
1192 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:341193
Zentaro Kavanaghbad511c2017-10-18 22:29:001194#if defined(OS_POSIX)
1195const char kNtlmV2EnabledName[] = "Enable NTLMv2 Authentication";
1196const char kNtlmV2EnabledDescription[] =
1197 "Enable NTLMv2 HTTP Authentication. This disables NTLMv1 support.";
1198#endif
1199
Ramya Nagarajane9f16b82018-05-03 01:05:341200const char kNtpBackgroundsName[] = "New Tab Page Background Selection";
1201const char kNtpBackgroundsDescription[] =
kristipark037abce12018-07-13 19:49:301202 "Allow selection of a custom background image on the New Tab Page. "
1203 "Implicitly enables 'ntp-ui-md'.";
Ramya Nagarajane9f16b82018-05-03 01:05:341204
kristipark037abce12018-07-13 19:49:301205const char kNtpCustomLinksName[] = "New Tab Page Custom Links";
1206const char kNtpCustomLinksDescription[] =
1207 "Enable customization of shortcuts on the New Tab Page and replaces Most "
1208 "Visited. Implicitly enables 'ntp-ui-md' and 'ntp-icons'.";
1209
1210const char kNtpIconsName[] = "New Tab Page Material Design Icons";
Ramya Nagarajane9f16b82018-05-03 01:05:341211const char kNtpIconsDescription[] =
kristipark037abce12018-07-13 19:49:301212 "Show Material Design icons on the New Tab Page, instead of Most Visited "
1213 "tiles. Implicitly enables 'ntp-ui-md'.";
Ramya Nagarajane9f16b82018-05-03 01:05:341214
1215const char kNtpUIMdName[] = "New Tab Page Material Design UI";
1216const char kNtpUIMdDescription[] =
1217 "Updates the New Tab Page with Material Design elements.";
1218
Brett Wilsonecb80982017-07-12 20:34:511219const char kNumRasterThreadsName[] = "Number of raster threads";
1220const char kNumRasterThreadsDescription[] =
1221 "Specify the number of raster threads.";
1222const char kNumRasterThreadsOne[] = "1";
1223const char kNumRasterThreadsTwo[] = "2";
1224const char kNumRasterThreadsThree[] = "3";
1225const char kNumRasterThreadsFour[] = "4";
1226
1227const char kOfferStoreUnmaskedWalletCardsName[] =
1228 "Google Payments card saving checkbox";
1229const char kOfferStoreUnmaskedWalletCardsDescription[] =
1230 "Show the checkbox to offer local saving of a credit card downloaded from "
1231 "the server.";
1232
1233const char kOfflineAutoReloadName[] = "Offline Auto-Reload Mode";
1234const char kOfflineAutoReloadDescription[] =
1235 "Pages that fail to load while the browser is offline will be "
1236 "auto-reloaded when the browser is online again.";
1237
1238const char kOfflineAutoReloadVisibleOnlyName[] =
1239 "Only Auto-Reload Visible Tabs";
1240const char kOfflineAutoReloadVisibleOnlyDescription[] =
1241 "Pages that fail to load while the browser is offline will only be "
1242 "auto-reloaded if their tab is visible.";
1243
Brett Wilsonecb80982017-07-12 20:34:511244const char kOmniboxDisplayTitleForCurrentUrlName[] =
1245 "Include title for the current URL in the omnibox";
1246const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
1247 "In the event that the omnibox provides suggestions on-focus, the URL of "
1248 "the current page is provided as the first suggestion without a title. "
1249 "Enabling this flag causes the title to be displayed.";
1250
Benoit Lizeab08362c2017-07-19 14:50:541251const char kOmniboxSpareRendererName[] =
1252 "Start spare renderer on omnibox focus";
1253const char kOmniboxSpareRendererDescription[] =
1254 "When the omnibox is focused, start an empty spare renderer. This can "
1255 "speed up the load of the navigation from the omnibox.";
1256
Tommy C. Li8875a442017-08-23 00:10:591257const char kOmniboxUIElideSuggestionUrlAfterHostName[] =
1258 "Omnibox UI Elide Suggestion URL After Host";
1259const char kOmniboxUIElideSuggestionUrlAfterHostDescription[] =
1260 "Elides the path, query, and ref of suggested URLs in the Omnibox "
1261 "dropdown.";
1262
Tommy C. Lid79d4402017-12-22 22:49:121263const char kOmniboxUIHideSteadyStateUrlSchemeAndSubdomainsName[] =
1264 "Omnibox UI Hide Steady-State URL Scheme and Trivial Subdomains";
1265const char kOmniboxUIHideSteadyStateUrlSchemeAndSubdomainsDescription[] =
1266 "In the Omnibox, hide the scheme and trivial subdomains from steady state "
Tommy C. Li06aafc92018-06-12 18:06:221267 "displayed URLs. Hidden portions are restored during editing. For Mac, "
1268 "this flag will have no effect unless MacViews is enabled.";
Tommy C. Lid79d4402017-12-22 22:49:121269
Tommy C. Licc5e53022018-07-27 16:30:351270const char kOmniboxUIJogTextfieldOnPopupName[] =
1271 "Omnibox UI Jog Textfield on Popup";
1272const char kOmniboxUIJogTextfieldOnPopupDescription[] =
1273 "In the Omnibox, jog the textfield to align with the dropdown suggestions "
1274 "text when the popup is opened. When this feature is disabled, the "
1275 "textfield is always aligned with the suggestions text, and a separator "
1276 "fills the gap. If Material Refresh is disabled, this has no effect.";
1277
Brett Wilsonecb80982017-07-12 20:34:511278const char kOmniboxUIMaxAutocompleteMatchesName[] =
1279 "Omnibox UI Max Autocomplete Matches";
1280
1281const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
1282 "Changes the maximum number of autocomplete matches displayed in the "
1283 "Omnibox UI.";
1284
Justin Donnelly65c9e8b2017-10-01 05:15:011285const char kOmniboxUIShowSuggestionFaviconsName[] =
1286 "Omnibox UI Show Suggestion Favicons";
1287const char kOmniboxUIShowSuggestionFaviconsDescription[] =
1288 "Shows favicons instead of generic vector icons for URL suggestions in the "
1289 "Omnibox dropdown.";
1290
1291const char kOmniboxUISwapTitleAndUrlName[] = "Omnibox UI Swap Title and URL";
1292const char kOmniboxUISwapTitleAndUrlDescription[] =
1293 "In the omnibox dropdown, shows titles before URLs when both are "
1294 "available.";
1295
Brett Wilsonecb80982017-07-12 20:34:511296const char kOmniboxUIVerticalMarginName[] = "Omnibox UI Vertical Margin";
1297const char kOmniboxUIVerticalMarginDescription[] =
1298 "Changes the vertical margin in the Omnibox UI.";
1299
Troy Hildebrandtb32637ca2018-02-21 23:25:091300const char kOmniboxVoiceSearchAlwaysVisibleName[] =
1301 "Omnibox Voice Search Always Visible";
1302const char kOmniboxVoiceSearchAlwaysVisibleDescription[] =
1303 "Always displays voice search icon in focused omnibox as long as voice "
1304 "search is possible";
1305
Adrienne Walkerc87477e2018-06-06 22:28:211306const char kOopRasterizationName[] = "Out of process rasterization";
1307const char kOopRasterizationDescription[] =
1308 "Perform Ganesh raster in the GPU Process instead of the renderer. "
1309 "Must also enable GPU rasterization";
1310
Brett Wilsonecb80982017-07-12 20:34:511311const char kOriginTrialsName[] = "Origin Trials";
1312const char kOriginTrialsDescription[] =
1313 "Enables origin trials for controlling access to feature/API experiments.";
1314
Becca Hughes930d8cd2017-10-02 11:09:121315const char kOverflowIconsForMediaControlsName[] =
1316 "Icons on Media Controls Overflow Menu";
1317const char kOverflowIconsForMediaControlsDescription[] =
1318 "Displays icons on the overflow menu of the native media controls";
1319
Brett Wilsonecb80982017-07-12 20:34:511320const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
1321const char kOverlayScrollbarsDescription[] =
1322 "Enable the experimental overlay scrollbars implementation. You must also "
1323 "enable threaded compositing to have the scrollbars animate.";
1324
chaopenge8aa016b2017-08-24 15:20:191325const char kOverlayScrollbarsFlashAfterAnyScrollUpdateName[] =
1326 "Flash Overlay Scrollbars After Any Scroll Update";
1327const char kOverlayScrollbarsFlashAfterAnyScrollUpdateDescription[] =
1328 "Flash Overlay Scrollbars After any scroll update happends in page. You"
1329 " must also enable Overlay Scrollbars.";
1330
chaopeng343678022017-08-24 18:45:001331const char kOverlayScrollbarsFlashWhenMouseEnterName[] =
1332 "Flash Overlay Scrollbars When Mouse Enter";
1333const char kOverlayScrollbarsFlashWhenMouseEnterDescription[] =
1334 "Flash Overlay Scrollbars When Mouse Enter a scrollable area. You must also"
1335 " enable Overlay Scrollbars.";
1336
Daniele Castagna74ddb9c2018-06-21 22:59:021337const char kOverlayStrategiesName[] = "Select HW overlay strategies";
1338const char kOverlayStrategiesDescription[] =
1339 "Select strategies used to promote quads to HW overlays.";
1340const char kOverlayStrategiesDefault[] = "Default";
1341const char kOverlayStrategiesNone[] = "None";
1342const char kOverlayStrategiesUnoccludedFullscreen[] =
1343 "Unoccluded fullscreen buffers (single-fullscreen)";
1344const char kOverlayStrategiesUnoccluded[] =
1345 "Unoccluded buffers (single-fullscreen,single-on-top)";
1346const char kOverlayStrategiesOccludedAndUnoccluded[] =
1347 "Occluded and unoccluded buffers "
1348 "(single-fullscreen,single-on-top,underlay)";
1349
Claudio Magni81326f92017-09-01 05:21:181350const char kUseNewAcceptLanguageHeaderName[] = "Use new Accept-Language header";
1351const char kUseNewAcceptLanguageHeaderDescription[] =
1352 "Adds the base language code after other corresponding language+region "
1353 "codes. This ensures that users receive content in their preferred "
1354 "language.";
1355
Brett Wilsonecb80982017-07-12 20:34:511356const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
1357const char kOverscrollHistoryNavigationDescription[] =
Mohsen Izadi88b392a2018-02-15 06:57:481358 "History navigation in response to horizontal overscroll.";
Brett Wilsonecb80982017-07-12 20:34:511359const char kOverscrollHistoryNavigationSimpleUi[] = "Simple";
Mohsen Izadi88b392a2018-02-15 06:57:481360const char kOverscrollHistoryNavigationParallaxUi[] = "Parallax";
Brett Wilsonecb80982017-07-12 20:34:511361
1362const char kOverscrollStartThresholdName[] = "Overscroll start threshold";
1363const char kOverscrollStartThresholdDescription[] =
1364 "Changes overscroll start threshold relative to the default value.";
1365const char kOverscrollStartThreshold133Percent[] = "133%";
1366const char kOverscrollStartThreshold166Percent[] = "166%";
1367const char kOverscrollStartThreshold200Percent[] = "200%";
1368
chaopenge2b6e5f2018-05-08 16:40:451369const char kTouchpadOverscrollHistoryNavigationName[] =
1370 "Overscroll history navigation on Touchpad";
1371const char kTouchpadOverscrollHistoryNavigationDescription[] =
1372 "Allows swipe left/right from touchpad change browser navigation.";
1373
Xing Liu5400a002017-09-15 21:48:291374const char kParallelDownloadingName[] = "Parallel downloading";
1375const char kParallelDownloadingDescription[] =
Yannic Bonenbergera32f9902017-11-20 18:47:061376 "Enable parallel downloading to accelerate download speed.";
Xing Liu5400a002017-09-15 21:48:291377
Brett Wilsonecb80982017-07-12 20:34:511378const char kPassiveEventListenerDefaultName[] =
1379 "Passive Event Listener Override";
1380const char kPassiveEventListenerDefaultDescription[] =
1381 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
1382 "haven't requested otherwise) to be treated as passive. This will break "
1383 "touch/wheel behavior on some websites but is useful for demonstrating the "
1384 "potential performance benefits of adopting passive event listeners.";
1385const char kPassiveEventListenerTrue[] = "True (when unspecified)";
1386const char kPassiveEventListenerForceAllTrue[] = "Force All True";
1387
1388const char kPassiveEventListenersDueToFlingName[] =
1389 "Touch Event Listeners Passive Default During Fling";
1390const char kPassiveEventListenersDueToFlingDescription[] =
1391 "Forces touchstart, and first touchmove per scroll event listeners during "
1392 "fling to be treated as passive.";
1393
1394const char kPassiveDocumentEventListenersName[] =
1395 "Document Level Event Listeners Passive Default";
1396const char kPassiveDocumentEventListenersDescription[] =
1397 "Forces touchstart, and touchmove event listeners on document level "
1398 "targets (which haven't requested otherwise) to be treated as passive.";
1399
1400const char kPasswordForceSavingName[] = "Force-saving of passwords";
1401const char kPasswordForceSavingDescription[] =
1402 "Allow the user to manually enforce password saving instead of relying on "
1403 "password manager's heuristics.";
1404
Vaclav Brozekd8a3f542017-11-16 14:21:131405const char kPasswordExportName[] = "Password export";
1406const char kPasswordExportDescription[] =
1407 "Export functionality in password settings.";
1408
1409const char kPasswordImportName[] = "Password import";
1410const char kPasswordImportDescription[] =
1411 "Import functionality in password settings.";
Brett Wilsonecb80982017-07-12 20:34:511412
Friedrich Horschig03c91982018-01-25 14:21:281413const char kPasswordSearchMobileName[] = "Password search";
1414const char kPasswordSearchMobileDescription[] =
1415 "Search functionality in password settings.";
1416
Friedrich Horschige6c27742018-04-23 17:13:411417const char kPasswordsKeyboardAccessoryName[] =
1418 "Add password-related functions to keyboard accessory";
1419const char kPasswordsKeyboardAccessoryDescription[] =
1420 "Adds password generation button and toggle for the passwords bottom sheet "
1421 "to the keyboard accessory. Replaces password generation popups.";
1422
Christos Froussios6e060c42018-07-31 16:17:191423const char kPasswordsMigrateLinuxToLoginDBName[] =
1424 "Migrate passwords to \"Login Data\"";
1425const char kPasswordsMigrateLinuxToLoginDBDescription[] =
1426 "Performs a one-off migration (with retries) of passwords from the "
1427 "gnome-keyring or kwallet into the profile directory.";
1428
Tom Sepez92a2cd242018-03-13 19:23:091429const char kPdfIsolationName[] = "PDF Isolation";
1430const char kPdfIsolationDescription[] =
1431 "Render PDF files from different origins in different plugin processes.";
1432
Brett Wilsonecb80982017-07-12 20:34:511433const char kPinchScaleName[] = "Pinch scale";
1434const char kPinchScaleDescription[] =
1435 "Enables experimental support for scale using pinch.";
1436
Doug Arnett620ff542018-02-06 17:54:221437const char kPreviewsAllowedName[] = "Previews Allowed";
1438const char kPreviewsAllowedDescription[] =
1439 "Allows previews to be shown subject to specific preview types being "
1440 "enabled and the client experiencing specific triggering conditions. "
1441 "May be used as a kill-switch to turn off all potential preview types.";
1442
Brett Wilsonecb80982017-07-12 20:34:511443const char kPrintPdfAsImageName[] = "Print Pdf as Image";
1444const char kPrintPdfAsImageDescription[] =
1445 "If enabled, an option to print PDF files as images will be available in "
1446 "print preview.";
1447
1448const char kPrintPreviewRegisterPromosName[] =
1449 "Print Preview Registration Promos";
1450const char kPrintPreviewRegisterPromosDescription[] =
1451 "Enable registering unregistered cloud printers from print preview.";
1452
1453const char kProtectSyncCredentialName[] = "Autofill sync credential";
1454const char kProtectSyncCredentialDescription[] =
1455 "How the password manager handles autofill for the sync credential.";
1456
1457const char kProtectSyncCredentialOnReauthName[] =
1458 "Autofill sync credential only for transactional reauth pages";
1459const char kProtectSyncCredentialOnReauthDescription[] =
1460 "How the password manager handles autofill for the sync credential only "
1461 "for transactional reauth pages.";
1462
Mohsen Izadi93faac12017-07-29 04:45:151463const char kPullToRefreshName[] = "Pull-to-refresh gesture";
1464const char kPullToRefreshDescription[] =
1465 "Pull-to-refresh gesture in response to vertical overscroll.";
Mohsen Izadi8c59ba52018-04-12 18:52:011466const char kPullToRefreshEnabledTouchscreen[] = "Enabled for touchscreen only";
Mohsen Izadi93faac12017-07-29 04:45:151467
Troy Hildebrandt7228ad12018-02-23 21:18:241468const char kQueryInOmniboxName[] = "Query in Omnibox";
1469const char kQueryInOmniboxDescription[] =
1470 "Only display query terms in the omnibox when viewing a search results "
1471 "page.";
1472
Brett Wilsonecb80982017-07-12 20:34:511473const char kQuicName[] = "Experimental QUIC protocol";
1474const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1475
Emily Starke8878d52018-05-11 21:27:261476const char kRecurrentInterstitialName[] =
1477 "Show a message when the same SSL error recurs";
1478const char kRecurrentInterstitialDescription[] =
1479 "Enable a special message on the SSL certificate error page when the same "
1480 "SSL error occurs repeatedly.";
1481
Brett Wilsonecb80982017-07-12 20:34:511482const char kReducedReferrerGranularityName[] =
1483 "Reduce default 'referer' header granularity.";
1484const char kReducedReferrerGranularityDescription[] =
1485 "If a page hasn't set an explicit referrer policy, setting this flag will "
1486 "reduce the amount of information in the 'referer' header for cross-origin "
1487 "requests.";
1488
Claudio Magnie0a80bb2018-01-31 02:52:581489extern const char kRegionalLocalesAsDisplayUIName[] =
1490 "Allow regional locales as display UI";
1491extern const char kRegionalLocalesAsDisplayUIDescription[] =
1492 "This flag allows regional locales to be selected as display UI by the "
1493 "user in Language Settings. The actual locale of the system is derived "
1494 "from the user selection based on some simple fallback logic.";
1495
Christian Dullweber1af31e62018-02-22 11:49:481496const char kRemoveNavigationHistoryName[] =
Christian Dullweberb13ffda2018-02-23 11:42:141497 "Remove navigation entry on history deletion";
Christian Dullweber1af31e62018-02-22 11:49:481498const char kRemoveNavigationHistoryDescription[] =
1499 "Remove a navigation entry when the corresponding history entry has been "
1500 "deleted.";
1501
Mihai Sardarescu6d0f5b72017-10-30 11:24:381502const char kRemoveUsageOfDeprecatedGaiaSigninEndpointName[] =
1503 "Remove usage of the deprecated GAIA sign-in endpoint";
1504const char kRemoveUsageOfDeprecatedGaiaSigninEndpointDescription[] =
1505 "The Gaia sign-in endpoint used for full-tab sign-in page is deprecated. "
1506 "This flags controls wheter it should no longer be used during a sign-in "
1507 " flow.";
1508
Yutaka Hirano4c0f2f5d452017-11-17 04:24:351509const char kRendererSideResourceSchedulerName[] =
1510 "Renderer side ResourceScheduler";
1511const char kRendererSideResourceSchedulerDescription[] =
1512 "Migrate some ResourceScheduler functionalities to renderer";
1513
Brett Wilsonecb80982017-07-12 20:34:511514const char kRequestTabletSiteName[] =
1515 "Request tablet site option in the settings menu";
1516const char kRequestTabletSiteDescription[] =
1517 "Allows the user to request tablet site. Web content is often optimized "
1518 "for tablet devices. When this option is selected the user agent string is "
1519 "changed to indicate a tablet device. Web content optimized for tablets is "
1520 "received there after for the current tab.";
1521
1522const char kResetAppListInstallStateName[] =
1523 "Reset the App Launcher install state on every restart.";
1524const char kResetAppListInstallStateDescription[] =
1525 "Reset the App Launcher install state on every restart. While this flag is "
1526 "set, Chrome will forget the launcher has been installed each time it "
1527 "starts. This is used for testing the App Launcher install flow.";
1528
Kinuko Yasuda33955082018-06-19 10:14:591529const char kResourceLoadSchedulerName[] = "Enable resource load throttling";
Brett Wilsonecb80982017-07-12 20:34:511530const char kResourceLoadSchedulerDescription[] =
Kinuko Yasuda33955082018-06-19 10:14:591531 "Uses the resource load scheduler in blink to throttle resource load "
1532 "requests.";
Brett Wilsonecb80982017-07-12 20:34:511533
Brett Wilsonecb80982017-07-12 20:34:511534const char kSafeSearchUrlReportingName[] = "SafeSearch URLs reporting.";
1535const char kSafeSearchUrlReportingDescription[] =
1536 "If enabled, inappropriate URLs can be reported back to SafeSearch.";
1537
Alexei Filippov98772752018-01-27 08:26:521538const char kSamplingHeapProfilerName[] = "Native memory sampling profiler.";
1539const char kSamplingHeapProfilerDescription[] =
1540 "Enables native memory sampling profiler with specified rate in KiB. "
1541 "If sampling rate is not provided the default value of 128 KiB is used.";
1542
Brett Wilsonecb80982017-07-12 20:34:511543const char kSaveasMenuLabelExperimentName[] =
1544 "Switch 'Save as' menu labels to 'Download'";
1545const char kSaveasMenuLabelExperimentDescription[] =
1546 "Enables an experiment to switch menu labels that use 'Save as...' to "
1547 "'Download'.";
1548
1549const char kSavePageAsMhtmlName[] = "Save Page as MHTML";
1550const char kSavePageAsMhtmlDescription[] =
1551 "Enables saving pages as MHTML: a single text file containing HTML and all "
1552 "sub-resources.";
1553
Nate Chapin9638e7102017-09-20 22:11:011554const char kSavePreviousDocumentResourcesName[] =
1555 "Save Previous Document Resources";
1556const char kSavePreviousDocumentResourcesDescription[] =
1557 "Saves an old document's cached resources until the specified point in the "
1558 "next document's lifecycle.";
1559const char kSavePreviousDocumentResourcesNever[] =
1560 "Don't explicitly save resources";
1561const char kSavePreviousDocumentResourcesUntilOnDOMContentLoaded[] =
1562 "Save resources until onDOMContentLoaded completes";
1563const char kSavePreviousDocumentResourcesUntilOnLoad[] =
1564 "Save resources until onload completes";
1565
Brett Wilsonecb80982017-07-12 20:34:511566const char kScrollPredictionName[] = "Scroll prediction";
1567const char kScrollPredictionDescription[] =
1568 "Predicts the finger's future position during scrolls allowing time to "
1569 "render the frame before the finger is there.";
1570
gogeraldd5061b592017-09-06 23:39:551571const char kServiceWorkerPaymentAppsName[] = "Service Worker payment apps";
1572const char kServiceWorkerPaymentAppsDescription[] =
1573 "Enable Service Worker applications to integrate as payment apps";
1574
Makoto Shimazu22078cc2018-02-21 03:01:441575extern const char kServiceWorkerServicificationName[] =
1576 "Servicified service workers";
1577extern const char kServiceWorkerServicificationDescription[] =
1578 "Enable the servicified service workers. A servicified service worker can "
1579 "have direct connection from its clients, so that fetch events can be "
1580 "dispatched through the connection without hopping to the browser process.";
Makoto Shimazud9f333c2017-08-08 07:23:171581
Tsuyoshi Horobcb1c642017-11-24 16:32:141582const char kServiceWorkerScriptFullCodeCacheName[] =
1583 "Service worker script full code cache.";
1584const char kServiceWorkerScriptFullCodeCacheDescription[] =
1585 "Generate V8 full code cache of Service Worker scripts while installing.";
1586
Brett Wilsonecb80982017-07-12 20:34:511587const char kSettingsWindowName[] = "Show settings in a window";
1588const char kSettingsWindowDescription[] =
1589 "Settings will be shown in a dedicated window instead of as a browser tab.";
1590
Manu Cornetd7ef7c52018-05-01 22:08:231591const char kShelfHoverPreviewsName[] =
1592 "Show previews of running apps when hovering over the shelf.";
1593const char kShelfHoverPreviewsDescription[] =
1594 "Shows previews of the open windows for a given running app when hovering "
1595 "over the shelf.";
1596
Manu Cornet683e14b2018-07-16 17:39:431597const char kShelfNewUiName[] = "Newest shelf redesign.";
1598const char kShelfNewUiDescription[] = "Enables the newest shelf appearance.";
1599
Trent Apted750ba7022017-10-23 13:36:251600const char kShowAllDialogsWithViewsToolkitName[] =
1601 "Show all dialogs with Views toolkit";
1602const char kShowAllDialogsWithViewsToolkitDescription[] =
1603 "All browser dialogs will be shown using the Views toolkit rather than "
1604 "Cocoa. This requires <a href=\"#secondary-ui-md\">#secondary-ui-md</a>.";
1605
Naoki Fukino008a0022018-05-23 18:33:001606const char kShowAndroidFilesInFilesAppName[] =
1607 "Show Android files in Files app";
1608const char kShowAndroidFilesInFilesAppDescription[] =
1609 "Show Android files in Files app if Android is enabled on the device.";
1610
Luciano Pachecoa0e2753f2018-07-16 07:41:101611const char kFilesAppDisableMyFilesNavigationName[] =
1612 "Disable the My Files on the navigation in the Files app";
1613const char kFilesAppDisableMyFilesNavigationDescription[] =
1614 "Disables the My Files on the navigation in the Files app, which displays "
Luciano Pachecof1beaa82018-05-30 04:48:511615 R"("My Files" root for Downloads, Linux and Play files)";
1616
Brett Wilsonecb80982017-07-12 20:34:511617const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
1618const char kShowAutofillSignaturesDescription[] =
Maxim Kolosovskiye66f8cb2018-03-23 10:25:381619 "Annotates web forms with Autofill signatures as HTML attributes. Also "
1620 "marks password fields suitable for password generation.";
Brett Wilsonecb80982017-07-12 20:34:511621
1622const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
1623const char kShowAutofillTypePredictionsDescription[] =
1624 "Annotates web forms with Autofill field type predictions as placeholder "
1625 "text.";
1626
1627const char kShowOverdrawFeedbackName[] = "Show overdraw feedback";
1628const char kShowOverdrawFeedbackDescription[] =
1629 "Visualize overdraw by color-coding elements based on if they have other "
1630 "elements drawn underneath.";
1631
Carlos IL89128732018-04-03 17:00:251632const char kSupervisedUserCommittedInterstitialsName[] =
1633 "Enable Supervised User Committed Interstitials";
1634const char kSupervisedUserCommittedInterstitialsDescription[] =
1635 "Use committed error pages instead of transient navigation entries for "
1636 "supervised user interstitials";
1637
yiyixbdfa9a0b2017-10-23 22:21:471638const char kEnableDrawOcclusionName[] = "Enable draw occlusion";
1639const char kEnableDrawOcclusionDescription[] =
1640 "Enable the system to use draw occlusion to skip draw quads when they are "
1641 "not shown on the screen.";
1642
Brett Wilsonecb80982017-07-12 20:34:511643const char kShowSavedCopyName[] = "Show Saved Copy Button";
1644const char kShowSavedCopyDescription[] =
1645 "When a page fails to load, if a stale copy of the page exists in the "
1646 "browser cache, a button will be presented to allow the user to load that "
1647 "stale copy. The primary enabling choice puts the button in the most "
1648 "salient position on the error page; the secondary enabling choice puts it "
1649 "secondary to the reload button.";
1650const char kEnableShowSavedCopyPrimary[] = "Enable: Primary";
1651const char kEnableShowSavedCopySecondary[] = "Enable: Secondary";
1652const char kDisableShowSavedCopy[] = "Disable";
1653
Brett Wilsonecb80982017-07-12 20:34:511654const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1655const char kSilentDebuggerExtensionApiDescription[] =
1656 "Do not show the infobar when an extension attaches to a page via "
1657 "chrome.debugger API. This is required to debug extension background "
1658 "pages.";
1659
Tsuyoshi Horo53895ba92018-03-14 04:06:481660const char kSignedHTTPExchangeName[] = "Signed HTTP Exchange";
1661const char kSignedHTTPExchangeDescription[] =
1662 "Enables Origin-Signed HTTP Exchanges support which is still in "
1663 "development. Warning: Enabling this may pose a security risk.";
1664
Brett Wilsonecb80982017-07-12 20:34:511665const char kSimpleCacheBackendName[] = "Simple Cache for HTTP";
1666const char kSimpleCacheBackendDescription[] =
1667 "The Simple Cache for HTTP is a new cache. It relies on the filesystem for "
1668 "disk space allocation.";
1669
Christopher Thompson75ff845d2018-02-01 20:12:461670const char kSimplifyHttpsIndicatorName[] = "Simplify HTTPS indicator UI";
1671const char kSimplifyHttpsIndicatorDescription[] =
1672 "Change the UI treatment for HTTPS pages.";
1673
Brett Wilsonecb80982017-07-12 20:34:511674const char kSingleClickAutofillName[] = "Single-click autofill";
1675const char kSingleClickAutofillDescription[] =
1676 "Make autofill suggestions on initial mouse click on a form element.";
1677
Bret Sepulveda4f891da2018-07-16 19:10:301678const char kSingleTabMode[] = "Single-tab mode";
1679const char kSingleTabModeDescription[] =
1680 "Windows with a single tab receive a special, minimal visual treatment.";
1681
Nick Carter855bc492018-03-10 00:44:571682const char kStrictSiteIsolationName[] = "Strict site isolation";
1683const char kStrictSiteIsolationDescription[] =
1684 "Security mode that enables site isolation for all sites. When enabled, "
1685 "each renderer process will contain pages from at most one site, using "
1686 "out-of-process iframes when needed. When enabled, this flag forces the "
1687 "strictest site isolation mode (SitePerProcess). When disabled, the site "
1688 "isolation mode will be determined by enterprise policy or field trial.";
1689
1690const char kSiteIsolationTrialOptOutName[] = "Site isolation trial opt-out";
1691const char kSiteIsolationTrialOptOutDescription[] =
1692 "Opts out of field trials that enable site isolation modes "
1693 "(SitePerProcess, IsolateOrigins, etc). Intended for diagnosing bugs that "
1694 "may be due to out-of-process iframes. Opt-out has no effect if site "
1695 "isolation is force-enabled via #enable-site-per-process or enterprise "
1696 "policy. Caution: this disables important mitigations for the Spectre CPU "
1697 "vulnerability affecting most computers.";
1698extern const char kSiteIsolationTrialOptOutChoiceDefault[] = "Default";
1699extern const char kSiteIsolationTrialOptOutChoiceOptOut[] =
1700 "Opt-out (not recommended)";
Brett Wilsonecb80982017-07-12 20:34:511701
Pattideade7972018-04-27 02:59:401702const char kSiteSettings[] = "Site settings";
Brett Wilsonecb80982017-07-12 20:34:511703const char kSiteSettingsDescription[] =
Pattideade7972018-04-27 02:59:401704 "Add the All Sites list to Site Settings.";
Brett Wilsonecb80982017-07-12 20:34:511705
Brett Wilsonecb80982017-07-12 20:34:511706const char kSmoothScrollingName[] = "Smooth Scrolling";
1707const char kSmoothScrollingDescription[] =
1708 "Animate smoothly when scrolling page content.";
1709
1710const char kSoftwareRasterizerName[] = "3D software rasterizer";
1711const char kSoftwareRasterizerDescription[] =
1712 "Fall back to a 3D software rasterizer when the GPU cannot be used.";
1713
Wei-Yin Chen (陳威尹)deff0802018-01-19 06:29:201714const char kSoleIntegrationName[] = "Sole integration";
1715const char kSoleIntegrationDescription[] =
1716 "Enable Sole integration for browser customization. You must restart "
1717 "the browser twice for changes to take effect.";
1718
Tommy Steimel77704be2017-08-28 22:14:401719const char kSoundContentSettingName[] = "Sound content setting";
1720const char kSoundContentSettingDescription[] =
1721 "Enable site-wide muting in content settings and tab strip context menu.";
1722
Alexandr Ilinf0500ed32017-09-27 21:12:361723const char kSpeculativePreconnectName[] = "Enable new preconnect predictor";
1724const char kSpeculativePreconnectDescription[] =
1725 "Enable the new implementation of preconnect and DNS preresolve. "
1726 "\"Learning\" means that only database construction is enabled, "
1727 "\"Preconnect\" enables both learning and preconnect and disables the "
1728 "existing implementation. \"No preconnect\" disables both implementations.";
1729
Brett Wilsonecb80982017-07-12 20:34:511730const char kSpeculativePrefetchName[] = "Speculative Prefetch";
vabr0215a8e2017-03-28 12:47:341731const char kSpeculativePrefetchDescription[] =
1732 R"*("Speculative Prefetch" fetches likely resources early to improve )*"
1733 R"*(load times, based on a local database (see chrome://predictors). )*"
1734 R"*("Learning" means that only the database construction is enabled, )*"
1735 R"*("Prefetching" that learning and prefetching are enabled.)*";
1736
Justin Donnelly4e448cb2017-07-07 21:32:131737const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
1738 "Enable speculative start of a service worker when a search is predicted.";
Justin Donnelly4e448cb2017-07-07 21:32:131739const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
1740 "If enabled, when the user enters text in the omnibox that looks like a "
1741 "a query, any service worker associated with the search engine the query "
1742 "will be sent to is started early.";
1743
Brett Wilsonecb80982017-07-12 20:34:511744const char kSpellingFeedbackFieldTrialName[] = "Spelling Feedback Field Trial";
1745const char kSpellingFeedbackFieldTrialDescription[] =
1746 "Enable the field trial for sending user feedback to spelling service.";
horo201d49492017-05-19 05:31:401747
Carlos ILe5fa0a12018-08-03 16:08:321748const char kSSLCommittedInterstitialsName[] = "Committed Interstitials";
1749const char kSSLCommittedInterstitialsDescription[] =
1750 "Use committed error pages instead of transient navigation entries "
1751 "for SSL interstitial error pages (i.e. certificate errors).";
1752
Shubhie Panickerfaf082ed2018-01-03 04:49:151753const char kStopInBackgroundName[] = "Stop in background";
1754const char kStopInBackgroundDescription[] =
1755 "Stop scheduler task queues, in the background, "
Shubhie Panicker56c99a22018-03-21 00:22:281756 " after a grace period.";
Shubhie Panickerfaf082ed2018-01-03 04:49:151757
Shubhie Panicker56c99a22018-03-21 00:22:281758const char kStopNonTimersInBackgroundName[] =
1759 "Stop non-timer task queues background";
1760const char kStopNonTimersInBackgroundDescription[] =
1761 "Stop non-timer task queues, in the background, "
1762 "after a grace period.";
1763
Brett Wilsonecb80982017-07-12 20:34:511764const char kSuggestionsWithSubStringMatchName[] =
1765 "Substring matching for Autofill suggestions";
1766const char kSuggestionsWithSubStringMatchDescription[] =
1767 "Match Autofill suggestions based on substrings (token prefixes) rather "
1768 "than just prefixes.";
vabr0215a8e2017-03-28 12:47:341769
Marc Treibf65fb002018-08-03 11:17:161770const char kSyncStandaloneTransportName[] = "Allow Sync standalone transport";
1771const char kSyncStandaloneTransportDescription[] =
1772 "If enabled, allows Chrome Sync to start in standalone transport mode. In "
1773 "this mode, the Sync machinery can start without user opt-in, but only a "
1774 "subset of data types are supported.";
1775
Jan Krcale3641b92018-08-10 17:53:311776const char kSyncUSSAutofillWalletDataName[] =
1777 "Enable USS for autofill wallet data";
1778const char kSyncUSSAutofillWalletDataDescription[] =
1779 "Enables the new implementation of autofill walet data sync";
1780
Brett Wilsonecb80982017-07-12 20:34:511781const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1782const char kSyncSandboxDescription[] =
1783 "Connects to the testing server for Chrome Sync.";
vabr0215a8e2017-03-28 12:47:341784
Joe Downing8cbbc192018-05-14 17:37:071785const char kSystemKeyboardLockName[] = "Experimental system keyboard lock";
1786const char kSystemKeyboardLockDescription[] =
1787 "Enables websites to use the keyboard.lock() API to intercept system "
1788 "keyboard shortcuts and have the events routed directly to the website "
1789 "when in fullscreen mode.";
1790
Brett Wilsonecb80982017-07-12 20:34:511791const char kTabAudioMutingName[] = "Tab audio muting UI control";
1792const char kTabAudioMutingDescription[] =
1793 "When enabled, the audio indicators in the tab strip double as tab audio "
1794 "mute controls. This also adds commands in the tab context menu for "
1795 "quickly muting multiple selected tabs.";
vabr0215a8e2017-03-28 12:47:341796
Christian Dullweberd0d96f02017-09-13 09:22:511797const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1798const char kTabsInCbdDescription[] =
1799 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
1800
Becky Zhou99c22802017-10-19 05:09:271801const char kTabModalJsDialogName[] = "Auto-dismissing JavaScript Dialogs";
1802const char kTabModalJsDialogDescription[] =
1803 "If enabled, the JavaScript dialog will be auto dismissable when switching"
1804 " tab.";
1805
Brett Wilsonecb80982017-07-12 20:34:511806const char kTcpFastOpenName[] = "TCP Fast Open";
1807const char kTcpFastOpenDescription[] =
1808 "Enable the option to send extra authentication information in the initial "
1809 "SYN packet for a previously connected client, allowing faster data send "
1810 "start.";
vabr0215a8e2017-03-28 12:47:341811
Daniele Castagna0fead93e2018-01-10 20:40:291812const char kTintGlCompositedContentName[] = "Tint GL-composited content";
1813const char kTintGlCompositedContentDescription[] =
1814 "Tint contents composited using GL with a shade of red to help debug and "
1815 "study overlay support.";
1816
Brett Wilsonecb80982017-07-12 20:34:511817const char kTopChromeMd[] = "UI Layout for the browser's top chrome";
1818const char kTopChromeMdDescription[] =
Ahmed Fakhryb2552be92018-03-02 00:56:581819 "Toggles between 1) Normal - for clamshell devices, 2) Hybrid (previously "
Peter Boström85fa2e12018-03-16 20:43:401820 "touch) - middle point for devices with a touch screen, 3) Touchable "
Peter Boström756745dd2018-05-14 22:59:431821 "- new unified interface for touch and convertibles (Chrome OS), 4) "
Robert Liao0e09b5a8b2018-06-04 21:58:341822 "Material Design refresh and 5) Touchable Material Design refresh. "
Robert Liao3ecf97c2018-06-05 01:24:541823 "Enabling #upcoming-ui-features forces the Material Design refresh option.";
Brett Wilsonecb80982017-07-12 20:34:511824const char kTopChromeMdMaterial[] = "Normal";
Eugene Girard42dedf722017-10-12 21:07:531825const char kTopChromeMdMaterialAuto[] = "Auto";
Trent Aptedd3e5f022018-03-01 07:25:461826const char kTopChromeMdMaterialHybrid[] = "Hybrid";
Ahmed Fakhryb2552be92018-03-02 00:56:581827const char kTopChromeMdMaterialTouchOptimized[] = "Touchable";
Peter Boström85fa2e12018-03-16 20:43:401828const char kTopChromeMdMaterialRefresh[] = "Refresh";
Peter Boström756745dd2018-05-14 22:59:431829const char kTopChromeMdMaterialRefreshTouchOptimized[] = "Touchable Refresh";
vabr0215a8e2017-03-28 12:47:341830
Brett Wilsonecb80982017-07-12 20:34:511831const char kThreadedScrollingName[] = "Threaded scrolling";
1832const char kThreadedScrollingDescription[] =
1833 "Threaded handling of scroll-related input events. Disabling this will "
1834 "force all such scroll events to be handled on the main thread. Note that "
1835 "this can dramatically hurt scrolling performance of most websites and is "
1836 "intended for testing purposes only.";
1837
Steven Valdez4584b2482017-07-14 01:11:571838const char kTLS13VariantName[] = "TLS 1.3";
1839const char kTLS13VariantDescription[] = "Sets the TLS 1.3 variant used.";
1840const char kTLS13VariantDisabled[] = "Disabled";
Steven Valdez57d88652017-10-05 21:05:111841const char kTLS13VariantDeprecated[] = "Disabled (Deprecated Setting)";
Steven Valdez781157b2018-01-11 13:32:041842const char kTLS13VariantDraft23[] = "Enabled (Draft 23)";
David Benjamin27ac5b62018-05-22 15:28:381843const char kTLS13VariantDraft28[] = "Enabled (Draft 28)";
Steven Valdez4584b2482017-07-14 01:11:571844
Brett Wilsonecb80982017-07-12 20:34:511845const char kTopDocumentIsolationName[] = "Top document isolation";
1846const char kTopDocumentIsolationDescription[] =
1847 "Highly experimental performance mode where cross-site iframes are kept in "
1848 "a separate process from the top document. In this mode, iframes from "
1849 "different third-party sites will be allowed to share a process.";
1850
Dominick Ng8896b1cd2017-10-17 23:24:361851const char kTopSitesFromSiteEngagementName[] = "Top Sites from Site Engagement";
1852const char kTopSitesFromSiteEngagementDescription[] =
1853 "Enable Top Sites on the New Tab Page to be sourced and sorted using site "
1854 "engagement.";
1855
Brett Wilsonecb80982017-07-12 20:34:511856const char kTouchAdjustmentName[] = "Touch adjustment";
1857const char kTouchAdjustmentDescription[] =
1858 "Refine the position of a touch gesture in order to compensate for touches "
1859 "having poor resolution compared to a mouse.";
1860
Alex Newcomerb3d3c972018-05-03 14:59:401861const char kTouchableAppContextMenuName[] = "Touchable App Context Menu";
1862const char kTouchableAppContextMenuDescription[] =
1863 "Enable the touchable app context menu, which enlarges app context menus "
1864 "in the Launcher and Shelf to make room for new features.";
1865
Brett Wilsonecb80982017-07-12 20:34:511866const char kTouchDragDropName[] = "Touch initiated drag and drop";
1867const char kTouchDragDropDescription[] =
1868 "Touch drag and drop can be initiated through long press on a draggable "
1869 "element.";
1870
1871const char kTouchEventsName[] = "Touch Events API";
1872const char kTouchEventsDescription[] =
1873 "Force Touch Events API feature detection to always be enabled or "
1874 "disabled, or to be enabled when a touchscreen is detected on startup "
Ella Gea6a203c92017-10-26 19:09:291875 "(Automatic).";
Brett Wilsonecb80982017-07-12 20:34:511876
1877const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
1878const char kTouchSelectionStrategyDescription[] =
1879 "Controls how text selection granularity changes when touch text selection "
1880 "handles are dragged. Non-default behavior is experimental.";
1881const char kTouchSelectionStrategyCharacter[] = "Character";
1882const char kTouchSelectionStrategyDirection[] = "Direction";
1883
1884const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
1885const char kTraceUploadUrlDescription[] =
1886 "This is to be used in conjunction with the enable-navigation-tracing "
1887 "flag. Please select the label that best describes the recorded traces. "
1888 "This will choose the destination the traces are uploaded to. If you are "
1889 "not sure, select other. If left empty, no traces will be uploaded.";
1890const char kTraceUploadUrlChoiceOther[] = "Other";
1891const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1892const char kTraceUploadUrlChoiceQa[] = "QA";
1893const char kTraceUploadUrlChoiceTesting[] = "Testing";
1894
Anthony Vallee-Dubois265c5692018-06-01 15:57:141895const char kTranslateForceTriggerOnEnglishName[] =
1896 "Select which language model to use to trigger translate on English "
1897 "content";
1898const char kTranslateForceTriggerOnEnglishDescription[] =
1899 "Force the Translate Triggering on English pages experiment to be enabled "
1900 "with the selected language model active.";
1901
Philippe Hamel7fdaa452017-09-29 17:22:491902const char kTranslateRankerEnforcementName[] =
1903 "Enforce TranslateRanker decisions";
1904const char kTranslateRankerEnforcementDescription[] =
1905 "Improved Translate UI triggering logic. TranslateRanker decides whether "
1906 "or not Translate UI should be triggered in a given context.";
1907
Nicolas Ouellet-payeur9e5ff3d2018-06-20 16:07:161908const char kTranslateUIName[] = "Enable Translate";
1909const char kTranslateUIDescription[] =
1910 "Enable the Translate popup when visiting webpages in other languages.";
1911
Mustafa Emre Acerb3aa36a82018-05-22 21:44:051912const char kTreatInsecureOriginAsSecureName[] =
1913 "Insecure origins treated as secure";
1914const char kTreatInsecureOriginAsSecureDescription[] =
1915 "Treat given (insecure) origins as secure origins. Multiple origins can be "
1916 "supplied as a comma-separated list. For the definition of secure "
1917 "contexts, "
1918 "see https://w3c.github.io/webappsec-secure-contexts/";
1919
Brett Wilsonecb80982017-07-12 20:34:511920const char kTrySupportedChannelLayoutsName[] =
1921 "Causes audio output streams to check if channel layouts other than the "
1922 "default hardware layout are available.";
1923const char kTrySupportedChannelLayoutsDescription[] =
1924 "Causes audio output streams to check if channel layouts other than the "
1925 "default hardware layout are available. Turning this on will allow the OS "
1926 "to do stereo to surround expansion if supported. May expose third party "
1927 "driver bugs, use with caution.";
1928
David Roger6762a092018-01-31 15:55:071929const char kUnifiedConsentName[] = "Unified Consent";
1930const char kUnifiedConsentDescription[] =
1931 "Enables a unified management of user consent for privacy-related "
1932 "features. This includes new confirmation screens and improved settings "
1933 "pages.";
1934
Jérôme Lebelfe1b2e02018-08-03 12:26:201935const char kForceUnifiedConsentBumpName[] = "Force Unified Consent Bump";
1936const char kForceUnifiedConsentBumpDescription[] =
1937 "Force the unified consent bump UI to be shown on every start-up. This "
1938 "flag is for debug purpose, to test the UI.";
1939
Brett Wilsonecb80982017-07-12 20:34:511940const char kUiPartialSwapName[] = "Partial swap";
1941const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
1942
Chris Pickel3a227ae62017-08-24 10:47:261943const char kUseDdljsonApiName[] = "Use new ddljson API for Doodles";
1944const char kUseDdljsonApiDescription[] =
1945 "Enables the new ddljson API to fetch Doodles for the NTP.";
1946
Becca Hughes59c05b42017-11-03 13:11:581947const char kUseModernMediaControlsName[] = "New Media Controls";
1948const char kUseModernMediaControlsDescription[] =
1949 "Enables the new style native media controls.";
1950
Wei Li790e7a8572018-03-23 01:31:551951const char kUsePdfCompositorServiceName[] =
1952 "Use PDF compositor service for printing";
1953const char kUsePdfCompositorServiceDescription[] =
1954 "When enabled, use PDF compositor service to composite and generate PDF "
1955 "files for printing. When site isolation is enabled, disabling this will "
1956 "not stop using PDF compositor service since the service is required for "
1957 "printing out-of-process iframes correctly.";
1958
Mustaq Ahmedc646c0a2017-10-20 20:08:301959const char kUserActivationV2Name[] = "User Activation v2";
1960const char kUserActivationV2Description[] =
1961 "Enable simple user activation for APIs that are otherwise controlled by "
1962 "user gesture tokens.";
1963
Brett Wilsonecb80982017-07-12 20:34:511964const char kUserConsentForExtensionScriptsName[] =
1965 "User consent for extension scripts";
1966const char kUserConsentForExtensionScriptsDescription[] =
1967 "Require user consent for an extension running a script on the page, if "
1968 "the extension requested permission to run on all urls.";
1969
1970const char kUseSuggestionsEvenIfFewFeatureName[] =
1971 "Disable minimum for server-side tile suggestions on NTP.";
1972const char kUseSuggestionsEvenIfFewFeatureDescription[] =
1973 "Request server-side suggestions even if there are only very few of them "
1974 "and use them for tiles on the New Tab Page.";
1975
1976const char kV8CacheOptionsName[] = "V8 caching mode.";
1977const char kV8CacheOptionsDescription[] =
1978 "Caching mode for the V8 JavaScript engine.";
Brett Wilsonecb80982017-07-12 20:34:511979const char kV8CacheOptionsCode[] = "Cache V8 compiler data.";
1980
Hitoshi Yoshida3e5db562017-09-11 02:31:081981const char kV8ContextSnapshotName[] = "Use a snapshot to create V8 contexts.";
1982const char kV8ContextSnapshotDescription[] =
1983 "Sets to use a snapshot to create V8 contexts in frame creation.";
1984
Michael Hablich896d52662017-10-23 15:59:571985const char kV8VmFutureName[] = "Future V8 VM features";
1986const char kV8VmFutureDescription[] =
1987 "This enables upcoming and experimental V8 VM features. "
1988 "This flag does not enable experimental JavaScript features.";
1989
Hannes Payer1130d5672018-06-05 07:37:311990const char kV8OrinocoName[] = "V8 Orinoco garbage collection features";
1991const char kV8OrinocoDescription[] =
1992 "This enables the V8 Orinoco garbage collection features.";
1993
Brett Wilsonecb80982017-07-12 20:34:511994const char kVideoFullscreenOrientationLockName[] =
1995 "Lock screen orientation when playing a video fullscreen.";
1996const char kVideoFullscreenOrientationLockDescription[] =
1997 "Lock the screen orientation of the device to match video orientation when "
1998 "a video goes fullscreen. Only on phones.";
1999
2000const char kVideoRotateToFullscreenName[] =
2001 "Rotate-to-fullscreen gesture for videos.";
2002const char kVideoRotateToFullscreenDescription[] =
2003 "Enter/exit fullscreen when device is rotated to/from the orientation of "
2004 "the video. Only on phones.";
2005
Elly Fong-Jonesf4c79502018-03-23 19:21:532006const char kViewsBrowserWindowsName[] =
2007 "Use Views browser windows instead of Cocoa.";
2008const char kViewsBrowserWindowsDescription[] =
2009 "Use Views browser windows instead of Cocoa, aka MacViews-Browser.";
2010
Brett Wilsonecb80982017-07-12 20:34:512011const char kWalletServiceUseSandboxName[] =
2012 "Use Google Payments sandbox servers";
2013const char kWalletServiceUseSandboxDescription[] =
2014 "For developers: use the sandbox service for Google Payments API calls.";
2015
Brett Wilsonecb80982017-07-12 20:34:512016const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
2017const char kWebglDraftExtensionsDescription[] =
2018 "Enabling this option allows web applications to access the WebGL "
2019 "Extensions that are still in draft status.";
2020
2021const char kWebMidiName[] = "Web MIDI API";
2022const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
2023
2024const char kWebPaymentsName[] = "Web Payments";
2025const char kWebPaymentsDescription[] =
2026 "Enable Web Payments API integration, a JavaScript API for merchants.";
2027
Mathieu Perreault51339b82017-07-20 17:06:052028const char kWebPaymentsModifiersName[] = "Enable web payment modifiers";
2029const char kWebPaymentsModifiersDescription[] =
2030 "If the website provides modifiers in the payment request, show the custom "
2031 "total for each payment instrument, update the shopping cart when "
2032 "instruments are switched, and send modified payment method specific data "
2033 "to the payment app.";
2034
Brett Wilsonecb80982017-07-12 20:34:512035const char kWebrtcEchoCanceller3Name[] = "WebRTC Echo Canceller 3.";
2036const char kWebrtcEchoCanceller3Description[] =
2037 "Experimental WebRTC echo canceller (AEC3).";
2038
2039const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
2040const char kWebrtcHwDecodingDescription[] =
2041 "Support in WebRTC for decoding video streams using platform hardware.";
2042
2043const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
2044const char kWebrtcHwEncodingDescription[] =
2045 "Support in WebRTC for encoding video streams using platform hardware.";
2046
2047const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
2048const char kWebrtcHwH264EncodingDescription[] =
2049 "Support in WebRTC for encoding h264 video streams using platform "
2050 "hardware.";
2051
2052const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
2053const char kWebrtcHwVP8EncodingDescription[] =
2054 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
2055
Niels Möller090866a2018-02-13 10:55:032056const char kWebrtcNewEncodeCpuLoadEstimatorName[] =
2057 "WebRTC new encode cpu load estimator";
2058const char kWebrtcNewEncodeCpuLoadEstimatorDescription[] =
2059 "Enable new estimator for the encoder cpu load, for evaluation and "
2060 "testing. Intended to improve accuracy when screen casting.";
2061
Elad Alon85e0d0be2018-06-26 10:38:372062const char kWebRtcRemoteEventLogName[] = "WebRTC remote-bound event logging";
2063const char kWebRtcRemoteEventLogDescription[] =
2064 "Allow collecting WebRTC event logs and uploading them to Crash. "
2065 "Please note that, even if enabled, this will still require "
2066 "a policy to be set, for it to have an effect.";
2067
Brett Wilsonecb80982017-07-12 20:34:512068const char kWebrtcSrtpAesGcmName[] =
2069 "Negotiation with GCM cipher suites for SRTP in WebRTC";
2070const char kWebrtcSrtpAesGcmDescription[] =
2071 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
2072
Joachim Bauch4a41d7512017-08-23 14:24:232073const char kWebrtcSrtpEncryptedHeadersName[] =
2074 "Negotiation with encrypted header extensions for SRTP in WebRTC";
2075const char kWebrtcSrtpEncryptedHeadersDescription[] =
2076 "When enabled, WebRTC will try to negotiate encrypted header extensions "
2077 "for SRTP.";
2078
Brett Wilsonecb80982017-07-12 20:34:512079const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
2080const char kWebrtcStunOriginDescription[] =
2081 "When enabled, Stun messages generated by WebRTC will contain the Origin "
2082 "header.";
2083
Adam Riceed63fc02018-06-20 05:57:462084const char kWebSocketHandshakeReuseConnectionName[] =
2085 "Enable WebSocket connection reuse for authentication";
2086const char kWebSocketHandshakeReuseConnectionDescription[] =
2087 "Permits the WebSocket handshake to keep the connection open after an "
2088 "authentication failure. The connection may be used for further requests "
2089 "to send credentials. This is sometimes needed for Windows authentication.";
2090
Brett Wilsonecb80982017-07-12 20:34:512091const char kWebvrName[] = "WebVR";
2092const char kWebvrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012093 "Enables access to experimental Virtual Reality functionality via the "
2094 "WebVR 1.1 API. This feature will eventually be replaced by the WebXR "
2095 "Device API. Warning: Enabling this will also allow WebVR content on "
2096 "insecure origins to access these powerful APIs, and may pose a security "
Anna Offenwanger06dc6062018-04-12 07:56:222097 "risk. Controllers are exposed as Gamepads.";
Brett Wilsonecb80982017-07-12 20:34:512098
Brandon Jonese9d9b2b2017-12-11 22:20:112099const char kWebXrName[] = "WebXR Device API";
2100const char kWebXrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012101 "Enables access to experimental APIs to interact with Virtual Reality (VR) "
2102 "and Augmented Reality (AR) devices.";
2103
2104const char kWebXrGamepadSupportName[] = "WebXR Gamepad Support";
2105const char kWebXrGamepadSupportDescription[] =
2106 "Expose VR controllers as Gamepads for use with the WebXR Device API. Each "
Anna Offenwanger06dc6062018-04-12 07:56:222107 "XRInputSource will have a corresponding Gamepad instance. Requires that "
2108 "WebXR Device API is also enabled.";
Ian Vollick7aaccf92018-04-07 23:10:432109
2110const char kWebXrHitTestName[] = "WebXR Hit Test";
2111const char kWebXrHitTestDescription[] =
2112 "Enables access to raycasting against estimated XR scene geometry.";
Brandon Jonese9d9b2b2017-12-11 22:20:112113
Anna Maria57ecf7592018-01-12 03:10:402114const char kWebXrOrientationSensorDeviceName[] =
2115 "WebXR orientation sensor device";
2116const char kWebXrOrientationSensorDeviceDescription[] =
2117 "When no VR platform device is available, expose a non-presenting device "
2118 "based on the device's orientation sensors, if available.";
2119
Brett Wilsonecb80982017-07-12 20:34:512120const char kWifiCredentialSyncName[] = "WiFi credential sync";
2121const char kWifiCredentialSyncDescription[] =
2122 "Enables synchronizing WiFi network settings across devices. When enabled, "
2123 "the WiFi credential datatype is registered with Chrome Sync, and WiFi "
2124 "credentials are synchronized subject to user preferences. (See also, "
2125 "chrome://settings/syncSetup.)";
2126
2127const char kZeroCopyName[] = "Zero-copy rasterizer";
2128const char kZeroCopyDescription[] =
2129 "Raster threads write directly to GPU memory associated with tiles.";
vabr0215a8e2017-03-28 12:47:342130
Brett Wilsonff596952017-07-14 01:06:552131// Android ---------------------------------------------------------------------
2132
2133#if defined(OS_ANDROID)
2134
2135const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
2136const char kAiaFetchingDescription[] =
2137 "Enable intermediate certificate fetching when a server does not provide "
2138 "sufficient certificates to build a chain to a trusted root.";
2139
2140const char kAccessibilityTabSwitcherName[] = "Accessibility Tab Switcher";
2141const char kAccessibilityTabSwitcherDescription[] =
2142 "Enable the accessibility tab switcher for Android.";
2143
Wei-Yin Chen (陳威尹)80683452017-10-02 19:08:252144const char kAllowReaderForAccessibilityName[] = "Reader Mode for Accessibility";
2145const char kAllowReaderForAccessibilityDescription[] =
2146 "Allows Reader Mode on any articles, even if the page is mobile-friendly.";
2147
Brett Wilsonff596952017-07-14 01:06:552148const char kAndroidAutofillAccessibilityName[] = "Autofill Accessibility";
2149const char kAndroidAutofillAccessibilityDescription[] =
2150 "Enable accessibility for autofill popup.";
2151
Anita Woodruffbfcd1e52018-07-16 12:00:512152const char kAppNotificationStatusMessagingName[] =
2153 "App notification status messaging";
2154const char kAppNotificationStatusMessagingDescription[] =
2155 "Enables messaging in site permissions UI informing user when "
2156 "notifications are disabled for the entire app.";
2157
Brett Wilsonff596952017-07-14 01:06:552158const char kAndroidPaymentAppsName[] = "Android payment apps";
2159const char kAndroidPaymentAppsDescription[] =
2160 "Enable third party Android apps to integrate as payment apps";
2161
Miriam Gershenson8cf1397222018-01-23 22:48:292162const char kAsyncDnsName[] = "Async DNS resolver";
2163const char kAsyncDnsDescription[] = "Enables the built-in DNS resolver.";
2164
Brett Wilsonff596952017-07-14 01:06:552165const char kAutofillAccessoryViewName[] =
2166 "Autofill suggestions as keyboard accessory view";
2167const char kAutofillAccessoryViewDescription[] =
2168 "Shows Autofill suggestions on top of the keyboard rather than in a "
2169 "dropdown.";
2170
2171const char kBackgroundLoaderForDownloadsName[] =
2172 "Enables background downloading of pages.";
2173const char kBackgroundLoaderForDownloadsDescription[] =
2174 "Enables downloading pages in the background in case page is not yet "
2175 "loaded in current tab.";
2176
Tibor Goldschwendt11b3cf22018-07-04 15:32:442177const char kBackgroundTaskComponentUpdateName[] =
2178 "Background Task Component Updates";
2179const char kBackgroundTaskComponentUpdateDescription[] =
2180 "Schedule component updates with BackgroundTaskScheduler";
2181
Michael van Ouwerkerkbda4ad82018-06-19 14:08:002182const char kCCTModuleName[] = "Chrome Custom Tabs Module";
2183const char kCCTModuleDescription[] =
2184 "Enables a dynamically loaded module in Chrome Custom Tabs, on Android.";
2185
Matthew Jones1abcb132018-07-09 17:59:462186const char kChromeDuetName[] = "Chrome Duet";
2187const char kChromeDuetDescription[] =
2188 "Enables Chrome Duet, split toolbar Chrome Home, on Android.";
Theresa Wellingtonb9243b22017-12-01 16:23:052189
Brett Wilsonff596952017-07-14 01:06:552190const char kChromeHomeSwipeLogicName[] = "Chrome Home Swipe Logic";
2191const char kChromeHomeSwipeLogicDescription[] =
2192 "Various swipe logic options for Chrome Home for sheet expansion.";
2193const char kChromeHomeSwipeLogicRestrictArea[] = "Restrict swipable area";
Matthew Jonesbe384ee42017-10-31 19:57:152194const char kChromeHomeSwipeLogicVelocity[] = "Velocity suppression model";
Brett Wilsonff596952017-07-14 01:06:552195
Theresa8e44a7132018-06-15 17:40:592196const char kChromeModernAlternateCardLayoutName[] =
2197 "Chrome Modern Alternate Card Layout";
2198const char kChromeModernAlternateCardLayoutDescription[] =
2199 "Enable the alternate card layout for Chrome Modern Design.";
2200
Matthew Jones5b7f1d62018-01-23 00:37:252201const char kChromeModernDesignName[] = "Chrome Modern Design";
2202const char kChromeModernDesignDescription[] =
Matthew Jones213a0692018-02-05 20:07:452203 "Enable modern design for Chrome. Chrome must be restarted twice for this "
2204 "flag to take effect.";
Matthew Jones5b7f1d62018-01-23 00:37:252205
Donn Denman3e78c8d2018-06-28 22:51:422206const char kChromeModernFullRollName[] = "Chrome Modern Full-Roll";
2207const char kChromeModernFullRollDescription[] =
2208 "Enable modern full-roll animation for Chrome.";
2209
Megan Jablonskic61eb1b82017-10-02 18:03:062210const char kChromeMemexName[] = "Chrome Memex";
2211const char kChromeMemexDescription[] =
2212 "Enables Chrome Memex homepage on Android. Restricted to opted-in "
2213 "Googlers.";
2214
Sarath Singapati83aef1c2017-11-16 15:54:522215const char kClearOldBrowsingDataName[] = "Clear older browsing data";
2216const char kClearOldBrowsingDataDescription[] =
2217 "Enables clearing of browsing data which is older than a given time "
2218 "period.";
2219
Brett Wilsonff596952017-07-14 01:06:552220const char kContentSuggestionsCategoryOrderName[] =
2221 "Default content suggestions category order (e.g. on NTP)";
2222const char kContentSuggestionsCategoryOrderDescription[] =
2223 "Set default order of content suggestion categories (e.g. on the NTP).";
2224
2225const char kContentSuggestionsCategoryRankerName[] =
2226 "Content suggestions category ranker (e.g. on NTP)";
2227const char kContentSuggestionsCategoryRankerDescription[] =
2228 "Set category ranker to order categories of content suggestions (e.g. on "
2229 "the NTP).";
2230
Vitalii Iarkof52ff802017-09-14 12:34:242231const char kContentSuggestionsDebugLogName[] = "Content suggestions debug log";
2232const char kContentSuggestionsDebugLogDescription[] =
2233 "Enable content suggestions debug log accessible through "
2234 "snippets-internals.";
2235
Donn Denman8e58ead2017-11-04 01:44:012236const char kContextualSearchMlTapSuppressionName[] =
2237 "Contextual Search ML tap suppression";
2238const char kContextualSearchMlTapSuppressionDescription[] =
2239 "Enables tap gestures to be suppressed to improve CTR by applying machine "
Donn Denman59729812018-01-09 01:27:022240 "learning. The \"Contextual Search Ranker prediction\" flag must also be "
2241 "enabled!";
Brett Wilsonff596952017-07-14 01:06:552242
2243const char kContextualSearchName[] = "Contextual Search";
2244const char kContextualSearchDescription[] =
2245 "Whether or not Contextual Search is enabled.";
2246
Donn Denman59729812018-01-09 01:27:022247const char kContextualSearchRankerQueryName[] =
2248 "Contextual Search Ranker prediction";
2249const char kContextualSearchRankerQueryDescription[] =
2250 "Enables prediction of tap gestures using Assist-Ranker machine learning.";
2251
2252const char kContextualSearchSecondTapName[] =
2253 "Contextual Search second tap triggering";
2254const char kContextualSearchSecondTapDescription[] =
2255 "Enables triggering on a second tap gesture even when Ranker would "
2256 "normally suppress that tap.";
2257
Donn Denmane9b5b7fb2018-07-24 22:19:492258const char kContextualSearchUnityIntegrationName[] =
2259 "Contextual Search integration with Unified Consent";
2260const char kContextualSearchUnityIntegrationDescription[] =
2261 "Enables integration of Tap to Search with Unified Consent.";
2262
Cathy Li2fb32bf82018-06-06 18:55:402263const char kExploreSitesName[] = "Explore websites";
2264const char kExploreSitesDescription[] =
2265 "Enables portal from new tab page to explore websites.";
2266
Dmitry Skiba9c3efa72017-07-20 22:01:142267const char kDontPrefetchLibrariesName[] = "Don't Prefetch Libraries";
2268const char kDontPrefetchLibrariesDescription[] =
2269 "Don't prefetch libraries after loading.";
2270
Joy Ming5fd29ca62017-10-02 22:51:222271const char kDownloadsForegroundName[] = "Enable downloads foreground";
2272const char kDownloadsForegroundDescription[] =
2273 "Enable downloads as a foreground service for all versions of Android.";
2274
Joy Ming189b0cc2017-12-08 19:42:432275const char kDownloadsLocationChangeName[] = "Enable downloads location change";
2276const char kDownloadsLocationChangeDescription[] =
2277 "Enable changing default downloads storage location on Android.";
2278
Shakti Sahu32b2ee102018-05-17 00:04:462279const char kDownloadProgressInfoBarName[] = "Enable download progress infobar";
2280const char kDownloadProgressInfoBarDescription[] =
2281 "Enables an infobar notifying users about status of current downloads.";
2282
Shakti Sahu9ec8cfd2018-07-17 13:29:292283const char kDownloadHomeV2Name[] = "Enable download home v2";
2284const char kDownloadHomeV2Description[] =
2285 "Enables the new UI for download home";
2286
Brett Wilsonff596952017-07-14 01:06:552287const char kEnableAndroidPayIntegrationV1Name[] = "Enable Android Pay v1";
2288const char kEnableAndroidPayIntegrationV1Description[] =
2289 "Enable integration with Android Pay using the first version of the API";
2290
2291const char kEnableAndroidPayIntegrationV2Name[] = "Enable Android Pay v2";
2292const char kEnableAndroidPayIntegrationV2Description[] =
2293 "Enable integration with Android Pay using the second version of the API";
2294
Vitalii Iarkof4ed32d2017-09-26 13:15:532295const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
Brett Wilsonff596952017-07-14 01:06:552296const char kEnableAndroidSpellcheckerDescription[] =
2297 "Enables use of the Android spellchecker.";
Brett Wilsonff596952017-07-14 01:06:552298
Lei Tianbd5a3bf2018-02-28 19:01:162299const char kEnableCommandLineOnNonRootedName[] =
2300 "Enable command line on non-rooted devices";
2301const char kEnableCommandLineOnNoRootedDescription[] =
2302 "Enable reading command line file on non-rooted devices (DANGEROUS).";
2303
Vitalii Iarkof4ed32d2017-09-26 13:15:532304const char kEnableContentSuggestionsNewFaviconServerName[] =
2305 "Get favicons for content suggestions from a new server.";
2306const char kEnableContentSuggestionsNewFaviconServerDescription[] =
2307 "If enabled, the content suggestions (on the NTP) will get favicons from a "
2308 "new favicon server.";
Brett Wilsonff596952017-07-14 01:06:552309
2310const char kEnableContentSuggestionsSettingsName[] =
2311 "Show content suggestions settings.";
2312const char kEnableContentSuggestionsSettingsDescription[] =
2313 "If enabled, the content suggestions settings will be available from the "
2314 "main settings menu.";
2315
Vitalii Iarkof4ed32d2017-09-26 13:15:532316const char kEnableContentSuggestionsThumbnailDominantColorName[] =
2317 "Use content suggestions thumbnail dominant color.";
2318const char kEnableContentSuggestionsThumbnailDominantColorDescription[] =
2319 "Use content suggestions thumbnail dominant color as a placeholder before "
2320 "the real thumbnail is fetched (requires Chrome Home).";
2321
Brett Wilsonff596952017-07-14 01:06:552322const char kEnableCustomContextMenuName[] = "Enable custom context menu";
2323const char kEnableCustomContextMenuDescription[] =
2324 "Enables a new context menu when a link, image, or video is pressed within "
2325 "Chrome.";
2326
2327const char kEnableCustomFeedbackUiName[] = "Enable Custom Feedback UI";
2328const char kEnableCustomFeedbackUiDescription[] =
2329 "Enables a custom feedback UI when submitting feedback through Google "
2330 "Feedback. Works with Google Play Services v10.2+";
2331
2332const char kEnableDataReductionProxyMainMenuName[] =
Theresa Wellington141e4af2017-10-23 20:28:472333 "Enable Data Saver main menu item";
Brett Wilsonff596952017-07-14 01:06:552334const char kEnableDataReductionProxyMainMenuDescription[] =
Theresa Wellington141e4af2017-10-23 20:28:472335 "Enables the Data Saver menu item in the main menu";
Brett Wilsonff596952017-07-14 01:06:552336
Becca Hughes6d73bac542018-06-18 20:38:502337const char kEnableMediaControlsExpandGestureName[] =
2338 "Enable Media Controls Expand Gesture";
2339const char kEnableMediaControlsExpandGestureDescription[] =
2340 "Enables a gesture to be used on the media controls to extend the video "
2341 "into the Display Cutout area.";
2342
Brett Wilsonff596952017-07-14 01:06:552343const char kEnableOmniboxClipboardProviderName[] =
2344 "Omnibox clipboard URL suggestions";
2345const char kEnableOmniboxClipboardProviderDescription[] =
2346 "Provide a suggestion of the URL stored in the clipboard (if any) upon "
2347 "focus in the omnibox.";
2348
Becky Zhoua7f11d62018-02-01 16:02:532349const char kEnableNtpArticleSuggestionsExpandableHeaderName[] =
2350 "Show article suggestions expandable header on New Tab Page";
2351const char kEnableNtpArticleSuggestionsExpandableHeaderDescription[] =
2352 "If enabled, the article suggestions content on New Tab Page can be "
2353 "toggled shown or hidden by clicking the expandable header.";
2354
Brett Wilsonff596952017-07-14 01:06:552355const char kEnableNtpAssetDownloadSuggestionsName[] =
2356 "Show asset downloads on the New Tab page";
2357const char kEnableNtpAssetDownloadSuggestionsDescription[] =
2358 "If enabled, the list of content suggestions on the New Tab page will "
2359 "contain assets (e.g. books, pictures, audio) that the user downloaded for "
2360 "later use.";
2361
2362const char kEnableNtpBookmarkSuggestionsName[] =
2363 "Show recently visited bookmarks on the New Tab page";
2364const char kEnableNtpBookmarkSuggestionsDescription[] =
2365 "If enabled, the list of content suggestions on the New Tab page will "
2366 "contain recently visited bookmarks.";
2367
2368const char kEnableNtpForeignSessionsSuggestionsName[] =
2369 "Show recent foreign tabs on the New Tab page";
2370const char kEnableNtpForeignSessionsSuggestionsDescription[] =
2371 "If enabled, the list of content suggestions on the New Tab page will "
2372 "contain recent foreign tabs.";
2373
Brett Wilsonff596952017-07-14 01:06:552374const char kEnableNtpOfflinePageDownloadSuggestionsName[] =
2375 "Show offline page downloads on the New Tab page";
2376const char kEnableNtpOfflinePageDownloadSuggestionsDescription[] =
2377 "If enabled, the list of content suggestions on the New Tab page will "
2378 "contain pages that the user downloaded for later use.";
2379
2380const char kEnableNtpRemoteSuggestionsName[] =
2381 "Show server-side suggestions on the New Tab page";
2382const char kEnableNtpRemoteSuggestionsDescription[] =
2383 "If enabled, the list of content suggestions on the New Tab page will "
2384 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
2385 "allows to override the source used to retrieve these server-side "
2386 "suggestions.";
2387
2388const char kEnableNtpSnippetsVisibilityName[] =
2389 "Make New Tab Page Snippets more visible.";
2390const char kEnableNtpSnippetsVisibilityDescription[] =
2391 "If enabled, the NTP snippets will become more discoverable with a larger "
2392 "portion of the first card above the fold.";
2393
2394const char kEnableNtpSuggestionsNotificationsName[] =
2395 "Notify about new content suggestions available at the New Tab page";
2396const char kEnableNtpSuggestionsNotificationsDescription[] =
2397 "If enabled, notifications will inform about new content suggestions on "
2398 "the New Tab page.";
2399
Brett Wilsonff596952017-07-14 01:06:552400const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
2401const char kEnableOfflinePreviewsDescription[] =
2402 "Enable showing offline page previews on slow networks.";
2403
2404const char kEnableOskOverscrollName[] = "Enable OSK Overscroll";
2405const char kEnableOskOverscrollDescription[] =
2406 "Enable OSK overscroll support. With this flag on, the OSK will only "
2407 "resize the visual viewport.";
2408
2409const char kEnableSpecialLocaleName[] =
2410 "Enable custom logic for special locales.";
2411const char kEnableSpecialLocaleDescription[] =
2412 "Enable custom logic for special locales. In this mode, Chrome might "
2413 "behave differently in some locales.";
2414
Brett Wilsonff596952017-07-14 01:06:552415const char kEnableWebNfcName[] = "WebNFC";
2416const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
2417
gogeraldf3cbb422017-07-26 14:37:122418const char kEnableWebPaymentsMethodSectionOrderV2Name[] =
2419 "Enable Web Payments method section order V2.";
2420const char kEnableWebPaymentsMethodSectionOrderV2Description[] =
2421 "Enable this option to display payment method section above address "
2422 "section instead of below it.";
2423
Raymes Khoury582b43132017-12-12 23:54:302424const char kGrantNotificationsToDSEName[] =
2425 "Grant notifications to the Default Search Engine";
2426const char kGrantNotificationsToDSENameDescription[] =
2427 "Automatically grant the notifications permission to the Default Search "
2428 "Engine";
2429
Daniel Parke74fcf862018-03-27 18:05:452430const char kHomePageButtonName[] = "Force Enable Home Page Button";
Daniel Park990d0992018-05-18 22:12:512431const char kHomePageButtonDescription[] = "Displays a home button if enabled.";
Daniel Parke74fcf862018-03-27 18:05:452432
Yafei Duanbb7663f32018-07-17 01:33:152433const char kHomepageTileName[] =
2434 "Enable Homepage tile shown in Suggested Tiles";
2435const char kHomepageTileDescription[] =
2436 "When NTPButton is enabled, the first tile of the Suggested Tiles will be "
2437 "used for homepage. It will not have an effect when NTPButton is disabled.";
2438
Jian Li4b252642018-07-23 19:49:072439const char kIncognitoStringsName[] = "Alternate incognito strings";
2440const char kIncognitoStringsDescription[] =
2441 "Show alternate incognito strings if enabled.";
2442
Theresa920e0ed2018-03-07 18:12:442443const char kInterestFeedContentSuggestionsDescription[] =
Yafei Duanbb7663f32018-07-17 01:33:152444 "Use the interest feed to render content suggestions. Currently "
2445 "content "
Theresa920e0ed2018-03-07 18:12:442446 "suggestions are shown on the New Tab Page.";
2447const char kInterestFeedContentSuggestionsName[] =
2448 "Interest Feed Content Suggestions";
2449
Brett Wilsonff596952017-07-14 01:06:552450const char kKeepPrefetchedContentSuggestionsName[] =
2451 "Keep prefetched content suggestions";
2452const char kKeepPrefetchedContentSuggestionsDescription[] =
2453 "If enabled, some of prefetched content suggestions are not replaced by "
2454 "the new fetched suggestions.";
2455
Leo Zhang051b75482017-12-20 03:28:302456const char kLanguagesPreferenceName[] = "Language Settings";
2457const char kLanguagesPreferenceDescription[] =
2458 "Enable this option for Language Settings feature on Android.";
2459
Charlie Ma8c2846e2018-07-27 18:44:392460const char kLongPressBackForHistoryName[] =
2461 "Long Press Back Button for History";
2462const char kLongPressBackForHistoryDescription[] =
2463 "Long press system back button to show navigation history if enabled";
2464
Charlie Ma85b22bdb2018-08-01 03:50:452465const char kLongPressBackNewDesignName[] = "Long Press Back New Design";
2466const char kLongPressBackNewDesignDescription[] =
2467 "Long press system back button to show material design refreshed navigation"
2468 " popup if enabled";
2469
Brett Wilsonff596952017-07-14 01:06:552470const char kLsdPermissionPromptName[] =
2471 "Location Settings Dialog Permission Prompt";
2472const char kLsdPermissionPromptDescription[] =
2473 "Whether to use the Google Play Services Location Settings Dialog "
2474 "permission dialog.";
2475
Amirhossein Simjour97b4154f2018-02-20 03:49:592476const char kModalPermissionDialogViewName[] = "Modal Permission Dialog";
2477const char kModalPermissionDialogViewDescription[] =
2478 "Enable this option to use ModalDialogManager for permission Dialogs.";
2479
Brett Wilsonff596952017-07-14 01:06:552480const char kMediaScreenCaptureName[] = "Experimental ScreenCapture.";
2481const char kMediaScreenCaptureDescription[] =
2482 "Enable this option for experimental ScreenCapture feature on Android.";
2483
2484const char kModalPermissionPromptsName[] = "Modal Permission Prompts";
2485const char kModalPermissionPromptsDescription[] =
2486 "Whether to use permission dialogs in place of permission infobars.";
2487
Finnur Thorarinssonc1488fc62018-07-09 19:21:572488const char kNewContactsPickerName[] = "Enable new contacts picker";
2489const char kNewContactsPickerDescription[] =
2490 "Activates the new picker for selecting contacts.";
2491
Dan Harrington541db9e2018-07-30 18:36:302492const char kNewNetErrorPageUIName[] = "Enable new UI for net-error page";
2493const char kNewNetErrorPageUIDescription[] =
2494 "Selects which new UI experience to show on the net-error (Dino) page";
2495
Brett Wilsonff596952017-07-14 01:06:552496const char kNewPhotoPickerName[] = "Enable new Photopicker";
2497const char kNewPhotoPickerDescription[] =
2498 "Activates the new picker for selecting photos.";
2499
2500const char kNoCreditCardAbort[] = "No Credit Card Abort";
2501const char kNoCreditCardAbortDescription[] =
2502 "Whether or not the No Credit Card Abort is enabled.";
2503
Daniel Park990d0992018-05-18 22:12:512504const char kNtpButtonName[] = "Enable NTP Button";
2505const char kNtpButtonDescription[] =
2506 "Displays a New Tab Page button in the toolbar if enabled.";
2507
Michael van Ouwerkerkcdbbe332017-11-24 15:07:062508const char kNtpModernLayoutName[] = "Modern NTP layout";
2509const char kNtpModernLayoutDescription[] =
2510 "Show a modern layout on the New Tab Page.";
2511
Brett Wilsonff596952017-07-14 01:06:552512const char kNtpGoogleGInOmniboxName[] = "Google G in New Tab Page omnibox";
2513const char kNtpGoogleGInOmniboxDescription[] =
2514 "Show a Google G in the omnibox on the New Tab Page.";
2515
Brett Wilsonff596952017-07-14 01:06:552516const char kOfflineBookmarksName[] = "Enable offline bookmarks";
2517const char kOfflineBookmarksDescription[] =
2518 "Enable saving bookmarked pages for offline viewing.";
2519
Jian Li1413ebf2018-06-14 20:46:322520const char kOfflineIndicatorName[] = "Enable offline indicator";
2521const char kOfflineIndicatorDescription[] =
2522 "Enable showing offline indicator while offline.";
2523
Brett Wilsonff596952017-07-14 01:06:552524const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
2525const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
2526
2527const char kOfflinePagesCtV2Name[] = "Enable Offline Pages CT V2 features.";
2528const char kOfflinePagesCtV2Description[] =
2529 "V2 features include attributing pages to the app that initiated the "
2530 "custom tabs, and being able to query for pages by page attribution.";
2531
Cathy Li7311d792018-04-05 00:34:162532const char kOfflinePagesCTSuppressNotificationsName[] =
2533 "Disable download complete notification for whitelisted CCT apps.";
2534const char kOfflinePagesCTSuppressNotificationsDescription[] =
2535 "Disable download complete notification for page downloads originating "
2536 "from a CCT app whitelisted to show their own download complete "
2537 "notification.";
2538
Candice Sy74fa7a352018-03-30 23:46:492539const char kOfflinePagesDescriptiveFailStatusName[] =
2540 "Enables descriptive failed download status text.";
2541const char kOfflinePagesDescriptiveFailStatusDescription[] =
2542 "Enables failed download status text in notifications and Downloads Home "
2543 "to state the reason the request failed if the failure is actionable.";
2544
2545const char kOfflinePagesDescriptivePendingStatusName[] =
2546 "Enables descriptive pending download status text.";
2547const char kOfflinePagesDescriptivePendingStatusDescription[] =
2548 "Enables pending download status text in notifications and Downloads Home "
2549 "to state the reason the request is pending.";
2550
2551const char kOfflinePagesInDownloadHomeOpenInCctName[] =
2552 "Enables offline pages in the downloads home to be opened in CCT.";
2553const char kOfflinePagesInDownloadHomeOpenInCctDescription[] =
2554 "When enabled offline pages launched from the Downloads Home will be "
2555 "opened in Chrome Custom Tabs (CCT) instead of regular tabs.";
2556
Carlos Knippschild09272ecd2017-12-09 03:29:362557const char kOfflinePagesLimitlessPrefetchingName[] =
2558 "Removes resource usage limits for the prefetching of offline pages.";
2559const char kOfflinePagesLimitlessPrefetchingDescription[] =
2560 "Allows the prefetching of suggested offline pages to ignore resource "
2561 "usage limits. This allows it to completely ignore data usage limitations "
2562 "and allows downloads to happen with any kind of connection.";
2563
Brett Wilsonff596952017-07-14 01:06:552564const char kOfflinePagesLoadSignalCollectingName[] =
2565 "Enables collecting load timing data for offline page snapshots.";
2566const char kOfflinePagesLoadSignalCollectingDescription[] =
2567 "Enables loading completeness data collection while writing an offline "
2568 "page. This data is collected in the snapshotted offline page to allow "
2569 "data analysis to improve deciding when to make the offline snapshot.";
2570
2571const char kOfflinePagesPrefetchingName[] =
2572 "Enables suggested offline pages to be prefetched.";
2573const char kOfflinePagesPrefetchingDescription[] =
2574 "Enables suggested offline pages to be prefetched, so useful content is "
2575 "available while offline.";
2576
Pete Williamson7845dff2017-09-20 11:06:192577const char kOfflinePagesResourceBasedSnapshotName[] =
2578 "Enables offline page snapshots to be based on percentage of page loaded.";
2579const char kOfflinePagesResourceBasedSnapshotDescription[] =
2580 "Enables offline page snapshots to use a resource percentage based "
2581 "approach for determining when the page is loaded as opposed to a time "
2582 "based approach";
2583
Collin Baker17f92a52017-07-19 21:41:252584const char kOfflinePagesRenovationsName[] = "Enables offline page renovations.";
2585const char kOfflinePagesRenovationsDescription[] =
2586 "Enables offline page renovations which correct issues with dynamic "
2587 "content that occur when offlining pages that use JavaScript.";
2588
Brett Wilsonff596952017-07-14 01:06:552589const char kOfflinePagesSharingName[] = "Enables offline pages to be shared.";
2590const char kOfflinePagesSharingDescription[] =
2591 "Enables the saved offline pages to be shared via other applications.";
2592
Yafei Duan36b4b5b2018-08-07 00:40:032593const char kOfflinePagesLivePageSharingName[] =
2594 "Enables live page sharing of offline pages";
2595const char kOfflinePagesLivePageSharingDescription[] =
2596 "Enables to share current loaded page as offline page by saving as MHTML "
2597 "first.";
2598
Cathy Lie0d88762018-04-12 08:03:012599const char kOfflinePagesShowAlternateDinoPageName[] =
2600 "Enable alternate dino page with more user capabilities.";
2601const char kOfflinePagesShowAlternateDinoPageDescription[] =
2602 "Enables the dino page to show more buttons and offer existing offline "
2603 "content.";
2604
Brett Wilsonff596952017-07-14 01:06:552605const char kOfflinePagesSvelteConcurrentLoadingName[] =
2606 "Enables concurrent background loading on svelte.";
2607const char kOfflinePagesSvelteConcurrentLoadingDescription[] =
2608 "Enables concurrent background loading (or downloading) of pages on "
2609 "Android svelte (512MB RAM) devices. Otherwise, background loading will "
2610 "happen when the svelte device is idle.";
2611
2612const char kOffliningRecentPagesName[] =
2613 "Enable offlining of recently visited pages";
2614const char kOffliningRecentPagesDescription[] =
2615 "Enable storing recently visited pages locally for offline use. Requires "
2616 "Offline Pages to be enabled.";
2617
Lei Zhang2eca9082017-10-17 20:42:502618const char kPayWithGoogleV1Name[] = "Pay with Google v1";
2619const char kPayWithGoogleV1Description[] =
Brett Wilsonff596952017-07-14 01:06:552620 "Enable Pay with Google integration into Web Payments with API version "
2621 "'1'.";
2622
Matthew Jonesa88b95852017-11-08 23:13:502623const char kProgressBarThrottleName[] = "Android progress update throttling.";
2624const char kProgressBarThrottleDescription[] =
2625 "Limit the maximum progress update to make progress appear smoother.";
2626
Brett Wilsonff596952017-07-14 01:06:552627const char kPullToRefreshEffectName[] = "The pull-to-refresh effect";
2628const char kPullToRefreshEffectDescription[] =
2629 "Page reloads triggered by vertically overscrolling content.";
2630
Piotr Swigon7c296ef2017-08-29 04:32:002631const char kPwaImprovedSplashScreenName[] =
2632 "Improved Splash Screen for standalone PWAs";
2633const char kPwaImprovedSplashScreenDescription[] =
2634 "Enables the Improved Splash Screen UX for standalone PWAs based on new "
2635 "Web App Manifest attributes";
Piotr Swigon9f630b32017-07-26 09:42:492636const char kPwaPersistentNotificationName[] =
2637 "Persistent notification in standalone PWA";
2638const char kPwaPersistentNotificationDescription[] =
2639 "Enables a persistent Android notification for standalone PWAs";
2640
Brett Wilsonff596952017-07-14 01:06:552641const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
2642const char kReaderModeHeuristicsDescription[] =
2643 "Determines what pages the Reader Mode infobar is shown on.";
2644const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
2645const char kReaderModeHeuristicsAdaboost[] = "Non-mobile-friendly articles";
2646const char kReaderModeHeuristicsAllArticles[] = "All articles";
2647const char kReaderModeHeuristicsAlwaysOff[] = "Never";
2648const char kReaderModeHeuristicsAlwaysOn[] = "Always";
2649
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:182650const char kReaderModeInCCTName[] = "Reader Mode in CCT";
2651const char kReaderModeInCCTDescription[] =
2652 "Open Reader Mode in Chrome Custom Tabs.";
2653
Brett Wilsonff596952017-07-14 01:06:552654const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2655const char kSetMarketUrlForTestingDescription[] =
2656 "When enabled, sets the market URL for use in testing the update menu "
2657 "item.";
2658
2659const char kSpannableInlineAutocompleteName[] = "Spannable inline autocomplete";
2660const char kSpannableInlineAutocompleteDescription[] =
2661 "A new type of inline autocomplete for the omnibox that works with "
2662 "keyboards that compose text.";
2663
Theresaeea05a12018-05-09 21:01:592664const char kSimplifiedNtpName[] = "Simplified NTP";
2665const char kSimplifiedNtpDescription[] = "Show a simplified New Tab Page.";
2666
2667const char kSiteExplorationUiName[] = "Site Exploration UI";
2668const char kSiteExplorationUiDescription[] =
2669 "Show site suggestions in the Exploration UI";
2670
Brett Wilsonff596952017-07-14 01:06:552671const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2672const char kUpdateMenuBadgeDescription[] =
2673 "When enabled, an update badge will be shown on the app menu button.";
2674
2675const char kUpdateMenuItemCustomSummaryDescription[] =
2676 "When this flag and the force show update menu item flag are enabled, a "
2677 "custom summary string will be displayed below the update menu item.";
2678const char kUpdateMenuItemCustomSummaryName[] =
2679 "Update menu item custom summary";
2680
2681const char kUpdateMenuItemName[] = "Force show update menu item";
2682const char kUpdateMenuItemDescription[] =
2683 R"*(When enabled, an "Update Chrome" item will be shown in the app )*"
2684 R"*(menu.)*";
2685
Amirhossein Simjourd78bbcf2018-02-02 16:23:392686const char kVrBrowsingNativeAndroidUiName[] = "VR browsing native android ui";
2687const char kVrBrowsingNativeAndroidUiDescription[] =
2688 "Enable Android UI elements in VR.";
2689
Tibor Goldschwendt4cdea8d2018-05-10 15:46:462690const char kVrBrowsingTabsViewName[] = "VR browsing tabs view";
2691const char kVrBrowsingTabsViewDescription[] =
2692 "Enable tab overview (tab switcher) in VR.";
2693
Marc Treib93af46a2017-08-23 13:30:002694const char kThirdPartyDoodlesName[] =
2695 "Enable Doodles for third-party search engines";
2696const char kThirdPartyDoodlesDescription[] =
2697 "Enables fetching and displaying Doodles on the NTP for third-party search "
2698 "engines.";
2699
Klaus Weidneraaf697f2018-01-18 20:07:362700const char kWebXrRenderPathName[] = "WebXR presentation render path";
2701const char kWebXrRenderPathDescription[] =
2702 "Render path to use for WebXR presentation (including WebVR)";
2703const char kWebXrRenderPathChoiceClientWaitDescription[] =
2704 "ClientWait (Baseline)";
2705const char kWebXrRenderPathChoiceGpuFenceDescription[] =
2706 "GpuFence (Android N+)";
Klaus Weidnerd25dff42018-04-12 06:56:072707const char kWebXrRenderPathChoiceSharedBufferDescription[] =
2708 "SharedBuffer (Android O+)";
Klaus Weidneraaf697f2018-01-18 20:07:362709
Brett Wilson7b44537e2017-08-18 01:38:282710// Non-Android -----------------------------------------------------------------
Brett Wilsonff596952017-07-14 01:06:552711
Brett Wilson7b44537e2017-08-18 01:38:282712#else // !defined(OS_ANDROID)
brettw5f9c1642017-05-14 17:12:482713
Brett Wilson7b44537e2017-08-18 01:38:282714const char kAccountConsistencyName[] =
2715 "Identity consistency between browser and cookie jar";
2716const char kAccountConsistencyDescription[] =
2717 "When enabled, the browser manages signing in and out of Google accounts.";
2718const char kAccountConsistencyChoiceMirror[] = "Mirror";
2719const char kAccountConsistencyChoiceDice[] = "Dice";
vabr0215a8e2017-03-28 12:47:342720
Chris Pickel3a227ae62017-08-24 10:47:262721const char kDoodlesOnLocalNtpName[] = "Enable doodles on the local NTP";
2722const char kDoodlesOnLocalNtpDescription[] =
2723 "Show doodles on the local New Tab page if Google is the default search "
2724 "engine.";
2725
mlamouriff56c092017-05-11 15:31:392726const char kEnableAudioFocusName[] = "Manage audio focus across tabs";
mlamouriff56c092017-05-11 15:31:392727const char kEnableAudioFocusDescription[] =
vabr0215a8e2017-03-28 12:47:342728 "Manage audio focus across tabs to improve the audio mixing.";
mlamouriff56c092017-05-11 15:31:392729const char kEnableAudioFocusDisabled[] = "Disabled";
mlamouriff56c092017-05-11 15:31:392730const char kEnableAudioFocusEnabled[] = "Enabled";
mlamouriff56c092017-05-11 15:31:392731const char kEnableAudioFocusEnabledDuckFlash[] =
vabr0215a8e2017-03-28 12:47:342732 "Enabled (Flash lowers volume when interrupted by other sound, "
2733 "experimental)";
2734
Sebastien Marchandd33f7dc2018-06-22 22:07:062735const char kInfiniteSessionRestoreName[] = "Infinite Session Restore";
2736const char kInfiniteSessionRestoreDescription[] =
2737 "Reduces the number of tabs being loaded simultaneously during session "
2738 "restore, to improve responsiveness of the foreground tab. This requires "
2739 "#enable-page-almost-idle.";
2740
Brett Wilson7b44537e2017-08-18 01:38:282741const char kEnableNewAppMenuIconName[] = "Enable the New App Menu Icon";
2742const char kEnableNewAppMenuIconDescription[] =
2743 "Use the new app menu icon with update notification animations.";
vabr0215a8e2017-03-28 12:47:342744
Sebastien Marchandd33f7dc2018-06-22 22:07:062745const char kEnableWebAuthenticationCtap2SupportName[] =
2746 "Enable Web Authentication API support for CTAP2 security keys";
2747const char kEnableWebAuthenticationCtap2SupportDescription[] =
Kim Paulhamus92431372018-07-20 02:25:472748 "Enable CTAP2 security keys for the Web Authentication API.";
Sebastien Marchandd33f7dc2018-06-22 22:07:062749
2750const char kEnableWebAuthenticationTestingAPIName[] =
2751 "Web Authentication Testing API";
2752const char kEnableWebAuthenticationTestingAPIDescription[] =
2753 "Enable Web Authentication Testing API support, which disconnects the API "
2754 "implementation from the real world, and allows configuring virtual "
2755 "authenticator devices for testing";
2756
Dave Schuyler598a4a42018-01-04 02:15:102757const char kOmniboxRichEntitySuggestionsName[] =
2758 "Omnibox rich entity suggestions";
2759const char kOmniboxRichEntitySuggestionsDescription[] =
2760 "Display entity suggestions using images and an enhanced layout; showing "
Justin Donnellye7926092018-06-18 14:57:212761 "more context and descriptive text about the entity. Has no effect unless "
2762 "either the #upcoming-ui-features flag is Enabled or the #top-chrome-md "
2763 "flag is set to Refresh or Touchable Refresh.";
Dave Schuyler598a4a42018-01-04 02:15:102764
Dave Schuyler616273d2018-04-19 03:12:522765const char kOmniboxNewAnswerLayoutName[] = "Omnibox new answer layout";
2766const char kOmniboxNewAnswerLayoutDescription[] =
Justin Donnellye7926092018-06-18 14:57:212767 "Display answers using an enhanced layout with larger images. Has no "
2768 "effect unless either the #upcoming-ui-features flag is Enabled or the "
2769 "#top-chrome-md flag is set to Refresh or Touchable Refresh.";
Dave Schuyler616273d2018-04-19 03:12:522770
Orin Jaworski04c08b42018-07-11 02:39:562771const char kOmniboxReverseAnswersName[] = "Omnibox reverse answers";
2772const char kOmniboxReverseAnswersDescription[] =
2773 "Display answers with rows reversed (swapped); except definitions. Has no "
2774 "effect unless either the #upcoming-ui-features flag is Enabled or the "
2775 "#top-chrome-md flag is set to Refresh or Touchable Refresh.";
2776
Kevin Bailey898669972017-11-06 15:34:492777const char kOmniboxTabSwitchSuggestionsName[] =
2778 "Omnibox tab switch suggestions";
2779const char kOmniboxTabSwitchSuggestionsDescription[] =
Justin Donnellye7926092018-06-18 14:57:212780 "Enable suggestions for switching to open tabs within the Omnibox. "
2781 "Has no effect unless either the #upcoming-ui-features flag is Enabled or "
2782 "the #top-chrome-md flag is set to Refresh or Touchable Refresh.";
Kevin Bailey898669972017-11-06 15:34:492783
krbcc621412017-06-01 19:40:282784const char kOmniboxTailSuggestionsName[] = "Omnibox tail suggestions";
2785const char kOmniboxTailSuggestionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192786 "Enable receiving tail suggestions, a type of search suggestion based on "
2787 "the last few words in the query, for the Omnibox.";
vabr0215a8e2017-03-28 12:47:342788
Brett Wilson7b44537e2017-08-18 01:38:282789const char kOneGoogleBarOnLocalNtpName[] =
2790 "Enable the OneGoogleBar on the local NTP";
2791const char kOneGoogleBarOnLocalNtpDescription[] =
2792 "Show a OneGoogleBar on the local New Tab page if Google is the default "
2793 "search engine.";
2794
Sebastien Marchandd33f7dc2018-06-22 22:07:062795const char kPageAlmostIdleName[] = "Page Almost Idle";
2796const char kPageAlmostIdleDescription[] =
2797 "Make session restore use a definition of loading that waits for CPU and "
2798 "network quiescence.";
2799
2800const char kProactiveTabFreezeAndDiscardName[] =
2801 "Proactive Tab Freeze and Discard";
2802const char kProactiveTabFreezeAndDiscardDescription[] =
2803 "Enables proactive tab freezing and discarding. This requires "
2804 "#enable-page-almost-idle.";
2805
2806const char kSiteCharacteristicsDatabaseName[] = "Site Characteristics database";
2807const char kSiteCharacteristicsDatabaseDescription[] =
2808 "Records usage of some features in a database while a tab is in background "
2809 "(title/favicon update, audio playback or usage of non-persistent "
2810 "notifications).";
2811
Brett Wilson7b44537e2017-08-18 01:38:282812const char kUseGoogleLocalNtpName[] = "Enable using the Google local NTP";
2813const char kUseGoogleLocalNtpDescription[] =
2814 "Use the local New Tab page if Google is the default search engine.";
spqchan064a8112017-04-18 16:46:322815
Brett Wilson7b44537e2017-08-18 01:38:282816const char kVoiceSearchOnLocalNtpName[] =
2817 "Enable Voice Search on the local NTP";
2818const char kVoiceSearchOnLocalNtpDescription[] =
2819 "Show a microphone for voice search on the local New Tab page "
2820 "if Google is the default search engine.";
2821
2822#if defined(GOOGLE_CHROME_BUILD)
2823
2824const char kGoogleBrandedContextMenuName[] =
2825 "Google branding in the context menu";
2826const char kGoogleBrandedContextMenuDescription[] =
2827 "Shows a Google icon next to context menu items powered by Google "
2828 "services.";
2829
2830#endif // !defined(GOOGLE_CHROME_BUILD)
2831
2832#endif // !defined(OS_ANDROID)
2833
2834// Windows ---------------------------------------------------------------------
2835
2836#if defined(OS_WIN)
2837
2838const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
2839const char kCloudPrintXpsDescription[] =
2840 "XPS enables advanced options for classic printers connected to the Cloud "
2841 "Print with Chrome. Printers must be re-connected after changing this "
2842 "flag.";
2843
2844const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
2845const char kDisablePostscriptPrintingDescription[] =
2846 "Disables PostScript generation when printing to PostScript capable "
2847 "printers, and uses EMF generation in its place.";
2848
2849const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
2850const char kEnableAppcontainerDescription[] =
2851 "Enables the use of an AppContainer on sandboxed processes to improve "
2852 "security.";
2853
Brett Wilson7b44537e2017-08-18 01:38:282854const char kEnableDesktopIosPromotionsName[] = "Desktop to iOS promotions.";
2855const char kEnableDesktopIosPromotionsDescription[] =
2856 "Enable Desktop to iOS promotions, and allow users to see them if they are "
2857 "eligible.";
2858
James Forshawfd0ce342018-02-14 09:55:392859const char kEnableGpuAppcontainerName[] = "Enable GPU AppContainer Lockdown.";
2860const char kEnableGpuAppcontainerDescription[] =
2861 "Enables the use of an AppContainer for the GPU sandboxed processes to "
2862 "improve security.";
2863
Brett Wilson7b44537e2017-08-18 01:38:282864const char kGdiTextPrinting[] = "GDI Text Printing";
2865const char kGdiTextPrintingDescription[] =
2866 "Use GDI to print text as simply text";
2867
Henrik Grunell67e56ef2018-04-10 14:04:092868const char kIncreaseInputAudioBufferSize[] = "Increase input audio buffer size";
2869const char kIncreaseInputAudioBufferSizeDescription[] =
2870 "Increases the input audio endpoint buffer to 100 ms.";
2871
Brett Wilson7b44537e2017-08-18 01:38:282872const char kTraceExportEventsToEtwName[] =
2873 "Enable exporting of tracing events to ETW.";
2874const char kTraceExportEventsToEtwDesription[] =
2875 "If enabled, trace events will be exported to the Event Tracing for "
2876 "Windows (ETW) and can then be captured by tools such as UIForETW or "
2877 "Xperf.";
2878
2879const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2880const char kUseWinrtMidiApiDescription[] =
2881 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
2882 "later).";
2883
2884const char kWindows10CustomTitlebarName[] = "Custom-drawn Windows 10 Titlebar";
2885const char kWindows10CustomTitlebarDescription[] =
2886 "If enabled, Chrome will draw the titlebar and caption buttons instead of "
2887 "deferring to Windows.";
2888
2889#endif // defined(OS_WIN)
2890
2891// Mac -------------------------------------------------------------------------
2892
2893#if defined(OS_MACOSX)
2894
Brett Wilson7b44537e2017-08-18 01:38:282895const char kAppWindowCyclingName[] = "Custom Window Cycling for Chrome Apps.";
2896const char kAppWindowCyclingDescription[] =
2897 "Changes the behavior of Cmd+` when a Chrome App becomes active. When "
2898 "enabled, Chrome Apps will not be cycled when Cmd+` is pressed from a "
2899 "browser window, and browser windows will not be cycled when a Chrome App "
2900 "is active.";
2901
Brett Wilson7b44537e2017-08-18 01:38:282902const char kFullscreenToolbarRevealName[] =
2903 "Enables the toolbar in fullscreen to reveal itself.";
2904const char kFullscreenToolbarRevealDescription[] =
2905 "Reveal the toolbar in fullscreen for a short period when the tab strip "
2906 "has changed.";
2907
2908const char kContentFullscreenName[] = "Improved Content Fullscreen";
2909const char kContentFullscreenDescription[] =
2910 "Fullscreen content window detaches from main browser window and goes to "
2911 "a new space without moving or changing the original browser window.";
2912
Lei Zhang2eca9082017-10-17 20:42:502913const char kDialogTouchBarName[] = "Dialog Touch Bar";
2914const char kDialogTouchBarDescription[] =
Brett Wilson7b44537e2017-08-18 01:38:282915 "Shows Dialog buttons on the Touch Bar.";
2916
Martin Kreichgauer1ca416d2018-07-11 00:43:192917const char kEnableWebAuthenticationTouchIdName[] =
2918 "Web Authentication API Touch ID support";
2919const char kEnableWebAuthenticationTouchIdDescription[] =
2920 "Enables a built-in Touch ID authenticator for the Web Authentication API.";
2921
Brett Wilson7b44537e2017-08-18 01:38:282922const char kHostedAppsInWindowsName[] =
2923 "Allow hosted apps to be opened in windows";
2924const char kHostedAppsInWindowsDescription[] =
2925 "Allows hosted apps to be opened in windows instead of being limited to "
2926 "tabs.";
2927
Lei Zhang2eca9082017-10-17 20:42:502928const char kMacRTLName[] = "Enable RTL";
2929const char kMacRTLDescription[] = "Mirrors the UI for RTL language users";
Brett Wilson7b44537e2017-08-18 01:38:282930
Lei Zhang2eca9082017-10-17 20:42:502931const char kMacTouchBarName[] = "Hardware Touch Bar";
2932const char kMacTouchBarDescription[] = "Control the use of the Touch Bar.";
Brett Wilson7b44537e2017-08-18 01:38:282933
2934const char kMacV2SandboxName[] = "Mac V2 Sandbox";
2935const char kMacV2SandboxDescription[] =
2936 "Eliminates the unsandboxed warmup phase and sandboxes processes for their "
2937 "entire life cycle.";
2938
2939const char kMacViewsNativeAppWindowsName[] = "Toolkit-Views App Windows.";
2940const char kMacViewsNativeAppWindowsDescription[] =
2941 "Controls whether to use Toolkit-Views based Chrome App windows.";
2942
2943const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
2944const char kMacViewsTaskManagerDescription[] =
2945 "Controls whether to use the Toolkit-Views based Task Manager.";
2946
2947const char kTabDetachingInFullscreenName[] =
2948 "Allow tab detaching in fullscreen";
2949const char kTabDetachingInFullscreenDescription[] =
2950 "Allow tabs to detach from the tabstrip when in fullscreen mode on Mac.";
2951
2952const char kTabStripKeyboardFocusName[] = "Tab Strip Keyboard Focus";
2953const char kTabStripKeyboardFocusDescription[] =
2954 "Enable keyboard focus for the tabs in the tab strip.";
2955
Tessa Nijssen4db9799e2018-08-06 21:04:382956const char kTextSuggestionsTouchBarName[] = "Text Suggestions Touch Bar";
2957const char kTextSuggestionsTouchBarDescription[] =
2958 "Enable text suggestions touch bar for textfields.";
2959
Brett Wilson7b44537e2017-08-18 01:38:282960#endif
2961
2962// Chrome OS -------------------------------------------------------------------
vabr0215a8e2017-03-28 12:47:342963
2964#if defined(OS_CHROMEOS)
2965
Brett Wilson7b44537e2017-08-18 01:38:282966const char kAcceleratedMjpegDecodeName[] =
2967 "Hardware-accelerated mjpeg decode for captured frame";
2968const char kAcceleratedMjpegDecodeDescription[] =
2969 "Enable hardware-accelerated mjpeg decode for captured frame where "
2970 "available.";
vabr0215a8e2017-03-28 12:47:342971
Brett Wilson7b44537e2017-08-18 01:38:282972const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click";
2973const char kAllowTouchpadThreeFingerClickDescription[] =
2974 "Enables touchpad three-finger-click as middle button.";
vabr0215a8e2017-03-28 12:47:342975
Bruno Kim Medeiros Cesarb98fe1d82018-06-06 18:11:522976const char kArcAvailableForChildName[] = "Allow ARC for child accounts";
2977const char kArcAvailableForChildDescription[] =
2978 "Allow child accounts to start Android apps.";
2979
Brett Wilson7b44537e2017-08-18 01:38:282980const char kArcBootCompleted[] = "Load Android apps automatically";
2981const char kArcBootCompletedDescription[] =
2982 "Allow Android apps to start automatically after signing in.";
vabr0215a8e2017-03-28 12:47:342983
Luum Habtemariamdaa8fd22018-06-25 22:39:432984const char kArcCupsApiName[] = "ARC CUPS API";
2985const char kArcCupsApiDescription[] =
2986 "Enables support of libcups APIs from ARC";
2987
Yuichiro Hanada0b63f062018-07-12 02:18:332988const char kArcInputMethodName[] = "Enable ARC input methods.";
2989const char kArcInputMethodDescription[] = "Enable ARC input methods.";
2990
Lev Rumyantsev7a8544312017-08-18 19:26:512991const char kArcNativeBridgeExperimentName[] =
2992 "Enable native bridge experiment for ARC";
2993const char kArcNativeBridgeExperimentDescription[] =
2994 "Enables experimental native bridge feature.";
2995
lgchengecd1c1a62018-01-09 02:59:462996const char kArcUsbHostName[] = "Enable ARC USB host integration";
2997const char kArcUsbHostDescription[] =
2998 "Allow Android apps to use USB host feature on ChromeOS devices.";
2999
Kevin Cernekeeb7f96a52017-10-25 17:40:183000const char kArcVpnName[] = "Enable ARC VPN integration";
3001const char kArcVpnDescription[] =
3002 "Allow Android VPN clients to tunnel Chrome traffic.";
3003
Qiang Xu045aff222018-05-21 23:21:013004const char kAshDisableLoginDimAndBlurName[] =
3005 "Disable dimming and blur on login screen.";
3006const char kAshDisableLoginDimAndBlurDescription[] =
3007 "Disable dimming and blur on login screen.";
3008
3009const char kAshDisableSmoothScreenRotationName[] =
3010 "Disable smooth rotation animations.";
3011const char kAshDisableSmoothScreenRotationDescription[] =
3012 "Disable smooth rotation animations.";
3013
3014const char kAshEnableDisplayMoveWindowAccelsName[] =
3015 "Enable shortcuts for moving window between displays.";
3016const char kAshEnableDisplayMoveWindowAccelsDescription[] =
3017 "Enable shortcuts for moving window between displays.";
3018
3019const char kAshEnableKeyboardShortcutViewerName[] =
3020 "Enable keyboard shortcut viewer.";
3021const char kAshEnableKeyboardShortcutViewerDescription[] =
3022 "Enable keyboard shortcut viewer.";
3023
3024const char kAshEnableMirroredScreenName[] = "Enable mirrored screen mode.";
3025const char kAshEnableMirroredScreenDescription[] =
3026 "Enable the mirrored screen mode. This mode flips the screen image "
3027 "horizontally.";
3028
Qiang Xu045aff222018-05-21 23:21:013029const char kAshEnablePersistentWindowBoundsName[] =
3030 "Enable persistent window bounds in multi-displays scenario.";
3031const char kAshEnablePersistentWindowBoundsDescription[] =
3032 "Enable persistent window bounds in multi-displays scenario.";
3033
3034const char kAshEnableTrilinearFilteringName[] = "Enable trilinear filtering.";
3035const char kAshEnableTrilinearFilteringDescription[] =
3036 "Enable trilinear filtering.";
3037
Brett Wilson7b44537e2017-08-18 01:38:283038const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
3039const char kAshEnableUnifiedDesktopDescription[] =
3040 "Enable unified desktop mode which allows a window to span multiple "
3041 "displays.";
vabr0215a8e2017-03-28 12:47:343042
Mike Wassermanfcc47e42018-06-14 21:24:423043const char kAshKeyboardShortcutViewerAppName[] =
3044 "Keyboard Shortcut Viewer mojo app";
3045const char kAshKeyboardShortcutViewerAppDescription[] =
3046 "Use an out-of-process mojo app to show the Keyboard Shortcut Viewer.";
3047
Qiang Xu045aff222018-05-21 23:21:013048const char kAshShelfColorName[] = "Shelf color in Chrome OS system UI";
3049const char kAshShelfColorDescription[] =
3050 "Enables/disables the shelf color to be a derived from the wallpaper. The "
3051 "--ash-shelf-color-scheme flag defines how that color is derived.";
3052
3053const char kAshShelfColorScheme[] = "Shelf color scheme in Chrome OS System UI";
3054const char kAshShelfColorSchemeDescription[] =
3055 "Specify how the color is derived from the wallpaper. This flag is only "
3056 "used when the --ash-shelf-color flag is enabled. Defaults to Dark & Muted";
3057const char kAshShelfColorSchemeLightVibrant[] = "Light & Vibrant";
3058const char kAshShelfColorSchemeNormalVibrant[] = "Normal & Vibrant";
3059const char kAshShelfColorSchemeDarkVibrant[] = "Dark & Vibrant";
3060const char kAshShelfColorSchemeLightMuted[] = "Light & Muted";
3061const char kAshShelfColorSchemeNormalMuted[] = "Normal & Muted";
3062const char kAshShelfColorSchemeDarkMuted[] = "Dark & Muted";
3063
Sean Kau5e956192017-10-06 22:25:173064const char kBulkPrintersName[] = "Bulk Printers Policy";
3065const char kBulkPrintersDescription[] = "Enables the new bulk printers policy";
3066
Brett Wilson7b44537e2017-08-18 01:38:283067const char kCaptivePortalBypassProxyName[] =
3068 "Bypass proxy for Captive Portal Authorization";
3069const char kCaptivePortalBypassProxyDescription[] =
3070 "If proxy is configured, it usually prevents from authorization on "
3071 "different captive portals. This enables opening captive portal "
3072 "authorization dialog in a separate window, which ignores proxy settings.";
vabr0215a8e2017-03-28 12:47:343073
Yuki Awanob51d3252018-07-11 23:45:553074const char kChromeVoxArcSupportName[] = "ChromeVox ARC support";
3075const char kChromeVoxArcSupportDescription[] =
3076 "Use ChromeVox screen reader features in ARC";
3077
Brett Wilson7b44537e2017-08-18 01:38:283078const char kCrOSComponentName[] = "Chrome OS Component";
3079const char kCrOSComponentDescription[] =
Xiaochu Liu4c1b75d2017-12-18 23:52:083080 "Disable the use of componentized escpr CUPS filter.";
vabr0215a8e2017-03-28 12:47:343081
Xiaochu Liu51d03fd2017-09-08 23:51:023082const char kCrOSContainerName[] = "Chrome OS Container";
3083const char kCrOSContainerDescription[] =
3084 "Enable the use of Chrome OS Container utility.";
3085
Brett Wilson7b44537e2017-08-18 01:38:283086const char kCrosRegionsModeName[] = "Cros-regions load mode";
3087const char kCrosRegionsModeDescription[] =
3088 "This flag controls cros-regions load mode";
3089const char kCrosRegionsModeDefault[] = "Default";
3090const char kCrosRegionsModeOverride[] = "Override VPD values.";
3091const char kCrosRegionsModeHide[] = "Hide VPD values.";
vabr0215a8e2017-03-28 12:47:343092
Jacob Dufault2becbc482017-08-25 00:36:353093const char kDisableLockScreenAppsName[] = "Disable lock screen note taking";
3094const char kDisableLockScreenAppsDescription[] =
3095 "Disable new-note action handler apps on the lock screen. The user will "
3096 "not be able to launch the preferred note-taking action from the lock "
3097 "screen, provided that the app supports lock screen note taking.";
3098
Qiang Xu045aff222018-05-21 23:21:013099const char kDisableSystemTimezoneAutomaticDetectionName[] =
3100 "SystemTimezoneAutomaticDetection policy support";
3101const char kDisableSystemTimezoneAutomaticDetectionDescription[] =
3102 "Disable system timezone automatic detection device policy.";
3103
Sammie Quonef6b4882017-09-14 16:50:053104const char kDisableTabletAutohideTitlebarsName[] =
3105 "Disable autohide titlebars in tablet mode";
3106const char kDisableTabletAutohideTitlebarsDescription[] =
3107 "Disable tablet mode autohide titlebars functionality. The user will be "
3108 "able to see the titlebar in tablet mode.";
3109
Xiaoqian Dai24b33eb2018-04-10 21:01:573110const char kDisableTabletSplitViewName[] = "Disable split view in Tablet mode";
3111const char kDisableTabletSplitViewDescription[] =
3112 "Disable split view for Chrome OS tablet mode.";
3113
Qiang Xu53d1a5832018-05-24 18:44:193114const char kEnableAppShortcutSearchName[] =
3115 "Enable app shortcut search in launcher";
3116const char kEnableAppShortcutSearchDescription[] =
3117 "Enables app shortcut search in launcher";
3118
Weidong Guo00d0b2b2018-06-07 00:39:303119const char kEnableAppsGridGapFeatureName[] =
3120 "Enable apps grid gap feature in launcher.";
3121const char kEnableAppsGridGapFeatureDescription[] =
3122 "Enables gaps at the end of each page and enables dragging an item to an "
3123 "empty page in launcher.";
3124
Lei Zhang2eca9082017-10-17 20:42:503125const char kEnableBackgroundBlurName[] = "Enable background blur.";
3126const char kEnableBackgroundBlurDescription[] =
Wenzhao Zang50fb0b22017-11-07 01:38:423127 "Enables background blur for the Peeking Launcher and Tab Switcher.";
Alex Newcomer43cb7f12017-07-28 17:37:393128
F#m75862c92018-01-25 19:10:473129const char kEnableDisplayZoomSettingName[] = "Enable display zoom settings";
3130const char kEnableDisplayZoomSettingDescription[] =
3131 "Allows the user to modify the display size or zoom via the chrome display "
3132 "settings page.";
3133
Min Chenc2ec7282018-06-29 21:38:463134const char kEnableDragAppsInTabletModeName[] =
3135 "Enable dragging apps in tablet mode";
3136const char kEnableDragAppsInTabletModeDescription[] =
3137 "If enabled, swiping down from the top of the screen when an app is opened "
3138 "in tablet mode can drag the app.";
3139
Xiaoqian Dai82d99192018-05-25 18:51:353140const char kEnableDragTabsInTabletModeName[] =
3141 "Enable dragging tabs in tablet mode";
3142const char kEnableDragTabsInTabletModeDescription[] =
3143 "Allows the user to drag the tabs out of a browser window in tablet mode.";
3144
Sam McNally201fbf94e2018-07-04 03:15:203145const char kEnableDriveFsName[] = "Enable DriveFS";
3146const char kEnableDriveFsDescription[] =
3147 "Enables use of the new DriveFS-based Drive sync client.";
3148
Brett Wilson7b44537e2017-08-18 01:38:283149const char kEnableEhvInputName[] =
3150 "Emoji, handwriting and voice input on opt-in IME menu";
3151const char kEnableEhvInputDescription[] =
3152 "Enable access to emoji, handwriting and voice input form opt-in IME menu.";
vabr0215a8e2017-03-28 12:47:343153
Brett Wilson7b44537e2017-08-18 01:38:283154const char kEnableEncryptionMigrationName[] =
3155 "Enable encryption migration of user data";
3156const char kEnableEncryptionMigrationDescription[] =
3157 "If enabled and the device supports ARC, the user will be asked to update "
3158 "the encryption of user data when the user signs in.";
vabr0215a8e2017-03-28 12:47:343159
Blake O'Hare9e9317b22017-10-24 02:49:353160const char kEnableFloatingVirtualKeyboardName[] =
3161 "Enable floating virtual keyboard";
3162const char kEnableFloatingVirtualKeyboardDescription[] =
3163 "If enabled, the keyboard will use floating behavior by default.";
3164
Qiang Xu045aff222018-05-21 23:21:013165const char kEnableFullscreenHandwritingVirtualKeyboardName[] =
3166 "Enable full screen handwriting virtual keyboard";
3167const char kEnableFullscreenHandwritingVirtualKeyboardDescription[] =
3168 "If enabled, the handwriting virtual keyboard will allow user to write "
3169 "anywhere on the screen";
3170
3171const char kEnableHomeLauncherName[] = "Enable home launcher";
3172const char kEnableHomeLauncherDescription[] =
3173 "Enable home launcher in tablet mode.";
3174
Brett Wilson7b44537e2017-08-18 01:38:283175const char kEnableImeMenuName[] = "Enable opt-in IME menu";
3176const char kEnableImeMenuDescription[] =
3177 "Enable access to the new IME menu in the Language Settings page.";
vabr0215a8e2017-03-28 12:47:343178
Weidong Guo45836d1b2018-06-27 23:51:163179const char kEnableNewStyleLauncherName[] = "Enable new style launcher.";
3180const char kEnableNewStyleLauncherDescription[] =
3181 "Enables new style UI such as suggestion chips, resizable apps grid, etc. "
3182 "in app launcher.";
3183
Qiang Xu045aff222018-05-21 23:21:013184const char kEnableNewWallpaperPickerName[] = "Enable new wallpaper picker";
3185const char kEnableNewWallpaperPickerDescription[] =
3186 "Enable the redesigned wallpaper picker with new wallpaper collections.";
3187
3188const char kEnablePerUserTimezoneName[] = "Per-user time zone preferences.";
3189const char kEnablePerUserTimezoneDescription[] =
3190 "Chrome OS system timezone preference is stored and handled for each user "
3191 "individually.";
3192
3193const char kEnableSettingsShortcutSearchName[] =
3194 "Enable Settings shortcut search";
3195const char kEnableSettingsShortcutSearchDescription[] =
3196 "Enable Settings shortcut search in launcher.";
3197
Darren Shen3e49c63d2018-03-28 04:45:503198const char kEnableStylusVirtualKeyboardName[] =
3199 "Enable stylus virtual keyboard";
3200const char kEnableStylusVirtualKeyboardDescription[] =
3201 "If enabled, tapping with a stylus will show the handwriting virtual "
3202 "keyboard.";
3203
Jordy Greenblatt2f23df22018-02-22 19:49:193204const char kEnableUnifiedMultiDeviceSettingsName[] =
3205 "Enable unified MultiDevice settings";
3206const char kEnableUnifiedMultiDeviceSettingsDescription[] =
3207 "If enabled, the Chrome OS Settings UI will include a menu for the unified "
3208 "MultiDevice settings.";
3209
3210const char kEnableUnifiedMultiDeviceSetupName[] =
3211 "Enable unified MultiDevice setup";
3212const char kEnableUnifiedMultiDeviceSetupDescription[] =
3213 "Enable the device to setup all MultiDevice services in a single workflow.";
3214
Darren Shen11c770f312018-06-13 07:36:393215const char kEnableVirtualKeyboardMdUiName[] =
3216 "Enable Material Design virtual keyboard";
3217const char kEnableVirtualKeyboardMdUiDescription[] =
3218 "If enabled, loads the Material Design UI for the virtual keyboard.";
3219
Darren Shen0b4e5802018-07-10 03:12:263220const char kEnableVirtualKeyboardUkmName[] = "Enable UKM for virtual keyboard";
3221const char kEnableVirtualKeyboardUkmDescription[] =
3222 "Enables UKM for virtual keyboard";
3223
Klemen Kozjek05fc4512017-10-18 12:51:103224const char kEnableZipArchiverPackerName[] = "ZIP archiver - Packer";
3225const char kEnableZipArchiverPackerDescription[] =
3226 "Enable the ability to archive files on Drive in the Files app";
3227
Brett Wilson7b44537e2017-08-18 01:38:283228const char kEolNotificationName[] = "Disable Device End of Life notification.";
3229const char kEolNotificationDescription[] =
3230 "Disable Notifcation when Device is End of Life.";
3231
3232const char kExperimentalAccessibilityFeaturesName[] =
3233 "Experimental accessibility features";
3234const char kExperimentalAccessibilityFeaturesDescription[] =
3235 "Enable additional accessibility features in the Settings page.";
3236
3237const char kExperimentalInputViewFeaturesName[] =
3238 "Experimental input view features";
3239const char kExperimentalInputViewFeaturesDescription[] =
3240 "Enable experimental features for IME input views.";
3241
3242const char kFileManagerTouchModeName[] = "Files App. touch mode";
3243const char kFileManagerTouchModeDescription[] =
3244 "Touchscreen-specific interactions of the Files app.";
3245
3246const char kFirstRunUiTransitionsName[] =
3247 "Animated transitions in the first-run tutorial";
3248const char kFirstRunUiTransitionsDescription[] =
3249 "Transitions during first-run tutorial are animated.";
3250
Brett Wilson7b44537e2017-08-18 01:38:283251const char kForceEnableStylusToolsName[] = "Force enable stylus features";
3252const char kForceEnableStylusToolsDescription[] =
3253 "Forces display of the stylus tools menu in the shelf and the stylus "
3254 "section in settings, even if there is no attached stylus device.";
3255
3256const char kGestureEditingName[] = "Gesture editing for the virtual keyboard.";
3257const char kGestureEditingDescription[] =
3258 "Enable/Disable gesture editing option in the settings page for the "
3259 "virtual keyboard.";
3260
3261const char kGestureTypingName[] = "Gesture typing for the virtual keyboard.";
3262const char kGestureTypingDescription[] =
3263 "Enable/Disable gesture typing option in the settings page for the virtual "
3264 "keyboard.";
3265
3266const char kInputViewName[] = "Input views";
3267const char kInputViewDescription[] =
3268 "Enable IME extensions to supply custom views for user input such as "
3269 "virtual keyboards.";
3270
Megumi Hattori5a0d4182018-03-06 11:09:503271const char kLockScreenNotificationName[] = "Lock screen notification";
3272const char kLockScreenNotificationDescription[] =
3273 "Enable notifications on the lock screen.";
3274
Qiang Xu045aff222018-05-21 23:21:013275const char kMaterialDesignInkDropAnimationSpeedName[] =
3276 "Material design ink drop animation speed";
3277const char kMaterialDesignInkDropAnimationSpeedDescription[] =
3278 "Sets the speed of the experimental visual feedback animations for "
3279 "material design.";
3280const char kMaterialDesignInkDropAnimationFast[] = "Fast";
3281const char kMaterialDesignInkDropAnimationSlow[] = "Slow";
3282
Brett Wilson7b44537e2017-08-18 01:38:283283const char kMemoryPressureThresholdName[] =
3284 "Memory discard strategy for advanced pressure handling";
3285const char kMemoryPressureThresholdDescription[] =
3286 "Memory discarding strategy to use";
3287const char kConservativeThresholds[] =
3288 "Conservative memory pressure release strategy";
3289const char kAggressiveCacheDiscardThresholds[] =
3290 "Aggressive cache release strategy";
3291const char kAggressiveTabDiscardThresholds[] =
3292 "Aggressive tab release strategy";
3293const char kAggressiveThresholds[] =
3294 "Aggressive tab and cache release strategy";
3295
3296const char kMtpWriteSupportName[] = "MTP write support";
3297const char kMtpWriteSupportDescription[] =
3298 "MTP write support in File System API (and file manager). In-place editing "
3299 "operations are not supported.";
3300
Kyle Horimoto027590fb2018-02-13 22:19:483301const char kMultiDeviceApiName[] = "Enables the MultiDevice API";
3302const char kMultiDeviceApiDescription[] =
3303 "Enable Mojo-based API which provides synced device metadata and the "
3304 "ability to connect to other devices associated the logged-in Google "
3305 "account.";
3306
Bailey Berrodca8eeca02017-11-18 00:49:123307const char kNativeSmbName[] = "Native Smb Client";
3308const char kNativeSmbDescription[] =
3309 "If enabled, allows connections to an smb filesystem via Files app";
Bailey Berrofc0da1b2017-11-02 11:02:303310
vabr0215a8e2017-03-28 12:47:343311const char kNetworkPortalNotificationName[] =
3312 "Notifications about captive portals";
vabr0215a8e2017-03-28 12:47:343313const char kNetworkPortalNotificationDescription[] =
3314 "If enabled, notification is displayed when device is connected to a "
3315 "network behind captive portal.";
3316
Brett Wilson7b44537e2017-08-18 01:38:283317const char kNewKoreanImeName[] = "New Korean IME";
3318const char kNewKoreanImeDescription[] =
3319 "New Korean IME, which is based on Google Input Tools' HMM engine.";
vabr0215a8e2017-03-28 12:47:343320
Brett Wilson7b44537e2017-08-18 01:38:283321const char kNewZipUnpackerName[] = "New ZIP unpacker";
3322const char kNewZipUnpackerDescription[] =
3323 "New ZIP unpacker flow, based on the File System Provider API.";
vabr0215a8e2017-03-28 12:47:343324
Qiang Xu045aff222018-05-21 23:21:013325const char kOfficeEditingComponentAppName[] =
3326 "Office Editing for Docs, Sheets & Slides";
3327const char kOfficeEditingComponentAppDescription[] =
3328 "Office Editing for Docs, Sheets & Slides for testing purposes.";
3329
Brett Wilson7b44537e2017-08-18 01:38:283330const char kPhysicalKeyboardAutocorrectName[] = "Physical keyboard autocorrect";
3331const char kPhysicalKeyboardAutocorrectDescription[] =
3332 "Enable physical keyboard autocorrect for US keyboard, which can provide "
3333 "suggestions as typing on physical keyboard.";
vabr0215a8e2017-03-28 12:47:343334
3335const char kPrinterProviderSearchAppName[] =
3336 "Chrome Web Store Gallery app for printer drivers";
vabr0215a8e2017-03-28 12:47:343337const char kPrinterProviderSearchAppDescription[] =
3338 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:193339 "searches Chrome Web Store for extensions that support printing to a USB "
3340 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:343341
Brett Wilson7b44537e2017-08-18 01:38:283342const char kQuickUnlockPinName[] = "Quick Unlock (PIN)";
3343const char kQuickUnlockPinDescription[] =
3344 "Enabling PIN quick unlock allows you to use a PIN to unlock your ChromeOS "
3345 "device on the lock screen after you have signed into your device.";
3346const char kQuickUnlockPinSignin[] = "Enable PIN when logging in.";
3347const char kQuickUnlockPinSigninDescription[] =
3348 "Enabling PIN allows you to use a PIN to sign in and unlock your ChromeOS "
3349 "device. After changing this flag PIN needs to be set up again.";
3350const char kQuickUnlockFingerprint[] = "Quick Unlock (Fingerprint)";
3351const char kQuickUnlockFingerprintDescription[] =
3352 "Enabling fingerprint quick unlock allows you to setup and use a "
3353 "fingerprint to unlock your Chromebook on the lock screen after you have "
3354 "signed into your device.";
vabr0215a8e2017-03-28 12:47:343355
James Cook0ba192bf2017-12-01 20:53:113356const char kShowTapsName[] = "Show taps";
3357const char kShowTapsDescription[] =
3358 "Draws a circle at each touch point, which makes touch points more obvious "
3359 "when projecting or mirroring the display. Similar to the Android OS "
3360 "developer option.";
3361
3362const char kShowTouchHudName[] = "Show HUD for touch points";
3363const char kShowTouchHudDescription[] =
3364 "Shows a trail of colored dots for the last few touch points. Pressing "
3365 "Ctrl-Alt-I shows a heads-up display view in the top-left corner. Helps "
3366 "debug hardware issues that generate spurious touch events.";
3367
Jorge Gil5a8ccde2018-07-10 01:46:213368const char kSmartTextSelectionName[] = "Smart Text Selection";
3369const char kSmartTextSelectionDescription[] =
3370 "Shows quick actions for text "
3371 "selections in the context menu.";
3372
Chung-Sheng Wu468b0b32017-09-01 14:41:573373const char kSysInternalsName[] = "Enable Sys-Internals";
3374const char kSysInternalsDescription[] =
3375 "If enabled, user can monitor system information at "
3376 "chrome://sys-internals.";
3377
Stuart Langleyc981ac62018-06-21 14:38:253378const char kDisableTeamDrivesName[] = "Disable Team Drives Integration";
3379const char kDisableTeamDrivesDescription[] =
3380 "If disabled, files under Team Drives will no longer appear in the Files "
3381 "app.";
vabr0215a8e2017-03-28 12:47:343382
Brett Wilson7b44537e2017-08-18 01:38:283383const char kTetherName[] = "Instant Tethering";
3384const char kTetherDescription[] =
3385 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
3386 "phone to share its Internet connection with this device.";
stanisc14bed0b132017-05-10 17:46:373387
Brett Wilson7b44537e2017-08-18 01:38:283388const char kTouchscreenCalibrationName[] =
3389 "Enable/disable touchscreen calibration option in material design settings";
3390const char kTouchscreenCalibrationDescription[] =
3391 "If enabled, the user can calibrate the touch screen displays in "
3392 "chrome://settings/display.";
yhanadac5bff5b2017-05-18 06:37:093393
Qiang Xu045aff222018-05-21 23:21:013394const char kUiDevToolsName[] = "Enable native UI inspection";
3395const char kUiDevToolsDescription[] =
3396 "Enables inspection of native UI elements. For local inspection use "
3397 "chrome://inspect#other";
3398
3399const char kUiShowCompositedLayerBordersName[] =
3400 "Show UI composited layer borders";
3401const char kUiShowCompositedLayerBordersDescription[] =
3402 "Show border around composited layers created by UI.";
3403const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
3404const char kUiShowCompositedLayerBordersSurface[] = "Surface";
3405const char kUiShowCompositedLayerBordersLayer[] = "Layer";
3406const char kUiShowCompositedLayerBordersAll[] = "All";
3407
3408const char kUiSlowAnimationsName[] = "Slow UI animations";
3409const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
3410
Mitsuru Oshima63d3f2a2017-08-23 00:12:113411// Force UI Mode
3412const char kUiModeName[] = "Force Ui Mode";
3413const char kUiModeDescription[] =
3414 R"*(This flag can be used to force a certain mode on to a chromebook, )*"
3415 R"*(despite its current orientation. "Tablet" means that the )*"
3416 R"*(chromebook will act as if it were in tablet mode. "Clamshell" )*"
3417 R"*(means that the chromebook will act as if it were in clamshell )*"
3418 R"*(mode . "Auto" means that the chromebook will alternate between )*"
3419 R"*(the two, based on its orientation.)*";
3420const char kUiModeTablet[] = "TouchView";
3421const char kUiModeClamshell[] = "Clamshell";
3422const char kUiModeAuto[] = "Auto (default)";
3423
Sonny Sasaka7fecfeda2018-07-11 23:47:553424const char kUnfilteredBluetoothDevicesName[] = "Unfiltered Bluetooth devices";
3425const char kUnfilteredBluetoothDevicesDescription[] =
3426 "Shows all Bluetooth devices in UI (System Tray/Settings Page.)";
3427
James Cooka1bcfa9a2018-01-30 00:18:403428const char kUseMashName[] = "Out-of-process system UI (mash)";
3429const char kUseMashDescription[] =
3430 "Runs the mojo UI service (mus) and the ash window manager and system UI "
3431 "in a separate process.";
Brett Wilson7b44537e2017-08-18 01:38:283432
Miguel Casas-Sanchez8ba32f92017-11-07 05:03:343433// TODO(mcasas): remove after https://crbug.com/771345.
3434const char kUseMonitorColorSpaceName[] = "Use monitor color space";
3435const char kUseMonitorColorSpaceDescription[] =
3436 "Enables Chrome to use the color space information provided by the monitor"
3437 " instead of the default sRGB color space.";
3438
Brett Wilson7b44537e2017-08-18 01:38:283439const char kVideoPlayerChromecastSupportName[] =
3440 "Experimental Chromecast support for Video Player";
3441const char kVideoPlayerChromecastSupportDescription[] =
3442 "This option enables experimental Chromecast support for Video Player app "
3443 "on ChromeOS.";
3444
3445const char kVirtualKeyboardName[] = "Virtual Keyboard";
3446const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
3447
3448const char kVirtualKeyboardOverscrollName[] = "Virtual Keyboard Overscroll";
3449const char kVirtualKeyboardOverscrollDescription[] =
3450 "Enables virtual keyboard overscroll support.";
3451
3452const char kVoiceInputName[] = "Voice input on virtual keyboard";
3453const char kVoiceInputDescription[] =
3454 "Enables voice input on virtual keyboard.";
3455
3456const char kWakeOnPacketsName[] = "Wake On Packets";
3457const char kWakeOnPacketsDescription[] =
3458 "Enables waking the device based on the receipt of some network packets.";
orenb21da031c2017-06-30 21:24:203459
Qiang Xu53d1a5832018-05-24 18:44:193460const char kZipArchiverUnpackerName[] = "ZIP archiver - Unpacker";
3461const char kZipArchiverUnpackerDescription[] =
3462 "Enable or disable the ability to unpack archives in incognito mode";
3463
wutao42ee9daa2018-07-19 00:12:173464extern const char kEnableContinueReadingName[] = "Enable continue reading";
3465extern const char kEnableContinueReadingDescription[] =
3466 "Enable continue reading feature in Launcher, which allows users to "
3467 "seamlessly continue reading a web page when they switch devices from "
3468 "phones or tablets to Chromebooks.";
3469
Jenny Zhang81fc4c52018-07-23 22:12:323470extern const char kEnableZeroStateSuggestionsName[] =
3471 "Enable Zero State Suggetions";
3472extern const char kEnableZeroStateSuggestionsDescription[] =
3473 "Enable Zero State Suggestions feature in Launcher, which will show "
3474 "suggetions when launcher search box is active with an empty query";
3475
yhanadac5bff5b2017-05-18 06:37:093476#endif // defined(OS_CHROMEOS)
3477
Brett Wilson7b44537e2017-08-18 01:38:283478// Random platform combinations -----------------------------------------------
3479
3480#if defined(OS_WIN) || defined(OS_LINUX)
3481
3482const char kEnableInputImeApiName[] = "Enable Input IME API";
3483const char kEnableInputImeApiDescription[] =
3484 "Enable the use of chrome.input.ime API.";
3485
Tom Anderson6cbd5052018-05-03 23:49:543486#if !defined(OS_CHROMEOS)
3487
3488const char kWarnBeforeQuittingFlagName[] = "Warn Before Quitting";
3489const char kWarnBeforeQuittingFlagDescription[] =
3490 "Confirm to quit by either holding the quit shortcut or pressing it twice.";
3491
3492#endif // !defined(OS_CHROMEOS)
3493
Brett Wilson7b44537e2017-08-18 01:38:283494#endif // defined(OS_WIN) || defined(OS_LINUX)
3495
3496#if defined(OS_WIN) || defined(OS_MACOSX)
3497
3498const char kAutomaticTabDiscardingName[] = "Automatic tab discarding";
3499const char kAutomaticTabDiscardingDescription[] =
3500 "If enabled, tabs get automatically discarded from memory when the system "
3501 "memory is low. Discarded tabs are still visible on the tab strip and get "
3502 "reloaded when clicked on. Info about discarded tabs can be found at "
3503 "chrome://discards.";
3504
3505#endif // defined(OS_WIN) || defined(OS_MACOSX)
3506
lanwei83f54452018-06-21 23:51:043507#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3508
3509const char kDirectManipulationStylusName[] = "Direct Manipulation Stylus";
3510const char kDirectManipulationStylusDescription[] =
3511 "If enabled, Chrome will scroll web pages on stylus drag.";
3512
3513#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3514
Justin Donnelly110e40c2018-06-01 21:48:433515const char kExperimentalUiName[] = "Use all upcoming UI features";
3516const char kExperimentalUiDescription[] = "Use all upcoming UI features.";
Elly Fong-Jonesdfaf8532018-05-29 18:20:483517
Brett Wilson7b44537e2017-08-18 01:38:283518// Feature flags --------------------------------------------------------------
3519
3520#if BUILDFLAG(ENABLE_VR)
3521
David Dorwin5a496c32017-11-17 01:45:053522const char kWebVrVsyncAlignName[] = "WebVR VSync-aligned timing";
3523const char kWebVrVsyncAlignDescription[] =
3524 "Align WebVR application rendering with VSync for smoother animations.";
3525
Bill Orr103ed272018-02-14 21:23:053526#if BUILDFLAG(ENABLE_OCULUS_VR)
3527const char kOculusVRName[] = "Oculus hardware support";
3528const char kOculusVRDescription[] =
3529 "If enabled, Chrome will use Oculus devices for VR (supported only on "
3530 "Windows 10 or later).";
3531#endif // ENABLE_OCULUS_VR
3532
Bill Orr49527562017-11-22 16:58:483533#if BUILDFLAG(ENABLE_OPENVR)
3534const char kOpenVRName[] = "OpenVR hardware support";
3535const char kOpenVRDescription[] =
Bill Orr5056e692018-01-17 02:08:073536 "If enabled, Chrome will use OpenVR devices for VR (supported only on "
3537 "Windows 10 or later).";
Bill Orr49527562017-11-22 16:58:483538#endif // ENABLE_OPENVR
3539
Brett Wilson7b44537e2017-08-18 01:38:283540#endif // ENABLE_VR
3541
Nico Weberaf3b00b2017-09-11 17:58:173542#if BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:283543
3544const char kNaclDebugMaskName[] =
3545 "Restrict Native Client GDB-based debugging by pattern";
3546const char kNaclDebugMaskDescription[] =
3547 "Restricts Native Client application GDB-based debugging by URL of "
3548 "manifest file. Native Client GDB-based debugging must be enabled for this "
3549 "option to work.";
3550const char kNaclDebugMaskChoiceDebugAll[] = "Debug everything.";
3551const char kNaclDebugMaskChoiceExcludeUtilsPnacl[] =
3552 "Debug everything except secure shell and the PNaCl translator.";
3553const char kNaclDebugMaskChoiceIncludeDebug[] =
3554 "Debug only if manifest URL ends with debug.nmf.";
3555
3556const char kNaclDebugName[] = "Native Client GDB-based debugging";
3557const char kNaclDebugDescription[] =
3558 "Enable GDB debug stub. This will stop a Native Client application on "
3559 "startup and wait for nacl-gdb (from the NaCl SDK) to attach to it.";
3560
3561const char kNaclName[] = "Native Client";
3562const char kNaclDescription[] =
3563 "Support Native Client for all web applications, even those that were not "
3564 "installed from the Chrome Web Store.";
3565
3566const char kPnaclSubzeroName[] = "Force PNaCl Subzero";
3567const char kPnaclSubzeroDescription[] =
3568 "Force the use of PNaCl's fast Subzero translator for all pexe files.";
3569
Nico Weberaf3b00b2017-09-11 17:58:173570#endif // BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:283571
Brett Wilson7b44537e2017-08-18 01:38:283572const char kWebrtcH264WithOpenh264FfmpegName[] =
3573 "WebRTC H.264 software video encoder/decoder";
3574const char kWebrtcH264WithOpenh264FfmpegDescription[] =
3575 "When enabled, an H.264 software video encoder/decoder pair is included. "
3576 "If a hardware encoder/decoder is also available it may be used instead of "
3577 "this encoder/decoder.";
3578
Brett Wilson7b44537e2017-08-18 01:38:283579#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3580
3581const char kAutofillCreditCardUploadName[] =
3582 "Enable offering upload of Autofilled credit cards";
3583const char kAutofillCreditCardUploadDescription[] =
3584 "Enables a new option to upload credit cards to Google Payments for sync "
3585 "to all Chrome devices.";
3586
3587#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3588
Becca Hughesdc96e842018-05-04 22:48:283589#if defined(OS_ANDROID)
3590
3591const char kDisplayCutoutAPIName[] =
3592 "Enable support for the Display Cutout API";
3593const char kDisplayCutoutAPIDescription[] =
3594 "Enables developers to support devices that have a display cutout.";
3595
3596#endif // defined(OS_ANDROID)
3597
Brett Wilson7b44537e2017-08-18 01:38:283598// ============================================================================
3599// Don't just add flags to the end, put them in the right section in
3600// alphabetical order just like the header file.
3601// ============================================================================
3602
vabr0215a8e2017-03-28 12:47:343603} // namespace flag_descriptions