blob: 5af85d4d58c353799c0dc703058f013c3e9e0037 [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
Kamila472a5942018-11-26 09:48:2761const char kAndroidSiteSettingsUIRefreshName[] =
62 "Android Site Settings UI changes.";
63const char kAndroidSiteSettingsUIRefreshDescription[] =
Kamila02f7e072018-10-08 09:50:2864 "Enable the new UI "
65 "changes in Site Settings in Android.";
66
Brett Wilsonf27ff602017-07-07 22:28:4767const char kAppBannersName[] = "App Banners";
68const char kAppBannersDescription[] =
69 "Enable the display of Progressive Web App banners, which prompt a user to "
70 "add a web app to their shelf, or other platform-specific equivalent.";
71
Ioana Pandelef9689a062018-06-22 15:35:5172const char kAutomaticPasswordGenerationName[] = "Automatic password generation";
73const char kAutomaticPasswordGenerationDescription[] =
74 "Allow Chrome to offer to generate passwords when it detects account "
75 "creation pages.";
76
Michael Lippautz6081dfa2018-10-18 13:10:1477const char kEnableBlinkHeapUnifiedGarbageCollectionName[] =
78 "Blink Heap Unified Garbage Collection";
79const char kEnableBlinkHeapUnifiedGarbageCollectionDescription[] =
80 "Enable unified garbage collection in Blink";
81
Ulan Degenbaevb5466a92018-07-19 12:35:3482const char kEnableBloatedRendererDetectionName[] = "Bloated renderer detection";
83const char kEnableBloatedRendererDetectionDescription[] =
84 "Enable bloated renderer detection";
85
Khushalba202212017-07-12 19:53:4986const char kAsyncImageDecodingName[] = "AsyncImageDecoding";
87const char kAsyncImageDecodingDescription[] =
88 "Enables asynchronous decoding of images from raster for web content";
89
sebsgca14b092018-12-07 16:56:1590extern const char kAutofillAlwaysShowServerCardsInSyncTransportName[] =
91 "AlwaysShowServerCardsInSyncTransport";
92extern const char kAutofillAlwaysShowServerCardsInSyncTransportDescription[] =
93 "Always show server cards when in sync transport mode for wallet data";
94
Roger McFarlane2eceba982018-05-18 01:37:1195const char kAutofillCacheQueryResponsesName[] =
96 "Cache Autofill Query Responses";
97const char kAutofillCacheQueryResponsesDescription[] =
98 "When enabled, autofill will cache the responses it receives from the "
99 "crowd-sourced field type prediction server.";
100
Jeffrey Cohen05cdafa392018-08-15 20:49:17101const char kAutofillEnableCompanyNameName[] =
102 "Enable Autofill Company Name field";
103const char kAutofillEnableCompanyNameDescription[] =
104 "When enabled, Company Name fields will be auto filled";
105
sebsge35b762c2018-03-29 20:33:27106const char kAutofillDynamicFormsName[] = "Autofill Dynamic Forms";
107const char kAutofillDynamicFormsDescription[] =
108 "Allows autofill to fill dynamically changing forms";
109
Anne Lime625362e2018-08-29 03:13:25110const char kAutofillNoLocalSaveOnUploadSuccessName[] =
111 "Disable locally saving card when credit card upload succeeds";
112const char kAutofillNoLocalSaveOnUploadSuccessDescription[] =
113 "When enabled, no local copy of server card will be saved when credit card "
114 "upload succeeds.";
115
Parastoo Geranmayeh2dcd14f92018-06-01 17:08:39116const char kAutofillPrefilledFieldsName[] = "Autofill Prefilled Fields";
117const char kAutofillPrefilledFieldsDescription[] =
118 "Allows autofill to fill fields previously filled by the website";
119
Lei Zhang0ca70ea2018-09-07 17:51:01120const char kAutofillPreviewStyleExperimentName[] =
Fabio Tirelo9b423c7b2018-08-15 14:32:18121 "Autofill Preview Style Experiment";
Lei Zhang0ca70ea2018-09-07 17:51:01122const char kAutofillPreviewStyleExperimentDescription[] =
Fabio Tirelo9b423c7b2018-08-15 14:32:18123 "Allows experimentation with the Autofill field preview's style.";
124
Roger McFarlane1a37d7b2018-04-20 22:45:19125const char kAutofillEnforceMinRequiredFieldsForHeuristicsName[] =
126 "Autofill Enforce Min Required Fields For Heuristics";
127const char kAutofillEnforceMinRequiredFieldsForHeuristicsDescription[] =
128 "When enabled, autofill will generally require a form to have at least 3 "
129 "fields before allowing heuristic field-type prediction to occur.";
130
131const char kAutofillEnforceMinRequiredFieldsForQueryName[] =
132 "Autofill Enforce Min Required Fields For Query";
133const char kAutofillEnforceMinRequiredFieldsForQueryDescription[] =
134 "When enabled, autofill will generally require a form to have at least 3 "
135 "fields before querying the autofill server for field-type predictions.";
136
137const char kAutofillEnforceMinRequiredFieldsForUploadName[] =
138 "Autofill Enforce Min Required Fields For Upload";
139const char kAutofillEnforceMinRequiredFieldsForUploadDescription[] =
140 "When enabled, autofill will generally require a form to have at least 3 "
141 "fillable fields before uploading field-type votes for that form.";
142
Moe Ahmadid3ddfcb2018-04-20 19:51:08143const char kAutofillRestrictUnownedFieldsToFormlessCheckoutName[] =
144 "Restrict formless form extraction";
145const char kAutofillRestrictUnownedFieldsToFormlessCheckoutDescription[] =
146 "Restrict extraction of formless forms to checkout flows";
147
Roger McFarlanee193ab122018-11-22 20:55:07148const char kAutofillRichMetadataQueriesName[] =
149 "Autofill - Rich metadata queries (Canary/Dev only)";
150const char kAutofillRichMetadataQueriesDescription[] =
151 "Transmit rich form/field metadata when querying the autofill server. "
152 "This feature only works on the Canary and Dev channels.";
153
Brett Wilsonf27ff602017-07-07 22:28:47154const char kAutoplayPolicyName[] = "Autoplay policy";
155const char kAutoplayPolicyDescription[] =
156 "Policy used when deciding if audio or video is allowed to autoplay.";
157
158const char kAutoplayPolicyUserGestureRequiredForCrossOrigin[] =
159 "User gesture is required for cross-origin iframes.";
160const char kAutoplayPolicyNoUserGestureRequired[] =
161 "No user gesture is required.";
162const char kAutoplayPolicyUserGestureRequired[] = "User gesture is required.";
163const char kAutoplayPolicyDocumentUserActivation[] =
164 "Document user activation is required.";
165
Maya Lekova4bbfdb7f2018-10-16 08:15:03166const char kAwaitOptimizationName[] = "Await optimization";
167const char kAwaitOptimizationDescription[] =
168 "Enables await taking 1 tick on the microtask queue.";
169
Brett Wilsonf27ff602017-07-07 22:28:47170const char kBleAdvertisingInExtensionsName[] = "BLE Advertising in Chrome Apps";
171const char kBleAdvertisingInExtensionsDescription[] =
172 "Enables BLE Advertising in Chrome Apps. BLE Advertising might interfere "
173 "with regular use of Bluetooth Low Energy features.";
174
Charles Harrisond629cc62017-10-05 01:39:54175const char kBlockTabUndersName[] = "Block tab-unders";
176const char kBlockTabUndersDescription[] =
177 "Blocks tab-unders in Chrome with some native UI to allow the user to "
178 "proceed.";
179
Brett Wilsonf27ff602017-07-07 22:28:47180const char kBrowserTaskSchedulerName[] = "Task Scheduler";
181const char kBrowserTaskSchedulerDescription[] =
182 "Enables redirection of some task posting APIs to the task scheduler.";
183
Carlos IL766fbc882018-02-16 02:34:52184const char kBundledConnectionHelpName[] = "Bundled Connection Help";
185const char kBundledConnectionHelpDescription[] =
Carlos ILaafcd73a2018-07-10 20:08:37186 "Enables or disables redirection to local help content for users who get "
187 "an interstitial after clicking the 'Learn More' link on a previous "
188 "interstitial.";
Carlos IL766fbc882018-02-16 02:34:52189
Brett Wilsonf27ff602017-07-07 22:28:47190const char kBypassAppBannerEngagementChecksName[] =
191 "Bypass user engagement checks";
192const char kBypassAppBannerEngagementChecksDescription[] =
193 "Bypasses user engagement checks for displaying app banners, such as "
194 "requiring that users have visited the site before and that the banner "
195 "hasn't been shown recently. This allows developers to test that other "
196 "eligibility requirements for showing app banners, such as having a "
197 "manifest, are met.";
198
Miguel Casas454d9cf2018-06-28 16:25:00199const char kCanvas2DImageChromiumName[] = "Canvas 2D Image Chromium";
200const char kCanvas2DImageChromiumDescription[] =
201 "Allows for using CHROMIUM_image GLES2 extension for HTML Canvas Contexts";
202
Brett Wilsonf27ff602017-07-07 22:28:47203const char kCastStreamingHwEncodingName[] =
204 "Cast Streaming hardware video encoding";
205const char kCastStreamingHwEncodingDescription[] =
206 "This option enables support in Cast Streaming for encoding video streams "
207 "using platform hardware.";
208
Amber Won478561d2017-08-19 01:02:59209const char kClickToOpenPDFName[] = "Click to open embedded PDFs";
210const char kClickToOpenPDFDescription[] =
211 "When the PDF plugin is unavailable, show a click-to-open placeholder for "
212 "embedded PDFs.";
213
Gary Kacmarcikfb69b212017-11-14 03:41:08214const char kClipboardContentSettingName[] = "Clipboard content setting";
215const char kClipboardContentSettingDescription[] =
216 "Enables a site-wide permission in the UI which controls access to the "
217 "asynchronous clipboard web API";
218
Brett Wilsonf27ff602017-07-07 22:28:47219const char kCloudImportName[] = "Cloud Import";
220const char kCloudImportDescription[] = "Allows the cloud-import feature.";
221
rbpotter9990eb42018-07-12 05:34:59222const char kCloudPrinterHandlerName[] = "Enable Cloud Printer Handler";
223const char kCloudPrinterHandlerDescription[] =
224 "Use the new cloud printer handler for communicating with the cloud "
225 "print server, instead of the cloud print interface in the Print "
226 "Preview WebUI.";
227
Tanja Gornakb0985dd2018-10-11 17:24:40228const char kFCMInvalidationsName[] =
229 "Enable invalidations delivery via new FCM based protocol";
230const char kFCMInvalidationsDescription[] =
231 "Use the new FCM-based protocol for deliveling invalidations";
232
Christopher Cameronceb8727d2017-09-07 23:53:16233const char kForceColorProfileSRGB[] = "sRGB";
234const char kForceColorProfileP3[] = "Display P3 D65";
235const char kForceColorProfileColorSpin[] = "Color spin with gamma 2.4";
236const char kForceColorProfileHdr[] = "scRGB linear (HDR where available)";
237
238const char kForceColorProfileName[] = "Force color profile";
239const char kForceColorProfileDescription[] =
240 "Forces Chrome to use a specific color profile instead of the color "
241 "of the window's current monitor, as specified by the operating system.";
242
Brett Wilsonf27ff602017-07-07 22:28:47243const char kCompositedLayerBordersName[] = "Composited render layer borders";
244const char kCompositedLayerBordersDescription[] =
245 "Renders a border around composited Render Layers to help debug and study "
246 "layer compositing.";
247
Theresac34db2d2018-06-28 00:03:11248const char kContextualSuggestionsButtonName[] = "Contextual Suggestions Button";
249const char kContextualSuggestionsButtonDescription[] =
250 "If enabled, shows a button to trigger contextual suggestions.";
251
Theresae308b9e2018-10-10 15:57:40252const char kContextualSuggestionsIPHReverseScrollName[] =
253 "Contextual Suggestions IPH Reverse Scroll";
254const char kContextualSuggestionsIPHReverseScrollDescription[] =
255 "Require a reverse scroll before showing in-product help for contextual "
256 "suggestions.";
257
Theresa0f2947b92018-07-02 21:27:58258const char kContextualSuggestionsOptOutName[] =
259 "Contextual Suggestions Opt-out";
260const char kContextualSuggestionsOptOutDescription[] =
261 "If enabled, allows the user to opt out of contextual suggestions.";
262
Brett Wilsonf27ff602017-07-07 22:28:47263const char kCreditCardAssistName[] = "Credit Card Assisted Filling";
264const char kCreditCardAssistDescription[] =
265 "Enable assisted credit card filling on certain sites.";
266
Thanh Le659cb102017-12-20 22:00:19267const char kDataSaverServerPreviewsName[] = "Data Saver Server Previews";
268const char kDataSaverServerPreviewsDescription[] =
269 "Allow the Data Reduction Proxy to serve previews.";
Brett Wilsonf27ff602017-07-07 22:28:47270
Brett Wilsonf27ff602017-07-07 22:28:47271const char kDebugPackedAppName[] = "Debugging for packed apps";
272const char kDebugPackedAppDescription[] =
273 "Enables debugging context menu options such as Inspect Element for packed "
274 "applications.";
275
Brett Wilsonf27ff602017-07-07 22:28:47276const char kDebugShortcutsName[] = "Debugging keyboard shortcuts";
277const char kDebugShortcutsDescription[] =
278 "Enables additional keyboard shortcuts that are useful for debugging Ash.";
279
280const char kDeviceDiscoveryNotificationsName[] =
281 "Device Discovery Notifications";
282const char kDeviceDiscoveryNotificationsDescription[] =
283 "Device discovery notifications on local network.";
284
285const char kDevtoolsExperimentsName[] = "Developer Tools experiments";
286const char kDevtoolsExperimentsDescription[] =
287 "Enables Developer Tools experiments. Use Settings panel in Developer "
288 "Tools to toggle individual experiments.";
289
290const char kDisableAudioForDesktopShareName[] =
291 "Disable Audio For Desktop Share";
292const char kDisableAudioForDesktopShareDescription[] =
293 "With this flag on, desktop share picker window will not let the user "
294 "choose whether to share audio.";
295
Arthur Sonzogni721f48e2018-10-31 17:10:02296const char kDisableIpcFloodingProtectionName[] =
297 "Disable IPC flooding protection";
298const char kDisableIpcFloodingProtectionDescription[] =
299 "Some javascript code can flood the inter process communication system. "
300 "This protection limits the rate (calls/seconds) at which theses function "
arthursonzogni443bd0ef2018-11-27 16:12:53301 "can be used. This flag disables the protection. This flag is deprecated "
302 "and will be removed in Chrome 76. Use the switch "
303 "--disable-ipc-flooding-protection instead.";
Arthur Sonzogni721f48e2018-10-31 17:10:02304
Chris Palmer917bc052018-03-14 19:28:31305const char kDisablePushStateThrottleName[] = "Disable pushState throttling";
306const char kDisablePushStateThrottleDescription[] =
307 "Disables throttling of history.pushState and history.replaceState method "
arthursonzogni443bd0ef2018-11-27 16:12:53308 "calls. This flag is deprecated and will be removed in Chrome 76. Use the "
309 "switch --disable-ipc-flooding-protection instead.";
Chris Palmer917bc052018-03-14 19:28:31310
Brett Wilsonf27ff602017-07-07 22:28:47311const char kDisableTabForDesktopShareName[] =
312 "Disable Desktop Share with tab source";
313const char kDisableTabForDesktopShareDescription[] =
314 "This flag controls whether users can choose a tab for desktop share.";
315
316const char kDisallowDocWrittenScriptsUiName[] =
317 "Block scripts loaded via document.write";
318const char kDisallowDocWrittenScriptsUiDescription[] =
319 "Disallows fetches for third-party parser-blocking scripts inserted into "
320 "the main frame via document.write.";
321
Christopher Thompson2ffffa2c2018-05-18 23:06:37322const char kDisallowUnsafeHttpDownloadsName[] =
323 "Block unsafe downloads over insecure connections";
324const char kDisallowUnsafeHttpDownloadsNameDescription[] =
325 "Disallows downloads of unsafe files (files that can potentially execute "
326 "code), where the final download origin or any origin in the redirect "
327 "chain is insecure.";
328
Brett Wilsonf27ff602017-07-07 22:28:47329const char kDriveSearchInChromeLauncherName[] =
330 "Drive Search in Chrome App Launcher";
331const char kDriveSearchInChromeLauncherDescription[] =
332 "Files from Drive will show up when searching the Chrome App Launcher.";
333
Brett Wilsonf27ff602017-07-07 22:28:47334const char kEmbeddedExtensionOptionsName[] = "Embedded extension options";
335const char kEmbeddedExtensionOptionsDescription[] =
336 "Display extension options as an embedded element in chrome://extensions "
337 "rather than opening a new tab.";
338
Dominic Mazzoni8ac98962018-05-25 05:44:55339const char kEnableAccessibilityObjectModelName[] = "Accessibility Object Model";
340const char kEnableAccessibilityObjectModelDescription[] =
341 "Enables experimental support for Accessibility Object Model APIs "
342 "that are in development.";
343
Becca Hughesac86cd442019-01-09 23:49:54344const char kEnableAudioFocusEnforcementName[] = "Audio Focus Enforcement";
345const char kEnableAudioFocusEnforcementDescription[] =
346 "Enables enforcement of a single media session having audio focus at "
347 "any one time. Requires #enable-media-session-service to be enabled too.";
348
Anthony Vallee-Dubois968ae4d2018-03-15 16:56:36349const char kEnableWebPaymentsSingleAppUiSkipName[] =
350 "Enable Web Payments single app UI skip";
351const char kEnableWebPaymentsSingleAppUiSkipDescription[] =
352 "Enable Web Payments to skip showing its UI if the developer specifies a "
353 "single app.";
354
Sebastien Lalancette5daaf4a2019-01-11 22:09:25355const char kEnableAutocompleteDataRetentionPolicyName[] =
356 "Enable automatic cleanup of expired Autocomplete entries.";
357const char kEnableAutocompleteDataRetentionPolicyDescription[] =
358 "If enabled, will clean-up Autocomplete entries whose last use date is "
359 "older than the current retention policy. These entries will be "
360 "permanently deleted from the client on startup, and will be unlinked "
361 "from sync.";
362
Florian Uunk8c428ea2018-07-18 11:12:52363const char kEnableAutofillAccountWalletStorageName[] =
364 "Enable the account data storage for autofill";
365const char kEnableAutofillAccountWalletStorageDescription[] =
366 "Enable the ephemeral storage for account data for autofill.";
367
Shanfeng Zhang19c16562017-10-17 02:30:40368const char kEnableAutofillCreditCardAblationExperimentDisplayName[] =
369 "Credit card autofill ablation experiment.";
370const char kEnableAutofillCreditCardAblationExperimentDescription[] =
371 "If enabled, credit card autofill suggestions will not display.";
372
Brett Wilsonf27ff602017-07-07 22:28:47373const char kEnableAutofillCreditCardLastUsedDateDisplayName[] =
374 "Display the last used date of a credit card in autofill.";
375const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
376 "If enabled, display the last used date of a credit card in autofill.";
377
Sujie Zhu2cf0e5c2018-07-17 18:00:27378const char kEnableAutofillCreditCardLocalCardMigrationName[] =
379 "Enable migrating local cards to Google Pay";
380const char kEnableAutofillCreditCardLocalCardMigrationDescription[] =
381 "If enabled, prompt migration of locally-saved credit cards to Google Pay.";
382
Jared Saulbc672a072018-06-16 05:22:12383const char kEnableAutofillCreditCardUploadEditableCardholderNameName[] =
384 "Make cardholder name editable in dialog during credit card upload";
385const char kEnableAutofillCreditCardUploadEditableCardholderNameDescription[] =
386 "If enabled, in certain situations when offering credit card upload to "
387 "Google Payments, the cardholder name can be edited within the "
388 "offer-to-save dialog, which is prefilled with the name from the signed-in "
389 "Google Account.";
390
Hao Zhang1be9c262018-11-03 00:23:51391const char kEnableAutofillCreditCardUploadEditableExpirationDateName[] =
392 "Make expiration date editable in dialog during credit card upload";
393const char kEnableAutofillCreditCardUploadEditableExpirationDateDescription[] =
394 "If enabled, if a credit card's expiration date was not detected when "
395 "offering card upload to Google Payments, the offer-to-save dialog "
396 "displays an expiration date selector.";
397
siyua9a4a8872018-10-05 03:46:56398const char kEnableAutofillLocalCardMigrationShowFeedbackName[] =
399 "Show the upload results dialog after local card migration";
400const char kEnableAutofillLocalCardMigrationShowFeedbackDescription[] =
401 "If enabled, the local card migration offer dialog will remain pending "
402 "after the user clicks the save button. Once migration is finished, "
403 "the dialog will be updated with the results of each card.";
404
tmartinocd414732018-02-12 19:01:01405const char kEnableAutofillNativeDropdownViewsName[] =
406 "Display Autofill Dropdown Using Views";
407const char kEnableAutofillNativeDropdownViewsDescription[] =
408 "If enabled, the Autofill Dropdown will be built natively using Views, "
409 "rather than painted directly to a canvas.";
410
Fabio Tirelo87552e02018-07-06 15:43:21411const char kEnableAutofillSaveCardDialogUnlabeledExpirationDateName[] =
412 "Show unlabeled expiration dates on the save card dialog";
413const char kEnableAutofillSaveCardDialogUnlabeledExpirationDateDescription[] =
414 "If enabled, expiration dates on the save card dialog (both local and "
415 "upstream) are shown without an 'Exp:' label.";
416
siyua172973d2018-11-21 22:23:20417const char kEnableAutofillSaveCardImprovedUserConsentName[] =
418 "Use updated UI for credit card save bubbles";
419const char kEnableAutofillSaveCardImprovedUserConsentDescription[] =
420 "If enabled, adds a [No thanks] button to credit card save bubbles and "
421 "updates their title headers.";
422
Manas Verma99541e52018-08-03 20:37:23423const char kEnableAutofillSaveCardSignInAfterLocalSaveName[] =
424 "Show Sign-In/Sync promo after saving a card locally";
425const char kEnableAutofillSaveCardSignInAfterLocalSaveDescription[] =
426 "If enabled, shows a sign in prompt to the user after the user "
427 "saves a card locally. This also introduces a Manage Cards bubble "
428 "which you can access from the card icon after saving a card.";
429
Jared Saul8a0c1e92018-10-10 18:22:47430const char kEnableAutofillSaveCreditCardUsesStrikeSystemName[] =
431 "Enable limit on offering to save the same credit card repeatedly";
432const char kEnableAutofillSaveCreditCardUsesStrikeSystemDescription[] =
433 "If enabled, prevents popping up the credit card offer-to-save prompt if "
434 "it has repeatedly been ignored, declined, or failed.";
435
Anne Lim9d8f66a2019-01-07 23:49:21436const char kEnableAutofillSaveCreditCardUsesStrikeSystemV2Name[] =
437 "Enable limit on offering to save the same credit card repeatedly using the"
438 "updated strike system implementation";
439const char kEnableAutofillSaveCreditCardUsesStrikeSystemV2Description[] =
440 "If enabled, uses the updated strike system implementation to prevent"
441 "popping up the credit card offer-to-save prompt if it has repeatedly been"
442 "ignored, declined, or failed.";
443
Lakshmi Kumar Dabbirua3d0805f2018-05-22 22:04:23444const char kEnableAutofillSendExperimentIdsInPaymentsRPCsName[] =
445 "Send experiment flag IDs in calls to Google Payments";
446const char kEnableAutofillSendExperimentIdsInPaymentsRPCsDescription[] =
447 "If enabled, adds the status of certain experiment variations when making "
448 "calls to Google Payments.";
449
Becca Hughes4d896c42018-05-29 16:58:51450const char kEnableAutoplayIgnoreWebAudioName[] =
451 "Autoplay ignores WebAudio playbacks";
452const char kEnableAutoplayIgnoreWebAudioDescription[] =
453 "If enabled, autoplay restrictions will be ignored for WebAudio.";
454
Becca Hughesc62f6a1d2018-08-16 15:59:47455const char kEnableAutoplayUnifiedSoundSettingsName[] =
456 "Autoplay unified sound settings UI";
457const char kEnableAutoplayUnifiedSoundSettingsDescription[] =
458 "If enabled, shows the new unified autoplay sound settings UI.";
459
Brett Wilsonf27ff602017-07-07 22:28:47460const char kEnableBrotliName[] = "Brotli Content-Encoding.";
461const char kEnableBrotliDescription[] =
462 "Enable Brotli Content-Encoding support.";
463
Qiang Xu0f602fe62017-12-22 01:31:20464const char kEnableCaptivePortalRandomUrl[] = "Captive Portal url Randomization";
465const char kEnableCaptivePortalRandomUrlDescription[] =
466 "Enable Captive Portal URL randomization.";
467
sclittle50e4bb92017-07-08 02:23:03468const char kEnableClientLoFiName[] = "Client-side Lo-Fi previews";
469
470const char kEnableClientLoFiDescription[] =
471 "Enable showing low fidelity images on some pages on slow networks.";
472
Patrick Noland8bc57472018-06-19 21:09:54473const char kEnableCSSFragmentIdentifiersName[] =
474 "Enable CSS Fragment Identifiers";
475const char kEnableCSSFragmentIdentifiersDescription[] =
476 "Enable support for specifying a target element using a css selector in "
477 "the fragment identifier.";
478
David Reveman87b4b692018-03-09 21:22:22479const char kEnableCursorMotionBlurName[] = "Enable Cursor Motion Blur";
480const char kEnableCursorMotionBlurDescription[] =
481 "Enable motion blur effect for the cursor.";
482
Doug Arnett08b4067b2017-10-12 20:14:44483const char kEnableNoScriptPreviewsName[] = "NoScript previews";
484
485const char kEnableNoScriptPreviewsDescription[] =
486 "Enable disabling JavaScript on some pages on slow networks.";
487
Thanh Le2c279fbc2017-11-21 01:25:40488const char kDataReductionProxyServerAlternative1[] = "Use alt. server config 1";
489const char kDataReductionProxyServerAlternative2[] = "Use alt. server config 2";
490const char kDataReductionProxyServerAlternative3[] = "Use alt. server config 3";
491const char kDataReductionProxyServerAlternative4[] = "Use alt. server config 4";
492const char kDataReductionProxyServerAlternative5[] = "Use alt. server config 5";
493const char kDataReductionProxyServerAlternative6[] = "Use alt. server config 6";
494const char kDataReductionProxyServerAlternative7[] = "Use alt. server config 7";
495const char kDataReductionProxyServerAlternative8[] = "Use alt. server config 8";
496const char kDataReductionProxyServerAlternative9[] = "Use alt. server config 9";
497const char kDataReductionProxyServerAlternative10[] =
498 "Use alt. server config 10";
rajendrantcfa60ba2018-10-30 09:16:54499const char kEnableDataReductionProxyNetworkServiceName[] =
500 "Data reduction proxy with network service";
501const char kEnableDataReductionProxyNetworkServiceDescription[] =
502 "Enable data reduction proxy when network service is enabled";
Brett Wilsonf27ff602017-07-07 22:28:47503const char kEnableDataReductionProxyServerExperimentName[] =
504 "Use an alternative Data Saver back end configuration.";
505const char kEnableDataReductionProxyServerExperimentDescription[] =
506 "Enable a different approach to saving data by configuring the back end "
507 "server";
508
509const char kEnableDataReductionProxySavingsPromoName[] =
510 "Data Saver 1 MB Savings Promo";
511const char kEnableDataReductionProxySavingsPromoDescription[] =
512 "Enable a Data Saver promo for 1 MB of savings. If Data Saver has already "
513 "saved 1 MB of data, then the promo will not be shown. Data Saver must be "
514 "enabled for the promo to be shown.";
515
Matt Giucad4870432017-11-24 01:04:38516const char kEnableDesktopPWAsName[] = "Desktop PWAs";
517const char kEnableDesktopPWAsDescription[] =
518 "Experimental windowing and install banner treatment for Progressive Web "
519 "Apps on desktop platforms. Implies #enable-experimental-app-banners.";
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17520
Giovanni Ortuño Urquidi40c8e792018-02-28 04:18:59521const char kEnableDesktopPWAsLinkCapturingName[] =
522 "Desktop PWAs Link Capturing";
523const char kEnableDesktopPWAsLinkCapturingDescription[] =
524 "Experimentally enable link capturing for Desktop PWAs. Navigations to "
525 "URLs that are in-scope of Desktop PWAs will open in a window. Requires "
526 "#enable-desktop-pwas.";
527
Jay Harris52511a02018-11-02 01:00:28528const char kDesktopPWAsCustomTabUIName[] = "Desktop PWAs Custom Tab UI";
529const char kDesktopPWAsCustomTabUIDescription[] =
530 "Browsing out-of-scope links in a desktop PWA will use the custom tab UI "
531 "for displaying the page title and origin instead of the location bar.";
532
Jay Harrisee7a7bc62018-10-09 01:47:49533const char kDesktopPWAsStayInWindowName[] =
534 "Desktop PWAs out-of-scope links open in the app window";
535const char kDesktopPWAsStayInWindowDescription[] =
Jay Harris52511a02018-11-02 01:00:28536 "Links to sites in a different scope will open inside the PWA window as "
537 "opposed to in the browser.";
Jay Harrisee7a7bc62018-10-09 01:47:49538
Christopher Lame66b7812018-09-26 01:49:24539const char kEnableSystemWebAppsName[] = "System Web Apps";
540const char kEnableSystemWebAppsDescription[] =
541 "Experimental system for using the Desktop PWA framework for running System"
542 "Apps (e.g Settings, Discover).";
543
Ahmed Fakhry0037de02018-01-29 19:58:31544const char kEnableDockedMagnifierName[] = "Docked Magnifier";
545const char kEnableDockedMagnifierDescription[] =
546 "Enables the Docked Magnifier (a.k.a. picture-in-picture magnifier).";
547
David Benjamin570460e2018-10-16 06:01:29548const char kEnforceTLS13DowngradeName[] = "TLS 1.3 downgrade hardening";
549const char kEnforceTLS13DowngradeDescription[] =
550 "This option enables the TLS 1.3 downgrade hardening mechanism. This "
551 "hardens TLS 1.3 connections while remaining compatible with TLS 1.0 "
552 "through 1.2 connections. Firewalls and proxies that do not function when "
553 "this is enabled do not implement TLS 1.0 through 1.2 correctly or "
554 "securely. They must be fixed by vendors.";
555
Brett Wilsonf27ff602017-07-07 22:28:47556const char kEnableEnumeratingAudioDevicesName[] =
557 "Experimentally enable enumerating audio devices.";
558const char kEnableEnumeratingAudioDevicesDescription[] =
559 "Experimentally enable the use of enumerating audio devices.";
560
561const char kEnableGenericSensorName[] = "Generic Sensor";
562const char kEnableGenericSensorDescription[] =
Mikhail Pozdnyakov73373a62017-08-24 17:31:25563 "Enables motion sensor classes based on Generic Sensor API, i.e. "
564 "Accelerometer, LinearAccelerationSensor, Gyroscope, "
565 "AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
566
567const char kEnableGenericSensorExtraClassesName[] =
568 "Generic Sensor Extra Classes";
569const char kEnableGenericSensorExtraClassesDescription[] =
570 "Enables an extra set of sensor classes based on Generic Sensor API, which "
571 "expose previously unavailable platform features, i.e. AmbientLightSensor "
572 "and Magnetometer interfaces.";
Brett Wilsonf27ff602017-07-07 22:28:47573
Brett Wilsonf27ff602017-07-07 22:28:47574const char kEnableHDRName[] = "HDR mode";
575const char kEnableHDRDescription[] =
576 "Enables HDR support on compatible displays.";
577
Ryan Sturm6a850902018-06-09 02:27:34578const char kEnableHeavyPageCappingName[] = "Heavy Page Capping";
579const char kEnableHeavyPageCappingDescription[] =
Ryan Sturm1550abeb2018-06-18 20:05:09580 "Enable showing an InfoBar on data heavy pages that allows the user to "
Ryan Sturma2cd49f2018-06-20 17:09:25581 "pause sub-resource request loading on the page. Using the 'Low' option "
Ryan Sturm2a2f11e2018-07-17 23:01:01582 "will reduce the triggering threshold to 1MB. Data saver must be enabled "
583 "in order to see the InfoBar.";
Ryan Sturm6a850902018-06-09 02:27:34584
David Bokan911bded2018-11-27 23:23:32585const char kEnableImplicitRootScrollerName[] = "Implicit Root Scroller";
586const char kEnableImplicitRootScrollerDescription[] =
587 "Enables implicitly choosing which scroller on a page is the 'root "
588 "scroller'. i.e. The one that gets special features like URL bar movement, "
589 "overscroll glow, rotation anchoring, etc.";
590
Robert Ogden5a63b242018-09-17 21:38:57591const char kEnablePreviewsAndroidOmniboxUIName[] =
592 "Previews Android Omnibox UI";
593const char kEnablePreviewsAndroidOmniboxUIDescription[] =
594 "Enable showing the Previews UI in the Omnibox on Android instead of an "
595 "InfoBar. This has no effect on other platforms.";
596
Robert Ogdence8c9572018-10-08 23:08:48597const char kEnableLitePageServerPreviewsName[] = "Lite Page Server Previews";
598const char kEnableLitePageServerPreviewsDescription[] =
Doug Arnett9c1f87562018-12-14 00:56:39599 "Enable showing Lite Page Previews served from a Previews Server."
600 "This feature will cause Chrome to redirect eligible navigations "
Robert Ogdence8c9572018-10-08 23:08:48601 "to a Google-owned domain that serves a pre-rendered version of the "
Doug Arnett9c1f87562018-12-14 00:56:39602 "original page. Also known as Lite Page Redirect Previews.";
Robert Ogdence8c9572018-10-08 23:08:48603
Hiroshige Hayashizaki99d5821e2018-05-02 04:25:41604const char kLayeredAPIName[] = "Experimental layered APIs";
605const char kLayeredAPIDescription[] =
606 "Enable layered API infrastructure, as well as several experimental "
607 "layered APIs. The syntax and the APIs exposed are experimental and will "
608 "change over time.";
609
Philip Rogers63481332018-12-01 22:16:51610const char kEnableBlinkGenPropertyTreesName[] = "Enable BlinkGenPropertyTrees";
611const char kEnableBlinkGenPropertyTreesDescription[] =
612 "Enable a new compositing mode where Blink generates the compositor "
613 "property trees.";
614
Ian Kilpatricke68ef11a2018-07-04 03:52:10615const char kEnableLayoutNGName[] = "Enable LayoutNG";
616const char kEnableLayoutNGDescription[] =
617 "Enable Blink's next generation layout engine.";
618
Scott Littled0fd2d002018-04-13 03:37:26619const char kEnableLazyFrameLoadingName[] = "Enable lazy frame loading";
620const char kEnableLazyFrameLoadingDescription[] =
621 "Defers the loading of certain cross-origin frames until the page is "
622 "scrolled down near them.";
623
rajendrant793ff512018-08-10 17:07:59624const char kEnableLazyImageLoadingName[] = "Enable lazy image loading";
625const char kEnableLazyImageLoadingDescription[] =
626 "Defers the loading of images until the page is scrolled down near them.";
627
Sidney San Martín9375b892017-09-09 00:29:54628const char kEnableMacMaterialDesignDownloadShelfName[] =
629 "Enable Material Design download shelf";
630
631const char kEnableMacMaterialDesignDownloadShelfDescription[] =
632 "If enabled, the download shelf uses Material Design.";
633
Becca Hughesac86cd442019-01-09 23:49:54634const char kEnableMediaSessionServiceName[] = "Media Session Service";
635const char kEnableMediaSessionServiceDescription[] =
636 "Enables the media session mojo service and internal media session "
637 "support.";
638
Anton Urusov47cd4932017-09-19 14:41:41639const char kEnablePolicyToolName[] = "Enable policy management page";
640const char kEnablePolicyToolDescription[] =
641 "If enabled, the chrome://policy-tool URL loads a page for managing "
642 "policies.";
643
Weidong Guof1e5a892018-01-06 02:26:39644const char kDisableMultiMirroringName[] =
Weidong Guo7dfd1482017-11-08 05:56:28645 "Display mirroring across multiple displays.";
Weidong Guof1e5a892018-01-06 02:26:39646const char kDisableMultiMirroringDescription[] =
647 "Disable Display mirroring across multiple displays.";
Weidong Guo7dfd1482017-11-08 05:56:28648
Brett Wilsonf27ff602017-07-07 22:28:47649const char kEnableNavigationTracingName[] = "Enable navigation tracing";
650const char kEnableNavigationTracingDescription[] =
651 "This is to be used in conjunction with the trace-upload-url flag. "
652 "WARNING: When enabled, Chrome will record performance data for every "
653 "navigation and upload it to the URL specified by the trace-upload-url "
654 "flag. The trace may include personally identifiable information (PII) "
655 "such as the titles and URLs of websites you visit.";
656
Bernhard Bauer5533f9912017-11-06 17:56:02657const char kEnableNetworkLoggingToFileName[] = "Enable network logging to file";
658const char kEnableNetworkLoggingToFileDescription[] =
659 "Enables network logging to a file named netlog.json in the user data "
660 "directory. The file can be imported into chrome://net-internals.";
661
Brett Wilsonf27ff602017-07-07 22:28:47662const char kEnableNetworkServiceName[] = "Enable network service";
663const char kEnableNetworkServiceDescription[] =
664 "Enables the network service, which makes network requests through a "
John Abd-El-Malek225b04d2018-09-07 22:41:40665 "separate process.";
Brett Wilsonf27ff602017-07-07 22:28:47666
John Abd-El-Malek8067cc02017-12-04 23:23:20667const char kEnableNetworkServiceInProcessName[] =
668 "Runs network service in-process";
669const char kEnableNetworkServiceInProcessDescription[] =
670 "Runs the network service in the browser process.";
671
Ahmed Fakhry2fd8fc82017-07-28 16:31:12672const char kEnableNightLightName[] = "Enable Night Light";
673const char kEnableNightLightDescription[] =
674 "Enable the Night Light feature which controls the color temperature of "
675 "the screen.";
676
Tetsui Ohkuboc3eb87f72018-07-20 02:22:28677const char kEnableNotificationScrollBarName[] =
678 "Enable notification list scroll bar";
679const char kEnableNotificationScrollBarDescription[] =
680 "Enable the scroll bar of the notification list in Unified System Tray.";
681
Mitsuru Otsukae8304de2018-10-29 02:14:36682const char kEnableNotificationExpansionAnimationName[] =
683 "Enable notification expansion animations";
684const char kEnableNotificationExpansionAnimationDescription[] =
685 "Enable notification animations whenever the expansion state is toggled.";
686
xlou8b56f672018-02-09 23:34:30687const char kEnableNupPrintingName[] = "Enable N-up printing";
688const char kEnableNupPrintingDescription[] =
689 "Enable N-up printing in the print preview panel.";
690
Sophie Chang117a3b22017-10-24 22:25:36691const char kEnableOptimizationHintsName[] = "Optimization Hints";
692const char kEnableOptimizationHintsDescription[] =
Sophie Chang5454ce82018-07-16 17:44:50693 "Enable the Optimization Hints feature which incorporates server hints "
Sophie Chang117a3b22017-10-24 22:25:36694 "into decisions for what optimizations to perform on some pages on slow "
695 "networks.";
696
Takashi Toyoshima2e01e692018-11-16 03:23:27697const char kEnableOutOfBlinkCorsName[] = "Out of blink CORS";
698const char kEnableOutOfBlinkCorsDescription[] =
Yutaka Hirano98be3272017-08-07 17:55:39699 "CORS handling logic is moved out of blink.";
700
Chris Halle952239e2018-11-06 06:49:52701const char kExperimentalAccessibilityFeaturesName[] =
702 "Experimental accessibility features";
703const char kExperimentalAccessibilityFeaturesDescription[] =
704 "Enable additional accessibility features in the Settings page.";
705
Katie D652135c2018-11-27 18:30:13706const char kExperimentalAccessibilityAutoclickName[] =
707 "Experimental automatic click features";
708const char kExperimentalAccessibilityAutoclickDescription[] =
709 "Enable additional features for automatic clicks.";
710
Katie D0c31c5062019-01-02 18:12:35711const char kExperimentalAccessibilityLabelsName[] =
712 "Experimental accessibility image label features";
713const char kExperimentalAccessibilityLabelsDescription[] =
714 "Enable additional features for image labels for accessibility.";
715
Anastasia Helfinsteinafecc68c2018-11-26 19:20:17716const char kExperimentalAccessibilitySwitchAccessName[] =
717 "Experimental feature Switch Access";
718const char kExperimentalAccessibilitySwitchAccessDescription[] =
719 "Add a setting to enable the prototype of Switch Access";
720
kylechar7051c092018-02-05 20:31:39721const char kVizDisplayCompositorName[] = "Viz Display Compositor (OOP-D)";
722const char kVizDisplayCompositorDescription[] =
723 "If enabled, the display compositor runs as part of the viz service in the"
724 "GPU process.";
725
Ria Jiang6a129b982018-03-01 18:30:40726const char kVizHitTestDrawQuadName[] = "Viz Hit-test Draw-quad version";
727const char kVizHitTestDrawQuadDescription[] =
728 "If enabled, event targeting uses the new viz-assisted hit-testing logic, "
729 "with hit-test data computed from the CompositorFrame.";
730
Erik Chen49bbfa22017-08-18 08:49:56731const char kEnableOutOfProcessHeapProfilingName[] =
Albert J. Wong174174762018-01-18 23:50:23732 "Out of process heap profiling start mode.";
Erik Chen49bbfa22017-08-18 08:49:56733const char kEnableOutOfProcessHeapProfilingDescription[] =
734 "Creates a profiling service that records stacktraces for all live, "
erikchen94aca892018-01-18 00:21:19735 "malloced objects. Heap dumps can be obtained at chrome://tracing "
736 "[category:memory-infra] and chrome://memory-internals. This setting "
737 "controls which processes are profiled. As long as this setting is not "
738 "disabled, users can start profiling any given process in "
739 "chrome://memory-internals.";
740const char kEnableOutOfProcessHeapProfilingModeMinimal[] = "Browser and GPU";
741const char kEnableOutOfProcessHeapProfilingModeAll[] = "All processes";
742const char kEnableOutOfProcessHeapProfilingModeAllRenderers[] = "All renderers";
743const char kEnableOutOfProcessHeapProfilingModeBrowser[] = "Only browser";
744const char kEnableOutOfProcessHeapProfilingModeGpu[] = "Only GPU.";
erikchen0a5dd692017-12-12 00:53:10745const char kEnableOutOfProcessHeapProfilingModeManual[] =
erikchen94aca892018-01-18 00:21:19746 "None by default. Visit chrome://memory-internals to choose which "
747 "processes to profile.";
Albert J. Wongbd5bd902017-11-09 19:56:15748const char kEnableOutOfProcessHeapProfilingModeRendererSampling[] =
749 "Profile a random sampling of renderer processes, ensuring only one is "
750 "ever profiled at a time.";
erikchen94aca892018-01-18 00:21:19751
Erik Chen8bb76b52017-12-06 19:06:25752const char kOutOfProcessHeapProfilingKeepSmallAllocations[] =
erikchen94aca892018-01-18 00:21:19753 "Emit small allocations in memlog heap dumps.";
Erik Chen8bb76b52017-12-06 19:06:25754const char kOutOfProcessHeapProfilingKeepSmallAllocationsDescription[] =
755 "By default, small allocations are pruned from the heap dump. This reduces "
756 "the size of the compressed trace by 100x. If pruning is disabled, the "
757 "chrome://tracing UI may be unable to take or load the trace. Save the "
758 "trace directly using chrome://memory-internals, and use other mechanisms "
759 "[e.g. diff_heap_profiler.py] to examine the trace. Note that "
760 "automatically uploaded traces will always be pruned. This only affects "
761 "manually taken memory-infra traces.";
Erik Chen49bbfa22017-08-18 08:49:56762
erikchen8bc20d82018-02-14 03:21:51763const char kOutOfProcessHeapProfilingSampling[] = "Sample memlog allocations";
764const char kOutOfProcessHeapProfilingSamplingDescription[] =
765 "Use a poisson process to sample allocations. Defaults to a sample rate of "
erikchen99bfce02018-02-14 20:29:22766 "10000. This results in low noise for large and/or frequent allocations ["
767 "[size * frequency >> 10000]. This means that aggregate numbers [e.g. "
768 "total size of malloc-ed objects] and large and/or frequent allocations "
769 "can be trusted with high fidelity.";
erikchen8bc20d82018-02-14 03:21:51770
Erik Chen3303fd0232018-01-11 20:29:05771const char kOOPHPStackModeName[] =
772 "The type of stack to record for memlog heap dumps";
773const char kOOPHPStackModeDescription[] =
erikchen94aca892018-01-18 00:21:19774 "By default, memlog heap dumps record native stacks, which requires a "
775 "post-processing step to symbolize. Requires a custom build with frame "
erikchen011ad3f2018-01-26 17:54:55776 "pointers to work on Android. Native with thread names will add the thread "
777 "name as the first frame of each native stack. It's also possible to "
778 "record a pseudo stack using trace events as identifiers. It's also "
779 "possible to do a mix of both.";
erikchen94aca892018-01-18 00:21:19780const char kOOPHPStackModeMixed[] = "Mixed";
781const char kOOPHPStackModeNative[] = "Native";
erikchen011ad3f2018-01-26 17:54:55782const char kOOPHPStackModeNativeWithThreadNames[] = "Native with thread names";
erikchen94aca892018-01-18 00:21:19783const char kOOPHPStackModePseudo[] = "Trace events";
Erik Chen3303fd0232018-01-11 20:29:05784
François Beaufort2e75f492018-02-08 20:44:46785const char kEnablePictureInPictureName[] = "Enable Picture-in-Picture.";
Brett Wilsonf27ff602017-07-07 22:28:47786const char kEnablePictureInPictureDescription[] =
François Beaufort106802c2018-12-18 17:46:13787 "Show Picture-in-Picture in browser context menu and video native "
788 "controls. The #enable-surfaces-for-videos flag must be enabled as well "
789 "to use it.";
Brett Wilsonf27ff602017-07-07 22:28:47790
F#m59d036e2017-09-13 07:22:17791const char kEnablePixelCanvasRecordingName[] = "Enable pixel canvas recording";
792const char kEnablePixelCanvasRecordingDescription[] =
793 "Pixel canvas recording allows the compositor to raster contents aligned "
794 "with the pixel and improves text rendering. This should be enabled when a "
795 "device is using fractional scale factor.";
796
Ella Gebee81c92018-08-14 15:51:09797const char kEnableResamplingInputEventsName[] =
798 "Enable resampling input events";
799const char kEnableResamplingInputEventsDescription[] =
800 "Predicts mouse and touch inputs position at rAF time based on previous "
801 "input";
802const char kEnableResamplingScrollEventsName[] =
803 "Enable resampling scroll events";
804const char kEnableResamplingScrollEventsDescription[] =
805 "Predicts the scroll amount at vsync time based on previous input";
806
Doug Arnettaa0bf202018-08-27 19:42:11807const char kEnableResourceLoadingHintsName[] = "Enable resource loading hints";
808const char kEnableResourceLoadingHintsDescription[] =
809 "Enable using server-provided resource loading hints to provide a preview "
810 "over slow network connections.";
811
Mikel Astizb4786aa2018-11-09 22:12:09812const char kEnableSyncPseudoUSSAppListName[] =
813 "Enable pseudo-USS for APP_LIST sync.";
814const char kEnableSyncPseudoUSSAppListDescription[] =
815 "Enable new USS-based codepath for sync datatype APP_LIST.";
816
817const char kEnableSyncPseudoUSSAppsName[] = "Enable pseudo-USS for APPS sync.";
818const char kEnableSyncPseudoUSSAppsDescription[] =
819 "Enable new USS-based codepath for sync datatype APPS.";
820
821const char kEnableSyncPseudoUSSDictionaryName[] =
822 "Enable pseudo-USS for DICTIONARY sync.";
823const char kEnableSyncPseudoUSSDictionaryDescription[] =
824 "Enable new USS-based codepath for sync datatype DICTIONARY.";
825
826const char kEnableSyncPseudoUSSExtensionSettingsName[] =
827 "Enable pseudo-USS for EXTENSION_SETTINGS and APP_SETTINGS sync.";
828const char kEnableSyncPseudoUSSExtensionSettingsDescription[] =
829 "Enable new USS-based codepath for sync datatypes EXTENSION_SETTINGS and "
830 "APP_SETTINGS.";
831
832const char kEnableSyncPseudoUSSExtensionsName[] =
833 "Enable pseudo-USS for EXTENSIONS sync.";
834const char kEnableSyncPseudoUSSExtensionsDescription[] =
835 "Enable new USS-based codepath for sync datatype EXTENSIONS.";
836
837const char kEnableSyncPseudoUSSFaviconsName[] =
838 "Enable pseudo-USS for favicon sync.";
839const char kEnableSyncPseudoUSSFaviconsDescription[] =
840 "Enable new USS-based codepath for sync datatypes FAVICON_IMAGES and "
841 "FAVICON_TRACKING.";
842
843const char kEnableSyncPseudoUSSHistoryDeleteDirectivesName[] =
844 "Enable pseudo-USS for HISTORY_DELETE_DIRECTIVES sync.";
845const char kEnableSyncPseudoUSSHistoryDeleteDirectivesDescription[] =
846 "Enable new USS-based codepath for sync datatype "
847 "HISTORY_DELETE_DIRECTIVES.";
848
849const char kEnableSyncPseudoUSSPasswordsName[] =
850 "Enable pseudo-USS for PASSWORDS sync.";
851const char kEnableSyncPseudoUSSPasswordsDescription[] =
852 "Enable new USS-based codepath for sync datatype PASSWORDS (pseudo-USS).";
853
854const char kEnableSyncPseudoUSSPreferencesName[] =
855 "Enable pseudo-USS for PREFERENCES sync.";
856const char kEnableSyncPseudoUSSPreferencesDescription[] =
857 "Enable new USS-based codepath for sync datatype PREFERENCES.";
858
859const char kEnableSyncPseudoUSSPriorityPreferencesName[] =
860 "Enable pseudo-USS for PRIORITY_PREFERENCES sync.";
861const char kEnableSyncPseudoUSSPriorityPreferencesDescription[] =
862 "Enable new USS-based codepath for sync datatype PRIORITY_PREFERENCES.";
863
864const char kEnableSyncPseudoUSSSearchEnginesName[] =
865 "Enable pseudo-USS for SEARCH_ENGINES sync.";
866const char kEnableSyncPseudoUSSSearchEnginesDescription[] =
867 "Enable new USS-based codepath for sync datatype SEARCH_ENGINES.";
868
869const char kEnableSyncPseudoUSSSupervisedUsersName[] =
870 "Enable pseudo-USS for supervised users sync.";
871const char kEnableSyncPseudoUSSSupervisedUsersDescription[] =
872 "Enable new USS-based codepath for sync datatypes SUPERVISED_USER_SETTINGS "
873 "and SUPERVISED_USER_WHITELISTS.";
874
875const char kEnableSyncPseudoUSSThemesName[] =
876 "Enable pseudo-USS for THEMES sync.";
877const char kEnableSyncPseudoUSSThemesDescription[] =
878 "Enable new USS-based codepath for sync datatype THEMES.";
879
Mohamed Amir Yosef0178fa892018-07-23 17:43:52880const char kEnableSyncUSSBookmarksName[] = "Enable USS for bookmarks sync";
881const char kEnableSyncUSSBookmarksDescription[] =
882 "Enables the new, experimental implementation of bookmark sync";
883
Mikel Astiz38837f82018-04-24 22:23:23884const char kEnableSyncUSSSessionsName[] = "Enable USS for sessions sync";
885const char kEnableSyncUSSSessionsDescription[] =
886 "Enables the new, experimental implementation of session sync (aka tab "
887 "sync).";
888
Brett Wilsonf27ff602017-07-07 22:28:47889const char kEnableUseZoomForDsfName[] =
890 "Use Blink's zoom for device scale factor.";
891const char kEnableUseZoomForDsfDescription[] =
892 "If enabled, Blink uses its zooming mechanism to scale content for device "
893 "scale factor.";
894const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
895const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
896const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
897
Patrick Noland8ee016e2018-01-24 11:44:53898const char kEnableScrollAnchorSerializationName[] =
899 "Scroll Anchor Serialization";
900const char kEnableScrollAnchorSerializationDescription[] =
901 "Save the scroll anchor and use it to restore the scroll position when "
902 "navigating.";
903
Brad Nelson5cd500e2018-01-04 00:50:19904const char kEnableSharedArrayBufferName[] =
905 "Experimental enabled SharedArrayBuffer support in JavaScript.";
906const char kEnableSharedArrayBufferDescription[] =
907 "Enable SharedArrayBuffer support in JavaScript.";
908
Brett Wilsonf27ff602017-07-07 22:28:47909const char kEnableWasmName[] = "WebAssembly structured cloning support.";
910const char kEnableWasmDescription[] =
911 "Enable web pages to use WebAssembly structured cloning.";
912
Kim Paulhamusae635a32018-06-27 07:30:54913const char kEnableWebAuthenticationAPIName[] = "Web Authentication API";
914const char kEnableWebAuthenticationAPIDescription[] =
Kim Paulhamus92431372018-07-20 02:25:47915 "Enable Web Authentication API support.";
916
Lei Zhang0ca70ea2018-09-07 17:51:01917const char kEnableWebAuthenticationCableSupportName[] =
Kim Paulhamus92431372018-07-20 02:25:47918 "Web Authentication caBLE support";
Lei Zhang0ca70ea2018-09-07 17:51:01919const char kEnableWebAuthenticationCableSupportDescription[] =
Kim Paulhamus92431372018-07-20 02:25:47920 "Enable the cloud-assisted pairingless BLE protocol for use with "
921 "the Web Authentication API.";
Kim Paulhamusae635a32018-06-27 07:30:54922
Brett Wilsonf27ff602017-07-07 22:28:47923const char kEnableImageCaptureAPIName[] = "Image Capture API";
924const char kEnableImageCaptureAPIDescription[] =
925 "Enables the Web Platform Image Capture API: takePhoto(), "
926 "getPhotoCapabilities(), etc.";
927
Ramin Halavatic158b182018-10-18 14:04:54928const char kEnableIncognitoWindowCounterName[] = "Incognito Window Counter";
929const char kEnableIncognitoWindowCounterDescription[] =
930 "Shows the count of Incognito windows next to the Incognito icon on the "
931 "toolbar.";
932
Brett Wilsonf27ff602017-07-07 22:28:47933const char kEnableZeroSuggestRedirectToChromeName[] =
934 "Experimental contextual omnibox suggestion";
935const char kEnableZeroSuggestRedirectToChromeDescription[] =
936 "Change omnibox contextual suggestions to an experimental source. Note "
937 "that this is not an on/off switch for contextual omnibox and it only "
938 "applies to suggestions provided before the user starts typing a URL or a "
939 "search query (i.e. zero suggest).";
940
Clemens Hammacher0c8a15a2018-04-27 13:45:32941const char kEnableWasmBaselineName[] = "WebAssembly baseline compiler";
942const char kEnableWasmBaselineDescription[] =
943 "Enables WebAssembly baseline compilation and tier up.";
944
Ben Smith24c1e5c2018-06-20 01:09:02945const char kEnableWasmThreadsName[] = "WebAssembly threads support.";
946const char kEnableWasmThreadsDescription[] =
947 "Enables support for the WebAssembly Threads proposal. Implies "
948 "#shared-array-buffer and #enable-webassembly.";
949
Brett Wilsonf27ff602017-07-07 22:28:47950const char kExpensiveBackgroundTimerThrottlingName[] =
951 "Throttle expensive background timers";
952const char kExpensiveBackgroundTimerThrottlingDescription[] =
953 "Enables intervention to limit CPU usage of background timers to 1%.";
954
955const char kExperimentalAppBannersName[] = "Experimental app banners";
956const char kExperimentalAppBannersDescription[] =
Matt Giucad4870432017-11-24 01:04:38957 "Enables a new experimental app banner flow and UI. Implies "
958 "#enable-app-banners.";
Brett Wilsonf27ff602017-07-07 22:28:47959
960const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
961const char kExperimentalCanvasFeaturesDescription[] =
962 "Enables the use of experimental canvas features which are still in "
963 "development.";
964
Nicholas Verneccd8259802018-02-22 01:22:04965const char kExperimentalCrostiniUIName[] = "Experimental Crostini";
966const char kExperimentalCrostiniUIDescription[] =
967 "Enables in-development Crostini features.";
968
Brett Wilsonf27ff602017-07-07 22:28:47969const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
970const char kExperimentalExtensionApisDescription[] =
971 "Enables experimental extension APIs. Note that the extension gallery "
972 "doesn't allow you to upload extensions that use experimental APIs.";
973
Ian Clelland37a985d2018-05-04 02:43:13974const char kExperimentalProductivityFeaturesName[] =
975 "Experimental Productivity Features";
976const char kExperimentalProductivityFeaturesDescription[] =
977 "Enable support for experimental developer productivity features, such as "
978 "Layered APIs and policies for avoiding slow rendering.";
979
Brett Wilsonf27ff602017-07-07 22:28:47980const char kExperimentalSecurityFeaturesName[] =
981 "Potentially annoying security features";
982const char kExperimentalSecurityFeaturesDescription[] =
983 "Enables several security features that will likely break one or more "
984 "pages that you visit on a daily basis. Strict mixed content checking, for "
985 "example. And locking powerful features to secure contexts. This flag will "
986 "probably annoy you.";
987
988const char kExperimentalWebPlatformFeaturesName[] =
989 "Experimental Web Platform features";
990const char kExperimentalWebPlatformFeaturesDescription[] =
991 "Enables experimental Web Platform features that are in development.";
992
993const char kExtensionContentVerificationName[] =
994 "Extension Content Verification";
995const char kExtensionContentVerificationDescription[] =
996 "This flag can be used to turn on verification that the contents of the "
997 "files on disk for extensions from the webstore match what they're "
998 "expected to be. This can be used to turn on this feature if it would not "
999 "otherwise have been turned on, but cannot be used to turn it off (because "
1000 "this setting can be tampered with by malware).";
1001const char kExtensionContentVerificationBootstrap[] =
1002 "Bootstrap (get expected hashes, but do not enforce them)";
1003const char kExtensionContentVerificationEnforce[] =
1004 "Enforce (try to get hashes, and enforce them if successful)";
1005const char kExtensionContentVerificationEnforceStrict[] =
1006 "Enforce strict (hard fail if we can't get hashes)";
1007
1008const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
1009const char kExtensionsOnChromeUrlsDescription[] =
1010 "Enables running extensions on chrome:// URLs, where extensions explicitly "
1011 "request this permission.";
galinapae72e152017-05-12 13:12:281012
Brett Wilsonecb80982017-07-12 20:34:511013const char kFastUnloadName[] = "Fast tab/window close";
1014const char kFastUnloadDescription[] =
1015 "Enables fast tab/window closing - runs a tab's onunload js handler "
1016 "independently of the GUI.";
vabr0215a8e2017-03-28 12:47:341017
Brett Wilsonecb80982017-07-12 20:34:511018const char kFeaturePolicyName[] = "Feature Policy";
1019const char kFeaturePolicyDescription[] =
1020 "Enables granting and removing access to features through the "
1021 "Feature-Policy HTTP header.";
vabr0215a8e2017-03-28 12:47:341022
Brett Wilsonecb80982017-07-12 20:34:511023const char kFontCacheScalingName[] = "FontCache scaling";
1024const char kFontCacheScalingDescription[] =
1025 "Reuse a cached font in the renderer to serve different sizes of font for "
1026 "faster layout.";
1027
1028const char kForceEffectiveConnectionTypeName[] =
1029 "Override effective connection type";
1030const char kForceEffectiveConnectionTypeDescription[] =
1031 "Overrides the effective connection type of the current connection "
Thanh Lea98f12f2017-12-18 19:35:301032 "returned by the network quality estimator. Slow 2G on Cellular returns "
1033 "Slow 2G when connected to a cellular network, and the actual estimate "
1034 "effective connection type when not on a cellular network. Previews are "
1035 "usually served on 2G networks.";
Brett Wilsonecb80982017-07-12 20:34:511036const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
1037const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
1038const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
Thanh Lea98f12f2017-12-18 19:35:301039const char kEffectiveConnectionTypeSlow2GOnCellularDescription[] =
1040 "Slow 2G On Cellular";
Brett Wilsonecb80982017-07-12 20:34:511041const char kEffectiveConnectionType2GDescription[] = "2G";
1042const char kEffectiveConnectionType3GDescription[] = "3G";
1043const char kEffectiveConnectionType4GDescription[] = "4G";
1044
1045const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
1046const char kFillOnAccountSelectDescription[] =
1047 "Filling of passwords when an account is explicitly selected by the user "
1048 "rather than autofilling credentials on page load.";
1049
Brett Wilsonecb80982017-07-12 20:34:511050const char kForceTextDirectionName[] = "Force text direction";
1051const char kForceTextDirectionDescription[] =
1052 "Explicitly force the per-character directionality of UI text to "
1053 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
1054 "direction of the character language.";
1055const char kForceDirectionLtr[] = "Left-to-right";
1056const char kForceDirectionRtl[] = "Right-to-left";
1057
1058const char kForceUiDirectionName[] = "Force UI direction";
1059const char kForceUiDirectionDescription[] =
1060 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
1061 "mode, overriding the default direction of the UI language.";
1062
1063const char kFramebustingName[] =
1064 "Framebusting requires same-origin or a user gesture";
1065const char kFramebustingDescription[] =
1066 "Don't permit an iframe to navigate the top level browsing context unless "
1067 "they are same-origin or the iframe is processing a user gesture.";
1068
1069const char kGamepadExtensionsName[] = "Gamepad Extensions";
1070const char kGamepadExtensionsDescription[] =
Anna Offenwanger06dc6062018-04-12 07:56:221071 "Enables experimental extensions to the Gamepad APIs.";
Matt Reynolds043469f2018-05-01 22:56:581072const char kGamepadVibrationName[] = "Gamepad Vibration";
1073const char kGamepadVibrationDescription[] =
1074 "Enables haptic vibration effects on supported gamepads.";
Brett Wilsonecb80982017-07-12 20:34:511075
Brett Wilsonecb80982017-07-12 20:34:511076const char kGpuRasterizationName[] = "GPU rasterization";
1077const char kGpuRasterizationDescription[] =
1078 "Use GPU to rasterize web content. Requires impl-side painting.";
Brett Wilson7b44537e2017-08-18 01:38:281079const char kForceGpuRasterization[] = "Force-enabled for all layers";
Brett Wilsonecb80982017-07-12 20:34:511080
Ioana Pandele1ed7ef72018-11-21 15:22:031081const char kGooglePasswordManagerName[] = "Google Password Manager UI";
1082const char kGooglePasswordManagerDescription[] =
1083 "Enables access to the Google Password Manager UI from Chrome.";
1084
Brett Wilsonecb80982017-07-12 20:34:511085const char kGoogleProfileInfoName[] = "Google profile name and icon";
1086const char kGoogleProfileInfoDescription[] =
1087 "Enables using Google information to populate the profile name and icon in "
1088 "the avatar menu.";
1089
Takumi Fujimotofb71e332018-03-31 14:04:081090const char kViewsCastDialogName[] = "Views Cast dialog";
1091const char kViewsCastDialogDescription[] =
Takumi Fujimoto541e5e22018-05-30 00:46:311092 "Replace the WebUI Cast dialog with a Views toolkit dialog. This requires "
Takumi Fujimoto28351acc2018-05-31 17:19:531093 "#views-browser-windows on Mac. This feature is activated if either this "
Robert Liao3ecf97c2018-06-05 01:24:541094 "flag or #upcoming-ui-features is enabled";
Takumi Fujimotofb71e332018-03-31 14:04:081095
Manu Cornet4a908de2018-04-09 04:32:271096const char kHideActiveAppsFromShelfName[] =
1097 "Hide running apps (that are not pinned) from the shelf";
1098const char kHideActiveAppsFromShelfDescription[] =
1099 "Save space in the shelf by hiding running apps (that are not pinned).";
Manu Cornete5f855b2018-03-13 03:35:251100
Brett Wilsonecb80982017-07-12 20:34:511101const char kHistoryRequiresUserGestureName[] =
1102 "New history entries require a user gesture.";
1103const char kHistoryRequiresUserGestureDescription[] =
1104 "Require a user gesture to add a history entry.";
1105const char kHyperlinkAuditingName[] = "Hyperlink auditing";
1106const char kHyperlinkAuditingDescription[] = "Sends hyperlink auditing pings.";
1107
Ryan Landay4242dbc22018-04-04 01:47:331108const char kHorizontalTabSwitcherAndroidName[] =
1109 "Enable horizontal tab switcher";
1110const char kHorizontalTabSwitcherAndroidDescription[] =
1111 "Changes the layout of the Android tab switcher so tabs scroll "
1112 "horizontally instead of vertically.";
1113
Matt Simmons2048b2a2018-12-20 20:12:561114const char kTabSwitcherOnReturnName[] = "Enable tab switcher on return";
1115const char kTabSwitcherOnReturnDescription[] =
1116 "Enable tab switcher on return after specified time has elapsed";
1117
Brett Wilsonecb80982017-07-12 20:34:511118const char kHostedAppQuitNotificationName[] =
1119 "Quit notification for hosted apps";
1120const char kHostedAppQuitNotificationDescription[] =
1121 "Display a notification when quitting Chrome if hosted apps are currently "
1122 "running.";
1123
1124const char kHostedAppShimCreationName[] =
1125 "Creation of app shims for hosted apps on Mac";
1126const char kHostedAppShimCreationDescription[] =
1127 "Create app shims on Mac when creating a hosted app.";
1128
Ana-Cosmina Popescuda3bcbe2017-09-22 18:24:481129const char kHtmlBasedUsernameDetectorName[] = "HTML-based username detector";
1130const char kHtmlBasedUsernameDetectorDescription[] =
1131 "Use HTML-based username detector for the password manager.";
1132
Brett Wilsonecb80982017-07-12 20:34:511133const char kIconNtpName[] = "Large icons on the New Tab page";
1134const char kIconNtpDescription[] =
1135 "Enable the experimental New Tab page using large icons.";
1136
1137const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
1138const char kIgnoreGpuBlacklistDescription[] =
1139 "Overrides the built-in software rendering list and enables "
1140 "GPU-acceleration on unsupported system configurations.";
1141
Ryan Sturm8c3dbc92018-06-26 19:22:371142const char kIgnorePreviewsBlacklistName[] = "Ignore Previews Blocklist";
Thanh Le5f090efa52017-12-27 22:39:441143const char kIgnorePreviewsBlacklistDescription[] =
Ryan Sturm8c3dbc92018-06-26 19:22:371144 "Ignore decisions made by the PreviewsBlockList";
Thanh Le5f090efa52017-12-27 22:39:441145
Alexandre Frechetted3e1b542018-12-13 14:40:501146const char kImprovedGeoLanguageDataName[] = "Improved Geo-language Data";
1147const char kImprovedGeoLanguageDataDescription[] =
1148 "Makes the GeoLanguageModel use higher quality, more refined ULP "
1149 "geo-language data.";
1150
Brett Wilsonecb80982017-07-12 20:34:511151const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
1152const char kInProductHelpDemoModeChoiceDescription[] =
1153 "Selects the In-Product Help demo mode.";
1154
1155const char kJavascriptHarmonyName[] = "Experimental JavaScript";
1156const char kJavascriptHarmonyDescription[] =
1157 "Enable web pages to use experimental JavaScript features.";
1158
1159const char kJavascriptHarmonyShippingName[] =
1160 "Latest stable JavaScript features";
1161const char kJavascriptHarmonyShippingDescription[] =
1162 "Some web pages use legacy or non-standard JavaScript extensions that may "
1163 "conflict with the latest JavaScript features. This flag allows disabling "
1164 "support of those features for compatibility with such pages.";
1165
gogeraldfd7675d2018-06-19 22:57:351166const char kJustInTimeServiceWorkerPaymentAppName[] =
1167 "Just-in-time service worker payment app";
1168const char kJustInTimeServiceWorkerPaymentAppDescription[] =
1169 "Allow crawling just-in-time service worker payment app when there is no "
1170 "installed service worker payment app for a payment request.";
1171
Yutaka Hiranof7f2f632017-09-06 10:40:081172const char kKeepAliveRendererForKeepaliveRequestsName[] =
1173 "Keep a renderer alive for keepalive fetch requests";
1174const char kKeepAliveRendererForKeepaliveRequestsDescription[] =
1175 "Keep a render process alive when the process has a pending fetch request "
1176 "with `keepalive' specified.";
1177
Joe Downing095fd6d2018-02-01 18:40:361178const char kKeyboardLockApiName[] = "Experimental keyboard lock API.";
1179const char kKeyboardLockApiDescription[] =
1180 "Enables websites to use the new keyboard{Lock|Unlock} API to intercept "
1181 "specific key events and have them routed directly to the webpage when in "
1182 "fullscreen mode. Implies #experimental-keyboard-lock-ui.";
1183
Brett Wilsonecb80982017-07-12 20:34:511184const char kLcdTextName[] = "LCD text antialiasing";
1185const char kLcdTextDescription[] =
1186 "If disabled, text is rendered with grayscale antialiasing instead of LCD "
1187 "(subpixel) when doing accelerated compositing.";
1188
Matt Giucac399982f2017-10-06 07:51:291189const char kLeftToRightUrlsName[] =
1190 "Render bidirectional URLs from left to right";
1191const char kLeftToRightUrlsDescription[] =
1192 "An experimental Bidi URL rendering algorithm where the URL components are "
1193 "always shown in order from left to right, regardless of any RTL "
1194 "characters. (The contents of each component are still rendered with the "
1195 "normal Bidi algorithm.)";
1196
Brett Wilsonecb80982017-07-12 20:34:511197const char kLoadMediaRouterComponentExtensionName[] =
1198 "Load Media Router Component Extension";
1199const char kLoadMediaRouterComponentExtensionDescription[] =
1200 "Loads the Media Router component extension at startup.";
1201
Mustafa Emre Acer137dc8b2018-08-29 20:38:131202const char kLookalikeUrlNavigationSuggestionsName[] =
1203 "Navigation suggestions for lookalike URLs";
1204const char kLookalikeUrlNavigationSuggestionsDescription[] =
1205 "Enable navigation suggestions for URLs that are visually similar to "
1206 "popular domains or to domains with a site engagement score.";
1207
Brett Wilsonecb80982017-07-12 20:34:511208const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
1209const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
Brett Wilsonecb80982017-07-12 20:34:511210
Lei Zhang2eca9082017-10-17 20:42:501211const char kMaterialDesignIncognitoNTPName[] = "Material Design Incognito NTP.";
1212const char kMaterialDesignIncognitoNTPDescription[] =
Brett Wilsonecb80982017-07-12 20:34:511213 "If enabled, the Incognito New Tab page uses the new material design with "
1214 "a better readable text.";
1215
spqchanb87755692018-04-05 00:46:091216const char kMediaRouterCastAllowAllIPsName[] =
1217 "Connect to Cast devices on all IP addresses";
1218const char kMediaRouterCastAllowAllIPsDescription[] =
1219 "Have the Media Router connect to Cast devices on all IP addresses, not "
Nick Harperd30507ca2018-08-16 20:24:311220 "just RFC1918/RFC4193 private addresses.";
spqchanb87755692018-04-05 00:46:091221
Brett Wilsonecb80982017-07-12 20:34:511222const char kMemoryCoordinatorName[] = "Memory coordinator";
1223const char kMemoryCoordinatorDescription[] =
1224 "Enable memory coordinator instead of memory pressure listeners.";
1225
1226const char kMessageCenterNewStyleNotificationName[] = "New style notification";
1227const char kMessageCenterNewStyleNotificationDescription[] =
1228 "Enables the experiment style of material-design notification";
1229
Brett Wilsonecb80982017-07-12 20:34:511230const char kMhtmlGeneratorOptionName[] = "MHTML Generation Option";
1231const char kMhtmlGeneratorOptionDescription[] =
1232 "Provides experimental options for MHTML file generator.";
1233const char kMhtmlSkipNostoreMain[] = "Skips no-store main frame.";
1234const char kMhtmlSkipNostoreAll[] = "Skips all no-store resources.";
1235
Brett Wilsonecb80982017-07-12 20:34:511236const char kNewAudioRenderingMixingStrategyName[] =
1237 "New audio rendering mixing strategy";
1238const char kNewAudioRenderingMixingStrategyDescription[] =
1239 "Use the new audio rendering mixing strategy.";
1240
1241const char kNewBookmarkAppsName[] = "The new bookmark app system";
1242const char kNewBookmarkAppsDescription[] =
1243 "Enables the new system for creating bookmark apps.";
1244
Vadym Doroshenkocd4ff782018-07-24 13:41:021245const char kNewPasswordFormParsingName[] =
1246 "New password form parsing for filling passwords";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241247const char kNewPasswordFormParsingDescription[] =
Vadym Doroshenkocd4ff782018-07-24 13:41:021248 "Replaces existing form parsing for filling in password manager with a new "
1249 "version, currently under development. WARNING: when enabled, Password "
1250 "Manager might stop working";
1251
1252const char kNewPasswordFormParsingForSavingName[] =
1253 "New password form parsing for saving passwords";
1254const char kNewPasswordFormParsingForSavingDescription[] =
1255 "Replaces existing form parsing for saving in password manager with a new "
1256 "version, currently under development. WARNING: when enabled, Password "
1257 "Manager might stop working";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241258
Brett Wilsonecb80982017-07-12 20:34:511259const char kNewRemotePlaybackPipelineName[] =
1260 "Enable the new remote playback pipeline.";
1261const char kNewRemotePlaybackPipelineDescription[] =
1262 "Enable the new pipeline for playing media element remotely via "
1263 "RemotePlayback API or native controls.";
CJ DiMeglio7b4a199f2017-11-30 01:26:501264const char kUseSurfaceLayerForVideoName[] =
1265 "Enable the use of SurfaceLayer objects for videos.";
1266const char kUseSurfaceLayerForVideoDescription[] =
1267 "Enable compositing onto a Surface instead of a VideoLayer "
1268 "for videos.";
Brett Wilsonecb80982017-07-12 20:34:511269
1270const char kNewUsbBackendName[] = "Enable new USB backend";
1271const char kNewUsbBackendDescription[] =
1272 "Enables the new experimental USB backend for Windows.";
vabr0215a8e2017-03-28 12:47:341273
Sonny Sasaka2d200432018-03-22 17:43:161274const char kNewblueName[] = "Newblue";
1275const char kNewblueDescription[] =
1276 "Enables the use of newblue Bluetooth daemon.";
1277
Peter Boström7df25c72018-12-12 06:40:191278const char kNewTabLoadingAnimation[] = "New tab-loading animation";
1279const char kNewTabLoadingAnimationDescription[] =
1280 "Enables a new look for the tab-loading animation.";
1281
Peter Kasting63097912018-06-30 02:09:031282const char kNewTabButtonPosition[] = "New tab button position";
1283const char kNewTabButtonPositionDescription[] =
1284 "Controls placement of the new tab button within the tabstrip.";
1285const char kNewTabButtonPositionOppositeCaption[] = "Opposite caption buttons";
1286const char kNewTabButtonPositionLeading[] = "Leading";
1287const char kNewTabButtonPositionAfterTabs[] = "After tabs";
1288const char kNewTabButtonPositionTrailing[] = "Trailing";
1289
Egor Pasko6fed3822018-05-30 10:33:141290const char kNostatePrefetchName[] = "NoState Prefetch";
vabr0215a8e2017-03-28 12:47:341291const char kNostatePrefetchDescription[] =
Egor Pasko6fed3822018-05-30 10:33:141292 R"*(If enabled, pre-downloads resources to improve page load speed.)*";
vabr0215a8e2017-03-28 12:47:341293
Alex Newcomerd7b0cc42018-05-25 22:58:481294const char kNotificationIndicatorName[] = "Notification Indicators";
1295const char kNotificationIndicatorDescription[] =
1296 "Enable notification indicators, which appear on app icons when a "
1297 "notification is active. This will also enable notifications in context "
1298 "menus.";
1299
Brett Wilsonecb80982017-07-12 20:34:511300const char kNotificationsNativeFlagName[] = "Enable native notifications.";
1301const char kNotificationsNativeFlagDescription[] =
1302 "Enable support for using the native notification toasts and notification "
1303 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:341304
Valeriya Sinevich972ac122018-09-05 07:33:191305const char kUseMultiloginEndpointName[] = "Use Multilogin endpoint.";
1306const char kUseMultiloginEndpointDescription[] =
1307 "Use Gaia OAuth multilogin for identity consistency.";
1308
Zentaro Kavanaghbad511c2017-10-18 22:29:001309#if defined(OS_POSIX)
1310const char kNtlmV2EnabledName[] = "Enable NTLMv2 Authentication";
1311const char kNtlmV2EnabledDescription[] =
1312 "Enable NTLMv2 HTTP Authentication. This disables NTLMv1 support.";
1313#endif
1314
Brett Wilsonecb80982017-07-12 20:34:511315const char kNumRasterThreadsName[] = "Number of raster threads";
1316const char kNumRasterThreadsDescription[] =
1317 "Specify the number of raster threads.";
1318const char kNumRasterThreadsOne[] = "1";
1319const char kNumRasterThreadsTwo[] = "2";
1320const char kNumRasterThreadsThree[] = "3";
1321const char kNumRasterThreadsFour[] = "4";
1322
1323const char kOfferStoreUnmaskedWalletCardsName[] =
1324 "Google Payments card saving checkbox";
1325const char kOfferStoreUnmaskedWalletCardsDescription[] =
1326 "Show the checkbox to offer local saving of a credit card downloaded from "
1327 "the server.";
1328
1329const char kOfflineAutoReloadName[] = "Offline Auto-Reload Mode";
1330const char kOfflineAutoReloadDescription[] =
1331 "Pages that fail to load while the browser is offline will be "
1332 "auto-reloaded when the browser is online again.";
1333
1334const char kOfflineAutoReloadVisibleOnlyName[] =
1335 "Only Auto-Reload Visible Tabs";
1336const char kOfflineAutoReloadVisibleOnlyDescription[] =
1337 "Pages that fail to load while the browser is offline will only be "
1338 "auto-reloaded if their tab is visible.";
1339
Brett Wilsonecb80982017-07-12 20:34:511340const char kOmniboxDisplayTitleForCurrentUrlName[] =
1341 "Include title for the current URL in the omnibox";
1342const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
1343 "In the event that the omnibox provides suggestions on-focus, the URL of "
1344 "the current page is provided as the first suggestion without a title. "
1345 "Enabling this flag causes the title to be displayed.";
1346
Benoit Lizeab08362c2017-07-19 14:50:541347const char kOmniboxSpareRendererName[] =
1348 "Start spare renderer on omnibox focus";
1349const char kOmniboxSpareRendererDescription[] =
1350 "When the omnibox is focused, start an empty spare renderer. This can "
1351 "speed up the load of the navigation from the omnibox.";
1352
Tommy C. Lie4194b732018-09-28 22:21:511353const char kOmniboxUIHideSteadyStateUrlSchemeName[] =
1354 "Omnibox UI Hide Steady-State URL Scheme";
1355const char kOmniboxUIHideSteadyStateUrlSchemeDescription[] =
1356 "In the omnibox, hide the scheme from steady state displayed URLs. It is "
Tommy C. Libef94ee02018-10-17 19:56:361357 "restored during editing.";
Tommy C. Lie4194b732018-09-28 22:21:511358
Tommy C. Lib20aec72018-11-19 21:38:231359const char kOmniboxUIOneClickUnelideName[] = "Omnibox UI One Click Unelide";
1360const char kOmniboxUIOneClickUnelideDescription[] =
1361 "In the omnibox, undo all unelisions with a single click or focus action.";
1362
Tommy C. Lie4194b732018-09-28 22:21:511363const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsName[] =
1364 "Omnibox UI Hide Steady-State URL Trivial Subdomains";
1365const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsDescription[] =
1366 "In the omnibox, hide trivial subdomains from steady state displayed URLs. "
Tommy C. Libef94ee02018-10-17 19:56:361367 "Hidden portions are restored during editing.";
1368
1369const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefName[] =
1370 "Omnibox UI Hide Steady-State URL Path, Query, and Ref";
1371const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefDescription[] =
1372 "In the omnibox, hide the path, query and ref from steady state displayed "
1373 "URLs. Hidden portions are restored during editing.";
Tommy C. Lid79d4402017-12-22 22:49:121374
Brett Wilsonecb80982017-07-12 20:34:511375const char kOmniboxUIMaxAutocompleteMatchesName[] =
1376 "Omnibox UI Max Autocomplete Matches";
1377
1378const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
1379 "Changes the maximum number of autocomplete matches displayed in the "
1380 "Omnibox UI.";
1381
Justin Donnelly65c9e8b2017-10-01 05:15:011382const char kOmniboxUISwapTitleAndUrlName[] = "Omnibox UI Swap Title and URL";
1383const char kOmniboxUISwapTitleAndUrlDescription[] =
1384 "In the omnibox dropdown, shows titles before URLs when both are "
1385 "available.";
1386
Troy Hildebrandtb32637ca2018-02-21 23:25:091387const char kOmniboxVoiceSearchAlwaysVisibleName[] =
1388 "Omnibox Voice Search Always Visible";
1389const char kOmniboxVoiceSearchAlwaysVisibleDescription[] =
1390 "Always displays voice search icon in focused omnibox as long as voice "
1391 "search is possible";
1392
Vadym Doroshenko6b8f64d2018-11-26 15:35:391393const char kOnlyNewPasswordFormParsingName[] =
1394 "Use only new password form parsing";
1395const char kOnlyNewPasswordFormParsingDescription[] =
1396 "The old password form parsing is disabled";
1397
Mark Lieufaa1b762019-01-08 19:37:281398const char kOnTheFlyMhtmlHashComputationName[] =
1399 "On-The-Fly MHTML Hash Computation";
1400const char kOnTheFlyMhtmlHashComputationDescription[] =
1401 "Save MHTML files to the target location and calculate their content "
1402 "digests in one step.";
1403
Adrienne Walkerc87477e2018-06-06 22:28:211404const char kOopRasterizationName[] = "Out of process rasterization";
1405const char kOopRasterizationDescription[] =
1406 "Perform Ganesh raster in the GPU Process instead of the renderer. "
1407 "Must also enable GPU rasterization";
1408
Brett Wilsonecb80982017-07-12 20:34:511409const char kOriginTrialsName[] = "Origin Trials";
1410const char kOriginTrialsDescription[] =
1411 "Enables origin trials for controlling access to feature/API experiments.";
1412
Becca Hughes930d8cd2017-10-02 11:09:121413const char kOverflowIconsForMediaControlsName[] =
1414 "Icons on Media Controls Overflow Menu";
1415const char kOverflowIconsForMediaControlsDescription[] =
1416 "Displays icons on the overflow menu of the native media controls";
1417
Brett Wilsonecb80982017-07-12 20:34:511418const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
1419const char kOverlayScrollbarsDescription[] =
1420 "Enable the experimental overlay scrollbars implementation. You must also "
1421 "enable threaded compositing to have the scrollbars animate.";
1422
chaopenge8aa016b2017-08-24 15:20:191423const char kOverlayScrollbarsFlashAfterAnyScrollUpdateName[] =
1424 "Flash Overlay Scrollbars After Any Scroll Update";
1425const char kOverlayScrollbarsFlashAfterAnyScrollUpdateDescription[] =
1426 "Flash Overlay Scrollbars After any scroll update happends in page. You"
1427 " must also enable Overlay Scrollbars.";
1428
chaopeng343678022017-08-24 18:45:001429const char kOverlayScrollbarsFlashWhenMouseEnterName[] =
1430 "Flash Overlay Scrollbars When Mouse Enter";
1431const char kOverlayScrollbarsFlashWhenMouseEnterDescription[] =
1432 "Flash Overlay Scrollbars When Mouse Enter a scrollable area. You must also"
1433 " enable Overlay Scrollbars.";
1434
Daniele Castagna74ddb9c2018-06-21 22:59:021435const char kOverlayStrategiesName[] = "Select HW overlay strategies";
1436const char kOverlayStrategiesDescription[] =
1437 "Select strategies used to promote quads to HW overlays.";
1438const char kOverlayStrategiesDefault[] = "Default";
1439const char kOverlayStrategiesNone[] = "None";
1440const char kOverlayStrategiesUnoccludedFullscreen[] =
1441 "Unoccluded fullscreen buffers (single-fullscreen)";
1442const char kOverlayStrategiesUnoccluded[] =
1443 "Unoccluded buffers (single-fullscreen,single-on-top)";
1444const char kOverlayStrategiesOccludedAndUnoccluded[] =
1445 "Occluded and unoccluded buffers "
1446 "(single-fullscreen,single-on-top,underlay)";
1447
Claudio Magni81326f92017-09-01 05:21:181448const char kUseNewAcceptLanguageHeaderName[] = "Use new Accept-Language header";
1449const char kUseNewAcceptLanguageHeaderDescription[] =
1450 "Adds the base language code after other corresponding language+region "
1451 "codes. This ensures that users receive content in their preferred "
1452 "language.";
1453
Brett Wilsonecb80982017-07-12 20:34:511454const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
1455const char kOverscrollHistoryNavigationDescription[] =
Mohsen Izadi88b392a2018-02-15 06:57:481456 "History navigation in response to horizontal overscroll.";
Brett Wilsonecb80982017-07-12 20:34:511457
1458const char kOverscrollStartThresholdName[] = "Overscroll start threshold";
1459const char kOverscrollStartThresholdDescription[] =
1460 "Changes overscroll start threshold relative to the default value.";
1461const char kOverscrollStartThreshold133Percent[] = "133%";
1462const char kOverscrollStartThreshold166Percent[] = "166%";
1463const char kOverscrollStartThreshold200Percent[] = "200%";
1464
chaopenge2b6e5f2018-05-08 16:40:451465const char kTouchpadOverscrollHistoryNavigationName[] =
1466 "Overscroll history navigation on Touchpad";
1467const char kTouchpadOverscrollHistoryNavigationDescription[] =
1468 "Allows swipe left/right from touchpad change browser navigation.";
1469
Xing Liu5400a002017-09-15 21:48:291470const char kParallelDownloadingName[] = "Parallel downloading";
1471const char kParallelDownloadingDescription[] =
Yannic Bonenbergera32f9902017-11-20 18:47:061472 "Enable parallel downloading to accelerate download speed.";
Xing Liu5400a002017-09-15 21:48:291473
Brett Wilsonecb80982017-07-12 20:34:511474const char kPassiveEventListenerDefaultName[] =
1475 "Passive Event Listener Override";
1476const char kPassiveEventListenerDefaultDescription[] =
1477 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
1478 "haven't requested otherwise) to be treated as passive. This will break "
1479 "touch/wheel behavior on some websites but is useful for demonstrating the "
1480 "potential performance benefits of adopting passive event listeners.";
1481const char kPassiveEventListenerTrue[] = "True (when unspecified)";
1482const char kPassiveEventListenerForceAllTrue[] = "Force All True";
1483
1484const char kPassiveEventListenersDueToFlingName[] =
1485 "Touch Event Listeners Passive Default During Fling";
1486const char kPassiveEventListenersDueToFlingDescription[] =
1487 "Forces touchstart, and first touchmove per scroll event listeners during "
1488 "fling to be treated as passive.";
1489
1490const char kPassiveDocumentEventListenersName[] =
1491 "Document Level Event Listeners Passive Default";
1492const char kPassiveDocumentEventListenersDescription[] =
1493 "Forces touchstart, and touchmove event listeners on document level "
1494 "targets (which haven't requested otherwise) to be treated as passive.";
1495
Sahel Sharify7400e882018-08-13 17:13:211496const char kPassiveDocumentWheelEventListenersName[] =
1497 "Document Level Wheel Event Listeners Passive Default";
1498const char kPassiveDocumentWheelEventListenersDescription[] =
1499 "Forces wheel, and mousewheel event listeners on document level targets "
1500 "(which haven't requested otherwise) to be treated as passive.";
1501
Vaclav Brozekd8a3f542017-11-16 14:21:131502const char kPasswordImportName[] = "Password import";
1503const char kPasswordImportDescription[] =
1504 "Import functionality in password settings.";
Brett Wilsonecb80982017-07-12 20:34:511505
Friedrich Horschige6c27742018-04-23 17:13:411506const char kPasswordsKeyboardAccessoryName[] =
1507 "Add password-related functions to keyboard accessory";
1508const char kPasswordsKeyboardAccessoryDescription[] =
1509 "Adds password generation button and toggle for the passwords bottom sheet "
1510 "to the keyboard accessory. Replaces password generation popups.";
1511
Christos Froussios6e060c42018-07-31 16:17:191512const char kPasswordsMigrateLinuxToLoginDBName[] =
1513 "Migrate passwords to \"Login Data\"";
1514const char kPasswordsMigrateLinuxToLoginDBDescription[] =
Christos Froussiose34c38a2018-09-04 14:27:591515 "Performs a one-off irreversible migration of passwords from the "
Christos Froussios6e060c42018-07-31 16:17:191516 "gnome-keyring or kwallet into the profile directory.";
1517
Rouslan Solomakhinded840112018-11-02 13:27:101518const char kPerMethodCanMakePaymentQuotaName[] =
1519 "Per-method canMakePayment() quota.";
1520const char kPerMethodCanMakePaymentQuotaDescription[] =
1521 "Allow calling canMakePayment() for different payment methods, as long as "
1522 "method-specific parameters remain unchanged.";
1523
Brett Wilsonecb80982017-07-12 20:34:511524const char kPinchScaleName[] = "Pinch scale";
1525const char kPinchScaleDescription[] =
1526 "Enables experimental support for scale using pinch.";
1527
Doug Arnett620ff542018-02-06 17:54:221528const char kPreviewsAllowedName[] = "Previews Allowed";
1529const char kPreviewsAllowedDescription[] =
1530 "Allows previews to be shown subject to specific preview types being "
1531 "enabled and the client experiencing specific triggering conditions. "
1532 "May be used as a kill-switch to turn off all potential preview types.";
1533
Brett Wilsonecb80982017-07-12 20:34:511534const char kPrintPdfAsImageName[] = "Print Pdf as Image";
1535const char kPrintPdfAsImageDescription[] =
1536 "If enabled, an option to print PDF files as images will be available in "
1537 "print preview.";
1538
1539const char kPrintPreviewRegisterPromosName[] =
1540 "Print Preview Registration Promos";
1541const char kPrintPreviewRegisterPromosDescription[] =
1542 "Enable registering unregistered cloud printers from print preview.";
1543
1544const char kProtectSyncCredentialName[] = "Autofill sync credential";
1545const char kProtectSyncCredentialDescription[] =
1546 "How the password manager handles autofill for the sync credential.";
1547
1548const char kProtectSyncCredentialOnReauthName[] =
1549 "Autofill sync credential only for transactional reauth pages";
1550const char kProtectSyncCredentialOnReauthDescription[] =
1551 "How the password manager handles autofill for the sync credential only "
1552 "for transactional reauth pages.";
1553
Mohsen Izadi93faac12017-07-29 04:45:151554const char kPullToRefreshName[] = "Pull-to-refresh gesture";
1555const char kPullToRefreshDescription[] =
1556 "Pull-to-refresh gesture in response to vertical overscroll.";
Mohsen Izadi8c59ba52018-04-12 18:52:011557const char kPullToRefreshEnabledTouchscreen[] = "Enabled for touchscreen only";
Mohsen Izadi93faac12017-07-29 04:45:151558
Troy Hildebrandt7228ad12018-02-23 21:18:241559const char kQueryInOmniboxName[] = "Query in Omnibox";
1560const char kQueryInOmniboxDescription[] =
1561 "Only display query terms in the omnibox when viewing a search results "
1562 "page.";
1563
Brett Wilsonecb80982017-07-12 20:34:511564const char kQuicName[] = "Experimental QUIC protocol";
1565const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1566
Emily Starke8878d52018-05-11 21:27:261567const char kRecurrentInterstitialName[] =
1568 "Show a message when the same SSL error recurs";
1569const char kRecurrentInterstitialDescription[] =
1570 "Enable a special message on the SSL certificate error page when the same "
1571 "SSL error occurs repeatedly.";
1572
Brett Wilsonecb80982017-07-12 20:34:511573const char kReducedReferrerGranularityName[] =
1574 "Reduce default 'referer' header granularity.";
1575const char kReducedReferrerGranularityDescription[] =
1576 "If a page hasn't set an explicit referrer policy, setting this flag will "
1577 "reduce the amount of information in the 'referer' header for cross-origin "
1578 "requests.";
1579
Lei Zhang0ca70ea2018-09-07 17:51:011580const char kRegionalLocalesAsDisplayUIName[] =
Claudio Magnie0a80bb2018-01-31 02:52:581581 "Allow regional locales as display UI";
Lei Zhang0ca70ea2018-09-07 17:51:011582const char kRegionalLocalesAsDisplayUIDescription[] =
Claudio Magnie0a80bb2018-01-31 02:52:581583 "This flag allows regional locales to be selected as display UI by the "
1584 "user in Language Settings. The actual locale of the system is derived "
1585 "from the user selection based on some simple fallback logic.";
1586
Christian Dullweber3cc579a22018-09-11 10:54:441587const char kRewriteLevelDBOnDeletionName[] =
1588 "Rewrite LevelDB instances after full deletions";
1589const char kRewriteLevelDBOnDeletionDescription[] =
1590 "Rewrite LevelDB instances to remove traces of deleted data from disk.";
1591
Yutaka Hirano4c0f2f5d452017-11-17 04:24:351592const char kRendererSideResourceSchedulerName[] =
1593 "Renderer side ResourceScheduler";
1594const char kRendererSideResourceSchedulerDescription[] =
1595 "Migrate some ResourceScheduler functionalities to renderer";
1596
Brett Wilsonecb80982017-07-12 20:34:511597const char kRequestTabletSiteName[] =
1598 "Request tablet site option in the settings menu";
1599const char kRequestTabletSiteDescription[] =
1600 "Allows the user to request tablet site. Web content is often optimized "
1601 "for tablet devices. When this option is selected the user agent string is "
1602 "changed to indicate a tablet device. Web content optimized for tablets is "
1603 "received there after for the current tab.";
1604
1605const char kResetAppListInstallStateName[] =
1606 "Reset the App Launcher install state on every restart.";
1607const char kResetAppListInstallStateDescription[] =
1608 "Reset the App Launcher install state on every restart. While this flag is "
1609 "set, Chrome will forget the launcher has been installed each time it "
1610 "starts. This is used for testing the App Launcher install flow.";
1611
Kinuko Yasuda33955082018-06-19 10:14:591612const char kResourceLoadSchedulerName[] = "Enable resource load throttling";
Brett Wilsonecb80982017-07-12 20:34:511613const char kResourceLoadSchedulerDescription[] =
Kinuko Yasuda33955082018-06-19 10:14:591614 "Uses the resource load scheduler in blink to throttle resource load "
1615 "requests.";
Brett Wilsonecb80982017-07-12 20:34:511616
Daniel Rubery91874e32019-01-10 22:12:341617const char kSafeBrowsingUseAPDownloadVerdictsName[] =
1618 "Request Advanced Protection verdicts when inspecting downloads";
1619const char kSafeBrowsingUseAPDownloadVerdictsDescription[] =
1620 "If enabled, download protection will request Advanced Protection "
1621 "verdicts from Safe Browsing. These will provide stronger protections "
1622 "from files Safe Browsing is unsure about.";
1623
Brett Wilsonecb80982017-07-12 20:34:511624const char kSafeSearchUrlReportingName[] = "SafeSearch URLs reporting.";
1625const char kSafeSearchUrlReportingDescription[] =
1626 "If enabled, inappropriate URLs can be reported back to SafeSearch.";
1627
Alexei Filippov98772752018-01-27 08:26:521628const char kSamplingHeapProfilerName[] = "Native memory sampling profiler.";
1629const char kSamplingHeapProfilerDescription[] =
1630 "Enables native memory sampling profiler with specified rate in KiB. "
1631 "If sampling rate is not provided the default value of 128 KiB is used.";
1632
Brett Wilsonecb80982017-07-12 20:34:511633const char kSaveasMenuLabelExperimentName[] =
1634 "Switch 'Save as' menu labels to 'Download'";
1635const char kSaveasMenuLabelExperimentDescription[] =
1636 "Enables an experiment to switch menu labels that use 'Save as...' to "
1637 "'Download'.";
1638
1639const char kSavePageAsMhtmlName[] = "Save Page as MHTML";
1640const char kSavePageAsMhtmlDescription[] =
1641 "Enables saving pages as MHTML: a single text file containing HTML and all "
1642 "sub-resources.";
1643
Jeffrey Cohene49cc59c2018-10-23 16:27:281644const char kSendTabToSelfName[] = "Send tab to self";
1645const char kSendTabToSelfDescription[] =
1646 "Allows users to push tabs from Android devices to other synced "
1647 "devices, in order to easily transition those tabs to the new device ";
1648
gogeraldd5061b592017-09-06 23:39:551649const char kServiceWorkerPaymentAppsName[] = "Service Worker payment apps";
1650const char kServiceWorkerPaymentAppsDescription[] =
1651 "Enable Service Worker applications to integrate as payment apps";
1652
momohattfc352292018-08-29 05:12:361653const char kServiceWorkerImportedScriptUpdateCheckName[] =
1654 "Enable update check for service worker importScripts() resources";
1655const char kServiceWorkerImportedScriptUpdateCheckDescription[] =
1656 "Extend byte-for-byte update check for scripts that are imported by the "
1657 "service worker script via importScripts().";
1658
Lei Zhang0ca70ea2018-09-07 17:51:011659const char kServiceWorkerServicificationName[] = "Servicified service workers";
1660const char kServiceWorkerServicificationDescription[] =
Makoto Shimazu22078cc2018-02-21 03:01:441661 "Enable the servicified service workers. A servicified service worker can "
1662 "have direct connection from its clients, so that fetch events can be "
1663 "dispatched through the connection without hopping to the browser process.";
Makoto Shimazud9f333c2017-08-08 07:23:171664
Azeem Arshad3b1ef73122018-08-30 02:04:151665const char kServiceWorkerLongRunningMessageName[] =
1666 "Service worker long running message dispatch.";
1667const char kServiceWorkerLongRunningMessageDescription[] =
1668 "Enables long running message dispatch method for service workers. "
1669 "Messages sent with this method do not timeout, allowing the service "
1670 "worker to run indefinitely.";
1671
Brett Wilsonecb80982017-07-12 20:34:511672const char kSettingsWindowName[] = "Show settings in a window";
1673const char kSettingsWindowDescription[] =
1674 "Settings will be shown in a dedicated window instead of as a browser tab.";
1675
Manu Cornetd7ef7c52018-05-01 22:08:231676const char kShelfHoverPreviewsName[] =
1677 "Show previews of running apps when hovering over the shelf.";
1678const char kShelfHoverPreviewsDescription[] =
1679 "Shows previews of the open windows for a given running app when hovering "
1680 "over the shelf.";
1681
Naoki Fukino008a0022018-05-23 18:33:001682const char kShowAndroidFilesInFilesAppName[] =
1683 "Show Android files in Files app";
1684const char kShowAndroidFilesInFilesAppDescription[] =
1685 "Show Android files in Files app if Android is enabled on the device.";
1686
Brett Wilsonecb80982017-07-12 20:34:511687const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
1688const char kShowAutofillSignaturesDescription[] =
Maxim Kolosovskiye66f8cb2018-03-23 10:25:381689 "Annotates web forms with Autofill signatures as HTML attributes. Also "
1690 "marks password fields suitable for password generation.";
Brett Wilsonecb80982017-07-12 20:34:511691
1692const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
1693const char kShowAutofillTypePredictionsDescription[] =
1694 "Annotates web forms with Autofill field type predictions as placeholder "
1695 "text.";
1696
1697const char kShowOverdrawFeedbackName[] = "Show overdraw feedback";
1698const char kShowOverdrawFeedbackDescription[] =
1699 "Visualize overdraw by color-coding elements based on if they have other "
1700 "elements drawn underneath.";
1701
Shivani Sharma2d5b4b6b2019-01-08 16:07:161702const char kHistoryManipulationIntervention[] =
1703 "History Manipulation Intervention";
1704const char kHistoryManipulationInterventionDescription[] =
1705 "If a page does a client side redirect or adds to the history without a "
1706 "user gesture, then skip it on back/forward UI.";
1707
Carlos IL89128732018-04-03 17:00:251708const char kSupervisedUserCommittedInterstitialsName[] =
1709 "Enable Supervised User Committed Interstitials";
1710const char kSupervisedUserCommittedInterstitialsDescription[] =
1711 "Use committed error pages instead of transient navigation entries for "
1712 "supervised user interstitials";
1713
yiyixbdfa9a0b2017-10-23 22:21:471714const char kEnableDrawOcclusionName[] = "Enable draw occlusion";
1715const char kEnableDrawOcclusionDescription[] =
1716 "Enable the system to use draw occlusion to skip draw quads when they are "
1717 "not shown on the screen.";
1718
Brett Wilsonecb80982017-07-12 20:34:511719const char kShowSavedCopyName[] = "Show Saved Copy Button";
1720const char kShowSavedCopyDescription[] =
1721 "When a page fails to load, if a stale copy of the page exists in the "
1722 "browser cache, a button will be presented to allow the user to load that "
1723 "stale copy. The primary enabling choice puts the button in the most "
1724 "salient position on the error page; the secondary enabling choice puts it "
1725 "secondary to the reload button.";
1726const char kEnableShowSavedCopyPrimary[] = "Enable: Primary";
1727const char kEnableShowSavedCopySecondary[] = "Enable: Secondary";
1728const char kDisableShowSavedCopy[] = "Disable";
1729
Brett Wilsonecb80982017-07-12 20:34:511730const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1731const char kSilentDebuggerExtensionApiDescription[] =
1732 "Do not show the infobar when an extension attaches to a page via "
1733 "chrome.debugger API. This is required to debug extension background "
1734 "pages.";
1735
Tsuyoshi Horo53895ba92018-03-14 04:06:481736const char kSignedHTTPExchangeName[] = "Signed HTTP Exchange";
1737const char kSignedHTTPExchangeDescription[] =
1738 "Enables Origin-Signed HTTP Exchanges support which is still in "
1739 "development. Warning: Enabling this may pose a security risk.";
1740
Christopher Thompson75ff845d2018-02-01 20:12:461741const char kSimplifyHttpsIndicatorName[] = "Simplify HTTPS indicator UI";
1742const char kSimplifyHttpsIndicatorDescription[] =
1743 "Change the UI treatment for HTTPS pages.";
1744
Bret Sepulveda4f891da2018-07-16 19:10:301745const char kSingleTabMode[] = "Single-tab mode";
1746const char kSingleTabModeDescription[] =
1747 "Windows with a single tab receive a special, minimal visual treatment.";
1748
Lukasz Anforowicz738a88d2018-11-05 19:19:341749const char kSiteIsolationOptOutName[] = "Disable site isolation";
1750const char kSiteIsolationOptOutDescription[] =
1751 "Disables site isolation "
Nick Carter855bc492018-03-10 00:44:571752 "(SitePerProcess, IsolateOrigins, etc). Intended for diagnosing bugs that "
1753 "may be due to out-of-process iframes. Opt-out has no effect if site "
Lukasz Anforowicz42840422018-11-05 21:49:221754 "isolation is force-enabled using a command line switch or using an "
1755 "enterprise policy. "
1756 "Caution: this disables important mitigations for the Spectre CPU "
Nick Carter855bc492018-03-10 00:44:571757 "vulnerability affecting most computers.";
Lukasz Anforowicz738a88d2018-11-05 19:19:341758const char kSiteIsolationOptOutChoiceDefault[] = "Default";
1759const char kSiteIsolationOptOutChoiceOptOut[] = "Disabled (not recommended)";
Brett Wilsonecb80982017-07-12 20:34:511760
Pattideade7972018-04-27 02:59:401761const char kSiteSettings[] = "Site settings";
Brett Wilsonecb80982017-07-12 20:34:511762const char kSiteSettingsDescription[] =
Pattideade7972018-04-27 02:59:401763 "Add the All Sites list to Site Settings.";
Brett Wilsonecb80982017-07-12 20:34:511764
Brett Wilsonecb80982017-07-12 20:34:511765const char kSmoothScrollingName[] = "Smooth Scrolling";
1766const char kSmoothScrollingDescription[] =
1767 "Animate smoothly when scrolling page content.";
1768
1769const char kSoftwareRasterizerName[] = "3D software rasterizer";
1770const char kSoftwareRasterizerDescription[] =
1771 "Fall back to a 3D software rasterizer when the GPU cannot be used.";
1772
Wei-Yin Chen (陳威尹)deff0802018-01-19 06:29:201773const char kSoleIntegrationName[] = "Sole integration";
1774const char kSoleIntegrationDescription[] =
1775 "Enable Sole integration for browser customization. You must restart "
1776 "the browser twice for changes to take effect.";
1777
Tommy Steimel77704be2017-08-28 22:14:401778const char kSoundContentSettingName[] = "Sound content setting";
1779const char kSoundContentSettingDescription[] =
1780 "Enable site-wide muting in content settings and tab strip context menu.";
1781
Justin Donnelly4e448cb2017-07-07 21:32:131782const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
1783 "Enable speculative start of a service worker when a search is predicted.";
Justin Donnelly4e448cb2017-07-07 21:32:131784const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
1785 "If enabled, when the user enters text in the omnibox that looks like a "
1786 "a query, any service worker associated with the search engine the query "
1787 "will be sent to is started early.";
1788
Brett Wilsonecb80982017-07-12 20:34:511789const char kSpellingFeedbackFieldTrialName[] = "Spelling Feedback Field Trial";
1790const char kSpellingFeedbackFieldTrialDescription[] =
1791 "Enable the field trial for sending user feedback to spelling service.";
horo201d49492017-05-19 05:31:401792
Carlos ILe5fa0a12018-08-03 16:08:321793const char kSSLCommittedInterstitialsName[] = "Committed Interstitials";
1794const char kSSLCommittedInterstitialsDescription[] =
1795 "Use committed error pages instead of transient navigation entries "
1796 "for SSL interstitial error pages (i.e. certificate errors).";
1797
Shubhie Panickerfaf082ed2018-01-03 04:49:151798const char kStopInBackgroundName[] = "Stop in background";
1799const char kStopInBackgroundDescription[] =
1800 "Stop scheduler task queues, in the background, "
Shubhie Panicker56c99a22018-03-21 00:22:281801 " after a grace period.";
Shubhie Panickerfaf082ed2018-01-03 04:49:151802
Shubhie Panicker56c99a22018-03-21 00:22:281803const char kStopNonTimersInBackgroundName[] =
1804 "Stop non-timer task queues background";
1805const char kStopNonTimersInBackgroundDescription[] =
1806 "Stop non-timer task queues, in the background, "
1807 "after a grace period.";
1808
Brett Wilsonecb80982017-07-12 20:34:511809const char kSuggestionsWithSubStringMatchName[] =
1810 "Substring matching for Autofill suggestions";
1811const char kSuggestionsWithSubStringMatchDescription[] =
1812 "Match Autofill suggestions based on substrings (token prefixes) rather "
1813 "than just prefixes.";
vabr0215a8e2017-03-28 12:47:341814
Marc Treibf65fb002018-08-03 11:17:161815const char kSyncStandaloneTransportName[] = "Allow Sync standalone transport";
1816const char kSyncStandaloneTransportDescription[] =
1817 "If enabled, allows Chrome Sync to start in standalone transport mode. In "
1818 "this mode, the Sync machinery can start without user opt-in, but only a "
1819 "subset of data types are supported.";
1820
Marc Treib4bd95e72018-08-30 06:30:581821const char kSyncSupportSecondaryAccountName[] =
1822 "Support secondary accounts for Sync standalone transport";
1823const char kSyncSupportSecondaryAccountDescription[] =
1824 "If enabled, allows Chrome Sync to start in standalone transport mode for "
1825 "a signed-in account that has not been chosen as Chrome's primary account. "
1826 "This only has an effect if sync-standalone-transport is also enabled.";
1827
Jan Krcal2ff23f7c2018-09-04 16:16:131828const char kSyncUSSAutofillProfileName[] = "Enable USS for autofill profile";
1829const char kSyncUSSAutofillProfileDescription[] =
1830 "Enables the new implementation of autofill profile sync";
1831
Jan Krcale3641b92018-08-10 17:53:311832const char kSyncUSSAutofillWalletDataName[] =
1833 "Enable USS for autofill wallet data";
1834const char kSyncUSSAutofillWalletDataDescription[] =
1835 "Enables the new implementation of autofill walet data sync";
1836
Brett Wilsonecb80982017-07-12 20:34:511837const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1838const char kSyncSandboxDescription[] =
1839 "Connects to the testing server for Chrome Sync.";
vabr0215a8e2017-03-28 12:47:341840
Joe Downing8cbbc192018-05-14 17:37:071841const char kSystemKeyboardLockName[] = "Experimental system keyboard lock";
1842const char kSystemKeyboardLockDescription[] =
1843 "Enables websites to use the keyboard.lock() API to intercept system "
1844 "keyboard shortcuts and have the events routed directly to the website "
1845 "when in fullscreen mode.";
1846
Taylor Bergquistbcc15462018-12-05 00:36:561847const char kTabGroupsName[] = "Tab Groups";
1848const char kTabGroupsDescription[] =
1849 "Allows users to organize tabs into visually distinct groups, e.g. to "
1850 "separate tabs associated with different tasks.";
1851
Caroline Risinge121c2b2018-12-03 20:19:291852const char kTabHoverCardsName[] = "Tab Hover Cards";
1853const char kTabHoverCardsDescription[] =
1854 "Enables a popup containing tab information to be visible when hovering "
1855 "over a tab. This will replace tooltips for tabs.";
1856
Christian Dullweberd0d96f02017-09-13 09:22:511857const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1858const char kTabsInCbdDescription[] =
1859 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
1860
Daniele Castagna0fead93e2018-01-10 20:40:291861const char kTintGlCompositedContentName[] = "Tint GL-composited content";
1862const char kTintGlCompositedContentDescription[] =
1863 "Tint contents composited using GL with a shade of red to help debug and "
1864 "study overlay support.";
1865
Peter Kastingd77428352018-10-26 15:20:251866const char kTopChromeTouchUiName[] = "Touch UI Layout";
1867const char kTopChromeTouchUiDescription[] =
1868 "Enables touch UI layout in the browser's top chrome.";
vabr0215a8e2017-03-28 12:47:341869
Brett Wilsonecb80982017-07-12 20:34:511870const char kThreadedScrollingName[] = "Threaded scrolling";
1871const char kThreadedScrollingDescription[] =
1872 "Threaded handling of scroll-related input events. Disabling this will "
1873 "force all such scroll events to be handled on the main thread. Note that "
1874 "this can dramatically hurt scrolling performance of most websites and is "
1875 "intended for testing purposes only.";
1876
Dominick Ng8896b1cd2017-10-17 23:24:361877const char kTopSitesFromSiteEngagementName[] = "Top Sites from Site Engagement";
1878const char kTopSitesFromSiteEngagementDescription[] =
1879 "Enable Top Sites on the New Tab Page to be sourced and sorted using site "
1880 "engagement.";
1881
Brett Wilsonecb80982017-07-12 20:34:511882const char kTouchAdjustmentName[] = "Touch adjustment";
1883const char kTouchAdjustmentDescription[] =
1884 "Refine the position of a touch gesture in order to compensate for touches "
1885 "having poor resolution compared to a mouse.";
1886
1887const char kTouchDragDropName[] = "Touch initiated drag and drop";
1888const char kTouchDragDropDescription[] =
1889 "Touch drag and drop can be initiated through long press on a draggable "
1890 "element.";
1891
1892const char kTouchEventsName[] = "Touch Events API";
1893const char kTouchEventsDescription[] =
1894 "Force Touch Events API feature detection to always be enabled or "
1895 "disabled, or to be enabled when a touchscreen is detected on startup "
Ella Gea6a203c92017-10-26 19:09:291896 "(Automatic).";
Brett Wilsonecb80982017-07-12 20:34:511897
1898const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
1899const char kTouchSelectionStrategyDescription[] =
1900 "Controls how text selection granularity changes when touch text selection "
1901 "handles are dragged. Non-default behavior is experimental.";
1902const char kTouchSelectionStrategyCharacter[] = "Character";
1903const char kTouchSelectionStrategyDirection[] = "Direction";
1904
1905const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
1906const char kTraceUploadUrlDescription[] =
1907 "This is to be used in conjunction with the enable-navigation-tracing "
1908 "flag. Please select the label that best describes the recorded traces. "
1909 "This will choose the destination the traces are uploaded to. If you are "
1910 "not sure, select other. If left empty, no traces will be uploaded.";
1911const char kTraceUploadUrlChoiceOther[] = "Other";
1912const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1913const char kTraceUploadUrlChoiceQa[] = "QA";
1914const char kTraceUploadUrlChoiceTesting[] = "Testing";
1915
Anthony Vallee-Duboisc0a027d72018-08-30 17:11:561916const char kTranslateExplicitLanguageAskName[] =
1917 "Explicitly ask for language preferences";
1918const char kTranslateExplicitLanguageAskDescription[] =
1919 "Explicitly ask the user which languages they can read on Chrome startup, "
1920 "on the first run that doesn't already have a promo.";
1921
Anthony Vallee-Dubois265c5692018-06-01 15:57:141922const char kTranslateForceTriggerOnEnglishName[] =
1923 "Select which language model to use to trigger translate on English "
1924 "content";
1925const char kTranslateForceTriggerOnEnglishDescription[] =
1926 "Force the Translate Triggering on English pages experiment to be enabled "
1927 "with the selected language model active.";
1928
Philippe Hamel7fdaa452017-09-29 17:22:491929const char kTranslateRankerEnforcementName[] =
1930 "Enforce TranslateRanker decisions";
1931const char kTranslateRankerEnforcementDescription[] =
1932 "Improved Translate UI triggering logic. TranslateRanker decides whether "
1933 "or not Translate UI should be triggered in a given context.";
1934
Nicolas Ouellet-payeur9e5ff3d2018-06-20 16:07:161935const char kTranslateUIName[] = "Enable Translate";
1936const char kTranslateUIDescription[] =
1937 "Enable the Translate popup when visiting webpages in other languages.";
1938
Mustafa Emre Acerb3aa36a82018-05-22 21:44:051939const char kTreatInsecureOriginAsSecureName[] =
1940 "Insecure origins treated as secure";
1941const char kTreatInsecureOriginAsSecureDescription[] =
1942 "Treat given (insecure) origins as secure origins. Multiple origins can be "
1943 "supplied as a comma-separated list. For the definition of secure "
1944 "contexts, "
1945 "see https://w3c.github.io/webappsec-secure-contexts/";
1946
Brett Wilsonecb80982017-07-12 20:34:511947const char kTrySupportedChannelLayoutsName[] =
1948 "Causes audio output streams to check if channel layouts other than the "
1949 "default hardware layout are available.";
1950const char kTrySupportedChannelLayoutsDescription[] =
1951 "Causes audio output streams to check if channel layouts other than the "
1952 "default hardware layout are available. Turning this on will allow the OS "
1953 "to do stereo to surround expansion if supported. May expose third party "
1954 "driver bugs, use with caution.";
1955
David Roger6762a092018-01-31 15:55:071956const char kUnifiedConsentName[] = "Unified Consent";
1957const char kUnifiedConsentDescription[] =
1958 "Enables a unified management of user consent for privacy-related "
1959 "features. This includes new confirmation screens and improved settings "
1960 "pages.";
1961
Brett Wilsonecb80982017-07-12 20:34:511962const char kUiPartialSwapName[] = "Partial swap";
1963const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
1964
Chris Pickel3a227ae62017-08-24 10:47:261965const char kUseDdljsonApiName[] = "Use new ddljson API for Doodles";
1966const char kUseDdljsonApiDescription[] =
1967 "Enables the new ddljson API to fetch Doodles for the NTP.";
1968
Becca Hughes59c05b42017-11-03 13:11:581969const char kUseModernMediaControlsName[] = "New Media Controls";
1970const char kUseModernMediaControlsDescription[] =
1971 "Enables the new style native media controls.";
1972
Wei Li790e7a8572018-03-23 01:31:551973const char kUsePdfCompositorServiceName[] =
1974 "Use PDF compositor service for printing";
1975const char kUsePdfCompositorServiceDescription[] =
1976 "When enabled, use PDF compositor service to composite and generate PDF "
1977 "files for printing. When site isolation is enabled, disabling this will "
1978 "not stop using PDF compositor service since the service is required for "
1979 "printing out-of-process iframes correctly.";
1980
Mustaq Ahmedc646c0a2017-10-20 20:08:301981const char kUserActivationV2Name[] = "User Activation v2";
1982const char kUserActivationV2Description[] =
1983 "Enable simple user activation for APIs that are otherwise controlled by "
1984 "user gesture tokens.";
1985
Brett Wilsonecb80982017-07-12 20:34:511986const char kUserConsentForExtensionScriptsName[] =
1987 "User consent for extension scripts";
1988const char kUserConsentForExtensionScriptsDescription[] =
1989 "Require user consent for an extension running a script on the page, if "
1990 "the extension requested permission to run on all urls.";
1991
1992const char kUseSuggestionsEvenIfFewFeatureName[] =
1993 "Disable minimum for server-side tile suggestions on NTP.";
1994const char kUseSuggestionsEvenIfFewFeatureDescription[] =
1995 "Request server-side suggestions even if there are only very few of them "
1996 "and use them for tiles on the New Tab Page.";
1997
1998const char kV8CacheOptionsName[] = "V8 caching mode.";
1999const char kV8CacheOptionsDescription[] =
2000 "Caching mode for the V8 JavaScript engine.";
Brett Wilsonecb80982017-07-12 20:34:512001const char kV8CacheOptionsCode[] = "Cache V8 compiler data.";
2002
Michael Hablich896d52662017-10-23 15:59:572003const char kV8VmFutureName[] = "Future V8 VM features";
2004const char kV8VmFutureDescription[] =
2005 "This enables upcoming and experimental V8 VM features. "
2006 "This flag does not enable experimental JavaScript features.";
2007
Hannes Payer1130d5672018-06-05 07:37:312008const char kV8OrinocoName[] = "V8 Orinoco garbage collection features";
2009const char kV8OrinocoDescription[] =
2010 "This enables the V8 Orinoco garbage collection features.";
2011
Brett Wilsonecb80982017-07-12 20:34:512012const char kVideoFullscreenOrientationLockName[] =
2013 "Lock screen orientation when playing a video fullscreen.";
2014const char kVideoFullscreenOrientationLockDescription[] =
2015 "Lock the screen orientation of the device to match video orientation when "
2016 "a video goes fullscreen. Only on phones.";
2017
2018const char kVideoRotateToFullscreenName[] =
2019 "Rotate-to-fullscreen gesture for videos.";
2020const char kVideoRotateToFullscreenDescription[] =
2021 "Enter/exit fullscreen when device is rotated to/from the orientation of "
2022 "the video. Only on phones.";
2023
2024const char kWalletServiceUseSandboxName[] =
2025 "Use Google Payments sandbox servers";
2026const char kWalletServiceUseSandboxDescription[] =
2027 "For developers: use the sandbox service for Google Payments API calls.";
2028
Brett Wilsonecb80982017-07-12 20:34:512029const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
2030const char kWebglDraftExtensionsDescription[] =
2031 "Enabling this option allows web applications to access the WebGL "
2032 "Extensions that are still in draft status.";
2033
2034const char kWebMidiName[] = "Web MIDI API";
2035const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
2036
2037const char kWebPaymentsName[] = "Web Payments";
2038const char kWebPaymentsDescription[] =
2039 "Enable Web Payments API integration, a JavaScript API for merchants.";
2040
Mathieu Perreault51339b82017-07-20 17:06:052041const char kWebPaymentsModifiersName[] = "Enable web payment modifiers";
2042const char kWebPaymentsModifiersDescription[] =
2043 "If the website provides modifiers in the payment request, show the custom "
2044 "total for each payment instrument, update the shopping cart when "
2045 "instruments are switched, and send modified payment method specific data "
2046 "to the payment app.";
2047
Brett Wilsonecb80982017-07-12 20:34:512048const char kWebrtcEchoCanceller3Name[] = "WebRTC Echo Canceller 3.";
2049const char kWebrtcEchoCanceller3Description[] =
2050 "Experimental WebRTC echo canceller (AEC3).";
2051
Lei Zhang0a318af2018-11-14 02:19:462052const char kWebrtcH264WithOpenh264FfmpegName[] =
2053 "WebRTC H.264 software video encoder/decoder";
2054const char kWebrtcH264WithOpenh264FfmpegDescription[] =
2055 "When enabled, an H.264 software video encoder/decoder pair is included. "
2056 "If a hardware encoder/decoder is also available it may be used instead of "
2057 "this encoder/decoder.";
2058
Qingsi Wangec2dbf942018-11-03 05:33:042059const char kWebrtcHideLocalIpsWithMdnsName[] =
2060 "Anonymize local IPs exposed by WebRTC.";
2061const char kWebrtcHideLocalIpsWithMdnsDecription[] =
2062 "Conceal local IP addresses with mDNS hostnames.";
2063
Alex Loikob5fb1282018-08-14 10:04:402064const char kWebrtcHybridAgcName[] = "WebRTC hybrid Agc2/Agc1.";
2065const char kWebrtcHybridAgcDescription[] =
2066 "WebRTC Agc2 digital adaptation with Agc1 analog adaptation.";
2067
Brett Wilsonecb80982017-07-12 20:34:512068const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
2069const char kWebrtcHwDecodingDescription[] =
2070 "Support in WebRTC for decoding video streams using platform hardware.";
2071
2072const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
2073const char kWebrtcHwEncodingDescription[] =
2074 "Support in WebRTC for encoding video streams using platform hardware.";
2075
2076const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
2077const char kWebrtcHwH264EncodingDescription[] =
2078 "Support in WebRTC for encoding h264 video streams using platform "
2079 "hardware.";
2080
2081const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
2082const char kWebrtcHwVP8EncodingDescription[] =
2083 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
2084
Niels Möller090866a2018-02-13 10:55:032085const char kWebrtcNewEncodeCpuLoadEstimatorName[] =
2086 "WebRTC new encode cpu load estimator";
2087const char kWebrtcNewEncodeCpuLoadEstimatorDescription[] =
2088 "Enable new estimator for the encoder cpu load, for evaluation and "
2089 "testing. Intended to improve accuracy when screen casting.";
2090
Elad Alon85e0d0be2018-06-26 10:38:372091const char kWebRtcRemoteEventLogName[] = "WebRTC remote-bound event logging";
2092const char kWebRtcRemoteEventLogDescription[] =
2093 "Allow collecting WebRTC event logs and uploading them to Crash. "
2094 "Please note that, even if enabled, this will still require "
2095 "a policy to be set, for it to have an effect.";
2096
Brett Wilsonecb80982017-07-12 20:34:512097const char kWebrtcSrtpAesGcmName[] =
2098 "Negotiation with GCM cipher suites for SRTP in WebRTC";
2099const char kWebrtcSrtpAesGcmDescription[] =
2100 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
2101
Joachim Bauch4a41d7512017-08-23 14:24:232102const char kWebrtcSrtpEncryptedHeadersName[] =
2103 "Negotiation with encrypted header extensions for SRTP in WebRTC";
2104const char kWebrtcSrtpEncryptedHeadersDescription[] =
2105 "When enabled, WebRTC will try to negotiate encrypted header extensions "
2106 "for SRTP.";
2107
Brett Wilsonecb80982017-07-12 20:34:512108const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
2109const char kWebrtcStunOriginDescription[] =
2110 "When enabled, Stun messages generated by WebRTC will contain the Origin "
2111 "header.";
2112
Lei Zhang0a318af2018-11-14 02:19:462113const char kWebrtcUnifiedPlanByDefaultName[] =
2114 "WebRTC: Use Unified Plan SDP Semantics by default";
2115const char kWebrtcUnifiedPlanByDefaultDescription[] =
2116 "RTCPeerConnections generate and expect the standards compliant SDP format "
2117 "called \"Unified Plan\", unless \"Plan B\" is explicitly specified by "
2118 "passing {sdpSemantics:'plan-b'} to the RTCPeerConnection constructor. "
2119 "RTCRtpTransceiver support is also enabled in Unified Plan.";
2120
Brett Wilsonecb80982017-07-12 20:34:512121const char kWebvrName[] = "WebVR";
2122const char kWebvrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012123 "Enables access to experimental Virtual Reality functionality via the "
2124 "WebVR 1.1 API. This feature will eventually be replaced by the WebXR "
2125 "Device API. Warning: Enabling this will also allow WebVR content on "
2126 "insecure origins to access these powerful APIs, and may pose a security "
Anna Offenwanger06dc6062018-04-12 07:56:222127 "risk. Controllers are exposed as Gamepads.";
Brett Wilsonecb80982017-07-12 20:34:512128
Brandon Jonese9d9b2b2017-12-11 22:20:112129const char kWebXrName[] = "WebXR Device API";
2130const char kWebXrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012131 "Enables access to experimental APIs to interact with Virtual Reality (VR) "
2132 "and Augmented Reality (AR) devices.";
2133
2134const char kWebXrGamepadSupportName[] = "WebXR Gamepad Support";
2135const char kWebXrGamepadSupportDescription[] =
2136 "Expose VR controllers as Gamepads for use with the WebXR Device API. Each "
Anna Offenwanger06dc6062018-04-12 07:56:222137 "XRInputSource will have a corresponding Gamepad instance. Requires that "
2138 "WebXR Device API is also enabled.";
Ian Vollick7aaccf92018-04-07 23:10:432139
2140const char kWebXrHitTestName[] = "WebXR Hit Test";
2141const char kWebXrHitTestDescription[] =
2142 "Enables access to raycasting against estimated XR scene geometry.";
Brandon Jonese9d9b2b2017-12-11 22:20:112143
Anna Maria57ecf7592018-01-12 03:10:402144const char kWebXrOrientationSensorDeviceName[] =
2145 "WebXR orientation sensor device";
2146const char kWebXrOrientationSensorDeviceDescription[] =
2147 "When no VR platform device is available, expose a non-presenting device "
2148 "based on the device's orientation sensors, if available.";
2149
Brett Wilsonecb80982017-07-12 20:34:512150const char kZeroCopyName[] = "Zero-copy rasterizer";
2151const char kZeroCopyDescription[] =
2152 "Raster threads write directly to GPU memory associated with tiles.";
vabr0215a8e2017-03-28 12:47:342153
Brett Wilsonff596952017-07-14 01:06:552154// Android ---------------------------------------------------------------------
2155
2156#if defined(OS_ANDROID)
2157
2158const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
2159const char kAiaFetchingDescription[] =
2160 "Enable intermediate certificate fetching when a server does not provide "
2161 "sufficient certificates to build a chain to a trusted root.";
2162
2163const char kAccessibilityTabSwitcherName[] = "Accessibility Tab Switcher";
2164const char kAccessibilityTabSwitcherDescription[] =
2165 "Enable the accessibility tab switcher for Android.";
2166
Pavel Shmakov798f4742018-11-15 21:27:382167const char kAllowRemoteContextForNotificationsName[] =
2168 "Allow using remote app context for notifications";
2169const char kAllowRemoteContextForNotificationsDescription[] =
2170 "Allow using Context#createPackageContext to work around issues with status"
2171 "bar icons on certain Android M devices.";
2172
Brett Wilsonff596952017-07-14 01:06:552173const char kAndroidAutofillAccessibilityName[] = "Autofill Accessibility";
2174const char kAndroidAutofillAccessibilityDescription[] =
2175 "Enable accessibility for autofill popup.";
2176
Khushalbb1963a2018-10-02 21:02:352177const char kAndroidSurfaceControl[] = "Use Android SurfaceControl";
2178const char kAndroidSurfaceControlDescription[] =
2179 "Use the SurfaceControl API for supporting overlays on Android";
2180
Anita Woodruffbfcd1e52018-07-16 12:00:512181const char kAppNotificationStatusMessagingName[] =
2182 "App notification status messaging";
2183const char kAppNotificationStatusMessagingDescription[] =
2184 "Enables messaging in site permissions UI informing user when "
2185 "notifications are disabled for the entire app.";
2186
Brett Wilsonff596952017-07-14 01:06:552187const char kAndroidPaymentAppsName[] = "Android payment apps";
2188const char kAndroidPaymentAppsDescription[] =
2189 "Enable third party Android apps to integrate as payment apps";
2190
Miriam Gershenson8cf1397222018-01-23 22:48:292191const char kAsyncDnsName[] = "Async DNS resolver";
2192const char kAsyncDnsDescription[] = "Enables the built-in DNS resolver.";
2193
Dan Harrington01229f82018-09-12 21:01:212194const char kAutoFetchOnNetErrorPageName[] = "AutoFetchOnNetErrorPage";
2195const char kAutoFetchOnNetErrorPageDescription[] =
2196 "When enabled, and navigation fails with an offline error, schedule a "
2197 "fetch of the page when online again.";
2198
Brett Wilsonff596952017-07-14 01:06:552199const char kAutofillAccessoryViewName[] =
2200 "Autofill suggestions as keyboard accessory view";
2201const char kAutofillAccessoryViewDescription[] =
2202 "Shows Autofill suggestions on top of the keyboard rather than in a "
2203 "dropdown.";
2204
2205const char kBackgroundLoaderForDownloadsName[] =
2206 "Enables background downloading of pages.";
2207const char kBackgroundLoaderForDownloadsDescription[] =
2208 "Enables downloading pages in the background in case page is not yet "
2209 "loaded in current tab.";
2210
Tibor Goldschwendt11b3cf22018-07-04 15:32:442211const char kBackgroundTaskComponentUpdateName[] =
2212 "Background Task Component Updates";
2213const char kBackgroundTaskComponentUpdateDescription[] =
2214 "Schedule component updates with BackgroundTaskScheduler";
2215
Michael van Ouwerkerkbda4ad82018-06-19 14:08:002216const char kCCTModuleName[] = "Chrome Custom Tabs Module";
2217const char kCCTModuleDescription[] =
2218 "Enables a dynamically loaded module in Chrome Custom Tabs, on Android.";
2219
Michael van Ouwerkerk29a7a292018-10-09 09:20:142220const char kCCTModuleCacheName[] = "Chrome Custom Tabs Module Cache";
2221const char kCCTModuleCacheDescription[] =
Michael van Ouwerkerka5df1ec2018-10-11 11:57:402222 "Enables a cache for dynamically loaded modules in Chrome Custom Tabs. "
2223 "Under mild memory pressure the cache may be retained for some time";
Michael van Ouwerkerk29a7a292018-10-09 09:20:142224
John Lin170c00b2018-11-21 15:44:252225const char kCCTModuleCustomHeaderName[] =
2226 "Chrome Custom Tabs Module Custom Header";
2227const char kCCTModuleCustomHeaderDescription[] =
2228 "Enables header customization by dynamically loaded modules in "
2229 "Chrome Custom Tabs.";
2230
barkerd84051482018-11-13 14:46:562231const char kCCTModulePostMessageName[] =
2232 "Chrome Custom Tabs Module postMessage API";
2233const char kCCTModulePostMessageDescription[] =
2234 "Enables the postMessage API exposed to dynamically loaded modules in "
2235 "Chrome Custom Tabs.";
2236
Matthew Jones1abcb132018-07-09 17:59:462237const char kChromeDuetName[] = "Chrome Duet";
2238const char kChromeDuetDescription[] =
2239 "Enables Chrome Duet, split toolbar Chrome Home, on Android.";
Theresa Wellingtonb9243b22017-12-01 16:23:052240
Sarath Singapati83aef1c2017-11-16 15:54:522241const char kClearOldBrowsingDataName[] = "Clear older browsing data";
2242const char kClearOldBrowsingDataDescription[] =
2243 "Enables clearing of browsing data which is older than a given time "
2244 "period.";
2245
Brett Wilsonff596952017-07-14 01:06:552246const char kContentSuggestionsCategoryOrderName[] =
2247 "Default content suggestions category order (e.g. on NTP)";
2248const char kContentSuggestionsCategoryOrderDescription[] =
2249 "Set default order of content suggestion categories (e.g. on the NTP).";
2250
2251const char kContentSuggestionsCategoryRankerName[] =
2252 "Content suggestions category ranker (e.g. on NTP)";
2253const char kContentSuggestionsCategoryRankerDescription[] =
2254 "Set category ranker to order categories of content suggestions (e.g. on "
2255 "the NTP).";
2256
Vitalii Iarkof52ff802017-09-14 12:34:242257const char kContentSuggestionsDebugLogName[] = "Content suggestions debug log";
2258const char kContentSuggestionsDebugLogDescription[] =
2259 "Enable content suggestions debug log accessible through "
2260 "snippets-internals.";
2261
Donn Denman8e58ead2017-11-04 01:44:012262const char kContextualSearchMlTapSuppressionName[] =
2263 "Contextual Search ML tap suppression";
2264const char kContextualSearchMlTapSuppressionDescription[] =
2265 "Enables tap gestures to be suppressed to improve CTR by applying machine "
Donn Denman59729812018-01-09 01:27:022266 "learning. The \"Contextual Search Ranker prediction\" flag must also be "
2267 "enabled!";
Brett Wilsonff596952017-07-14 01:06:552268
2269const char kContextualSearchName[] = "Contextual Search";
2270const char kContextualSearchDescription[] =
2271 "Whether or not Contextual Search is enabled.";
2272
Donn Denman59729812018-01-09 01:27:022273const char kContextualSearchRankerQueryName[] =
2274 "Contextual Search Ranker prediction";
2275const char kContextualSearchRankerQueryDescription[] =
2276 "Enables prediction of tap gestures using Assist-Ranker machine learning.";
2277
2278const char kContextualSearchSecondTapName[] =
2279 "Contextual Search second tap triggering";
2280const char kContextualSearchSecondTapDescription[] =
2281 "Enables triggering on a second tap gesture even when Ranker would "
2282 "normally suppress that tap.";
2283
Donn Denmane9b5b7fb2018-07-24 22:19:492284const char kContextualSearchUnityIntegrationName[] =
2285 "Contextual Search integration with Unified Consent";
2286const char kContextualSearchUnityIntegrationDescription[] =
2287 "Enables integration of Tap to Search with Unified Consent.";
2288
Lei Zhang0a318af2018-11-14 02:19:462289const char kDisplayCutoutAPIName[] =
2290 "Enable support for the Display Cutout API";
2291const char kDisplayCutoutAPIDescription[] =
2292 "Enables developers to support devices that have a display cutout.";
Cathy Li2fb32bf82018-06-06 18:55:402293
Dmitry Skiba9c3efa72017-07-20 22:01:142294const char kDontPrefetchLibrariesName[] = "Don't Prefetch Libraries";
2295const char kDontPrefetchLibrariesDescription[] =
2296 "Don't prefetch libraries after loading.";
2297
Joy Ming189b0cc2017-12-08 19:42:432298const char kDownloadsLocationChangeName[] = "Enable downloads location change";
2299const char kDownloadsLocationChangeDescription[] =
2300 "Enable changing default downloads storage location on Android.";
2301
Shakti Sahu32b2ee102018-05-17 00:04:462302const char kDownloadProgressInfoBarName[] = "Enable download progress infobar";
2303const char kDownloadProgressInfoBarDescription[] =
2304 "Enables an infobar notifying users about status of current downloads.";
2305
Shakti Sahu9ec8cfd2018-07-17 13:29:292306const char kDownloadHomeV2Name[] = "Enable download home v2";
2307const char kDownloadHomeV2Description[] =
2308 "Enables the new UI for download home";
2309
Brett Wilsonff596952017-07-14 01:06:552310const char kEnableAndroidPayIntegrationV1Name[] = "Enable Android Pay v1";
2311const char kEnableAndroidPayIntegrationV1Description[] =
2312 "Enable integration with Android Pay using the first version of the API";
2313
2314const char kEnableAndroidPayIntegrationV2Name[] = "Enable Android Pay v2";
2315const char kEnableAndroidPayIntegrationV2Description[] =
2316 "Enable integration with Android Pay using the second version of the API";
2317
Fabio Tirelo918089a2018-10-22 21:24:082318const char kAutofillManualFallbackAndroidName[] =
2319 "Enable Autofill manual fallback for Addresses and Payments (Android)";
2320const char kAutofillManualFallbackAndroidDescription[] =
2321 "If enabled, adds toggle for addresses and payments bottom sheet to the "
2322 "keyboard accessory.";
2323
Fabio Tirelo315e65922018-09-05 03:35:492324const char kEnableAutofillRefreshStyleName[] =
2325 "Enable Autofill refresh style (Android)";
2326const char kEnableAutofillRefreshStyleDescription[] =
2327 "Enable modernized style for Autofill on Android";
2328
Vitalii Iarkof4ed32d2017-09-26 13:15:532329const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
Brett Wilsonff596952017-07-14 01:06:552330const char kEnableAndroidSpellcheckerDescription[] =
2331 "Enables use of the Android spellchecker.";
Brett Wilsonff596952017-07-14 01:06:552332
Lei Tianbd5a3bf2018-02-28 19:01:162333const char kEnableCommandLineOnNonRootedName[] =
2334 "Enable command line on non-rooted devices";
2335const char kEnableCommandLineOnNoRootedDescription[] =
2336 "Enable reading command line file on non-rooted devices (DANGEROUS).";
2337
Vitalii Iarkof4ed32d2017-09-26 13:15:532338const char kEnableContentSuggestionsNewFaviconServerName[] =
2339 "Get favicons for content suggestions from a new server.";
2340const char kEnableContentSuggestionsNewFaviconServerDescription[] =
2341 "If enabled, the content suggestions (on the NTP) will get favicons from a "
2342 "new favicon server.";
Brett Wilsonff596952017-07-14 01:06:552343
Vitalii Iarkof4ed32d2017-09-26 13:15:532344const char kEnableContentSuggestionsThumbnailDominantColorName[] =
2345 "Use content suggestions thumbnail dominant color.";
2346const char kEnableContentSuggestionsThumbnailDominantColorDescription[] =
2347 "Use content suggestions thumbnail dominant color as a placeholder before "
2348 "the real thumbnail is fetched (requires Chrome Home).";
2349
Brett Wilsonff596952017-07-14 01:06:552350const char kEnableCustomContextMenuName[] = "Enable custom context menu";
2351const char kEnableCustomContextMenuDescription[] =
2352 "Enables a new context menu when a link, image, or video is pressed within "
2353 "Chrome.";
2354
Becca Hughes6d73bac542018-06-18 20:38:502355const char kEnableMediaControlsExpandGestureName[] =
2356 "Enable Media Controls Expand Gesture";
2357const char kEnableMediaControlsExpandGestureDescription[] =
2358 "Enables a gesture to be used on the media controls to extend the video "
2359 "into the Display Cutout area.";
2360
Brett Wilsonff596952017-07-14 01:06:552361const char kEnableOmniboxClipboardProviderName[] =
2362 "Omnibox clipboard URL suggestions";
2363const char kEnableOmniboxClipboardProviderDescription[] =
2364 "Provide a suggestion of the URL stored in the clipboard (if any) upon "
2365 "focus in the omnibox.";
2366
Brett Wilsonff596952017-07-14 01:06:552367const char kEnableNtpAssetDownloadSuggestionsName[] =
2368 "Show asset downloads on the New Tab page";
2369const char kEnableNtpAssetDownloadSuggestionsDescription[] =
2370 "If enabled, the list of content suggestions on the New Tab page will "
2371 "contain assets (e.g. books, pictures, audio) that the user downloaded for "
2372 "later use.";
2373
2374const char kEnableNtpBookmarkSuggestionsName[] =
2375 "Show recently visited bookmarks on the New Tab page";
2376const char kEnableNtpBookmarkSuggestionsDescription[] =
2377 "If enabled, the list of content suggestions on the New Tab page will "
2378 "contain recently visited bookmarks.";
2379
Brett Wilsonff596952017-07-14 01:06:552380const char kEnableNtpOfflinePageDownloadSuggestionsName[] =
2381 "Show offline page downloads on the New Tab page";
2382const char kEnableNtpOfflinePageDownloadSuggestionsDescription[] =
2383 "If enabled, the list of content suggestions on the New Tab page will "
2384 "contain pages that the user downloaded for later use.";
2385
2386const char kEnableNtpRemoteSuggestionsName[] =
2387 "Show server-side suggestions on the New Tab page";
2388const char kEnableNtpRemoteSuggestionsDescription[] =
2389 "If enabled, the list of content suggestions on the New Tab page will "
2390 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
2391 "allows to override the source used to retrieve these server-side "
2392 "suggestions.";
2393
2394const char kEnableNtpSnippetsVisibilityName[] =
2395 "Make New Tab Page Snippets more visible.";
2396const char kEnableNtpSnippetsVisibilityDescription[] =
2397 "If enabled, the NTP snippets will become more discoverable with a larger "
2398 "portion of the first card above the fold.";
2399
2400const char kEnableNtpSuggestionsNotificationsName[] =
2401 "Notify about new content suggestions available at the New Tab page";
2402const char kEnableNtpSuggestionsNotificationsDescription[] =
2403 "If enabled, notifications will inform about new content suggestions on "
2404 "the New Tab page.";
2405
Brett Wilsonff596952017-07-14 01:06:552406const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
2407const char kEnableOfflinePreviewsDescription[] =
2408 "Enable showing offline page previews on slow networks.";
2409
2410const char kEnableOskOverscrollName[] = "Enable OSK Overscroll";
2411const char kEnableOskOverscrollDescription[] =
2412 "Enable OSK overscroll support. With this flag on, the OSK will only "
2413 "resize the visual viewport.";
2414
Brett Wilsonff596952017-07-14 01:06:552415const char kEnableWebNfcName[] = "WebNFC";
2416const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
2417
gogeraldf3cbb422017-07-26 14:37:122418const char kEnableWebPaymentsMethodSectionOrderV2Name[] =
2419 "Enable Web Payments method section order V2.";
2420const char kEnableWebPaymentsMethodSectionOrderV2Description[] =
2421 "Enable this option to display payment method section above address "
2422 "section instead of below it.";
2423
Donn Denmanffaeaa32018-10-12 17:37:532424const char kEphemeralTabName[] = "An Ephemeral Tab in an Overlay Panel";
2425const char kEphemeralTabDescription[] =
2426 "Enable a 'sneak peek' at a linked page in an overlay.";
2427
Lei Zhang0a318af2018-11-14 02:19:462428const char kExploreSitesName[] = "Explore websites";
2429const char kExploreSitesDescription[] =
2430 "Enables portal from new tab page to explore websites.";
2431
Jinsuk Kim459ee142018-11-28 06:27:312432const char kGestureNavigationName[] = "History navigation with gesture";
2433const char kGestureNavigationDescription[] =
2434 "Enable history navigation with horizontal gesture.";
2435
Raymes Khoury582b43132017-12-12 23:54:302436const char kGrantNotificationsToDSEName[] =
2437 "Grant notifications to the Default Search Engine";
2438const char kGrantNotificationsToDSENameDescription[] =
2439 "Automatically grant the notifications permission to the Default Search "
2440 "Engine";
2441
Daniel Parke74fcf862018-03-27 18:05:452442const char kHomePageButtonName[] = "Force Enable Home Page Button";
Daniel Park990d0992018-05-18 22:12:512443const char kHomePageButtonDescription[] = "Displays a home button if enabled.";
Daniel Parke74fcf862018-03-27 18:05:452444
Yafei Duanbb7663f32018-07-17 01:33:152445const char kHomepageTileName[] =
2446 "Enable Homepage tile shown in Suggested Tiles";
2447const char kHomepageTileDescription[] =
2448 "When NTPButton is enabled, the first tile of the Suggested Tiles will be "
2449 "used for homepage. It will not have an effect when NTPButton is disabled.";
2450
Jian Li4b252642018-07-23 19:49:072451const char kIncognitoStringsName[] = "Alternate incognito strings";
2452const char kIncognitoStringsDescription[] =
2453 "Show alternate incognito strings if enabled.";
2454
Theresa920e0ed2018-03-07 18:12:442455const char kInterestFeedContentSuggestionsDescription[] =
Yafei Duanbb7663f32018-07-17 01:33:152456 "Use the interest feed to render content suggestions. Currently "
2457 "content "
Theresa920e0ed2018-03-07 18:12:442458 "suggestions are shown on the New Tab Page.";
2459const char kInterestFeedContentSuggestionsName[] =
2460 "Interest Feed Content Suggestions";
2461
Brett Wilsonff596952017-07-14 01:06:552462const char kKeepPrefetchedContentSuggestionsName[] =
2463 "Keep prefetched content suggestions";
2464const char kKeepPrefetchedContentSuggestionsDescription[] =
2465 "If enabled, some of prefetched content suggestions are not replaced by "
2466 "the new fetched suggestions.";
2467
Leo Zhang051b75482017-12-20 03:28:302468const char kLanguagesPreferenceName[] = "Language Settings";
2469const char kLanguagesPreferenceDescription[] =
2470 "Enable this option for Language Settings feature on Android.";
2471
Brett Wilsonff596952017-07-14 01:06:552472const char kLsdPermissionPromptName[] =
2473 "Location Settings Dialog Permission Prompt";
2474const char kLsdPermissionPromptDescription[] =
2475 "Whether to use the Google Play Services Location Settings Dialog "
2476 "permission dialog.";
2477
Amirhossein Simjour97b4154f2018-02-20 03:49:592478const char kModalPermissionDialogViewName[] = "Modal Permission Dialog";
2479const char kModalPermissionDialogViewDescription[] =
2480 "Enable this option to use ModalDialogManager for permission Dialogs.";
2481
Brett Wilsonff596952017-07-14 01:06:552482const char kMediaScreenCaptureName[] = "Experimental ScreenCapture.";
2483const char kMediaScreenCaptureDescription[] =
2484 "Enable this option for experimental ScreenCapture feature on Android.";
2485
2486const char kModalPermissionPromptsName[] = "Modal Permission Prompts";
2487const char kModalPermissionPromptsDescription[] =
2488 "Whether to use permission dialogs in place of permission infobars.";
2489
Finnur Thorarinssonc1488fc62018-07-09 19:21:572490const char kNewContactsPickerName[] = "Enable new contacts picker";
2491const char kNewContactsPickerDescription[] =
2492 "Activates the new picker for selecting contacts.";
2493
Dan Harrington541db9e2018-07-30 18:36:302494const char kNewNetErrorPageUIName[] = "Enable new UI for net-error page";
2495const char kNewNetErrorPageUIDescription[] =
2496 "Selects which new UI experience to show on the net-error (Dino) page";
2497
Brett Wilsonff596952017-07-14 01:06:552498const char kNewPhotoPickerName[] = "Enable new Photopicker";
2499const char kNewPhotoPickerDescription[] =
2500 "Activates the new picker for selecting photos.";
2501
2502const char kNoCreditCardAbort[] = "No Credit Card Abort";
2503const char kNoCreditCardAbortDescription[] =
2504 "Whether or not the No Credit Card Abort is enabled.";
2505
Daniel Park990d0992018-05-18 22:12:512506const char kNtpButtonName[] = "Enable NTP Button";
2507const char kNtpButtonDescription[] =
2508 "Displays a New Tab Page button in the toolbar if enabled.";
2509
Brett Wilsonff596952017-07-14 01:06:552510const char kOfflineBookmarksName[] = "Enable offline bookmarks";
2511const char kOfflineBookmarksDescription[] =
2512 "Enable saving bookmarked pages for offline viewing.";
2513
Jian Liade82832018-09-06 22:31:412514const char kOfflineIndicatorAlwaysHttpProbeName[] = "Always http probe";
2515const char kOfflineIndicatorAlwaysHttpProbeDescription[] =
2516 "Always do http probe to detect network connectivity for offline indicator "
2517 "as opposed to just taking the connection state from the system."
2518 "Used for testing.";
2519
2520const char kOfflineIndicatorChoiceName[] = "Offline indicator choices";
2521const char kOfflineIndicatorChoiceDescription[] =
2522 "Show an offline indicator while offline.";
Jian Li1413ebf2018-06-14 20:46:322523
Brett Wilsonff596952017-07-14 01:06:552524const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
2525const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
2526
2527const char kOfflinePagesCtV2Name[] = "Enable Offline Pages CT V2 features.";
2528const char kOfflinePagesCtV2Description[] =
2529 "V2 features include attributing pages to the app that initiated the "
2530 "custom tabs, and being able to query for pages by page attribution.";
2531
Cathy Li7311d792018-04-05 00:34:162532const char kOfflinePagesCTSuppressNotificationsName[] =
2533 "Disable download complete notification for whitelisted CCT apps.";
2534const char kOfflinePagesCTSuppressNotificationsDescription[] =
2535 "Disable download complete notification for page downloads originating "
2536 "from a CCT app whitelisted to show their own download complete "
2537 "notification.";
2538
Candice Sy74fa7a352018-03-30 23:46:492539const char kOfflinePagesDescriptiveFailStatusName[] =
2540 "Enables descriptive failed download status text.";
2541const char kOfflinePagesDescriptiveFailStatusDescription[] =
2542 "Enables failed download status text in notifications and Downloads Home "
2543 "to state the reason the request failed if the failure is actionable.";
2544
2545const char kOfflinePagesDescriptivePendingStatusName[] =
2546 "Enables descriptive pending download status text.";
2547const char kOfflinePagesDescriptivePendingStatusDescription[] =
2548 "Enables pending download status text in notifications and Downloads Home "
2549 "to state the reason the request is pending.";
2550
2551const char kOfflinePagesInDownloadHomeOpenInCctName[] =
2552 "Enables offline pages in the downloads home to be opened in CCT.";
2553const char kOfflinePagesInDownloadHomeOpenInCctDescription[] =
2554 "When enabled offline pages launched from the Downloads Home will be "
2555 "opened in Chrome Custom Tabs (CCT) instead of regular tabs.";
2556
Carlos Knippschild09272ecd2017-12-09 03:29:362557const char kOfflinePagesLimitlessPrefetchingName[] =
2558 "Removes resource usage limits for the prefetching of offline pages.";
2559const char kOfflinePagesLimitlessPrefetchingDescription[] =
2560 "Allows the prefetching of suggested offline pages to ignore resource "
2561 "usage limits. This allows it to completely ignore data usage limitations "
2562 "and allows downloads to happen with any kind of connection.";
2563
Brett Wilsonff596952017-07-14 01:06:552564const char kOfflinePagesLoadSignalCollectingName[] =
2565 "Enables collecting load timing data for offline page snapshots.";
2566const char kOfflinePagesLoadSignalCollectingDescription[] =
2567 "Enables loading completeness data collection while writing an offline "
2568 "page. This data is collected in the snapshotted offline page to allow "
2569 "data analysis to improve deciding when to make the offline snapshot.";
2570
2571const char kOfflinePagesPrefetchingName[] =
2572 "Enables suggested offline pages to be prefetched.";
2573const char kOfflinePagesPrefetchingDescription[] =
2574 "Enables suggested offline pages to be prefetched, so useful content is "
2575 "available while offline.";
2576
Pete Williamson7845dff2017-09-20 11:06:192577const char kOfflinePagesResourceBasedSnapshotName[] =
2578 "Enables offline page snapshots to be based on percentage of page loaded.";
2579const char kOfflinePagesResourceBasedSnapshotDescription[] =
2580 "Enables offline page snapshots to use a resource percentage based "
2581 "approach for determining when the page is loaded as opposed to a time "
2582 "based approach";
2583
Collin Baker17f92a52017-07-19 21:41:252584const char kOfflinePagesRenovationsName[] = "Enables offline page renovations.";
2585const char kOfflinePagesRenovationsDescription[] =
2586 "Enables offline page renovations which correct issues with dynamic "
2587 "content that occur when offlining pages that use JavaScript.";
2588
Brett Wilsonff596952017-07-14 01:06:552589const char kOfflinePagesSharingName[] = "Enables offline pages to be shared.";
2590const char kOfflinePagesSharingDescription[] =
2591 "Enables the saved offline pages to be shared via other applications.";
2592
Yafei Duan36b4b5b2018-08-07 00:40:032593const char kOfflinePagesLivePageSharingName[] =
2594 "Enables live page sharing of offline pages";
2595const char kOfflinePagesLivePageSharingDescription[] =
2596 "Enables to share current loaded page as offline page by saving as MHTML "
2597 "first.";
2598
Cathy Lie0d88762018-04-12 08:03:012599const char kOfflinePagesShowAlternateDinoPageName[] =
2600 "Enable alternate dino page with more user capabilities.";
2601const char kOfflinePagesShowAlternateDinoPageDescription[] =
2602 "Enables the dino page to show more buttons and offer existing offline "
2603 "content.";
2604
Brett Wilsonff596952017-07-14 01:06:552605const char kOfflinePagesSvelteConcurrentLoadingName[] =
2606 "Enables concurrent background loading on svelte.";
2607const char kOfflinePagesSvelteConcurrentLoadingDescription[] =
2608 "Enables concurrent background loading (or downloading) of pages on "
2609 "Android svelte (512MB RAM) devices. Otherwise, background loading will "
2610 "happen when the svelte device is idle.";
2611
2612const char kOffliningRecentPagesName[] =
2613 "Enable offlining of recently visited pages";
2614const char kOffliningRecentPagesDescription[] =
2615 "Enable storing recently visited pages locally for offline use. Requires "
2616 "Offline Pages to be enabled.";
2617
Lei Zhang2eca9082017-10-17 20:42:502618const char kPayWithGoogleV1Name[] = "Pay with Google v1";
2619const char kPayWithGoogleV1Description[] =
Brett Wilsonff596952017-07-14 01:06:552620 "Enable Pay with Google integration into Web Payments with API version "
2621 "'1'.";
2622
Matthew Jonesa88b95852017-11-08 23:13:502623const char kProgressBarThrottleName[] = "Android progress update throttling.";
2624const char kProgressBarThrottleDescription[] =
2625 "Limit the maximum progress update to make progress appear smoother.";
2626
Brett Wilsonff596952017-07-14 01:06:552627const char kPullToRefreshEffectName[] = "The pull-to-refresh effect";
2628const char kPullToRefreshEffectDescription[] =
2629 "Page reloads triggered by vertically overscrolling content.";
2630
Piotr Swigon7c296ef2017-08-29 04:32:002631const char kPwaImprovedSplashScreenName[] =
2632 "Improved Splash Screen for standalone PWAs";
2633const char kPwaImprovedSplashScreenDescription[] =
2634 "Enables the Improved Splash Screen UX for standalone PWAs based on new "
2635 "Web App Manifest attributes";
Piotr Swigon9f630b32017-07-26 09:42:492636const char kPwaPersistentNotificationName[] =
2637 "Persistent notification in standalone PWA";
2638const char kPwaPersistentNotificationDescription[] =
2639 "Enables a persistent Android notification for standalone PWAs";
2640
Brett Wilsonff596952017-07-14 01:06:552641const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
2642const char kReaderModeHeuristicsDescription[] =
2643 "Determines what pages the Reader Mode infobar is shown on.";
2644const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
2645const char kReaderModeHeuristicsAdaboost[] = "Non-mobile-friendly articles";
2646const char kReaderModeHeuristicsAllArticles[] = "All articles";
2647const char kReaderModeHeuristicsAlwaysOff[] = "Never";
2648const char kReaderModeHeuristicsAlwaysOn[] = "Always";
2649
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:182650const char kReaderModeInCCTName[] = "Reader Mode in CCT";
2651const char kReaderModeInCCTDescription[] =
2652 "Open Reader Mode in Chrome Custom Tabs.";
2653
Varun Khaneja80712a82018-10-12 23:34:592654const char kSafeBrowsingUseLocalBlacklistsV2Name[] =
2655 "Use local Safe Browsing blacklists";
2656const char kSafeBrowsingUseLocalBlacklistsV2Description[] =
2657 "If enabled, maintain a copy of Safe Browsing blacklists in the browser "
2658 "process to check the Safe Browsing reputation of URLs without calling "
2659 "into GmsCore for every URL.";
2660
Matthew Jones53114262018-12-12 16:36:472661const char kSearchReadyOmniboxName[] = "Search Ready Omnibox";
2662const char kSearchReadyOmniboxDescription[] =
2663 "Clears the omnibox and adds a suggestion item to share, copy, or edit the "
2664 "URL.";
2665
Brett Wilsonff596952017-07-14 01:06:552666const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2667const char kSetMarketUrlForTestingDescription[] =
2668 "When enabled, sets the market URL for use in testing the update menu "
2669 "item.";
2670
2671const char kSpannableInlineAutocompleteName[] = "Spannable inline autocomplete";
2672const char kSpannableInlineAutocompleteDescription[] =
2673 "A new type of inline autocomplete for the omnibox that works with "
2674 "keyboards that compose text.";
2675
Theresaeea05a12018-05-09 21:01:592676const char kSiteExplorationUiName[] = "Site Exploration UI";
2677const char kSiteExplorationUiDescription[] =
2678 "Show site suggestions in the Exploration UI";
2679
Lei Zhang0a318af2018-11-14 02:19:462680const char kStrictSiteIsolationName[] = "Strict site isolation";
2681const char kStrictSiteIsolationDescription[] =
2682 "Security mode that enables site isolation for all sites (SitePerProcess). "
2683 "In this mode, each renderer process will contain pages from at most one "
2684 "site, using out-of-process iframes when needed. "
2685 "Check chrome://process-internals to see the current isolation mode. "
2686 "Setting this flag to 'Enabled' turns on site isolation regardless of the "
2687 "default. Here, 'Disabled' is a legacy value that actually means "
2688 "'Default,' in which case site isolation may be already enabled based on "
2689 "platform, enterprise policy, or field trial. See also "
2690 "#site-isolation-trial-opt-out for how to disable site isolation for "
2691 "testing.";
2692
Anthony Vallee-Dubois4623e1b2018-10-11 22:09:182693const char kTranslateAndroidManualTriggerName[] =
2694 "Enable manual translate trigger";
2695const char kTranslateAndroidManualTriggerDescription[] =
2696 "Show a menu item in the main menu that triggers page translation.";
2697
Brett Wilsonff596952017-07-14 01:06:552698const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2699const char kUpdateMenuBadgeDescription[] =
Tommy Nyquist3c02e592018-10-18 23:36:442700 "When enabled, a badge will be shown on the app menu button if the update "
2701 "type is Update Available or Unsupported OS Version.";
Brett Wilsonff596952017-07-14 01:06:552702
2703const char kUpdateMenuItemCustomSummaryDescription[] =
2704 "When this flag and the force show update menu item flag are enabled, a "
2705 "custom summary string will be displayed below the update menu item.";
2706const char kUpdateMenuItemCustomSummaryName[] =
2707 "Update menu item custom summary";
2708
Tommy Nyquist3c02e592018-10-18 23:36:442709const char kUpdateMenuTypeName[] =
2710 "Forces the update menu type to a specific type";
2711const char kUpdateMenuTypeDescription[] =
2712 "When set, forces the update type to be a specific one, which impacts "
2713 "the app menu badge and menu item for updates.";
2714const char kUpdateMenuTypeNone[] = "None";
2715const char kUpdateMenuTypeUpdateAvailable[] = "Update Available";
2716const char kUpdateMenuTypeUnsupportedOSVersion[] = "Unsupported OS Version";
Brett Wilsonff596952017-07-14 01:06:552717
Marc Treib93af46a2017-08-23 13:30:002718const char kThirdPartyDoodlesName[] =
2719 "Enable Doodles for third-party search engines";
2720const char kThirdPartyDoodlesDescription[] =
2721 "Enables fetching and displaying Doodles on the NTP for third-party search "
2722 "engines.";
2723
Klaus Weidneraaf697f2018-01-18 20:07:362724const char kWebXrRenderPathName[] = "WebXR presentation render path";
2725const char kWebXrRenderPathDescription[] =
2726 "Render path to use for WebXR presentation (including WebVR)";
2727const char kWebXrRenderPathChoiceClientWaitDescription[] =
2728 "ClientWait (Baseline)";
2729const char kWebXrRenderPathChoiceGpuFenceDescription[] =
2730 "GpuFence (Android N+)";
Klaus Weidnerd25dff42018-04-12 06:56:072731const char kWebXrRenderPathChoiceSharedBufferDescription[] =
2732 "SharedBuffer (Android O+)";
Klaus Weidneraaf697f2018-01-18 20:07:362733
Becky Zhou65584142019-01-10 18:22:292734#if BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2735
2736const char kAndroidNightModeName[] = "Enable night mode based on user settings";
2737const char kAndroidNightModeDescription[] =
2738 "If enabled, user can enable night mode through settings.";
2739
2740#endif // BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2741
Brett Wilson7b44537e2017-08-18 01:38:282742// Non-Android -----------------------------------------------------------------
Brett Wilsonff596952017-07-14 01:06:552743
Brett Wilson7b44537e2017-08-18 01:38:282744#else // !defined(OS_ANDROID)
brettw5f9c1642017-05-14 17:12:482745
Brett Wilson7b44537e2017-08-18 01:38:282746const char kAccountConsistencyName[] =
2747 "Identity consistency between browser and cookie jar";
2748const char kAccountConsistencyDescription[] =
2749 "When enabled, the browser manages signing in and out of Google accounts.";
2750const char kAccountConsistencyChoiceMirror[] = "Mirror";
2751const char kAccountConsistencyChoiceDice[] = "Dice";
vabr0215a8e2017-03-28 12:47:342752
Tommy Martino3fa3df52018-08-20 21:45:442753const char kAutofillDropdownLayoutName[] =
2754 "Autofill Dropdown Layout Experiment";
2755const char kAutofillDropdownLayoutDescription[] =
2756 "Alternate visual designs for the Autofill dropdown.";
2757
Fabio Tirelo3773dea2018-09-11 15:21:522758const char kAutofillPrimaryInfoStyleExperimentName[] =
2759 "Autofill experiment with primary info style";
2760const char kAutofillPrimaryInfoStyleExperimentDescription[] =
2761 "Allow experimentation with different typefaces for primary info on the "
2762 "Autofill dropdown (addresses and payment methods)";
2763
Chris Pickel3a227ae62017-08-24 10:47:262764const char kDoodlesOnLocalNtpName[] = "Enable doodles on the local NTP";
2765const char kDoodlesOnLocalNtpDescription[] =
2766 "Show doodles on the local New Tab page if Google is the default search "
2767 "engine.";
2768
Kyle Milkaedb39f52018-11-21 19:53:072769const char kSearchSuggestionsOnLocalNtpName[] =
2770 "Enable search suggestions on the local NTP";
2771const char kSearchSuggestionsOnLocalNtpDescription[] =
2772 "Show search suggestions on the local New Tab page if Google is the "
2773 "default search engine.";
2774
2775const char kPromosOnLocalNtpName[] = "Enable promos on the local NTP";
2776const char kPromosOnLocalNtpDescription[] =
2777 "Show promos on the local New Tab page if Google is the "
2778 "default search engine.";
2779
Lei Zhang0a318af2018-11-14 02:19:462780const char kEnableWebAuthenticationBleSupportName[] =
2781 "Web Authentication API BLE support";
2782const char kEnableWebAuthenticationBleSupportDescription[] =
2783 "Enable support for using Web Authentication API via Bluetooth security "
2784 "keys";
Sebastien Marchandd33f7dc2018-06-22 22:07:062785
Sebastien Marchandd33f7dc2018-06-22 22:07:062786const char kEnableWebAuthenticationCtap2SupportName[] =
2787 "Enable Web Authentication API support for CTAP2 security keys";
2788const char kEnableWebAuthenticationCtap2SupportDescription[] =
Kim Paulhamus92431372018-07-20 02:25:472789 "Enable CTAP2 security keys for the Web Authentication API.";
Sebastien Marchandd33f7dc2018-06-22 22:07:062790
2791const char kEnableWebAuthenticationTestingAPIName[] =
2792 "Web Authentication Testing API";
2793const char kEnableWebAuthenticationTestingAPIDescription[] =
2794 "Enable Web Authentication Testing API support, which disconnects the API "
2795 "implementation from the real world, and allows configuring virtual "
2796 "authenticator devices for testing";
2797
Jeffrey Cohenf04130a42018-08-29 00:22:272798const char kHappinessTrackingSurveysForDesktopName[] =
2799 "Happiness Tracking Surveys";
2800const char kHappinessTrackingSurveysForDesktopDescription[] =
2801 "Enable showing Happiness Tracking Surveys to users on Desktop";
2802
Lei Zhang0a318af2018-11-14 02:19:462803const char kInfiniteSessionRestoreName[] = "Infinite Session Restore";
2804const char kInfiniteSessionRestoreDescription[] =
2805 "Reduces the number of tabs being loaded simultaneously during session "
2806 "restore, to improve responsiveness of the foreground tab. This requires "
2807 "#enable-page-almost-idle.";
Dave Schuyler598a4a42018-01-04 02:15:102808
Travis Skarebcdb5ed32018-08-17 01:49:402809const char kOmniboxDriveSuggestionsName[] =
2810 "Omnibox Google Drive Document suggestions";
2811const char kOmniboxDriveSuggestionsDescriptions[] =
2812 "Display suggestions for Google Drive documents in the omnibox when Google "
2813 "is the default search engine.";
2814
Dave Schuyler616273d2018-04-19 03:12:522815const char kOmniboxNewAnswerLayoutName[] = "Omnibox new answer layout";
2816const char kOmniboxNewAnswerLayoutDescription[] =
Justin Donnellye7926092018-06-18 14:57:212817 "Display answers using an enhanced layout with larger images. Has no "
2818 "effect unless either the #upcoming-ui-features flag is Enabled or the "
2819 "#top-chrome-md flag is set to Refresh or Touchable Refresh.";
Dave Schuyler616273d2018-04-19 03:12:522820
Lei Zhang0a318af2018-11-14 02:19:462821const char kOmniboxPedalSuggestionsName[] = "Omnibox Pedal suggestions";
2822const char kOmniboxPedalSuggestionsDescription[] =
2823 "Enable omnibox Pedal suggestions using either a side button in suggestion "
2824 "or a dedicated suggestion item beneath the triggering line item. Omnibox "
2825 "Pedals accelerate actions within Chrome by detecting user intent and "
2826 "offering direct access to the end goal.";
2827
Orin Jaworski04c08b42018-07-11 02:39:562828const char kOmniboxReverseAnswersName[] = "Omnibox reverse answers";
2829const char kOmniboxReverseAnswersDescription[] =
2830 "Display answers with rows reversed (swapped); except definitions. Has no "
2831 "effect unless either the #upcoming-ui-features flag is Enabled or the "
2832 "#top-chrome-md flag is set to Refresh or Touchable Refresh.";
2833
Lei Zhang0a318af2018-11-14 02:19:462834const char kOmniboxRichEntitySuggestionsName[] =
2835 "Omnibox rich entity suggestions";
2836const char kOmniboxRichEntitySuggestionsDescription[] =
2837 "Display entity suggestions using images and an enhanced layout; showing "
2838 "more context and descriptive text about the entity. Has no effect unless "
2839 "either the #upcoming-ui-features flag is Enabled or the #top-chrome-md "
2840 "flag is set to Refresh or Touchable Refresh.";
2841
Kevin Bailey898669972017-11-06 15:34:492842const char kOmniboxTabSwitchSuggestionsName[] =
2843 "Omnibox tab switch suggestions";
2844const char kOmniboxTabSwitchSuggestionsDescription[] =
Justin Donnellye7926092018-06-18 14:57:212845 "Enable suggestions for switching to open tabs within the Omnibox. "
2846 "Has no effect unless either the #upcoming-ui-features flag is Enabled or "
2847 "the #top-chrome-md flag is set to Refresh or Touchable Refresh.";
Kevin Bailey898669972017-11-06 15:34:492848
krbcc621412017-06-01 19:40:282849const char kOmniboxTailSuggestionsName[] = "Omnibox tail suggestions";
2850const char kOmniboxTailSuggestionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192851 "Enable receiving tail suggestions, a type of search suggestion based on "
2852 "the last few words in the query, for the Omnibox.";
vabr0215a8e2017-03-28 12:47:342853
Sebastien Marchandd33f7dc2018-06-22 22:07:062854const char kPageAlmostIdleName[] = "Page Almost Idle";
2855const char kPageAlmostIdleDescription[] =
2856 "Make session restore use a definition of loading that waits for CPU and "
2857 "network quiescence.";
2858
2859const char kProactiveTabFreezeAndDiscardName[] =
2860 "Proactive Tab Freeze and Discard";
2861const char kProactiveTabFreezeAndDiscardDescription[] =
2862 "Enables proactive tab freezing and discarding. This requires "
2863 "#enable-page-almost-idle.";
2864
Nicolas Ouellet-payeur82eb65b2018-11-05 16:49:272865const char kShowManagedUiName[] = "Show managed UI for managed users";
2866const char kShowManagedUiDescription[] =
2867 "Enabled/disable showing enterprise users a 'Managed by your organization' "
2868 "message in the app menu and on some chrome:// pages.";
2869
Sebastien Marchandd33f7dc2018-06-22 22:07:062870const char kSiteCharacteristicsDatabaseName[] = "Site Characteristics database";
2871const char kSiteCharacteristicsDatabaseDescription[] =
2872 "Records usage of some features in a database while a tab is in background "
2873 "(title/favicon update, audio playback or usage of non-persistent "
2874 "notifications).";
2875
Brett Wilson7b44537e2017-08-18 01:38:282876const char kUseGoogleLocalNtpName[] = "Enable using the Google local NTP";
2877const char kUseGoogleLocalNtpDescription[] =
2878 "Use the local New Tab page if Google is the default search engine.";
spqchan064a8112017-04-18 16:46:322879
Brett Wilson7b44537e2017-08-18 01:38:282880#if defined(GOOGLE_CHROME_BUILD)
2881
2882const char kGoogleBrandedContextMenuName[] =
2883 "Google branding in the context menu";
2884const char kGoogleBrandedContextMenuDescription[] =
2885 "Shows a Google icon next to context menu items powered by Google "
2886 "services.";
2887
2888#endif // !defined(GOOGLE_CHROME_BUILD)
2889
2890#endif // !defined(OS_ANDROID)
2891
2892// Windows ---------------------------------------------------------------------
2893
2894#if defined(OS_WIN)
2895
David Bienvenud0ddda32018-11-01 16:59:162896const char kCalculateNativeWinOcclusionName[] =
2897 "Calculate window occlusion on Windows";
2898const char kCalculateNativeWinOcclusionDescription[] =
2899 "Calculate window occlusion on Windows will be used in the future "
2900 "to throttle and potentially unload foreground tabs in occluded windows";
2901
Brett Wilson7b44537e2017-08-18 01:38:282902const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
2903const char kCloudPrintXpsDescription[] =
2904 "XPS enables advanced options for classic printers connected to the Cloud "
2905 "Print with Chrome. Printers must be re-connected after changing this "
2906 "flag.";
2907
2908const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
2909const char kDisablePostscriptPrintingDescription[] =
2910 "Disables PostScript generation when printing to PostScript capable "
2911 "printers, and uses EMF generation in its place.";
2912
2913const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
2914const char kEnableAppcontainerDescription[] =
2915 "Enables the use of an AppContainer on sandboxed processes to improve "
2916 "security.";
2917
James Forshawfd0ce342018-02-14 09:55:392918const char kEnableGpuAppcontainerName[] = "Enable GPU AppContainer Lockdown.";
2919const char kEnableGpuAppcontainerDescription[] =
2920 "Enables the use of an AppContainer for the GPU sandboxed processes to "
2921 "improve security.";
2922
Brett Wilson7b44537e2017-08-18 01:38:282923const char kGdiTextPrinting[] = "GDI Text Printing";
2924const char kGdiTextPrintingDescription[] =
2925 "Use GDI to print text as simply text";
2926
Brett Wilson7b44537e2017-08-18 01:38:282927const char kTraceExportEventsToEtwName[] =
2928 "Enable exporting of tracing events to ETW.";
2929const char kTraceExportEventsToEtwDesription[] =
2930 "If enabled, trace events will be exported to the Event Tracing for "
2931 "Windows (ETW) and can then be captured by tools such as UIForETW or "
2932 "Xperf.";
2933
Olli Etuaho122321192018-09-07 10:15:292934const char kUseAngleName[] = "Choose ANGLE graphics backend";
2935const char kUseAngleDescription[] =
2936 "Choose the graphics backend for ANGLE. D3D11 is used on most Windows "
2937 "computers by default. Using the OpenGL driver as the graphics backend may "
2938 "result in higher performance in some graphics-heavy applications, "
2939 "particularly on NVIDIA GPUs. It can increase battery and memory usage of "
2940 "video playback.";
2941
2942const char kUseAngleDefault[] = "Default";
2943const char kUseAngleGL[] = "OpenGL";
2944const char kUseAngleD3D11[] = "D3D11";
2945const char kUseAngleD3D9[] = "D3D9";
2946
Brett Wilson7b44537e2017-08-18 01:38:282947const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2948const char kUseWinrtMidiApiDescription[] =
2949 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
2950 "later).";
2951
2952const char kWindows10CustomTitlebarName[] = "Custom-drawn Windows 10 Titlebar";
2953const char kWindows10CustomTitlebarDescription[] =
2954 "If enabled, Chrome will draw the titlebar and caption buttons instead of "
2955 "deferring to Windows.";
2956
2957#endif // defined(OS_WIN)
2958
2959// Mac -------------------------------------------------------------------------
2960
2961#if defined(OS_MACOSX)
2962
Brett Wilson7b44537e2017-08-18 01:38:282963const char kContentFullscreenName[] = "Improved Content Fullscreen";
2964const char kContentFullscreenDescription[] =
2965 "Fullscreen content window detaches from main browser window and goes to "
2966 "a new space without moving or changing the original browser window.";
2967
Martin Kreichgauer1ca416d2018-07-11 00:43:192968const char kEnableWebAuthenticationTouchIdName[] =
2969 "Web Authentication API Touch ID support";
2970const char kEnableWebAuthenticationTouchIdDescription[] =
2971 "Enables a built-in Touch ID authenticator for the Web Authentication API.";
2972
Brett Wilson7b44537e2017-08-18 01:38:282973const char kHostedAppsInWindowsName[] =
2974 "Allow hosted apps to be opened in windows";
2975const char kHostedAppsInWindowsDescription[] =
2976 "Allows hosted apps to be opened in windows instead of being limited to "
2977 "tabs.";
2978
Christopher Cameron57dee5a42018-09-25 01:20:082979const char kCreateAppWindowsInAppShimProcessName[] =
2980 "Create native windows in the app process";
2981const char kCreateAppWindowsInAppShimProcessDescription[] =
2982 "Create native windows the app shim process, instead of of the browser "
2983 "process.";
2984
Lei Zhange065b572018-12-11 08:00:412985const char kEnableCustomMacPaperSizesName[] = "Enable custom paper sizes";
2986const char kEnableCustomMacPaperSizesDescription[] =
2987 "Allow use of custom paper sizes in Print Preview.";
2988
Lei Zhang2eca9082017-10-17 20:42:502989const char kMacTouchBarName[] = "Hardware Touch Bar";
2990const char kMacTouchBarDescription[] = "Control the use of the Touch Bar.";
Brett Wilson7b44537e2017-08-18 01:38:282991
Greg Kerr32483d1c2018-12-18 02:29:142992const char kMacV2GPUSandboxName[] = "Mac V2 GPU Sandbox";
2993const char kMacV2GPUSandboxDescription[] =
2994 "Controls whether the GPU process on macOS uses the V1 or V2 sandbox.";
2995
Brett Wilson7b44537e2017-08-18 01:38:282996const char kMacViewsNativeAppWindowsName[] = "Toolkit-Views App Windows.";
2997const char kMacViewsNativeAppWindowsDescription[] =
2998 "Controls whether to use Toolkit-Views based Chrome App windows.";
2999
3000const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
3001const char kMacViewsTaskManagerDescription[] =
3002 "Controls whether to use the Toolkit-Views based Task Manager.";
3003
Tessa Nijssen4db9799e2018-08-06 21:04:383004const char kTextSuggestionsTouchBarName[] = "Text Suggestions Touch Bar";
3005const char kTextSuggestionsTouchBarDescription[] =
3006 "Enable text suggestions touch bar for textfields.";
3007
Brett Wilson7b44537e2017-08-18 01:38:283008#endif
3009
3010// Chrome OS -------------------------------------------------------------------
vabr0215a8e2017-03-28 12:47:343011
3012#if defined(OS_CHROMEOS)
3013
Brett Wilson7b44537e2017-08-18 01:38:283014const char kAcceleratedMjpegDecodeName[] =
3015 "Hardware-accelerated mjpeg decode for captured frame";
3016const char kAcceleratedMjpegDecodeDescription[] =
3017 "Enable hardware-accelerated mjpeg decode for captured frame where "
3018 "available.";
vabr0215a8e2017-03-28 12:47:343019
Brett Wilson7b44537e2017-08-18 01:38:283020const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click";
3021const char kAllowTouchpadThreeFingerClickDescription[] =
3022 "Enables touchpad three-finger-click as middle button.";
vabr0215a8e2017-03-28 12:47:343023
Bruno Kim Medeiros Cesarb98fe1d82018-06-06 18:11:523024const char kArcAvailableForChildName[] = "Allow ARC for child accounts";
3025const char kArcAvailableForChildDescription[] =
3026 "Allow child accounts to start Android apps.";
3027
Brett Wilson7b44537e2017-08-18 01:38:283028const char kArcBootCompleted[] = "Load Android apps automatically";
3029const char kArcBootCompletedDescription[] =
3030 "Allow Android apps to start automatically after signing in.";
vabr0215a8e2017-03-28 12:47:343031
Luum Habtemariamdaa8fd22018-06-25 22:39:433032const char kArcCupsApiName[] = "ARC CUPS API";
3033const char kArcCupsApiDescription[] =
3034 "Enables support of libcups APIs from ARC";
3035
Satoshi Niwa8b1d5282018-10-24 04:53:033036const char kArcFilePickerExperimentName[] =
3037 "Enable file picker experiment for ARC";
3038const char kArcFilePickerExperimentDescription[] =
3039 "Enables using Chrome OS file picker in ARC.";
3040
Yuichiro Hanada0b63f062018-07-12 02:18:333041const char kArcInputMethodName[] = "Enable ARC input methods.";
3042const char kArcInputMethodDescription[] = "Enable ARC input methods.";
3043
Lev Rumyantsev7a8544312017-08-18 19:26:513044const char kArcNativeBridgeExperimentName[] =
3045 "Enable native bridge experiment for ARC";
3046const char kArcNativeBridgeExperimentDescription[] =
3047 "Enables experimental native bridge feature.";
3048
lgchengecd1c1a62018-01-09 02:59:463049const char kArcUsbHostName[] = "Enable ARC USB host integration";
3050const char kArcUsbHostDescription[] =
3051 "Allow Android apps to use USB host feature on ChromeOS devices.";
3052
Kevin Cernekeeb7f96a52017-10-25 17:40:183053const char kArcVpnName[] = "Enable ARC VPN integration";
3054const char kArcVpnDescription[] =
3055 "Allow Android VPN clients to tunnel Chrome traffic.";
3056
Qiang Xu045aff222018-05-21 23:21:013057const char kAshDisableLoginDimAndBlurName[] =
3058 "Disable dimming and blur on login screen.";
3059const char kAshDisableLoginDimAndBlurDescription[] =
3060 "Disable dimming and blur on login screen.";
3061
Qiang Xu045aff222018-05-21 23:21:013062const char kAshEnableDisplayMoveWindowAccelsName[] =
3063 "Enable shortcuts for moving window between displays.";
3064const char kAshEnableDisplayMoveWindowAccelsDescription[] =
3065 "Enable shortcuts for moving window between displays.";
3066
Qiang Xu045aff222018-05-21 23:21:013067const char kAshEnableMirroredScreenName[] = "Enable mirrored screen mode.";
3068const char kAshEnableMirroredScreenDescription[] =
3069 "Enable the mirrored screen mode. This mode flips the screen image "
3070 "horizontally.";
3071
Qiang Xu045aff222018-05-21 23:21:013072const char kAshEnablePersistentWindowBoundsName[] =
3073 "Enable persistent window bounds in multi-displays scenario.";
3074const char kAshEnablePersistentWindowBoundsDescription[] =
3075 "Enable persistent window bounds in multi-displays scenario.";
3076
Eliot Courtneye87a9c32018-11-20 03:33:023077const char kAshEnablePipRoundedCornersName[] =
3078 "Enable Picture-in-Picture rounded corners.";
3079const char kAshEnablePipRoundedCornersDescription[] =
3080 "Enable rounded corners on the Picture-in-Picture window.";
3081
Qiang Xu045aff222018-05-21 23:21:013082const char kAshEnableTrilinearFilteringName[] = "Enable trilinear filtering.";
3083const char kAshEnableTrilinearFilteringDescription[] =
3084 "Enable trilinear filtering.";
3085
Brett Wilson7b44537e2017-08-18 01:38:283086const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
3087const char kAshEnableUnifiedDesktopDescription[] =
3088 "Enable unified desktop mode which allows a window to span multiple "
3089 "displays.";
vabr0215a8e2017-03-28 12:47:343090
Qiang Xu045aff222018-05-21 23:21:013091const char kAshShelfColorName[] = "Shelf color in Chrome OS system UI";
3092const char kAshShelfColorDescription[] =
3093 "Enables/disables the shelf color to be a derived from the wallpaper. The "
3094 "--ash-shelf-color-scheme flag defines how that color is derived.";
3095
3096const char kAshShelfColorScheme[] = "Shelf color scheme in Chrome OS System UI";
3097const char kAshShelfColorSchemeDescription[] =
3098 "Specify how the color is derived from the wallpaper. This flag is only "
3099 "used when the --ash-shelf-color flag is enabled. Defaults to Dark & Muted";
3100const char kAshShelfColorSchemeLightVibrant[] = "Light & Vibrant";
3101const char kAshShelfColorSchemeNormalVibrant[] = "Normal & Vibrant";
3102const char kAshShelfColorSchemeDarkVibrant[] = "Dark & Vibrant";
3103const char kAshShelfColorSchemeLightMuted[] = "Light & Muted";
3104const char kAshShelfColorSchemeNormalMuted[] = "Normal & Muted";
3105const char kAshShelfColorSchemeDarkMuted[] = "Dark & Muted";
3106
Sean Kau5e956192017-10-06 22:25:173107const char kBulkPrintersName[] = "Bulk Printers Policy";
3108const char kBulkPrintersDescription[] = "Enables the new bulk printers policy";
3109
Brett Wilson7b44537e2017-08-18 01:38:283110const char kCaptivePortalBypassProxyName[] =
3111 "Bypass proxy for Captive Portal Authorization";
3112const char kCaptivePortalBypassProxyDescription[] =
3113 "If proxy is configured, it usually prevents from authorization on "
3114 "different captive portals. This enables opening captive portal "
3115 "authorization dialog in a separate window, which ignores proxy settings.";
vabr0215a8e2017-03-28 12:47:343116
Brett Wilson7b44537e2017-08-18 01:38:283117const char kCrOSComponentName[] = "Chrome OS Component";
3118const char kCrOSComponentDescription[] =
Xiaochu Liu4c1b75d2017-12-18 23:52:083119 "Disable the use of componentized escpr CUPS filter.";
vabr0215a8e2017-03-28 12:47:343120
Xiaochu Liu51d03fd2017-09-08 23:51:023121const char kCrOSContainerName[] = "Chrome OS Container";
3122const char kCrOSContainerDescription[] =
3123 "Enable the use of Chrome OS Container utility.";
3124
Brett Wilson7b44537e2017-08-18 01:38:283125const char kCrosRegionsModeName[] = "Cros-regions load mode";
3126const char kCrosRegionsModeDescription[] =
3127 "This flag controls cros-regions load mode";
3128const char kCrosRegionsModeDefault[] = "Default";
3129const char kCrosRegionsModeOverride[] = "Override VPD values.";
3130const char kCrosRegionsModeHide[] = "Hide VPD values.";
vabr0215a8e2017-03-28 12:47:343131
Joel Hockey42387102019-01-10 01:19:323132const char kCrostiniBackupName[] = "Crostini Backup";
3133const char kCrostiniBackupDescription[] = "Enable Crostini export and import.";
3134
Joel Hockeyad5b9762018-09-01 12:06:083135const char kCrostiniFilesName[] = "Crostini Files";
3136const char kCrostiniFilesDescription[] =
3137 "Enable Crostini file sharing in Files app.";
3138
Josh Pratt57cea392018-10-30 02:59:063139const char kCrostiniUsbSupportName[] = "Crostini Usb Support";
3140const char kCrostiniUsbSupportDescription[] =
3141 "Enable mounting Usb devices in Crostini.";
3142
Josh Nohle2f82dcc2018-12-17 23:11:233143const char kCryptAuthV2EnrollmentName[] = "CryptAuth v2 Enrollment";
3144const char kCryptAuthV2EnrollmentDescription[] =
3145 "Use the CryptAuth v2 Enrollment protocol.";
3146
Daniele Castagnac4aeb572018-10-23 16:23:573147const char kDisableExplicitDmaFencesName[] = "Disable explicit dma-fences";
3148const char kDisableExplicitDmaFencesDescription[] =
3149 "Always rely on implicit syncrhonization between GPU and display "
3150 "controller instead of using dma-fences explcitily when available.";
3151
Qiang Xu045aff222018-05-21 23:21:013152const char kDisableSystemTimezoneAutomaticDetectionName[] =
3153 "SystemTimezoneAutomaticDetection policy support";
3154const char kDisableSystemTimezoneAutomaticDetectionDescription[] =
3155 "Disable system timezone automatic detection device policy.";
3156
Sammie Quonef6b4882017-09-14 16:50:053157const char kDisableTabletAutohideTitlebarsName[] =
3158 "Disable autohide titlebars in tablet mode";
3159const char kDisableTabletAutohideTitlebarsDescription[] =
3160 "Disable tablet mode autohide titlebars functionality. The user will be "
3161 "able to see the titlebar in tablet mode.";
3162
Xiaoqian Dai24b33eb2018-04-10 21:01:573163const char kDisableTabletSplitViewName[] = "Disable split view in Tablet mode";
3164const char kDisableTabletSplitViewDescription[] =
3165 "Disable split view for Chrome OS tablet mode.";
3166
Ahmed Fakhry4f567e692018-10-16 15:51:083167const char kDoubleTapToZoomInTabletModeName[] =
3168 "Double-tap to zoom in tablet mode";
3169const char kDoubleTapToZoomInTabletModeDescription[] =
3170 "If Enabled, double tapping in webpages while in tablet mode will zoom the "
3171 "page.";
3172
Daniel Zhang01399072018-08-16 22:28:203173const char kEnableAppListSearchAutocompleteName[] =
3174 "App List Search Autocomplete";
3175const char kEnableAppListSearchAutocompleteDescription[] =
3176 "Allow App List search box to autocomplete queries for Google searches and "
3177 "apps.";
3178
Qiang Xu53d1a5832018-05-24 18:44:193179const char kEnableAppShortcutSearchName[] =
3180 "Enable app shortcut search in launcher";
3181const char kEnableAppShortcutSearchDescription[] =
3182 "Enables app shortcut search in launcher";
3183
Vladislav Kaznacheevaa213a02018-10-29 17:54:283184const char kEnableAppDataSearchName[] = "Enable app data search in launcher";
3185const char kEnableAppDataSearchDescription[] =
3186 "Allow launcher search to access data available through Firebase App "
3187 "Indexing";
3188
Weidong Guo00d0b2b2018-06-07 00:39:303189const char kEnableAppsGridGapFeatureName[] =
3190 "Enable apps grid gap feature in launcher.";
3191const char kEnableAppsGridGapFeatureDescription[] =
3192 "Enables gaps at the end of each page and enables dragging an item to an "
3193 "empty page in launcher.";
3194
Lei Zhang0a318af2018-11-14 02:19:463195const char kEnableArcUnifiedAudioFocusName[] =
Becca Hughes34415e82018-10-05 18:47:373196 "Enable unified audio focus on ARC";
Lei Zhang0a318af2018-11-14 02:19:463197const char kEnableArcUnifiedAudioFocusDescription[] =
Becca Hughes34415e82018-10-05 18:47:373198 "If audio focus is enabled in Chrome then this will delegate audio focus "
3199 "control in Android apps to Chrome.";
3200
Yue Li958f9dd2018-11-15 00:56:593201const char kEnableAssistantVoiceMatchName[] = "Enable Assistant Voice Match";
3202const char kEnableAssistantVoiceMatchDescription[] =
3203 "Enable the Assistant Voice Match feature";
3204
Yue Liebaa9952018-12-07 21:41:263205const char kEnableAssistantAppSupportName[] = "Enable Assistant App Support";
3206const char kEnableAssistantAppSupportDescription[] =
3207 "Enable the Assistant App Support feature";
3208
Lei Zhang2eca9082017-10-17 20:42:503209const char kEnableBackgroundBlurName[] = "Enable background blur.";
3210const char kEnableBackgroundBlurDescription[] =
Wenzhao Zang50fb0b22017-11-07 01:38:423211 "Enables background blur for the Peeking Launcher and Tab Switcher.";
Alex Newcomer43cb7f12017-07-28 17:37:393212
Lei Zhang0ca70ea2018-09-07 17:51:013213const char kEnableChromeOsAccountManagerName[] = "Enable Account Manager";
3214const char kEnableChromeOsAccountManagerDescription[] =
Kushagra Sinha8a181fc2018-08-20 17:15:493215 "Enables the Chrome OS Account Manager";
3216
Alexander Alekseev38e1e0a2018-11-08 22:48:483217const char kEnableDiscoverAppName[] = "Enable Discover App";
3218const char kEnableDiscoverAppDescription[] =
3219 "Enable Discover App icon in launcher.";
3220
Min Chenc2ec7282018-06-29 21:38:463221const char kEnableDragAppsInTabletModeName[] =
3222 "Enable dragging apps in tablet mode";
3223const char kEnableDragAppsInTabletModeDescription[] =
3224 "If enabled, swiping down from the top of the screen when an app is opened "
3225 "in tablet mode can drag the app.";
3226
Xiaoqian Dai82d99192018-05-25 18:51:353227const char kEnableDragTabsInTabletModeName[] =
3228 "Enable dragging tabs in tablet mode";
3229const char kEnableDragTabsInTabletModeDescription[] =
3230 "Allows the user to drag the tabs out of a browser window in tablet mode.";
3231
Sam McNally201fbf94e2018-07-04 03:15:203232const char kEnableDriveFsName[] = "Enable DriveFS";
3233const char kEnableDriveFsDescription[] =
3234 "Enables use of the new DriveFS-based Drive sync client.";
3235
Luciano Pacheco20c48bd42018-11-07 00:57:083236const char kEnableMyFilesVolumeName[] = "Enable MyFiles as Volume";
3237const char kEnableMyFilesVolumeDescription[] =
Luciano Pacheco7fe772fe2018-11-07 02:31:453238 "Enables use of MyFiles as a read/write volume. This should be only "
3239 "used for testing or for trying to restore the previous Downloads content.";
Luciano Pacheco20c48bd42018-11-07 00:57:083240
Brett Wilson7b44537e2017-08-18 01:38:283241const char kEnableEhvInputName[] =
3242 "Emoji, handwriting and voice input on opt-in IME menu";
3243const char kEnableEhvInputDescription[] =
3244 "Enable access to emoji, handwriting and voice input form opt-in IME menu.";
vabr0215a8e2017-03-28 12:47:343245
Brett Wilson7b44537e2017-08-18 01:38:283246const char kEnableEncryptionMigrationName[] =
3247 "Enable encryption migration of user data";
3248const char kEnableEncryptionMigrationDescription[] =
3249 "If enabled and the device supports ARC, the user will be asked to update "
3250 "the encryption of user data when the user signs in.";
vabr0215a8e2017-03-28 12:47:343251
Qiang Xu045aff222018-05-21 23:21:013252const char kEnableFullscreenHandwritingVirtualKeyboardName[] =
3253 "Enable full screen handwriting virtual keyboard";
3254const char kEnableFullscreenHandwritingVirtualKeyboardDescription[] =
3255 "If enabled, the handwriting virtual keyboard will allow user to write "
3256 "anywhere on the screen";
3257
Xiaohui Chenfb0943e2018-10-16 22:44:373258const char kEnableGoogleAssistantName[] = "Enable Google Assistant";
3259const char kEnableGoogleAssistantDescription[] =
3260 "Enable an experimental Assistant implementation that will work on all "
3261 "Chromebooks.";
3262
Xiaohui Chenf4283f32018-11-26 20:02:503263const char kEnableGoogleAssistantDspName[] =
3264 "Enable Google Assistant with hardware-based hotword";
3265const char kEnableGoogleAssistantDspDescription[] =
3266 "Enable an experimental feature that uses hardware-based hotword detection "
3267 "for Assistant. Only a limited number of devices have this type of "
3268 "hardware support.";
3269
Xiaohui Chenc3baca42018-11-30 19:29:373270const char kEnableGoogleAssistantStereoInputName[] =
3271 "Enable Google Assistant with stereo audio input";
3272const char kEnableGoogleAssistantStereoInputDescription[] =
3273 "Enable an experimental feature that uses stereo audio input for hotword "
3274 "and voice to text detection in Google Assistant.";
3275
Qiang Xu045aff222018-05-21 23:21:013276const char kEnableHomeLauncherName[] = "Enable home launcher";
3277const char kEnableHomeLauncherDescription[] =
3278 "Enable home launcher in tablet mode.";
3279
Lei Zhang0ca70ea2018-09-07 17:51:013280const char kEnableHomeLauncherGesturesName[] = "Enable home launcher gestures";
3281const char kEnableHomeLauncherGesturesDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013282 "Enables using gestures to hide or show the home launcher.";
3283
Brett Wilson7b44537e2017-08-18 01:38:283284const char kEnableImeMenuName[] = "Enable opt-in IME menu";
3285const char kEnableImeMenuDescription[] =
3286 "Enable access to the new IME menu in the Language Settings page.";
vabr0215a8e2017-03-28 12:47:343287
Becca Hughes3d63a91d2018-10-17 19:30:393288const char kEnableMediaSessionAshMediaKeysName[] =
3289 "Enable media session media key handling";
3290const char kEnableMediaSessionAshMediaKeysDescription[] =
3291 "Enable the media session service to handle media keys. This requires "
3292 "the audio focus flag to be enabled too.";
3293
Sammie Quon248ccef2018-08-28 23:00:013294const char kEnableOobeRecommendAppsScreenName[] =
3295 "Enable OOBE Recommend Apps Screen";
3296const char kEnableOobeRecommendAppsScreenDescription[] =
3297 "Enable the Recommend Apps Screen in OOBE which allows user to install apps"
3298 "from other devices";
3299
Qiang Xu045aff222018-05-21 23:21:013300const char kEnablePerUserTimezoneName[] = "Per-user time zone preferences.";
3301const char kEnablePerUserTimezoneDescription[] =
3302 "Chrome OS system timezone preference is stored and handled for each user "
3303 "individually.";
3304
Vladislav Kaznacheevaa213a02018-10-29 17:54:283305const char kEnablePlayStoreSearchName[] = "Enable Play Store search";
3306const char kEnablePlayStoreSearchDescription[] =
3307 "Enable Play Store search in launcher.";
3308
Qiang Xu045aff222018-05-21 23:21:013309const char kEnableSettingsShortcutSearchName[] =
3310 "Enable Settings shortcut search";
3311const char kEnableSettingsShortcutSearchDescription[] =
3312 "Enable Settings shortcut search in launcher.";
3313
Darren Shen3e49c63d2018-03-28 04:45:503314const char kEnableStylusVirtualKeyboardName[] =
3315 "Enable stylus virtual keyboard";
3316const char kEnableStylusVirtualKeyboardDescription[] =
3317 "If enabled, tapping with a stylus will show the handwriting virtual "
3318 "keyboard.";
3319
Jazz Xu2e5886662018-12-14 00:38:483320const char kEnableVideoPlayerNativeControlsName[] =
3321 "Enable native controls in video player app";
3322const char kEnableVideoPlayerNativeControlsDescription[] =
3323 "Enable native controls in video player app";
3324
Darren Shen0b4e5802018-07-10 03:12:263325const char kEnableVirtualKeyboardUkmName[] = "Enable UKM for virtual keyboard";
3326const char kEnableVirtualKeyboardUkmDescription[] =
3327 "Enables UKM for virtual keyboard";
3328
Lei Zhang0ca70ea2018-09-07 17:51:013329const char kEnableZeroStateSuggestionsName[] = "Enable Zero State Suggetions";
3330const char kEnableZeroStateSuggestionsDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013331 "Enable Zero State Suggestions feature in Launcher, which will show "
Vladislav Kaznacheevaa213a02018-10-29 17:54:283332 "suggestions when launcher search box is active with an empty query";
Sammie Quon248ccef2018-08-28 23:00:013333
Brett Wilson7b44537e2017-08-18 01:38:283334const char kEolNotificationName[] = "Disable Device End of Life notification.";
3335const char kEolNotificationDescription[] =
3336 "Disable Notifcation when Device is End of Life.";
3337
Brett Wilson7b44537e2017-08-18 01:38:283338const char kFileManagerTouchModeName[] = "Files App. touch mode";
3339const char kFileManagerTouchModeDescription[] =
3340 "Touchscreen-specific interactions of the Files app.";
3341
3342const char kFirstRunUiTransitionsName[] =
3343 "Animated transitions in the first-run tutorial";
3344const char kFirstRunUiTransitionsDescription[] =
3345 "Transitions during first-run tutorial are animated.";
3346
Brett Wilson7b44537e2017-08-18 01:38:283347const char kForceEnableStylusToolsName[] = "Force enable stylus features";
3348const char kForceEnableStylusToolsDescription[] =
3349 "Forces display of the stylus tools menu in the shelf and the stylus "
3350 "section in settings, even if there is no attached stylus device.";
3351
3352const char kGestureEditingName[] = "Gesture editing for the virtual keyboard.";
3353const char kGestureEditingDescription[] =
3354 "Enable/Disable gesture editing option in the settings page for the "
3355 "virtual keyboard.";
3356
3357const char kGestureTypingName[] = "Gesture typing for the virtual keyboard.";
3358const char kGestureTypingDescription[] =
3359 "Enable/Disable gesture typing option in the settings page for the virtual "
3360 "keyboard.";
3361
3362const char kInputViewName[] = "Input views";
3363const char kInputViewDescription[] =
3364 "Enable IME extensions to supply custom views for user input such as "
3365 "virtual keyboards.";
3366
Leo Zhang3cc77542018-11-07 00:58:083367const char kImeServiceName[] = "Enable IME service";
3368const char kImeServiceDescription[] =
3369 "Enable IME service to provide the IME functionality instead of NaCl";
3370
Megumi Hattori5a0d4182018-03-06 11:09:503371const char kLockScreenNotificationName[] = "Lock screen notification";
3372const char kLockScreenNotificationDescription[] =
3373 "Enable notifications on the lock screen.";
3374
Mohsen Izadi06a16f72018-11-29 02:29:223375const char kMashOopVizName[] = "Out-of-process viz for mash";
3376const char kMashOopVizDescription[] =
3377 "Runs viz in a separate process when mash is enabled (otherwise viz would "
3378 "run in ash process)";
3379
Qiang Xu045aff222018-05-21 23:21:013380const char kMaterialDesignInkDropAnimationSpeedName[] =
3381 "Material design ink drop animation speed";
3382const char kMaterialDesignInkDropAnimationSpeedDescription[] =
3383 "Sets the speed of the experimental visual feedback animations for "
3384 "material design.";
3385const char kMaterialDesignInkDropAnimationFast[] = "Fast";
3386const char kMaterialDesignInkDropAnimationSlow[] = "Slow";
3387
Brett Wilson7b44537e2017-08-18 01:38:283388const char kMemoryPressureThresholdName[] =
3389 "Memory discard strategy for advanced pressure handling";
3390const char kMemoryPressureThresholdDescription[] =
3391 "Memory discarding strategy to use";
3392const char kConservativeThresholds[] =
3393 "Conservative memory pressure release strategy";
3394const char kAggressiveCacheDiscardThresholds[] =
3395 "Aggressive cache release strategy";
3396const char kAggressiveTabDiscardThresholds[] =
3397 "Aggressive tab release strategy";
3398const char kAggressiveThresholds[] =
3399 "Aggressive tab and cache release strategy";
3400
3401const char kMtpWriteSupportName[] = "MTP write support";
3402const char kMtpWriteSupportDescription[] =
3403 "MTP write support in File System API (and file manager). In-place editing "
3404 "operations are not supported.";
3405
vabr0215a8e2017-03-28 12:47:343406const char kNetworkPortalNotificationName[] =
3407 "Notifications about captive portals";
vabr0215a8e2017-03-28 12:47:343408const char kNetworkPortalNotificationDescription[] =
3409 "If enabled, notification is displayed when device is connected to a "
3410 "network behind captive portal.";
3411
Brett Wilson7b44537e2017-08-18 01:38:283412const char kNewKoreanImeName[] = "New Korean IME";
3413const char kNewKoreanImeDescription[] =
3414 "New Korean IME, which is based on Google Input Tools' HMM engine.";
vabr0215a8e2017-03-28 12:47:343415
Anand K. Mistrydb5e0102018-10-04 04:24:003416const char kNewZipUnpackerName[] = "ZIP Archiver (unpacking)";
Brett Wilson7b44537e2017-08-18 01:38:283417const char kNewZipUnpackerDescription[] =
Anand K. Mistrydb5e0102018-10-04 04:24:003418 "Use the ZIP Archiver for mounting/unpacking ZIP files";
vabr0215a8e2017-03-28 12:47:343419
Qiang Xu045aff222018-05-21 23:21:013420const char kOfficeEditingComponentAppName[] =
3421 "Office Editing for Docs, Sheets & Slides";
3422const char kOfficeEditingComponentAppDescription[] =
3423 "Office Editing for Docs, Sheets & Slides for testing purposes.";
3424
Brett Wilson7b44537e2017-08-18 01:38:283425const char kPhysicalKeyboardAutocorrectName[] = "Physical keyboard autocorrect";
3426const char kPhysicalKeyboardAutocorrectDescription[] =
3427 "Enable physical keyboard autocorrect for US keyboard, which can provide "
3428 "suggestions as typing on physical keyboard.";
vabr0215a8e2017-03-28 12:47:343429
3430const char kPrinterProviderSearchAppName[] =
3431 "Chrome Web Store Gallery app for printer drivers";
vabr0215a8e2017-03-28 12:47:343432const char kPrinterProviderSearchAppDescription[] =
3433 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:193434 "searches Chrome Web Store for extensions that support printing to a USB "
3435 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:343436
Brett Wilson7b44537e2017-08-18 01:38:283437const char kQuickUnlockPinName[] = "Quick Unlock (PIN)";
3438const char kQuickUnlockPinDescription[] =
3439 "Enabling PIN quick unlock allows you to use a PIN to unlock your ChromeOS "
3440 "device on the lock screen after you have signed into your device.";
3441const char kQuickUnlockPinSignin[] = "Enable PIN when logging in.";
3442const char kQuickUnlockPinSigninDescription[] =
3443 "Enabling PIN allows you to use a PIN to sign in and unlock your ChromeOS "
3444 "device. After changing this flag PIN needs to be set up again.";
3445const char kQuickUnlockFingerprint[] = "Quick Unlock (Fingerprint)";
3446const char kQuickUnlockFingerprintDescription[] =
3447 "Enabling fingerprint quick unlock allows you to setup and use a "
3448 "fingerprint to unlock your Chromebook on the lock screen after you have "
3449 "signed into your device.";
vabr0215a8e2017-03-28 12:47:343450
James Cook0ba192bf2017-12-01 20:53:113451const char kShowTapsName[] = "Show taps";
3452const char kShowTapsDescription[] =
3453 "Draws a circle at each touch point, which makes touch points more obvious "
3454 "when projecting or mirroring the display. Similar to the Android OS "
3455 "developer option.";
3456
3457const char kShowTouchHudName[] = "Show HUD for touch points";
3458const char kShowTouchHudDescription[] =
3459 "Shows a trail of colored dots for the last few touch points. Pressing "
3460 "Ctrl-Alt-I shows a heads-up display view in the top-left corner. Helps "
3461 "debug hardware issues that generate spurious touch events.";
3462
James Cook28d7c482018-09-07 21:00:543463const char kSingleProcessMashName[] =
3464 "In-process window service (SingleProcessMash)";
3465const char kSingleProcessMashDescription[] =
3466 "Runs the system UI (ash) as a mojo service, but inside the browser "
3467 "process. The browser uses the mojo window service (ws) APIs.";
3468
Ahmed Fakhry58e6ef542018-09-04 18:05:383469const char kSlideTopChromeWithPageScrollsName[] =
3470 "Slide top-chrome with page scrolls";
3471const char kSlideTopChromeWithPageScrollsDescription[] =
3472 "If enabled, page scrolls in tablet mode will also scroll the top-chrome"
3473 " UI.";
3474
Jorge Gil5a8ccde2018-07-10 01:46:213475const char kSmartTextSelectionName[] = "Smart Text Selection";
3476const char kSmartTextSelectionDescription[] =
3477 "Shows quick actions for text "
3478 "selections in the context menu.";
3479
Chung-Sheng Wu468b0b32017-09-01 14:41:573480const char kSysInternalsName[] = "Enable Sys-Internals";
3481const char kSysInternalsDescription[] =
3482 "If enabled, user can monitor system information at "
3483 "chrome://sys-internals.";
3484
Brett Wilson7b44537e2017-08-18 01:38:283485const char kTetherName[] = "Instant Tethering";
3486const char kTetherDescription[] =
3487 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
3488 "phone to share its Internet connection with this device.";
stanisc14bed0b132017-05-10 17:46:373489
Brett Wilson7b44537e2017-08-18 01:38:283490const char kTouchscreenCalibrationName[] =
3491 "Enable/disable touchscreen calibration option in material design settings";
3492const char kTouchscreenCalibrationDescription[] =
3493 "If enabled, the user can calibrate the touch screen displays in "
3494 "chrome://settings/display.";
yhanadac5bff5b2017-05-18 06:37:093495
Qiang Xu045aff222018-05-21 23:21:013496const char kUiDevToolsName[] = "Enable native UI inspection";
3497const char kUiDevToolsDescription[] =
3498 "Enables inspection of native UI elements. For local inspection use "
3499 "chrome://inspect#other";
3500
3501const char kUiShowCompositedLayerBordersName[] =
3502 "Show UI composited layer borders";
3503const char kUiShowCompositedLayerBordersDescription[] =
3504 "Show border around composited layers created by UI.";
3505const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
3506const char kUiShowCompositedLayerBordersSurface[] = "Surface";
3507const char kUiShowCompositedLayerBordersLayer[] = "Layer";
3508const char kUiShowCompositedLayerBordersAll[] = "All";
3509
3510const char kUiSlowAnimationsName[] = "Slow UI animations";
3511const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
3512
Mitsuru Oshima63d3f2a2017-08-23 00:12:113513// Force UI Mode
3514const char kUiModeName[] = "Force Ui Mode";
3515const char kUiModeDescription[] =
3516 R"*(This flag can be used to force a certain mode on to a chromebook, )*"
3517 R"*(despite its current orientation. "Tablet" means that the )*"
3518 R"*(chromebook will act as if it were in tablet mode. "Clamshell" )*"
3519 R"*(means that the chromebook will act as if it were in clamshell )*"
3520 R"*(mode . "Auto" means that the chromebook will alternate between )*"
3521 R"*(the two, based on its orientation.)*";
Min Chenfd25cd22018-11-06 01:50:513522const char kUiModeTablet[] = "Tablet";
Mitsuru Oshima63d3f2a2017-08-23 00:12:113523const char kUiModeClamshell[] = "Clamshell";
3524const char kUiModeAuto[] = "Auto (default)";
3525
Sonny Sasaka7fecfeda2018-07-11 23:47:553526const char kUnfilteredBluetoothDevicesName[] = "Unfiltered Bluetooth devices";
3527const char kUnfilteredBluetoothDevicesDescription[] =
3528 "Shows all Bluetooth devices in UI (System Tray/Settings Page.)";
3529
Allen Webbcdc8e69d2018-09-12 20:36:003530const char kUsbguardName[] = "Block new USB devices at the lock screen.";
3531const char kUsbguardDescription[] =
3532 "Prevents newly connected USB devices from operating at the lock screen"
3533 " until Chrome OS is unlocked to protect against malicious USB devices."
3534 " Already connected USB devices will continue to function.";
3535
Micah Morton79a7b522018-09-27 15:15:303536const char kShillSandboxingName[] =
3537 "Run shill, the ChromeOS network manager, in a sandbox.";
3538const char kShillSandboxingDescription[] =
3539 "Causes shill to be run as user/group 'shill', instead of 'root'.";
3540
Micah Morton02d3aba2018-11-20 01:51:453541const char kFsNosymfollowName[] =
3542 "Prevent symlink traversal on user-supplied filesystems.";
3543const char kFsNosymfollowDescription[] =
3544 "Causes user-supplied filesystems to be mounted with the 'nosymfollow'"
3545 " option, so the chromuimos LSM denies symlink traversal on the"
3546 " filesystem.";
3547
James Cooka1bcfa9a2018-01-30 00:18:403548const char kUseMashName[] = "Out-of-process system UI (mash)";
3549const char kUseMashDescription[] =
3550 "Runs the mojo UI service (mus) and the ash window manager and system UI "
3551 "in a separate process.";
Brett Wilson7b44537e2017-08-18 01:38:283552
Miguel Casas-Sanchez8ba32f92017-11-07 05:03:343553// TODO(mcasas): remove after https://crbug.com/771345.
3554const char kUseMonitorColorSpaceName[] = "Use monitor color space";
3555const char kUseMonitorColorSpaceDescription[] =
3556 "Enables Chrome to use the color space information provided by the monitor"
3557 " instead of the default sRGB color space.";
3558
Andres Calderon Jaramillo43c0e8a2018-08-21 02:46:233559const char kVaapiJpegImageDecodeAccelerationName[] =
3560 "VA-API JPEG decode acceleration for images";
3561const char kVaapiJpegImageDecodeAccelerationDescription[] =
3562 "Enable or disable decode acceleration of JPEG images (as opposed to camera"
3563 " captures) using the VA-API.";
3564
Brett Wilson7b44537e2017-08-18 01:38:283565const char kVideoPlayerChromecastSupportName[] =
3566 "Experimental Chromecast support for Video Player";
3567const char kVideoPlayerChromecastSupportDescription[] =
3568 "This option enables experimental Chromecast support for Video Player app "
3569 "on ChromeOS.";
3570
3571const char kVirtualKeyboardName[] = "Virtual Keyboard";
3572const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
3573
3574const char kVirtualKeyboardOverscrollName[] = "Virtual Keyboard Overscroll";
3575const char kVirtualKeyboardOverscrollDescription[] =
3576 "Enables virtual keyboard overscroll support.";
3577
3578const char kVoiceInputName[] = "Voice input on virtual keyboard";
3579const char kVoiceInputDescription[] =
3580 "Enables voice input on virtual keyboard.";
3581
3582const char kWakeOnPacketsName[] = "Wake On Packets";
3583const char kWakeOnPacketsDescription[] =
3584 "Enables waking the device based on the receipt of some network packets.";
orenb21da031c2017-06-30 21:24:203585
yhanadac5bff5b2017-05-18 06:37:093586#endif // defined(OS_CHROMEOS)
3587
Brett Wilson7b44537e2017-08-18 01:38:283588// Random platform combinations -----------------------------------------------
3589
3590#if defined(OS_WIN) || defined(OS_LINUX)
3591
3592const char kEnableInputImeApiName[] = "Enable Input IME API";
3593const char kEnableInputImeApiDescription[] =
3594 "Enable the use of chrome.input.ime API.";
3595
3596#endif // defined(OS_WIN) || defined(OS_LINUX)
3597
3598#if defined(OS_WIN) || defined(OS_MACOSX)
3599
3600const char kAutomaticTabDiscardingName[] = "Automatic tab discarding";
3601const char kAutomaticTabDiscardingDescription[] =
3602 "If enabled, tabs get automatically discarded from memory when the system "
3603 "memory is low. Discarded tabs are still visible on the tab strip and get "
3604 "reloaded when clicked on. Info about discarded tabs can be found at "
3605 "chrome://discards.";
3606
3607#endif // defined(OS_WIN) || defined(OS_MACOSX)
3608
lanwei83f54452018-06-21 23:51:043609#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3610
3611const char kDirectManipulationStylusName[] = "Direct Manipulation Stylus";
3612const char kDirectManipulationStylusDescription[] =
3613 "If enabled, Chrome will scroll web pages on stylus drag.";
3614
3615#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3616
Henrik Grunell63f2d772018-12-06 17:25:203617#if defined(OS_MACOSX) || defined(OS_CHROMEOS)
3618
3619const char kForceEnableSystemAecName[] = "Force enable system AEC";
3620const char kForceEnableSystemAecDescription[] =
3621 "Use system echo canceller instead of WebRTC echo canceller. If there is "
3622 "no system echo canceller available, getUserMedia with echo cancellation "
3623 "enabled will fail.";
3624
3625#endif // defined(OS_MACOSX) || defined(OS_CHROMEOS)
3626
Justin Donnelly110e40c2018-06-01 21:48:433627const char kExperimentalUiName[] = "Use all upcoming UI features";
3628const char kExperimentalUiDescription[] = "Use all upcoming UI features.";
Elly Fong-Jonesdfaf8532018-05-29 18:20:483629
Brett Wilson7b44537e2017-08-18 01:38:283630// Feature flags --------------------------------------------------------------
3631
Lei Zhang0a318af2018-11-14 02:19:463632#if defined(DCHECK_IS_CONFIGURABLE)
3633const char kDcheckIsFatalName[] = "DCHECKs are fatal";
3634const char kDcheckIsFatalDescription[] =
3635 "By default Chrome will evaluate in this build, but only log failures, "
3636 "rather than crashing. If enabled, DCHECKs will crash the calling process.";
3637#endif // defined(DCHECK_IS_CONFIGURABLE)
3638
Brett Wilson7b44537e2017-08-18 01:38:283639#if BUILDFLAG(ENABLE_VR)
3640
David Dorwin5a496c32017-11-17 01:45:053641const char kWebVrVsyncAlignName[] = "WebVR VSync-aligned timing";
3642const char kWebVrVsyncAlignDescription[] =
3643 "Align WebVR application rendering with VSync for smoother animations.";
3644
Bill Orr103ed272018-02-14 21:23:053645#if BUILDFLAG(ENABLE_OCULUS_VR)
3646const char kOculusVRName[] = "Oculus hardware support";
3647const char kOculusVRDescription[] =
3648 "If enabled, Chrome will use Oculus devices for VR (supported only on "
3649 "Windows 10 or later).";
3650#endif // ENABLE_OCULUS_VR
3651
Bill Orr49527562017-11-22 16:58:483652#if BUILDFLAG(ENABLE_OPENVR)
3653const char kOpenVRName[] = "OpenVR hardware support";
3654const char kOpenVRDescription[] =
Bill Orr5056e692018-01-17 02:08:073655 "If enabled, Chrome will use OpenVR devices for VR (supported only on "
3656 "Windows 10 or later).";
Bill Orr49527562017-11-22 16:58:483657#endif // ENABLE_OPENVR
3658
Bill Orrecfb9fe2018-10-02 00:11:103659#if BUILDFLAG(ENABLE_ISOLATED_XR_SERVICE)
3660const char kXRSandboxName[] = "XR device sandboxing";
3661const char kXRSandboxDescription[] =
3662 "If enabled, Chrome will host VR APIs in a restricted process on desktop.";
3663#endif // ENABLE_ISOLATED_XR_SERVICE
3664
Brett Wilson7b44537e2017-08-18 01:38:283665#endif // ENABLE_VR
3666
Nico Weberaf3b00b2017-09-11 17:58:173667#if BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:283668
3669const char kNaclDebugMaskName[] =
3670 "Restrict Native Client GDB-based debugging by pattern";
3671const char kNaclDebugMaskDescription[] =
3672 "Restricts Native Client application GDB-based debugging by URL of "
3673 "manifest file. Native Client GDB-based debugging must be enabled for this "
3674 "option to work.";
3675const char kNaclDebugMaskChoiceDebugAll[] = "Debug everything.";
3676const char kNaclDebugMaskChoiceExcludeUtilsPnacl[] =
3677 "Debug everything except secure shell and the PNaCl translator.";
3678const char kNaclDebugMaskChoiceIncludeDebug[] =
3679 "Debug only if manifest URL ends with debug.nmf.";
3680
3681const char kNaclDebugName[] = "Native Client GDB-based debugging";
3682const char kNaclDebugDescription[] =
3683 "Enable GDB debug stub. This will stop a Native Client application on "
3684 "startup and wait for nacl-gdb (from the NaCl SDK) to attach to it.";
3685
3686const char kNaclName[] = "Native Client";
3687const char kNaclDescription[] =
3688 "Support Native Client for all web applications, even those that were not "
3689 "installed from the Chrome Web Store.";
3690
3691const char kPnaclSubzeroName[] = "Force PNaCl Subzero";
3692const char kPnaclSubzeroDescription[] =
3693 "Force the use of PNaCl's fast Subzero translator for all pexe files.";
3694
Nico Weberaf3b00b2017-09-11 17:58:173695#endif // BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:283696
Lei Zhang802201c2018-11-14 18:16:283697#if BUILDFLAG(ENABLE_PLUGINS)
3698
dstockwellcc759202019-01-11 00:42:123699#if defined(OS_CHROMEOS)
3700const char kPdfAnnotations[] = "PDF Annotations";
3701const char kPdfAnnotationsDescription[] =
3702 "Enable annotating PDF documents.";
3703#endif // defined(OS_CHROMEOS)
3704
Lei Zhang802201c2018-11-14 18:16:283705const char kPdfFormSaveName[] = "Save PDF Forms";
3706const char kPdfFormSaveDescription[] =
3707 "Enable saving PDFs with filled form data.";
3708
3709const char kPdfIsolationName[] = "PDF Isolation";
3710const char kPdfIsolationDescription[] =
3711 "Render PDF files from different origins in different plugin processes.";
3712
3713#endif // BUILDFLAG(ENABLE_PLUGINS)
3714
Brett Wilson7b44537e2017-08-18 01:38:283715#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3716
3717const char kAutofillCreditCardUploadName[] =
3718 "Enable offering upload of Autofilled credit cards";
3719const char kAutofillCreditCardUploadDescription[] =
3720 "Enables a new option to upload credit cards to Google Payments for sync "
3721 "to all Chrome devices.";
3722
3723#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3724
Collin Baker0a45d6a2018-12-20 19:21:503725#if BUILDFLAG(ENABLE_DESKTOP_IN_PRODUCT_HELP)
3726
3727const char kReopenTabInProductHelpName[] = "Reopen tab in-product help";
3728const char kReopenTabInProductHelpDescription[] =
3729 "Enable in-product help that guides a user to reopen a tab if it looks "
3730 "like they accidentally closed it.";
3731
3732#endif // BUILDFLAG(ENABLE_DESKTOP_IN_PRODUCT_HELP)
3733
Brett Wilson7b44537e2017-08-18 01:38:283734// ============================================================================
3735// Don't just add flags to the end, put them in the right section in
3736// alphabetical order just like the header file.
3737// ============================================================================
3738
vabr0215a8e2017-03-28 12:47:343739} // namespace flag_descriptions