blob: ca5f40b1680ad66adb3b3c9d352ceb162bfdc27d [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
Henrique Nakashima52d76952018-11-30 19:35:5846const char kAllowStartingServiceManagerOnlyName[] =
47 "Allow starting service manager only";
48const char kAllowStartingServiceManagerOnlyDescription[] =
49 "Allows running a lightweight service-manager-only mode, in which services "
50 "can run without the browser process.";
51
Jeremy Klein586b4ccc2018-06-09 21:05:4852const char kAndroidMessagesIntegrationName[] = "Android Messages integration";
53const char kAndroidMessagesIntegrationDescription[] =
54 "Enables Chrome OS integration with Android messages.";
55
Kyle Horimoto2d838ec2018-12-26 19:41:1656const char kUseMessagesGoogleComDomainName[] = "Use messages.google.com domain";
57const char kUseMessagesGoogleComDomainDescription[] =
58 "Use the messages.google.com domain as part of the \"Messages\" "
59 "feature under \"Connected Devices\" settings.";
60
Azeem Arshad373e1ea72019-01-23 02:16:0061const char kEnableMessagesWebPushName[] =
62 "Web push in Android Messages integration";
63const char kEnableMessagesWebPushDescription[] =
64 "Use web push for background notificatons in Chrome OS integration "
65 "with Android Messages for Web";
66
Kamila472a5942018-11-26 09:48:2767const char kAndroidSiteSettingsUIRefreshName[] =
68 "Android Site Settings UI changes.";
69const char kAndroidSiteSettingsUIRefreshDescription[] =
Kamila02f7e072018-10-08 09:50:2870 "Enable the new UI "
71 "changes in Site Settings in Android.";
72
Brett Wilsonf27ff602017-07-07 22:28:4773const char kAppBannersName[] = "App Banners";
74const char kAppBannersDescription[] =
75 "Enable the display of Progressive Web App banners, which prompt a user to "
76 "add a web app to their shelf, or other platform-specific equivalent.";
77
Ioana Pandelef9689a062018-06-22 15:35:5178const char kAutomaticPasswordGenerationName[] = "Automatic password generation";
79const char kAutomaticPasswordGenerationDescription[] =
80 "Allow Chrome to offer to generate passwords when it detects account "
81 "creation pages.";
82
Michael Lippautz6081dfa2018-10-18 13:10:1483const char kEnableBlinkHeapUnifiedGarbageCollectionName[] =
84 "Blink Heap Unified Garbage Collection";
85const char kEnableBlinkHeapUnifiedGarbageCollectionDescription[] =
86 "Enable unified garbage collection in Blink";
87
Ulan Degenbaevb5466a92018-07-19 12:35:3488const char kEnableBloatedRendererDetectionName[] = "Bloated renderer detection";
89const char kEnableBloatedRendererDetectionDescription[] =
90 "Enable bloated renderer detection";
91
Khushalba202212017-07-12 19:53:4992const char kAsyncImageDecodingName[] = "AsyncImageDecoding";
93const char kAsyncImageDecodingDescription[] =
94 "Enables asynchronous decoding of images from raster for web content";
95
sebsgca14b092018-12-07 16:56:1596extern const char kAutofillAlwaysShowServerCardsInSyncTransportName[] =
97 "AlwaysShowServerCardsInSyncTransport";
98extern const char kAutofillAlwaysShowServerCardsInSyncTransportDescription[] =
99 "Always show server cards when in sync transport mode for wallet data";
100
Roger McFarlane2eceba982018-05-18 01:37:11101const char kAutofillCacheQueryResponsesName[] =
102 "Cache Autofill Query Responses";
103const char kAutofillCacheQueryResponsesDescription[] =
104 "When enabled, autofill will cache the responses it receives from the "
105 "crowd-sourced field type prediction server.";
106
Jeffrey Cohen05cdafa392018-08-15 20:49:17107const char kAutofillEnableCompanyNameName[] =
108 "Enable Autofill Company Name field";
109const char kAutofillEnableCompanyNameDescription[] =
110 "When enabled, Company Name fields will be auto filled";
111
sebsge35b762c2018-03-29 20:33:27112const char kAutofillDynamicFormsName[] = "Autofill Dynamic Forms";
113const char kAutofillDynamicFormsDescription[] =
114 "Allows autofill to fill dynamically changing forms";
115
Anne Lime625362e2018-08-29 03:13:25116const char kAutofillNoLocalSaveOnUploadSuccessName[] =
117 "Disable locally saving card when credit card upload succeeds";
118const char kAutofillNoLocalSaveOnUploadSuccessDescription[] =
119 "When enabled, no local copy of server card will be saved when credit card "
120 "upload succeeds.";
121
Parastoo Geranmayeh2dcd14f92018-06-01 17:08:39122const char kAutofillPrefilledFieldsName[] = "Autofill Prefilled Fields";
123const char kAutofillPrefilledFieldsDescription[] =
124 "Allows autofill to fill fields previously filled by the website";
125
Parastoo Geranmayeh0f5ebbc2019-01-21 21:01:09126const char kAutofillProfileClientValidationName[] =
127 "Autofill Validates Profiles By Client";
128const char kAutofillProfileClientValidationDescription[] =
129 "Allows autofill to validate profiles on the client side";
130
Lei Zhang0ca70ea2018-09-07 17:51:01131const char kAutofillPreviewStyleExperimentName[] =
Fabio Tirelo9b423c7b2018-08-15 14:32:18132 "Autofill Preview Style Experiment";
Lei Zhang0ca70ea2018-09-07 17:51:01133const char kAutofillPreviewStyleExperimentDescription[] =
Fabio Tirelo9b423c7b2018-08-15 14:32:18134 "Allows experimentation with the Autofill field preview's style.";
135
Roger McFarlane1a37d7b2018-04-20 22:45:19136const char kAutofillEnforceMinRequiredFieldsForHeuristicsName[] =
137 "Autofill Enforce Min Required Fields For Heuristics";
138const char kAutofillEnforceMinRequiredFieldsForHeuristicsDescription[] =
139 "When enabled, autofill will generally require a form to have at least 3 "
140 "fields before allowing heuristic field-type prediction to occur.";
141
142const char kAutofillEnforceMinRequiredFieldsForQueryName[] =
143 "Autofill Enforce Min Required Fields For Query";
144const char kAutofillEnforceMinRequiredFieldsForQueryDescription[] =
145 "When enabled, autofill will generally require a form to have at least 3 "
146 "fields before querying the autofill server for field-type predictions.";
147
148const char kAutofillEnforceMinRequiredFieldsForUploadName[] =
149 "Autofill Enforce Min Required Fields For Upload";
150const char kAutofillEnforceMinRequiredFieldsForUploadDescription[] =
151 "When enabled, autofill will generally require a form to have at least 3 "
152 "fillable fields before uploading field-type votes for that form.";
153
Moe Ahmadid3ddfcb2018-04-20 19:51:08154const char kAutofillRestrictUnownedFieldsToFormlessCheckoutName[] =
155 "Restrict formless form extraction";
156const char kAutofillRestrictUnownedFieldsToFormlessCheckoutDescription[] =
157 "Restrict extraction of formless forms to checkout flows";
158
Roger McFarlanee193ab122018-11-22 20:55:07159const char kAutofillRichMetadataQueriesName[] =
160 "Autofill - Rich metadata queries (Canary/Dev only)";
161const char kAutofillRichMetadataQueriesDescription[] =
162 "Transmit rich form/field metadata when querying the autofill server. "
163 "This feature only works on the Canary and Dev channels.";
164
sebsg48d53acd92019-01-17 18:11:16165const char kAutofillSettingsSplitByCardTypeName[] =
166 "Autofill settings split by card type";
167const char kAutofillSettingsSplitByCardTypeDescription[] =
168 "When enabled, the cards in the payments settings will be split into two "
169 "lists based on where they are stored.";
170
Brett Wilsonf27ff602017-07-07 22:28:47171const char kAutoplayPolicyName[] = "Autoplay policy";
172const char kAutoplayPolicyDescription[] =
173 "Policy used when deciding if audio or video is allowed to autoplay.";
174
175const char kAutoplayPolicyUserGestureRequiredForCrossOrigin[] =
176 "User gesture is required for cross-origin iframes.";
177const char kAutoplayPolicyNoUserGestureRequired[] =
178 "No user gesture is required.";
179const char kAutoplayPolicyUserGestureRequired[] = "User gesture is required.";
180const char kAutoplayPolicyDocumentUserActivation[] =
181 "Document user activation is required.";
182
Maya Lekova4bbfdb7f2018-10-16 08:15:03183const char kAwaitOptimizationName[] = "Await optimization";
184const char kAwaitOptimizationDescription[] =
185 "Enables await taking 1 tick on the microtask queue.";
186
Brett Wilsonf27ff602017-07-07 22:28:47187const char kBleAdvertisingInExtensionsName[] = "BLE Advertising in Chrome Apps";
188const char kBleAdvertisingInExtensionsDescription[] =
189 "Enables BLE Advertising in Chrome Apps. BLE Advertising might interfere "
190 "with regular use of Bluetooth Low Energy features.";
191
Charles Harrisond629cc62017-10-05 01:39:54192const char kBlockTabUndersName[] = "Block tab-unders";
193const char kBlockTabUndersDescription[] =
194 "Blocks tab-unders in Chrome with some native UI to allow the user to "
195 "proceed.";
196
Brett Wilsonf27ff602017-07-07 22:28:47197const char kBrowserTaskSchedulerName[] = "Task Scheduler";
198const char kBrowserTaskSchedulerDescription[] =
199 "Enables redirection of some task posting APIs to the task scheduler.";
200
Carlos IL766fbc882018-02-16 02:34:52201const char kBundledConnectionHelpName[] = "Bundled Connection Help";
202const char kBundledConnectionHelpDescription[] =
Carlos ILaafcd73a2018-07-10 20:08:37203 "Enables or disables redirection to local help content for users who get "
204 "an interstitial after clicking the 'Learn More' link on a previous "
205 "interstitial.";
Carlos IL766fbc882018-02-16 02:34:52206
Brett Wilsonf27ff602017-07-07 22:28:47207const char kBypassAppBannerEngagementChecksName[] =
208 "Bypass user engagement checks";
209const char kBypassAppBannerEngagementChecksDescription[] =
210 "Bypasses user engagement checks for displaying app banners, such as "
211 "requiring that users have visited the site before and that the banner "
212 "hasn't been shown recently. This allows developers to test that other "
213 "eligibility requirements for showing app banners, such as having a "
214 "manifest, are met.";
215
Miguel Casas454d9cf2018-06-28 16:25:00216const char kCanvas2DImageChromiumName[] = "Canvas 2D Image Chromium";
217const char kCanvas2DImageChromiumDescription[] =
218 "Allows for using CHROMIUM_image GLES2 extension for HTML Canvas Contexts";
219
Brett Wilsonf27ff602017-07-07 22:28:47220const char kCastStreamingHwEncodingName[] =
221 "Cast Streaming hardware video encoding";
222const char kCastStreamingHwEncodingDescription[] =
223 "This option enables support in Cast Streaming for encoding video streams "
224 "using platform hardware.";
225
Amber Won478561d2017-08-19 01:02:59226const char kClickToOpenPDFName[] = "Click to open embedded PDFs";
227const char kClickToOpenPDFDescription[] =
228 "When the PDF plugin is unavailable, show a click-to-open placeholder for "
229 "embedded PDFs.";
230
Gary Kacmarcikfb69b212017-11-14 03:41:08231const char kClipboardContentSettingName[] = "Clipboard content setting";
232const char kClipboardContentSettingDescription[] =
233 "Enables a site-wide permission in the UI which controls access to the "
234 "asynchronous clipboard web API";
235
Brett Wilsonf27ff602017-07-07 22:28:47236const char kCloudImportName[] = "Cloud Import";
237const char kCloudImportDescription[] = "Allows the cloud-import feature.";
238
rbpotter9990eb42018-07-12 05:34:59239const char kCloudPrinterHandlerName[] = "Enable Cloud Printer Handler";
240const char kCloudPrinterHandlerDescription[] =
241 "Use the new cloud printer handler for communicating with the cloud "
242 "print server, instead of the cloud print interface in the Print "
243 "Preview WebUI.";
244
Tanja Gornakb0985dd2018-10-11 17:24:40245const char kFCMInvalidationsName[] =
246 "Enable invalidations delivery via new FCM based protocol";
247const char kFCMInvalidationsDescription[] =
248 "Use the new FCM-based protocol for deliveling invalidations";
249
Christopher Cameronceb8727d2017-09-07 23:53:16250const char kForceColorProfileSRGB[] = "sRGB";
251const char kForceColorProfileP3[] = "Display P3 D65";
252const char kForceColorProfileColorSpin[] = "Color spin with gamma 2.4";
253const char kForceColorProfileHdr[] = "scRGB linear (HDR where available)";
254
255const char kForceColorProfileName[] = "Force color profile";
256const char kForceColorProfileDescription[] =
257 "Forces Chrome to use a specific color profile instead of the color "
258 "of the window's current monitor, as specified by the operating system.";
259
Brett Wilsonf27ff602017-07-07 22:28:47260const char kCompositedLayerBordersName[] = "Composited render layer borders";
261const char kCompositedLayerBordersDescription[] =
262 "Renders a border around composited Render Layers to help debug and study "
263 "layer compositing.";
264
Theresac34db2d2018-06-28 00:03:11265const char kContextualSuggestionsButtonName[] = "Contextual Suggestions Button";
266const char kContextualSuggestionsButtonDescription[] =
267 "If enabled, shows a button to trigger contextual suggestions.";
268
Theresae308b9e2018-10-10 15:57:40269const char kContextualSuggestionsIPHReverseScrollName[] =
270 "Contextual Suggestions IPH Reverse Scroll";
271const char kContextualSuggestionsIPHReverseScrollDescription[] =
272 "Require a reverse scroll before showing in-product help for contextual "
273 "suggestions.";
274
Theresa0f2947b92018-07-02 21:27:58275const char kContextualSuggestionsOptOutName[] =
276 "Contextual Suggestions Opt-out";
277const char kContextualSuggestionsOptOutDescription[] =
278 "If enabled, allows the user to opt out of contextual suggestions.";
279
Brett Wilsonf27ff602017-07-07 22:28:47280const char kCreditCardAssistName[] = "Credit Card Assisted Filling";
281const char kCreditCardAssistDescription[] =
282 "Enable assisted credit card filling on certain sites.";
283
Thanh Le659cb102017-12-20 22:00:19284const char kDataSaverServerPreviewsName[] = "Data Saver Server Previews";
285const char kDataSaverServerPreviewsDescription[] =
286 "Allow the Data Reduction Proxy to serve previews.";
Brett Wilsonf27ff602017-07-07 22:28:47287
Brett Wilsonf27ff602017-07-07 22:28:47288const char kDebugPackedAppName[] = "Debugging for packed apps";
289const char kDebugPackedAppDescription[] =
290 "Enables debugging context menu options such as Inspect Element for packed "
291 "applications.";
292
Brett Wilsonf27ff602017-07-07 22:28:47293const char kDebugShortcutsName[] = "Debugging keyboard shortcuts";
294const char kDebugShortcutsDescription[] =
295 "Enables additional keyboard shortcuts that are useful for debugging Ash.";
296
297const char kDeviceDiscoveryNotificationsName[] =
298 "Device Discovery Notifications";
299const char kDeviceDiscoveryNotificationsDescription[] =
300 "Device discovery notifications on local network.";
301
302const char kDevtoolsExperimentsName[] = "Developer Tools experiments";
303const char kDevtoolsExperimentsDescription[] =
304 "Enables Developer Tools experiments. Use Settings panel in Developer "
305 "Tools to toggle individual experiments.";
306
307const char kDisableAudioForDesktopShareName[] =
308 "Disable Audio For Desktop Share";
309const char kDisableAudioForDesktopShareDescription[] =
310 "With this flag on, desktop share picker window will not let the user "
311 "choose whether to share audio.";
312
Arthur Sonzogni721f48e2018-10-31 17:10:02313const char kDisableIpcFloodingProtectionName[] =
314 "Disable IPC flooding protection";
315const char kDisableIpcFloodingProtectionDescription[] =
316 "Some javascript code can flood the inter process communication system. "
317 "This protection limits the rate (calls/seconds) at which theses function "
arthursonzogni443bd0ef2018-11-27 16:12:53318 "can be used. This flag disables the protection. This flag is deprecated "
319 "and will be removed in Chrome 76. Use the switch "
320 "--disable-ipc-flooding-protection instead.";
Arthur Sonzogni721f48e2018-10-31 17:10:02321
Chris Palmer917bc052018-03-14 19:28:31322const char kDisablePushStateThrottleName[] = "Disable pushState throttling";
323const char kDisablePushStateThrottleDescription[] =
324 "Disables throttling of history.pushState and history.replaceState method "
arthursonzogni443bd0ef2018-11-27 16:12:53325 "calls. This flag is deprecated and will be removed in Chrome 76. Use the "
326 "switch --disable-ipc-flooding-protection instead.";
Chris Palmer917bc052018-03-14 19:28:31327
Brett Wilsonf27ff602017-07-07 22:28:47328const char kDisableTabForDesktopShareName[] =
329 "Disable Desktop Share with tab source";
330const char kDisableTabForDesktopShareDescription[] =
331 "This flag controls whether users can choose a tab for desktop share.";
332
333const char kDisallowDocWrittenScriptsUiName[] =
334 "Block scripts loaded via document.write";
335const char kDisallowDocWrittenScriptsUiDescription[] =
336 "Disallows fetches for third-party parser-blocking scripts inserted into "
337 "the main frame via document.write.";
338
Christopher Thompson2ffffa2c2018-05-18 23:06:37339const char kDisallowUnsafeHttpDownloadsName[] =
340 "Block unsafe downloads over insecure connections";
341const char kDisallowUnsafeHttpDownloadsNameDescription[] =
342 "Disallows downloads of unsafe files (files that can potentially execute "
343 "code), where the final download origin or any origin in the redirect "
344 "chain is insecure.";
345
Brett Wilsonf27ff602017-07-07 22:28:47346const char kDriveSearchInChromeLauncherName[] =
347 "Drive Search in Chrome App Launcher";
348const char kDriveSearchInChromeLauncherDescription[] =
349 "Files from Drive will show up when searching the Chrome App Launcher.";
350
Brett Wilsonf27ff602017-07-07 22:28:47351const char kEmbeddedExtensionOptionsName[] = "Embedded extension options";
352const char kEmbeddedExtensionOptionsDescription[] =
353 "Display extension options as an embedded element in chrome://extensions "
354 "rather than opening a new tab.";
355
Dominic Mazzoni8ac98962018-05-25 05:44:55356const char kEnableAccessibilityObjectModelName[] = "Accessibility Object Model";
357const char kEnableAccessibilityObjectModelDescription[] =
358 "Enables experimental support for Accessibility Object Model APIs "
359 "that are in development.";
360
Becca Hughesac86cd442019-01-09 23:49:54361const char kEnableAudioFocusEnforcementName[] = "Audio Focus Enforcement";
362const char kEnableAudioFocusEnforcementDescription[] =
363 "Enables enforcement of a single media session having audio focus at "
364 "any one time. Requires #enable-media-session-service to be enabled too.";
365
Anthony Vallee-Dubois968ae4d2018-03-15 16:56:36366const char kEnableWebPaymentsSingleAppUiSkipName[] =
367 "Enable Web Payments single app UI skip";
368const char kEnableWebPaymentsSingleAppUiSkipDescription[] =
369 "Enable Web Payments to skip showing its UI if the developer specifies a "
370 "single app.";
371
Sebastien Lalancette5daaf4a2019-01-11 22:09:25372const char kEnableAutocompleteDataRetentionPolicyName[] =
373 "Enable automatic cleanup of expired Autocomplete entries.";
374const char kEnableAutocompleteDataRetentionPolicyDescription[] =
375 "If enabled, will clean-up Autocomplete entries whose last use date is "
376 "older than the current retention policy. These entries will be "
377 "permanently deleted from the client on startup, and will be unlinked "
378 "from sync.";
379
Florian Uunk8c428ea2018-07-18 11:12:52380const char kEnableAutofillAccountWalletStorageName[] =
381 "Enable the account data storage for autofill";
382const char kEnableAutofillAccountWalletStorageDescription[] =
383 "Enable the ephemeral storage for account data for autofill.";
384
Shanfeng Zhang19c16562017-10-17 02:30:40385const char kEnableAutofillCreditCardAblationExperimentDisplayName[] =
386 "Credit card autofill ablation experiment.";
387const char kEnableAutofillCreditCardAblationExperimentDescription[] =
388 "If enabled, credit card autofill suggestions will not display.";
389
Brett Wilsonf27ff602017-07-07 22:28:47390const char kEnableAutofillCreditCardLastUsedDateDisplayName[] =
391 "Display the last used date of a credit card in autofill.";
392const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
393 "If enabled, display the last used date of a credit card in autofill.";
394
Sujie Zhu2cf0e5c2018-07-17 18:00:27395const char kEnableAutofillCreditCardLocalCardMigrationName[] =
396 "Enable migrating local cards to Google Pay";
397const char kEnableAutofillCreditCardLocalCardMigrationDescription[] =
398 "If enabled, prompt migration of locally-saved credit cards to Google Pay.";
399
Jared Saulbc672a072018-06-16 05:22:12400const char kEnableAutofillCreditCardUploadEditableCardholderNameName[] =
401 "Make cardholder name editable in dialog during credit card upload";
402const char kEnableAutofillCreditCardUploadEditableCardholderNameDescription[] =
403 "If enabled, in certain situations when offering credit card upload to "
404 "Google Payments, the cardholder name can be edited within the "
405 "offer-to-save dialog, which is prefilled with the name from the signed-in "
406 "Google Account.";
407
Hao Zhang1be9c262018-11-03 00:23:51408const char kEnableAutofillCreditCardUploadEditableExpirationDateName[] =
409 "Make expiration date editable in dialog during credit card upload";
410const char kEnableAutofillCreditCardUploadEditableExpirationDateDescription[] =
411 "If enabled, if a credit card's expiration date was not detected when "
412 "offering card upload to Google Payments, the offer-to-save dialog "
413 "displays an expiration date selector.";
414
siyua9a4a8872018-10-05 03:46:56415const char kEnableAutofillLocalCardMigrationShowFeedbackName[] =
416 "Show the upload results dialog after local card migration";
417const char kEnableAutofillLocalCardMigrationShowFeedbackDescription[] =
418 "If enabled, the local card migration offer dialog will remain pending "
419 "after the user clicks the save button. Once migration is finished, "
420 "the dialog will be updated with the results of each card.";
421
tmartinocd414732018-02-12 19:01:01422const char kEnableAutofillNativeDropdownViewsName[] =
423 "Display Autofill Dropdown Using Views";
424const char kEnableAutofillNativeDropdownViewsDescription[] =
425 "If enabled, the Autofill Dropdown will be built natively using Views, "
426 "rather than painted directly to a canvas.";
427
Fabio Tirelo87552e02018-07-06 15:43:21428const char kEnableAutofillSaveCardDialogUnlabeledExpirationDateName[] =
429 "Show unlabeled expiration dates on the save card dialog";
430const char kEnableAutofillSaveCardDialogUnlabeledExpirationDateDescription[] =
431 "If enabled, expiration dates on the save card dialog (both local and "
432 "upstream) are shown without an 'Exp:' label.";
433
siyua172973d2018-11-21 22:23:20434const char kEnableAutofillSaveCardImprovedUserConsentName[] =
435 "Use updated UI for credit card save bubbles";
436const char kEnableAutofillSaveCardImprovedUserConsentDescription[] =
437 "If enabled, adds a [No thanks] button to credit card save bubbles and "
438 "updates their title headers.";
439
Manas Verma99541e52018-08-03 20:37:23440const char kEnableAutofillSaveCardSignInAfterLocalSaveName[] =
441 "Show Sign-In/Sync promo after saving a card locally";
442const char kEnableAutofillSaveCardSignInAfterLocalSaveDescription[] =
443 "If enabled, shows a sign in prompt to the user after the user "
444 "saves a card locally. This also introduces a Manage Cards bubble "
445 "which you can access from the card icon after saving a card.";
446
Jared Saul8a0c1e92018-10-10 18:22:47447const char kEnableAutofillSaveCreditCardUsesStrikeSystemName[] =
448 "Enable limit on offering to save the same credit card repeatedly";
449const char kEnableAutofillSaveCreditCardUsesStrikeSystemDescription[] =
450 "If enabled, prevents popping up the credit card offer-to-save prompt if "
451 "it has repeatedly been ignored, declined, or failed.";
452
Anne Lim9d8f66a2019-01-07 23:49:21453const char kEnableAutofillSaveCreditCardUsesStrikeSystemV2Name[] =
454 "Enable limit on offering to save the same credit card repeatedly using the"
455 "updated strike system implementation";
456const char kEnableAutofillSaveCreditCardUsesStrikeSystemV2Description[] =
457 "If enabled, uses the updated strike system implementation to prevent"
458 "popping up the credit card offer-to-save prompt if it has repeatedly been"
459 "ignored, declined, or failed.";
460
Lakshmi Kumar Dabbirua3d0805f2018-05-22 22:04:23461const char kEnableAutofillSendExperimentIdsInPaymentsRPCsName[] =
462 "Send experiment flag IDs in calls to Google Payments";
463const char kEnableAutofillSendExperimentIdsInPaymentsRPCsDescription[] =
464 "If enabled, adds the status of certain experiment variations when making "
465 "calls to Google Payments.";
466
Becca Hughes4d896c42018-05-29 16:58:51467const char kEnableAutoplayIgnoreWebAudioName[] =
468 "Autoplay ignores WebAudio playbacks";
469const char kEnableAutoplayIgnoreWebAudioDescription[] =
470 "If enabled, autoplay restrictions will be ignored for WebAudio.";
471
Becca Hughesc62f6a1d2018-08-16 15:59:47472const char kEnableAutoplayUnifiedSoundSettingsName[] =
473 "Autoplay unified sound settings UI";
474const char kEnableAutoplayUnifiedSoundSettingsDescription[] =
475 "If enabled, shows the new unified autoplay sound settings UI.";
476
Brett Wilsonf27ff602017-07-07 22:28:47477const char kEnableBrotliName[] = "Brotli Content-Encoding.";
478const char kEnableBrotliDescription[] =
479 "Enable Brotli Content-Encoding support.";
480
Qiang Xu0f602fe62017-12-22 01:31:20481const char kEnableCaptivePortalRandomUrl[] = "Captive Portal url Randomization";
482const char kEnableCaptivePortalRandomUrlDescription[] =
483 "Enable Captive Portal URL randomization.";
484
Yuki Awano06c7ddf2019-01-23 04:17:59485const char kEnableChromevoxDeveloperOptionName[] =
486 "Enable Chromevox developer option";
487const char kEnableChromevoxDeveloperOptionDescription[] =
488 "This option provides tools for developing in chromevox.";
489
sclittle50e4bb92017-07-08 02:23:03490const char kEnableClientLoFiName[] = "Client-side Lo-Fi previews";
491
492const char kEnableClientLoFiDescription[] =
493 "Enable showing low fidelity images on some pages on slow networks.";
494
Patrick Noland8bc57472018-06-19 21:09:54495const char kEnableCSSFragmentIdentifiersName[] =
496 "Enable CSS Fragment Identifiers";
497const char kEnableCSSFragmentIdentifiersDescription[] =
498 "Enable support for specifying a target element using a css selector in "
499 "the fragment identifier.";
500
David Reveman87b4b692018-03-09 21:22:22501const char kEnableCursorMotionBlurName[] = "Enable Cursor Motion Blur";
502const char kEnableCursorMotionBlurDescription[] =
503 "Enable motion blur effect for the cursor.";
504
Doug Arnett08b4067b2017-10-12 20:14:44505const char kEnableNoScriptPreviewsName[] = "NoScript previews";
506
507const char kEnableNoScriptPreviewsDescription[] =
508 "Enable disabling JavaScript on some pages on slow networks.";
509
Thanh Le2c279fbc2017-11-21 01:25:40510const char kDataReductionProxyServerAlternative1[] = "Use alt. server config 1";
511const char kDataReductionProxyServerAlternative2[] = "Use alt. server config 2";
512const char kDataReductionProxyServerAlternative3[] = "Use alt. server config 3";
513const char kDataReductionProxyServerAlternative4[] = "Use alt. server config 4";
514const char kDataReductionProxyServerAlternative5[] = "Use alt. server config 5";
515const char kDataReductionProxyServerAlternative6[] = "Use alt. server config 6";
516const char kDataReductionProxyServerAlternative7[] = "Use alt. server config 7";
517const char kDataReductionProxyServerAlternative8[] = "Use alt. server config 8";
518const char kDataReductionProxyServerAlternative9[] = "Use alt. server config 9";
519const char kDataReductionProxyServerAlternative10[] =
520 "Use alt. server config 10";
rajendrantcfa60ba2018-10-30 09:16:54521const char kEnableDataReductionProxyNetworkServiceName[] =
522 "Data reduction proxy with network service";
523const char kEnableDataReductionProxyNetworkServiceDescription[] =
524 "Enable data reduction proxy when network service is enabled";
Brett Wilsonf27ff602017-07-07 22:28:47525const char kEnableDataReductionProxyServerExperimentName[] =
526 "Use an alternative Data Saver back end configuration.";
527const char kEnableDataReductionProxyServerExperimentDescription[] =
528 "Enable a different approach to saving data by configuring the back end "
529 "server";
530
531const char kEnableDataReductionProxySavingsPromoName[] =
532 "Data Saver 1 MB Savings Promo";
533const char kEnableDataReductionProxySavingsPromoDescription[] =
534 "Enable a Data Saver promo for 1 MB of savings. If Data Saver has already "
535 "saved 1 MB of data, then the promo will not be shown. Data Saver must be "
536 "enabled for the promo to be shown.";
537
Matt Giucad4870432017-11-24 01:04:38538const char kEnableDesktopPWAsName[] = "Desktop PWAs";
539const char kEnableDesktopPWAsDescription[] =
540 "Experimental windowing and install banner treatment for Progressive Web "
541 "Apps on desktop platforms. Implies #enable-experimental-app-banners.";
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17542
Giovanni Ortuño Urquidi40c8e792018-02-28 04:18:59543const char kEnableDesktopPWAsLinkCapturingName[] =
544 "Desktop PWAs Link Capturing";
545const char kEnableDesktopPWAsLinkCapturingDescription[] =
546 "Experimentally enable link capturing for Desktop PWAs. Navigations to "
547 "URLs that are in-scope of Desktop PWAs will open in a window. Requires "
548 "#enable-desktop-pwas.";
549
Jay Harris52511a02018-11-02 01:00:28550const char kDesktopPWAsCustomTabUIName[] = "Desktop PWAs Custom Tab UI";
551const char kDesktopPWAsCustomTabUIDescription[] =
552 "Browsing out-of-scope links in a desktop PWA will use the custom tab UI "
553 "for displaying the page title and origin instead of the location bar.";
554
Jay Harrisee7a7bc62018-10-09 01:47:49555const char kDesktopPWAsStayInWindowName[] =
556 "Desktop PWAs out-of-scope links open in the app window";
557const char kDesktopPWAsStayInWindowDescription[] =
Jay Harris52511a02018-11-02 01:00:28558 "Links to sites in a different scope will open inside the PWA window as "
559 "opposed to in the browser.";
Jay Harrisee7a7bc62018-10-09 01:47:49560
Christopher Lame66b7812018-09-26 01:49:24561const char kEnableSystemWebAppsName[] = "System Web Apps";
562const char kEnableSystemWebAppsDescription[] =
563 "Experimental system for using the Desktop PWA framework for running System"
564 "Apps (e.g Settings, Discover).";
565
Ahmed Fakhry0037de02018-01-29 19:58:31566const char kEnableDockedMagnifierName[] = "Docked Magnifier";
567const char kEnableDockedMagnifierDescription[] =
568 "Enables the Docked Magnifier (a.k.a. picture-in-picture magnifier).";
569
David Benjamin570460e2018-10-16 06:01:29570const char kEnforceTLS13DowngradeName[] = "TLS 1.3 downgrade hardening";
571const char kEnforceTLS13DowngradeDescription[] =
572 "This option enables the TLS 1.3 downgrade hardening mechanism. This "
573 "hardens TLS 1.3 connections while remaining compatible with TLS 1.0 "
574 "through 1.2 connections. Firewalls and proxies that do not function when "
575 "this is enabled do not implement TLS 1.0 through 1.2 correctly or "
576 "securely. They must be fixed by vendors.";
577
Brett Wilsonf27ff602017-07-07 22:28:47578const char kEnableEnumeratingAudioDevicesName[] =
579 "Experimentally enable enumerating audio devices.";
580const char kEnableEnumeratingAudioDevicesDescription[] =
581 "Experimentally enable the use of enumerating audio devices.";
582
583const char kEnableGenericSensorName[] = "Generic Sensor";
584const char kEnableGenericSensorDescription[] =
Mikhail Pozdnyakov73373a62017-08-24 17:31:25585 "Enables motion sensor classes based on Generic Sensor API, i.e. "
586 "Accelerometer, LinearAccelerationSensor, Gyroscope, "
587 "AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
588
589const char kEnableGenericSensorExtraClassesName[] =
590 "Generic Sensor Extra Classes";
591const char kEnableGenericSensorExtraClassesDescription[] =
592 "Enables an extra set of sensor classes based on Generic Sensor API, which "
593 "expose previously unavailable platform features, i.e. AmbientLightSensor "
594 "and Magnetometer interfaces.";
Brett Wilsonf27ff602017-07-07 22:28:47595
Vikas Soni78daa632019-01-12 01:32:52596const char kEnableGpuServiceLoggingName[] = "Enable gpu service logging";
597const char kEnableGpuServiceLoggingDescription[] =
598 "Enable printing the actual GL driver calls.";
599
Brett Wilsonf27ff602017-07-07 22:28:47600const char kEnableHDRName[] = "HDR mode";
601const char kEnableHDRDescription[] =
602 "Enables HDR support on compatible displays.";
603
Ryan Sturm6a850902018-06-09 02:27:34604const char kEnableHeavyPageCappingName[] = "Heavy Page Capping";
605const char kEnableHeavyPageCappingDescription[] =
Ryan Sturm1550abeb2018-06-18 20:05:09606 "Enable showing an InfoBar on data heavy pages that allows the user to "
Ryan Sturma2cd49f2018-06-20 17:09:25607 "pause sub-resource request loading on the page. Using the 'Low' option "
Ryan Sturm2a2f11e2018-07-17 23:01:01608 "will reduce the triggering threshold to 1MB. Data saver must be enabled "
609 "in order to see the InfoBar.";
Ryan Sturm6a850902018-06-09 02:27:34610
David Bokan911bded2018-11-27 23:23:32611const char kEnableImplicitRootScrollerName[] = "Implicit Root Scroller";
612const char kEnableImplicitRootScrollerDescription[] =
613 "Enables implicitly choosing which scroller on a page is the 'root "
614 "scroller'. i.e. The one that gets special features like URL bar movement, "
615 "overscroll glow, rotation anchoring, etc.";
616
Robert Ogden5a63b242018-09-17 21:38:57617const char kEnablePreviewsAndroidOmniboxUIName[] =
618 "Previews Android Omnibox UI";
619const char kEnablePreviewsAndroidOmniboxUIDescription[] =
620 "Enable showing the Previews UI in the Omnibox on Android instead of an "
621 "InfoBar. This has no effect on other platforms.";
622
Robert Ogdence8c9572018-10-08 23:08:48623const char kEnableLitePageServerPreviewsName[] = "Lite Page Server Previews";
624const char kEnableLitePageServerPreviewsDescription[] =
Doug Arnett9c1f87562018-12-14 00:56:39625 "Enable showing Lite Page Previews served from a Previews Server."
626 "This feature will cause Chrome to redirect eligible navigations "
Robert Ogdence8c9572018-10-08 23:08:48627 "to a Google-owned domain that serves a pre-rendered version of the "
Doug Arnett9c1f87562018-12-14 00:56:39628 "original page. Also known as Lite Page Redirect Previews.";
Robert Ogdence8c9572018-10-08 23:08:48629
Hiroshige Hayashizaki99d5821e2018-05-02 04:25:41630const char kLayeredAPIName[] = "Experimental layered APIs";
631const char kLayeredAPIDescription[] =
632 "Enable layered API infrastructure, as well as several experimental "
633 "layered APIs. The syntax and the APIs exposed are experimental and will "
634 "change over time.";
635
Philip Rogers63481332018-12-01 22:16:51636const char kEnableBlinkGenPropertyTreesName[] = "Enable BlinkGenPropertyTrees";
637const char kEnableBlinkGenPropertyTreesDescription[] =
638 "Enable a new compositing mode where Blink generates the compositor "
639 "property trees.";
640
Ian Kilpatricke68ef11a2018-07-04 03:52:10641const char kEnableLayoutNGName[] = "Enable LayoutNG";
642const char kEnableLayoutNGDescription[] =
643 "Enable Blink's next generation layout engine.";
644
Scott Littled0fd2d002018-04-13 03:37:26645const char kEnableLazyFrameLoadingName[] = "Enable lazy frame loading";
646const char kEnableLazyFrameLoadingDescription[] =
647 "Defers the loading of certain cross-origin frames until the page is "
648 "scrolled down near them.";
649
rajendrant793ff512018-08-10 17:07:59650const char kEnableLazyImageLoadingName[] = "Enable lazy image loading";
651const char kEnableLazyImageLoadingDescription[] =
652 "Defers the loading of images until the page is scrolled down near them.";
653
Sidney San Martín9375b892017-09-09 00:29:54654const char kEnableMacMaterialDesignDownloadShelfName[] =
655 "Enable Material Design download shelf";
656
657const char kEnableMacMaterialDesignDownloadShelfDescription[] =
658 "If enabled, the download shelf uses Material Design.";
659
Becca Hughesac86cd442019-01-09 23:49:54660const char kEnableMediaSessionServiceName[] = "Media Session Service";
661const char kEnableMediaSessionServiceDescription[] =
662 "Enables the media session mojo service and internal media session "
663 "support.";
664
Anton Urusov47cd4932017-09-19 14:41:41665const char kEnablePolicyToolName[] = "Enable policy management page";
666const char kEnablePolicyToolDescription[] =
667 "If enabled, the chrome://policy-tool URL loads a page for managing "
668 "policies.";
669
Weidong Guof1e5a892018-01-06 02:26:39670const char kDisableMultiMirroringName[] =
Weidong Guo7dfd1482017-11-08 05:56:28671 "Display mirroring across multiple displays.";
Weidong Guof1e5a892018-01-06 02:26:39672const char kDisableMultiMirroringDescription[] =
673 "Disable Display mirroring across multiple displays.";
Weidong Guo7dfd1482017-11-08 05:56:28674
Brett Wilsonf27ff602017-07-07 22:28:47675const char kEnableNavigationTracingName[] = "Enable navigation tracing";
676const char kEnableNavigationTracingDescription[] =
677 "This is to be used in conjunction with the trace-upload-url flag. "
678 "WARNING: When enabled, Chrome will record performance data for every "
679 "navigation and upload it to the URL specified by the trace-upload-url "
680 "flag. The trace may include personally identifiable information (PII) "
681 "such as the titles and URLs of websites you visit.";
682
Bernhard Bauer5533f9912017-11-06 17:56:02683const char kEnableNetworkLoggingToFileName[] = "Enable network logging to file";
684const char kEnableNetworkLoggingToFileDescription[] =
685 "Enables network logging to a file named netlog.json in the user data "
686 "directory. The file can be imported into chrome://net-internals.";
687
Brett Wilsonf27ff602017-07-07 22:28:47688const char kEnableNetworkServiceName[] = "Enable network service";
689const char kEnableNetworkServiceDescription[] =
690 "Enables the network service, which makes network requests through a "
John Abd-El-Malek225b04d2018-09-07 22:41:40691 "separate process.";
Brett Wilsonf27ff602017-07-07 22:28:47692
John Abd-El-Malek8067cc02017-12-04 23:23:20693const char kEnableNetworkServiceInProcessName[] =
694 "Runs network service in-process";
695const char kEnableNetworkServiceInProcessDescription[] =
696 "Runs the network service in the browser process.";
697
Ahmed Fakhry2fd8fc82017-07-28 16:31:12698const char kEnableNightLightName[] = "Enable Night Light";
699const char kEnableNightLightDescription[] =
700 "Enable the Night Light feature which controls the color temperature of "
701 "the screen.";
702
Tetsui Ohkuboc3eb87f72018-07-20 02:22:28703const char kEnableNotificationScrollBarName[] =
704 "Enable notification list scroll bar";
705const char kEnableNotificationScrollBarDescription[] =
706 "Enable the scroll bar of the notification list in Unified System Tray.";
707
Mitsuru Otsukae8304de2018-10-29 02:14:36708const char kEnableNotificationExpansionAnimationName[] =
709 "Enable notification expansion animations";
710const char kEnableNotificationExpansionAnimationDescription[] =
711 "Enable notification animations whenever the expansion state is toggled.";
712
xlou8b56f672018-02-09 23:34:30713const char kEnableNupPrintingName[] = "Enable N-up printing";
714const char kEnableNupPrintingDescription[] =
715 "Enable N-up printing in the print preview panel.";
716
Sophie Chang117a3b22017-10-24 22:25:36717const char kEnableOptimizationHintsName[] = "Optimization Hints";
718const char kEnableOptimizationHintsDescription[] =
Sophie Chang5454ce82018-07-16 17:44:50719 "Enable the Optimization Hints feature which incorporates server hints "
Sophie Chang117a3b22017-10-24 22:25:36720 "into decisions for what optimizations to perform on some pages on slow "
721 "networks.";
722
Takashi Toyoshima2e01e692018-11-16 03:23:27723const char kEnableOutOfBlinkCorsName[] = "Out of blink CORS";
724const char kEnableOutOfBlinkCorsDescription[] =
Yutaka Hirano98be3272017-08-07 17:55:39725 "CORS handling logic is moved out of blink.";
726
Chris Halle952239e2018-11-06 06:49:52727const char kExperimentalAccessibilityFeaturesName[] =
728 "Experimental accessibility features";
729const char kExperimentalAccessibilityFeaturesDescription[] =
730 "Enable additional accessibility features in the Settings page.";
731
Katie D652135c2018-11-27 18:30:13732const char kExperimentalAccessibilityAutoclickName[] =
733 "Experimental automatic click features";
734const char kExperimentalAccessibilityAutoclickDescription[] =
735 "Enable additional features for automatic clicks.";
736
Katie D0c31c5062019-01-02 18:12:35737const char kExperimentalAccessibilityLabelsName[] =
738 "Experimental accessibility image label features";
739const char kExperimentalAccessibilityLabelsDescription[] =
740 "Enable additional features for image labels for accessibility.";
741
Chris Hall4a4225f62019-01-18 03:07:16742const char kExperimentalAccessibilityLanguageDetectionName[] =
743 "Experimental accessibility language detection";
744const char kExperimentalAccessibilityLanguageDetectionDescription[] =
745 "Enable language detection for in-page content which is then exposed to "
746 "accessiblity technologies such as screen readers.";
747
Anastasia Helfinsteinafecc68c2018-11-26 19:20:17748const char kExperimentalAccessibilitySwitchAccessName[] =
749 "Experimental feature Switch Access";
750const char kExperimentalAccessibilitySwitchAccessDescription[] =
751 "Add a setting to enable the prototype of Switch Access";
752
kylechar7051c092018-02-05 20:31:39753const char kVizDisplayCompositorName[] = "Viz Display Compositor (OOP-D)";
754const char kVizDisplayCompositorDescription[] =
755 "If enabled, the display compositor runs as part of the viz service in the"
756 "GPU process.";
757
Ria Jiang6a129b982018-03-01 18:30:40758const char kVizHitTestDrawQuadName[] = "Viz Hit-test Draw-quad version";
759const char kVizHitTestDrawQuadDescription[] =
760 "If enabled, event targeting uses the new viz-assisted hit-testing logic, "
761 "with hit-test data computed from the CompositorFrame.";
762
Erik Chen49bbfa22017-08-18 08:49:56763const char kEnableOutOfProcessHeapProfilingName[] =
Albert J. Wong174174762018-01-18 23:50:23764 "Out of process heap profiling start mode.";
Erik Chen49bbfa22017-08-18 08:49:56765const char kEnableOutOfProcessHeapProfilingDescription[] =
766 "Creates a profiling service that records stacktraces for all live, "
erikchen94aca892018-01-18 00:21:19767 "malloced objects. Heap dumps can be obtained at chrome://tracing "
768 "[category:memory-infra] and chrome://memory-internals. This setting "
769 "controls which processes are profiled. As long as this setting is not "
770 "disabled, users can start profiling any given process in "
771 "chrome://memory-internals.";
772const char kEnableOutOfProcessHeapProfilingModeMinimal[] = "Browser and GPU";
773const char kEnableOutOfProcessHeapProfilingModeAll[] = "All processes";
774const char kEnableOutOfProcessHeapProfilingModeAllRenderers[] = "All renderers";
775const char kEnableOutOfProcessHeapProfilingModeBrowser[] = "Only browser";
776const char kEnableOutOfProcessHeapProfilingModeGpu[] = "Only GPU.";
erikchen0a5dd692017-12-12 00:53:10777const char kEnableOutOfProcessHeapProfilingModeManual[] =
erikchen94aca892018-01-18 00:21:19778 "None by default. Visit chrome://memory-internals to choose which "
779 "processes to profile.";
Albert J. Wongbd5bd902017-11-09 19:56:15780const char kEnableOutOfProcessHeapProfilingModeRendererSampling[] =
781 "Profile a random sampling of renderer processes, ensuring only one is "
782 "ever profiled at a time.";
erikchen94aca892018-01-18 00:21:19783
Erik Chen8bb76b52017-12-06 19:06:25784const char kOutOfProcessHeapProfilingKeepSmallAllocations[] =
erikchen94aca892018-01-18 00:21:19785 "Emit small allocations in memlog heap dumps.";
Erik Chen8bb76b52017-12-06 19:06:25786const char kOutOfProcessHeapProfilingKeepSmallAllocationsDescription[] =
787 "By default, small allocations are pruned from the heap dump. This reduces "
788 "the size of the compressed trace by 100x. If pruning is disabled, the "
789 "chrome://tracing UI may be unable to take or load the trace. Save the "
790 "trace directly using chrome://memory-internals, and use other mechanisms "
791 "[e.g. diff_heap_profiler.py] to examine the trace. Note that "
792 "automatically uploaded traces will always be pruned. This only affects "
793 "manually taken memory-infra traces.";
Erik Chen49bbfa22017-08-18 08:49:56794
erikchen8bc20d82018-02-14 03:21:51795const char kOutOfProcessHeapProfilingSampling[] = "Sample memlog allocations";
796const char kOutOfProcessHeapProfilingSamplingDescription[] =
797 "Use a poisson process to sample allocations. Defaults to a sample rate of "
erikchen99bfce02018-02-14 20:29:22798 "10000. This results in low noise for large and/or frequent allocations ["
799 "[size * frequency >> 10000]. This means that aggregate numbers [e.g. "
800 "total size of malloc-ed objects] and large and/or frequent allocations "
801 "can be trusted with high fidelity.";
erikchen8bc20d82018-02-14 03:21:51802
Erik Chen3303fd0232018-01-11 20:29:05803const char kOOPHPStackModeName[] =
804 "The type of stack to record for memlog heap dumps";
805const char kOOPHPStackModeDescription[] =
erikchen94aca892018-01-18 00:21:19806 "By default, memlog heap dumps record native stacks, which requires a "
807 "post-processing step to symbolize. Requires a custom build with frame "
erikchen011ad3f2018-01-26 17:54:55808 "pointers to work on Android. Native with thread names will add the thread "
809 "name as the first frame of each native stack. It's also possible to "
810 "record a pseudo stack using trace events as identifiers. It's also "
811 "possible to do a mix of both.";
erikchen94aca892018-01-18 00:21:19812const char kOOPHPStackModeMixed[] = "Mixed";
813const char kOOPHPStackModeNative[] = "Native";
erikchen011ad3f2018-01-26 17:54:55814const char kOOPHPStackModeNativeWithThreadNames[] = "Native with thread names";
erikchen94aca892018-01-18 00:21:19815const char kOOPHPStackModePseudo[] = "Trace events";
Erik Chen3303fd0232018-01-11 20:29:05816
François Beaufort2e75f492018-02-08 20:44:46817const char kEnablePictureInPictureName[] = "Enable Picture-in-Picture.";
Brett Wilsonf27ff602017-07-07 22:28:47818const char kEnablePictureInPictureDescription[] =
François Beaufort106802c2018-12-18 17:46:13819 "Show Picture-in-Picture in browser context menu and video native "
820 "controls. The #enable-surfaces-for-videos flag must be enabled as well "
821 "to use it.";
Brett Wilsonf27ff602017-07-07 22:28:47822
F#m59d036e2017-09-13 07:22:17823const char kEnablePixelCanvasRecordingName[] = "Enable pixel canvas recording";
824const char kEnablePixelCanvasRecordingDescription[] =
825 "Pixel canvas recording allows the compositor to raster contents aligned "
826 "with the pixel and improves text rendering. This should be enabled when a "
827 "device is using fractional scale factor.";
828
Ella Gebee81c92018-08-14 15:51:09829const char kEnableResamplingInputEventsName[] =
830 "Enable resampling input events";
831const char kEnableResamplingInputEventsDescription[] =
832 "Predicts mouse and touch inputs position at rAF time based on previous "
833 "input";
834const char kEnableResamplingScrollEventsName[] =
835 "Enable resampling scroll events";
836const char kEnableResamplingScrollEventsDescription[] =
837 "Predicts the scroll amount at vsync time based on previous input";
838
Doug Arnettaa0bf202018-08-27 19:42:11839const char kEnableResourceLoadingHintsName[] = "Enable resource loading hints";
840const char kEnableResourceLoadingHintsDescription[] =
841 "Enable using server-provided resource loading hints to provide a preview "
842 "over slow network connections.";
843
Mikel Astizb4786aa2018-11-09 22:12:09844const char kEnableSyncPseudoUSSAppListName[] =
845 "Enable pseudo-USS for APP_LIST sync.";
846const char kEnableSyncPseudoUSSAppListDescription[] =
847 "Enable new USS-based codepath for sync datatype APP_LIST.";
848
849const char kEnableSyncPseudoUSSAppsName[] = "Enable pseudo-USS for APPS sync.";
850const char kEnableSyncPseudoUSSAppsDescription[] =
851 "Enable new USS-based codepath for sync datatype APPS.";
852
853const char kEnableSyncPseudoUSSDictionaryName[] =
854 "Enable pseudo-USS for DICTIONARY sync.";
855const char kEnableSyncPseudoUSSDictionaryDescription[] =
856 "Enable new USS-based codepath for sync datatype DICTIONARY.";
857
858const char kEnableSyncPseudoUSSExtensionSettingsName[] =
859 "Enable pseudo-USS for EXTENSION_SETTINGS and APP_SETTINGS sync.";
860const char kEnableSyncPseudoUSSExtensionSettingsDescription[] =
861 "Enable new USS-based codepath for sync datatypes EXTENSION_SETTINGS and "
862 "APP_SETTINGS.";
863
864const char kEnableSyncPseudoUSSExtensionsName[] =
865 "Enable pseudo-USS for EXTENSIONS sync.";
866const char kEnableSyncPseudoUSSExtensionsDescription[] =
867 "Enable new USS-based codepath for sync datatype EXTENSIONS.";
868
869const char kEnableSyncPseudoUSSFaviconsName[] =
870 "Enable pseudo-USS for favicon sync.";
871const char kEnableSyncPseudoUSSFaviconsDescription[] =
872 "Enable new USS-based codepath for sync datatypes FAVICON_IMAGES and "
873 "FAVICON_TRACKING.";
874
875const char kEnableSyncPseudoUSSHistoryDeleteDirectivesName[] =
876 "Enable pseudo-USS for HISTORY_DELETE_DIRECTIVES sync.";
877const char kEnableSyncPseudoUSSHistoryDeleteDirectivesDescription[] =
878 "Enable new USS-based codepath for sync datatype "
879 "HISTORY_DELETE_DIRECTIVES.";
880
881const char kEnableSyncPseudoUSSPasswordsName[] =
882 "Enable pseudo-USS for PASSWORDS sync.";
883const char kEnableSyncPseudoUSSPasswordsDescription[] =
884 "Enable new USS-based codepath for sync datatype PASSWORDS (pseudo-USS).";
885
886const char kEnableSyncPseudoUSSPreferencesName[] =
887 "Enable pseudo-USS for PREFERENCES sync.";
888const char kEnableSyncPseudoUSSPreferencesDescription[] =
889 "Enable new USS-based codepath for sync datatype PREFERENCES.";
890
891const char kEnableSyncPseudoUSSPriorityPreferencesName[] =
892 "Enable pseudo-USS for PRIORITY_PREFERENCES sync.";
893const char kEnableSyncPseudoUSSPriorityPreferencesDescription[] =
894 "Enable new USS-based codepath for sync datatype PRIORITY_PREFERENCES.";
895
896const char kEnableSyncPseudoUSSSearchEnginesName[] =
897 "Enable pseudo-USS for SEARCH_ENGINES sync.";
898const char kEnableSyncPseudoUSSSearchEnginesDescription[] =
899 "Enable new USS-based codepath for sync datatype SEARCH_ENGINES.";
900
901const char kEnableSyncPseudoUSSSupervisedUsersName[] =
902 "Enable pseudo-USS for supervised users sync.";
903const char kEnableSyncPseudoUSSSupervisedUsersDescription[] =
904 "Enable new USS-based codepath for sync datatypes SUPERVISED_USER_SETTINGS "
905 "and SUPERVISED_USER_WHITELISTS.";
906
907const char kEnableSyncPseudoUSSThemesName[] =
908 "Enable pseudo-USS for THEMES sync.";
909const char kEnableSyncPseudoUSSThemesDescription[] =
910 "Enable new USS-based codepath for sync datatype THEMES.";
911
Mohamed Amir Yosef0178fa892018-07-23 17:43:52912const char kEnableSyncUSSBookmarksName[] = "Enable USS for bookmarks sync";
913const char kEnableSyncUSSBookmarksDescription[] =
914 "Enables the new, experimental implementation of bookmark sync";
915
Mikel Astiz38837f82018-04-24 22:23:23916const char kEnableSyncUSSSessionsName[] = "Enable USS for sessions sync";
917const char kEnableSyncUSSSessionsDescription[] =
918 "Enables the new, experimental implementation of session sync (aka tab "
919 "sync).";
920
Brett Wilsonf27ff602017-07-07 22:28:47921const char kEnableUseZoomForDsfName[] =
922 "Use Blink's zoom for device scale factor.";
923const char kEnableUseZoomForDsfDescription[] =
924 "If enabled, Blink uses its zooming mechanism to scale content for device "
925 "scale factor.";
926const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
927const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
928const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
929
Patrick Noland8ee016e2018-01-24 11:44:53930const char kEnableScrollAnchorSerializationName[] =
931 "Scroll Anchor Serialization";
932const char kEnableScrollAnchorSerializationDescription[] =
933 "Save the scroll anchor and use it to restore the scroll position when "
934 "navigating.";
935
Brad Nelson5cd500e2018-01-04 00:50:19936const char kEnableSharedArrayBufferName[] =
937 "Experimental enabled SharedArrayBuffer support in JavaScript.";
938const char kEnableSharedArrayBufferDescription[] =
939 "Enable SharedArrayBuffer support in JavaScript.";
940
Brett Wilsonf27ff602017-07-07 22:28:47941const char kEnableWasmName[] = "WebAssembly structured cloning support.";
942const char kEnableWasmDescription[] =
943 "Enable web pages to use WebAssembly structured cloning.";
944
Kim Paulhamusae635a32018-06-27 07:30:54945const char kEnableWebAuthenticationAPIName[] = "Web Authentication API";
946const char kEnableWebAuthenticationAPIDescription[] =
Kim Paulhamus92431372018-07-20 02:25:47947 "Enable Web Authentication API support.";
948
Lei Zhang0ca70ea2018-09-07 17:51:01949const char kEnableWebAuthenticationCableSupportName[] =
Kim Paulhamus92431372018-07-20 02:25:47950 "Web Authentication caBLE support";
Lei Zhang0ca70ea2018-09-07 17:51:01951const char kEnableWebAuthenticationCableSupportDescription[] =
Kim Paulhamus92431372018-07-20 02:25:47952 "Enable the cloud-assisted pairingless BLE protocol for use with "
953 "the Web Authentication API.";
Kim Paulhamusae635a32018-06-27 07:30:54954
Brett Wilsonf27ff602017-07-07 22:28:47955const char kEnableImageCaptureAPIName[] = "Image Capture API";
956const char kEnableImageCaptureAPIDescription[] =
957 "Enables the Web Platform Image Capture API: takePhoto(), "
958 "getPhotoCapabilities(), etc.";
959
Ramin Halavatic158b182018-10-18 14:04:54960const char kEnableIncognitoWindowCounterName[] = "Incognito Window Counter";
961const char kEnableIncognitoWindowCounterDescription[] =
962 "Shows the count of Incognito windows next to the Incognito icon on the "
963 "toolbar.";
964
Brett Wilsonf27ff602017-07-07 22:28:47965const char kEnableZeroSuggestRedirectToChromeName[] =
966 "Experimental contextual omnibox suggestion";
967const char kEnableZeroSuggestRedirectToChromeDescription[] =
968 "Change omnibox contextual suggestions to an experimental source. Note "
969 "that this is not an on/off switch for contextual omnibox and it only "
970 "applies to suggestions provided before the user starts typing a URL or a "
971 "search query (i.e. zero suggest).";
972
Clemens Hammacher0c8a15a2018-04-27 13:45:32973const char kEnableWasmBaselineName[] = "WebAssembly baseline compiler";
974const char kEnableWasmBaselineDescription[] =
975 "Enables WebAssembly baseline compilation and tier up.";
976
Ben Smith24c1e5c2018-06-20 01:09:02977const char kEnableWasmThreadsName[] = "WebAssembly threads support.";
978const char kEnableWasmThreadsDescription[] =
979 "Enables support for the WebAssembly Threads proposal. Implies "
980 "#shared-array-buffer and #enable-webassembly.";
981
Brett Wilsonf27ff602017-07-07 22:28:47982const char kExpensiveBackgroundTimerThrottlingName[] =
983 "Throttle expensive background timers";
984const char kExpensiveBackgroundTimerThrottlingDescription[] =
985 "Enables intervention to limit CPU usage of background timers to 1%.";
986
987const char kExperimentalAppBannersName[] = "Experimental app banners";
988const char kExperimentalAppBannersDescription[] =
Matt Giucad4870432017-11-24 01:04:38989 "Enables a new experimental app banner flow and UI. Implies "
990 "#enable-app-banners.";
Brett Wilsonf27ff602017-07-07 22:28:47991
992const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
993const char kExperimentalCanvasFeaturesDescription[] =
994 "Enables the use of experimental canvas features which are still in "
995 "development.";
996
997const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
998const char kExperimentalExtensionApisDescription[] =
999 "Enables experimental extension APIs. Note that the extension gallery "
1000 "doesn't allow you to upload extensions that use experimental APIs.";
1001
Ian Clelland37a985d2018-05-04 02:43:131002const char kExperimentalProductivityFeaturesName[] =
1003 "Experimental Productivity Features";
1004const char kExperimentalProductivityFeaturesDescription[] =
1005 "Enable support for experimental developer productivity features, such as "
1006 "Layered APIs and policies for avoiding slow rendering.";
1007
Brett Wilsonf27ff602017-07-07 22:28:471008const char kExperimentalSecurityFeaturesName[] =
1009 "Potentially annoying security features";
1010const char kExperimentalSecurityFeaturesDescription[] =
1011 "Enables several security features that will likely break one or more "
1012 "pages that you visit on a daily basis. Strict mixed content checking, for "
1013 "example. And locking powerful features to secure contexts. This flag will "
1014 "probably annoy you.";
1015
1016const char kExperimentalWebPlatformFeaturesName[] =
1017 "Experimental Web Platform features";
1018const char kExperimentalWebPlatformFeaturesDescription[] =
1019 "Enables experimental Web Platform features that are in development.";
1020
1021const char kExtensionContentVerificationName[] =
1022 "Extension Content Verification";
1023const char kExtensionContentVerificationDescription[] =
1024 "This flag can be used to turn on verification that the contents of the "
1025 "files on disk for extensions from the webstore match what they're "
1026 "expected to be. This can be used to turn on this feature if it would not "
1027 "otherwise have been turned on, but cannot be used to turn it off (because "
1028 "this setting can be tampered with by malware).";
1029const char kExtensionContentVerificationBootstrap[] =
1030 "Bootstrap (get expected hashes, but do not enforce them)";
1031const char kExtensionContentVerificationEnforce[] =
1032 "Enforce (try to get hashes, and enforce them if successful)";
1033const char kExtensionContentVerificationEnforceStrict[] =
1034 "Enforce strict (hard fail if we can't get hashes)";
1035
1036const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
1037const char kExtensionsOnChromeUrlsDescription[] =
1038 "Enables running extensions on chrome:// URLs, where extensions explicitly "
1039 "request this permission.";
galinapae72e152017-05-12 13:12:281040
Brett Wilsonecb80982017-07-12 20:34:511041const char kFeaturePolicyName[] = "Feature Policy";
1042const char kFeaturePolicyDescription[] =
1043 "Enables granting and removing access to features through the "
1044 "Feature-Policy HTTP header.";
vabr0215a8e2017-03-28 12:47:341045
Brett Wilsonecb80982017-07-12 20:34:511046const char kFontCacheScalingName[] = "FontCache scaling";
1047const char kFontCacheScalingDescription[] =
1048 "Reuse a cached font in the renderer to serve different sizes of font for "
1049 "faster layout.";
1050
1051const char kForceEffectiveConnectionTypeName[] =
1052 "Override effective connection type";
1053const char kForceEffectiveConnectionTypeDescription[] =
1054 "Overrides the effective connection type of the current connection "
Thanh Lea98f12f2017-12-18 19:35:301055 "returned by the network quality estimator. Slow 2G on Cellular returns "
1056 "Slow 2G when connected to a cellular network, and the actual estimate "
1057 "effective connection type when not on a cellular network. Previews are "
1058 "usually served on 2G networks.";
Brett Wilsonecb80982017-07-12 20:34:511059const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
1060const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
1061const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
Thanh Lea98f12f2017-12-18 19:35:301062const char kEffectiveConnectionTypeSlow2GOnCellularDescription[] =
1063 "Slow 2G On Cellular";
Brett Wilsonecb80982017-07-12 20:34:511064const char kEffectiveConnectionType2GDescription[] = "2G";
1065const char kEffectiveConnectionType3GDescription[] = "3G";
1066const char kEffectiveConnectionType4GDescription[] = "4G";
1067
1068const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
1069const char kFillOnAccountSelectDescription[] =
1070 "Filling of passwords when an account is explicitly selected by the user "
1071 "rather than autofilling credentials on page load.";
1072
Brett Wilsonecb80982017-07-12 20:34:511073const char kForceTextDirectionName[] = "Force text direction";
1074const char kForceTextDirectionDescription[] =
1075 "Explicitly force the per-character directionality of UI text to "
1076 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
1077 "direction of the character language.";
1078const char kForceDirectionLtr[] = "Left-to-right";
1079const char kForceDirectionRtl[] = "Right-to-left";
1080
1081const char kForceUiDirectionName[] = "Force UI direction";
1082const char kForceUiDirectionDescription[] =
1083 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
1084 "mode, overriding the default direction of the UI language.";
1085
1086const char kFramebustingName[] =
1087 "Framebusting requires same-origin or a user gesture";
1088const char kFramebustingDescription[] =
1089 "Don't permit an iframe to navigate the top level browsing context unless "
1090 "they are same-origin or the iframe is processing a user gesture.";
1091
Matt Reynolds043469f2018-05-01 22:56:581092const char kGamepadVibrationName[] = "Gamepad Vibration";
1093const char kGamepadVibrationDescription[] =
1094 "Enables haptic vibration effects on supported gamepads.";
Brett Wilsonecb80982017-07-12 20:34:511095
Brett Wilsonecb80982017-07-12 20:34:511096const char kGpuRasterizationName[] = "GPU rasterization";
1097const char kGpuRasterizationDescription[] =
1098 "Use GPU to rasterize web content. Requires impl-side painting.";
Brett Wilson7b44537e2017-08-18 01:38:281099const char kForceGpuRasterization[] = "Force-enabled for all layers";
Brett Wilsonecb80982017-07-12 20:34:511100
Ioana Pandele1ed7ef72018-11-21 15:22:031101const char kGooglePasswordManagerName[] = "Google Password Manager UI";
1102const char kGooglePasswordManagerDescription[] =
1103 "Enables access to the Google Password Manager UI from Chrome.";
1104
Brett Wilsonecb80982017-07-12 20:34:511105const char kGoogleProfileInfoName[] = "Google profile name and icon";
1106const char kGoogleProfileInfoDescription[] =
1107 "Enables using Google information to populate the profile name and icon in "
1108 "the avatar menu.";
1109
Takumi Fujimotofb71e332018-03-31 14:04:081110const char kViewsCastDialogName[] = "Views Cast dialog";
1111const char kViewsCastDialogDescription[] =
Takumi Fujimoto541e5e22018-05-30 00:46:311112 "Replace the WebUI Cast dialog with a Views toolkit dialog. This requires "
Takumi Fujimoto28351acc2018-05-31 17:19:531113 "#views-browser-windows on Mac. This feature is activated if either this "
Robert Liao3ecf97c2018-06-05 01:24:541114 "flag or #upcoming-ui-features is enabled";
Takumi Fujimotofb71e332018-03-31 14:04:081115
Gabrielle Paladoaebf7ca2019-01-16 07:07:061116const char kHandwritingGestureName[] = "Handwriting Gestures";
1117const char kHandwritingGestureDescription[] =
1118 "Enables handwriting gestures within the virtual keyboard";
1119
Tommy Steimel1aadd7b2019-01-18 19:39:421120const char kHardwareMediaKeyHandling[] = "Hardware Media Key Handling";
1121const char kHardwareMediaKeyHandlingDescription[] =
1122 "Enables using media keys to control the active media session. This "
1123 "requires MediaSessionService to be enabled too";
1124
Manu Cornet4a908de2018-04-09 04:32:271125const char kHideActiveAppsFromShelfName[] =
1126 "Hide running apps (that are not pinned) from the shelf";
1127const char kHideActiveAppsFromShelfDescription[] =
1128 "Save space in the shelf by hiding running apps (that are not pinned).";
Manu Cornete5f855b2018-03-13 03:35:251129
Brett Wilsonecb80982017-07-12 20:34:511130const char kHistoryRequiresUserGestureName[] =
1131 "New history entries require a user gesture.";
1132const char kHistoryRequiresUserGestureDescription[] =
1133 "Require a user gesture to add a history entry.";
1134const char kHyperlinkAuditingName[] = "Hyperlink auditing";
1135const char kHyperlinkAuditingDescription[] = "Sends hyperlink auditing pings.";
1136
Ryan Landay4242dbc22018-04-04 01:47:331137const char kHorizontalTabSwitcherAndroidName[] =
1138 "Enable horizontal tab switcher";
1139const char kHorizontalTabSwitcherAndroidDescription[] =
1140 "Changes the layout of the Android tab switcher so tabs scroll "
1141 "horizontally instead of vertically.";
1142
Matt Simmons2048b2a2018-12-20 20:12:561143const char kTabSwitcherOnReturnName[] = "Enable tab switcher on return";
1144const char kTabSwitcherOnReturnDescription[] =
1145 "Enable tab switcher on return after specified time has elapsed";
1146
Brett Wilsonecb80982017-07-12 20:34:511147const char kHostedAppQuitNotificationName[] =
1148 "Quit notification for hosted apps";
1149const char kHostedAppQuitNotificationDescription[] =
1150 "Display a notification when quitting Chrome if hosted apps are currently "
1151 "running.";
1152
1153const char kHostedAppShimCreationName[] =
1154 "Creation of app shims for hosted apps on Mac";
1155const char kHostedAppShimCreationDescription[] =
1156 "Create app shims on Mac when creating a hosted app.";
1157
Ana-Cosmina Popescuda3bcbe2017-09-22 18:24:481158const char kHtmlBasedUsernameDetectorName[] = "HTML-based username detector";
1159const char kHtmlBasedUsernameDetectorDescription[] =
1160 "Use HTML-based username detector for the password manager.";
1161
Brett Wilsonecb80982017-07-12 20:34:511162const char kIconNtpName[] = "Large icons on the New Tab page";
1163const char kIconNtpDescription[] =
1164 "Enable the experimental New Tab page using large icons.";
1165
1166const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
1167const char kIgnoreGpuBlacklistDescription[] =
1168 "Overrides the built-in software rendering list and enables "
1169 "GPU-acceleration on unsupported system configurations.";
1170
Ryan Sturm8c3dbc92018-06-26 19:22:371171const char kIgnorePreviewsBlacklistName[] = "Ignore Previews Blocklist";
Thanh Le5f090efa52017-12-27 22:39:441172const char kIgnorePreviewsBlacklistDescription[] =
Ryan Sturm8c3dbc92018-06-26 19:22:371173 "Ignore decisions made by the PreviewsBlockList";
Thanh Le5f090efa52017-12-27 22:39:441174
Alexandre Frechetted3e1b542018-12-13 14:40:501175const char kImprovedGeoLanguageDataName[] = "Improved Geo-language Data";
1176const char kImprovedGeoLanguageDataDescription[] =
1177 "Makes the GeoLanguageModel use higher quality, more refined ULP "
1178 "geo-language data.";
1179
Brett Wilsonecb80982017-07-12 20:34:511180const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
1181const char kInProductHelpDemoModeChoiceDescription[] =
1182 "Selects the In-Product Help demo mode.";
1183
1184const char kJavascriptHarmonyName[] = "Experimental JavaScript";
1185const char kJavascriptHarmonyDescription[] =
1186 "Enable web pages to use experimental JavaScript features.";
1187
1188const char kJavascriptHarmonyShippingName[] =
1189 "Latest stable JavaScript features";
1190const char kJavascriptHarmonyShippingDescription[] =
1191 "Some web pages use legacy or non-standard JavaScript extensions that may "
1192 "conflict with the latest JavaScript features. This flag allows disabling "
1193 "support of those features for compatibility with such pages.";
1194
gogeraldfd7675d2018-06-19 22:57:351195const char kJustInTimeServiceWorkerPaymentAppName[] =
1196 "Just-in-time service worker payment app";
1197const char kJustInTimeServiceWorkerPaymentAppDescription[] =
1198 "Allow crawling just-in-time service worker payment app when there is no "
1199 "installed service worker payment app for a payment request.";
1200
Yutaka Hiranof7f2f632017-09-06 10:40:081201const char kKeepAliveRendererForKeepaliveRequestsName[] =
1202 "Keep a renderer alive for keepalive fetch requests";
1203const char kKeepAliveRendererForKeepaliveRequestsDescription[] =
1204 "Keep a render process alive when the process has a pending fetch request "
1205 "with `keepalive' specified.";
1206
Joe Downing095fd6d2018-02-01 18:40:361207const char kKeyboardLockApiName[] = "Experimental keyboard lock API.";
1208const char kKeyboardLockApiDescription[] =
1209 "Enables websites to use the new keyboard{Lock|Unlock} API to intercept "
1210 "specific key events and have them routed directly to the webpage when in "
1211 "fullscreen mode. Implies #experimental-keyboard-lock-ui.";
1212
Brett Wilsonecb80982017-07-12 20:34:511213const char kLcdTextName[] = "LCD text antialiasing";
1214const char kLcdTextDescription[] =
1215 "If disabled, text is rendered with grayscale antialiasing instead of LCD "
1216 "(subpixel) when doing accelerated compositing.";
1217
Matt Giucac399982f2017-10-06 07:51:291218const char kLeftToRightUrlsName[] =
1219 "Render bidirectional URLs from left to right";
1220const char kLeftToRightUrlsDescription[] =
1221 "An experimental Bidi URL rendering algorithm where the URL components are "
1222 "always shown in order from left to right, regardless of any RTL "
1223 "characters. (The contents of each component are still rendered with the "
1224 "normal Bidi algorithm.)";
1225
Brett Wilsonecb80982017-07-12 20:34:511226const char kLoadMediaRouterComponentExtensionName[] =
1227 "Load Media Router Component Extension";
1228const char kLoadMediaRouterComponentExtensionDescription[] =
1229 "Loads the Media Router component extension at startup.";
1230
Mustafa Emre Acer137dc8b2018-08-29 20:38:131231const char kLookalikeUrlNavigationSuggestionsName[] =
1232 "Navigation suggestions for lookalike URLs";
1233const char kLookalikeUrlNavigationSuggestionsDescription[] =
1234 "Enable navigation suggestions for URLs that are visually similar to "
1235 "popular domains or to domains with a site engagement score.";
1236
Brett Wilsonecb80982017-07-12 20:34:511237const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
1238const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
Brett Wilsonecb80982017-07-12 20:34:511239
Lei Zhang2eca9082017-10-17 20:42:501240const char kMaterialDesignIncognitoNTPName[] = "Material Design Incognito NTP.";
1241const char kMaterialDesignIncognitoNTPDescription[] =
Brett Wilsonecb80982017-07-12 20:34:511242 "If enabled, the Incognito New Tab page uses the new material design with "
1243 "a better readable text.";
1244
spqchanb87755692018-04-05 00:46:091245const char kMediaRouterCastAllowAllIPsName[] =
1246 "Connect to Cast devices on all IP addresses";
1247const char kMediaRouterCastAllowAllIPsDescription[] =
1248 "Have the Media Router connect to Cast devices on all IP addresses, not "
Nick Harperd30507ca2018-08-16 20:24:311249 "just RFC1918/RFC4193 private addresses.";
spqchanb87755692018-04-05 00:46:091250
Brett Wilsonecb80982017-07-12 20:34:511251const char kMemoryCoordinatorName[] = "Memory coordinator";
1252const char kMemoryCoordinatorDescription[] =
1253 "Enable memory coordinator instead of memory pressure listeners.";
1254
1255const char kMessageCenterNewStyleNotificationName[] = "New style notification";
1256const char kMessageCenterNewStyleNotificationDescription[] =
1257 "Enables the experiment style of material-design notification";
1258
Brett Wilsonecb80982017-07-12 20:34:511259const char kMhtmlGeneratorOptionName[] = "MHTML Generation Option";
1260const char kMhtmlGeneratorOptionDescription[] =
1261 "Provides experimental options for MHTML file generator.";
1262const char kMhtmlSkipNostoreMain[] = "Skips no-store main frame.";
1263const char kMhtmlSkipNostoreAll[] = "Skips all no-store resources.";
1264
Brett Wilsonecb80982017-07-12 20:34:511265const char kNewAudioRenderingMixingStrategyName[] =
1266 "New audio rendering mixing strategy";
1267const char kNewAudioRenderingMixingStrategyDescription[] =
1268 "Use the new audio rendering mixing strategy.";
1269
1270const char kNewBookmarkAppsName[] = "The new bookmark app system";
1271const char kNewBookmarkAppsDescription[] =
1272 "Enables the new system for creating bookmark apps.";
1273
Vadym Doroshenkocd4ff782018-07-24 13:41:021274const char kNewPasswordFormParsingName[] =
1275 "New password form parsing for filling passwords";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241276const char kNewPasswordFormParsingDescription[] =
Vadym Doroshenkocd4ff782018-07-24 13:41:021277 "Replaces existing form parsing for filling in password manager with a new "
1278 "version, currently under development. WARNING: when enabled, Password "
1279 "Manager might stop working";
1280
1281const char kNewPasswordFormParsingForSavingName[] =
1282 "New password form parsing for saving passwords";
1283const char kNewPasswordFormParsingForSavingDescription[] =
1284 "Replaces existing form parsing for saving in password manager with a new "
1285 "version, currently under development. WARNING: when enabled, Password "
1286 "Manager might stop working";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241287
Brett Wilsonecb80982017-07-12 20:34:511288const char kNewRemotePlaybackPipelineName[] =
1289 "Enable the new remote playback pipeline.";
1290const char kNewRemotePlaybackPipelineDescription[] =
1291 "Enable the new pipeline for playing media element remotely via "
1292 "RemotePlayback API or native controls.";
CJ DiMeglio7b4a199f2017-11-30 01:26:501293const char kUseSurfaceLayerForVideoName[] =
1294 "Enable the use of SurfaceLayer objects for videos.";
1295const char kUseSurfaceLayerForVideoDescription[] =
1296 "Enable compositing onto a Surface instead of a VideoLayer "
1297 "for videos.";
Brett Wilsonecb80982017-07-12 20:34:511298
1299const char kNewUsbBackendName[] = "Enable new USB backend";
1300const char kNewUsbBackendDescription[] =
1301 "Enables the new experimental USB backend for Windows.";
vabr0215a8e2017-03-28 12:47:341302
Sonny Sasaka2d200432018-03-22 17:43:161303const char kNewblueName[] = "Newblue";
1304const char kNewblueDescription[] =
1305 "Enables the use of newblue Bluetooth daemon.";
1306
Peter Boström7df25c72018-12-12 06:40:191307const char kNewTabLoadingAnimation[] = "New tab-loading animation";
1308const char kNewTabLoadingAnimationDescription[] =
1309 "Enables a new look for the tab-loading animation.";
1310
Peter Kasting63097912018-06-30 02:09:031311const char kNewTabButtonPosition[] = "New tab button position";
1312const char kNewTabButtonPositionDescription[] =
1313 "Controls placement of the new tab button within the tabstrip.";
1314const char kNewTabButtonPositionOppositeCaption[] = "Opposite caption buttons";
1315const char kNewTabButtonPositionLeading[] = "Leading";
1316const char kNewTabButtonPositionAfterTabs[] = "After tabs";
1317const char kNewTabButtonPositionTrailing[] = "Trailing";
1318
Egor Pasko6fed3822018-05-30 10:33:141319const char kNostatePrefetchName[] = "NoState Prefetch";
vabr0215a8e2017-03-28 12:47:341320const char kNostatePrefetchDescription[] =
Egor Pasko6fed3822018-05-30 10:33:141321 R"*(If enabled, pre-downloads resources to improve page load speed.)*";
vabr0215a8e2017-03-28 12:47:341322
Alex Newcomerd7b0cc42018-05-25 22:58:481323const char kNotificationIndicatorName[] = "Notification Indicators";
1324const char kNotificationIndicatorDescription[] =
1325 "Enable notification indicators, which appear on app icons when a "
1326 "notification is active. This will also enable notifications in context "
1327 "menus.";
1328
Brett Wilsonecb80982017-07-12 20:34:511329const char kNotificationsNativeFlagName[] = "Enable native notifications.";
1330const char kNotificationsNativeFlagDescription[] =
1331 "Enable support for using the native notification toasts and notification "
1332 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:341333
Valeriya Sinevich972ac122018-09-05 07:33:191334const char kUseMultiloginEndpointName[] = "Use Multilogin endpoint.";
1335const char kUseMultiloginEndpointDescription[] =
1336 "Use Gaia OAuth multilogin for identity consistency.";
1337
Zentaro Kavanaghbad511c2017-10-18 22:29:001338#if defined(OS_POSIX)
1339const char kNtlmV2EnabledName[] = "Enable NTLMv2 Authentication";
1340const char kNtlmV2EnabledDescription[] =
1341 "Enable NTLMv2 HTTP Authentication. This disables NTLMv1 support.";
1342#endif
1343
Brett Wilsonecb80982017-07-12 20:34:511344const char kNumRasterThreadsName[] = "Number of raster threads";
1345const char kNumRasterThreadsDescription[] =
1346 "Specify the number of raster threads.";
1347const char kNumRasterThreadsOne[] = "1";
1348const char kNumRasterThreadsTwo[] = "2";
1349const char kNumRasterThreadsThree[] = "3";
1350const char kNumRasterThreadsFour[] = "4";
1351
1352const char kOfferStoreUnmaskedWalletCardsName[] =
1353 "Google Payments card saving checkbox";
1354const char kOfferStoreUnmaskedWalletCardsDescription[] =
1355 "Show the checkbox to offer local saving of a credit card downloaded from "
1356 "the server.";
1357
1358const char kOfflineAutoReloadName[] = "Offline Auto-Reload Mode";
1359const char kOfflineAutoReloadDescription[] =
1360 "Pages that fail to load while the browser is offline will be "
1361 "auto-reloaded when the browser is online again.";
1362
1363const char kOfflineAutoReloadVisibleOnlyName[] =
1364 "Only Auto-Reload Visible Tabs";
1365const char kOfflineAutoReloadVisibleOnlyDescription[] =
1366 "Pages that fail to load while the browser is offline will only be "
1367 "auto-reloaded if their tab is visible.";
1368
Brett Wilsonecb80982017-07-12 20:34:511369const char kOmniboxDisplayTitleForCurrentUrlName[] =
1370 "Include title for the current URL in the omnibox";
1371const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
1372 "In the event that the omnibox provides suggestions on-focus, the URL of "
1373 "the current page is provided as the first suggestion without a title. "
1374 "Enabling this flag causes the title to be displayed.";
1375
Tomasz Wiszkowskic87dff12019-01-15 02:57:511376const char kOmniboxNewAnswerLayoutName[] = "Omnibox new answer layout";
1377const char kOmniboxNewAnswerLayoutDescription[] =
1378 "Modernize omnibox answers using an enhanced layout with larger icons.";
1379
Benoit Lizeab08362c2017-07-19 14:50:541380const char kOmniboxSpareRendererName[] =
1381 "Start spare renderer on omnibox focus";
1382const char kOmniboxSpareRendererDescription[] =
1383 "When the omnibox is focused, start an empty spare renderer. This can "
1384 "speed up the load of the navigation from the omnibox.";
1385
Tommy C. Lie4194b732018-09-28 22:21:511386const char kOmniboxUIHideSteadyStateUrlSchemeName[] =
1387 "Omnibox UI Hide Steady-State URL Scheme";
1388const char kOmniboxUIHideSteadyStateUrlSchemeDescription[] =
1389 "In the omnibox, hide the scheme from steady state displayed URLs. It is "
Tommy C. Libef94ee02018-10-17 19:56:361390 "restored during editing.";
Tommy C. Lie4194b732018-09-28 22:21:511391
Tommy C. Lib20aec72018-11-19 21:38:231392const char kOmniboxUIOneClickUnelideName[] = "Omnibox UI One Click Unelide";
1393const char kOmniboxUIOneClickUnelideDescription[] =
1394 "In the omnibox, undo all unelisions with a single click or focus action.";
1395
Tommy C. Lie4194b732018-09-28 22:21:511396const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsName[] =
1397 "Omnibox UI Hide Steady-State URL Trivial Subdomains";
1398const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsDescription[] =
1399 "In the omnibox, hide trivial subdomains from steady state displayed URLs. "
Tommy C. Libef94ee02018-10-17 19:56:361400 "Hidden portions are restored during editing.";
1401
1402const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefName[] =
1403 "Omnibox UI Hide Steady-State URL Path, Query, and Ref";
1404const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefDescription[] =
1405 "In the omnibox, hide the path, query and ref from steady state displayed "
1406 "URLs. Hidden portions are restored during editing.";
Tommy C. Lid79d4402017-12-22 22:49:121407
Brett Wilsonecb80982017-07-12 20:34:511408const char kOmniboxUIMaxAutocompleteMatchesName[] =
1409 "Omnibox UI Max Autocomplete Matches";
1410
1411const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
1412 "Changes the maximum number of autocomplete matches displayed in the "
1413 "Omnibox UI.";
1414
Justin Donnelly65c9e8b2017-10-01 05:15:011415const char kOmniboxUISwapTitleAndUrlName[] = "Omnibox UI Swap Title and URL";
1416const char kOmniboxUISwapTitleAndUrlDescription[] =
1417 "In the omnibox dropdown, shows titles before URLs when both are "
1418 "available.";
1419
Troy Hildebrandtb32637ca2018-02-21 23:25:091420const char kOmniboxVoiceSearchAlwaysVisibleName[] =
1421 "Omnibox Voice Search Always Visible";
1422const char kOmniboxVoiceSearchAlwaysVisibleDescription[] =
1423 "Always displays voice search icon in focused omnibox as long as voice "
1424 "search is possible";
1425
Vadym Doroshenko6b8f64d2018-11-26 15:35:391426const char kOnlyNewPasswordFormParsingName[] =
1427 "Use only new password form parsing";
1428const char kOnlyNewPasswordFormParsingDescription[] =
1429 "The old password form parsing is disabled";
1430
Mark Lieufaa1b762019-01-08 19:37:281431const char kOnTheFlyMhtmlHashComputationName[] =
1432 "On-The-Fly MHTML Hash Computation";
1433const char kOnTheFlyMhtmlHashComputationDescription[] =
1434 "Save MHTML files to the target location and calculate their content "
1435 "digests in one step.";
1436
Adrienne Walkerc87477e2018-06-06 22:28:211437const char kOopRasterizationName[] = "Out of process rasterization";
1438const char kOopRasterizationDescription[] =
1439 "Perform Ganesh raster in the GPU Process instead of the renderer. "
1440 "Must also enable GPU rasterization";
1441
Brett Wilsonecb80982017-07-12 20:34:511442const char kOriginTrialsName[] = "Origin Trials";
1443const char kOriginTrialsDescription[] =
1444 "Enables origin trials for controlling access to feature/API experiments.";
1445
Becca Hughes930d8cd2017-10-02 11:09:121446const char kOverflowIconsForMediaControlsName[] =
1447 "Icons on Media Controls Overflow Menu";
1448const char kOverflowIconsForMediaControlsDescription[] =
1449 "Displays icons on the overflow menu of the native media controls";
1450
Brett Wilsonecb80982017-07-12 20:34:511451const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
1452const char kOverlayScrollbarsDescription[] =
1453 "Enable the experimental overlay scrollbars implementation. You must also "
1454 "enable threaded compositing to have the scrollbars animate.";
1455
chaopenge8aa016b2017-08-24 15:20:191456const char kOverlayScrollbarsFlashAfterAnyScrollUpdateName[] =
1457 "Flash Overlay Scrollbars After Any Scroll Update";
1458const char kOverlayScrollbarsFlashAfterAnyScrollUpdateDescription[] =
1459 "Flash Overlay Scrollbars After any scroll update happends in page. You"
1460 " must also enable Overlay Scrollbars.";
1461
chaopeng343678022017-08-24 18:45:001462const char kOverlayScrollbarsFlashWhenMouseEnterName[] =
1463 "Flash Overlay Scrollbars When Mouse Enter";
1464const char kOverlayScrollbarsFlashWhenMouseEnterDescription[] =
1465 "Flash Overlay Scrollbars When Mouse Enter a scrollable area. You must also"
1466 " enable Overlay Scrollbars.";
1467
Daniele Castagna74ddb9c2018-06-21 22:59:021468const char kOverlayStrategiesName[] = "Select HW overlay strategies";
1469const char kOverlayStrategiesDescription[] =
1470 "Select strategies used to promote quads to HW overlays.";
1471const char kOverlayStrategiesDefault[] = "Default";
1472const char kOverlayStrategiesNone[] = "None";
1473const char kOverlayStrategiesUnoccludedFullscreen[] =
1474 "Unoccluded fullscreen buffers (single-fullscreen)";
1475const char kOverlayStrategiesUnoccluded[] =
1476 "Unoccluded buffers (single-fullscreen,single-on-top)";
1477const char kOverlayStrategiesOccludedAndUnoccluded[] =
1478 "Occluded and unoccluded buffers "
1479 "(single-fullscreen,single-on-top,underlay)";
1480
Claudio Magni81326f92017-09-01 05:21:181481const char kUseNewAcceptLanguageHeaderName[] = "Use new Accept-Language header";
1482const char kUseNewAcceptLanguageHeaderDescription[] =
1483 "Adds the base language code after other corresponding language+region "
1484 "codes. This ensures that users receive content in their preferred "
1485 "language.";
1486
Brett Wilsonecb80982017-07-12 20:34:511487const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
1488const char kOverscrollHistoryNavigationDescription[] =
Mohsen Izadi88b392a2018-02-15 06:57:481489 "History navigation in response to horizontal overscroll.";
Brett Wilsonecb80982017-07-12 20:34:511490
1491const char kOverscrollStartThresholdName[] = "Overscroll start threshold";
1492const char kOverscrollStartThresholdDescription[] =
1493 "Changes overscroll start threshold relative to the default value.";
1494const char kOverscrollStartThreshold133Percent[] = "133%";
1495const char kOverscrollStartThreshold166Percent[] = "166%";
1496const char kOverscrollStartThreshold200Percent[] = "200%";
1497
chaopenge2b6e5f2018-05-08 16:40:451498const char kTouchpadOverscrollHistoryNavigationName[] =
1499 "Overscroll history navigation on Touchpad";
1500const char kTouchpadOverscrollHistoryNavigationDescription[] =
1501 "Allows swipe left/right from touchpad change browser navigation.";
1502
Xing Liu5400a002017-09-15 21:48:291503const char kParallelDownloadingName[] = "Parallel downloading";
1504const char kParallelDownloadingDescription[] =
Yannic Bonenbergera32f9902017-11-20 18:47:061505 "Enable parallel downloading to accelerate download speed.";
Xing Liu5400a002017-09-15 21:48:291506
Brett Wilsonecb80982017-07-12 20:34:511507const char kPassiveEventListenerDefaultName[] =
1508 "Passive Event Listener Override";
1509const char kPassiveEventListenerDefaultDescription[] =
1510 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
1511 "haven't requested otherwise) to be treated as passive. This will break "
1512 "touch/wheel behavior on some websites but is useful for demonstrating the "
1513 "potential performance benefits of adopting passive event listeners.";
1514const char kPassiveEventListenerTrue[] = "True (when unspecified)";
1515const char kPassiveEventListenerForceAllTrue[] = "Force All True";
1516
1517const char kPassiveEventListenersDueToFlingName[] =
1518 "Touch Event Listeners Passive Default During Fling";
1519const char kPassiveEventListenersDueToFlingDescription[] =
1520 "Forces touchstart, and first touchmove per scroll event listeners during "
1521 "fling to be treated as passive.";
1522
1523const char kPassiveDocumentEventListenersName[] =
1524 "Document Level Event Listeners Passive Default";
1525const char kPassiveDocumentEventListenersDescription[] =
1526 "Forces touchstart, and touchmove event listeners on document level "
1527 "targets (which haven't requested otherwise) to be treated as passive.";
1528
Sahel Sharify7400e882018-08-13 17:13:211529const char kPassiveDocumentWheelEventListenersName[] =
1530 "Document Level Wheel Event Listeners Passive Default";
1531const char kPassiveDocumentWheelEventListenersDescription[] =
1532 "Forces wheel, and mousewheel event listeners on document level targets "
1533 "(which haven't requested otherwise) to be treated as passive.";
1534
Vaclav Brozekd8a3f542017-11-16 14:21:131535const char kPasswordImportName[] = "Password import";
1536const char kPasswordImportDescription[] =
1537 "Import functionality in password settings.";
Brett Wilsonecb80982017-07-12 20:34:511538
Friedrich Horschige6c27742018-04-23 17:13:411539const char kPasswordsKeyboardAccessoryName[] =
1540 "Add password-related functions to keyboard accessory";
1541const char kPasswordsKeyboardAccessoryDescription[] =
1542 "Adds password generation button and toggle for the passwords bottom sheet "
1543 "to the keyboard accessory. Replaces password generation popups.";
1544
Christos Froussios6e060c42018-07-31 16:17:191545const char kPasswordsMigrateLinuxToLoginDBName[] =
1546 "Migrate passwords to \"Login Data\"";
1547const char kPasswordsMigrateLinuxToLoginDBDescription[] =
Christos Froussiose34c38a2018-09-04 14:27:591548 "Performs a one-off irreversible migration of passwords from the "
Christos Froussios6e060c42018-07-31 16:17:191549 "gnome-keyring or kwallet into the profile directory.";
1550
Rouslan Solomakhinded840112018-11-02 13:27:101551const char kPerMethodCanMakePaymentQuotaName[] =
1552 "Per-method canMakePayment() quota.";
1553const char kPerMethodCanMakePaymentQuotaDescription[] =
1554 "Allow calling canMakePayment() for different payment methods, as long as "
1555 "method-specific parameters remain unchanged.";
1556
Brett Wilsonecb80982017-07-12 20:34:511557const char kPinchScaleName[] = "Pinch scale";
1558const char kPinchScaleDescription[] =
1559 "Enables experimental support for scale using pinch.";
1560
Doug Arnett620ff542018-02-06 17:54:221561const char kPreviewsAllowedName[] = "Previews Allowed";
1562const char kPreviewsAllowedDescription[] =
1563 "Allows previews to be shown subject to specific preview types being "
1564 "enabled and the client experiencing specific triggering conditions. "
1565 "May be used as a kill-switch to turn off all potential preview types.";
1566
Brett Wilsonecb80982017-07-12 20:34:511567const char kPrintPdfAsImageName[] = "Print Pdf as Image";
1568const char kPrintPdfAsImageDescription[] =
1569 "If enabled, an option to print PDF files as images will be available in "
1570 "print preview.";
1571
1572const char kPrintPreviewRegisterPromosName[] =
1573 "Print Preview Registration Promos";
1574const char kPrintPreviewRegisterPromosDescription[] =
1575 "Enable registering unregistered cloud printers from print preview.";
1576
1577const char kProtectSyncCredentialName[] = "Autofill sync credential";
1578const char kProtectSyncCredentialDescription[] =
1579 "How the password manager handles autofill for the sync credential.";
1580
1581const char kProtectSyncCredentialOnReauthName[] =
1582 "Autofill sync credential only for transactional reauth pages";
1583const char kProtectSyncCredentialOnReauthDescription[] =
1584 "How the password manager handles autofill for the sync credential only "
1585 "for transactional reauth pages.";
1586
Mohsen Izadi93faac12017-07-29 04:45:151587const char kPullToRefreshName[] = "Pull-to-refresh gesture";
1588const char kPullToRefreshDescription[] =
1589 "Pull-to-refresh gesture in response to vertical overscroll.";
Mohsen Izadi8c59ba52018-04-12 18:52:011590const char kPullToRefreshEnabledTouchscreen[] = "Enabled for touchscreen only";
Mohsen Izadi93faac12017-07-29 04:45:151591
Troy Hildebrandt7228ad12018-02-23 21:18:241592const char kQueryInOmniboxName[] = "Query in Omnibox";
1593const char kQueryInOmniboxDescription[] =
1594 "Only display query terms in the omnibox when viewing a search results "
1595 "page.";
1596
Brett Wilsonecb80982017-07-12 20:34:511597const char kQuicName[] = "Experimental QUIC protocol";
1598const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1599
Emily Starke8878d52018-05-11 21:27:261600const char kRecurrentInterstitialName[] =
1601 "Show a message when the same SSL error recurs";
1602const char kRecurrentInterstitialDescription[] =
1603 "Enable a special message on the SSL certificate error page when the same "
1604 "SSL error occurs repeatedly.";
1605
Brett Wilsonecb80982017-07-12 20:34:511606const char kReducedReferrerGranularityName[] =
1607 "Reduce default 'referer' header granularity.";
1608const char kReducedReferrerGranularityDescription[] =
1609 "If a page hasn't set an explicit referrer policy, setting this flag will "
1610 "reduce the amount of information in the 'referer' header for cross-origin "
1611 "requests.";
1612
Lei Zhang0ca70ea2018-09-07 17:51:011613const char kRegionalLocalesAsDisplayUIName[] =
Claudio Magnie0a80bb2018-01-31 02:52:581614 "Allow regional locales as display UI";
Lei Zhang0ca70ea2018-09-07 17:51:011615const char kRegionalLocalesAsDisplayUIDescription[] =
Claudio Magnie0a80bb2018-01-31 02:52:581616 "This flag allows regional locales to be selected as display UI by the "
1617 "user in Language Settings. The actual locale of the system is derived "
1618 "from the user selection based on some simple fallback logic.";
1619
Christian Dullweber3cc579a22018-09-11 10:54:441620const char kRewriteLevelDBOnDeletionName[] =
1621 "Rewrite LevelDB instances after full deletions";
1622const char kRewriteLevelDBOnDeletionDescription[] =
1623 "Rewrite LevelDB instances to remove traces of deleted data from disk.";
1624
Yutaka Hirano4c0f2f5d452017-11-17 04:24:351625const char kRendererSideResourceSchedulerName[] =
1626 "Renderer side ResourceScheduler";
1627const char kRendererSideResourceSchedulerDescription[] =
1628 "Migrate some ResourceScheduler functionalities to renderer";
1629
Brett Wilsonecb80982017-07-12 20:34:511630const char kRequestTabletSiteName[] =
1631 "Request tablet site option in the settings menu";
1632const char kRequestTabletSiteDescription[] =
1633 "Allows the user to request tablet site. Web content is often optimized "
1634 "for tablet devices. When this option is selected the user agent string is "
1635 "changed to indicate a tablet device. Web content optimized for tablets is "
1636 "received there after for the current tab.";
1637
1638const char kResetAppListInstallStateName[] =
1639 "Reset the App Launcher install state on every restart.";
1640const char kResetAppListInstallStateDescription[] =
1641 "Reset the App Launcher install state on every restart. While this flag is "
1642 "set, Chrome will forget the launcher has been installed each time it "
1643 "starts. This is used for testing the App Launcher install flow.";
1644
Kinuko Yasuda33955082018-06-19 10:14:591645const char kResourceLoadSchedulerName[] = "Enable resource load throttling";
Brett Wilsonecb80982017-07-12 20:34:511646const char kResourceLoadSchedulerDescription[] =
Kinuko Yasuda33955082018-06-19 10:14:591647 "Uses the resource load scheduler in blink to throttle resource load "
1648 "requests.";
Brett Wilsonecb80982017-07-12 20:34:511649
Daniel Rubery91874e32019-01-10 22:12:341650const char kSafeBrowsingUseAPDownloadVerdictsName[] =
1651 "Request Advanced Protection verdicts when inspecting downloads";
1652const char kSafeBrowsingUseAPDownloadVerdictsDescription[] =
1653 "If enabled, download protection will request Advanced Protection "
1654 "verdicts from Safe Browsing. These will provide stronger protections "
1655 "from files Safe Browsing is unsure about.";
1656
Brett Wilsonecb80982017-07-12 20:34:511657const char kSafeSearchUrlReportingName[] = "SafeSearch URLs reporting.";
1658const char kSafeSearchUrlReportingDescription[] =
1659 "If enabled, inappropriate URLs can be reported back to SafeSearch.";
1660
Alexei Filippov98772752018-01-27 08:26:521661const char kSamplingHeapProfilerName[] = "Native memory sampling profiler.";
1662const char kSamplingHeapProfilerDescription[] =
1663 "Enables native memory sampling profiler with specified rate in KiB. "
1664 "If sampling rate is not provided the default value of 128 KiB is used.";
1665
Brett Wilsonecb80982017-07-12 20:34:511666const char kSaveasMenuLabelExperimentName[] =
1667 "Switch 'Save as' menu labels to 'Download'";
1668const char kSaveasMenuLabelExperimentDescription[] =
1669 "Enables an experiment to switch menu labels that use 'Save as...' to "
1670 "'Download'.";
1671
1672const char kSavePageAsMhtmlName[] = "Save Page as MHTML";
1673const char kSavePageAsMhtmlDescription[] =
1674 "Enables saving pages as MHTML: a single text file containing HTML and all "
1675 "sub-resources.";
1676
Jeffrey Cohene49cc59c2018-10-23 16:27:281677const char kSendTabToSelfName[] = "Send tab to self";
1678const char kSendTabToSelfDescription[] =
1679 "Allows users to push tabs from Android devices to other synced "
1680 "devices, in order to easily transition those tabs to the new device ";
1681
gogeraldd5061b592017-09-06 23:39:551682const char kServiceWorkerPaymentAppsName[] = "Service Worker payment apps";
1683const char kServiceWorkerPaymentAppsDescription[] =
1684 "Enable Service Worker applications to integrate as payment apps";
1685
momohattfc352292018-08-29 05:12:361686const char kServiceWorkerImportedScriptUpdateCheckName[] =
1687 "Enable update check for service worker importScripts() resources";
1688const char kServiceWorkerImportedScriptUpdateCheckDescription[] =
1689 "Extend byte-for-byte update check for scripts that are imported by the "
1690 "service worker script via importScripts().";
1691
Lei Zhang0ca70ea2018-09-07 17:51:011692const char kServiceWorkerServicificationName[] = "Servicified service workers";
1693const char kServiceWorkerServicificationDescription[] =
Makoto Shimazu22078cc2018-02-21 03:01:441694 "Enable the servicified service workers. A servicified service worker can "
1695 "have direct connection from its clients, so that fetch events can be "
1696 "dispatched through the connection without hopping to the browser process.";
Makoto Shimazud9f333c2017-08-08 07:23:171697
Azeem Arshad3b1ef73122018-08-30 02:04:151698const char kServiceWorkerLongRunningMessageName[] =
1699 "Service worker long running message dispatch.";
1700const char kServiceWorkerLongRunningMessageDescription[] =
1701 "Enables long running message dispatch method for service workers. "
1702 "Messages sent with this method do not timeout, allowing the service "
1703 "worker to run indefinitely.";
1704
Brett Wilsonecb80982017-07-12 20:34:511705const char kSettingsWindowName[] = "Show settings in a window";
1706const char kSettingsWindowDescription[] =
1707 "Settings will be shown in a dedicated window instead of as a browser tab.";
1708
Manu Cornetd7ef7c52018-05-01 22:08:231709const char kShelfHoverPreviewsName[] =
1710 "Show previews of running apps when hovering over the shelf.";
1711const char kShelfHoverPreviewsDescription[] =
1712 "Shows previews of the open windows for a given running app when hovering "
1713 "over the shelf.";
1714
Naoki Fukino008a0022018-05-23 18:33:001715const char kShowAndroidFilesInFilesAppName[] =
1716 "Show Android files in Files app";
1717const char kShowAndroidFilesInFilesAppDescription[] =
1718 "Show Android files in Files app if Android is enabled on the device.";
1719
Brett Wilsonecb80982017-07-12 20:34:511720const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
1721const char kShowAutofillSignaturesDescription[] =
Maxim Kolosovskiye66f8cb2018-03-23 10:25:381722 "Annotates web forms with Autofill signatures as HTML attributes. Also "
1723 "marks password fields suitable for password generation.";
Brett Wilsonecb80982017-07-12 20:34:511724
1725const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
1726const char kShowAutofillTypePredictionsDescription[] =
1727 "Annotates web forms with Autofill field type predictions as placeholder "
1728 "text.";
1729
1730const char kShowOverdrawFeedbackName[] = "Show overdraw feedback";
1731const char kShowOverdrawFeedbackDescription[] =
1732 "Visualize overdraw by color-coding elements based on if they have other "
1733 "elements drawn underneath.";
1734
Shivani Sharma2d5b4b6b2019-01-08 16:07:161735const char kHistoryManipulationIntervention[] =
1736 "History Manipulation Intervention";
1737const char kHistoryManipulationInterventionDescription[] =
1738 "If a page does a client side redirect or adds to the history without a "
1739 "user gesture, then skip it on back/forward UI.";
1740
Carlos IL89128732018-04-03 17:00:251741const char kSupervisedUserCommittedInterstitialsName[] =
1742 "Enable Supervised User Committed Interstitials";
1743const char kSupervisedUserCommittedInterstitialsDescription[] =
1744 "Use committed error pages instead of transient navigation entries for "
1745 "supervised user interstitials";
1746
yiyixbdfa9a0b2017-10-23 22:21:471747const char kEnableDrawOcclusionName[] = "Enable draw occlusion";
1748const char kEnableDrawOcclusionDescription[] =
1749 "Enable the system to use draw occlusion to skip draw quads when they are "
1750 "not shown on the screen.";
1751
Brett Wilsonecb80982017-07-12 20:34:511752const char kShowSavedCopyName[] = "Show Saved Copy Button";
1753const char kShowSavedCopyDescription[] =
1754 "When a page fails to load, if a stale copy of the page exists in the "
1755 "browser cache, a button will be presented to allow the user to load that "
1756 "stale copy. The primary enabling choice puts the button in the most "
1757 "salient position on the error page; the secondary enabling choice puts it "
1758 "secondary to the reload button.";
1759const char kEnableShowSavedCopyPrimary[] = "Enable: Primary";
1760const char kEnableShowSavedCopySecondary[] = "Enable: Secondary";
1761const char kDisableShowSavedCopy[] = "Disable";
1762
Brett Wilsonecb80982017-07-12 20:34:511763const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1764const char kSilentDebuggerExtensionApiDescription[] =
1765 "Do not show the infobar when an extension attaches to a page via "
1766 "chrome.debugger API. This is required to debug extension background "
1767 "pages.";
1768
Tsuyoshi Horo53895ba92018-03-14 04:06:481769const char kSignedHTTPExchangeName[] = "Signed HTTP Exchange";
1770const char kSignedHTTPExchangeDescription[] =
1771 "Enables Origin-Signed HTTP Exchanges support which is still in "
1772 "development. Warning: Enabling this may pose a security risk.";
1773
Christopher Thompson75ff845d2018-02-01 20:12:461774const char kSimplifyHttpsIndicatorName[] = "Simplify HTTPS indicator UI";
1775const char kSimplifyHttpsIndicatorDescription[] =
1776 "Change the UI treatment for HTTPS pages.";
1777
Bret Sepulveda4f891da2018-07-16 19:10:301778const char kSingleTabMode[] = "Single-tab mode";
1779const char kSingleTabModeDescription[] =
1780 "Windows with a single tab receive a special, minimal visual treatment.";
1781
Lukasz Anforowicz738a88d2018-11-05 19:19:341782const char kSiteIsolationOptOutName[] = "Disable site isolation";
1783const char kSiteIsolationOptOutDescription[] =
1784 "Disables site isolation "
Nick Carter855bc492018-03-10 00:44:571785 "(SitePerProcess, IsolateOrigins, etc). Intended for diagnosing bugs that "
1786 "may be due to out-of-process iframes. Opt-out has no effect if site "
Lukasz Anforowicz42840422018-11-05 21:49:221787 "isolation is force-enabled using a command line switch or using an "
1788 "enterprise policy. "
1789 "Caution: this disables important mitigations for the Spectre CPU "
Nick Carter855bc492018-03-10 00:44:571790 "vulnerability affecting most computers.";
Lukasz Anforowicz738a88d2018-11-05 19:19:341791const char kSiteIsolationOptOutChoiceDefault[] = "Default";
1792const char kSiteIsolationOptOutChoiceOptOut[] = "Disabled (not recommended)";
Brett Wilsonecb80982017-07-12 20:34:511793
Pattideade7972018-04-27 02:59:401794const char kSiteSettings[] = "Site settings";
Brett Wilsonecb80982017-07-12 20:34:511795const char kSiteSettingsDescription[] =
Pattideade7972018-04-27 02:59:401796 "Add the All Sites list to Site Settings.";
Brett Wilsonecb80982017-07-12 20:34:511797
Brett Wilsonecb80982017-07-12 20:34:511798const char kSmoothScrollingName[] = "Smooth Scrolling";
1799const char kSmoothScrollingDescription[] =
1800 "Animate smoothly when scrolling page content.";
1801
1802const char kSoftwareRasterizerName[] = "3D software rasterizer";
1803const char kSoftwareRasterizerDescription[] =
1804 "Fall back to a 3D software rasterizer when the GPU cannot be used.";
1805
Wei-Yin Chen (陳威尹)deff0802018-01-19 06:29:201806const char kSoleIntegrationName[] = "Sole integration";
1807const char kSoleIntegrationDescription[] =
1808 "Enable Sole integration for browser customization. You must restart "
1809 "the browser twice for changes to take effect.";
1810
Tommy Steimel77704be2017-08-28 22:14:401811const char kSoundContentSettingName[] = "Sound content setting";
1812const char kSoundContentSettingDescription[] =
1813 "Enable site-wide muting in content settings and tab strip context menu.";
1814
Justin Donnelly4e448cb2017-07-07 21:32:131815const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
1816 "Enable speculative start of a service worker when a search is predicted.";
Justin Donnelly4e448cb2017-07-07 21:32:131817const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
1818 "If enabled, when the user enters text in the omnibox that looks like a "
1819 "a query, any service worker associated with the search engine the query "
1820 "will be sent to is started early.";
1821
Brett Wilsonecb80982017-07-12 20:34:511822const char kSpellingFeedbackFieldTrialName[] = "Spelling Feedback Field Trial";
1823const char kSpellingFeedbackFieldTrialDescription[] =
1824 "Enable the field trial for sending user feedback to spelling service.";
horo201d49492017-05-19 05:31:401825
Carlos ILe5fa0a12018-08-03 16:08:321826const char kSSLCommittedInterstitialsName[] = "Committed Interstitials";
1827const char kSSLCommittedInterstitialsDescription[] =
1828 "Use committed error pages instead of transient navigation entries "
1829 "for SSL interstitial error pages (i.e. certificate errors).";
1830
Shubhie Panickerfaf082ed2018-01-03 04:49:151831const char kStopInBackgroundName[] = "Stop in background";
1832const char kStopInBackgroundDescription[] =
1833 "Stop scheduler task queues, in the background, "
Shubhie Panicker56c99a22018-03-21 00:22:281834 " after a grace period.";
Shubhie Panickerfaf082ed2018-01-03 04:49:151835
Shubhie Panicker56c99a22018-03-21 00:22:281836const char kStopNonTimersInBackgroundName[] =
1837 "Stop non-timer task queues background";
1838const char kStopNonTimersInBackgroundDescription[] =
1839 "Stop non-timer task queues, in the background, "
1840 "after a grace period.";
1841
Brett Wilsonecb80982017-07-12 20:34:511842const char kSuggestionsWithSubStringMatchName[] =
1843 "Substring matching for Autofill suggestions";
1844const char kSuggestionsWithSubStringMatchDescription[] =
1845 "Match Autofill suggestions based on substrings (token prefixes) rather "
1846 "than just prefixes.";
vabr0215a8e2017-03-28 12:47:341847
Marc Treibf65fb002018-08-03 11:17:161848const char kSyncStandaloneTransportName[] = "Allow Sync standalone transport";
1849const char kSyncStandaloneTransportDescription[] =
1850 "If enabled, allows Chrome Sync to start in standalone transport mode. In "
1851 "this mode, the Sync machinery can start without user opt-in, but only a "
1852 "subset of data types are supported.";
1853
Marc Treib4bd95e72018-08-30 06:30:581854const char kSyncSupportSecondaryAccountName[] =
1855 "Support secondary accounts for Sync standalone transport";
1856const char kSyncSupportSecondaryAccountDescription[] =
1857 "If enabled, allows Chrome Sync to start in standalone transport mode for "
1858 "a signed-in account that has not been chosen as Chrome's primary account. "
1859 "This only has an effect if sync-standalone-transport is also enabled.";
1860
Jan Krcal2ff23f7c2018-09-04 16:16:131861const char kSyncUSSAutofillProfileName[] = "Enable USS for autofill profile";
1862const char kSyncUSSAutofillProfileDescription[] =
1863 "Enables the new implementation of autofill profile sync";
1864
Jan Krcale3641b92018-08-10 17:53:311865const char kSyncUSSAutofillWalletDataName[] =
1866 "Enable USS for autofill wallet data";
1867const char kSyncUSSAutofillWalletDataDescription[] =
1868 "Enables the new implementation of autofill walet data sync";
1869
Brett Wilsonecb80982017-07-12 20:34:511870const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1871const char kSyncSandboxDescription[] =
1872 "Connects to the testing server for Chrome Sync.";
vabr0215a8e2017-03-28 12:47:341873
Joe Downing8cbbc192018-05-14 17:37:071874const char kSystemKeyboardLockName[] = "Experimental system keyboard lock";
1875const char kSystemKeyboardLockDescription[] =
1876 "Enables websites to use the keyboard.lock() API to intercept system "
1877 "keyboard shortcuts and have the events routed directly to the website "
1878 "when in fullscreen mode.";
1879
Taylor Bergquistbcc15462018-12-05 00:36:561880const char kTabGroupsName[] = "Tab Groups";
1881const char kTabGroupsDescription[] =
1882 "Allows users to organize tabs into visually distinct groups, e.g. to "
1883 "separate tabs associated with different tasks.";
1884
Caroline Risinge121c2b2018-12-03 20:19:291885const char kTabHoverCardsName[] = "Tab Hover Cards";
1886const char kTabHoverCardsDescription[] =
1887 "Enables a popup containing tab information to be visible when hovering "
1888 "over a tab. This will replace tooltips for tabs.";
1889
Christian Dullweberd0d96f02017-09-13 09:22:511890const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1891const char kTabsInCbdDescription[] =
1892 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
1893
Daniele Castagna0fead93e2018-01-10 20:40:291894const char kTintGlCompositedContentName[] = "Tint GL-composited content";
1895const char kTintGlCompositedContentDescription[] =
1896 "Tint contents composited using GL with a shade of red to help debug and "
1897 "study overlay support.";
1898
Peter Kastingd77428352018-10-26 15:20:251899const char kTopChromeTouchUiName[] = "Touch UI Layout";
1900const char kTopChromeTouchUiDescription[] =
1901 "Enables touch UI layout in the browser's top chrome.";
vabr0215a8e2017-03-28 12:47:341902
Brett Wilsonecb80982017-07-12 20:34:511903const char kThreadedScrollingName[] = "Threaded scrolling";
1904const char kThreadedScrollingDescription[] =
1905 "Threaded handling of scroll-related input events. Disabling this will "
1906 "force all such scroll events to be handled on the main thread. Note that "
1907 "this can dramatically hurt scrolling performance of most websites and is "
1908 "intended for testing purposes only.";
1909
Dominick Ng8896b1cd2017-10-17 23:24:361910const char kTopSitesFromSiteEngagementName[] = "Top Sites from Site Engagement";
1911const char kTopSitesFromSiteEngagementDescription[] =
1912 "Enable Top Sites on the New Tab Page to be sourced and sorted using site "
1913 "engagement.";
1914
Brett Wilsonecb80982017-07-12 20:34:511915const char kTouchAdjustmentName[] = "Touch adjustment";
1916const char kTouchAdjustmentDescription[] =
1917 "Refine the position of a touch gesture in order to compensate for touches "
1918 "having poor resolution compared to a mouse.";
1919
1920const char kTouchDragDropName[] = "Touch initiated drag and drop";
1921const char kTouchDragDropDescription[] =
1922 "Touch drag and drop can be initiated through long press on a draggable "
1923 "element.";
1924
1925const char kTouchEventsName[] = "Touch Events API";
1926const char kTouchEventsDescription[] =
1927 "Force Touch Events API feature detection to always be enabled or "
1928 "disabled, or to be enabled when a touchscreen is detected on startup "
Ella Gea6a203c92017-10-26 19:09:291929 "(Automatic).";
Brett Wilsonecb80982017-07-12 20:34:511930
1931const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
1932const char kTouchSelectionStrategyDescription[] =
1933 "Controls how text selection granularity changes when touch text selection "
1934 "handles are dragged. Non-default behavior is experimental.";
1935const char kTouchSelectionStrategyCharacter[] = "Character";
1936const char kTouchSelectionStrategyDirection[] = "Direction";
1937
1938const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
1939const char kTraceUploadUrlDescription[] =
1940 "This is to be used in conjunction with the enable-navigation-tracing "
1941 "flag. Please select the label that best describes the recorded traces. "
1942 "This will choose the destination the traces are uploaded to. If you are "
1943 "not sure, select other. If left empty, no traces will be uploaded.";
1944const char kTraceUploadUrlChoiceOther[] = "Other";
1945const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1946const char kTraceUploadUrlChoiceQa[] = "QA";
1947const char kTraceUploadUrlChoiceTesting[] = "Testing";
1948
Anthony Vallee-Duboisc0a027d72018-08-30 17:11:561949const char kTranslateExplicitLanguageAskName[] =
1950 "Explicitly ask for language preferences";
1951const char kTranslateExplicitLanguageAskDescription[] =
1952 "Explicitly ask the user which languages they can read on Chrome startup, "
1953 "on the first run that doesn't already have a promo.";
1954
Anthony Vallee-Dubois265c5692018-06-01 15:57:141955const char kTranslateForceTriggerOnEnglishName[] =
1956 "Select which language model to use to trigger translate on English "
1957 "content";
1958const char kTranslateForceTriggerOnEnglishDescription[] =
1959 "Force the Translate Triggering on English pages experiment to be enabled "
1960 "with the selected language model active.";
1961
Philippe Hamel7fdaa452017-09-29 17:22:491962const char kTranslateRankerEnforcementName[] =
1963 "Enforce TranslateRanker decisions";
1964const char kTranslateRankerEnforcementDescription[] =
1965 "Improved Translate UI triggering logic. TranslateRanker decides whether "
1966 "or not Translate UI should be triggered in a given context.";
1967
Nicolas Ouellet-payeur9e5ff3d2018-06-20 16:07:161968const char kTranslateUIName[] = "Enable Translate";
1969const char kTranslateUIDescription[] =
1970 "Enable the Translate popup when visiting webpages in other languages.";
1971
Mustafa Emre Acerb3aa36a82018-05-22 21:44:051972const char kTreatInsecureOriginAsSecureName[] =
1973 "Insecure origins treated as secure";
1974const char kTreatInsecureOriginAsSecureDescription[] =
1975 "Treat given (insecure) origins as secure origins. Multiple origins can be "
1976 "supplied as a comma-separated list. For the definition of secure "
1977 "contexts, "
1978 "see https://w3c.github.io/webappsec-secure-contexts/";
1979
Brett Wilsonecb80982017-07-12 20:34:511980const char kTrySupportedChannelLayoutsName[] =
1981 "Causes audio output streams to check if channel layouts other than the "
1982 "default hardware layout are available.";
1983const char kTrySupportedChannelLayoutsDescription[] =
1984 "Causes audio output streams to check if channel layouts other than the "
1985 "default hardware layout are available. Turning this on will allow the OS "
1986 "to do stereo to surround expansion if supported. May expose third party "
1987 "driver bugs, use with caution.";
1988
David Roger6762a092018-01-31 15:55:071989const char kUnifiedConsentName[] = "Unified Consent";
1990const char kUnifiedConsentDescription[] =
1991 "Enables a unified management of user consent for privacy-related "
1992 "features. This includes new confirmation screens and improved settings "
1993 "pages.";
1994
Brett Wilsonecb80982017-07-12 20:34:511995const char kUiPartialSwapName[] = "Partial swap";
1996const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
1997
Chris Pickel3a227ae62017-08-24 10:47:261998const char kUseDdljsonApiName[] = "Use new ddljson API for Doodles";
1999const char kUseDdljsonApiDescription[] =
2000 "Enables the new ddljson API to fetch Doodles for the NTP.";
2001
Becca Hughes59c05b42017-11-03 13:11:582002const char kUseModernMediaControlsName[] = "New Media Controls";
2003const char kUseModernMediaControlsDescription[] =
2004 "Enables the new style native media controls.";
2005
Wei Li790e7a8572018-03-23 01:31:552006const char kUsePdfCompositorServiceName[] =
2007 "Use PDF compositor service for printing";
2008const char kUsePdfCompositorServiceDescription[] =
2009 "When enabled, use PDF compositor service to composite and generate PDF "
2010 "files for printing. When site isolation is enabled, disabling this will "
2011 "not stop using PDF compositor service since the service is required for "
2012 "printing out-of-process iframes correctly.";
2013
Mustaq Ahmedc646c0a2017-10-20 20:08:302014const char kUserActivationV2Name[] = "User Activation v2";
2015const char kUserActivationV2Description[] =
2016 "Enable simple user activation for APIs that are otherwise controlled by "
2017 "user gesture tokens.";
2018
Brett Wilsonecb80982017-07-12 20:34:512019const char kUserConsentForExtensionScriptsName[] =
2020 "User consent for extension scripts";
2021const char kUserConsentForExtensionScriptsDescription[] =
2022 "Require user consent for an extension running a script on the page, if "
2023 "the extension requested permission to run on all urls.";
2024
2025const char kUseSuggestionsEvenIfFewFeatureName[] =
2026 "Disable minimum for server-side tile suggestions on NTP.";
2027const char kUseSuggestionsEvenIfFewFeatureDescription[] =
2028 "Request server-side suggestions even if there are only very few of them "
2029 "and use them for tiles on the New Tab Page.";
2030
2031const char kV8CacheOptionsName[] = "V8 caching mode.";
2032const char kV8CacheOptionsDescription[] =
2033 "Caching mode for the V8 JavaScript engine.";
Brett Wilsonecb80982017-07-12 20:34:512034const char kV8CacheOptionsCode[] = "Cache V8 compiler data.";
2035
Michael Hablich896d52662017-10-23 15:59:572036const char kV8VmFutureName[] = "Future V8 VM features";
2037const char kV8VmFutureDescription[] =
2038 "This enables upcoming and experimental V8 VM features. "
2039 "This flag does not enable experimental JavaScript features.";
2040
Hannes Payer1130d5672018-06-05 07:37:312041const char kV8OrinocoName[] = "V8 Orinoco garbage collection features";
2042const char kV8OrinocoDescription[] =
2043 "This enables the V8 Orinoco garbage collection features.";
2044
Brett Wilsonecb80982017-07-12 20:34:512045const char kVideoFullscreenOrientationLockName[] =
2046 "Lock screen orientation when playing a video fullscreen.";
2047const char kVideoFullscreenOrientationLockDescription[] =
2048 "Lock the screen orientation of the device to match video orientation when "
2049 "a video goes fullscreen. Only on phones.";
2050
2051const char kVideoRotateToFullscreenName[] =
2052 "Rotate-to-fullscreen gesture for videos.";
2053const char kVideoRotateToFullscreenDescription[] =
2054 "Enter/exit fullscreen when device is rotated to/from the orientation of "
2055 "the video. Only on phones.";
2056
2057const char kWalletServiceUseSandboxName[] =
2058 "Use Google Payments sandbox servers";
2059const char kWalletServiceUseSandboxDescription[] =
2060 "For developers: use the sandbox service for Google Payments API calls.";
2061
Brett Wilsonecb80982017-07-12 20:34:512062const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
2063const char kWebglDraftExtensionsDescription[] =
2064 "Enabling this option allows web applications to access the WebGL "
2065 "Extensions that are still in draft status.";
2066
2067const char kWebMidiName[] = "Web MIDI API";
2068const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
2069
2070const char kWebPaymentsName[] = "Web Payments";
2071const char kWebPaymentsDescription[] =
2072 "Enable Web Payments API integration, a JavaScript API for merchants.";
2073
Mathieu Perreault51339b82017-07-20 17:06:052074const char kWebPaymentsModifiersName[] = "Enable web payment modifiers";
2075const char kWebPaymentsModifiersDescription[] =
2076 "If the website provides modifiers in the payment request, show the custom "
2077 "total for each payment instrument, update the shopping cart when "
2078 "instruments are switched, and send modified payment method specific data "
2079 "to the payment app.";
2080
Brett Wilsonecb80982017-07-12 20:34:512081const char kWebrtcEchoCanceller3Name[] = "WebRTC Echo Canceller 3.";
2082const char kWebrtcEchoCanceller3Description[] =
2083 "Experimental WebRTC echo canceller (AEC3).";
2084
Lei Zhang0a318af2018-11-14 02:19:462085const char kWebrtcH264WithOpenh264FfmpegName[] =
2086 "WebRTC H.264 software video encoder/decoder";
2087const char kWebrtcH264WithOpenh264FfmpegDescription[] =
2088 "When enabled, an H.264 software video encoder/decoder pair is included. "
2089 "If a hardware encoder/decoder is also available it may be used instead of "
2090 "this encoder/decoder.";
2091
Qingsi Wangec2dbf942018-11-03 05:33:042092const char kWebrtcHideLocalIpsWithMdnsName[] =
2093 "Anonymize local IPs exposed by WebRTC.";
2094const char kWebrtcHideLocalIpsWithMdnsDecription[] =
2095 "Conceal local IP addresses with mDNS hostnames.";
2096
Alex Loikob5fb1282018-08-14 10:04:402097const char kWebrtcHybridAgcName[] = "WebRTC hybrid Agc2/Agc1.";
2098const char kWebrtcHybridAgcDescription[] =
2099 "WebRTC Agc2 digital adaptation with Agc1 analog adaptation.";
2100
Brett Wilsonecb80982017-07-12 20:34:512101const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
2102const char kWebrtcHwDecodingDescription[] =
2103 "Support in WebRTC for decoding video streams using platform hardware.";
2104
2105const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
2106const char kWebrtcHwEncodingDescription[] =
2107 "Support in WebRTC for encoding video streams using platform hardware.";
2108
2109const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
2110const char kWebrtcHwH264EncodingDescription[] =
2111 "Support in WebRTC for encoding h264 video streams using platform "
2112 "hardware.";
2113
2114const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
2115const char kWebrtcHwVP8EncodingDescription[] =
2116 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
2117
Niels Möller090866a2018-02-13 10:55:032118const char kWebrtcNewEncodeCpuLoadEstimatorName[] =
2119 "WebRTC new encode cpu load estimator";
2120const char kWebrtcNewEncodeCpuLoadEstimatorDescription[] =
2121 "Enable new estimator for the encoder cpu load, for evaluation and "
2122 "testing. Intended to improve accuracy when screen casting.";
2123
Elad Alon85e0d0be2018-06-26 10:38:372124const char kWebRtcRemoteEventLogName[] = "WebRTC remote-bound event logging";
2125const char kWebRtcRemoteEventLogDescription[] =
2126 "Allow collecting WebRTC event logs and uploading them to Crash. "
2127 "Please note that, even if enabled, this will still require "
2128 "a policy to be set, for it to have an effect.";
2129
Brett Wilsonecb80982017-07-12 20:34:512130const char kWebrtcSrtpAesGcmName[] =
2131 "Negotiation with GCM cipher suites for SRTP in WebRTC";
2132const char kWebrtcSrtpAesGcmDescription[] =
2133 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
2134
Joachim Bauch4a41d7512017-08-23 14:24:232135const char kWebrtcSrtpEncryptedHeadersName[] =
2136 "Negotiation with encrypted header extensions for SRTP in WebRTC";
2137const char kWebrtcSrtpEncryptedHeadersDescription[] =
2138 "When enabled, WebRTC will try to negotiate encrypted header extensions "
2139 "for SRTP.";
2140
Brett Wilsonecb80982017-07-12 20:34:512141const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
2142const char kWebrtcStunOriginDescription[] =
2143 "When enabled, Stun messages generated by WebRTC will contain the Origin "
2144 "header.";
2145
Lei Zhang0a318af2018-11-14 02:19:462146const char kWebrtcUnifiedPlanByDefaultName[] =
2147 "WebRTC: Use Unified Plan SDP Semantics by default";
2148const char kWebrtcUnifiedPlanByDefaultDescription[] =
2149 "RTCPeerConnections generate and expect the standards compliant SDP format "
2150 "called \"Unified Plan\", unless \"Plan B\" is explicitly specified by "
2151 "passing {sdpSemantics:'plan-b'} to the RTCPeerConnection constructor. "
2152 "RTCRtpTransceiver support is also enabled in Unified Plan.";
2153
Brett Wilsonecb80982017-07-12 20:34:512154const char kWebvrName[] = "WebVR";
2155const char kWebvrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012156 "Enables access to experimental Virtual Reality functionality via the "
2157 "WebVR 1.1 API. This feature will eventually be replaced by the WebXR "
2158 "Device API. Warning: Enabling this will also allow WebVR content on "
2159 "insecure origins to access these powerful APIs, and may pose a security "
David Dorwin09448942019-01-11 23:37:302160 "risk. Controllers are exposed as Gamepads, and WebVR-specific attributes "
2161 "are exposed.";
Brett Wilsonecb80982017-07-12 20:34:512162
Brandon Jonese9d9b2b2017-12-11 22:20:112163const char kWebXrName[] = "WebXR Device API";
2164const char kWebXrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012165 "Enables access to experimental APIs to interact with Virtual Reality (VR) "
2166 "and Augmented Reality (AR) devices.";
2167
2168const char kWebXrGamepadSupportName[] = "WebXR Gamepad Support";
2169const char kWebXrGamepadSupportDescription[] =
2170 "Expose VR controllers as Gamepads for use with the WebXR Device API. Each "
Anna Offenwanger06dc6062018-04-12 07:56:222171 "XRInputSource will have a corresponding Gamepad instance. Requires that "
2172 "WebXR Device API is also enabled.";
Ian Vollick7aaccf92018-04-07 23:10:432173
2174const char kWebXrHitTestName[] = "WebXR Hit Test";
2175const char kWebXrHitTestDescription[] =
2176 "Enables access to raycasting against estimated XR scene geometry.";
Brandon Jonese9d9b2b2017-12-11 22:20:112177
Anna Maria57ecf7592018-01-12 03:10:402178const char kWebXrOrientationSensorDeviceName[] =
2179 "WebXR orientation sensor device";
2180const char kWebXrOrientationSensorDeviceDescription[] =
2181 "When no VR platform device is available, expose a non-presenting device "
2182 "based on the device's orientation sensors, if available.";
2183
Brett Wilsonecb80982017-07-12 20:34:512184const char kZeroCopyName[] = "Zero-copy rasterizer";
2185const char kZeroCopyDescription[] =
2186 "Raster threads write directly to GPU memory associated with tiles.";
vabr0215a8e2017-03-28 12:47:342187
Brett Wilsonff596952017-07-14 01:06:552188// Android ---------------------------------------------------------------------
2189
2190#if defined(OS_ANDROID)
2191
2192const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
2193const char kAiaFetchingDescription[] =
2194 "Enable intermediate certificate fetching when a server does not provide "
2195 "sufficient certificates to build a chain to a trusted root.";
2196
2197const char kAccessibilityTabSwitcherName[] = "Accessibility Tab Switcher";
2198const char kAccessibilityTabSwitcherDescription[] =
2199 "Enable the accessibility tab switcher for Android.";
2200
Pavel Shmakov798f4742018-11-15 21:27:382201const char kAllowRemoteContextForNotificationsName[] =
2202 "Allow using remote app context for notifications";
2203const char kAllowRemoteContextForNotificationsDescription[] =
2204 "Allow using Context#createPackageContext to work around issues with status"
2205 "bar icons on certain Android M devices.";
2206
Brett Wilsonff596952017-07-14 01:06:552207const char kAndroidAutofillAccessibilityName[] = "Autofill Accessibility";
2208const char kAndroidAutofillAccessibilityDescription[] =
2209 "Enable accessibility for autofill popup.";
2210
Khushalbb1963a2018-10-02 21:02:352211const char kAndroidSurfaceControl[] = "Use Android SurfaceControl";
2212const char kAndroidSurfaceControlDescription[] =
2213 "Use the SurfaceControl API for supporting overlays on Android";
2214
Anita Woodruffbfcd1e52018-07-16 12:00:512215const char kAppNotificationStatusMessagingName[] =
2216 "App notification status messaging";
2217const char kAppNotificationStatusMessagingDescription[] =
2218 "Enables messaging in site permissions UI informing user when "
2219 "notifications are disabled for the entire app.";
2220
Brett Wilsonff596952017-07-14 01:06:552221const char kAndroidPaymentAppsName[] = "Android payment apps";
2222const char kAndroidPaymentAppsDescription[] =
2223 "Enable third party Android apps to integrate as payment apps";
2224
Miriam Gershenson8cf1397222018-01-23 22:48:292225const char kAsyncDnsName[] = "Async DNS resolver";
2226const char kAsyncDnsDescription[] = "Enables the built-in DNS resolver.";
2227
Dan Harrington01229f82018-09-12 21:01:212228const char kAutoFetchOnNetErrorPageName[] = "AutoFetchOnNetErrorPage";
2229const char kAutoFetchOnNetErrorPageDescription[] =
2230 "When enabled, and navigation fails with an offline error, schedule a "
2231 "fetch of the page when online again.";
2232
Brett Wilsonff596952017-07-14 01:06:552233const char kAutofillAccessoryViewName[] =
2234 "Autofill suggestions as keyboard accessory view";
2235const char kAutofillAccessoryViewDescription[] =
2236 "Shows Autofill suggestions on top of the keyboard rather than in a "
2237 "dropdown.";
2238
2239const char kBackgroundLoaderForDownloadsName[] =
2240 "Enables background downloading of pages.";
2241const char kBackgroundLoaderForDownloadsDescription[] =
2242 "Enables downloading pages in the background in case page is not yet "
2243 "loaded in current tab.";
2244
Tibor Goldschwendt11b3cf22018-07-04 15:32:442245const char kBackgroundTaskComponentUpdateName[] =
2246 "Background Task Component Updates";
2247const char kBackgroundTaskComponentUpdateDescription[] =
2248 "Schedule component updates with BackgroundTaskScheduler";
2249
Michael van Ouwerkerkbda4ad82018-06-19 14:08:002250const char kCCTModuleName[] = "Chrome Custom Tabs Module";
2251const char kCCTModuleDescription[] =
2252 "Enables a dynamically loaded module in Chrome Custom Tabs, on Android.";
2253
Michael van Ouwerkerk29a7a292018-10-09 09:20:142254const char kCCTModuleCacheName[] = "Chrome Custom Tabs Module Cache";
2255const char kCCTModuleCacheDescription[] =
Michael van Ouwerkerka5df1ec2018-10-11 11:57:402256 "Enables a cache for dynamically loaded modules in Chrome Custom Tabs. "
2257 "Under mild memory pressure the cache may be retained for some time";
Michael van Ouwerkerk29a7a292018-10-09 09:20:142258
John Lin170c00b2018-11-21 15:44:252259const char kCCTModuleCustomHeaderName[] =
2260 "Chrome Custom Tabs Module Custom Header";
2261const char kCCTModuleCustomHeaderDescription[] =
2262 "Enables header customization by dynamically loaded modules in "
2263 "Chrome Custom Tabs.";
2264
alihanlivdumlu12ac4772019-01-17 17:37:182265const char kCCTModuleDexLoadingName[] = "Chrome Custom Tabs Module Dex Loading";
2266const char kCCTModuleDexLoadingDescription[] =
2267 "Enables loading Chrome Custom Tabs module code from a dex file "
2268 "provided by the module.";
2269
barkerd84051482018-11-13 14:46:562270const char kCCTModulePostMessageName[] =
2271 "Chrome Custom Tabs Module postMessage API";
2272const char kCCTModulePostMessageDescription[] =
2273 "Enables the postMessage API exposed to dynamically loaded modules in "
2274 "Chrome Custom Tabs.";
2275
Anna Malova9bb4ead2019-01-18 18:01:262276const char kCCTModuleUseIntentExtrasName[] =
2277 "Chrome Custom Tabs Module Intent Extras Usage";
2278const char kCCTModuleUseIntentExtrasDescription[] =
2279 "Enables usage of Intent's extras in Chrome Custom Tabs Module";
2280
Matthew Jones1abcb132018-07-09 17:59:462281const char kChromeDuetName[] = "Chrome Duet";
2282const char kChromeDuetDescription[] =
2283 "Enables Chrome Duet, split toolbar Chrome Home, on Android.";
Theresa Wellingtonb9243b22017-12-01 16:23:052284
Sarath Singapati83aef1c2017-11-16 15:54:522285const char kClearOldBrowsingDataName[] = "Clear older browsing data";
2286const char kClearOldBrowsingDataDescription[] =
2287 "Enables clearing of browsing data which is older than a given time "
2288 "period.";
2289
Brett Wilsonff596952017-07-14 01:06:552290const char kContentSuggestionsCategoryOrderName[] =
2291 "Default content suggestions category order (e.g. on NTP)";
2292const char kContentSuggestionsCategoryOrderDescription[] =
2293 "Set default order of content suggestion categories (e.g. on the NTP).";
2294
2295const char kContentSuggestionsCategoryRankerName[] =
2296 "Content suggestions category ranker (e.g. on NTP)";
2297const char kContentSuggestionsCategoryRankerDescription[] =
2298 "Set category ranker to order categories of content suggestions (e.g. on "
2299 "the NTP).";
2300
Vitalii Iarkof52ff802017-09-14 12:34:242301const char kContentSuggestionsDebugLogName[] = "Content suggestions debug log";
2302const char kContentSuggestionsDebugLogDescription[] =
2303 "Enable content suggestions debug log accessible through "
2304 "snippets-internals.";
2305
Donn Denman8e58ead2017-11-04 01:44:012306const char kContextualSearchMlTapSuppressionName[] =
2307 "Contextual Search ML tap suppression";
2308const char kContextualSearchMlTapSuppressionDescription[] =
2309 "Enables tap gestures to be suppressed to improve CTR by applying machine "
Donn Denman59729812018-01-09 01:27:022310 "learning. The \"Contextual Search Ranker prediction\" flag must also be "
2311 "enabled!";
Brett Wilsonff596952017-07-14 01:06:552312
2313const char kContextualSearchName[] = "Contextual Search";
2314const char kContextualSearchDescription[] =
2315 "Whether or not Contextual Search is enabled.";
2316
Donn Denman59729812018-01-09 01:27:022317const char kContextualSearchRankerQueryName[] =
2318 "Contextual Search Ranker prediction";
2319const char kContextualSearchRankerQueryDescription[] =
2320 "Enables prediction of tap gestures using Assist-Ranker machine learning.";
2321
2322const char kContextualSearchSecondTapName[] =
2323 "Contextual Search second tap triggering";
2324const char kContextualSearchSecondTapDescription[] =
2325 "Enables triggering on a second tap gesture even when Ranker would "
2326 "normally suppress that tap.";
2327
Donn Denmane9b5b7fb2018-07-24 22:19:492328const char kContextualSearchUnityIntegrationName[] =
2329 "Contextual Search integration with Unified Consent";
2330const char kContextualSearchUnityIntegrationDescription[] =
2331 "Enables integration of Tap to Search with Unified Consent.";
2332
Lei Zhang0a318af2018-11-14 02:19:462333const char kDisplayCutoutAPIName[] =
2334 "Enable support for the Display Cutout API";
2335const char kDisplayCutoutAPIDescription[] =
2336 "Enables developers to support devices that have a display cutout.";
Cathy Li2fb32bf82018-06-06 18:55:402337
Dmitry Skiba9c3efa72017-07-20 22:01:142338const char kDontPrefetchLibrariesName[] = "Don't Prefetch Libraries";
2339const char kDontPrefetchLibrariesDescription[] =
2340 "Don't prefetch libraries after loading.";
2341
Joy Ming189b0cc2017-12-08 19:42:432342const char kDownloadsLocationChangeName[] = "Enable downloads location change";
2343const char kDownloadsLocationChangeDescription[] =
2344 "Enable changing default downloads storage location on Android.";
2345
Shakti Sahu32b2ee102018-05-17 00:04:462346const char kDownloadProgressInfoBarName[] = "Enable download progress infobar";
2347const char kDownloadProgressInfoBarDescription[] =
2348 "Enables an infobar notifying users about status of current downloads.";
2349
Shakti Sahu9ec8cfd2018-07-17 13:29:292350const char kDownloadHomeV2Name[] = "Enable download home v2";
2351const char kDownloadHomeV2Description[] =
2352 "Enables the new UI for download home";
2353
Brett Wilsonff596952017-07-14 01:06:552354const char kEnableAndroidPayIntegrationV1Name[] = "Enable Android Pay v1";
2355const char kEnableAndroidPayIntegrationV1Description[] =
2356 "Enable integration with Android Pay using the first version of the API";
2357
2358const char kEnableAndroidPayIntegrationV2Name[] = "Enable Android Pay v2";
2359const char kEnableAndroidPayIntegrationV2Description[] =
2360 "Enable integration with Android Pay using the second version of the API";
2361
Fabio Tirelo918089a2018-10-22 21:24:082362const char kAutofillManualFallbackAndroidName[] =
2363 "Enable Autofill manual fallback for Addresses and Payments (Android)";
2364const char kAutofillManualFallbackAndroidDescription[] =
2365 "If enabled, adds toggle for addresses and payments bottom sheet to the "
2366 "keyboard accessory.";
2367
Fabio Tirelo315e65922018-09-05 03:35:492368const char kEnableAutofillRefreshStyleName[] =
2369 "Enable Autofill refresh style (Android)";
2370const char kEnableAutofillRefreshStyleDescription[] =
2371 "Enable modernized style for Autofill on Android";
2372
Vitalii Iarkof4ed32d2017-09-26 13:15:532373const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
Brett Wilsonff596952017-07-14 01:06:552374const char kEnableAndroidSpellcheckerDescription[] =
2375 "Enables use of the Android spellchecker.";
Brett Wilsonff596952017-07-14 01:06:552376
Lei Tianbd5a3bf2018-02-28 19:01:162377const char kEnableCommandLineOnNonRootedName[] =
2378 "Enable command line on non-rooted devices";
2379const char kEnableCommandLineOnNoRootedDescription[] =
2380 "Enable reading command line file on non-rooted devices (DANGEROUS).";
2381
Vitalii Iarkof4ed32d2017-09-26 13:15:532382const char kEnableContentSuggestionsNewFaviconServerName[] =
2383 "Get favicons for content suggestions from a new server.";
2384const char kEnableContentSuggestionsNewFaviconServerDescription[] =
2385 "If enabled, the content suggestions (on the NTP) will get favicons from a "
2386 "new favicon server.";
Brett Wilsonff596952017-07-14 01:06:552387
Vitalii Iarkof4ed32d2017-09-26 13:15:532388const char kEnableContentSuggestionsThumbnailDominantColorName[] =
2389 "Use content suggestions thumbnail dominant color.";
2390const char kEnableContentSuggestionsThumbnailDominantColorDescription[] =
2391 "Use content suggestions thumbnail dominant color as a placeholder before "
2392 "the real thumbnail is fetched (requires Chrome Home).";
2393
Brett Wilsonff596952017-07-14 01:06:552394const char kEnableCustomContextMenuName[] = "Enable custom context menu";
2395const char kEnableCustomContextMenuDescription[] =
2396 "Enables a new context menu when a link, image, or video is pressed within "
2397 "Chrome.";
2398
Becca Hughes6d73bac542018-06-18 20:38:502399const char kEnableMediaControlsExpandGestureName[] =
2400 "Enable Media Controls Expand Gesture";
2401const char kEnableMediaControlsExpandGestureDescription[] =
2402 "Enables a gesture to be used on the media controls to extend the video "
2403 "into the Display Cutout area.";
2404
Brett Wilsonff596952017-07-14 01:06:552405const char kEnableOmniboxClipboardProviderName[] =
2406 "Omnibox clipboard URL suggestions";
2407const char kEnableOmniboxClipboardProviderDescription[] =
2408 "Provide a suggestion of the URL stored in the clipboard (if any) upon "
2409 "focus in the omnibox.";
2410
Brett Wilsonff596952017-07-14 01:06:552411const char kEnableNtpAssetDownloadSuggestionsName[] =
2412 "Show asset downloads on the New Tab page";
2413const char kEnableNtpAssetDownloadSuggestionsDescription[] =
2414 "If enabled, the list of content suggestions on the New Tab page will "
2415 "contain assets (e.g. books, pictures, audio) that the user downloaded for "
2416 "later use.";
2417
2418const char kEnableNtpBookmarkSuggestionsName[] =
2419 "Show recently visited bookmarks on the New Tab page";
2420const char kEnableNtpBookmarkSuggestionsDescription[] =
2421 "If enabled, the list of content suggestions on the New Tab page will "
2422 "contain recently visited bookmarks.";
2423
Brett Wilsonff596952017-07-14 01:06:552424const char kEnableNtpOfflinePageDownloadSuggestionsName[] =
2425 "Show offline page downloads on the New Tab page";
2426const char kEnableNtpOfflinePageDownloadSuggestionsDescription[] =
2427 "If enabled, the list of content suggestions on the New Tab page will "
2428 "contain pages that the user downloaded for later use.";
2429
2430const char kEnableNtpRemoteSuggestionsName[] =
2431 "Show server-side suggestions on the New Tab page";
2432const char kEnableNtpRemoteSuggestionsDescription[] =
2433 "If enabled, the list of content suggestions on the New Tab page will "
2434 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
2435 "allows to override the source used to retrieve these server-side "
2436 "suggestions.";
2437
2438const char kEnableNtpSnippetsVisibilityName[] =
2439 "Make New Tab Page Snippets more visible.";
2440const char kEnableNtpSnippetsVisibilityDescription[] =
2441 "If enabled, the NTP snippets will become more discoverable with a larger "
2442 "portion of the first card above the fold.";
2443
2444const char kEnableNtpSuggestionsNotificationsName[] =
2445 "Notify about new content suggestions available at the New Tab page";
2446const char kEnableNtpSuggestionsNotificationsDescription[] =
2447 "If enabled, notifications will inform about new content suggestions on "
2448 "the New Tab page.";
2449
Brett Wilsonff596952017-07-14 01:06:552450const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
2451const char kEnableOfflinePreviewsDescription[] =
2452 "Enable showing offline page previews on slow networks.";
2453
2454const char kEnableOskOverscrollName[] = "Enable OSK Overscroll";
2455const char kEnableOskOverscrollDescription[] =
2456 "Enable OSK overscroll support. With this flag on, the OSK will only "
2457 "resize the visual viewport.";
2458
Brett Wilsonff596952017-07-14 01:06:552459const char kEnableWebNfcName[] = "WebNFC";
2460const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
2461
gogeraldf3cbb422017-07-26 14:37:122462const char kEnableWebPaymentsMethodSectionOrderV2Name[] =
2463 "Enable Web Payments method section order V2.";
2464const char kEnableWebPaymentsMethodSectionOrderV2Description[] =
2465 "Enable this option to display payment method section above address "
2466 "section instead of below it.";
2467
Donn Denmanffaeaa32018-10-12 17:37:532468const char kEphemeralTabName[] = "An Ephemeral Tab in an Overlay Panel";
2469const char kEphemeralTabDescription[] =
2470 "Enable a 'sneak peek' at a linked page in an overlay.";
2471
Lei Zhang0a318af2018-11-14 02:19:462472const char kExploreSitesName[] = "Explore websites";
2473const char kExploreSitesDescription[] =
2474 "Enables portal from new tab page to explore websites.";
2475
Xing Liu7d57dd32019-01-20 02:34:182476const char kForegroundNotificationManagerName[] =
2477 "Foreground notification manager";
2478const char kForegroundNotificationManagerDescription[] =
2479 "Enable foreground notification manager to handle foreground service and "
2480 "notification.";
2481
Jinsuk Kim459ee142018-11-28 06:27:312482const char kGestureNavigationName[] = "History navigation with gesture";
2483const char kGestureNavigationDescription[] =
2484 "Enable history navigation with horizontal gesture.";
2485
Raymes Khoury582b43132017-12-12 23:54:302486const char kGrantNotificationsToDSEName[] =
2487 "Grant notifications to the Default Search Engine";
2488const char kGrantNotificationsToDSENameDescription[] =
2489 "Automatically grant the notifications permission to the Default Search "
2490 "Engine";
2491
Daniel Parke74fcf862018-03-27 18:05:452492const char kHomePageButtonName[] = "Force Enable Home Page Button";
Daniel Park990d0992018-05-18 22:12:512493const char kHomePageButtonDescription[] = "Displays a home button if enabled.";
Daniel Parke74fcf862018-03-27 18:05:452494
Yafei Duanbb7663f32018-07-17 01:33:152495const char kHomepageTileName[] =
2496 "Enable Homepage tile shown in Suggested Tiles";
2497const char kHomepageTileDescription[] =
2498 "When NTPButton is enabled, the first tile of the Suggested Tiles will be "
2499 "used for homepage. It will not have an effect when NTPButton is disabled.";
2500
Jian Li4b252642018-07-23 19:49:072501const char kIncognitoStringsName[] = "Alternate incognito strings";
2502const char kIncognitoStringsDescription[] =
2503 "Show alternate incognito strings if enabled.";
2504
Theresa920e0ed2018-03-07 18:12:442505const char kInterestFeedContentSuggestionsDescription[] =
Yafei Duanbb7663f32018-07-17 01:33:152506 "Use the interest feed to render content suggestions. Currently "
2507 "content "
Theresa920e0ed2018-03-07 18:12:442508 "suggestions are shown on the New Tab Page.";
2509const char kInterestFeedContentSuggestionsName[] =
2510 "Interest Feed Content Suggestions";
2511
Brett Wilsonff596952017-07-14 01:06:552512const char kKeepPrefetchedContentSuggestionsName[] =
2513 "Keep prefetched content suggestions";
2514const char kKeepPrefetchedContentSuggestionsDescription[] =
2515 "If enabled, some of prefetched content suggestions are not replaced by "
2516 "the new fetched suggestions.";
2517
Leo Zhang051b75482017-12-20 03:28:302518const char kLanguagesPreferenceName[] = "Language Settings";
2519const char kLanguagesPreferenceDescription[] =
2520 "Enable this option for Language Settings feature on Android.";
2521
Brett Wilsonff596952017-07-14 01:06:552522const char kLsdPermissionPromptName[] =
2523 "Location Settings Dialog Permission Prompt";
2524const char kLsdPermissionPromptDescription[] =
2525 "Whether to use the Google Play Services Location Settings Dialog "
2526 "permission dialog.";
2527
Amirhossein Simjour97b4154f2018-02-20 03:49:592528const char kModalPermissionDialogViewName[] = "Modal Permission Dialog";
2529const char kModalPermissionDialogViewDescription[] =
2530 "Enable this option to use ModalDialogManager for permission Dialogs.";
2531
Brett Wilsonff596952017-07-14 01:06:552532const char kMediaScreenCaptureName[] = "Experimental ScreenCapture.";
2533const char kMediaScreenCaptureDescription[] =
2534 "Enable this option for experimental ScreenCapture feature on Android.";
2535
2536const char kModalPermissionPromptsName[] = "Modal Permission Prompts";
2537const char kModalPermissionPromptsDescription[] =
2538 "Whether to use permission dialogs in place of permission infobars.";
2539
Finnur Thorarinssonc1488fc62018-07-09 19:21:572540const char kNewContactsPickerName[] = "Enable new contacts picker";
2541const char kNewContactsPickerDescription[] =
2542 "Activates the new picker for selecting contacts.";
2543
Dan Harrington541db9e2018-07-30 18:36:302544const char kNewNetErrorPageUIName[] = "Enable new UI for net-error page";
2545const char kNewNetErrorPageUIDescription[] =
2546 "Selects which new UI experience to show on the net-error (Dino) page";
2547
Brett Wilsonff596952017-07-14 01:06:552548const char kNewPhotoPickerName[] = "Enable new Photopicker";
2549const char kNewPhotoPickerDescription[] =
2550 "Activates the new picker for selecting photos.";
2551
2552const char kNoCreditCardAbort[] = "No Credit Card Abort";
2553const char kNoCreditCardAbortDescription[] =
2554 "Whether or not the No Credit Card Abort is enabled.";
2555
Daniel Park990d0992018-05-18 22:12:512556const char kNtpButtonName[] = "Enable NTP Button";
2557const char kNtpButtonDescription[] =
2558 "Displays a New Tab Page button in the toolbar if enabled.";
2559
Brett Wilsonff596952017-07-14 01:06:552560const char kOfflineBookmarksName[] = "Enable offline bookmarks";
2561const char kOfflineBookmarksDescription[] =
2562 "Enable saving bookmarked pages for offline viewing.";
2563
Jian Liade82832018-09-06 22:31:412564const char kOfflineIndicatorAlwaysHttpProbeName[] = "Always http probe";
2565const char kOfflineIndicatorAlwaysHttpProbeDescription[] =
2566 "Always do http probe to detect network connectivity for offline indicator "
2567 "as opposed to just taking the connection state from the system."
2568 "Used for testing.";
2569
2570const char kOfflineIndicatorChoiceName[] = "Offline indicator choices";
2571const char kOfflineIndicatorChoiceDescription[] =
2572 "Show an offline indicator while offline.";
Jian Li1413ebf2018-06-14 20:46:322573
Brett Wilsonff596952017-07-14 01:06:552574const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
2575const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
2576
2577const char kOfflinePagesCtV2Name[] = "Enable Offline Pages CT V2 features.";
2578const char kOfflinePagesCtV2Description[] =
2579 "V2 features include attributing pages to the app that initiated the "
2580 "custom tabs, and being able to query for pages by page attribution.";
2581
Cathy Li7311d792018-04-05 00:34:162582const char kOfflinePagesCTSuppressNotificationsName[] =
2583 "Disable download complete notification for whitelisted CCT apps.";
2584const char kOfflinePagesCTSuppressNotificationsDescription[] =
2585 "Disable download complete notification for page downloads originating "
2586 "from a CCT app whitelisted to show their own download complete "
2587 "notification.";
2588
Candice Sy74fa7a352018-03-30 23:46:492589const char kOfflinePagesDescriptiveFailStatusName[] =
2590 "Enables descriptive failed download status text.";
2591const char kOfflinePagesDescriptiveFailStatusDescription[] =
2592 "Enables failed download status text in notifications and Downloads Home "
2593 "to state the reason the request failed if the failure is actionable.";
2594
2595const char kOfflinePagesDescriptivePendingStatusName[] =
2596 "Enables descriptive pending download status text.";
2597const char kOfflinePagesDescriptivePendingStatusDescription[] =
2598 "Enables pending download status text in notifications and Downloads Home "
2599 "to state the reason the request is pending.";
2600
2601const char kOfflinePagesInDownloadHomeOpenInCctName[] =
2602 "Enables offline pages in the downloads home to be opened in CCT.";
2603const char kOfflinePagesInDownloadHomeOpenInCctDescription[] =
2604 "When enabled offline pages launched from the Downloads Home will be "
2605 "opened in Chrome Custom Tabs (CCT) instead of regular tabs.";
2606
Carlos Knippschild09272ecd2017-12-09 03:29:362607const char kOfflinePagesLimitlessPrefetchingName[] =
2608 "Removes resource usage limits for the prefetching of offline pages.";
2609const char kOfflinePagesLimitlessPrefetchingDescription[] =
2610 "Allows the prefetching of suggested offline pages to ignore resource "
2611 "usage limits. This allows it to completely ignore data usage limitations "
2612 "and allows downloads to happen with any kind of connection.";
2613
Brett Wilsonff596952017-07-14 01:06:552614const char kOfflinePagesLoadSignalCollectingName[] =
2615 "Enables collecting load timing data for offline page snapshots.";
2616const char kOfflinePagesLoadSignalCollectingDescription[] =
2617 "Enables loading completeness data collection while writing an offline "
2618 "page. This data is collected in the snapshotted offline page to allow "
2619 "data analysis to improve deciding when to make the offline snapshot.";
2620
2621const char kOfflinePagesPrefetchingName[] =
2622 "Enables suggested offline pages to be prefetched.";
2623const char kOfflinePagesPrefetchingDescription[] =
2624 "Enables suggested offline pages to be prefetched, so useful content is "
2625 "available while offline.";
2626
Pete Williamson7845dff2017-09-20 11:06:192627const char kOfflinePagesResourceBasedSnapshotName[] =
2628 "Enables offline page snapshots to be based on percentage of page loaded.";
2629const char kOfflinePagesResourceBasedSnapshotDescription[] =
2630 "Enables offline page snapshots to use a resource percentage based "
2631 "approach for determining when the page is loaded as opposed to a time "
2632 "based approach";
2633
Collin Baker17f92a52017-07-19 21:41:252634const char kOfflinePagesRenovationsName[] = "Enables offline page renovations.";
2635const char kOfflinePagesRenovationsDescription[] =
2636 "Enables offline page renovations which correct issues with dynamic "
2637 "content that occur when offlining pages that use JavaScript.";
2638
Brett Wilsonff596952017-07-14 01:06:552639const char kOfflinePagesSharingName[] = "Enables offline pages to be shared.";
2640const char kOfflinePagesSharingDescription[] =
2641 "Enables the saved offline pages to be shared via other applications.";
2642
Yafei Duan36b4b5b2018-08-07 00:40:032643const char kOfflinePagesLivePageSharingName[] =
2644 "Enables live page sharing of offline pages";
2645const char kOfflinePagesLivePageSharingDescription[] =
2646 "Enables to share current loaded page as offline page by saving as MHTML "
2647 "first.";
2648
Cathy Lie0d88762018-04-12 08:03:012649const char kOfflinePagesShowAlternateDinoPageName[] =
2650 "Enable alternate dino page with more user capabilities.";
2651const char kOfflinePagesShowAlternateDinoPageDescription[] =
2652 "Enables the dino page to show more buttons and offer existing offline "
2653 "content.";
2654
Brett Wilsonff596952017-07-14 01:06:552655const char kOfflinePagesSvelteConcurrentLoadingName[] =
2656 "Enables concurrent background loading on svelte.";
2657const char kOfflinePagesSvelteConcurrentLoadingDescription[] =
2658 "Enables concurrent background loading (or downloading) of pages on "
2659 "Android svelte (512MB RAM) devices. Otherwise, background loading will "
2660 "happen when the svelte device is idle.";
2661
2662const char kOffliningRecentPagesName[] =
2663 "Enable offlining of recently visited pages";
2664const char kOffliningRecentPagesDescription[] =
2665 "Enable storing recently visited pages locally for offline use. Requires "
2666 "Offline Pages to be enabled.";
2667
Lei Zhang2eca9082017-10-17 20:42:502668const char kPayWithGoogleV1Name[] = "Pay with Google v1";
2669const char kPayWithGoogleV1Description[] =
Brett Wilsonff596952017-07-14 01:06:552670 "Enable Pay with Google integration into Web Payments with API version "
2671 "'1'.";
2672
Matthew Jonesa88b95852017-11-08 23:13:502673const char kProgressBarThrottleName[] = "Android progress update throttling.";
2674const char kProgressBarThrottleDescription[] =
2675 "Limit the maximum progress update to make progress appear smoother.";
2676
Brett Wilsonff596952017-07-14 01:06:552677const char kPullToRefreshEffectName[] = "The pull-to-refresh effect";
2678const char kPullToRefreshEffectDescription[] =
2679 "Page reloads triggered by vertically overscrolling content.";
2680
Piotr Swigon7c296ef2017-08-29 04:32:002681const char kPwaImprovedSplashScreenName[] =
2682 "Improved Splash Screen for standalone PWAs";
2683const char kPwaImprovedSplashScreenDescription[] =
2684 "Enables the Improved Splash Screen UX for standalone PWAs based on new "
2685 "Web App Manifest attributes";
Piotr Swigon9f630b32017-07-26 09:42:492686const char kPwaPersistentNotificationName[] =
2687 "Persistent notification in standalone PWA";
2688const char kPwaPersistentNotificationDescription[] =
2689 "Enables a persistent Android notification for standalone PWAs";
2690
Brett Wilsonff596952017-07-14 01:06:552691const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
2692const char kReaderModeHeuristicsDescription[] =
2693 "Determines what pages the Reader Mode infobar is shown on.";
2694const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
2695const char kReaderModeHeuristicsAdaboost[] = "Non-mobile-friendly articles";
2696const char kReaderModeHeuristicsAllArticles[] = "All articles";
2697const char kReaderModeHeuristicsAlwaysOff[] = "Never";
2698const char kReaderModeHeuristicsAlwaysOn[] = "Always";
2699
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:182700const char kReaderModeInCCTName[] = "Reader Mode in CCT";
2701const char kReaderModeInCCTDescription[] =
2702 "Open Reader Mode in Chrome Custom Tabs.";
2703
Varun Khaneja2a8229f2019-01-12 00:57:262704const char kSafeBrowsingTelemetryForApkDownloadsName[] =
2705 "Send some telemetry for APK downloads for extended reporting users";
2706const char kSafeBrowsingTelemetryForApkDownloadsDescription[] =
2707 "If enabled, sends some information about the source and hash of the "
2708 "contents of any APK files downloaded by a user who has opted into Safe "
2709 "Browsing Extended Reporting already.";
2710
Varun Khaneja80712a82018-10-12 23:34:592711const char kSafeBrowsingUseLocalBlacklistsV2Name[] =
2712 "Use local Safe Browsing blacklists";
2713const char kSafeBrowsingUseLocalBlacklistsV2Description[] =
2714 "If enabled, maintain a copy of Safe Browsing blacklists in the browser "
2715 "process to check the Safe Browsing reputation of URLs without calling "
2716 "into GmsCore for every URL.";
2717
Matthew Jones53114262018-12-12 16:36:472718const char kSearchReadyOmniboxName[] = "Search Ready Omnibox";
2719const char kSearchReadyOmniboxDescription[] =
2720 "Clears the omnibox and adds a suggestion item to share, copy, or edit the "
2721 "URL.";
2722
Brett Wilsonff596952017-07-14 01:06:552723const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2724const char kSetMarketUrlForTestingDescription[] =
2725 "When enabled, sets the market URL for use in testing the update menu "
2726 "item.";
2727
2728const char kSpannableInlineAutocompleteName[] = "Spannable inline autocomplete";
2729const char kSpannableInlineAutocompleteDescription[] =
2730 "A new type of inline autocomplete for the omnibox that works with "
2731 "keyboards that compose text.";
2732
Theresaeea05a12018-05-09 21:01:592733const char kSiteExplorationUiName[] = "Site Exploration UI";
2734const char kSiteExplorationUiDescription[] =
2735 "Show site suggestions in the Exploration UI";
2736
Lei Zhang0a318af2018-11-14 02:19:462737const char kStrictSiteIsolationName[] = "Strict site isolation";
2738const char kStrictSiteIsolationDescription[] =
2739 "Security mode that enables site isolation for all sites (SitePerProcess). "
2740 "In this mode, each renderer process will contain pages from at most one "
2741 "site, using out-of-process iframes when needed. "
2742 "Check chrome://process-internals to see the current isolation mode. "
2743 "Setting this flag to 'Enabled' turns on site isolation regardless of the "
2744 "default. Here, 'Disabled' is a legacy value that actually means "
2745 "'Default,' in which case site isolation may be already enabled based on "
2746 "platform, enterprise policy, or field trial. See also "
2747 "#site-isolation-trial-opt-out for how to disable site isolation for "
2748 "testing.";
2749
Anthony Vallee-Dubois4623e1b2018-10-11 22:09:182750const char kTranslateAndroidManualTriggerName[] =
2751 "Enable manual translate trigger";
2752const char kTranslateAndroidManualTriggerDescription[] =
2753 "Show a menu item in the main menu that triggers page translation.";
2754
Brett Wilsonff596952017-07-14 01:06:552755const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2756const char kUpdateMenuBadgeDescription[] =
Tommy Nyquist3c02e592018-10-18 23:36:442757 "When enabled, a badge will be shown on the app menu button if the update "
2758 "type is Update Available or Unsupported OS Version.";
Brett Wilsonff596952017-07-14 01:06:552759
2760const char kUpdateMenuItemCustomSummaryDescription[] =
2761 "When this flag and the force show update menu item flag are enabled, a "
2762 "custom summary string will be displayed below the update menu item.";
2763const char kUpdateMenuItemCustomSummaryName[] =
2764 "Update menu item custom summary";
2765
Tommy Nyquist3c02e592018-10-18 23:36:442766const char kUpdateMenuTypeName[] =
2767 "Forces the update menu type to a specific type";
2768const char kUpdateMenuTypeDescription[] =
2769 "When set, forces the update type to be a specific one, which impacts "
2770 "the app menu badge and menu item for updates.";
2771const char kUpdateMenuTypeNone[] = "None";
2772const char kUpdateMenuTypeUpdateAvailable[] = "Update Available";
2773const char kUpdateMenuTypeUnsupportedOSVersion[] = "Unsupported OS Version";
Brett Wilsonff596952017-07-14 01:06:552774
Marc Treib93af46a2017-08-23 13:30:002775const char kThirdPartyDoodlesName[] =
2776 "Enable Doodles for third-party search engines";
2777const char kThirdPartyDoodlesDescription[] =
2778 "Enables fetching and displaying Doodles on the NTP for third-party search "
2779 "engines.";
2780
Klaus Weidneraaf697f2018-01-18 20:07:362781const char kWebXrRenderPathName[] = "WebXR presentation render path";
2782const char kWebXrRenderPathDescription[] =
2783 "Render path to use for WebXR presentation (including WebVR)";
2784const char kWebXrRenderPathChoiceClientWaitDescription[] =
2785 "ClientWait (Baseline)";
2786const char kWebXrRenderPathChoiceGpuFenceDescription[] =
2787 "GpuFence (Android N+)";
Klaus Weidnerd25dff42018-04-12 06:56:072788const char kWebXrRenderPathChoiceSharedBufferDescription[] =
2789 "SharedBuffer (Android O+)";
Klaus Weidneraaf697f2018-01-18 20:07:362790
Becky Zhou65584142019-01-10 18:22:292791#if BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2792
2793const char kAndroidNightModeName[] = "Enable night mode based on user settings";
2794const char kAndroidNightModeDescription[] =
2795 "If enabled, user can enable night mode through settings.";
2796
2797#endif // BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2798
Brett Wilson7b44537e2017-08-18 01:38:282799// Non-Android -----------------------------------------------------------------
Brett Wilsonff596952017-07-14 01:06:552800
Brett Wilson7b44537e2017-08-18 01:38:282801#else // !defined(OS_ANDROID)
brettw5f9c1642017-05-14 17:12:482802
Brett Wilson7b44537e2017-08-18 01:38:282803const char kAccountConsistencyName[] =
2804 "Identity consistency between browser and cookie jar";
2805const char kAccountConsistencyDescription[] =
2806 "When enabled, the browser manages signing in and out of Google accounts.";
2807const char kAccountConsistencyChoiceMirror[] = "Mirror";
2808const char kAccountConsistencyChoiceDice[] = "Dice";
vabr0215a8e2017-03-28 12:47:342809
Tommy Martino3fa3df52018-08-20 21:45:442810const char kAutofillDropdownLayoutName[] =
2811 "Autofill Dropdown Layout Experiment";
2812const char kAutofillDropdownLayoutDescription[] =
2813 "Alternate visual designs for the Autofill dropdown.";
2814
Fabio Tirelo3773dea2018-09-11 15:21:522815const char kAutofillPrimaryInfoStyleExperimentName[] =
2816 "Autofill experiment with primary info style";
2817const char kAutofillPrimaryInfoStyleExperimentDescription[] =
2818 "Allow experimentation with different typefaces for primary info on the "
2819 "Autofill dropdown (addresses and payment methods)";
2820
Chris Pickel3a227ae62017-08-24 10:47:262821const char kDoodlesOnLocalNtpName[] = "Enable doodles on the local NTP";
2822const char kDoodlesOnLocalNtpDescription[] =
2823 "Show doodles on the local New Tab page if Google is the default search "
2824 "engine.";
2825
Kyle Milkaedb39f52018-11-21 19:53:072826const char kSearchSuggestionsOnLocalNtpName[] =
2827 "Enable search suggestions on the local NTP";
2828const char kSearchSuggestionsOnLocalNtpDescription[] =
2829 "Show search suggestions on the local New Tab page if Google is the "
2830 "default search engine.";
2831
2832const char kPromosOnLocalNtpName[] = "Enable promos on the local NTP";
2833const char kPromosOnLocalNtpDescription[] =
2834 "Show promos on the local New Tab page if Google is the "
2835 "default search engine.";
2836
Lei Zhang0a318af2018-11-14 02:19:462837const char kEnableWebAuthenticationBleSupportName[] =
2838 "Web Authentication API BLE support";
2839const char kEnableWebAuthenticationBleSupportDescription[] =
2840 "Enable support for using Web Authentication API via Bluetooth security "
2841 "keys";
Sebastien Marchandd33f7dc2018-06-22 22:07:062842
Sebastien Marchandd33f7dc2018-06-22 22:07:062843const char kEnableWebAuthenticationCtap2SupportName[] =
2844 "Enable Web Authentication API support for CTAP2 security keys";
2845const char kEnableWebAuthenticationCtap2SupportDescription[] =
Kim Paulhamus92431372018-07-20 02:25:472846 "Enable CTAP2 security keys for the Web Authentication API.";
Sebastien Marchandd33f7dc2018-06-22 22:07:062847
2848const char kEnableWebAuthenticationTestingAPIName[] =
2849 "Web Authentication Testing API";
2850const char kEnableWebAuthenticationTestingAPIDescription[] =
2851 "Enable Web Authentication Testing API support, which disconnects the API "
2852 "implementation from the real world, and allows configuring virtual "
2853 "authenticator devices for testing";
2854
Jeffrey Cohenf04130a42018-08-29 00:22:272855const char kHappinessTrackingSurveysForDesktopName[] =
2856 "Happiness Tracking Surveys";
2857const char kHappinessTrackingSurveysForDesktopDescription[] =
2858 "Enable showing Happiness Tracking Surveys to users on Desktop";
2859
Lei Zhang0a318af2018-11-14 02:19:462860const char kInfiniteSessionRestoreName[] = "Infinite Session Restore";
2861const char kInfiniteSessionRestoreDescription[] =
2862 "Reduces the number of tabs being loaded simultaneously during session "
2863 "restore, to improve responsiveness of the foreground tab. This requires "
2864 "#enable-page-almost-idle.";
Dave Schuyler598a4a42018-01-04 02:15:102865
Travis Skarebcdb5ed32018-08-17 01:49:402866const char kOmniboxDriveSuggestionsName[] =
2867 "Omnibox Google Drive Document suggestions";
2868const char kOmniboxDriveSuggestionsDescriptions[] =
2869 "Display suggestions for Google Drive documents in the omnibox when Google "
2870 "is the default search engine.";
2871
Lei Zhang0a318af2018-11-14 02:19:462872const char kOmniboxPedalSuggestionsName[] = "Omnibox Pedal suggestions";
2873const char kOmniboxPedalSuggestionsDescription[] =
2874 "Enable omnibox Pedal suggestions using either a side button in suggestion "
2875 "or a dedicated suggestion item beneath the triggering line item. Omnibox "
2876 "Pedals accelerate actions within Chrome by detecting user intent and "
2877 "offering direct access to the end goal.";
2878
Orin Jaworski04c08b42018-07-11 02:39:562879const char kOmniboxReverseAnswersName[] = "Omnibox reverse answers";
2880const char kOmniboxReverseAnswersDescription[] =
2881 "Display answers with rows reversed (swapped); except definitions. Has no "
2882 "effect unless either the #upcoming-ui-features flag is Enabled or the "
2883 "#top-chrome-md flag is set to Refresh or Touchable Refresh.";
2884
Lei Zhang0a318af2018-11-14 02:19:462885const char kOmniboxRichEntitySuggestionsName[] =
2886 "Omnibox rich entity suggestions";
2887const char kOmniboxRichEntitySuggestionsDescription[] =
2888 "Display entity suggestions using images and an enhanced layout; showing "
2889 "more context and descriptive text about the entity. Has no effect unless "
2890 "either the #upcoming-ui-features flag is Enabled or the #top-chrome-md "
2891 "flag is set to Refresh or Touchable Refresh.";
2892
Kevin Bailey898669972017-11-06 15:34:492893const char kOmniboxTabSwitchSuggestionsName[] =
2894 "Omnibox tab switch suggestions";
2895const char kOmniboxTabSwitchSuggestionsDescription[] =
Justin Donnellye7926092018-06-18 14:57:212896 "Enable suggestions for switching to open tabs within the Omnibox. "
2897 "Has no effect unless either the #upcoming-ui-features flag is Enabled or "
2898 "the #top-chrome-md flag is set to Refresh or Touchable Refresh.";
Kevin Bailey898669972017-11-06 15:34:492899
krbcc621412017-06-01 19:40:282900const char kOmniboxTailSuggestionsName[] = "Omnibox tail suggestions";
2901const char kOmniboxTailSuggestionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192902 "Enable receiving tail suggestions, a type of search suggestion based on "
2903 "the last few words in the query, for the Omnibox.";
vabr0215a8e2017-03-28 12:47:342904
Sebastien Marchandd33f7dc2018-06-22 22:07:062905const char kPageAlmostIdleName[] = "Page Almost Idle";
2906const char kPageAlmostIdleDescription[] =
2907 "Make session restore use a definition of loading that waits for CPU and "
2908 "network quiescence.";
2909
2910const char kProactiveTabFreezeAndDiscardName[] =
2911 "Proactive Tab Freeze and Discard";
2912const char kProactiveTabFreezeAndDiscardDescription[] =
2913 "Enables proactive tab freezing and discarding. This requires "
2914 "#enable-page-almost-idle.";
2915
Nicolas Ouellet-payeur82eb65b2018-11-05 16:49:272916const char kShowManagedUiName[] = "Show managed UI for managed users";
2917const char kShowManagedUiDescription[] =
2918 "Enabled/disable showing enterprise users a 'Managed by your organization' "
2919 "message in the app menu and on some chrome:// pages.";
2920
Sebastien Marchandd33f7dc2018-06-22 22:07:062921const char kSiteCharacteristicsDatabaseName[] = "Site Characteristics database";
2922const char kSiteCharacteristicsDatabaseDescription[] =
2923 "Records usage of some features in a database while a tab is in background "
2924 "(title/favicon update, audio playback or usage of non-persistent "
2925 "notifications).";
2926
Brett Wilson7b44537e2017-08-18 01:38:282927const char kUseGoogleLocalNtpName[] = "Enable using the Google local NTP";
2928const char kUseGoogleLocalNtpDescription[] =
2929 "Use the local New Tab page if Google is the default search engine.";
spqchan064a8112017-04-18 16:46:322930
Brett Wilson7b44537e2017-08-18 01:38:282931#if defined(GOOGLE_CHROME_BUILD)
2932
2933const char kGoogleBrandedContextMenuName[] =
2934 "Google branding in the context menu";
2935const char kGoogleBrandedContextMenuDescription[] =
2936 "Shows a Google icon next to context menu items powered by Google "
2937 "services.";
2938
2939#endif // !defined(GOOGLE_CHROME_BUILD)
2940
2941#endif // !defined(OS_ANDROID)
2942
2943// Windows ---------------------------------------------------------------------
2944
2945#if defined(OS_WIN)
2946
David Bienvenud0ddda32018-11-01 16:59:162947const char kCalculateNativeWinOcclusionName[] =
2948 "Calculate window occlusion on Windows";
2949const char kCalculateNativeWinOcclusionDescription[] =
2950 "Calculate window occlusion on Windows will be used in the future "
2951 "to throttle and potentially unload foreground tabs in occluded windows";
2952
Brett Wilson7b44537e2017-08-18 01:38:282953const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
2954const char kCloudPrintXpsDescription[] =
2955 "XPS enables advanced options for classic printers connected to the Cloud "
2956 "Print with Chrome. Printers must be re-connected after changing this "
2957 "flag.";
2958
2959const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
2960const char kDisablePostscriptPrintingDescription[] =
2961 "Disables PostScript generation when printing to PostScript capable "
2962 "printers, and uses EMF generation in its place.";
2963
2964const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
2965const char kEnableAppcontainerDescription[] =
2966 "Enables the use of an AppContainer on sandboxed processes to improve "
2967 "security.";
2968
James Forshawfd0ce342018-02-14 09:55:392969const char kEnableGpuAppcontainerName[] = "Enable GPU AppContainer Lockdown.";
2970const char kEnableGpuAppcontainerDescription[] =
2971 "Enables the use of an AppContainer for the GPU sandboxed processes to "
2972 "improve security.";
2973
Brett Wilson7b44537e2017-08-18 01:38:282974const char kGdiTextPrinting[] = "GDI Text Printing";
2975const char kGdiTextPrintingDescription[] =
2976 "Use GDI to print text as simply text";
2977
Brett Wilson7b44537e2017-08-18 01:38:282978const char kTraceExportEventsToEtwName[] =
2979 "Enable exporting of tracing events to ETW.";
2980const char kTraceExportEventsToEtwDesription[] =
2981 "If enabled, trace events will be exported to the Event Tracing for "
2982 "Windows (ETW) and can then be captured by tools such as UIForETW or "
2983 "Xperf.";
2984
Olli Etuaho122321192018-09-07 10:15:292985const char kUseAngleName[] = "Choose ANGLE graphics backend";
2986const char kUseAngleDescription[] =
2987 "Choose the graphics backend for ANGLE. D3D11 is used on most Windows "
2988 "computers by default. Using the OpenGL driver as the graphics backend may "
2989 "result in higher performance in some graphics-heavy applications, "
2990 "particularly on NVIDIA GPUs. It can increase battery and memory usage of "
2991 "video playback.";
2992
2993const char kUseAngleDefault[] = "Default";
2994const char kUseAngleGL[] = "OpenGL";
2995const char kUseAngleD3D11[] = "D3D11";
2996const char kUseAngleD3D9[] = "D3D9";
2997
Brett Wilson7b44537e2017-08-18 01:38:282998const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2999const char kUseWinrtMidiApiDescription[] =
3000 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
3001 "later).";
3002
3003const char kWindows10CustomTitlebarName[] = "Custom-drawn Windows 10 Titlebar";
3004const char kWindows10CustomTitlebarDescription[] =
3005 "If enabled, Chrome will draw the titlebar and caption buttons instead of "
3006 "deferring to Windows.";
3007
3008#endif // defined(OS_WIN)
3009
3010// Mac -------------------------------------------------------------------------
3011
3012#if defined(OS_MACOSX)
3013
Brett Wilson7b44537e2017-08-18 01:38:283014const char kContentFullscreenName[] = "Improved Content Fullscreen";
3015const char kContentFullscreenDescription[] =
3016 "Fullscreen content window detaches from main browser window and goes to "
3017 "a new space without moving or changing the original browser window.";
3018
Martin Kreichgauer1ca416d2018-07-11 00:43:193019const char kEnableWebAuthenticationTouchIdName[] =
3020 "Web Authentication API Touch ID support";
3021const char kEnableWebAuthenticationTouchIdDescription[] =
3022 "Enables a built-in Touch ID authenticator for the Web Authentication API.";
3023
Brett Wilson7b44537e2017-08-18 01:38:283024const char kHostedAppsInWindowsName[] =
3025 "Allow hosted apps to be opened in windows";
3026const char kHostedAppsInWindowsDescription[] =
3027 "Allows hosted apps to be opened in windows instead of being limited to "
3028 "tabs.";
3029
Christopher Cameron57dee5a42018-09-25 01:20:083030const char kCreateAppWindowsInAppShimProcessName[] =
3031 "Create native windows in the app process";
3032const char kCreateAppWindowsInAppShimProcessDescription[] =
3033 "Create native windows the app shim process, instead of of the browser "
3034 "process.";
3035
Lei Zhange065b572018-12-11 08:00:413036const char kEnableCustomMacPaperSizesName[] = "Enable custom paper sizes";
3037const char kEnableCustomMacPaperSizesDescription[] =
3038 "Allow use of custom paper sizes in Print Preview.";
3039
Lei Zhang2eca9082017-10-17 20:42:503040const char kMacTouchBarName[] = "Hardware Touch Bar";
3041const char kMacTouchBarDescription[] = "Control the use of the Touch Bar.";
Brett Wilson7b44537e2017-08-18 01:38:283042
Greg Kerr32483d1c2018-12-18 02:29:143043const char kMacV2GPUSandboxName[] = "Mac V2 GPU Sandbox";
3044const char kMacV2GPUSandboxDescription[] =
3045 "Controls whether the GPU process on macOS uses the V1 or V2 sandbox.";
3046
Brett Wilson7b44537e2017-08-18 01:38:283047const char kMacViewsNativeAppWindowsName[] = "Toolkit-Views App Windows.";
3048const char kMacViewsNativeAppWindowsDescription[] =
3049 "Controls whether to use Toolkit-Views based Chrome App windows.";
3050
3051const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
3052const char kMacViewsTaskManagerDescription[] =
3053 "Controls whether to use the Toolkit-Views based Task Manager.";
3054
Tessa Nijssen4db9799e2018-08-06 21:04:383055const char kTextSuggestionsTouchBarName[] = "Text Suggestions Touch Bar";
3056const char kTextSuggestionsTouchBarDescription[] =
3057 "Enable text suggestions touch bar for textfields.";
3058
Brett Wilson7b44537e2017-08-18 01:38:283059#endif
3060
3061// Chrome OS -------------------------------------------------------------------
vabr0215a8e2017-03-28 12:47:343062
3063#if defined(OS_CHROMEOS)
3064
Brett Wilson7b44537e2017-08-18 01:38:283065const char kAcceleratedMjpegDecodeName[] =
3066 "Hardware-accelerated mjpeg decode for captured frame";
3067const char kAcceleratedMjpegDecodeDescription[] =
3068 "Enable hardware-accelerated mjpeg decode for captured frame where "
3069 "available.";
vabr0215a8e2017-03-28 12:47:343070
Brett Wilson7b44537e2017-08-18 01:38:283071const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click";
3072const char kAllowTouchpadThreeFingerClickDescription[] =
3073 "Enables touchpad three-finger-click as middle button.";
vabr0215a8e2017-03-28 12:47:343074
Bruno Kim Medeiros Cesarb98fe1d82018-06-06 18:11:523075const char kArcAvailableForChildName[] = "Allow ARC for child accounts";
3076const char kArcAvailableForChildDescription[] =
3077 "Allow child accounts to start Android apps.";
3078
Brett Wilson7b44537e2017-08-18 01:38:283079const char kArcBootCompleted[] = "Load Android apps automatically";
3080const char kArcBootCompletedDescription[] =
3081 "Allow Android apps to start automatically after signing in.";
vabr0215a8e2017-03-28 12:47:343082
Luum Habtemariamdaa8fd22018-06-25 22:39:433083const char kArcCupsApiName[] = "ARC CUPS API";
3084const char kArcCupsApiDescription[] =
3085 "Enables support of libcups APIs from ARC";
3086
Naoki Fukino153de8a2019-01-22 08:37:543087const char kArcDocumentsProviderName[] = "ARC DocumentsProvider integration";
3088const char kArcDocumentsProviderDescription[] =
3089 "Enables DocumentsProvider integration in Chrome OS Files app.";
3090
Satoshi Niwa8b1d5282018-10-24 04:53:033091const char kArcFilePickerExperimentName[] =
3092 "Enable file picker experiment for ARC";
3093const char kArcFilePickerExperimentDescription[] =
3094 "Enables using Chrome OS file picker in ARC.";
3095
Yuichiro Hanada0b63f062018-07-12 02:18:333096const char kArcInputMethodName[] = "Enable ARC input methods.";
3097const char kArcInputMethodDescription[] = "Enable ARC input methods.";
3098
Lev Rumyantsev7a8544312017-08-18 19:26:513099const char kArcNativeBridgeExperimentName[] =
3100 "Enable native bridge experiment for ARC";
3101const char kArcNativeBridgeExperimentDescription[] =
3102 "Enables experimental native bridge feature.";
3103
lgchengecd1c1a62018-01-09 02:59:463104const char kArcUsbHostName[] = "Enable ARC USB host integration";
3105const char kArcUsbHostDescription[] =
3106 "Allow Android apps to use USB host feature on ChromeOS devices.";
3107
Kevin Cernekeeb7f96a52017-10-25 17:40:183108const char kArcVpnName[] = "Enable ARC VPN integration";
3109const char kArcVpnDescription[] =
3110 "Allow Android VPN clients to tunnel Chrome traffic.";
3111
Qiang Xu045aff222018-05-21 23:21:013112const char kAshDisableLoginDimAndBlurName[] =
3113 "Disable dimming and blur on login screen.";
3114const char kAshDisableLoginDimAndBlurDescription[] =
3115 "Disable dimming and blur on login screen.";
3116
Qiang Xu045aff222018-05-21 23:21:013117const char kAshEnableDisplayMoveWindowAccelsName[] =
3118 "Enable shortcuts for moving window between displays.";
3119const char kAshEnableDisplayMoveWindowAccelsDescription[] =
3120 "Enable shortcuts for moving window between displays.";
3121
Qiang Xu045aff222018-05-21 23:21:013122const char kAshEnableMirroredScreenName[] = "Enable mirrored screen mode.";
3123const char kAshEnableMirroredScreenDescription[] =
3124 "Enable the mirrored screen mode. This mode flips the screen image "
3125 "horizontally.";
3126
Qiang Xu045aff222018-05-21 23:21:013127const char kAshEnablePersistentWindowBoundsName[] =
3128 "Enable persistent window bounds in multi-displays scenario.";
3129const char kAshEnablePersistentWindowBoundsDescription[] =
3130 "Enable persistent window bounds in multi-displays scenario.";
3131
Eliot Courtneye87a9c32018-11-20 03:33:023132const char kAshEnablePipRoundedCornersName[] =
3133 "Enable Picture-in-Picture rounded corners.";
3134const char kAshEnablePipRoundedCornersDescription[] =
3135 "Enable rounded corners on the Picture-in-Picture window.";
3136
Qiang Xu045aff222018-05-21 23:21:013137const char kAshEnableTrilinearFilteringName[] = "Enable trilinear filtering.";
3138const char kAshEnableTrilinearFilteringDescription[] =
3139 "Enable trilinear filtering.";
3140
Brett Wilson7b44537e2017-08-18 01:38:283141const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
3142const char kAshEnableUnifiedDesktopDescription[] =
3143 "Enable unified desktop mode which allows a window to span multiple "
3144 "displays.";
vabr0215a8e2017-03-28 12:47:343145
Qiang Xu045aff222018-05-21 23:21:013146const char kAshShelfColorName[] = "Shelf color in Chrome OS system UI";
3147const char kAshShelfColorDescription[] =
3148 "Enables/disables the shelf color to be a derived from the wallpaper. The "
3149 "--ash-shelf-color-scheme flag defines how that color is derived.";
3150
3151const char kAshShelfColorScheme[] = "Shelf color scheme in Chrome OS System UI";
3152const char kAshShelfColorSchemeDescription[] =
3153 "Specify how the color is derived from the wallpaper. This flag is only "
3154 "used when the --ash-shelf-color flag is enabled. Defaults to Dark & Muted";
3155const char kAshShelfColorSchemeLightVibrant[] = "Light & Vibrant";
3156const char kAshShelfColorSchemeNormalVibrant[] = "Normal & Vibrant";
3157const char kAshShelfColorSchemeDarkVibrant[] = "Dark & Vibrant";
3158const char kAshShelfColorSchemeLightMuted[] = "Light & Muted";
3159const char kAshShelfColorSchemeNormalMuted[] = "Normal & Muted";
3160const char kAshShelfColorSchemeDarkMuted[] = "Dark & Muted";
3161
Sean Kau5e956192017-10-06 22:25:173162const char kBulkPrintersName[] = "Bulk Printers Policy";
3163const char kBulkPrintersDescription[] = "Enables the new bulk printers policy";
3164
Brett Wilson7b44537e2017-08-18 01:38:283165const char kCaptivePortalBypassProxyName[] =
3166 "Bypass proxy for Captive Portal Authorization";
3167const char kCaptivePortalBypassProxyDescription[] =
3168 "If proxy is configured, it usually prevents from authorization on "
3169 "different captive portals. This enables opening captive portal "
3170 "authorization dialog in a separate window, which ignores proxy settings.";
vabr0215a8e2017-03-28 12:47:343171
Brett Wilson7b44537e2017-08-18 01:38:283172const char kCrOSComponentName[] = "Chrome OS Component";
3173const char kCrOSComponentDescription[] =
Xiaochu Liu4c1b75d2017-12-18 23:52:083174 "Disable the use of componentized escpr CUPS filter.";
vabr0215a8e2017-03-28 12:47:343175
Xiaochu Liu51d03fd2017-09-08 23:51:023176const char kCrOSContainerName[] = "Chrome OS Container";
3177const char kCrOSContainerDescription[] =
3178 "Enable the use of Chrome OS Container utility.";
3179
Brett Wilson7b44537e2017-08-18 01:38:283180const char kCrosRegionsModeName[] = "Cros-regions load mode";
3181const char kCrosRegionsModeDescription[] =
3182 "This flag controls cros-regions load mode";
3183const char kCrosRegionsModeDefault[] = "Default";
3184const char kCrosRegionsModeOverride[] = "Override VPD values.";
3185const char kCrosRegionsModeHide[] = "Hide VPD values.";
vabr0215a8e2017-03-28 12:47:343186
Daniel Ng96ab0c82019-01-16 01:21:553187const char kCrostiniAppSearchName[] = "Crostini App Search";
3188const char kCrostiniAppSearchDescription[] =
3189 "Enable search and installation of Crostini apps in the launcher.";
3190
Joel Hockey42387102019-01-10 01:19:323191const char kCrostiniBackupName[] = "Crostini Backup";
3192const char kCrostiniBackupDescription[] = "Enable Crostini export and import.";
3193
Joel Hockeyad5b9762018-09-01 12:06:083194const char kCrostiniFilesName[] = "Crostini Files";
3195const char kCrostiniFilesDescription[] =
3196 "Enable Crostini file sharing in Files app.";
3197
Josh Pratt57cea392018-10-30 02:59:063198const char kCrostiniUsbSupportName[] = "Crostini Usb Support";
3199const char kCrostiniUsbSupportDescription[] =
3200 "Enable mounting Usb devices in Crostini.";
3201
Josh Nohle2f82dcc2018-12-17 23:11:233202const char kCryptAuthV2EnrollmentName[] = "CryptAuth v2 Enrollment";
3203const char kCryptAuthV2EnrollmentDescription[] =
3204 "Use the CryptAuth v2 Enrollment protocol.";
3205
Daniele Castagnac4aeb572018-10-23 16:23:573206const char kDisableExplicitDmaFencesName[] = "Disable explicit dma-fences";
3207const char kDisableExplicitDmaFencesDescription[] =
3208 "Always rely on implicit syncrhonization between GPU and display "
3209 "controller instead of using dma-fences explcitily when available.";
3210
Qiang Xu045aff222018-05-21 23:21:013211const char kDisableSystemTimezoneAutomaticDetectionName[] =
3212 "SystemTimezoneAutomaticDetection policy support";
3213const char kDisableSystemTimezoneAutomaticDetectionDescription[] =
3214 "Disable system timezone automatic detection device policy.";
3215
Sammie Quonef6b4882017-09-14 16:50:053216const char kDisableTabletAutohideTitlebarsName[] =
3217 "Disable autohide titlebars in tablet mode";
3218const char kDisableTabletAutohideTitlebarsDescription[] =
3219 "Disable tablet mode autohide titlebars functionality. The user will be "
3220 "able to see the titlebar in tablet mode.";
3221
Xiaoqian Dai24b33eb2018-04-10 21:01:573222const char kDisableTabletSplitViewName[] = "Disable split view in Tablet mode";
3223const char kDisableTabletSplitViewDescription[] =
3224 "Disable split view for Chrome OS tablet mode.";
3225
Ahmed Fakhry4f567e692018-10-16 15:51:083226const char kDoubleTapToZoomInTabletModeName[] =
3227 "Double-tap to zoom in tablet mode";
3228const char kDoubleTapToZoomInTabletModeDescription[] =
3229 "If Enabled, double tapping in webpages while in tablet mode will zoom the "
3230 "page.";
3231
Daniel Zhang01399072018-08-16 22:28:203232const char kEnableAppListSearchAutocompleteName[] =
3233 "App List Search Autocomplete";
3234const char kEnableAppListSearchAutocompleteDescription[] =
3235 "Allow App List search box to autocomplete queries for Google searches and "
3236 "apps.";
3237
Qiang Xu53d1a5832018-05-24 18:44:193238const char kEnableAppShortcutSearchName[] =
3239 "Enable app shortcut search in launcher";
3240const char kEnableAppShortcutSearchDescription[] =
3241 "Enables app shortcut search in launcher";
3242
Vladislav Kaznacheevaa213a02018-10-29 17:54:283243const char kEnableAppDataSearchName[] = "Enable app data search in launcher";
3244const char kEnableAppDataSearchDescription[] =
3245 "Allow launcher search to access data available through Firebase App "
3246 "Indexing";
3247
Weidong Guo00d0b2b2018-06-07 00:39:303248const char kEnableAppsGridGapFeatureName[] =
3249 "Enable apps grid gap feature in launcher.";
3250const char kEnableAppsGridGapFeatureDescription[] =
3251 "Enables gaps at the end of each page and enables dragging an item to an "
3252 "empty page in launcher.";
3253
Lei Zhang0a318af2018-11-14 02:19:463254const char kEnableArcUnifiedAudioFocusName[] =
Becca Hughes34415e82018-10-05 18:47:373255 "Enable unified audio focus on ARC";
Lei Zhang0a318af2018-11-14 02:19:463256const char kEnableArcUnifiedAudioFocusDescription[] =
Becca Hughes34415e82018-10-05 18:47:373257 "If audio focus is enabled in Chrome then this will delegate audio focus "
3258 "control in Android apps to Chrome.";
3259
Yue Li958f9dd2018-11-15 00:56:593260const char kEnableAssistantVoiceMatchName[] = "Enable Assistant Voice Match";
3261const char kEnableAssistantVoiceMatchDescription[] =
3262 "Enable the Assistant Voice Match feature";
3263
Yue Liebaa9952018-12-07 21:41:263264const char kEnableAssistantAppSupportName[] = "Enable Assistant App Support";
3265const char kEnableAssistantAppSupportDescription[] =
3266 "Enable the Assistant App Support feature";
3267
Lei Zhang2eca9082017-10-17 20:42:503268const char kEnableBackgroundBlurName[] = "Enable background blur.";
3269const char kEnableBackgroundBlurDescription[] =
Wenzhao Zang50fb0b22017-11-07 01:38:423270 "Enables background blur for the Peeking Launcher and Tab Switcher.";
Alex Newcomer43cb7f12017-07-28 17:37:393271
Lei Zhang0ca70ea2018-09-07 17:51:013272const char kEnableChromeOsAccountManagerName[] = "Enable Account Manager";
3273const char kEnableChromeOsAccountManagerDescription[] =
Kushagra Sinha8a181fc2018-08-20 17:15:493274 "Enables the Chrome OS Account Manager";
3275
Alexander Alekseev38e1e0a2018-11-08 22:48:483276const char kEnableDiscoverAppName[] = "Enable Discover App";
3277const char kEnableDiscoverAppDescription[] =
3278 "Enable Discover App icon in launcher.";
3279
Xiaoqian Dai82d99192018-05-25 18:51:353280const char kEnableDragTabsInTabletModeName[] =
3281 "Enable dragging tabs in tablet mode";
3282const char kEnableDragTabsInTabletModeDescription[] =
3283 "Allows the user to drag the tabs out of a browser window in tablet mode.";
3284
Sam McNally201fbf94e2018-07-04 03:15:203285const char kEnableDriveFsName[] = "Enable DriveFS";
3286const char kEnableDriveFsDescription[] =
3287 "Enables use of the new DriveFS-based Drive sync client.";
3288
Luciano Pacheco20c48bd42018-11-07 00:57:083289const char kEnableMyFilesVolumeName[] = "Enable MyFiles as Volume";
3290const char kEnableMyFilesVolumeDescription[] =
Luciano Pacheco7fe772fe2018-11-07 02:31:453291 "Enables use of MyFiles as a read/write volume. This should be only "
3292 "used for testing or for trying to restore the previous Downloads content.";
Luciano Pacheco20c48bd42018-11-07 00:57:083293
Brett Wilson7b44537e2017-08-18 01:38:283294const char kEnableEhvInputName[] =
3295 "Emoji, handwriting and voice input on opt-in IME menu";
3296const char kEnableEhvInputDescription[] =
3297 "Enable access to emoji, handwriting and voice input form opt-in IME menu.";
vabr0215a8e2017-03-28 12:47:343298
Brett Wilson7b44537e2017-08-18 01:38:283299const char kEnableEncryptionMigrationName[] =
3300 "Enable encryption migration of user data";
3301const char kEnableEncryptionMigrationDescription[] =
3302 "If enabled and the device supports ARC, the user will be asked to update "
3303 "the encryption of user data when the user signs in.";
vabr0215a8e2017-03-28 12:47:343304
Qiang Xu045aff222018-05-21 23:21:013305const char kEnableFullscreenHandwritingVirtualKeyboardName[] =
3306 "Enable full screen handwriting virtual keyboard";
3307const char kEnableFullscreenHandwritingVirtualKeyboardDescription[] =
3308 "If enabled, the handwriting virtual keyboard will allow user to write "
3309 "anywhere on the screen";
3310
Xiaohui Chenfb0943e2018-10-16 22:44:373311const char kEnableGoogleAssistantName[] = "Enable Google Assistant";
3312const char kEnableGoogleAssistantDescription[] =
3313 "Enable an experimental Assistant implementation that will work on all "
3314 "Chromebooks.";
3315
Xiaohui Chenf4283f32018-11-26 20:02:503316const char kEnableGoogleAssistantDspName[] =
3317 "Enable Google Assistant with hardware-based hotword";
3318const char kEnableGoogleAssistantDspDescription[] =
3319 "Enable an experimental feature that uses hardware-based hotword detection "
3320 "for Assistant. Only a limited number of devices have this type of "
3321 "hardware support.";
3322
Xiaohui Chenc3baca42018-11-30 19:29:373323const char kEnableGoogleAssistantStereoInputName[] =
3324 "Enable Google Assistant with stereo audio input";
3325const char kEnableGoogleAssistantStereoInputDescription[] =
3326 "Enable an experimental feature that uses stereo audio input for hotword "
3327 "and voice to text detection in Google Assistant.";
3328
Qiang Xu045aff222018-05-21 23:21:013329const char kEnableHomeLauncherName[] = "Enable home launcher";
3330const char kEnableHomeLauncherDescription[] =
3331 "Enable home launcher in tablet mode.";
3332
Lei Zhang0ca70ea2018-09-07 17:51:013333const char kEnableHomeLauncherGesturesName[] = "Enable home launcher gestures";
3334const char kEnableHomeLauncherGesturesDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013335 "Enables using gestures to hide or show the home launcher.";
3336
Brett Wilson7b44537e2017-08-18 01:38:283337const char kEnableImeMenuName[] = "Enable opt-in IME menu";
3338const char kEnableImeMenuDescription[] =
3339 "Enable access to the new IME menu in the Language Settings page.";
vabr0215a8e2017-03-28 12:47:343340
Sammie Quon248ccef2018-08-28 23:00:013341const char kEnableOobeRecommendAppsScreenName[] =
3342 "Enable OOBE Recommend Apps Screen";
3343const char kEnableOobeRecommendAppsScreenDescription[] =
3344 "Enable the Recommend Apps Screen in OOBE which allows user to install apps"
3345 "from other devices";
3346
Qiang Xu045aff222018-05-21 23:21:013347const char kEnablePerUserTimezoneName[] = "Per-user time zone preferences.";
3348const char kEnablePerUserTimezoneDescription[] =
3349 "Chrome OS system timezone preference is stored and handled for each user "
3350 "individually.";
3351
Vladislav Kaznacheevaa213a02018-10-29 17:54:283352const char kEnablePlayStoreSearchName[] = "Enable Play Store search";
3353const char kEnablePlayStoreSearchDescription[] =
3354 "Enable Play Store search in launcher.";
3355
Qiang Xu045aff222018-05-21 23:21:013356const char kEnableSettingsShortcutSearchName[] =
3357 "Enable Settings shortcut search";
3358const char kEnableSettingsShortcutSearchDescription[] =
3359 "Enable Settings shortcut search in launcher.";
3360
Darren Shen3e49c63d2018-03-28 04:45:503361const char kEnableStylusVirtualKeyboardName[] =
3362 "Enable stylus virtual keyboard";
3363const char kEnableStylusVirtualKeyboardDescription[] =
3364 "If enabled, tapping with a stylus will show the handwriting virtual "
3365 "keyboard.";
3366
Jazz Xu2e5886662018-12-14 00:38:483367const char kEnableVideoPlayerNativeControlsName[] =
3368 "Enable native controls in video player app";
3369const char kEnableVideoPlayerNativeControlsDescription[] =
3370 "Enable native controls in video player app";
3371
Darren Shen0b4e5802018-07-10 03:12:263372const char kEnableVirtualKeyboardUkmName[] = "Enable UKM for virtual keyboard";
3373const char kEnableVirtualKeyboardUkmDescription[] =
3374 "Enables UKM for virtual keyboard";
3375
Lei Zhang0ca70ea2018-09-07 17:51:013376const char kEnableZeroStateSuggestionsName[] = "Enable Zero State Suggetions";
3377const char kEnableZeroStateSuggestionsDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013378 "Enable Zero State Suggestions feature in Launcher, which will show "
Vladislav Kaznacheevaa213a02018-10-29 17:54:283379 "suggestions when launcher search box is active with an empty query";
Sammie Quon248ccef2018-08-28 23:00:013380
Brett Wilson7b44537e2017-08-18 01:38:283381const char kEolNotificationName[] = "Disable Device End of Life notification.";
3382const char kEolNotificationDescription[] =
3383 "Disable Notifcation when Device is End of Life.";
3384
Akihiro Ota3ff6f8a2019-01-18 17:43:043385const char kExperimentalAccessibilityChromeVoxLanguageSwitchingName[] =
3386 "Enable experimental ChromeVox language switching.";
3387const char kExperimentalAccessibilityChromeVoxLanguageSwitchingDescription[] =
3388 "Enable ChromeVox language switching, which changes ChromeVox's "
3389 "output language upon detection of new language.";
3390
Brett Wilson7b44537e2017-08-18 01:38:283391const char kFileManagerTouchModeName[] = "Files App. touch mode";
3392const char kFileManagerTouchModeDescription[] =
3393 "Touchscreen-specific interactions of the Files app.";
3394
3395const char kFirstRunUiTransitionsName[] =
3396 "Animated transitions in the first-run tutorial";
3397const char kFirstRunUiTransitionsDescription[] =
3398 "Transitions during first-run tutorial are animated.";
3399
Brett Wilson7b44537e2017-08-18 01:38:283400const char kForceEnableStylusToolsName[] = "Force enable stylus features";
3401const char kForceEnableStylusToolsDescription[] =
3402 "Forces display of the stylus tools menu in the shelf and the stylus "
3403 "section in settings, even if there is no attached stylus device.";
3404
3405const char kGestureEditingName[] = "Gesture editing for the virtual keyboard.";
3406const char kGestureEditingDescription[] =
3407 "Enable/Disable gesture editing option in the settings page for the "
3408 "virtual keyboard.";
3409
3410const char kGestureTypingName[] = "Gesture typing for the virtual keyboard.";
3411const char kGestureTypingDescription[] =
3412 "Enable/Disable gesture typing option in the settings page for the virtual "
3413 "keyboard.";
3414
3415const char kInputViewName[] = "Input views";
3416const char kInputViewDescription[] =
3417 "Enable IME extensions to supply custom views for user input such as "
3418 "virtual keyboards.";
3419
Leo Zhang3cc77542018-11-07 00:58:083420const char kImeServiceName[] = "Enable IME service";
3421const char kImeServiceDescription[] =
3422 "Enable IME service to provide the IME functionality instead of NaCl";
3423
Megumi Hattori5a0d4182018-03-06 11:09:503424const char kLockScreenNotificationName[] = "Lock screen notification";
3425const char kLockScreenNotificationDescription[] =
3426 "Enable notifications on the lock screen.";
3427
Mohsen Izadi06a16f72018-11-29 02:29:223428const char kMashOopVizName[] = "Out-of-process viz for mash";
3429const char kMashOopVizDescription[] =
3430 "Runs viz in a separate process when mash is enabled (otherwise viz would "
3431 "run in ash process)";
3432
Qiang Xu045aff222018-05-21 23:21:013433const char kMaterialDesignInkDropAnimationSpeedName[] =
3434 "Material design ink drop animation speed";
3435const char kMaterialDesignInkDropAnimationSpeedDescription[] =
3436 "Sets the speed of the experimental visual feedback animations for "
3437 "material design.";
3438const char kMaterialDesignInkDropAnimationFast[] = "Fast";
3439const char kMaterialDesignInkDropAnimationSlow[] = "Slow";
3440
Brett Wilson7b44537e2017-08-18 01:38:283441const char kMemoryPressureThresholdName[] =
3442 "Memory discard strategy for advanced pressure handling";
3443const char kMemoryPressureThresholdDescription[] =
3444 "Memory discarding strategy to use";
3445const char kConservativeThresholds[] =
3446 "Conservative memory pressure release strategy";
3447const char kAggressiveCacheDiscardThresholds[] =
3448 "Aggressive cache release strategy";
3449const char kAggressiveTabDiscardThresholds[] =
3450 "Aggressive tab release strategy";
3451const char kAggressiveThresholds[] =
3452 "Aggressive tab and cache release strategy";
3453
3454const char kMtpWriteSupportName[] = "MTP write support";
3455const char kMtpWriteSupportDescription[] =
3456 "MTP write support in File System API (and file manager). In-place editing "
3457 "operations are not supported.";
3458
vabr0215a8e2017-03-28 12:47:343459const char kNetworkPortalNotificationName[] =
3460 "Notifications about captive portals";
vabr0215a8e2017-03-28 12:47:343461const char kNetworkPortalNotificationDescription[] =
3462 "If enabled, notification is displayed when device is connected to a "
3463 "network behind captive portal.";
3464
Brett Wilson7b44537e2017-08-18 01:38:283465const char kNewKoreanImeName[] = "New Korean IME";
3466const char kNewKoreanImeDescription[] =
3467 "New Korean IME, which is based on Google Input Tools' HMM engine.";
vabr0215a8e2017-03-28 12:47:343468
Anand K. Mistrydb5e0102018-10-04 04:24:003469const char kNewZipUnpackerName[] = "ZIP Archiver (unpacking)";
Brett Wilson7b44537e2017-08-18 01:38:283470const char kNewZipUnpackerDescription[] =
Anand K. Mistrydb5e0102018-10-04 04:24:003471 "Use the ZIP Archiver for mounting/unpacking ZIP files";
vabr0215a8e2017-03-28 12:47:343472
Qiang Xu045aff222018-05-21 23:21:013473const char kOfficeEditingComponentAppName[] =
3474 "Office Editing for Docs, Sheets & Slides";
3475const char kOfficeEditingComponentAppDescription[] =
3476 "Office Editing for Docs, Sheets & Slides for testing purposes.";
3477
Brett Wilson7b44537e2017-08-18 01:38:283478const char kPhysicalKeyboardAutocorrectName[] = "Physical keyboard autocorrect";
3479const char kPhysicalKeyboardAutocorrectDescription[] =
3480 "Enable physical keyboard autocorrect for US keyboard, which can provide "
3481 "suggestions as typing on physical keyboard.";
vabr0215a8e2017-03-28 12:47:343482
3483const char kPrinterProviderSearchAppName[] =
3484 "Chrome Web Store Gallery app for printer drivers";
vabr0215a8e2017-03-28 12:47:343485const char kPrinterProviderSearchAppDescription[] =
3486 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:193487 "searches Chrome Web Store for extensions that support printing to a USB "
3488 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:343489
Brett Wilson7b44537e2017-08-18 01:38:283490const char kQuickUnlockPinName[] = "Quick Unlock (PIN)";
3491const char kQuickUnlockPinDescription[] =
3492 "Enabling PIN quick unlock allows you to use a PIN to unlock your ChromeOS "
3493 "device on the lock screen after you have signed into your device.";
3494const char kQuickUnlockPinSignin[] = "Enable PIN when logging in.";
3495const char kQuickUnlockPinSigninDescription[] =
3496 "Enabling PIN allows you to use a PIN to sign in and unlock your ChromeOS "
3497 "device. After changing this flag PIN needs to be set up again.";
3498const char kQuickUnlockFingerprint[] = "Quick Unlock (Fingerprint)";
3499const char kQuickUnlockFingerprintDescription[] =
3500 "Enabling fingerprint quick unlock allows you to setup and use a "
3501 "fingerprint to unlock your Chromebook on the lock screen after you have "
3502 "signed into your device.";
vabr0215a8e2017-03-28 12:47:343503
James Cook0ba192bf2017-12-01 20:53:113504const char kShowTapsName[] = "Show taps";
3505const char kShowTapsDescription[] =
3506 "Draws a circle at each touch point, which makes touch points more obvious "
3507 "when projecting or mirroring the display. Similar to the Android OS "
3508 "developer option.";
3509
3510const char kShowTouchHudName[] = "Show HUD for touch points";
3511const char kShowTouchHudDescription[] =
3512 "Shows a trail of colored dots for the last few touch points. Pressing "
3513 "Ctrl-Alt-I shows a heads-up display view in the top-left corner. Helps "
3514 "debug hardware issues that generate spurious touch events.";
3515
James Cook28d7c482018-09-07 21:00:543516const char kSingleProcessMashName[] =
3517 "In-process window service (SingleProcessMash)";
3518const char kSingleProcessMashDescription[] =
3519 "Runs the system UI (ash) as a mojo service, but inside the browser "
3520 "process. The browser uses the mojo window service (ws) APIs.";
3521
Ahmed Fakhry58e6ef542018-09-04 18:05:383522const char kSlideTopChromeWithPageScrollsName[] =
3523 "Slide top-chrome with page scrolls";
3524const char kSlideTopChromeWithPageScrollsDescription[] =
3525 "If enabled, page scrolls in tablet mode will also scroll the top-chrome"
3526 " UI.";
3527
Jorge Gil5a8ccde2018-07-10 01:46:213528const char kSmartTextSelectionName[] = "Smart Text Selection";
3529const char kSmartTextSelectionDescription[] =
3530 "Shows quick actions for text "
3531 "selections in the context menu.";
3532
Chung-Sheng Wu468b0b32017-09-01 14:41:573533const char kSysInternalsName[] = "Enable Sys-Internals";
3534const char kSysInternalsDescription[] =
3535 "If enabled, user can monitor system information at "
3536 "chrome://sys-internals.";
3537
Brett Wilson7b44537e2017-08-18 01:38:283538const char kTetherName[] = "Instant Tethering";
3539const char kTetherDescription[] =
3540 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
3541 "phone to share its Internet connection with this device.";
stanisc14bed0b132017-05-10 17:46:373542
Brett Wilson7b44537e2017-08-18 01:38:283543const char kTouchscreenCalibrationName[] =
3544 "Enable/disable touchscreen calibration option in material design settings";
3545const char kTouchscreenCalibrationDescription[] =
3546 "If enabled, the user can calibrate the touch screen displays in "
3547 "chrome://settings/display.";
yhanadac5bff5b2017-05-18 06:37:093548
Qiang Xu045aff222018-05-21 23:21:013549const char kUiDevToolsName[] = "Enable native UI inspection";
3550const char kUiDevToolsDescription[] =
3551 "Enables inspection of native UI elements. For local inspection use "
3552 "chrome://inspect#other";
3553
3554const char kUiShowCompositedLayerBordersName[] =
3555 "Show UI composited layer borders";
3556const char kUiShowCompositedLayerBordersDescription[] =
3557 "Show border around composited layers created by UI.";
3558const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
3559const char kUiShowCompositedLayerBordersSurface[] = "Surface";
3560const char kUiShowCompositedLayerBordersLayer[] = "Layer";
3561const char kUiShowCompositedLayerBordersAll[] = "All";
3562
3563const char kUiSlowAnimationsName[] = "Slow UI animations";
3564const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
3565
Mitsuru Oshima63d3f2a2017-08-23 00:12:113566// Force UI Mode
3567const char kUiModeName[] = "Force Ui Mode";
3568const char kUiModeDescription[] =
3569 R"*(This flag can be used to force a certain mode on to a chromebook, )*"
3570 R"*(despite its current orientation. "Tablet" means that the )*"
3571 R"*(chromebook will act as if it were in tablet mode. "Clamshell" )*"
3572 R"*(means that the chromebook will act as if it were in clamshell )*"
3573 R"*(mode . "Auto" means that the chromebook will alternate between )*"
3574 R"*(the two, based on its orientation.)*";
Min Chenfd25cd22018-11-06 01:50:513575const char kUiModeTablet[] = "Tablet";
Mitsuru Oshima63d3f2a2017-08-23 00:12:113576const char kUiModeClamshell[] = "Clamshell";
3577const char kUiModeAuto[] = "Auto (default)";
3578
Sonny Sasaka7fecfeda2018-07-11 23:47:553579const char kUnfilteredBluetoothDevicesName[] = "Unfiltered Bluetooth devices";
3580const char kUnfilteredBluetoothDevicesDescription[] =
3581 "Shows all Bluetooth devices in UI (System Tray/Settings Page.)";
3582
Allen Webbcdc8e69d2018-09-12 20:36:003583const char kUsbguardName[] = "Block new USB devices at the lock screen.";
3584const char kUsbguardDescription[] =
3585 "Prevents newly connected USB devices from operating at the lock screen"
3586 " until Chrome OS is unlocked to protect against malicious USB devices."
3587 " Already connected USB devices will continue to function.";
3588
Micah Morton79a7b522018-09-27 15:15:303589const char kShillSandboxingName[] =
3590 "Run shill, the ChromeOS network manager, in a sandbox.";
3591const char kShillSandboxingDescription[] =
3592 "Causes shill to be run as user/group 'shill', instead of 'root'.";
3593
Micah Morton02d3aba2018-11-20 01:51:453594const char kFsNosymfollowName[] =
3595 "Prevent symlink traversal on user-supplied filesystems.";
3596const char kFsNosymfollowDescription[] =
3597 "Causes user-supplied filesystems to be mounted with the 'nosymfollow'"
3598 " option, so the chromuimos LSM denies symlink traversal on the"
3599 " filesystem.";
3600
James Cooka1bcfa9a2018-01-30 00:18:403601const char kUseMashName[] = "Out-of-process system UI (mash)";
3602const char kUseMashDescription[] =
3603 "Runs the mojo UI service (mus) and the ash window manager and system UI "
3604 "in a separate process.";
Brett Wilson7b44537e2017-08-18 01:38:283605
Miguel Casas-Sanchez8ba32f92017-11-07 05:03:343606// TODO(mcasas): remove after https://crbug.com/771345.
3607const char kUseMonitorColorSpaceName[] = "Use monitor color space";
3608const char kUseMonitorColorSpaceDescription[] =
3609 "Enables Chrome to use the color space information provided by the monitor"
3610 " instead of the default sRGB color space.";
3611
Andres Calderon Jaramillo43c0e8a2018-08-21 02:46:233612const char kVaapiJpegImageDecodeAccelerationName[] =
3613 "VA-API JPEG decode acceleration for images";
3614const char kVaapiJpegImageDecodeAccelerationDescription[] =
3615 "Enable or disable decode acceleration of JPEG images (as opposed to camera"
3616 " captures) using the VA-API.";
3617
Brett Wilson7b44537e2017-08-18 01:38:283618const char kVideoPlayerChromecastSupportName[] =
3619 "Experimental Chromecast support for Video Player";
3620const char kVideoPlayerChromecastSupportDescription[] =
3621 "This option enables experimental Chromecast support for Video Player app "
3622 "on ChromeOS.";
3623
3624const char kVirtualKeyboardName[] = "Virtual Keyboard";
3625const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
3626
3627const char kVirtualKeyboardOverscrollName[] = "Virtual Keyboard Overscroll";
3628const char kVirtualKeyboardOverscrollDescription[] =
3629 "Enables virtual keyboard overscroll support.";
3630
3631const char kVoiceInputName[] = "Voice input on virtual keyboard";
3632const char kVoiceInputDescription[] =
3633 "Enables voice input on virtual keyboard.";
3634
3635const char kWakeOnPacketsName[] = "Wake On Packets";
3636const char kWakeOnPacketsDescription[] =
3637 "Enables waking the device based on the receipt of some network packets.";
orenb21da031c2017-06-30 21:24:203638
yhanadac5bff5b2017-05-18 06:37:093639#endif // defined(OS_CHROMEOS)
3640
Brett Wilson7b44537e2017-08-18 01:38:283641// Random platform combinations -----------------------------------------------
3642
3643#if defined(OS_WIN) || defined(OS_LINUX)
3644
3645const char kEnableInputImeApiName[] = "Enable Input IME API";
3646const char kEnableInputImeApiDescription[] =
3647 "Enable the use of chrome.input.ime API.";
3648
3649#endif // defined(OS_WIN) || defined(OS_LINUX)
3650
3651#if defined(OS_WIN) || defined(OS_MACOSX)
3652
3653const char kAutomaticTabDiscardingName[] = "Automatic tab discarding";
3654const char kAutomaticTabDiscardingDescription[] =
3655 "If enabled, tabs get automatically discarded from memory when the system "
3656 "memory is low. Discarded tabs are still visible on the tab strip and get "
3657 "reloaded when clicked on. Info about discarded tabs can be found at "
3658 "chrome://discards.";
3659
3660#endif // defined(OS_WIN) || defined(OS_MACOSX)
3661
lanwei83f54452018-06-21 23:51:043662#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3663
3664const char kDirectManipulationStylusName[] = "Direct Manipulation Stylus";
3665const char kDirectManipulationStylusDescription[] =
3666 "If enabled, Chrome will scroll web pages on stylus drag.";
3667
3668#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3669
Henrik Grunell63f2d772018-12-06 17:25:203670#if defined(OS_MACOSX) || defined(OS_CHROMEOS)
3671
3672const char kForceEnableSystemAecName[] = "Force enable system AEC";
3673const char kForceEnableSystemAecDescription[] =
3674 "Use system echo canceller instead of WebRTC echo canceller. If there is "
3675 "no system echo canceller available, getUserMedia with echo cancellation "
3676 "enabled will fail.";
3677
3678#endif // defined(OS_MACOSX) || defined(OS_CHROMEOS)
3679
Justin Donnelly110e40c2018-06-01 21:48:433680const char kExperimentalUiName[] = "Use all upcoming UI features";
3681const char kExperimentalUiDescription[] = "Use all upcoming UI features.";
Elly Fong-Jonesdfaf8532018-05-29 18:20:483682
Brett Wilson7b44537e2017-08-18 01:38:283683// Feature flags --------------------------------------------------------------
3684
Lei Zhang0a318af2018-11-14 02:19:463685#if defined(DCHECK_IS_CONFIGURABLE)
3686const char kDcheckIsFatalName[] = "DCHECKs are fatal";
3687const char kDcheckIsFatalDescription[] =
3688 "By default Chrome will evaluate in this build, but only log failures, "
3689 "rather than crashing. If enabled, DCHECKs will crash the calling process.";
3690#endif // defined(DCHECK_IS_CONFIGURABLE)
3691
Brett Wilson7b44537e2017-08-18 01:38:283692#if BUILDFLAG(ENABLE_VR)
3693
David Dorwin5a496c32017-11-17 01:45:053694const char kWebVrVsyncAlignName[] = "WebVR VSync-aligned timing";
3695const char kWebVrVsyncAlignDescription[] =
3696 "Align WebVR application rendering with VSync for smoother animations.";
3697
Bill Orr103ed272018-02-14 21:23:053698#if BUILDFLAG(ENABLE_OCULUS_VR)
3699const char kOculusVRName[] = "Oculus hardware support";
3700const char kOculusVRDescription[] =
3701 "If enabled, Chrome will use Oculus devices for VR (supported only on "
3702 "Windows 10 or later).";
3703#endif // ENABLE_OCULUS_VR
3704
Bill Orr49527562017-11-22 16:58:483705#if BUILDFLAG(ENABLE_OPENVR)
3706const char kOpenVRName[] = "OpenVR hardware support";
3707const char kOpenVRDescription[] =
Bill Orr5056e692018-01-17 02:08:073708 "If enabled, Chrome will use OpenVR devices for VR (supported only on "
3709 "Windows 10 or later).";
Bill Orr49527562017-11-22 16:58:483710#endif // ENABLE_OPENVR
3711
Bill Orrd2af6bd52019-01-23 02:50:243712#if BUILDFLAG(ENABLE_WINDOWS_MR)
3713const char kWindowsMixedRealityName[] = "Windows Mixed Reality support";
3714const char kWindowsMixedRealityDescription[] =
3715 "If enabled, Chrome will use Windows Mixed Reality devices for VR"
3716 " (supported only on Windows 10 or later).";
3717#endif // ENABLE_WINDOWS_MR
3718
Bill Orrecfb9fe2018-10-02 00:11:103719#if BUILDFLAG(ENABLE_ISOLATED_XR_SERVICE)
3720const char kXRSandboxName[] = "XR device sandboxing";
3721const char kXRSandboxDescription[] =
3722 "If enabled, Chrome will host VR APIs in a restricted process on desktop.";
3723#endif // ENABLE_ISOLATED_XR_SERVICE
3724
Brett Wilson7b44537e2017-08-18 01:38:283725#endif // ENABLE_VR
3726
Nico Weberaf3b00b2017-09-11 17:58:173727#if BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:283728
3729const char kNaclDebugMaskName[] =
3730 "Restrict Native Client GDB-based debugging by pattern";
3731const char kNaclDebugMaskDescription[] =
3732 "Restricts Native Client application GDB-based debugging by URL of "
3733 "manifest file. Native Client GDB-based debugging must be enabled for this "
3734 "option to work.";
3735const char kNaclDebugMaskChoiceDebugAll[] = "Debug everything.";
3736const char kNaclDebugMaskChoiceExcludeUtilsPnacl[] =
3737 "Debug everything except secure shell and the PNaCl translator.";
3738const char kNaclDebugMaskChoiceIncludeDebug[] =
3739 "Debug only if manifest URL ends with debug.nmf.";
3740
3741const char kNaclDebugName[] = "Native Client GDB-based debugging";
3742const char kNaclDebugDescription[] =
3743 "Enable GDB debug stub. This will stop a Native Client application on "
3744 "startup and wait for nacl-gdb (from the NaCl SDK) to attach to it.";
3745
3746const char kNaclName[] = "Native Client";
3747const char kNaclDescription[] =
3748 "Support Native Client for all web applications, even those that were not "
3749 "installed from the Chrome Web Store.";
3750
3751const char kPnaclSubzeroName[] = "Force PNaCl Subzero";
3752const char kPnaclSubzeroDescription[] =
3753 "Force the use of PNaCl's fast Subzero translator for all pexe files.";
3754
Nico Weberaf3b00b2017-09-11 17:58:173755#endif // BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:283756
Lei Zhang802201c2018-11-14 18:16:283757#if BUILDFLAG(ENABLE_PLUGINS)
3758
dstockwellcc759202019-01-11 00:42:123759#if defined(OS_CHROMEOS)
3760const char kPdfAnnotations[] = "PDF Annotations";
3761const char kPdfAnnotationsDescription[] =
3762 "Enable annotating PDF documents.";
3763#endif // defined(OS_CHROMEOS)
3764
Lei Zhang802201c2018-11-14 18:16:283765const char kPdfFormSaveName[] = "Save PDF Forms";
3766const char kPdfFormSaveDescription[] =
3767 "Enable saving PDFs with filled form data.";
3768
3769const char kPdfIsolationName[] = "PDF Isolation";
3770const char kPdfIsolationDescription[] =
3771 "Render PDF files from different origins in different plugin processes.";
3772
3773#endif // BUILDFLAG(ENABLE_PLUGINS)
3774
Brett Wilson7b44537e2017-08-18 01:38:283775#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3776
3777const char kAutofillCreditCardUploadName[] =
3778 "Enable offering upload of Autofilled credit cards";
3779const char kAutofillCreditCardUploadDescription[] =
3780 "Enables a new option to upload credit cards to Google Payments for sync "
3781 "to all Chrome devices.";
3782
3783#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3784
Collin Baker0a45d6a2018-12-20 19:21:503785#if BUILDFLAG(ENABLE_DESKTOP_IN_PRODUCT_HELP)
3786
3787const char kReopenTabInProductHelpName[] = "Reopen tab in-product help";
3788const char kReopenTabInProductHelpDescription[] =
3789 "Enable in-product help that guides a user to reopen a tab if it looks "
3790 "like they accidentally closed it.";
3791
3792#endif // BUILDFLAG(ENABLE_DESKTOP_IN_PRODUCT_HELP)
3793
Tomas Popela253a5832019-01-14 17:22:103794#if defined(WEBRTC_USE_PIPEWIRE)
3795
3796extern const char kWebrtcPipeWireCapturerName[] = "WebRTC PipeWire support";
3797extern const char kWebrtcPipeWireCapturerDescription[] =
3798 "When enabled the WebRTC will use the PipeWire multimedia server for "
3799 "capturing the desktop content on the Wayland display server.";
3800
3801#endif // #if defined(WEBRTC_USE_PIPEWIRE)
3802
Stephen Chenneyde6e5c82019-01-21 01:56:043803const char kAvoidFlashBetweenNavigationName[] =
3804 "Enable flash avoidance between same-origin navigations";
3805const char kAvoidFlahsBetweenNavigationDescription[] =
3806 "Enables experimental flash avoidance when navigating between pages "
3807 "in the same origin. This feature is in the implementation stages and "
3808 "currently has no effect.";
3809
Brett Wilson7b44537e2017-08-18 01:38:283810// ============================================================================
3811// Don't just add flags to the end, put them in the right section in
3812// alphabetical order just like the header file.
3813// ============================================================================
3814
vabr0215a8e2017-03-28 12:47:343815} // namespace flag_descriptions