blob: 2f1bf2302573515117e94f492da0f112f3d0e21d [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
Brett Wilsonf27ff602017-07-07 22:28:4721const char kAllowInsecureLocalhostName[] =
22 "Allow invalid certificates for resources loaded from localhost.";
23const char kAllowInsecureLocalhostDescription[] =
24 "Allows requests to localhost over HTTPS even when an invalid certificate "
25 "is presented.";
26
Kunihiko Sakamoto4d407982018-07-10 04:56:2927const char kAllowSignedHTTPExchangeCertsWithoutExtensionName[] =
28 "Allow Signed HTTP Exchange certificates without extension";
29const char kAllowSignedHTTPExchangeCertsWithoutExtensionDescription[] =
30 "Accepts Origin-Signed HTTP Exchanges to be signed with certificates "
Tsuyoshi Horo13d7e2d2019-04-18 07:32:4331 "that do not have CanSignHttpExchangesDraft extension. Warning: Enabling "
32 "this may pose a security risk.";
Kunihiko Sakamoto4d407982018-07-10 04:56:2933
Henrique Nakashima52d76952018-11-30 19:35:5834const char kAllowStartingServiceManagerOnlyName[] =
35 "Allow starting service manager only";
36const char kAllowStartingServiceManagerOnlyDescription[] =
37 "Allows running a lightweight service-manager-only mode, in which services "
38 "can run without the browser process.";
39
Kyle Horimoto7854a032019-04-03 02:51:0740const char kUpdatedCellularActivationUiName[] =
41 "Updated Cellular Activation UI";
42const char kUpdatedCellularActivationUiDescription[] =
43 "Enables the updated cellular activation UI.";
44
Kyle Horimoto2d838ec2018-12-26 19:41:1645const char kUseMessagesGoogleComDomainName[] = "Use messages.google.com domain";
46const char kUseMessagesGoogleComDomainDescription[] =
47 "Use the messages.google.com domain as part of the \"Messages\" "
48 "feature under \"Connected Devices\" settings.";
49
Kyle Horimoto874554a2019-01-31 00:52:0950const char kUseMessagesStagingUrlName[] = "Use Messages staging URL";
51const char kUseMessagesStagingUrlDescription[] =
52 "Use the staging server as part of the \"Messages\" feature under "
53 "\"Connected Devices\" settings.";
54
Azeem Arshad373e1ea72019-01-23 02:16:0055const char kEnableMessagesWebPushName[] =
56 "Web push in Android Messages integration";
57const char kEnableMessagesWebPushDescription[] =
58 "Use web push for background notificatons in Chrome OS integration "
59 "with Android Messages for Web";
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
Jinsuk Kime11e23ed2019-03-20 02:45:1177const char kDelegateOverscrollSwipesName[] =
78 "Delegate overscroll swipes to websites";
79const char kDelegateOverscrollSwipesDescription[] =
80 "Delegate overscroll swipes to websites first";
81
Jinsuk Kim00e52be2019-03-21 02:26:4082const char kDrawVerticallyEdgeToEdgeName[] =
83 "Draw contents vertically from edge to edge.";
84const char kDrawVerticallyEdgeToEdgeDescription[] =
85 "Draw contents vertically from edge to edge.";
86
Ulan Degenbaevb5466a92018-07-19 12:35:3487const char kEnableBloatedRendererDetectionName[] = "Bloated renderer detection";
88const char kEnableBloatedRendererDetectionDescription[] =
89 "Enable bloated renderer detection";
90
Khushalba202212017-07-12 19:53:4991const char kAsyncImageDecodingName[] = "AsyncImageDecoding";
92const char kAsyncImageDecodingDescription[] =
93 "Enables asynchronous decoding of images from raster for web content";
94
sebsgca14b092018-12-07 16:56:1595extern const char kAutofillAlwaysShowServerCardsInSyncTransportName[] =
96 "AlwaysShowServerCardsInSyncTransport";
97extern const char kAutofillAlwaysShowServerCardsInSyncTransportDescription[] =
98 "Always show server cards when in sync transport mode for wallet data";
99
Hui(Andy) Wufbebf91d22019-02-01 01:23:54100extern const char kAutofillAssistantChromeEntryName[] =
101 "AutofillAssistantChromeEntry";
102extern const char kAutofillAssistantChromeEntryDescription[] =
103 "Initiate autofill assistant from within Chrome.";
104
Roger McFarlane2eceba982018-05-18 01:37:11105const char kAutofillCacheQueryResponsesName[] =
106 "Cache Autofill Query Responses";
107const char kAutofillCacheQueryResponsesDescription[] =
108 "When enabled, autofill will cache the responses it receives from the "
109 "crowd-sourced field type prediction server.";
110
Jeffrey Cohen05cdafa392018-08-15 20:49:17111const char kAutofillEnableCompanyNameName[] =
112 "Enable Autofill Company Name field";
113const char kAutofillEnableCompanyNameDescription[] =
114 "When enabled, Company Name fields will be auto filled";
115
siyua9a66d1c2019-03-19 18:26:56116const char kAutofillEnableLocalCardMigrationForNonSyncUserName[] =
117 "Enable local card migration flow for non-syncing users";
118const char kAutofillEnableLocalCardMigrationForNonSyncUserDescription[] =
119 "When enabled, the local card migration flow will be enabled for users who "
120 "have signed in but not enabled Chrome Sync.";
121
siyua1d492612019-03-14 09:27:45122const char kAutofillEnableToolbarStatusChipName[] =
123 "Move Autofill omnibox icons next to the profile avatar icon";
124const char kAutofillEnableToolbarStatusChipDescription[] =
125 "When enabled, Autofill data related icon will be shown in the status "
126 "chip next to the profile avatar icon in the toolbar.";
sebsge35b762c2018-03-29 20:33:27127
Jared Saul63f598a12019-03-22 23:40:26128const char kAutofillNoLocalSaveOnUnmaskSuccessName[] =
129 "Remove the option to save local copies of unmasked server cards";
130const char kAutofillNoLocalSaveOnUnmaskSuccessDescription[] =
131 "When enabled, the server card unmask prompt will not include the checkbox "
132 "to also save the card locally on the current device upon success.";
133
Anne Lime625362e2018-08-29 03:13:25134const char kAutofillNoLocalSaveOnUploadSuccessName[] =
Jared Saul6f58ada2019-03-07 20:41:23135 "Disable saving local copy of uploaded card when credit card upload "
136 "succeeds";
Anne Lime625362e2018-08-29 03:13:25137const char kAutofillNoLocalSaveOnUploadSuccessDescription[] =
138 "When enabled, no local copy of server card will be saved when credit card "
139 "upload succeeds.";
140
Sebastien Lalancette1545950b2019-04-08 14:43:11141const char kAutofillOffNoServerDataName[] = "Autofill Off No Server Data";
142const char kAutofillOffNoServerDataDescription[] =
143 "Disables Autofill for fields with autocomplete off that have no "
144 "crowd-sourced evidence that Autofill would be helpful.";
145
Parastoo Geranmayeh0f5ebbc2019-01-21 21:01:09146const char kAutofillProfileClientValidationName[] =
147 "Autofill Validates Profiles By Client";
148const char kAutofillProfileClientValidationDescription[] =
149 "Allows autofill to validate profiles on the client side";
150
Parastoo Geranmayeh25fccec22019-01-29 18:38:13151const char kAutofillProfileServerValidationName[] =
152 "Autofill Uses Server Validation";
153const char kAutofillProfileServerValidationDescription[] =
154 "Allows autofill to use server side validation";
155
Parastoo Geranmayeha1895c12019-04-25 16:43:38156const char kAutofillRejectCompanyBirthyearName[] =
157 "Autofill Rejects Invalid Company Names";
158const char kAutofillRejectCompanyBirthyearDescription[] =
159 "Autofill rejects using non-verified company names that are in the "
160 "format of a birthyear.";
161
Caitlin Fischer31e60b22019-03-21 21:43:37162const char kAutofillUseImprovedLabelDisambiguationName[] =
163 "Autofill Uses Improved Label Disambiguation";
164const char kAutofillUseImprovedLabelDisambiguationDescription[] =
165 "When enabled, the Autofill dropdown's suggestions' labels are displayed "
166 "using the improved disambiguation format.";
Caitlin Fischerfd366e72019-02-20 20:47:32167
Roger McFarlane1a37d7b2018-04-20 22:45:19168const char kAutofillEnforceMinRequiredFieldsForHeuristicsName[] =
169 "Autofill Enforce Min Required Fields For Heuristics";
170const char kAutofillEnforceMinRequiredFieldsForHeuristicsDescription[] =
171 "When enabled, autofill will generally require a form to have at least 3 "
172 "fields before allowing heuristic field-type prediction to occur.";
173
174const char kAutofillEnforceMinRequiredFieldsForQueryName[] =
175 "Autofill Enforce Min Required Fields For Query";
176const char kAutofillEnforceMinRequiredFieldsForQueryDescription[] =
177 "When enabled, autofill will generally require a form to have at least 3 "
178 "fields before querying the autofill server for field-type predictions.";
179
180const char kAutofillEnforceMinRequiredFieldsForUploadName[] =
181 "Autofill Enforce Min Required Fields For Upload";
182const char kAutofillEnforceMinRequiredFieldsForUploadDescription[] =
183 "When enabled, autofill will generally require a form to have at least 3 "
184 "fillable fields before uploading field-type votes for that form.";
185
Moe Ahmadid3ddfcb2018-04-20 19:51:08186const char kAutofillRestrictUnownedFieldsToFormlessCheckoutName[] =
187 "Restrict formless form extraction";
188const char kAutofillRestrictUnownedFieldsToFormlessCheckoutDescription[] =
189 "Restrict extraction of formless forms to checkout flows";
190
Roger McFarlanee193ab122018-11-22 20:55:07191const char kAutofillRichMetadataQueriesName[] =
192 "Autofill - Rich metadata queries (Canary/Dev only)";
193const char kAutofillRichMetadataQueriesDescription[] =
194 "Transmit rich form/field metadata when querying the autofill server. "
195 "This feature only works on the Canary and Dev channels.";
196
sebsg48d53acd92019-01-17 18:11:16197const char kAutofillSettingsSplitByCardTypeName[] =
198 "Autofill settings split by card type";
199const char kAutofillSettingsSplitByCardTypeDescription[] =
200 "When enabled, the cards in the payments settings will be split into two "
201 "lists based on where they are stored.";
202
Brett Wilsonf27ff602017-07-07 22:28:47203const char kAutoplayPolicyName[] = "Autoplay policy";
204const char kAutoplayPolicyDescription[] =
205 "Policy used when deciding if audio or video is allowed to autoplay.";
206
207const char kAutoplayPolicyUserGestureRequiredForCrossOrigin[] =
208 "User gesture is required for cross-origin iframes.";
209const char kAutoplayPolicyNoUserGestureRequired[] =
210 "No user gesture is required.";
211const char kAutoplayPolicyUserGestureRequired[] = "User gesture is required.";
212const char kAutoplayPolicyDocumentUserActivation[] =
213 "Document user activation is required.";
214
Maya Lekova4bbfdb7f2018-10-16 08:15:03215const char kAwaitOptimizationName[] = "Await optimization";
216const char kAwaitOptimizationDescription[] =
217 "Enables await taking 1 tick on the microtask queue.";
218
Brett Wilsonf27ff602017-07-07 22:28:47219const char kBrowserTaskSchedulerName[] = "Task Scheduler";
220const char kBrowserTaskSchedulerDescription[] =
221 "Enables redirection of some task posting APIs to the task scheduler.";
222
Carlos IL766fbc882018-02-16 02:34:52223const char kBundledConnectionHelpName[] = "Bundled Connection Help";
224const char kBundledConnectionHelpDescription[] =
Carlos ILaafcd73a2018-07-10 20:08:37225 "Enables or disables redirection to local help content for users who get "
226 "an interstitial after clicking the 'Learn More' link on a previous "
227 "interstitial.";
Carlos IL766fbc882018-02-16 02:34:52228
Brett Wilsonf27ff602017-07-07 22:28:47229const char kBypassAppBannerEngagementChecksName[] =
230 "Bypass user engagement checks";
231const char kBypassAppBannerEngagementChecksDescription[] =
232 "Bypasses user engagement checks for displaying app banners, such as "
233 "requiring that users have visited the site before and that the banner "
234 "hasn't been shown recently. This allows developers to test that other "
235 "eligibility requirements for showing app banners, such as having a "
236 "manifest, are met.";
237
Amber Won478561d2017-08-19 01:02:59238const char kClickToOpenPDFName[] = "Click to open embedded PDFs";
239const char kClickToOpenPDFDescription[] =
240 "When the PDF plugin is unavailable, show a click-to-open placeholder for "
241 "embedded PDFs.";
242
rbpotter9990eb42018-07-12 05:34:59243const char kCloudPrinterHandlerName[] = "Enable Cloud Printer Handler";
244const char kCloudPrinterHandlerDescription[] =
245 "Use the new cloud printer handler for communicating with the cloud "
246 "print server, instead of the cloud print interface in the Print "
247 "Preview WebUI.";
248
Tanja Gornakb0985dd2018-10-11 17:24:40249const char kFCMInvalidationsName[] =
250 "Enable invalidations delivery via new FCM based protocol";
251const char kFCMInvalidationsDescription[] =
252 "Use the new FCM-based protocol for deliveling invalidations";
253
Yining Wangdedf0762019-02-19 20:20:29254const char kFocusMode[] = "Focus Mode";
255const char kFocusModeDescription[] =
256 "If enabled, allows the user to switch to Focus Mode";
257
Christopher Cameronceb8727d2017-09-07 23:53:16258const char kForceColorProfileSRGB[] = "sRGB";
259const char kForceColorProfileP3[] = "Display P3 D65";
260const char kForceColorProfileColorSpin[] = "Color spin with gamma 2.4";
261const char kForceColorProfileHdr[] = "scRGB linear (HDR where available)";
262
263const char kForceColorProfileName[] = "Force color profile";
264const char kForceColorProfileDescription[] =
265 "Forces Chrome to use a specific color profile instead of the color "
266 "of the window's current monitor, as specified by the operating system.";
267
Brett Wilsonf27ff602017-07-07 22:28:47268const char kCompositedLayerBordersName[] = "Composited render layer borders";
269const char kCompositedLayerBordersDescription[] =
270 "Renders a border around composited Render Layers to help debug and study "
271 "layer compositing.";
272
Theresac34db2d2018-06-28 00:03:11273const char kContextualSuggestionsButtonName[] = "Contextual Suggestions Button";
274const char kContextualSuggestionsButtonDescription[] =
275 "If enabled, shows a button to trigger contextual suggestions.";
276
Theresae308b9e2018-10-10 15:57:40277const char kContextualSuggestionsIPHReverseScrollName[] =
278 "Contextual Suggestions IPH Reverse Scroll";
279const char kContextualSuggestionsIPHReverseScrollDescription[] =
280 "Require a reverse scroll before showing in-product help for contextual "
281 "suggestions.";
282
Theresa0f2947b92018-07-02 21:27:58283const char kContextualSuggestionsOptOutName[] =
284 "Contextual Suggestions Opt-out";
285const char kContextualSuggestionsOptOutDescription[] =
286 "If enabled, allows the user to opt out of contextual suggestions.";
287
Lily Cheneb304c8f2019-04-25 23:37:45288extern const char kCookiesWithoutSameSiteMustBeSecureName[] =
289 "Cookies without SameSite must be secure";
290extern const char kCookiesWithoutSameSiteMustBeSecureDescription[] =
291 "If enabled, cookies without SameSite restrictions must also be Secure. If "
292 "a cookie without SameSite restrictions is set without the Secure "
293 "attribute, it will be treated as Secure (if set from a secure URL), or "
294 "rejected (if set from an insecure URL). This flag only has an effect if "
295 "\"SameSite by default cookies\" is also enabled.";
296
Brett Wilsonf27ff602017-07-07 22:28:47297const char kCreditCardAssistName[] = "Credit Card Assisted Filling";
298const char kCreditCardAssistDescription[] =
299 "Enable assisted credit card filling on certain sites.";
300
Thanh Le659cb102017-12-20 22:00:19301const char kDataSaverServerPreviewsName[] = "Data Saver Server Previews";
302const char kDataSaverServerPreviewsDescription[] =
303 "Allow the Data Reduction Proxy to serve previews.";
Brett Wilsonf27ff602017-07-07 22:28:47304
Brett Wilsonf27ff602017-07-07 22:28:47305const char kDebugPackedAppName[] = "Debugging for packed apps";
306const char kDebugPackedAppDescription[] =
307 "Enables debugging context menu options such as Inspect Element for packed "
308 "applications.";
309
Brett Wilsonf27ff602017-07-07 22:28:47310const char kDebugShortcutsName[] = "Debugging keyboard shortcuts";
311const char kDebugShortcutsDescription[] =
312 "Enables additional keyboard shortcuts that are useful for debugging Ash.";
313
314const char kDeviceDiscoveryNotificationsName[] =
315 "Device Discovery Notifications";
316const char kDeviceDiscoveryNotificationsDescription[] =
317 "Device discovery notifications on local network.";
318
319const char kDevtoolsExperimentsName[] = "Developer Tools experiments";
320const char kDevtoolsExperimentsDescription[] =
321 "Enables Developer Tools experiments. Use Settings panel in Developer "
322 "Tools to toggle individual experiments.";
323
324const char kDisableAudioForDesktopShareName[] =
325 "Disable Audio For Desktop Share";
326const char kDisableAudioForDesktopShareDescription[] =
327 "With this flag on, desktop share picker window will not let the user "
328 "choose whether to share audio.";
329
Yue Ru Suna50a80f2019-02-08 05:02:58330const char kDisableBestEffortTasksName[] = "Skip best effort tasks";
331const char kDisableBestEffortTasksDescription[] =
332 "With this flag on, tasks of the lowest priority will not be executed "
333 "until shutdown. The queue of low priority tasks can increase memory usage."
334 "Also, while it should be possible to use Chrome almost normally with this "
335 "flag, it is expected that some non-visible operations such as writing "
336 "user data to disk, cleaning caches, reporting metrics or updating "
337 "components won't be performed until shutdown.";
338
Arthur Sonzogni721f48e2018-10-31 17:10:02339const char kDisableIpcFloodingProtectionName[] =
340 "Disable IPC flooding protection";
341const char kDisableIpcFloodingProtectionDescription[] =
342 "Some javascript code can flood the inter process communication system. "
343 "This protection limits the rate (calls/seconds) at which theses function "
arthursonzogni443bd0ef2018-11-27 16:12:53344 "can be used. This flag disables the protection. This flag is deprecated "
345 "and will be removed in Chrome 76. Use the switch "
346 "--disable-ipc-flooding-protection instead.";
Arthur Sonzogni721f48e2018-10-31 17:10:02347
Chris Palmer917bc052018-03-14 19:28:31348const char kDisablePushStateThrottleName[] = "Disable pushState throttling";
349const char kDisablePushStateThrottleDescription[] =
350 "Disables throttling of history.pushState and history.replaceState method "
arthursonzogni443bd0ef2018-11-27 16:12:53351 "calls. This flag is deprecated and will be removed in Chrome 76. Use the "
352 "switch --disable-ipc-flooding-protection instead.";
Chris Palmer917bc052018-03-14 19:28:31353
Brett Wilsonf27ff602017-07-07 22:28:47354const char kDisallowDocWrittenScriptsUiName[] =
355 "Block scripts loaded via document.write";
356const char kDisallowDocWrittenScriptsUiDescription[] =
357 "Disallows fetches for third-party parser-blocking scripts inserted into "
358 "the main frame via document.write.";
359
Christopher Thompson2ffffa2c2018-05-18 23:06:37360const char kDisallowUnsafeHttpDownloadsName[] =
361 "Block unsafe downloads over insecure connections";
362const char kDisallowUnsafeHttpDownloadsNameDescription[] =
363 "Disallows downloads of unsafe files (files that can potentially execute "
364 "code), where the final download origin or any origin in the redirect "
365 "chain is insecure.";
366
Brett Wilsonf27ff602017-07-07 22:28:47367const char kEmbeddedExtensionOptionsName[] = "Embedded extension options";
368const char kEmbeddedExtensionOptionsDescription[] =
369 "Display extension options as an embedded element in chrome://extensions "
370 "rather than opening a new tab.";
371
Dominic Mazzoniaa4b97d2019-04-03 22:43:48372const char kEnableAccessibilityImageDescriptionsName[] =
373 "Accessibility Image Descriptions";
374const char kEnableAccessibilityImageDescriptionsDescription[] =
375 "Enables screen reader users to request computer-generated descriptions "
376 "of unlabeled images using the page context menu.";
377
Dominic Mazzoni8ac98962018-05-25 05:44:55378const char kEnableAccessibilityObjectModelName[] = "Accessibility Object Model";
379const char kEnableAccessibilityObjectModelDescription[] =
380 "Enables experimental support for Accessibility Object Model APIs "
381 "that are in development.";
382
Becca Hughesac86cd442019-01-09 23:49:54383const char kEnableAudioFocusEnforcementName[] = "Audio Focus Enforcement";
384const char kEnableAudioFocusEnforcementDescription[] =
385 "Enables enforcement of a single media session having audio focus at "
386 "any one time. Requires #enable-media-session-service to be enabled too.";
387
Sebastien Lalancette5daaf4a2019-01-11 22:09:25388const char kEnableAutocompleteDataRetentionPolicyName[] =
389 "Enable automatic cleanup of expired Autocomplete entries.";
390const char kEnableAutocompleteDataRetentionPolicyDescription[] =
391 "If enabled, will clean-up Autocomplete entries whose last use date is "
392 "older than the current retention policy. These entries will be "
393 "permanently deleted from the client on startup, and will be unlinked "
394 "from sync.";
395
Florian Uunk8c428ea2018-07-18 11:12:52396const char kEnableAutofillAccountWalletStorageName[] =
397 "Enable the account data storage for autofill";
398const char kEnableAutofillAccountWalletStorageDescription[] =
399 "Enable the ephemeral storage for account data for autofill.";
400
Shanfeng Zhang19c16562017-10-17 02:30:40401const char kEnableAutofillCreditCardAblationExperimentDisplayName[] =
402 "Credit card autofill ablation experiment.";
403const char kEnableAutofillCreditCardAblationExperimentDescription[] =
404 "If enabled, credit card autofill suggestions will not display.";
405
Manas Verma7e5b391b2019-04-09 02:08:53406const char kEnableAutofillCreditCardAuthenticationName[] =
407 "Allow using platform authenticators to retrieve server cards";
408const char kEnableAutofillCreditCardAuthenticationDescription[] =
409 "When enabled, users will be given the option to use a platform "
410 "authenticator (if available) to verify card ownership when retrieving "
411 "credit cards from Google Payments.";
412
Brett Wilsonf27ff602017-07-07 22:28:47413const char kEnableAutofillCreditCardLastUsedDateDisplayName[] =
414 "Display the last used date of a credit card in autofill.";
415const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
416 "If enabled, display the last used date of a credit card in autofill.";
417
Sujie Zhu2cf0e5c2018-07-17 18:00:27418const char kEnableAutofillCreditCardLocalCardMigrationName[] =
419 "Enable migrating local cards to Google Pay";
420const char kEnableAutofillCreditCardLocalCardMigrationDescription[] =
421 "If enabled, prompt migration of locally-saved credit cards to Google Pay.";
422
Jared Saulbc672a072018-06-16 05:22:12423const char kEnableAutofillCreditCardUploadEditableCardholderNameName[] =
424 "Make cardholder name editable in dialog during credit card upload";
425const char kEnableAutofillCreditCardUploadEditableCardholderNameDescription[] =
426 "If enabled, in certain situations when offering credit card upload to "
427 "Google Payments, the cardholder name can be edited within the "
428 "offer-to-save dialog, which is prefilled with the name from the signed-in "
429 "Google Account.";
430
Hao Zhang1be9c262018-11-03 00:23:51431const char kEnableAutofillCreditCardUploadEditableExpirationDateName[] =
432 "Make expiration date editable in dialog during credit card upload";
433const char kEnableAutofillCreditCardUploadEditableExpirationDateDescription[] =
434 "If enabled, if a credit card's expiration date was not detected when "
435 "offering card upload to Google Payments, the offer-to-save dialog "
436 "displays an expiration date selector.";
437
Anne Limc1d23212019-03-07 17:46:08438const char kEnableAutofillDoNotUploadSaveUnsupportedCardsName[] =
439 "Prevents upload save on cards from unsupported networks";
440const char kEnableAutofillDoNotUploadSaveUnsupportedCardsDescription[] =
441 "If enabled, cards from unsupported networks will not be offered upload "
442 "save, and will instead be offered local save.";
443
Hao Zhangd3017112019-02-01 20:13:30444const char kEnableAutofillImportNonFocusableCreditCardFormsName[] =
445 "Allow credit card import from forms that disappear after entry";
446const char kEnableAutofillImportNonFocusableCreditCardFormsDescription[] =
447 "If enabled, offers credit card save for forms that are hidden from the "
448 "page after information has been entered into them, including "
449 "accordion-style checkout flows.";
450
Hao Zhang0c4f18d2019-04-05 01:20:25451const char kEnableAutofillImportDynamicFormsName[] =
452 "Allow credit card import from dynamic forms after entry";
453const char kEnableAutofillImportDynamicFormsDescription[] =
454 "If enabled, offers credit card save for dynamic forms from the page after "
455 "information has been entered into them.";
456
siyua9a4a8872018-10-05 03:46:56457const char kEnableAutofillLocalCardMigrationShowFeedbackName[] =
458 "Show the upload results dialog after local card migration";
459const char kEnableAutofillLocalCardMigrationShowFeedbackDescription[] =
460 "If enabled, the local card migration offer dialog will remain pending "
461 "after the user clicks the save button. Once migration is finished, "
462 "the dialog will be updated with the results of each card.";
463
Anne Lim30351782019-03-01 01:57:16464const char kEnableAutofillLocalCardMigrationUsesStrikeSystemV2Name[] =
465 "Enable limit on offering to migrate local cards repeatedly using the "
466 "updated strike system implementation";
467const char kEnableAutofillLocalCardMigrationUsesStrikeSystemV2Description[] =
468 "If enabled, uses the updated strike system implementation to prevent "
469 "offering prompts for local card migration if it has repeatedly been "
470 "ignored, declined, or failed.";
471
tmartinocd414732018-02-12 19:01:01472const char kEnableAutofillNativeDropdownViewsName[] =
473 "Display Autofill Dropdown Using Views";
474const char kEnableAutofillNativeDropdownViewsDescription[] =
475 "If enabled, the Autofill Dropdown will be built natively using Views, "
476 "rather than painted directly to a canvas.";
477
Fabio Tirelo87552e02018-07-06 15:43:21478const char kEnableAutofillSaveCardDialogUnlabeledExpirationDateName[] =
479 "Show unlabeled expiration dates on the save card dialog";
480const char kEnableAutofillSaveCardDialogUnlabeledExpirationDateDescription[] =
481 "If enabled, expiration dates on the save card dialog (both local and "
482 "upstream) are shown without an 'Exp:' label.";
483
siyua172973d2018-11-21 22:23:20484const char kEnableAutofillSaveCardImprovedUserConsentName[] =
485 "Use updated UI for credit card save bubbles";
486const char kEnableAutofillSaveCardImprovedUserConsentDescription[] =
487 "If enabled, adds a [No thanks] button to credit card save bubbles and "
488 "updates their title headers.";
489
Jared Saul8a0c1e92018-10-10 18:22:47490const char kEnableAutofillSaveCreditCardUsesStrikeSystemName[] =
491 "Enable limit on offering to save the same credit card repeatedly";
492const char kEnableAutofillSaveCreditCardUsesStrikeSystemDescription[] =
493 "If enabled, prevents popping up the credit card offer-to-save prompt if "
494 "it has repeatedly been ignored, declined, or failed.";
495
Anne Lim9d8f66a2019-01-07 23:49:21496const char kEnableAutofillSaveCreditCardUsesStrikeSystemV2Name[] =
Anne Lim30351782019-03-01 01:57:16497 "Enable limit on offering to save the same credit card repeatedly using "
498 "the updated strike system implementation";
Anne Lim9d8f66a2019-01-07 23:49:21499const char kEnableAutofillSaveCreditCardUsesStrikeSystemV2Description[] =
Anne Lim30351782019-03-01 01:57:16500 "If enabled, uses the updated strike system implementation to prevent "
501 "popping up the credit card offer-to-save prompt if it has repeatedly been "
Anne Lim9d8f66a2019-01-07 23:49:21502 "ignored, declined, or failed.";
503
Lakshmi Kumar Dabbirua3d0805f2018-05-22 22:04:23504const char kEnableAutofillSendExperimentIdsInPaymentsRPCsName[] =
505 "Send experiment flag IDs in calls to Google Payments";
506const char kEnableAutofillSendExperimentIdsInPaymentsRPCsDescription[] =
507 "If enabled, adds the status of certain experiment variations when making "
508 "calls to Google Payments.";
509
Becca Hughes4d896c42018-05-29 16:58:51510const char kEnableAutoplayIgnoreWebAudioName[] =
511 "Autoplay ignores WebAudio playbacks";
512const char kEnableAutoplayIgnoreWebAudioDescription[] =
513 "If enabled, autoplay restrictions will be ignored for WebAudio.";
514
Becca Hughesc62f6a1d2018-08-16 15:59:47515const char kEnableAutoplayUnifiedSoundSettingsName[] =
516 "Autoplay unified sound settings UI";
517const char kEnableAutoplayUnifiedSoundSettingsDescription[] =
518 "If enabled, shows the new unified autoplay sound settings UI.";
519
Brett Wilsonf27ff602017-07-07 22:28:47520const char kEnableBrotliName[] = "Brotli Content-Encoding.";
521const char kEnableBrotliDescription[] =
522 "Enable Brotli Content-Encoding support.";
523
Robert Ogdenc3703942019-02-06 21:05:49524const char kEnableDataSaverLiteModeRebrandName[] =
525 "Data Saver Lite Mode Rebranding";
526const char kEnableDataSaverLiteModeRebrandDescription[] =
527 "Enable the Data Saver rebranding to Lite Mode.";
528
Tarun Bansal56c92932019-04-01 17:58:36529const char kEnableSaveDataName[] = "Enables save data feature";
530const char kEnableSaveDataDescription[] =
531 "Enables save data feature. May cause user's traffic to be proxied via "
532 "Google's data reduction proxy.";
533
sclittle50e4bb92017-07-08 02:23:03534const char kEnableClientLoFiName[] = "Client-side Lo-Fi previews";
535
536const char kEnableClientLoFiDescription[] =
537 "Enable showing low fidelity images on some pages on slow networks.";
538
Patrick Noland8bc57472018-06-19 21:09:54539const char kEnableCSSFragmentIdentifiersName[] =
540 "Enable CSS Fragment Identifiers";
541const char kEnableCSSFragmentIdentifiersDescription[] =
542 "Enable support for specifying a target element using a css selector in "
543 "the fragment identifier.";
544
Ramin Halavati7dbb0722019-02-15 05:33:49545const char kEnableFilesystemInIncognitoName[] = "Filesystem API in Incognito";
546const char kEnableFilesystemInIncognitoDescription[] =
547 "Enable Filesystem API in incognito mode.";
548
Doug Arnett08b4067b2017-10-12 20:14:44549const char kEnableNoScriptPreviewsName[] = "NoScript previews";
550
551const char kEnableNoScriptPreviewsDescription[] =
552 "Enable disabling JavaScript on some pages on slow networks.";
553
Thanh Le2c279fbc2017-11-21 01:25:40554const char kDataReductionProxyServerAlternative1[] = "Use alt. server config 1";
555const char kDataReductionProxyServerAlternative2[] = "Use alt. server config 2";
556const char kDataReductionProxyServerAlternative3[] = "Use alt. server config 3";
557const char kDataReductionProxyServerAlternative4[] = "Use alt. server config 4";
558const char kDataReductionProxyServerAlternative5[] = "Use alt. server config 5";
559const char kDataReductionProxyServerAlternative6[] = "Use alt. server config 6";
560const char kDataReductionProxyServerAlternative7[] = "Use alt. server config 7";
561const char kDataReductionProxyServerAlternative8[] = "Use alt. server config 8";
562const char kDataReductionProxyServerAlternative9[] = "Use alt. server config 9";
563const char kDataReductionProxyServerAlternative10[] =
564 "Use alt. server config 10";
rajendrantcfa60ba2018-10-30 09:16:54565const char kEnableDataReductionProxyNetworkServiceName[] =
566 "Data reduction proxy with network service";
567const char kEnableDataReductionProxyNetworkServiceDescription[] =
568 "Enable data reduction proxy when network service is enabled";
Brett Wilsonf27ff602017-07-07 22:28:47569const char kEnableDataReductionProxyServerExperimentName[] =
570 "Use an alternative Data Saver back end configuration.";
571const char kEnableDataReductionProxyServerExperimentDescription[] =
572 "Enable a different approach to saving data by configuring the back end "
573 "server";
574
575const char kEnableDataReductionProxySavingsPromoName[] =
576 "Data Saver 1 MB Savings Promo";
577const char kEnableDataReductionProxySavingsPromoDescription[] =
578 "Enable a Data Saver promo for 1 MB of savings. If Data Saver has already "
579 "saved 1 MB of data, then the promo will not be shown. Data Saver must be "
580 "enabled for the promo to be shown.";
581
Matt Giucad4870432017-11-24 01:04:38582const char kEnableDesktopPWAsName[] = "Desktop PWAs";
583const char kEnableDesktopPWAsDescription[] =
584 "Experimental windowing and install banner treatment for Progressive Web "
585 "Apps on desktop platforms. Implies #enable-experimental-app-banners.";
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17586
Giovanni Ortuño Urquidi40c8e792018-02-28 04:18:59587const char kEnableDesktopPWAsLinkCapturingName[] =
588 "Desktop PWAs Link Capturing";
589const char kEnableDesktopPWAsLinkCapturingDescription[] =
590 "Experimentally enable link capturing for Desktop PWAs. Navigations to "
591 "URLs that are in-scope of Desktop PWAs will open in a window. Requires "
592 "#enable-desktop-pwas.";
593
Jay Harris52511a02018-11-02 01:00:28594const char kDesktopPWAsCustomTabUIName[] = "Desktop PWAs Custom Tab UI";
595const char kDesktopPWAsCustomTabUIDescription[] =
596 "Browsing out-of-scope links in a desktop PWA will use the custom tab UI "
597 "for displaying the page title and origin instead of the location bar.";
598
Jay Harrisee7a7bc62018-10-09 01:47:49599const char kDesktopPWAsStayInWindowName[] =
600 "Desktop PWAs out-of-scope links open in the app window";
601const char kDesktopPWAsStayInWindowDescription[] =
Jay Harris52511a02018-11-02 01:00:28602 "Links to sites in a different scope will open inside the PWA window as "
603 "opposed to in the browser.";
Jay Harrisee7a7bc62018-10-09 01:47:49604
Alan Cutter1816c9d2019-02-11 02:20:07605const char kDesktopPWAsOmniboxInstallName[] =
606 "Desktop PWAs installable from the omnibox";
607const char kDesktopPWAsOmniboxInstallDescription[] =
608 "When on a site that passes PWA installation requirements show a button in "
609 "the omnibox for installing it.";
610
Christopher Lame66b7812018-09-26 01:49:24611const char kEnableSystemWebAppsName[] = "System Web Apps";
612const char kEnableSystemWebAppsDescription[] =
613 "Experimental system for using the Desktop PWA framework for running System"
614 "Apps (e.g Settings, Discover).";
615
David Benjamin570460e2018-10-16 06:01:29616const char kEnforceTLS13DowngradeName[] = "TLS 1.3 downgrade hardening";
617const char kEnforceTLS13DowngradeDescription[] =
618 "This option enables the TLS 1.3 downgrade hardening mechanism. This "
619 "hardens TLS 1.3 connections while remaining compatible with TLS 1.0 "
620 "through 1.2 connections. Firewalls and proxies that do not function when "
621 "this is enabled do not implement TLS 1.0 through 1.2 correctly or "
622 "securely. They must be fixed by vendors.";
623
Brett Wilsonf27ff602017-07-07 22:28:47624const char kEnableGenericSensorName[] = "Generic Sensor";
625const char kEnableGenericSensorDescription[] =
Mikhail Pozdnyakov73373a62017-08-24 17:31:25626 "Enables motion sensor classes based on Generic Sensor API, i.e. "
627 "Accelerometer, LinearAccelerationSensor, Gyroscope, "
628 "AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
629
630const char kEnableGenericSensorExtraClassesName[] =
631 "Generic Sensor Extra Classes";
632const char kEnableGenericSensorExtraClassesDescription[] =
633 "Enables an extra set of sensor classes based on Generic Sensor API, which "
634 "expose previously unavailable platform features, i.e. AmbientLightSensor "
635 "and Magnetometer interfaces.";
Brett Wilsonf27ff602017-07-07 22:28:47636
Vikas Soni78daa632019-01-12 01:32:52637const char kEnableGpuServiceLoggingName[] = "Enable gpu service logging";
638const char kEnableGpuServiceLoggingDescription[] =
639 "Enable printing the actual GL driver calls.";
640
Brett Wilsonf27ff602017-07-07 22:28:47641const char kEnableHDRName[] = "HDR mode";
642const char kEnableHDRDescription[] =
643 "Enables HDR support on compatible displays.";
644
David Bokan911bded2018-11-27 23:23:32645const char kEnableImplicitRootScrollerName[] = "Implicit Root Scroller";
646const char kEnableImplicitRootScrollerDescription[] =
647 "Enables implicitly choosing which scroller on a page is the 'root "
648 "scroller'. i.e. The one that gets special features like URL bar movement, "
649 "overscroll glow, rotation anchoring, etc.";
650
Robert Ogden5a63b242018-09-17 21:38:57651const char kEnablePreviewsAndroidOmniboxUIName[] =
652 "Previews Android Omnibox UI";
653const char kEnablePreviewsAndroidOmniboxUIDescription[] =
654 "Enable showing the Previews UI in the Omnibox on Android instead of an "
655 "InfoBar. This has no effect on other platforms.";
656
Robert Ogdence8c9572018-10-08 23:08:48657const char kEnableLitePageServerPreviewsName[] = "Lite Page Server Previews";
658const char kEnableLitePageServerPreviewsDescription[] =
Doug Arnett9c1f87562018-12-14 00:56:39659 "Enable showing Lite Page Previews served from a Previews Server."
660 "This feature will cause Chrome to redirect eligible navigations "
Robert Ogdence8c9572018-10-08 23:08:48661 "to a Google-owned domain that serves a pre-rendered version of the "
Doug Arnett9c1f87562018-12-14 00:56:39662 "original page. Also known as Lite Page Redirect Previews.";
Robert Ogdence8c9572018-10-08 23:08:48663
Ryan Sturm5e4d4422019-02-28 01:32:29664const char kEnableURLLoaderLitePageServerPreviewsName[] =
665 "Lite Page Server Previews using URL Loader";
666const char kEnableURLLoaderLitePageServerPreviewsDescription[] =
667 "Enable using a network service URL Loader for Lite Page Server Previews. "
668 "This requires enable-lite-page-server-previews to be enabled along with "
669 "network-service.";
670
Hiroshige Hayashizaki3ee116af2019-03-05 10:11:22671const char kBuiltInModuleAllName[] = "All experimental built-in modules";
672const char kBuiltInModuleAllDescription[] =
673 "Enable all experimental built-in modules, as well as built-in module "
674 "infrastructure and import maps. The syntax and the APIs exposed are "
675 "experimental and will change over time.";
676
677const char kBuiltInModuleInfraName[] = "Built-in module infra and import maps";
678const char kBuiltInModuleInfraDescription[] =
679 "Enable built-in module infrastructure and import maps. Individual "
680 "built-in modules should be enabled by other flags. The syntax and the "
681 "APIs exposed are experimental and will change over time.";
682
683const char kBuiltInModuleKvStorageName[] = "kv-storage built-in module";
684const char kBuiltInModuleKvStorageDescription[] =
685 "Enable kv-storage built-in module, as well as built-in module "
686 "infrastructure and import maps. The syntax and the APIs exposed are "
687 "experimental and will change over time.";
Hiroshige Hayashizaki99d5821e2018-05-02 04:25:41688
Philip Rogers63481332018-12-01 22:16:51689const char kEnableBlinkGenPropertyTreesName[] = "Enable BlinkGenPropertyTrees";
690const char kEnableBlinkGenPropertyTreesDescription[] =
691 "Enable a new compositing mode where Blink generates the compositor "
692 "property trees.";
693
Ian Kilpatricke68ef11a2018-07-04 03:52:10694const char kEnableLayoutNGName[] = "Enable LayoutNG";
695const char kEnableLayoutNGDescription[] =
696 "Enable Blink's next generation layout engine.";
697
Scott Littled0fd2d002018-04-13 03:37:26698const char kEnableLazyFrameLoadingName[] = "Enable lazy frame loading";
699const char kEnableLazyFrameLoadingDescription[] =
700 "Defers the loading of certain cross-origin frames until the page is "
701 "scrolled down near them.";
702
rajendrant793ff512018-08-10 17:07:59703const char kEnableLazyImageLoadingName[] = "Enable lazy image loading";
704const char kEnableLazyImageLoadingDescription[] =
705 "Defers the loading of images until the page is scrolled down near them.";
706
Sidney San Martín9375b892017-09-09 00:29:54707const char kEnableMacMaterialDesignDownloadShelfName[] =
708 "Enable Material Design download shelf";
709
710const char kEnableMacMaterialDesignDownloadShelfDescription[] =
711 "If enabled, the download shelf uses Material Design.";
712
Becca Hughesac86cd442019-01-09 23:49:54713const char kEnableMediaSessionServiceName[] = "Media Session Service";
714const char kEnableMediaSessionServiceDescription[] =
715 "Enables the media session mojo service and internal media session "
716 "support.";
717
Brett Wilsonf27ff602017-07-07 22:28:47718const char kEnableNavigationTracingName[] = "Enable navigation tracing";
719const char kEnableNavigationTracingDescription[] =
720 "This is to be used in conjunction with the trace-upload-url flag. "
721 "WARNING: When enabled, Chrome will record performance data for every "
722 "navigation and upload it to the URL specified by the trace-upload-url "
723 "flag. The trace may include personally identifiable information (PII) "
724 "such as the titles and URLs of websites you visit.";
725
Bernhard Bauer5533f9912017-11-06 17:56:02726const char kEnableNetworkLoggingToFileName[] = "Enable network logging to file";
727const char kEnableNetworkLoggingToFileDescription[] =
728 "Enables network logging to a file named netlog.json in the user data "
729 "directory. The file can be imported into chrome://net-internals.";
730
Brett Wilsonf27ff602017-07-07 22:28:47731const char kEnableNetworkServiceName[] = "Enable network service";
732const char kEnableNetworkServiceDescription[] =
733 "Enables the network service, which makes network requests through a "
John Abd-El-Malek225b04d2018-09-07 22:41:40734 "separate process.";
Brett Wilsonf27ff602017-07-07 22:28:47735
John Abd-El-Malek8067cc02017-12-04 23:23:20736const char kEnableNetworkServiceInProcessName[] =
737 "Runs network service in-process";
738const char kEnableNetworkServiceInProcessDescription[] =
739 "Runs the network service in the browser process.";
740
Shakti Sahu07b052712019-04-02 00:39:37741const char kDownloadAutoResumptionNativeName[] =
742 "Enable download auto-resumption in native";
743const char kDownloadAutoResumptionNativeDescription[] =
744 "Enables download auto-resumption in native";
745
Shakti Sahu5a046f62019-03-12 19:25:34746const char kEnableNewDownloadBackendName[] = "Enable new download backend";
747const char kEnableNewDownloadBackendDescription[] =
748 "Enables the new download backend that uses offline content provider";
749
Lucas Furukawa Gadani9f57e192019-04-05 14:56:10750const char kEnablePortalsName[] = "Enable Portals.";
751const char kEnablePortalsDescription[] =
752 "Portals are an experimental web platform feature that allows embedding"
753 " and seamless transitions between pages."
754 " See https://github.com/WICG/portals and https://wicg.github.io/portals/";
755
Tetsui Ohkuboc3eb87f72018-07-20 02:22:28756const char kEnableNotificationScrollBarName[] =
757 "Enable notification list scroll bar";
758const char kEnableNotificationScrollBarDescription[] =
759 "Enable the scroll bar of the notification list in Unified System Tray.";
760
Mitsuru Otsukae8304de2018-10-29 02:14:36761const char kEnableNotificationExpansionAnimationName[] =
762 "Enable notification expansion animations";
763const char kEnableNotificationExpansionAnimationDescription[] =
764 "Enable notification animations whenever the expansion state is toggled.";
765
Sophie Chang117a3b22017-10-24 22:25:36766const char kEnableOptimizationHintsName[] = "Optimization Hints";
767const char kEnableOptimizationHintsDescription[] =
Sophie Chang5454ce82018-07-16 17:44:50768 "Enable the Optimization Hints feature which incorporates server hints "
Sophie Chang117a3b22017-10-24 22:25:36769 "into decisions for what optimizations to perform on some pages on slow "
770 "networks.";
771
Takashi Toyoshima2e01e692018-11-16 03:23:27772const char kEnableOutOfBlinkCorsName[] = "Out of blink CORS";
773const char kEnableOutOfBlinkCorsDescription[] =
Yutaka Hirano98be3272017-08-07 17:55:39774 "CORS handling logic is moved out of blink.";
775
Chris Halle952239e2018-11-06 06:49:52776const char kExperimentalAccessibilityFeaturesName[] =
777 "Experimental accessibility features";
778const char kExperimentalAccessibilityFeaturesDescription[] =
779 "Enable additional accessibility features in the Settings page.";
780
Katie D652135c2018-11-27 18:30:13781const char kExperimentalAccessibilityAutoclickName[] =
782 "Experimental automatic click features";
783const char kExperimentalAccessibilityAutoclickDescription[] =
784 "Enable additional features for automatic clicks.";
785
Chris Hall4a4225f62019-01-18 03:07:16786const char kExperimentalAccessibilityLanguageDetectionName[] =
787 "Experimental accessibility language detection";
788const char kExperimentalAccessibilityLanguageDetectionDescription[] =
789 "Enable language detection for in-page content which is then exposed to "
790 "accessiblity technologies such as screen readers.";
791
Anastasia Helfinsteinafecc68c2018-11-26 19:20:17792const char kExperimentalAccessibilitySwitchAccessName[] =
793 "Experimental feature Switch Access";
794const char kExperimentalAccessibilitySwitchAccessDescription[] =
795 "Add a setting to enable the prototype of Switch Access";
796
kylechar7051c092018-02-05 20:31:39797const char kVizDisplayCompositorName[] = "Viz Display Compositor (OOP-D)";
798const char kVizDisplayCompositorDescription[] =
799 "If enabled, the display compositor runs as part of the viz service in the"
800 "GPU process.";
801
Xianda Sunfa2a35922019-04-15 19:01:28802const char kVizHitTestName[] = "Viz Hit-test";
803const char kVizHitTestDescription[] =
Ria Jiang6a129b982018-03-01 18:30:40804 "If enabled, event targeting uses the new viz-assisted hit-testing logic, "
Xianda Sunfa2a35922019-04-15 19:01:28805 "with hit-test data computed from the CompositorFrame or the SurfaceLayer.";
Ria Jiang6a129b982018-03-01 18:30:40806
Rahul Arakeri61a2ad272019-03-19 22:55:08807const char kCompositorThreadedScrollbarScrollingName[] =
808 "Enable compositor threaded scrollbar scrolling";
809const char kCompositorThreadedScrollbarScrollingDescription[] =
810 "Enables pointer-based scrollbar scrolling on the compositor thread "
811 "instead of the main thread";
812
Alexei Filippov522a5222019-03-29 03:33:18813const char kMemlogName[] = "Chrome heap profiler start mode.";
814const char kMemlogDescription[] =
815 "Starts heap profiling service that records sampled memory allocation "
816 "profile having each sample attributed with a callstack. "
817 "The sampling resolution is controlled with --memlog-sampling-rate flag. "
818 "Recorded heap dumps can be obtained at chrome://tracing "
819 "[category:memory-infra] and chrome://memory-internals. This setting "
820 "controls which processes will be profiled since their start. To profile "
821 "any given process at a later time use chrome://memory-internals page.";
822const char kMemlogModeMinimal[] = "Browser and GPU";
823const char kMemlogModeAll[] = "All processes";
824const char kMemlogModeAllRenderers[] = "All renderers";
825const char kMemlogModeRendererSampling[] = "Single renderer";
826const char kMemlogModeBrowser[] = "Browser only";
827const char kMemlogModeGpu[] = "GPU only";
Alexei Filippov2e8bfee2019-03-07 21:51:27828
Alexei Filippov522a5222019-03-29 03:33:18829const char kMemlogSamplingRateName[] =
830 "Heap profiling sampling interval (in bytes).";
831const char kMemlogSamplingRateDescription[] =
832 "Heap profiling service uses Poisson process to sample allocations. "
833 "Default value for the interval between samples is 100000 (100KB). "
834 "This results in low noise for large and/or frequent allocations "
Alexei Filippov2e8bfee2019-03-07 21:51:27835 "[size * frequency >> 100KB]. This means that aggregate numbers [e.g. "
erikchen99bfce02018-02-14 20:29:22836 "total size of malloc-ed objects] and large and/or frequent allocations "
Alexei Filippov522a5222019-03-29 03:33:18837 "can be trusted with high fidelity. "
838 "Lower intervals produce higher samples resolution, but come at a cost of "
839 "higher performance overhead.";
840const char kMemlogSamplingRate10KB[] = "10KB";
841const char kMemlogSamplingRate50KB[] = "50KB";
842const char kMemlogSamplingRate100KB[] = "100KB";
843const char kMemlogSamplingRate500KB[] = "500KB";
844const char kMemlogSamplingRate1MB[] = "1MB";
845const char kMemlogSamplingRate5MB[] = "5MB";
erikchen8bc20d82018-02-14 03:21:51846
Alexei Filippov522a5222019-03-29 03:33:18847const char kMemlogStackModeName[] = "Heap profiling stack traces type.";
848const char kMemlogStackModeDescription[] =
849 "By default heap profiling service records native stacks. "
850 "A post-processing step is required to symbolize the stacks. "
851 "'Native with thread names' adds the thread name as the first frame of "
852 "each native stack. It's also possible to record a pseudo stack using "
853 "trace events as identifiers. It's also possible to do a mix of both.";
854const char kMemlogStackModeMixed[] = "Mixed";
855const char kMemlogStackModeNative[] = "Native";
856const char kMemlogStackModeNativeWithThreadNames[] = "Native with thread names";
857const char kMemlogStackModePseudo[] = "Trace events";
Erik Chen3303fd0232018-01-11 20:29:05858
F#m59d036e2017-09-13 07:22:17859const char kEnablePixelCanvasRecordingName[] = "Enable pixel canvas recording";
860const char kEnablePixelCanvasRecordingDescription[] =
861 "Pixel canvas recording allows the compositor to raster contents aligned "
862 "with the pixel and improves text rendering. This should be enabled when a "
863 "device is using fractional scale factor.";
864
Ella Gebee81c92018-08-14 15:51:09865const char kEnableResamplingInputEventsName[] =
866 "Enable resampling input events";
867const char kEnableResamplingInputEventsDescription[] =
868 "Predicts mouse and touch inputs position at rAF time based on previous "
869 "input";
870const char kEnableResamplingScrollEventsName[] =
871 "Enable resampling scroll events";
872const char kEnableResamplingScrollEventsDescription[] =
873 "Predicts the scroll amount at vsync time based on previous input";
874
Doug Arnettaa0bf202018-08-27 19:42:11875const char kEnableResourceLoadingHintsName[] = "Enable resource loading hints";
876const char kEnableResourceLoadingHintsDescription[] =
877 "Enable using server-provided resource loading hints to provide a preview "
878 "over slow network connections.";
879
Raphael Kubo da Costab72914b2019-03-13 09:20:39880const char kEnableSensorContentSettingName[] = "Sensor content setting";
881const char kEnableSensorContentSettingDescription[] =
882 "Enable UI in content settings to control access to the sensor APIs.";
883
Mikel Astizb4786aa2018-11-09 22:12:09884const char kEnableSyncPseudoUSSAppListName[] =
885 "Enable pseudo-USS for APP_LIST sync.";
886const char kEnableSyncPseudoUSSAppListDescription[] =
887 "Enable new USS-based codepath for sync datatype APP_LIST.";
888
889const char kEnableSyncPseudoUSSAppsName[] = "Enable pseudo-USS for APPS sync.";
890const char kEnableSyncPseudoUSSAppsDescription[] =
891 "Enable new USS-based codepath for sync datatype APPS.";
892
893const char kEnableSyncPseudoUSSDictionaryName[] =
894 "Enable pseudo-USS for DICTIONARY sync.";
895const char kEnableSyncPseudoUSSDictionaryDescription[] =
896 "Enable new USS-based codepath for sync datatype DICTIONARY.";
897
898const char kEnableSyncPseudoUSSExtensionSettingsName[] =
899 "Enable pseudo-USS for EXTENSION_SETTINGS and APP_SETTINGS sync.";
900const char kEnableSyncPseudoUSSExtensionSettingsDescription[] =
901 "Enable new USS-based codepath for sync datatypes EXTENSION_SETTINGS and "
902 "APP_SETTINGS.";
903
904const char kEnableSyncPseudoUSSExtensionsName[] =
905 "Enable pseudo-USS for EXTENSIONS sync.";
906const char kEnableSyncPseudoUSSExtensionsDescription[] =
907 "Enable new USS-based codepath for sync datatype EXTENSIONS.";
908
909const char kEnableSyncPseudoUSSFaviconsName[] =
910 "Enable pseudo-USS for favicon sync.";
911const char kEnableSyncPseudoUSSFaviconsDescription[] =
912 "Enable new USS-based codepath for sync datatypes FAVICON_IMAGES and "
913 "FAVICON_TRACKING.";
914
915const char kEnableSyncPseudoUSSHistoryDeleteDirectivesName[] =
916 "Enable pseudo-USS for HISTORY_DELETE_DIRECTIVES sync.";
917const char kEnableSyncPseudoUSSHistoryDeleteDirectivesDescription[] =
918 "Enable new USS-based codepath for sync datatype "
919 "HISTORY_DELETE_DIRECTIVES.";
920
921const char kEnableSyncPseudoUSSPasswordsName[] =
922 "Enable pseudo-USS for PASSWORDS sync.";
923const char kEnableSyncPseudoUSSPasswordsDescription[] =
924 "Enable new USS-based codepath for sync datatype PASSWORDS (pseudo-USS).";
925
926const char kEnableSyncPseudoUSSPreferencesName[] =
927 "Enable pseudo-USS for PREFERENCES sync.";
928const char kEnableSyncPseudoUSSPreferencesDescription[] =
929 "Enable new USS-based codepath for sync datatype PREFERENCES.";
930
931const char kEnableSyncPseudoUSSPriorityPreferencesName[] =
932 "Enable pseudo-USS for PRIORITY_PREFERENCES sync.";
933const char kEnableSyncPseudoUSSPriorityPreferencesDescription[] =
934 "Enable new USS-based codepath for sync datatype PRIORITY_PREFERENCES.";
935
936const char kEnableSyncPseudoUSSSearchEnginesName[] =
937 "Enable pseudo-USS for SEARCH_ENGINES sync.";
938const char kEnableSyncPseudoUSSSearchEnginesDescription[] =
939 "Enable new USS-based codepath for sync datatype SEARCH_ENGINES.";
940
941const char kEnableSyncPseudoUSSSupervisedUsersName[] =
942 "Enable pseudo-USS for supervised users sync.";
943const char kEnableSyncPseudoUSSSupervisedUsersDescription[] =
944 "Enable new USS-based codepath for sync datatypes SUPERVISED_USER_SETTINGS "
945 "and SUPERVISED_USER_WHITELISTS.";
946
947const char kEnableSyncPseudoUSSThemesName[] =
948 "Enable pseudo-USS for THEMES sync.";
949const char kEnableSyncPseudoUSSThemesDescription[] =
950 "Enable new USS-based codepath for sync datatype THEMES.";
951
Mohamed Amir Yosef0178fa892018-07-23 17:43:52952const char kEnableSyncUSSBookmarksName[] = "Enable USS for bookmarks sync";
953const char kEnableSyncUSSBookmarksDescription[] =
954 "Enables the new, experimental implementation of bookmark sync";
955
Mohamed Amir Yosef3074dfc2019-02-06 18:34:43956const char kEnableSyncUSSPasswordsName[] = "Enable USS for passwords sync";
957const char kEnableSyncUSSPasswordsDescription[] =
958 "Enables the new, experimental implementation of passwords sync";
959
Mikel Astiz38837f82018-04-24 22:23:23960const char kEnableSyncUSSSessionsName[] = "Enable USS for sessions sync";
961const char kEnableSyncUSSSessionsDescription[] =
962 "Enables the new, experimental implementation of session sync (aka tab "
963 "sync).";
964
David Bokane9370c22019-02-14 15:19:58965const char kEnableTextFragmentAnchorName[] = "Enable Text Fragment Anchor.";
966const char kEnableTextFragmentAnchorDescription[] =
967 "Enables scrolling to text specified in URL's fragment.";
968
Brett Wilsonf27ff602017-07-07 22:28:47969const char kEnableUseZoomForDsfName[] =
970 "Use Blink's zoom for device scale factor.";
971const char kEnableUseZoomForDsfDescription[] =
972 "If enabled, Blink uses its zooming mechanism to scale content for device "
973 "scale factor.";
974const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
975const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
976const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
977
Patrick Noland8ee016e2018-01-24 11:44:53978const char kEnableScrollAnchorSerializationName[] =
979 "Scroll Anchor Serialization";
980const char kEnableScrollAnchorSerializationDescription[] =
981 "Save the scroll anchor and use it to restore the scroll position when "
982 "navigating.";
983
Brad Nelson5cd500e2018-01-04 00:50:19984const char kEnableSharedArrayBufferName[] =
985 "Experimental enabled SharedArrayBuffer support in JavaScript.";
986const char kEnableSharedArrayBufferDescription[] =
987 "Enable SharedArrayBuffer support in JavaScript.";
988
Brett Wilsonf27ff602017-07-07 22:28:47989const char kEnableWasmName[] = "WebAssembly structured cloning support.";
990const char kEnableWasmDescription[] =
991 "Enable web pages to use WebAssembly structured cloning.";
992
Lei Zhang0ca70ea2018-09-07 17:51:01993const char kEnableWebAuthenticationCableSupportName[] =
Kim Paulhamus92431372018-07-20 02:25:47994 "Web Authentication caBLE support";
Lei Zhang0ca70ea2018-09-07 17:51:01995const char kEnableWebAuthenticationCableSupportDescription[] =
Kim Paulhamus92431372018-07-20 02:25:47996 "Enable the cloud-assisted pairingless BLE protocol for use with "
997 "the Web Authentication API.";
Kim Paulhamusae635a32018-06-27 07:30:54998
Adam Langley64bc04232019-03-30 21:05:56999const char kEnableWebAuthenticationPINSupportName[] =
1000 "Web Authentication PIN support";
1001const char kEnableWebAuthenticationPINSupportDescription[] =
1002 "Enable the use of PINs with the Web Authentication API and compatible "
1003 "security keys.";
1004
Ramin Halavatic158b182018-10-18 14:04:541005const char kEnableIncognitoWindowCounterName[] = "Incognito Window Counter";
1006const char kEnableIncognitoWindowCounterDescription[] =
1007 "Shows the count of Incognito windows next to the Incognito icon on the "
1008 "toolbar.";
1009
Clemens Hammacher0c8a15a2018-04-27 13:45:321010const char kEnableWasmBaselineName[] = "WebAssembly baseline compiler";
1011const char kEnableWasmBaselineDescription[] =
1012 "Enables WebAssembly baseline compilation and tier up.";
1013
Bill Budged0dace172019-02-10 00:46:211014const char kEnableWasmCodeCacheName[] = "WebAssembly compiled module cache";
1015const char kEnableWasmCodeCacheDescription[] =
1016 "Enables caching of compiled WebAssembly modules.";
1017
Clemens Hammacher082fa572019-04-25 08:22:291018const char kEnableWasmCodeGCName[] = "WebAssembly code garbage collection";
1019const char kEnableWasmCodeGCDescription[] =
1020 "Enables garbage collection of WebAssembly code.";
1021
Ben Smith24c1e5c2018-06-20 01:09:021022const char kEnableWasmThreadsName[] = "WebAssembly threads support.";
1023const char kEnableWasmThreadsDescription[] =
1024 "Enables support for the WebAssembly Threads proposal. Implies "
1025 "#shared-array-buffer and #enable-webassembly.";
1026
Brett Wilsonf27ff602017-07-07 22:28:471027const char kExpensiveBackgroundTimerThrottlingName[] =
1028 "Throttle expensive background timers";
1029const char kExpensiveBackgroundTimerThrottlingDescription[] =
1030 "Enables intervention to limit CPU usage of background timers to 1%.";
1031
1032const char kExperimentalAppBannersName[] = "Experimental app banners";
1033const char kExperimentalAppBannersDescription[] =
Matt Giucad4870432017-11-24 01:04:381034 "Enables a new experimental app banner flow and UI. Implies "
1035 "#enable-app-banners.";
Brett Wilsonf27ff602017-07-07 22:28:471036
1037const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
1038const char kExperimentalCanvasFeaturesDescription[] =
1039 "Enables the use of experimental canvas features which are still in "
1040 "development.";
1041
1042const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
1043const char kExperimentalExtensionApisDescription[] =
1044 "Enables experimental extension APIs. Note that the extension gallery "
1045 "doesn't allow you to upload extensions that use experimental APIs.";
1046
Ian Clelland37a985d2018-05-04 02:43:131047const char kExperimentalProductivityFeaturesName[] =
1048 "Experimental Productivity Features";
1049const char kExperimentalProductivityFeaturesDescription[] =
1050 "Enable support for experimental developer productivity features, such as "
Hiroshige Hayashizaki3ee116af2019-03-05 10:11:221051 "built-in modules and policies for avoiding slow rendering.";
Ian Clelland37a985d2018-05-04 02:43:131052
Brett Wilsonf27ff602017-07-07 22:28:471053const char kExperimentalSecurityFeaturesName[] =
1054 "Potentially annoying security features";
1055const char kExperimentalSecurityFeaturesDescription[] =
1056 "Enables several security features that will likely break one or more "
1057 "pages that you visit on a daily basis. Strict mixed content checking, for "
1058 "example. And locking powerful features to secure contexts. This flag will "
1059 "probably annoy you.";
1060
1061const char kExperimentalWebPlatformFeaturesName[] =
1062 "Experimental Web Platform features";
1063const char kExperimentalWebPlatformFeaturesDescription[] =
1064 "Enables experimental Web Platform features that are in development.";
1065
1066const char kExtensionContentVerificationName[] =
1067 "Extension Content Verification";
1068const char kExtensionContentVerificationDescription[] =
1069 "This flag can be used to turn on verification that the contents of the "
1070 "files on disk for extensions from the webstore match what they're "
1071 "expected to be. This can be used to turn on this feature if it would not "
1072 "otherwise have been turned on, but cannot be used to turn it off (because "
1073 "this setting can be tampered with by malware).";
1074const char kExtensionContentVerificationBootstrap[] =
1075 "Bootstrap (get expected hashes, but do not enforce them)";
1076const char kExtensionContentVerificationEnforce[] =
1077 "Enforce (try to get hashes, and enforce them if successful)";
1078const char kExtensionContentVerificationEnforceStrict[] =
1079 "Enforce strict (hard fail if we can't get hashes)";
1080
Peter Boströma445353a2019-03-21 02:58:151081const char kExtensionsToolbarMenuName[] = "Extensions Toolbar Menu";
1082const char kExtensionsToolbarMenuDescription[] =
1083 "Enable a separate toolbar button and menu for extensions";
1084
Brett Wilsonf27ff602017-07-07 22:28:471085const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
1086const char kExtensionsOnChromeUrlsDescription[] =
1087 "Enables running extensions on chrome:// URLs, where extensions explicitly "
1088 "request this permission.";
galinapae72e152017-05-12 13:12:281089
Brett Wilsonecb80982017-07-12 20:34:511090const char kFeaturePolicyName[] = "Feature Policy";
1091const char kFeaturePolicyDescription[] =
1092 "Enables granting and removing access to features through the "
1093 "Feature-Policy HTTP header.";
vabr0215a8e2017-03-28 12:47:341094
Brett Wilsonecb80982017-07-12 20:34:511095const char kFontCacheScalingName[] = "FontCache scaling";
1096const char kFontCacheScalingDescription[] =
1097 "Reuse a cached font in the renderer to serve different sizes of font for "
1098 "faster layout.";
1099
1100const char kForceEffectiveConnectionTypeName[] =
1101 "Override effective connection type";
1102const char kForceEffectiveConnectionTypeDescription[] =
1103 "Overrides the effective connection type of the current connection "
Thanh Lea98f12f2017-12-18 19:35:301104 "returned by the network quality estimator. Slow 2G on Cellular returns "
1105 "Slow 2G when connected to a cellular network, and the actual estimate "
1106 "effective connection type when not on a cellular network. Previews are "
1107 "usually served on 2G networks.";
Brett Wilsonecb80982017-07-12 20:34:511108const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
1109const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
1110const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
Thanh Lea98f12f2017-12-18 19:35:301111const char kEffectiveConnectionTypeSlow2GOnCellularDescription[] =
1112 "Slow 2G On Cellular";
Brett Wilsonecb80982017-07-12 20:34:511113const char kEffectiveConnectionType2GDescription[] = "2G";
1114const char kEffectiveConnectionType3GDescription[] = "3G";
1115const char kEffectiveConnectionType4GDescription[] = "4G";
1116
1117const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
1118const char kFillOnAccountSelectDescription[] =
1119 "Filling of passwords when an account is explicitly selected by the user "
1120 "rather than autofilling credentials on page load.";
1121
jdoerrie11c5f4f2019-02-04 18:29:181122const char kFillOnAccountSelectHttpName[] =
1123 "Fill passwords on account selection on HTTP origins";
1124const char kFillOnAccountSelectHttpDescription[] =
1125 "Filling of passwords when an account is explicitly selected by the user "
1126 "rather than autofilling credentials on page load on HTTP origins.";
1127
Brett Wilsonecb80982017-07-12 20:34:511128const char kForceTextDirectionName[] = "Force text direction";
1129const char kForceTextDirectionDescription[] =
1130 "Explicitly force the per-character directionality of UI text to "
1131 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
1132 "direction of the character language.";
1133const char kForceDirectionLtr[] = "Left-to-right";
1134const char kForceDirectionRtl[] = "Right-to-left";
1135
1136const char kForceUiDirectionName[] = "Force UI direction";
1137const char kForceUiDirectionDescription[] =
1138 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
1139 "mode, overriding the default direction of the UI language.";
1140
Brett Wilsonecb80982017-07-12 20:34:511141const char kGpuRasterizationName[] = "GPU rasterization";
1142const char kGpuRasterizationDescription[] =
1143 "Use GPU to rasterize web content. Requires impl-side painting.";
Brett Wilson7b44537e2017-08-18 01:38:281144const char kForceGpuRasterization[] = "Force-enabled for all layers";
Brett Wilsonecb80982017-07-12 20:34:511145
Ioana Pandele1ed7ef72018-11-21 15:22:031146const char kGooglePasswordManagerName[] = "Google Password Manager UI";
1147const char kGooglePasswordManagerDescription[] =
1148 "Enables access to the Google Password Manager UI from Chrome.";
1149
Brett Wilsonecb80982017-07-12 20:34:511150const char kGoogleProfileInfoName[] = "Google profile name and icon";
1151const char kGoogleProfileInfoDescription[] =
1152 "Enables using Google information to populate the profile name and icon in "
1153 "the avatar menu.";
1154
Takumi Fujimotofb71e332018-03-31 14:04:081155const char kViewsCastDialogName[] = "Views Cast dialog";
1156const char kViewsCastDialogDescription[] =
manukaddd3c42019-04-09 21:20:591157 "Replace the WebUI Cast dialog with a Views toolkit dialog.";
Takumi Fujimotofb71e332018-03-31 14:04:081158
Gabrielle Paladoaebf7ca2019-01-16 07:07:061159const char kHandwritingGestureName[] = "Handwriting Gestures";
1160const char kHandwritingGestureDescription[] =
1161 "Enables handwriting gestures within the virtual keyboard";
1162
Tommy Steimel1aadd7b2019-01-18 19:39:421163const char kHardwareMediaKeyHandling[] = "Hardware Media Key Handling";
1164const char kHardwareMediaKeyHandlingDescription[] =
1165 "Enables using media keys to control the active media session. This "
1166 "requires MediaSessionService to be enabled too";
1167
Manu Cornet4a908de2018-04-09 04:32:271168const char kHideActiveAppsFromShelfName[] =
1169 "Hide running apps (that are not pinned) from the shelf";
1170const char kHideActiveAppsFromShelfDescription[] =
1171 "Save space in the shelf by hiding running apps (that are not pinned).";
Manu Cornete5f855b2018-03-13 03:35:251172
Brett Wilsonecb80982017-07-12 20:34:511173const char kHistoryRequiresUserGestureName[] =
1174 "New history entries require a user gesture.";
1175const char kHistoryRequiresUserGestureDescription[] =
1176 "Require a user gesture to add a history entry.";
Brett Wilsonecb80982017-07-12 20:34:511177
Ryan Landay4242dbc22018-04-04 01:47:331178const char kHorizontalTabSwitcherAndroidName[] =
1179 "Enable horizontal tab switcher";
1180const char kHorizontalTabSwitcherAndroidDescription[] =
1181 "Changes the layout of the Android tab switcher so tabs scroll "
1182 "horizontally instead of vertically.";
1183
Matt Simmons2048b2a2018-12-20 20:12:561184const char kTabSwitcherOnReturnName[] = "Enable tab switcher on return";
1185const char kTabSwitcherOnReturnDescription[] =
1186 "Enable tab switcher on return after specified time has elapsed";
1187
Brett Wilsonecb80982017-07-12 20:34:511188const char kHostedAppQuitNotificationName[] =
1189 "Quit notification for hosted apps";
1190const char kHostedAppQuitNotificationDescription[] =
1191 "Display a notification when quitting Chrome if hosted apps are currently "
1192 "running.";
1193
1194const char kHostedAppShimCreationName[] =
1195 "Creation of app shims for hosted apps on Mac";
1196const char kHostedAppShimCreationDescription[] =
1197 "Create app shims on Mac when creating a hosted app.";
1198
1199const char kIconNtpName[] = "Large icons on the New Tab page";
1200const char kIconNtpDescription[] =
1201 "Enable the experimental New Tab page using large icons.";
1202
1203const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
1204const char kIgnoreGpuBlacklistDescription[] =
1205 "Overrides the built-in software rendering list and enables "
1206 "GPU-acceleration on unsupported system configurations.";
1207
Ryan Sturm8c3dbc92018-06-26 19:22:371208const char kIgnorePreviewsBlacklistName[] = "Ignore Previews Blocklist";
Thanh Le5f090efa52017-12-27 22:39:441209const char kIgnorePreviewsBlacklistDescription[] =
Ryan Sturm8c3dbc92018-06-26 19:22:371210 "Ignore decisions made by the PreviewsBlockList";
Thanh Le5f090efa52017-12-27 22:39:441211
Alexandre Frechetted3e1b542018-12-13 14:40:501212const char kImprovedGeoLanguageDataName[] = "Improved Geo-language Data";
1213const char kImprovedGeoLanguageDataDescription[] =
1214 "Makes the GeoLanguageModel use higher quality, more refined ULP "
1215 "geo-language data.";
1216
Brett Wilsonecb80982017-07-12 20:34:511217const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
1218const char kInProductHelpDemoModeChoiceDescription[] =
1219 "Selects the In-Product Help demo mode.";
1220
1221const char kJavascriptHarmonyName[] = "Experimental JavaScript";
1222const char kJavascriptHarmonyDescription[] =
1223 "Enable web pages to use experimental JavaScript features.";
1224
1225const char kJavascriptHarmonyShippingName[] =
1226 "Latest stable JavaScript features";
1227const char kJavascriptHarmonyShippingDescription[] =
1228 "Some web pages use legacy or non-standard JavaScript extensions that may "
1229 "conflict with the latest JavaScript features. This flag allows disabling "
1230 "support of those features for compatibility with such pages.";
1231
Yutaka Hiranof7f2f632017-09-06 10:40:081232const char kKeepAliveRendererForKeepaliveRequestsName[] =
1233 "Keep a renderer alive for keepalive fetch requests";
1234const char kKeepAliveRendererForKeepaliveRequestsDescription[] =
1235 "Keep a render process alive when the process has a pending fetch request "
1236 "with `keepalive' specified.";
1237
Brett Wilsonecb80982017-07-12 20:34:511238const char kLcdTextName[] = "LCD text antialiasing";
1239const char kLcdTextDescription[] =
1240 "If disabled, text is rendered with grayscale antialiasing instead of LCD "
1241 "(subpixel) when doing accelerated compositing.";
1242
1243const char kLoadMediaRouterComponentExtensionName[] =
1244 "Load Media Router Component Extension";
1245const char kLoadMediaRouterComponentExtensionDescription[] =
1246 "Loads the Media Router component extension at startup.";
1247
Hazem Ashmawyf1cd7e42019-03-25 18:17:321248const char kLogJsConsoleMessagesName[] =
1249 "Log JS console messages in system logs";
1250const char kLogJsConsoleMessagesDescription[] =
1251 "Enable logging JS console messages in system logs, please note that they "
1252 "may contain PII.";
1253
Mustafa Emre Acer137dc8b2018-08-29 20:38:131254const char kLookalikeUrlNavigationSuggestionsName[] =
1255 "Navigation suggestions for lookalike URLs";
1256const char kLookalikeUrlNavigationSuggestionsDescription[] =
1257 "Enable navigation suggestions for URLs that are visually similar to "
1258 "popular domains or to domains with a site engagement score.";
1259
Brett Wilsonecb80982017-07-12 20:34:511260const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
1261const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
Brett Wilsonecb80982017-07-12 20:34:511262
spqchanb87755692018-04-05 00:46:091263const char kMediaRouterCastAllowAllIPsName[] =
1264 "Connect to Cast devices on all IP addresses";
1265const char kMediaRouterCastAllowAllIPsDescription[] =
1266 "Have the Media Router connect to Cast devices on all IP addresses, not "
Nick Harperd30507ca2018-08-16 20:24:311267 "just RFC1918/RFC4193 private addresses.";
spqchanb87755692018-04-05 00:46:091268
Brett Wilsonecb80982017-07-12 20:34:511269const char kMessageCenterNewStyleNotificationName[] = "New style notification";
1270const char kMessageCenterNewStyleNotificationDescription[] =
1271 "Enables the experiment style of material-design notification";
1272
Ehsan Karamadebb0f672019-03-22 19:48:391273const char kMimeHandlerViewInCrossProcessFrameName[] =
1274 "MimeHandlerView in cross-process frame";
1275const char kMimeHandlerViewInCrossProcessFrameDescription[] =
1276 "Loads the MimeHandlerView (the extension viewer for certain MIME types "
1277 "such as PDF) in a cross-process frame as opposed to a BrowserPlugin.";
1278
David Roger2183afb2019-02-21 14:19:151279const char kMobileIdentityConsistencyName[] = "Mobile identity consistency";
1280const char kMobileIdentityConsistencyDescription[] =
1281 "Enables stronger identity consistency on mobile";
1282
Marijn Kruisselbrinkca4bb5e2019-04-22 18:19:421283const char kNativeFileSystemAPIName[] = "Native File System API";
1284const char kNativeFileSystemAPIDescription[] =
1285 "Enables the experimental Native File System API, giving websites access "
1286 "to the native file system";
Marijn Kruisselbrinkfa0e1052019-03-05 22:32:551287
Brett Wilsonecb80982017-07-12 20:34:511288const char kNewAudioRenderingMixingStrategyName[] =
1289 "New audio rendering mixing strategy";
1290const char kNewAudioRenderingMixingStrategyDescription[] =
1291 "Use the new audio rendering mixing strategy.";
1292
1293const char kNewBookmarkAppsName[] = "The new bookmark app system";
1294const char kNewBookmarkAppsDescription[] =
1295 "Enables the new system for creating bookmark apps.";
1296
Vadym Doroshenkocd4ff782018-07-24 13:41:021297const char kNewPasswordFormParsingName[] =
1298 "New password form parsing for filling passwords";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241299const char kNewPasswordFormParsingDescription[] =
Vadym Doroshenkocd4ff782018-07-24 13:41:021300 "Replaces existing form parsing for filling in password manager with a new "
1301 "version, currently under development. WARNING: when enabled, Password "
1302 "Manager might stop working";
1303
1304const char kNewPasswordFormParsingForSavingName[] =
1305 "New password form parsing for saving passwords";
1306const char kNewPasswordFormParsingForSavingDescription[] =
1307 "Replaces existing form parsing for saving in password manager with a new "
1308 "version, currently under development. WARNING: when enabled, Password "
1309 "Manager might stop working";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241310
rbpotter62fe2c92019-03-26 22:01:291311const char kNewPrintPreviewLayoutName[] = "Enable New Print Preview UI Layout";
1312const char kNewPrintPreviewLayoutDescription[] =
1313 "If enabled, Print Preview will display a new UI layout.";
1314
CJ DiMeglio7b4a199f2017-11-30 01:26:501315const char kUseSurfaceLayerForVideoName[] =
1316 "Enable the use of SurfaceLayer objects for videos.";
1317const char kUseSurfaceLayerForVideoDescription[] =
1318 "Enable compositing onto a Surface instead of a VideoLayer "
1319 "for videos.";
Brett Wilsonecb80982017-07-12 20:34:511320
1321const char kNewUsbBackendName[] = "Enable new USB backend";
1322const char kNewUsbBackendDescription[] =
1323 "Enables the new experimental USB backend for Windows.";
vabr0215a8e2017-03-28 12:47:341324
Sonny Sasaka2d200432018-03-22 17:43:161325const char kNewblueName[] = "Newblue";
1326const char kNewblueDescription[] =
1327 "Enables the use of newblue Bluetooth daemon.";
1328
Peter Boström7df25c72018-12-12 06:40:191329const char kNewTabLoadingAnimation[] = "New tab-loading animation";
1330const char kNewTabLoadingAnimationDescription[] =
1331 "Enables a new look for the tab-loading animation.";
1332
Egor Pasko6fed3822018-05-30 10:33:141333const char kNostatePrefetchName[] = "NoState Prefetch";
vabr0215a8e2017-03-28 12:47:341334const char kNostatePrefetchDescription[] =
Elly Fong-Jonesf4c15772019-01-31 17:40:061335 "If enabled, pre-downloads resources to improve page load speed.";
vabr0215a8e2017-03-28 12:47:341336
Alex Newcomerd7b0cc42018-05-25 22:58:481337const char kNotificationIndicatorName[] = "Notification Indicators";
1338const char kNotificationIndicatorDescription[] =
1339 "Enable notification indicators, which appear on app icons when a "
1340 "notification is active. This will also enable notifications in context "
1341 "menus.";
1342
Brett Wilsonecb80982017-07-12 20:34:511343const char kNotificationsNativeFlagName[] = "Enable native notifications.";
1344const char kNotificationsNativeFlagDescription[] =
1345 "Enable support for using the native notification toasts and notification "
1346 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:341347
Valeriya Sinevich972ac122018-09-05 07:33:191348const char kUseMultiloginEndpointName[] = "Use Multilogin endpoint.";
1349const char kUseMultiloginEndpointDescription[] =
1350 "Use Gaia OAuth multilogin for identity consistency.";
1351
Zentaro Kavanaghbad511c2017-10-18 22:29:001352#if defined(OS_POSIX)
1353const char kNtlmV2EnabledName[] = "Enable NTLMv2 Authentication";
1354const char kNtlmV2EnabledDescription[] =
1355 "Enable NTLMv2 HTTP Authentication. This disables NTLMv1 support.";
1356#endif
1357
Brett Wilsonecb80982017-07-12 20:34:511358const char kOfferStoreUnmaskedWalletCardsName[] =
1359 "Google Payments card saving checkbox";
1360const char kOfferStoreUnmaskedWalletCardsDescription[] =
1361 "Show the checkbox to offer local saving of a credit card downloaded from "
1362 "the server.";
1363
1364const char kOfflineAutoReloadName[] = "Offline Auto-Reload Mode";
1365const char kOfflineAutoReloadDescription[] =
1366 "Pages that fail to load while the browser is offline will be "
1367 "auto-reloaded when the browser is online again.";
1368
1369const char kOfflineAutoReloadVisibleOnlyName[] =
1370 "Only Auto-Reload Visible Tabs";
1371const char kOfflineAutoReloadVisibleOnlyDescription[] =
1372 "Pages that fail to load while the browser is offline will only be "
1373 "auto-reloaded if their tab is visible.";
1374
Tommy C. Lia6912d7d2019-04-24 21:27:461375const char kOmniboxAlternateMatchDescriptionSeparatorName[] =
1376 "Omnibox Alternate Match Description Separator";
1377const char kOmniboxAlternateMatchDescriptionSeparatorDescription[] =
1378 "Shows an alternate separator before the description of omnibox matches. "
1379 "In English, this changes the separator from '-' to '|'.";
1380
Brett Wilsonecb80982017-07-12 20:34:511381const char kOmniboxDisplayTitleForCurrentUrlName[] =
1382 "Include title for the current URL in the omnibox";
1383const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
1384 "In the event that the omnibox provides suggestions on-focus, the URL of "
1385 "the current page is provided as the first suggestion without a title. "
1386 "Enabling this flag causes the title to be displayed.";
1387
manukaddd3c42019-04-09 21:20:591388const char kOmniboxLocalEntitySuggestionsName[] =
1389 "Omnibox Local Entity Suggestions";
1390const char kOmniboxLocalEntitySuggestionsDescription[] =
1391 "Enables location specific suggestions displayed with images and enhanced "
1392 "layout, similar to #omnibox-rich-entity-suggestions. Enabling this feature"
1393 "will also enable #omnibox-rich-entity-suggestions.";
1394
manuk2e55a7b2019-02-12 20:08:231395const char kOmniboxMaterialDesignWeatherIconsName[] =
1396 "Omnibox Material Design Weather Icons";
1397const char kOmniboxMaterialDesignWeatherIconsDescription[] =
1398 "Use material design weather icons in the omnibox when displaying weather "
1399 "answers.";
1400
Tomasz Wiszkowskic87dff12019-01-15 02:57:511401const char kOmniboxNewAnswerLayoutName[] = "Omnibox new answer layout";
1402const char kOmniboxNewAnswerLayoutDescription[] =
1403 "Modernize omnibox answers using an enhanced layout with larger icons.";
1404
Tomasz Wiszkowskic7fd5bed2019-02-11 17:33:231405const char kOmniboxRichEntitySuggestionsName[] =
1406 "Omnibox rich entity suggestions";
1407const char kOmniboxRichEntitySuggestionsDescription[] =
1408 "Display entity suggestions using images and an enhanced layout; showing "
manukaddd3c42019-04-09 21:20:591409 "more context and descriptive text about the entity.";
Tomasz Wiszkowskic7fd5bed2019-02-11 17:33:231410
Benoit Lizeab08362c2017-07-19 14:50:541411const char kOmniboxSpareRendererName[] =
1412 "Start spare renderer on omnibox focus";
1413const char kOmniboxSpareRendererDescription[] =
1414 "When the omnibox is focused, start an empty spare renderer. This can "
1415 "speed up the load of the navigation from the omnibox.";
1416
manuk3c0e70a2019-02-21 16:30:551417const char kOmniboxUIBlueSearchLoopAndSearchQueryName[] =
1418 "Omnibox UI Blue Search Loop and Search Query";
1419const char kOmniboxUIBlueSearchLoopAndSearchQueryDescription[] =
1420 "Color the generic search icon and search terms blue.";
1421
manuk4451d032019-02-22 17:24:401422const char kOmniboxUIBlueTitlesAndGrayUrlsOnPageSuggestionsName[] =
1423 "Omnibox UI Blue Titles And Gray Urls On Page Suggestions";
1424const char kOmniboxUIBlueTitlesAndGrayUrlsOnPageSuggestionsDescription[] =
1425 "Displays navigation suggestions with blue titles and gray URLs.";
1426
1427const char kOmniboxUIBlueTitlesOnPageSuggestionsName[] =
1428 "Omnibox UI Blue Titles On Page Suggestions";
1429const char kOmniboxUIBlueTitlesOnPageSuggestionsDescription[] =
1430 "Displays navigation suggestions with blue titles.";
1431
manuk59fd5a62019-02-27 21:14:091432const char kOmniboxUIBoldUserTextOnSearchSuggestionsName[] =
1433 "Omnibox UI Bold User Text On Search Suggestions";
1434const char kOmniboxUIBoldUserTextOnSearchSuggestionsDescription[] =
1435 "Bolds the user text instead of autocomplete text for search suggestions.";
1436
Tommy C. Lib5bf6152019-04-23 22:13:161437const char kOmniboxUICuesForSearchHistoryMatchesName[] =
1438 "Omnibox UI Cues to Differentiate Search History Matches";
1439const char kOmniboxUICuesForSearchHistoryMatchesDescription[] =
1440 "Shows UI cues in the omnibox to differentiate Search History matches from "
1441 "other search suggestions provided by the default search provider. This "
1442 "feature is a narrow subset of Omnibox Suggestion Transparency Options.";
1443
Tommy C. Lie4194b732018-09-28 22:21:511444const char kOmniboxUIHideSteadyStateUrlSchemeName[] =
1445 "Omnibox UI Hide Steady-State URL Scheme";
1446const char kOmniboxUIHideSteadyStateUrlSchemeDescription[] =
1447 "In the omnibox, hide the scheme from steady state displayed URLs. It is "
Tommy C. Libef94ee02018-10-17 19:56:361448 "restored during editing.";
Tommy C. Lie4194b732018-09-28 22:21:511449
Tommy C. Lib20aec72018-11-19 21:38:231450const char kOmniboxUIOneClickUnelideName[] = "Omnibox UI One Click Unelide";
1451const char kOmniboxUIOneClickUnelideDescription[] =
1452 "In the omnibox, undo all unelisions with a single click or focus action.";
1453
Tommy C. Lie4194b732018-09-28 22:21:511454const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsName[] =
1455 "Omnibox UI Hide Steady-State URL Trivial Subdomains";
1456const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsDescription[] =
1457 "In the omnibox, hide trivial subdomains from steady state displayed URLs. "
Tommy C. Libef94ee02018-10-17 19:56:361458 "Hidden portions are restored during editing.";
1459
1460const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefName[] =
1461 "Omnibox UI Hide Steady-State URL Path, Query, and Ref";
1462const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefDescription[] =
1463 "In the omnibox, hide the path, query and ref from steady state displayed "
1464 "URLs. Hidden portions are restored during editing.";
Tommy C. Lid79d4402017-12-22 22:49:121465
Brett Wilsonecb80982017-07-12 20:34:511466const char kOmniboxUIMaxAutocompleteMatchesName[] =
1467 "Omnibox UI Max Autocomplete Matches";
Brett Wilsonecb80982017-07-12 20:34:511468const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
1469 "Changes the maximum number of autocomplete matches displayed in the "
1470 "Omnibox UI.";
1471
Dan Beamc9b97fe82019-04-26 02:56:081472const char kOmniboxUIShowPlaceholderWhenCaretShowingName[] =
1473 "Omnibox UI Show Placeholder When Caret Showing";
1474const char kOmniboxUIShowPlaceholderWhenCaretShowingDescription[] =
1475 "Shows the \"Search Google or type a URL\" placeholder text in the "
1476 "omnibox when it's focused / the caret cursor is showing.";
1477
manuk4f56e9fc2019-02-19 18:04:511478const char kOmniboxUIShowSuffixOnAllSearchSuggestionsName[] =
1479 "Omnibox UI Show Suffix On All Search Suggestions";
1480const char kOmniboxUIShowSuffixOnAllSearchSuggestionsDescription[] =
1481 "Shows the search suffix (e.g. \" - Google Search\") on all search "
1482 "suggestions in the omnibox.";
1483
Tommy C. Liba4e66ef2019-02-12 21:33:281484const char kOmniboxUIShowSuggestionFaviconsName[] =
1485 "Omnibox UI Show Suggestion Favicons";
1486const char kOmniboxUIShowSuggestionFaviconsDescription[] =
1487 "Shows favicons instead of generic vector icons for URL suggestions in the "
1488 "Omnibox dropdown.";
1489
Justin Donnelly65c9e8b2017-10-01 05:15:011490const char kOmniboxUISwapTitleAndUrlName[] = "Omnibox UI Swap Title and URL";
1491const char kOmniboxUISwapTitleAndUrlDescription[] =
1492 "In the omnibox dropdown, shows titles before URLs when both are "
1493 "available.";
1494
manuk0187cfa2019-02-27 21:23:241495const char kOmniboxUIUnboldSuggestionTextName[] =
1496 "Omnibox UI Unbold Suggestion Text";
1497const char kOmniboxUIUnboldSuggestionTextDescription[] =
1498 "Displays search suggestions without bolding.";
1499
manuk12527c802019-02-19 16:38:301500const char kOmniboxUIUseGenericSearchEngineIconName[] =
1501 "Omnibox UI Use Generic Search Engine Icon";
1502const char kOmniboxUIUseGenericSearchEngineIconDescription[] =
1503 "In the omnibox and NTP, shows a generic magnifying glass icon instead of "
1504 "the Search Provider favicon.";
1505
Tommy C. Lia737d3e82019-02-13 23:06:141506const char kOmniboxUIVerticalMarginName[] = "Omnibox UI Vertical Margin";
1507const char kOmniboxUIVerticalMarginDescription[] =
1508 "Changes the vertical margin in the Omnibox UI.";
1509
manukce2cdcf72019-02-26 15:59:291510const char kOmniboxUIWhiteBackgroundOnBlurName[] =
1511 "Omnibox UI White Background On Blur";
1512const char kOmniboxUIWhiteBackgroundOnBlurDescription[] =
manuk59fd5a62019-02-27 21:14:091513 "Set the omnibox background white when it's unfocused";
manukce2cdcf72019-02-26 15:59:291514
Tomasz Wiszkowski947f6d0d2019-03-15 22:27:251515const char kOmniboxZeroSuggestionsOnNTPName[] =
1516 "Omnibox Zero Suggestions on New Tab Page";
1517const char kOmniboxZeroSuggestionsOnNTPDescription[] =
1518 "Offer suggestions when URL bar (omnibox) is focused.";
1519
Vadym Doroshenko6b8f64d2018-11-26 15:35:391520const char kOnlyNewPasswordFormParsingName[] =
1521 "Use only new password form parsing";
1522const char kOnlyNewPasswordFormParsingDescription[] =
1523 "The old password form parsing is disabled";
1524
Mark Lieufaa1b762019-01-08 19:37:281525const char kOnTheFlyMhtmlHashComputationName[] =
1526 "On-The-Fly MHTML Hash Computation";
1527const char kOnTheFlyMhtmlHashComputationDescription[] =
1528 "Save MHTML files to the target location and calculate their content "
1529 "digests in one step.";
1530
Adrienne Walkerc87477e2018-06-06 22:28:211531const char kOopRasterizationName[] = "Out of process rasterization";
1532const char kOopRasterizationDescription[] =
1533 "Perform Ganesh raster in the GPU Process instead of the renderer. "
1534 "Must also enable GPU rasterization";
1535
Brett Wilsonecb80982017-07-12 20:34:511536const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
1537const char kOverlayScrollbarsDescription[] =
1538 "Enable the experimental overlay scrollbars implementation. You must also "
1539 "enable threaded compositing to have the scrollbars animate.";
1540
chaopenge8aa016b2017-08-24 15:20:191541const char kOverlayScrollbarsFlashAfterAnyScrollUpdateName[] =
1542 "Flash Overlay Scrollbars After Any Scroll Update";
1543const char kOverlayScrollbarsFlashAfterAnyScrollUpdateDescription[] =
1544 "Flash Overlay Scrollbars After any scroll update happends in page. You"
1545 " must also enable Overlay Scrollbars.";
1546
chaopeng343678022017-08-24 18:45:001547const char kOverlayScrollbarsFlashWhenMouseEnterName[] =
1548 "Flash Overlay Scrollbars When Mouse Enter";
1549const char kOverlayScrollbarsFlashWhenMouseEnterDescription[] =
1550 "Flash Overlay Scrollbars When Mouse Enter a scrollable area. You must also"
1551 " enable Overlay Scrollbars.";
1552
Daniele Castagna74ddb9c2018-06-21 22:59:021553const char kOverlayStrategiesName[] = "Select HW overlay strategies";
1554const char kOverlayStrategiesDescription[] =
1555 "Select strategies used to promote quads to HW overlays.";
1556const char kOverlayStrategiesDefault[] = "Default";
1557const char kOverlayStrategiesNone[] = "None";
1558const char kOverlayStrategiesUnoccludedFullscreen[] =
1559 "Unoccluded fullscreen buffers (single-fullscreen)";
1560const char kOverlayStrategiesUnoccluded[] =
1561 "Unoccluded buffers (single-fullscreen,single-on-top)";
1562const char kOverlayStrategiesOccludedAndUnoccluded[] =
1563 "Occluded and unoccluded buffers "
1564 "(single-fullscreen,single-on-top,underlay)";
1565
Claudio Magni81326f92017-09-01 05:21:181566const char kUseNewAcceptLanguageHeaderName[] = "Use new Accept-Language header";
1567const char kUseNewAcceptLanguageHeaderDescription[] =
1568 "Adds the base language code after other corresponding language+region "
1569 "codes. This ensures that users receive content in their preferred "
1570 "language.";
1571
Brett Wilsonecb80982017-07-12 20:34:511572const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
1573const char kOverscrollHistoryNavigationDescription[] =
Mohsen Izadi88b392a2018-02-15 06:57:481574 "History navigation in response to horizontal overscroll.";
Brett Wilsonecb80982017-07-12 20:34:511575
1576const char kOverscrollStartThresholdName[] = "Overscroll start threshold";
1577const char kOverscrollStartThresholdDescription[] =
1578 "Changes overscroll start threshold relative to the default value.";
1579const char kOverscrollStartThreshold133Percent[] = "133%";
1580const char kOverscrollStartThreshold166Percent[] = "166%";
1581const char kOverscrollStartThreshold200Percent[] = "200%";
1582
chaopenge2b6e5f2018-05-08 16:40:451583const char kTouchpadOverscrollHistoryNavigationName[] =
1584 "Overscroll history navigation on Touchpad";
1585const char kTouchpadOverscrollHistoryNavigationDescription[] =
1586 "Allows swipe left/right from touchpad change browser navigation.";
1587
Xing Liu5400a002017-09-15 21:48:291588const char kParallelDownloadingName[] = "Parallel downloading";
1589const char kParallelDownloadingDescription[] =
Yannic Bonenbergera32f9902017-11-20 18:47:061590 "Enable parallel downloading to accelerate download speed.";
Xing Liu5400a002017-09-15 21:48:291591
Brett Wilsonecb80982017-07-12 20:34:511592const char kPassiveEventListenerDefaultName[] =
1593 "Passive Event Listener Override";
1594const char kPassiveEventListenerDefaultDescription[] =
1595 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
1596 "haven't requested otherwise) to be treated as passive. This will break "
1597 "touch/wheel behavior on some websites but is useful for demonstrating the "
1598 "potential performance benefits of adopting passive event listeners.";
1599const char kPassiveEventListenerTrue[] = "True (when unspecified)";
1600const char kPassiveEventListenerForceAllTrue[] = "Force All True";
1601
1602const char kPassiveEventListenersDueToFlingName[] =
1603 "Touch Event Listeners Passive Default During Fling";
1604const char kPassiveEventListenersDueToFlingDescription[] =
1605 "Forces touchstart, and first touchmove per scroll event listeners during "
1606 "fling to be treated as passive.";
1607
1608const char kPassiveDocumentEventListenersName[] =
1609 "Document Level Event Listeners Passive Default";
1610const char kPassiveDocumentEventListenersDescription[] =
1611 "Forces touchstart, and touchmove event listeners on document level "
1612 "targets (which haven't requested otherwise) to be treated as passive.";
1613
Sahel Sharify7400e882018-08-13 17:13:211614const char kPassiveDocumentWheelEventListenersName[] =
1615 "Document Level Wheel Event Listeners Passive Default";
1616const char kPassiveDocumentWheelEventListenersDescription[] =
1617 "Forces wheel, and mousewheel event listeners on document level targets "
1618 "(which haven't requested otherwise) to be treated as passive.";
1619
Vaclav Brozekd8a3f542017-11-16 14:21:131620const char kPasswordImportName[] = "Password import";
1621const char kPasswordImportDescription[] =
1622 "Import functionality in password settings.";
Brett Wilsonecb80982017-07-12 20:34:511623
Friedrich Horschige6c27742018-04-23 17:13:411624const char kPasswordsKeyboardAccessoryName[] =
1625 "Add password-related functions to keyboard accessory";
1626const char kPasswordsKeyboardAccessoryDescription[] =
1627 "Adds password generation button and toggle for the passwords bottom sheet "
1628 "to the keyboard accessory. Replaces password generation popups.";
1629
Christos Froussios6e060c42018-07-31 16:17:191630const char kPasswordsMigrateLinuxToLoginDBName[] =
1631 "Migrate passwords to \"Login Data\"";
1632const char kPasswordsMigrateLinuxToLoginDBDescription[] =
Christos Froussiose34c38a2018-09-04 14:27:591633 "Performs a one-off irreversible migration of passwords from the "
Christos Froussios6e060c42018-07-31 16:17:191634 "gnome-keyring or kwallet into the profile directory.";
1635
Rouslan Solomakhinded840112018-11-02 13:27:101636const char kPerMethodCanMakePaymentQuotaName[] =
1637 "Per-method canMakePayment() quota.";
1638const char kPerMethodCanMakePaymentQuotaDescription[] =
1639 "Allow calling canMakePayment() for different payment methods, as long as "
1640 "method-specific parameters remain unchanged.";
1641
Doug Arnett620ff542018-02-06 17:54:221642const char kPreviewsAllowedName[] = "Previews Allowed";
1643const char kPreviewsAllowedDescription[] =
1644 "Allows previews to be shown subject to specific preview types being "
1645 "enabled and the client experiencing specific triggering conditions. "
1646 "May be used as a kill-switch to turn off all potential preview types.";
1647
Brett Wilsonecb80982017-07-12 20:34:511648const char kPrintPdfAsImageName[] = "Print Pdf as Image";
1649const char kPrintPdfAsImageDescription[] =
1650 "If enabled, an option to print PDF files as images will be available in "
1651 "print preview.";
1652
1653const char kPrintPreviewRegisterPromosName[] =
1654 "Print Preview Registration Promos";
1655const char kPrintPreviewRegisterPromosDescription[] =
1656 "Enable registering unregistered cloud printers from print preview.";
1657
Mohsen Izadi93faac12017-07-29 04:45:151658const char kPullToRefreshName[] = "Pull-to-refresh gesture";
1659const char kPullToRefreshDescription[] =
1660 "Pull-to-refresh gesture in response to vertical overscroll.";
Mohsen Izadi8c59ba52018-04-12 18:52:011661const char kPullToRefreshEnabledTouchscreen[] = "Enabled for touchscreen only";
Mohsen Izadi93faac12017-07-29 04:45:151662
Troy Hildebrandt7228ad12018-02-23 21:18:241663const char kQueryInOmniboxName[] = "Query in Omnibox";
1664const char kQueryInOmniboxDescription[] =
1665 "Only display query terms in the omnibox when viewing a search results "
1666 "page.";
1667
Brett Wilsonecb80982017-07-12 20:34:511668const char kQuicName[] = "Experimental QUIC protocol";
1669const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1670
1671const char kReducedReferrerGranularityName[] =
1672 "Reduce default 'referer' header granularity.";
1673const char kReducedReferrerGranularityDescription[] =
1674 "If a page hasn't set an explicit referrer policy, setting this flag will "
1675 "reduce the amount of information in the 'referer' header for cross-origin "
1676 "requests.";
1677
Christian Dullweber3cc579a22018-09-11 10:54:441678const char kRewriteLevelDBOnDeletionName[] =
1679 "Rewrite LevelDB instances after full deletions";
1680const char kRewriteLevelDBOnDeletionDescription[] =
1681 "Rewrite LevelDB instances to remove traces of deleted data from disk.";
1682
Yutaka Hirano4c0f2f5d452017-11-17 04:24:351683const char kRendererSideResourceSchedulerName[] =
1684 "Renderer side ResourceScheduler";
1685const char kRendererSideResourceSchedulerDescription[] =
1686 "Migrate some ResourceScheduler functionalities to renderer";
1687
Brett Wilsonecb80982017-07-12 20:34:511688const char kRequestTabletSiteName[] =
1689 "Request tablet site option in the settings menu";
1690const char kRequestTabletSiteDescription[] =
1691 "Allows the user to request tablet site. Web content is often optimized "
1692 "for tablet devices. When this option is selected the user agent string is "
1693 "changed to indicate a tablet device. Web content optimized for tablets is "
1694 "received there after for the current tab.";
1695
Kinuko Yasuda33955082018-06-19 10:14:591696const char kResourceLoadSchedulerName[] = "Enable resource load throttling";
Brett Wilsonecb80982017-07-12 20:34:511697const char kResourceLoadSchedulerDescription[] =
Kinuko Yasuda33955082018-06-19 10:14:591698 "Uses the resource load scheduler in blink to throttle resource load "
1699 "requests.";
Brett Wilsonecb80982017-07-12 20:34:511700
Daniel Rubery91874e32019-01-10 22:12:341701const char kSafeBrowsingUseAPDownloadVerdictsName[] =
1702 "Request Advanced Protection verdicts when inspecting downloads";
1703const char kSafeBrowsingUseAPDownloadVerdictsDescription[] =
1704 "If enabled, download protection will request Advanced Protection "
1705 "verdicts from Safe Browsing. These will provide stronger protections "
1706 "from files Safe Browsing is unsure about.";
1707
Brett Wilsonecb80982017-07-12 20:34:511708const char kSafeSearchUrlReportingName[] = "SafeSearch URLs reporting.";
1709const char kSafeSearchUrlReportingDescription[] =
1710 "If enabled, inappropriate URLs can be reported back to SafeSearch.";
1711
Lily Chene0d3ac92019-04-22 16:55:531712const char kSameSiteByDefaultCookiesName[] = "SameSite by default cookies";
1713const char kSameSiteByDefaultCookiesDescription[] =
1714 "Treat cookies that don't specify a SameSite attribute as if they were "
1715 "SameSite=Lax. Sites must specify SameSite=None in order to enable "
1716 "third-party usage.";
1717
Alexei Filippov98772752018-01-27 08:26:521718const char kSamplingHeapProfilerName[] = "Native memory sampling profiler.";
1719const char kSamplingHeapProfilerDescription[] =
1720 "Enables native memory sampling profiler with specified rate in KiB. "
1721 "If sampling rate is not provided the default value of 128 KiB is used.";
1722
Brett Wilsonecb80982017-07-12 20:34:511723const char kSaveasMenuLabelExperimentName[] =
1724 "Switch 'Save as' menu labels to 'Download'";
1725const char kSaveasMenuLabelExperimentDescription[] =
1726 "Enables an experiment to switch menu labels that use 'Save as...' to "
1727 "'Download'.";
1728
Charlene Yan0ccd7f52019-04-12 23:20:591729const char kScrollableTabStripName[] = "Scrollable TabStrip";
1730const char kScrollableTabStripDescription[] =
1731 "Allows users to access tabs by scrolling when they no longer fit in the "
1732 "tabstrip.";
1733
Sébastien Séguin-Gagnon30481922019-04-24 21:31:001734const char kSendTabToSelfBroadcastName[] = "Send tab to self broadcast";
1735const char kSendTabToSelfBroadcastDescription[] =
1736 "Allows users to broadcast the tab they send to all of their devices "
1737 "instead of targetting only one device.";
1738
Jeffrey Cohene49cc59c2018-10-23 16:27:281739const char kSendTabToSelfName[] = "Send tab to self";
1740const char kSendTabToSelfDescription[] =
Tanya Gupta035a9e202019-04-08 20:01:331741 "Allows users to receive tabs from other synced devices, in order to "
1742 "easily transition those tabs to this device. This enables the sync "
1743 "infrastructure for this feature.";
Jeffrey Cohene49cc59c2018-10-23 16:27:281744
Tanya Gupta035a9e202019-04-08 20:01:331745const char kSendTabToSelfShowSendingUIName[] =
1746 "Send tab to self show sending UI";
1747const char kSendTabToSelfShowSendingUIDescription[] =
1748 "Allows users to send tabs to other synced devices by accessing the "
1749 "sending user interface. Requires Send tab to self to also be enabled";
Jeffrey Cohen9f3e6092019-03-21 21:55:011750
Travis Skare885f8ad2019-04-25 21:33:371751const char kSendTabToSelfWhenSignedInName[] =
1752 "Send tab to self: enable use when signed-in regardless of sync state";
1753const char kSendTabToSelfWhenSignedInDescription[] =
1754 "Allows use of the send-tab-to-self feature for users who are signed-in "
1755 "but not necessarily syncing. The tab-share data is thus ephemeral, "
1756 "rather than persistent sync data.";
1757
momohattfc352292018-08-29 05:12:361758const char kServiceWorkerImportedScriptUpdateCheckName[] =
1759 "Enable update check for service worker importScripts() resources";
1760const char kServiceWorkerImportedScriptUpdateCheckDescription[] =
1761 "Extend byte-for-byte update check for scripts that are imported by the "
1762 "service worker script via importScripts().";
1763
Azeem Arshad3b1ef73122018-08-30 02:04:151764const char kServiceWorkerLongRunningMessageName[] =
1765 "Service worker long running message dispatch.";
1766const char kServiceWorkerLongRunningMessageDescription[] =
1767 "Enables long running message dispatch method for service workers. "
1768 "Messages sent with this method do not timeout, allowing the service "
1769 "worker to run indefinitely.";
1770
Chris Hamiltonb9612e262019-02-12 21:12:061771const char kSessionRestorePrioritizesBackgroundUseCasesName[] =
1772 "Session restore prioritizes background use cases.";
1773const char kSessionRestorePrioritizesBackgroundUseCasesDescription[] =
1774 "When enabled session restore logic will prioritize sites that make use of "
1775 "background communication mechanisms (favicon and tab title switches, "
1776 "notifications, etc) over sites that do not.";
1777
Brett Wilsonecb80982017-07-12 20:34:511778const char kSettingsWindowName[] = "Show settings in a window";
1779const char kSettingsWindowDescription[] =
1780 "Settings will be shown in a dedicated window instead of as a browser tab.";
1781
Manu Cornetd7ef7c52018-05-01 22:08:231782const char kShelfHoverPreviewsName[] =
1783 "Show previews of running apps when hovering over the shelf.";
1784const char kShelfHoverPreviewsDescription[] =
1785 "Shows previews of the open windows for a given running app when hovering "
1786 "over the shelf.";
1787
Naoki Fukino008a0022018-05-23 18:33:001788const char kShowAndroidFilesInFilesAppName[] =
1789 "Show Android files in Files app";
1790const char kShowAndroidFilesInFilesAppDescription[] =
1791 "Show Android files in Files app if Android is enabled on the device.";
1792
Brett Wilsonecb80982017-07-12 20:34:511793const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
1794const char kShowAutofillSignaturesDescription[] =
Maxim Kolosovskiye66f8cb2018-03-23 10:25:381795 "Annotates web forms with Autofill signatures as HTML attributes. Also "
1796 "marks password fields suitable for password generation.";
Brett Wilsonecb80982017-07-12 20:34:511797
1798const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
1799const char kShowAutofillTypePredictionsDescription[] =
1800 "Annotates web forms with Autofill field type predictions as placeholder "
1801 "text.";
1802
Jonathan Backer93610a82019-03-27 14:02:381803const char kSkiaRendererName[] = "Skia API for OOP-D compositing";
1804const char kSkiaRendererDescription[] =
1805 "If enabled, the display compositor will use Skia as the graphics API "
1806 "instead of OpenGL ES. Requires Viz Display Compositor (OOP-D).";
1807
Shivani Sharma2d5b4b6b2019-01-08 16:07:161808const char kHistoryManipulationIntervention[] =
1809 "History Manipulation Intervention";
1810const char kHistoryManipulationInterventionDescription[] =
1811 "If a page does a client side redirect or adds to the history without a "
1812 "user gesture, then skip it on back/forward UI.";
1813
Carlos IL89128732018-04-03 17:00:251814const char kSupervisedUserCommittedInterstitialsName[] =
1815 "Enable Supervised User Committed Interstitials";
1816const char kSupervisedUserCommittedInterstitialsDescription[] =
1817 "Use committed error pages instead of transient navigation entries for "
1818 "supervised user interstitials";
1819
Brett Wilsonecb80982017-07-12 20:34:511820const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1821const char kSilentDebuggerExtensionApiDescription[] =
1822 "Do not show the infobar when an extension attaches to a page via "
1823 "chrome.debugger API. This is required to debug extension background "
1824 "pages.";
1825
Christopher Thompson75ff845d2018-02-01 20:12:461826const char kSimplifyHttpsIndicatorName[] = "Simplify HTTPS indicator UI";
1827const char kSimplifyHttpsIndicatorDescription[] =
1828 "Change the UI treatment for HTTPS pages.";
1829
Lukasz Anforowiczd2e16e62019-03-28 19:06:591830const char kIsolateOriginsName[] = "Isolate additional origins";
1831const char kIsolateOriginsDescription[] =
1832 "Requires dedicated processes for an additional set of origins, "
1833 "specified as a comma-separated list.";
1834
Alan Wink7c1b2ae22019-04-03 19:18:061835const char kKidsManagementUrlClassificationName[] =
1836 "KidsMangement Url Classification";
1837const char kKidsManagementUrlClassificationDescription[] =
1838 "Uses KidsManagementService to classify URLs for Kid Accounts.";
1839
Lukasz Anforowicz738a88d2018-11-05 19:19:341840const char kSiteIsolationOptOutName[] = "Disable site isolation";
1841const char kSiteIsolationOptOutDescription[] =
1842 "Disables site isolation "
Nick Carter855bc492018-03-10 00:44:571843 "(SitePerProcess, IsolateOrigins, etc). Intended for diagnosing bugs that "
1844 "may be due to out-of-process iframes. Opt-out has no effect if site "
Lukasz Anforowicz42840422018-11-05 21:49:221845 "isolation is force-enabled using a command line switch or using an "
1846 "enterprise policy. "
1847 "Caution: this disables important mitigations for the Spectre CPU "
Nick Carter855bc492018-03-10 00:44:571848 "vulnerability affecting most computers.";
Lukasz Anforowicz738a88d2018-11-05 19:19:341849const char kSiteIsolationOptOutChoiceDefault[] = "Default";
1850const char kSiteIsolationOptOutChoiceOptOut[] = "Disabled (not recommended)";
Brett Wilsonecb80982017-07-12 20:34:511851
Pattideade7972018-04-27 02:59:401852const char kSiteSettings[] = "Site settings";
Brett Wilsonecb80982017-07-12 20:34:511853const char kSiteSettingsDescription[] =
Pattideade7972018-04-27 02:59:401854 "Add the All Sites list to Site Settings.";
Brett Wilsonecb80982017-07-12 20:34:511855
Brett Wilsonecb80982017-07-12 20:34:511856const char kSmoothScrollingName[] = "Smooth Scrolling";
1857const char kSmoothScrollingDescription[] =
1858 "Animate smoothly when scrolling page content.";
1859
Wei-Yin Chen (陳威尹)c12a30502019-04-24 20:54:421860const char kSoleIntegrationName[] = "Sole integration";
1861const char kSoleIntegrationDescription[] =
1862 "Enable Sole integration for browser customization. You must restart "
1863 "the browser twice for changes to take effect.";
1864
Justin Donnelly4e448cb2017-07-07 21:32:131865const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
1866 "Enable speculative start of a service worker when a search is predicted.";
Justin Donnelly4e448cb2017-07-07 21:32:131867const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
1868 "If enabled, when the user enters text in the omnibox that looks like a "
1869 "a query, any service worker associated with the search engine the query "
1870 "will be sent to is started early.";
1871
Carlos ILe5fa0a12018-08-03 16:08:321872const char kSSLCommittedInterstitialsName[] = "Committed Interstitials";
1873const char kSSLCommittedInterstitialsDescription[] =
1874 "Use committed error pages instead of transient navigation entries "
1875 "for SSL interstitial error pages (i.e. certificate errors).";
1876
Shubhie Panickerfaf082ed2018-01-03 04:49:151877const char kStopInBackgroundName[] = "Stop in background";
1878const char kStopInBackgroundDescription[] =
1879 "Stop scheduler task queues, in the background, "
Shubhie Panicker56c99a22018-03-21 00:22:281880 " after a grace period.";
Shubhie Panickerfaf082ed2018-01-03 04:49:151881
Shubhie Panicker56c99a22018-03-21 00:22:281882const char kStopNonTimersInBackgroundName[] =
1883 "Stop non-timer task queues background";
1884const char kStopNonTimersInBackgroundDescription[] =
1885 "Stop non-timer task queues, in the background, "
1886 "after a grace period.";
1887
Brett Wilsonecb80982017-07-12 20:34:511888const char kSuggestionsWithSubStringMatchName[] =
1889 "Substring matching for Autofill suggestions";
1890const char kSuggestionsWithSubStringMatchDescription[] =
1891 "Match Autofill suggestions based on substrings (token prefixes) rather "
1892 "than just prefixes.";
vabr0215a8e2017-03-28 12:47:341893
Marc Treib4bd95e72018-08-30 06:30:581894const char kSyncSupportSecondaryAccountName[] =
1895 "Support secondary accounts for Sync standalone transport";
1896const char kSyncSupportSecondaryAccountDescription[] =
1897 "If enabled, allows Chrome Sync to start in standalone transport mode for "
1898 "a signed-in account that has not been chosen as Chrome's primary account. "
1899 "This only has an effect if sync-standalone-transport is also enabled.";
1900
Jan Krcal2ff23f7c2018-09-04 16:16:131901const char kSyncUSSAutofillProfileName[] = "Enable USS for autofill profile";
1902const char kSyncUSSAutofillProfileDescription[] =
1903 "Enables the new implementation of autofill profile sync";
1904
Jan Krcale3641b92018-08-10 17:53:311905const char kSyncUSSAutofillWalletDataName[] =
1906 "Enable USS for autofill wallet data";
1907const char kSyncUSSAutofillWalletDataDescription[] =
1908 "Enables the new implementation of autofill walet data sync";
1909
Jan Krcal1e883642019-03-06 16:53:451910const char kSyncUSSAutofillWalletMetadataName[] =
1911 "Enable USS for autofill wallet metadata";
1912const char kSyncUSSAutofillWalletMetadataDescription[] =
1913 "Enables the new implementation of autofill walet metadata sync";
1914
Brett Wilsonecb80982017-07-12 20:34:511915const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1916const char kSyncSandboxDescription[] =
1917 "Connects to the testing server for Chrome Sync.";
vabr0215a8e2017-03-28 12:47:341918
Joe Downing8cbbc192018-05-14 17:37:071919const char kSystemKeyboardLockName[] = "Experimental system keyboard lock";
1920const char kSystemKeyboardLockDescription[] =
1921 "Enables websites to use the keyboard.lock() API to intercept system "
1922 "keyboard shortcuts and have the events routed directly to the website "
1923 "when in fullscreen mode.";
1924
Matt Simmons1fd0c9f2019-04-15 19:08:221925const char kTabEngagementReportingName[] = "Tab Engagement Metrics";
1926const char kTabEngagementReportingDescription[] =
1927 "Tracks tab engagement and lifetime metrics.";
1928
Yusuf Ozuysal67f05a02019-02-15 19:30:521929const char kTabGridLayoutAndroidName[] = "Tab Grid Layout";
1930const char kTabGridLayoutAndroidDescription[] =
1931 "Allows users to see their tabs in a grid layout in the tab switcher.";
1932
Yusuf Ozuysal436d90b82019-03-15 22:17:581933const char kTabGroupsAndroidName[] = "Tab Groups";
1934const char kTabGroupsAndroidDescription[] =
1935 "Allows users to create groups to better organize their tabs.";
1936
Taylor Bergquistbcc15462018-12-05 00:36:561937const char kTabGroupsName[] = "Tab Groups";
1938const char kTabGroupsDescription[] =
1939 "Allows users to organize tabs into visually distinct groups, e.g. to "
1940 "separate tabs associated with different tasks.";
1941
Caroline Risinge121c2b2018-12-03 20:19:291942const char kTabHoverCardsName[] = "Tab Hover Cards";
1943const char kTabHoverCardsDescription[] =
1944 "Enables a popup containing tab information to be visible when hovering "
1945 "over a tab. This will replace tooltips for tabs.";
1946
Dana Friedacaa8ef52019-02-08 02:20:351947const char kTabHoverCardImagesName[] = "Tab Hover Card Images";
1948const char kTabHoverCardImagesDescription[] =
1949 "Shows a preview image in tab hover cards, if tab hover cards are enabled.";
1950
Christian Dullweberd0d96f02017-09-13 09:22:511951const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1952const char kTabsInCbdDescription[] =
1953 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
1954
Daniele Castagna0fead93e2018-01-10 20:40:291955const char kTintGlCompositedContentName[] = "Tint GL-composited content";
1956const char kTintGlCompositedContentDescription[] =
1957 "Tint contents composited using GL with a shade of red to help debug and "
1958 "study overlay support.";
1959
Peter Kastingd77428352018-10-26 15:20:251960const char kTopChromeTouchUiName[] = "Touch UI Layout";
1961const char kTopChromeTouchUiDescription[] =
1962 "Enables touch UI layout in the browser's top chrome.";
vabr0215a8e2017-03-28 12:47:341963
Brett Wilsonecb80982017-07-12 20:34:511964const char kThreadedScrollingName[] = "Threaded scrolling";
1965const char kThreadedScrollingDescription[] =
1966 "Threaded handling of scroll-related input events. Disabling this will "
1967 "force all such scroll events to be handled on the main thread. Note that "
1968 "this can dramatically hurt scrolling performance of most websites and is "
1969 "intended for testing purposes only.";
1970
Dominick Ng8896b1cd2017-10-17 23:24:361971const char kTopSitesFromSiteEngagementName[] = "Top Sites from Site Engagement";
1972const char kTopSitesFromSiteEngagementDescription[] =
1973 "Enable Top Sites on the New Tab Page to be sourced and sorted using site "
1974 "engagement.";
1975
Brett Wilsonecb80982017-07-12 20:34:511976const char kTouchAdjustmentName[] = "Touch adjustment";
1977const char kTouchAdjustmentDescription[] =
1978 "Refine the position of a touch gesture in order to compensate for touches "
1979 "having poor resolution compared to a mouse.";
1980
1981const char kTouchDragDropName[] = "Touch initiated drag and drop";
1982const char kTouchDragDropDescription[] =
1983 "Touch drag and drop can be initiated through long press on a draggable "
1984 "element.";
1985
1986const char kTouchEventsName[] = "Touch Events API";
1987const char kTouchEventsDescription[] =
1988 "Force Touch Events API feature detection to always be enabled or "
1989 "disabled, or to be enabled when a touchscreen is detected on startup "
Ella Gea6a203c92017-10-26 19:09:291990 "(Automatic).";
Brett Wilsonecb80982017-07-12 20:34:511991
1992const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
1993const char kTouchSelectionStrategyDescription[] =
1994 "Controls how text selection granularity changes when touch text selection "
1995 "handles are dragged. Non-default behavior is experimental.";
1996const char kTouchSelectionStrategyCharacter[] = "Character";
1997const char kTouchSelectionStrategyDirection[] = "Direction";
1998
1999const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
2000const char kTraceUploadUrlDescription[] =
2001 "This is to be used in conjunction with the enable-navigation-tracing "
2002 "flag. Please select the label that best describes the recorded traces. "
2003 "This will choose the destination the traces are uploaded to. If you are "
2004 "not sure, select other. If left empty, no traces will be uploaded.";
2005const char kTraceUploadUrlChoiceOther[] = "Other";
2006const char kTraceUploadUrlChoiceEmloading[] = "emloading";
2007const char kTraceUploadUrlChoiceQa[] = "QA";
2008const char kTraceUploadUrlChoiceTesting[] = "Testing";
2009
Anthony Vallee-Dubois265c5692018-06-01 15:57:142010const char kTranslateForceTriggerOnEnglishName[] =
2011 "Select which language model to use to trigger translate on English "
2012 "content";
2013const char kTranslateForceTriggerOnEnglishDescription[] =
2014 "Force the Translate Triggering on English pages experiment to be enabled "
2015 "with the selected language model active.";
2016
Mustafa Emre Acerb3aa36a82018-05-22 21:44:052017const char kTreatInsecureOriginAsSecureName[] =
2018 "Insecure origins treated as secure";
2019const char kTreatInsecureOriginAsSecureDescription[] =
2020 "Treat given (insecure) origins as secure origins. Multiple origins can be "
2021 "supplied as a comma-separated list. For the definition of secure "
2022 "contexts, "
2023 "see https://w3c.github.io/webappsec-secure-contexts/";
2024
Brett Wilsonecb80982017-07-12 20:34:512025const char kTrySupportedChannelLayoutsName[] =
2026 "Causes audio output streams to check if channel layouts other than the "
2027 "default hardware layout are available.";
2028const char kTrySupportedChannelLayoutsDescription[] =
2029 "Causes audio output streams to check if channel layouts other than the "
2030 "default hardware layout are available. Turning this on will allow the OS "
2031 "to do stereo to surround expansion if supported. May expose third party "
2032 "driver bugs, use with caution.";
2033
David Roger6762a092018-01-31 15:55:072034const char kUnifiedConsentName[] = "Unified Consent";
2035const char kUnifiedConsentDescription[] =
2036 "Enables a unified management of user consent for privacy-related "
2037 "features. This includes new confirmation screens and improved settings "
2038 "pages.";
2039
Brett Wilsonecb80982017-07-12 20:34:512040const char kUiPartialSwapName[] = "Partial swap";
2041const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
2042
Wei Li790e7a8572018-03-23 01:31:552043const char kUsePdfCompositorServiceName[] =
2044 "Use PDF compositor service for printing";
2045const char kUsePdfCompositorServiceDescription[] =
2046 "When enabled, use PDF compositor service to composite and generate PDF "
2047 "files for printing. When site isolation is enabled, disabling this will "
2048 "not stop using PDF compositor service since the service is required for "
2049 "printing out-of-process iframes correctly.";
2050
Mustaq Ahmedc646c0a2017-10-20 20:08:302051const char kUserActivationV2Name[] = "User Activation v2";
2052const char kUserActivationV2Description[] =
2053 "Enable simple user activation for APIs that are otherwise controlled by "
2054 "user gesture tokens.";
2055
Brett Wilsonecb80982017-07-12 20:34:512056const char kUseSuggestionsEvenIfFewFeatureName[] =
2057 "Disable minimum for server-side tile suggestions on NTP.";
2058const char kUseSuggestionsEvenIfFewFeatureDescription[] =
2059 "Request server-side suggestions even if there are only very few of them "
2060 "and use them for tiles on the New Tab Page.";
2061
2062const char kV8CacheOptionsName[] = "V8 caching mode.";
2063const char kV8CacheOptionsDescription[] =
2064 "Caching mode for the V8 JavaScript engine.";
Brett Wilsonecb80982017-07-12 20:34:512065const char kV8CacheOptionsCode[] = "Cache V8 compiler data.";
2066
Michael Hablich896d52662017-10-23 15:59:572067const char kV8VmFutureName[] = "Future V8 VM features";
2068const char kV8VmFutureDescription[] =
2069 "This enables upcoming and experimental V8 VM features. "
2070 "This flag does not enable experimental JavaScript features.";
2071
Hannes Payer1130d5672018-06-05 07:37:312072const char kV8OrinocoName[] = "V8 Orinoco garbage collection features";
2073const char kV8OrinocoDescription[] =
2074 "This enables the V8 Orinoco garbage collection features.";
2075
Brett Wilsonecb80982017-07-12 20:34:512076const char kWalletServiceUseSandboxName[] =
2077 "Use Google Payments sandbox servers";
2078const char kWalletServiceUseSandboxDescription[] =
2079 "For developers: use the sandbox service for Google Payments API calls.";
2080
Brett Wilsonecb80982017-07-12 20:34:512081const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
2082const char kWebglDraftExtensionsDescription[] =
2083 "Enabling this option allows web applications to access the WebGL "
2084 "Extensions that are still in draft status.";
2085
2086const char kWebMidiName[] = "Web MIDI API";
2087const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
2088
Qingsi Wangec2dbf942018-11-03 05:33:042089const char kWebrtcHideLocalIpsWithMdnsName[] =
2090 "Anonymize local IPs exposed by WebRTC.";
2091const char kWebrtcHideLocalIpsWithMdnsDecription[] =
2092 "Conceal local IP addresses with mDNS hostnames.";
2093
Alex Loikob5fb1282018-08-14 10:04:402094const char kWebrtcHybridAgcName[] = "WebRTC hybrid Agc2/Agc1.";
2095const char kWebrtcHybridAgcDescription[] =
2096 "WebRTC Agc2 digital adaptation with Agc1 analog adaptation.";
2097
Brett Wilsonecb80982017-07-12 20:34:512098const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
2099const char kWebrtcHwDecodingDescription[] =
2100 "Support in WebRTC for decoding video streams using platform hardware.";
2101
2102const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
2103const char kWebrtcHwEncodingDescription[] =
2104 "Support in WebRTC for encoding video streams using platform hardware.";
2105
2106const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
2107const char kWebrtcHwH264EncodingDescription[] =
2108 "Support in WebRTC for encoding h264 video streams using platform "
2109 "hardware.";
2110
2111const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
2112const char kWebrtcHwVP8EncodingDescription[] =
2113 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
2114
Sreerenj Balachandran2a5fd0972019-02-08 22:15:202115const char kWebrtcHwVP9EncodingName[] = "WebRTC hardware vp9 video encoding";
2116const char kWebrtcHwVP9EncodingDescription[] =
2117 "Support in WebRTC for encoding vp9 video streams using platform hardware.";
2118
Niels Möller090866a2018-02-13 10:55:032119const char kWebrtcNewEncodeCpuLoadEstimatorName[] =
2120 "WebRTC new encode cpu load estimator";
2121const char kWebrtcNewEncodeCpuLoadEstimatorDescription[] =
2122 "Enable new estimator for the encoder cpu load, for evaluation and "
2123 "testing. Intended to improve accuracy when screen casting.";
2124
Elad Alon85e0d0be2018-06-26 10:38:372125const char kWebRtcRemoteEventLogName[] = "WebRTC remote-bound event logging";
2126const char kWebRtcRemoteEventLogDescription[] =
2127 "Allow collecting WebRTC event logs and uploading them to Crash. "
2128 "Please note that, even if enabled, this will still require "
2129 "a policy to be set, for it to have an effect.";
2130
Brett Wilsonecb80982017-07-12 20:34:512131const char kWebrtcSrtpAesGcmName[] =
2132 "Negotiation with GCM cipher suites for SRTP in WebRTC";
2133const char kWebrtcSrtpAesGcmDescription[] =
2134 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
2135
2136const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
2137const char kWebrtcStunOriginDescription[] =
2138 "When enabled, Stun messages generated by WebRTC will contain the Origin "
2139 "header.";
2140
2141const char kWebvrName[] = "WebVR";
2142const char kWebvrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012143 "Enables access to experimental Virtual Reality functionality via the "
2144 "WebVR 1.1 API. This feature will eventually be replaced by the WebXR "
2145 "Device API. Warning: Enabling this will also allow WebVR content on "
2146 "insecure origins to access these powerful APIs, and may pose a security "
David Dorwin09448942019-01-11 23:37:302147 "risk. Controllers are exposed as Gamepads, and WebVR-specific attributes "
2148 "are exposed.";
Brett Wilsonecb80982017-07-12 20:34:512149
Brandon Jonese9d9b2b2017-12-11 22:20:112150const char kWebXrName[] = "WebXR Device API";
2151const char kWebXrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012152 "Enables access to experimental APIs to interact with Virtual Reality (VR) "
2153 "and Augmented Reality (AR) devices.";
2154
Ian Vollick7aaccf92018-04-07 23:10:432155const char kWebXrHitTestName[] = "WebXR Hit Test";
2156const char kWebXrHitTestDescription[] =
2157 "Enables access to raycasting against estimated XR scene geometry.";
Brandon Jonese9d9b2b2017-12-11 22:20:112158
Brett Wilsonecb80982017-07-12 20:34:512159const char kZeroCopyName[] = "Zero-copy rasterizer";
2160const char kZeroCopyDescription[] =
2161 "Raster threads write directly to GPU memory associated with tiles.";
vabr0215a8e2017-03-28 12:47:342162
Brett Wilsonff596952017-07-14 01:06:552163// Android ---------------------------------------------------------------------
2164
2165#if defined(OS_ANDROID)
2166
2167const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
2168const char kAiaFetchingDescription[] =
2169 "Enable intermediate certificate fetching when a server does not provide "
2170 "sufficient certificates to build a chain to a trusted root.";
2171
2172const char kAccessibilityTabSwitcherName[] = "Accessibility Tab Switcher";
2173const char kAccessibilityTabSwitcherDescription[] =
2174 "Enable the accessibility tab switcher for Android.";
2175
Pavel Shmakov798f4742018-11-15 21:27:382176const char kAllowRemoteContextForNotificationsName[] =
2177 "Allow using remote app context for notifications";
2178const char kAllowRemoteContextForNotificationsDescription[] =
2179 "Allow using Context#createPackageContext to work around issues with status"
2180 "bar icons on certain Android M devices.";
2181
Brett Wilsonff596952017-07-14 01:06:552182const char kAndroidAutofillAccessibilityName[] = "Autofill Accessibility";
2183const char kAndroidAutofillAccessibilityDescription[] =
2184 "Enable accessibility for autofill popup.";
2185
Khushalbb1963a2018-10-02 21:02:352186const char kAndroidSurfaceControl[] = "Use Android SurfaceControl";
2187const char kAndroidSurfaceControlDescription[] =
2188 "Use the SurfaceControl API for supporting overlays on Android";
2189
Becky Zhoubbfbde32019-02-20 17:07:592190const char kAndroidWebContentsDarkMode[] = "Android web contents dark mode";
2191const char kAndroidWebContentsDarkModeDescription[] =
2192 "Enable dark mode on web contents in Android";
2193
Anita Woodruffbfcd1e52018-07-16 12:00:512194const char kAppNotificationStatusMessagingName[] =
2195 "App notification status messaging";
2196const char kAppNotificationStatusMessagingDescription[] =
2197 "Enables messaging in site permissions UI informing user when "
2198 "notifications are disabled for the entire app.";
2199
Miriam Gershenson8cf1397222018-01-23 22:48:292200const char kAsyncDnsName[] = "Async DNS resolver";
2201const char kAsyncDnsDescription[] = "Enables the built-in DNS resolver.";
2202
Dan Harrington01229f82018-09-12 21:01:212203const char kAutoFetchOnNetErrorPageName[] = "AutoFetchOnNetErrorPage";
2204const char kAutoFetchOnNetErrorPageDescription[] =
2205 "When enabled, and navigation fails with an offline error, schedule a "
2206 "fetch of the page when online again.";
2207
Brett Wilsonff596952017-07-14 01:06:552208const char kAutofillAccessoryViewName[] =
2209 "Autofill suggestions as keyboard accessory view";
2210const char kAutofillAccessoryViewDescription[] =
2211 "Shows Autofill suggestions on top of the keyboard rather than in a "
2212 "dropdown.";
2213
Tibor Goldschwendt11b3cf22018-07-04 15:32:442214const char kBackgroundTaskComponentUpdateName[] =
2215 "Background Task Component Updates";
2216const char kBackgroundTaskComponentUpdateDescription[] =
2217 "Schedule component updates with BackgroundTaskScheduler";
2218
Michael van Ouwerkerkbda4ad82018-06-19 14:08:002219const char kCCTModuleName[] = "Chrome Custom Tabs Module";
2220const char kCCTModuleDescription[] =
2221 "Enables a dynamically loaded module in Chrome Custom Tabs, on Android.";
2222
Michael van Ouwerkerk29a7a292018-10-09 09:20:142223const char kCCTModuleCacheName[] = "Chrome Custom Tabs Module Cache";
2224const char kCCTModuleCacheDescription[] =
Michael van Ouwerkerka5df1ec2018-10-11 11:57:402225 "Enables a cache for dynamically loaded modules in Chrome Custom Tabs. "
2226 "Under mild memory pressure the cache may be retained for some time";
Michael van Ouwerkerk29a7a292018-10-09 09:20:142227
John Lin170c00b2018-11-21 15:44:252228const char kCCTModuleCustomHeaderName[] =
2229 "Chrome Custom Tabs Module Custom Header";
2230const char kCCTModuleCustomHeaderDescription[] =
2231 "Enables header customization by dynamically loaded modules in "
2232 "Chrome Custom Tabs.";
2233
Michael van Ouwerkerk0878427a2019-02-13 15:11:422234const char kCCTModuleCustomRequestHeaderName[] =
2235 "Chrome Custom Tabs Module Custom Request Header";
2236const char kCCTModuleCustomRequestHeaderDescription[] =
2237 "Enables a custom request header for URLs managed by dynamically loaded "
2238 "modules in Chrome Custom Tabs.";
2239
alihanlivdumlu12ac4772019-01-17 17:37:182240const char kCCTModuleDexLoadingName[] = "Chrome Custom Tabs Module Dex Loading";
2241const char kCCTModuleDexLoadingDescription[] =
2242 "Enables loading Chrome Custom Tabs module code from a dex file "
2243 "provided by the module.";
2244
barkerd84051482018-11-13 14:46:562245const char kCCTModulePostMessageName[] =
2246 "Chrome Custom Tabs Module postMessage API";
2247const char kCCTModulePostMessageDescription[] =
2248 "Enables the postMessage API exposed to dynamically loaded modules in "
2249 "Chrome Custom Tabs.";
2250
Anna Malova9bb4ead2019-01-18 18:01:262251const char kCCTModuleUseIntentExtrasName[] =
2252 "Chrome Custom Tabs Module Intent Extras Usage";
2253const char kCCTModuleUseIntentExtrasDescription[] =
2254 "Enables usage of Intent's extras in Chrome Custom Tabs Module";
2255
Anna Malovaf7c734a2019-03-01 13:08:452256const char kCCTTargetTranslateLanguageName[] =
2257 "Chrome Custom Tabs Target Translate Language";
2258const char kCCTTargetTranslateLanguageDescription[] =
2259 "Enables specify target language the page should be translated to "
2260 "in Chrome Custom Tabs.";
2261
Matthew Jones1abcb132018-07-09 17:59:462262const char kChromeDuetName[] = "Chrome Duet";
2263const char kChromeDuetDescription[] =
2264 "Enables Chrome Duet, split toolbar Chrome Home, on Android.";
Theresa Wellingtonb9243b22017-12-01 16:23:052265
Sarath Singapati83aef1c2017-11-16 15:54:522266const char kClearOldBrowsingDataName[] = "Clear older browsing data";
2267const char kClearOldBrowsingDataDescription[] =
2268 "Enables clearing of browsing data which is older than a given time "
2269 "period.";
2270
Vitalii Iarkof52ff802017-09-14 12:34:242271const char kContentSuggestionsDebugLogName[] = "Content suggestions debug log";
2272const char kContentSuggestionsDebugLogDescription[] =
2273 "Enable content suggestions debug log accessible through "
2274 "snippets-internals.";
2275
Donn Denman4315f262019-03-02 02:47:412276const char kContextualSearchDefinitionsName[] = "Contextual Search definitions";
2277const char kContextualSearchDefinitionsDescription[] =
2278 "Enables tap-activated contextual definitions of words on a page to be "
2279 "presented in the caption of the Tap to Search Bar.";
2280
Donn Denman8e58ead2017-11-04 01:44:012281const char kContextualSearchMlTapSuppressionName[] =
2282 "Contextual Search ML tap suppression";
2283const char kContextualSearchMlTapSuppressionDescription[] =
2284 "Enables tap gestures to be suppressed to improve CTR by applying machine "
Donn Denman59729812018-01-09 01:27:022285 "learning. The \"Contextual Search Ranker prediction\" flag must also be "
2286 "enabled!";
Brett Wilsonff596952017-07-14 01:06:552287
Donn Denman59729812018-01-09 01:27:022288const char kContextualSearchRankerQueryName[] =
2289 "Contextual Search Ranker prediction";
2290const char kContextualSearchRankerQueryDescription[] =
2291 "Enables prediction of tap gestures using Assist-Ranker machine learning.";
2292
Donn Denman63d169f2019-03-08 23:34:502293const char kContextualSearchSimplifiedServerName[] =
2294 "Contextual Search simplified server logic";
2295const char kContextualSearchSimplifiedServerDescription[] =
2296 "Enables simpler server-side logic for determining what data to return and "
2297 "show in the Contextual Search UI. Option to allow all cards CoCa "
2298 "returns.";
2299
Donn Denman59729812018-01-09 01:27:022300const char kContextualSearchSecondTapName[] =
2301 "Contextual Search second tap triggering";
2302const char kContextualSearchSecondTapDescription[] =
2303 "Enables triggering on a second tap gesture even when Ranker would "
2304 "normally suppress that tap.";
2305
Donn Denman75f4b052019-04-05 17:55:212306const char kContextualSearchTranslationModelName[] =
2307 "Contextual Search translation using the Chrome translate model.";
2308const char kContextualSearchTranslationModelDescription[] =
2309 "Enables triggering translation in Contextual Search according to the "
2310 "Chrome translation model semantics.";
2311
Donn Denmane9b5b7fb2018-07-24 22:19:492312const char kContextualSearchUnityIntegrationName[] =
2313 "Contextual Search integration with Unified Consent";
2314const char kContextualSearchUnityIntegrationDescription[] =
2315 "Enables integration of Tap to Search with Unified Consent.";
2316
Joy Ming189b0cc2017-12-08 19:42:432317const char kDownloadsLocationChangeName[] = "Enable downloads location change";
2318const char kDownloadsLocationChangeDescription[] =
2319 "Enable changing default downloads storage location on Android.";
2320
Shakti Sahu32b2ee102018-05-17 00:04:462321const char kDownloadProgressInfoBarName[] = "Enable download progress infobar";
2322const char kDownloadProgressInfoBarDescription[] =
2323 "Enables an infobar notifying users about status of current downloads.";
2324
Shakti Sahu9ec8cfd2018-07-17 13:29:292325const char kDownloadHomeV2Name[] = "Enable download home v2";
2326const char kDownloadHomeV2Description[] =
2327 "Enables the new UI for download home";
2328
Hesen Zhangf7ad6142019-03-12 23:48:312329const char kDownloadRenameName[] = "Enable download rename";
2330const char kDownloadRenameDescription[] = "Enables rename option for downloads";
2331
Fabio Tirelo918089a2018-10-22 21:24:082332const char kAutofillManualFallbackAndroidName[] =
2333 "Enable Autofill manual fallback for Addresses and Payments (Android)";
2334const char kAutofillManualFallbackAndroidDescription[] =
2335 "If enabled, adds toggle for addresses and payments bottom sheet to the "
2336 "keyboard accessory.";
2337
Fabio Tirelo315e65922018-09-05 03:35:492338const char kEnableAutofillRefreshStyleName[] =
2339 "Enable Autofill refresh style (Android)";
2340const char kEnableAutofillRefreshStyleDescription[] =
2341 "Enable modernized style for Autofill on Android";
2342
Vitalii Iarkof4ed32d2017-09-26 13:15:532343const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
Brett Wilsonff596952017-07-14 01:06:552344const char kEnableAndroidSpellcheckerDescription[] =
2345 "Enables use of the Android spellchecker.";
Brett Wilsonff596952017-07-14 01:06:552346
Lei Tianbd5a3bf2018-02-28 19:01:162347const char kEnableCommandLineOnNonRootedName[] =
2348 "Enable command line on non-rooted devices";
2349const char kEnableCommandLineOnNoRootedDescription[] =
2350 "Enable reading command line file on non-rooted devices (DANGEROUS).";
2351
Brett Wilsonff596952017-07-14 01:06:552352const char kEnableCustomContextMenuName[] = "Enable custom context menu";
2353const char kEnableCustomContextMenuDescription[] =
2354 "Enables a new context menu when a link, image, or video is pressed within "
2355 "Chrome.";
2356
Sinan Sahin3bafe272019-03-11 17:03:062357const char kEnableRevampedContextMenuName[] =
2358 "Enable the revamped context menu";
2359const char kEnableRevampedContextMenuDescription[] =
2360 "Enables a revamped context menu when a link, image, or video is long "
2361 "pressed within Chrome.";
2362
Brett Wilsonff596952017-07-14 01:06:552363const char kEnableNtpRemoteSuggestionsName[] =
2364 "Show server-side suggestions on the New Tab page";
2365const char kEnableNtpRemoteSuggestionsDescription[] =
2366 "If enabled, the list of content suggestions on the New Tab page will "
2367 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
2368 "allows to override the source used to retrieve these server-side "
2369 "suggestions.";
2370
Brett Wilsonff596952017-07-14 01:06:552371const char kEnableNtpSuggestionsNotificationsName[] =
2372 "Notify about new content suggestions available at the New Tab page";
2373const char kEnableNtpSuggestionsNotificationsDescription[] =
2374 "If enabled, notifications will inform about new content suggestions on "
2375 "the New Tab page.";
2376
Brett Wilsonff596952017-07-14 01:06:552377const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
2378const char kEnableOfflinePreviewsDescription[] =
2379 "Enable showing offline page previews on slow networks.";
2380
2381const char kEnableOskOverscrollName[] = "Enable OSK Overscroll";
2382const char kEnableOskOverscrollDescription[] =
2383 "Enable OSK overscroll support. With this flag on, the OSK will only "
2384 "resize the visual viewport.";
2385
Brett Wilsonff596952017-07-14 01:06:552386const char kEnableWebNfcName[] = "WebNFC";
2387const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
2388
Donn Denmanffaeaa32018-10-12 17:37:532389const char kEphemeralTabName[] = "An Ephemeral Tab in an Overlay Panel";
2390const char kEphemeralTabDescription[] =
Donn Denmanb45c26a2019-02-13 01:42:212391 "Enable a 'Preview page/image' at a linked page into an overlay.";
Donn Denmanffaeaa32018-10-12 17:37:532392
Lei Zhang0a318af2018-11-14 02:19:462393const char kExploreSitesName[] = "Explore websites";
2394const char kExploreSitesDescription[] =
2395 "Enables portal from new tab page to explore websites.";
2396
Xing Liu7d57dd32019-01-20 02:34:182397const char kForegroundNotificationManagerName[] =
2398 "Foreground notification manager";
2399const char kForegroundNotificationManagerDescription[] =
2400 "Enable foreground notification manager to handle foreground service and "
2401 "notification.";
2402
Daniel Parke74fcf862018-03-27 18:05:452403const char kHomePageButtonName[] = "Force Enable Home Page Button";
Daniel Park990d0992018-05-18 22:12:512404const char kHomePageButtonDescription[] = "Displays a home button if enabled.";
Daniel Parke74fcf862018-03-27 18:05:452405
Yafei Duanbb7663f32018-07-17 01:33:152406const char kHomepageTileName[] =
2407 "Enable Homepage tile shown in Suggested Tiles";
2408const char kHomepageTileDescription[] =
2409 "When NTPButton is enabled, the first tile of the Suggested Tiles will be "
2410 "used for homepage. It will not have an effect when NTPButton is disabled.";
2411
Jian Li4b252642018-07-23 19:49:072412const char kIncognitoStringsName[] = "Alternate incognito strings";
2413const char kIncognitoStringsDescription[] =
2414 "Show alternate incognito strings if enabled.";
2415
Theresa920e0ed2018-03-07 18:12:442416const char kInterestFeedContentSuggestionsDescription[] =
Yafei Duanbb7663f32018-07-17 01:33:152417 "Use the interest feed to render content suggestions. Currently "
2418 "content "
Theresa920e0ed2018-03-07 18:12:442419 "suggestions are shown on the New Tab Page.";
2420const char kInterestFeedContentSuggestionsName[] =
2421 "Interest Feed Content Suggestions";
2422
Leo Zhang051b75482017-12-20 03:28:302423const char kLanguagesPreferenceName[] = "Language Settings";
2424const char kLanguagesPreferenceDescription[] =
2425 "Enable this option for Language Settings feature on Android.";
2426
Brett Wilsonff596952017-07-14 01:06:552427const char kLsdPermissionPromptName[] =
2428 "Location Settings Dialog Permission Prompt";
2429const char kLsdPermissionPromptDescription[] =
2430 "Whether to use the Google Play Services Location Settings Dialog "
2431 "permission dialog.";
2432
Ioana Pandeled8dc2b692019-02-20 12:04:152433const char kManualPasswordGenerationAndroidName[] =
2434 "Manual password generation";
2435const char kManualPasswordGenerationAndroidDescription[] =
2436 "Whether Chrome should offer users the option to manually request to "
2437 "generate passwords on Android.";
Amirhossein Simjour97b4154f2018-02-20 03:49:592438
Brett Wilsonff596952017-07-14 01:06:552439const char kMediaScreenCaptureName[] = "Experimental ScreenCapture.";
2440const char kMediaScreenCaptureDescription[] =
2441 "Enable this option for experimental ScreenCapture feature on Android.";
2442
Dan Harrington541db9e2018-07-30 18:36:302443const char kNewNetErrorPageUIName[] = "Enable new UI for net-error page";
2444const char kNewNetErrorPageUIDescription[] =
Dan Harringtonc78e4622019-03-22 19:13:242445 "Enables showing available offline content on the net-error (Dino) page.";
Dan Harrington541db9e2018-07-30 18:36:302446
Brett Wilsonff596952017-07-14 01:06:552447const char kNewPhotoPickerName[] = "Enable new Photopicker";
2448const char kNewPhotoPickerDescription[] =
2449 "Activates the new picker for selecting photos.";
2450
2451const char kNoCreditCardAbort[] = "No Credit Card Abort";
2452const char kNoCreditCardAbortDescription[] =
2453 "Whether or not the No Credit Card Abort is enabled.";
2454
Daniel Park990d0992018-05-18 22:12:512455const char kNtpButtonName[] = "Enable NTP Button";
2456const char kNtpButtonDescription[] =
2457 "Displays a New Tab Page button in the toolbar if enabled.";
2458
Jian Liade82832018-09-06 22:31:412459const char kOfflineIndicatorAlwaysHttpProbeName[] = "Always http probe";
2460const char kOfflineIndicatorAlwaysHttpProbeDescription[] =
2461 "Always do http probe to detect network connectivity for offline indicator "
2462 "as opposed to just taking the connection state from the system."
2463 "Used for testing.";
2464
2465const char kOfflineIndicatorChoiceName[] = "Offline indicator choices";
2466const char kOfflineIndicatorChoiceDescription[] =
2467 "Show an offline indicator while offline.";
Jian Li1413ebf2018-06-14 20:46:322468
Brett Wilsonff596952017-07-14 01:06:552469const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
2470const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
2471
2472const char kOfflinePagesCtV2Name[] = "Enable Offline Pages CT V2 features.";
2473const char kOfflinePagesCtV2Description[] =
2474 "V2 features include attributing pages to the app that initiated the "
2475 "custom tabs, and being able to query for pages by page attribution.";
2476
Cathy Li7311d792018-04-05 00:34:162477const char kOfflinePagesCTSuppressNotificationsName[] =
2478 "Disable download complete notification for whitelisted CCT apps.";
2479const char kOfflinePagesCTSuppressNotificationsDescription[] =
2480 "Disable download complete notification for page downloads originating "
2481 "from a CCT app whitelisted to show their own download complete "
2482 "notification.";
2483
Candice Sy74fa7a352018-03-30 23:46:492484const char kOfflinePagesDescriptiveFailStatusName[] =
2485 "Enables descriptive failed download status text.";
2486const char kOfflinePagesDescriptiveFailStatusDescription[] =
2487 "Enables failed download status text in notifications and Downloads Home "
2488 "to state the reason the request failed if the failure is actionable.";
2489
2490const char kOfflinePagesDescriptivePendingStatusName[] =
2491 "Enables descriptive pending download status text.";
2492const char kOfflinePagesDescriptivePendingStatusDescription[] =
2493 "Enables pending download status text in notifications and Downloads Home "
2494 "to state the reason the request is pending.";
2495
2496const char kOfflinePagesInDownloadHomeOpenInCctName[] =
2497 "Enables offline pages in the downloads home to be opened in CCT.";
2498const char kOfflinePagesInDownloadHomeOpenInCctDescription[] =
2499 "When enabled offline pages launched from the Downloads Home will be "
2500 "opened in Chrome Custom Tabs (CCT) instead of regular tabs.";
2501
Carlos Knippschild09272ecd2017-12-09 03:29:362502const char kOfflinePagesLimitlessPrefetchingName[] =
2503 "Removes resource usage limits for the prefetching of offline pages.";
2504const char kOfflinePagesLimitlessPrefetchingDescription[] =
2505 "Allows the prefetching of suggested offline pages to ignore resource "
2506 "usage limits. This allows it to completely ignore data usage limitations "
2507 "and allows downloads to happen with any kind of connection.";
2508
Brett Wilsonff596952017-07-14 01:06:552509const char kOfflinePagesLoadSignalCollectingName[] =
2510 "Enables collecting load timing data for offline page snapshots.";
2511const char kOfflinePagesLoadSignalCollectingDescription[] =
2512 "Enables loading completeness data collection while writing an offline "
2513 "page. This data is collected in the snapshotted offline page to allow "
2514 "data analysis to improve deciding when to make the offline snapshot.";
2515
2516const char kOfflinePagesPrefetchingName[] =
2517 "Enables suggested offline pages to be prefetched.";
2518const char kOfflinePagesPrefetchingDescription[] =
2519 "Enables suggested offline pages to be prefetched, so useful content is "
2520 "available while offline.";
2521
Pete Williamson7845dff2017-09-20 11:06:192522const char kOfflinePagesResourceBasedSnapshotName[] =
2523 "Enables offline page snapshots to be based on percentage of page loaded.";
2524const char kOfflinePagesResourceBasedSnapshotDescription[] =
2525 "Enables offline page snapshots to use a resource percentage based "
2526 "approach for determining when the page is loaded as opposed to a time "
2527 "based approach";
2528
Collin Baker17f92a52017-07-19 21:41:252529const char kOfflinePagesRenovationsName[] = "Enables offline page renovations.";
2530const char kOfflinePagesRenovationsDescription[] =
2531 "Enables offline page renovations which correct issues with dynamic "
2532 "content that occur when offlining pages that use JavaScript.";
2533
Yafei Duan36b4b5b2018-08-07 00:40:032534const char kOfflinePagesLivePageSharingName[] =
2535 "Enables live page sharing of offline pages";
2536const char kOfflinePagesLivePageSharingDescription[] =
2537 "Enables to share current loaded page as offline page by saving as MHTML "
2538 "first.";
2539
Cathy Lie0d88762018-04-12 08:03:012540const char kOfflinePagesShowAlternateDinoPageName[] =
2541 "Enable alternate dino page with more user capabilities.";
2542const char kOfflinePagesShowAlternateDinoPageDescription[] =
2543 "Enables the dino page to show more buttons and offer existing offline "
2544 "content.";
2545
Brett Wilsonff596952017-07-14 01:06:552546const char kOffliningRecentPagesName[] =
2547 "Enable offlining of recently visited pages";
2548const char kOffliningRecentPagesDescription[] =
2549 "Enable storing recently visited pages locally for offline use. Requires "
2550 "Offline Pages to be enabled.";
2551
Matthew Jonesa88b95852017-11-08 23:13:502552const char kProgressBarThrottleName[] = "Android progress update throttling.";
2553const char kProgressBarThrottleDescription[] =
2554 "Limit the maximum progress update to make progress appear smoother.";
2555
Piotr Swigon7c296ef2017-08-29 04:32:002556const char kPwaImprovedSplashScreenName[] =
2557 "Improved Splash Screen for standalone PWAs";
2558const char kPwaImprovedSplashScreenDescription[] =
2559 "Enables the Improved Splash Screen UX for standalone PWAs based on new "
2560 "Web App Manifest attributes";
Piotr Swigon9f630b32017-07-26 09:42:492561const char kPwaPersistentNotificationName[] =
2562 "Persistent notification in standalone PWA";
2563const char kPwaPersistentNotificationDescription[] =
2564 "Enables a persistent Android notification for standalone PWAs";
2565
Brett Wilsonff596952017-07-14 01:06:552566const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
2567const char kReaderModeHeuristicsDescription[] =
2568 "Determines what pages the Reader Mode infobar is shown on.";
2569const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
2570const char kReaderModeHeuristicsAdaboost[] = "Non-mobile-friendly articles";
2571const char kReaderModeHeuristicsAllArticles[] = "All articles";
2572const char kReaderModeHeuristicsAlwaysOff[] = "Never";
2573const char kReaderModeHeuristicsAlwaysOn[] = "Always";
2574
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:182575const char kReaderModeInCCTName[] = "Reader Mode in CCT";
2576const char kReaderModeInCCTDescription[] =
2577 "Open Reader Mode in Chrome Custom Tabs.";
2578
Varun Khaneja2a8229f2019-01-12 00:57:262579const char kSafeBrowsingTelemetryForApkDownloadsName[] =
2580 "Send some telemetry for APK downloads for extended reporting users";
2581const char kSafeBrowsingTelemetryForApkDownloadsDescription[] =
2582 "If enabled, sends some information about the source and hash of the "
2583 "contents of any APK files downloaded by a user who has opted into Safe "
2584 "Browsing Extended Reporting already.";
2585
Varun Khaneja80712a82018-10-12 23:34:592586const char kSafeBrowsingUseLocalBlacklistsV2Name[] =
2587 "Use local Safe Browsing blacklists";
2588const char kSafeBrowsingUseLocalBlacklistsV2Description[] =
2589 "If enabled, maintain a copy of Safe Browsing blacklists in the browser "
2590 "process to check the Safe Browsing reputation of URLs without calling "
2591 "into GmsCore for every URL.";
2592
Matthew Jones53114262018-12-12 16:36:472593const char kSearchReadyOmniboxName[] = "Search Ready Omnibox";
2594const char kSearchReadyOmniboxDescription[] =
2595 "Clears the omnibox and adds a suggestion item to share, copy, or edit the "
2596 "URL.";
2597
Brett Wilsonff596952017-07-14 01:06:552598const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2599const char kSetMarketUrlForTestingDescription[] =
2600 "When enabled, sets the market URL for use in testing the update menu "
2601 "item.";
2602
Theresaeea05a12018-05-09 21:01:592603const char kSiteExplorationUiName[] = "Site Exploration UI";
2604const char kSiteExplorationUiDescription[] =
2605 "Show site suggestions in the Exploration UI";
2606
Alex Moshchuk07e1bb42019-03-08 04:44:082607const char kSiteIsolationForPasswordSitesName[] =
2608 "Site Isolation For Password Sites";
2609const char kSiteIsolationForPasswordSitesDescription[] =
2610 "Security mode that enables site isolation for sites based on "
2611 "password-oriented heuristics, such as a user typing in a password.";
2612
Lei Zhang0a318af2018-11-14 02:19:462613const char kStrictSiteIsolationName[] = "Strict site isolation";
2614const char kStrictSiteIsolationDescription[] =
2615 "Security mode that enables site isolation for all sites (SitePerProcess). "
2616 "In this mode, each renderer process will contain pages from at most one "
2617 "site, using out-of-process iframes when needed. "
2618 "Check chrome://process-internals to see the current isolation mode. "
2619 "Setting this flag to 'Enabled' turns on site isolation regardless of the "
2620 "default. Here, 'Disabled' is a legacy value that actually means "
2621 "'Default,' in which case site isolation may be already enabled based on "
2622 "platform, enterprise policy, or field trial. See also "
2623 "#site-isolation-trial-opt-out for how to disable site isolation for "
2624 "testing.";
2625
Anthony Vallee-Dubois4623e1b2018-10-11 22:09:182626const char kTranslateAndroidManualTriggerName[] =
2627 "Enable manual translate trigger";
2628const char kTranslateAndroidManualTriggerDescription[] =
2629 "Show a menu item in the main menu that triggers page translation.";
2630
Brett Wilsonff596952017-07-14 01:06:552631const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2632const char kUpdateMenuBadgeDescription[] =
Tommy Nyquist3c02e592018-10-18 23:36:442633 "When enabled, a badge will be shown on the app menu button if the update "
2634 "type is Update Available or Unsupported OS Version.";
Brett Wilsonff596952017-07-14 01:06:552635
2636const char kUpdateMenuItemCustomSummaryDescription[] =
2637 "When this flag and the force show update menu item flag are enabled, a "
2638 "custom summary string will be displayed below the update menu item.";
2639const char kUpdateMenuItemCustomSummaryName[] =
2640 "Update menu item custom summary";
2641
Tommy Nyquist3c02e592018-10-18 23:36:442642const char kUpdateMenuTypeName[] =
2643 "Forces the update menu type to a specific type";
2644const char kUpdateMenuTypeDescription[] =
2645 "When set, forces the update type to be a specific one, which impacts "
Tommy Nyquist023d505f2019-02-16 02:18:382646 "the app menu badge and menu item for updates. For Inline Update, the "
2647 "update available flag is implied. The 'Inline Update: Success' selection "
2648 "goes through the whole inline update flow to the end with a successful "
2649 "outcome. The other 'Inline Update' options go through the same flow, but "
2650 "stop at various stages, see their error type for details.";
Tommy Nyquist3c02e592018-10-18 23:36:442651const char kUpdateMenuTypeNone[] = "None";
2652const char kUpdateMenuTypeUpdateAvailable[] = "Update Available";
2653const char kUpdateMenuTypeUnsupportedOSVersion[] = "Unsupported OS Version";
Tommy Nyquist023d505f2019-02-16 02:18:382654const char kUpdateMenuTypeInlineUpdateSuccess[] = "Inline Update: Success";
2655const char kUpdateMenuTypeInlineUpdateDialogCanceled[] =
2656 "Inline Update Error: Dialog Canceled";
2657const char kUpdateMenuTypeInlineUpdateDialogFailed[] =
2658 "Inline Update Error: Dialog Failed";
2659const char kUpdateMenuTypeInlineUpdateDownloadFailed[] =
2660 "Inline Update Error: Download Failed";
2661const char kUpdateMenuTypeInlineUpdateDownloadCanceled[] =
2662 "Inline Update Error: Download Canceled";
2663const char kUpdateMenuTypeInlineUpdateInstallFailed[] =
2664 "Inline Update Error: Install Failed";
Brett Wilsonff596952017-07-14 01:06:552665
Tommy Nyquist26ffb642019-02-20 20:31:522666const char kInlineUpdateFlowName[] = "Enable Google Play inline update flow";
2667const char kInlineUpdateFlowDescription[] =
2668 "When this flag is set, instead of taking the user to the Google Play "
2669 "Store when an update is available, the user is presented with an inline "
2670 "flow where they do not have to leave Chrome until the update is ready "
2671 "to install.";
2672
Becky Zhou65584142019-01-10 18:22:292673#if BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2674
Becky Zhoubcac628f2019-02-28 18:22:372675const char kAndroidNightModeName[] = "Android Chrome UI dark mode";
Becky Zhou65584142019-01-10 18:22:292676const char kAndroidNightModeDescription[] =
Becky Zhoubcac628f2019-02-28 18:22:372677 "If enabled, user can enable Android Chrome UI dark mode through settings.";
Becky Zhou65584142019-01-10 18:22:292678
2679#endif // BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2680
Brett Wilson7b44537e2017-08-18 01:38:282681// Non-Android -----------------------------------------------------------------
Brett Wilsonff596952017-07-14 01:06:552682
Brett Wilson7b44537e2017-08-18 01:38:282683#else // !defined(OS_ANDROID)
brettw5f9c1642017-05-14 17:12:482684
Brett Wilson7b44537e2017-08-18 01:38:282685const char kAccountConsistencyName[] =
2686 "Identity consistency between browser and cookie jar";
2687const char kAccountConsistencyDescription[] =
2688 "When enabled, the browser manages signing in and out of Google accounts.";
2689const char kAccountConsistencyChoiceMirror[] = "Mirror";
2690const char kAccountConsistencyChoiceDice[] = "Dice";
vabr0215a8e2017-03-28 12:47:342691
Reka Normana11e57fc2019-01-29 21:56:582692const char kAppManagementName[] = "Enable App Management page";
2693const char kAppManagementDescription[] =
2694 "Shows the new app management page at chrome://apps.";
2695
Kristi Parkc9b9d6592019-02-12 22:30:382696const char kRemoveNtpFakeboxName[] = "Remove fakebox from the NTP";
2697const char kRemoveNtpFakeboxDescription[] =
2698 "Do not show the fakebox on the New Tab page.";
2699
Kyle Milka24687352019-04-11 21:13:082700const char kNtpCustomizationMenuV2Name[] = "NTP customization menu version 2";
2701const char kNtpCustomizationMenuV2Description[] =
2702 "Use the second version of the NTP customization menu.";
2703
Aran Gilman766c2ad2019-04-18 00:15:412704const char kEnableReaderModeName[] = "Enable Reader Mode";
2705const char kEnableReaderModeDescription[] =
2706 "Allows viewing of simplified web pages by selecting 'Customize and "
2707 "control Chrome'>'Distill page'";
2708
Lei Zhang0a318af2018-11-14 02:19:462709const char kEnableWebAuthenticationBleSupportName[] =
2710 "Web Authentication API BLE support";
2711const char kEnableWebAuthenticationBleSupportDescription[] =
2712 "Enable support for using Web Authentication API via Bluetooth security "
2713 "keys";
Sebastien Marchandd33f7dc2018-06-22 22:07:062714
Sebastien Marchandd33f7dc2018-06-22 22:07:062715const char kEnableWebAuthenticationTestingAPIName[] =
2716 "Web Authentication Testing API";
2717const char kEnableWebAuthenticationTestingAPIDescription[] =
2718 "Enable Web Authentication Testing API support, which disconnects the API "
2719 "implementation from the real world, and allows configuring virtual "
2720 "authenticator devices for testing";
2721
Jeffrey Cohenf04130a42018-08-29 00:22:272722const char kHappinessTrackingSurveysForDesktopName[] =
2723 "Happiness Tracking Surveys";
2724const char kHappinessTrackingSurveysForDesktopDescription[] =
2725 "Enable showing Happiness Tracking Surveys to users on Desktop";
2726
Maggie Caib3e2a6c2019-03-12 05:12:542727const char kIntentPickerName[] = "Intent picker";
2728const char kIntentPickerDescription[] =
2729 "When going to a site that has URL managable by a PWA, show the intent"
2730 "picker to allow user to open the URL in the app.";
2731
Travis Skarebcdb5ed32018-08-17 01:49:402732const char kOmniboxDriveSuggestionsName[] =
2733 "Omnibox Google Drive Document suggestions";
2734const char kOmniboxDriveSuggestionsDescriptions[] =
2735 "Display suggestions for Google Drive documents in the omnibox when Google "
2736 "is the default search engine.";
2737
Travis Skare13ad69c2019-03-06 21:01:022738const char kOmniboxDeduplicateDriveUrlsName[] =
2739 "Deduplicate Google Drive suggestions in the Omnibox";
2740const char kOmniboxDeduplicateDriveUrlsDescription[] =
2741 "Present at most one result for the same Drive document across bookmarks, "
2742 "history, document, etc. suggestions.";
2743
Kevin Bailey9ec05532019-01-31 23:01:332744const char kOmniboxExperimentalKeywordModeName[] =
2745 "Omnibox Experimental Keyword Mode";
2746const char kOmniboxExperimentalKeywordModeDescription[] =
2747 "Enables various experimental features related to keyword mode, its "
2748 "suggestions and layout";
2749
Lei Zhang0a318af2018-11-14 02:19:462750const char kOmniboxPedalSuggestionsName[] = "Omnibox Pedal suggestions";
2751const char kOmniboxPedalSuggestionsDescription[] =
Orin Jaworski506db4d2019-02-14 20:17:142752 "Enable omnibox Pedal suggestions to accelerate actions within Chrome by "
2753 "detecting user intent and offering direct access to the end goal.";
Lei Zhang0a318af2018-11-14 02:19:462754
Orin Jaworski04c08b42018-07-11 02:39:562755const char kOmniboxReverseAnswersName[] = "Omnibox reverse answers";
2756const char kOmniboxReverseAnswersDescription[] =
manukaddd3c42019-04-09 21:20:592757 "Display answers with rows reversed (swapped); except definitions.";
Orin Jaworski04c08b42018-07-11 02:39:562758
Kevin Baileya5f17452019-02-13 01:52:032759const char kOmniboxReverseTabSwitchLogicName[] =
2760 "Omnibox reverse tab switch logic";
2761const char kOmniboxReverseTabSwitchLogicDescription[] =
2762 "Reverse the logic of suggestions that have a tab switch button: Have "
2763 "them switch by default, and have the button navigate.";
2764
Tommy C. Li065ddce72019-04-11 22:55:122765const char kOmniboxSuggestionTransparencyOptionsName[] =
2766 "Omnibox Suggestion Transparency Options";
2767const char kOmniboxSuggestionTransparencyOptionsDescription[] =
2768 "Improves transparency of and control over omnibox suggestions. This "
2769 "includes UI cues (like a clock icon for Search History suggestions), as "
2770 "well as user controls to delete personalized suggestions.";
2771
Kevin Bailey898669972017-11-06 15:34:492772const char kOmniboxTabSwitchSuggestionsName[] =
2773 "Omnibox tab switch suggestions";
2774const char kOmniboxTabSwitchSuggestionsDescription[] =
manukaddd3c42019-04-09 21:20:592775 "Enable suggestions for switching to open tabs within the Omnibox.";
Kevin Bailey898669972017-11-06 15:34:492776
krbcc621412017-06-01 19:40:282777const char kOmniboxTailSuggestionsName[] = "Omnibox tail suggestions";
2778const char kOmniboxTailSuggestionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192779 "Enable receiving tail suggestions, a type of search suggestion based on "
2780 "the last few words in the query, for the Omnibox.";
vabr0215a8e2017-03-28 12:47:342781
Sebastien Marchandd33f7dc2018-06-22 22:07:062782const char kProactiveTabFreezeAndDiscardName[] =
2783 "Proactive Tab Freeze and Discard";
2784const char kProactiveTabFreezeAndDiscardDescription[] =
2785 "Enables proactive tab freezing and discarding. This requires "
2786 "#enable-page-almost-idle.";
2787
Nicolas Ouellet-payeur82eb65b2018-11-05 16:49:272788const char kShowManagedUiName[] = "Show managed UI for managed users";
2789const char kShowManagedUiDescription[] =
2790 "Enabled/disable showing enterprise users a 'Managed by your organization' "
2791 "message in the app menu and on some chrome:// pages.";
2792
Brett Wilson7b44537e2017-08-18 01:38:282793#if defined(GOOGLE_CHROME_BUILD)
2794
2795const char kGoogleBrandedContextMenuName[] =
2796 "Google branding in the context menu";
2797const char kGoogleBrandedContextMenuDescription[] =
2798 "Shows a Google icon next to context menu items powered by Google "
2799 "services.";
2800
2801#endif // !defined(GOOGLE_CHROME_BUILD)
2802
2803#endif // !defined(OS_ANDROID)
2804
2805// Windows ---------------------------------------------------------------------
2806
2807#if defined(OS_WIN)
2808
David Bienvenud0ddda32018-11-01 16:59:162809const char kCalculateNativeWinOcclusionName[] =
2810 "Calculate window occlusion on Windows";
2811const char kCalculateNativeWinOcclusionDescription[] =
2812 "Calculate window occlusion on Windows will be used in the future "
2813 "to throttle and potentially unload foreground tabs in occluded windows";
2814
Brett Wilson7b44537e2017-08-18 01:38:282815const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
2816const char kCloudPrintXpsDescription[] =
2817 "XPS enables advanced options for classic printers connected to the Cloud "
2818 "Print with Chrome. Printers must be re-connected after changing this "
2819 "flag.";
2820
Frank Liberato754d14f2019-01-30 23:31:172821const char kD3D11VideoDecoderName[] = "D3D11 Video Decoder";
2822const char kD3D11VideoDecoderDescription[] =
2823 "Enables D3D11VideoDecoder for hardware accelerated video decoding.";
2824
Brett Wilson7b44537e2017-08-18 01:38:282825const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
2826const char kDisablePostscriptPrintingDescription[] =
2827 "Disables PostScript generation when printing to PostScript capable "
2828 "printers, and uses EMF generation in its place.";
2829
2830const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
2831const char kEnableAppcontainerDescription[] =
2832 "Enables the use of an AppContainer on sandboxed processes to improve "
2833 "security.";
2834
James Forshawfd0ce342018-02-14 09:55:392835const char kEnableGpuAppcontainerName[] = "Enable GPU AppContainer Lockdown.";
2836const char kEnableGpuAppcontainerDescription[] =
2837 "Enables the use of an AppContainer for the GPU sandboxed processes to "
2838 "improve security.";
2839
Brett Wilson7b44537e2017-08-18 01:38:282840const char kGdiTextPrinting[] = "GDI Text Printing";
2841const char kGdiTextPrintingDescription[] =
2842 "Use GDI to print text as simply text";
2843
Olli Etuaho122321192018-09-07 10:15:292844const char kUseAngleName[] = "Choose ANGLE graphics backend";
2845const char kUseAngleDescription[] =
2846 "Choose the graphics backend for ANGLE. D3D11 is used on most Windows "
2847 "computers by default. Using the OpenGL driver as the graphics backend may "
2848 "result in higher performance in some graphics-heavy applications, "
2849 "particularly on NVIDIA GPUs. It can increase battery and memory usage of "
2850 "video playback.";
2851
2852const char kUseAngleDefault[] = "Default";
2853const char kUseAngleGL[] = "OpenGL";
2854const char kUseAngleD3D11[] = "D3D11";
2855const char kUseAngleD3D9[] = "D3D9";
2856
Brett Wilson7b44537e2017-08-18 01:38:282857const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2858const char kUseWinrtMidiApiDescription[] =
2859 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
2860 "later).";
2861
Brett Wilson7b44537e2017-08-18 01:38:282862#endif // defined(OS_WIN)
2863
2864// Mac -------------------------------------------------------------------------
2865
2866#if defined(OS_MACOSX)
2867
Brett Wilson7b44537e2017-08-18 01:38:282868const char kContentFullscreenName[] = "Improved Content Fullscreen";
2869const char kContentFullscreenDescription[] =
2870 "Fullscreen content window detaches from main browser window and goes to "
2871 "a new space without moving or changing the original browser window.";
2872
Sidney San Martín678fd4112019-03-30 00:13:052873const char kImmersiveFullscreenName[] = "Immersive Fullscreen Toolbar";
2874const char kImmersiveFullscreenDescription[] =
2875 "Automatically hide and show the toolbar in fullscreen.";
2876
Brett Wilson7b44537e2017-08-18 01:38:282877const char kHostedAppsInWindowsName[] =
2878 "Allow hosted apps to be opened in windows";
2879const char kHostedAppsInWindowsDescription[] =
2880 "Allows hosted apps to be opened in windows instead of being limited to "
2881 "tabs.";
2882
Christopher Cameron57dee5a42018-09-25 01:20:082883const char kCreateAppWindowsInAppShimProcessName[] =
2884 "Create native windows in the app process";
2885const char kCreateAppWindowsInAppShimProcessDescription[] =
2886 "Create native windows the app shim process, instead of of the browser "
2887 "process.";
2888
Lei Zhange065b572018-12-11 08:00:412889const char kEnableCustomMacPaperSizesName[] = "Enable custom paper sizes";
2890const char kEnableCustomMacPaperSizesDescription[] =
2891 "Allow use of custom paper sizes in Print Preview.";
2892
Lei Zhang2eca9082017-10-17 20:42:502893const char kMacTouchBarName[] = "Hardware Touch Bar";
2894const char kMacTouchBarDescription[] = "Control the use of the Touch Bar.";
Brett Wilson7b44537e2017-08-18 01:38:282895
Greg Kerr32483d1c2018-12-18 02:29:142896const char kMacV2GPUSandboxName[] = "Mac V2 GPU Sandbox";
2897const char kMacV2GPUSandboxDescription[] =
2898 "Controls whether the GPU process on macOS uses the V1 or V2 sandbox.";
2899
Brett Wilson7b44537e2017-08-18 01:38:282900const char kMacViewsNativeAppWindowsName[] = "Toolkit-Views App Windows.";
2901const char kMacViewsNativeAppWindowsDescription[] =
2902 "Controls whether to use Toolkit-Views based Chrome App windows.";
2903
2904const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
2905const char kMacViewsTaskManagerDescription[] =
2906 "Controls whether to use the Toolkit-Views based Task Manager.";
2907
Henrik Grunellabaf7182019-04-12 09:15:192908const char kMacSystemMediaPermissionsInfoUiName[] =
2909 "System media permissions info UI";
2910const char kMacSystemMediaPermissionsInfoUiDescription[] =
2911 "In case a website is trying to use the camera/microphone, but Chrome "
2912 "itself is blocked on the system level to access these, show an icon in "
2913 "the Omnibox, which, when clicked, displays a bubble with information on "
2914 "how to toggle Chrome's system-level media permissions.";
2915
Brett Wilson7b44537e2017-08-18 01:38:282916#endif
2917
2918// Chrome OS -------------------------------------------------------------------
vabr0215a8e2017-03-28 12:47:342919
2920#if defined(OS_CHROMEOS)
2921
Brett Wilson7b44537e2017-08-18 01:38:282922const char kAcceleratedMjpegDecodeName[] =
2923 "Hardware-accelerated mjpeg decode for captured frame";
2924const char kAcceleratedMjpegDecodeDescription[] =
2925 "Enable hardware-accelerated mjpeg decode for captured frame where "
2926 "available.";
vabr0215a8e2017-03-28 12:47:342927
Reka Normana11e57fc2019-01-29 21:56:582928const char kAppServiceAshName[] = "App Service Ash";
2929const char kAppServiceAshDescription[] =
2930 "Use the App Service to provide data to the Ash UI, such as the shelf and "
2931 "app list.";
2932
Bruno Kim Medeiros Cesarb98fe1d82018-06-06 18:11:522933const char kArcAvailableForChildName[] = "Allow ARC for child accounts";
2934const char kArcAvailableForChildDescription[] =
2935 "Allow child accounts to start Android apps.";
2936
Brett Wilson7b44537e2017-08-18 01:38:282937const char kArcBootCompleted[] = "Load Android apps automatically";
2938const char kArcBootCompletedDescription[] =
2939 "Allow Android apps to start automatically after signing in.";
vabr0215a8e2017-03-28 12:47:342940
Luum Habtemariamdaa8fd22018-06-25 22:39:432941const char kArcCupsApiName[] = "ARC CUPS API";
2942const char kArcCupsApiDescription[] =
2943 "Enables support of libcups APIs from ARC";
2944
Ryo Hashimoto8f4b30ced2019-04-08 12:14:192945const char kArcCustomTabsExperimentName[] =
2946 "Enable Custom Tabs experiment for ARC";
2947const char kArcCustomTabsExperimentDescription[] =
2948 "Allow Android apps to use Custom Tabs."
2949 "This feature only works on the Canary and Dev channels.";
2950
Naoki Fukino153de8a2019-01-22 08:37:542951const char kArcDocumentsProviderName[] = "ARC DocumentsProvider integration";
2952const char kArcDocumentsProviderDescription[] =
2953 "Enables DocumentsProvider integration in Chrome OS Files app.";
2954
Satoshi Niwa8b1d5282018-10-24 04:53:032955const char kArcFilePickerExperimentName[] =
2956 "Enable file picker experiment for ARC";
2957const char kArcFilePickerExperimentDescription[] =
2958 "Enables using Chrome OS file picker in ARC.";
2959
[email protected]939ceae2019-01-29 17:00:152960const char kArcGraphicBuffersVisualizationToolName[] =
2961 "Enable ARC graphic buffers visualization tool";
2962const char kArcGraphicBuffersVisualizationToolDescription[] =
2963 "Enable ARC graphic buffers visualization tool "
2964 "(chrome://arc-graphics-tracing).";
2965
Lev Rumyantsev7a8544312017-08-18 19:26:512966const char kArcNativeBridgeExperimentName[] =
2967 "Enable native bridge experiment for ARC";
2968const char kArcNativeBridgeExperimentDescription[] =
2969 "Enables experimental native bridge feature.";
2970
Jesse Schettlerc3d0a652019-04-23 18:49:242971const char kArcPrintSpoolerExperimentName[] =
2972 "Enable print spooler experiment for ARC";
2973const char kArcPrintSpoolerExperimentDescription[] =
2974 "Enables using Chrome OS print system and print preview in ARC.";
2975
lgchengecd1c1a62018-01-09 02:59:462976const char kArcUsbHostName[] = "Enable ARC USB host integration";
2977const char kArcUsbHostDescription[] =
2978 "Allow Android apps to use USB host feature on ChromeOS devices.";
2979
Kevin Cernekeeb7f96a52017-10-25 17:40:182980const char kArcVpnName[] = "Enable ARC VPN integration";
2981const char kArcVpnDescription[] =
2982 "Allow Android VPN clients to tunnel Chrome traffic.";
2983
Qiang Xu045aff222018-05-21 23:21:012984const char kAshEnableDisplayMoveWindowAccelsName[] =
2985 "Enable shortcuts for moving window between displays.";
2986const char kAshEnableDisplayMoveWindowAccelsDescription[] =
2987 "Enable shortcuts for moving window between displays.";
2988
Sammie Quonfe640ca2019-01-30 17:54:182989const char kAshEnableOverviewRoundedCornersName[] =
2990 "Enable rounded corners in overview mode.";
2991const char kAshEnableOverviewRoundedCornersDescription[] =
2992 "Enables rounded corners on overview windows.";
2993
Qiang Xu045aff222018-05-21 23:21:012994const char kAshEnablePersistentWindowBoundsName[] =
2995 "Enable persistent window bounds in multi-displays scenario.";
2996const char kAshEnablePersistentWindowBoundsDescription[] =
2997 "Enable persistent window bounds in multi-displays scenario.";
2998
Eliot Courtneye87a9c32018-11-20 03:33:022999const char kAshEnablePipRoundedCornersName[] =
3000 "Enable Picture-in-Picture rounded corners.";
3001const char kAshEnablePipRoundedCornersDescription[] =
3002 "Enable rounded corners on the Picture-in-Picture window.";
3003
Brett Wilson7b44537e2017-08-18 01:38:283004const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
3005const char kAshEnableUnifiedDesktopDescription[] =
3006 "Enable unified desktop mode which allows a window to span multiple "
3007 "displays.";
vabr0215a8e2017-03-28 12:47:343008
Sean Kau5e956192017-10-06 22:25:173009const char kBulkPrintersName[] = "Bulk Printers Policy";
3010const char kBulkPrintersDescription[] = "Enables the new bulk printers policy";
3011
Xiaochu Liu51d03fd2017-09-08 23:51:023012const char kCrOSContainerName[] = "Chrome OS Container";
3013const char kCrOSContainerDescription[] =
3014 "Enable the use of Chrome OS Container utility.";
3015
Brett Wilson7b44537e2017-08-18 01:38:283016const char kCrosRegionsModeName[] = "Cros-regions load mode";
3017const char kCrosRegionsModeDescription[] =
3018 "This flag controls cros-regions load mode";
3019const char kCrosRegionsModeDefault[] = "Default";
3020const char kCrosRegionsModeOverride[] = "Override VPD values.";
3021const char kCrosRegionsModeHide[] = "Hide VPD values.";
vabr0215a8e2017-03-28 12:47:343022
Daniel Ng96ab0c82019-01-16 01:21:553023const char kCrostiniAppSearchName[] = "Crostini App Search";
3024const char kCrostiniAppSearchDescription[] =
3025 "Enable search and installation of Crostini apps in the launcher.";
3026
Joel Hockey42387102019-01-10 01:19:323027const char kCrostiniBackupName[] = "Crostini Backup";
3028const char kCrostiniBackupDescription[] = "Enable Crostini export and import.";
3029
Nicholas Verne89be53b2019-03-27 23:08:323030const char kCrostiniUsbAllowUnsupportedName[] =
3031 "Crostini Usb Allow Unsupported";
3032const char kCrostiniUsbAllowUnsupportedDescription[] =
3033 "Allow mounting unsupported Usb devices in Crostini. At your own risk. "
3034 "To enable, Crostini Usb Support must also be enabled.";
3035
Josh Pratt57cea392018-10-30 02:59:063036const char kCrostiniUsbSupportName[] = "Crostini Usb Support";
3037const char kCrostiniUsbSupportDescription[] =
3038 "Enable mounting Usb devices in Crostini.";
3039
Josh Nohle2f82dcc2018-12-17 23:11:233040const char kCryptAuthV2EnrollmentName[] = "CryptAuth v2 Enrollment";
3041const char kCryptAuthV2EnrollmentDescription[] =
3042 "Use the CryptAuth v2 Enrollment protocol.";
3043
Daniele Castagna893d822e2019-03-08 21:37:113044const char kDisableExplicitDmaFencesName[] = "Disable explicit dma-fences";
3045const char kDisableExplicitDmaFencesDescription[] =
3046 "Always rely on implicit syncrhonization between GPU and display "
3047 "controller instead of using dma-fences explcitily when available.";
3048
Sammie Quonef6b4882017-09-14 16:50:053049const char kDisableTabletAutohideTitlebarsName[] =
3050 "Disable autohide titlebars in tablet mode";
3051const char kDisableTabletAutohideTitlebarsDescription[] =
3052 "Disable tablet mode autohide titlebars functionality. The user will be "
3053 "able to see the titlebar in tablet mode.";
3054
Xiaoqian Dai24b33eb2018-04-10 21:01:573055const char kDisableTabletSplitViewName[] = "Disable split view in Tablet mode";
3056const char kDisableTabletSplitViewDescription[] =
3057 "Disable split view for Chrome OS tablet mode.";
3058
Ahmed Fakhry4f567e692018-10-16 15:51:083059const char kDoubleTapToZoomInTabletModeName[] =
3060 "Double-tap to zoom in tablet mode";
3061const char kDoubleTapToZoomInTabletModeDescription[] =
3062 "If Enabled, double tapping in webpages while in tablet mode will zoom the "
3063 "page.";
3064
Matthew Mourgoscf22b4b2019-03-06 23:46:393065const char kEnableAppGridGhostName[] = "App Grid Ghosting";
3066const char kEnableAppGridGhostDescription[] =
3067 "Enables ghosting during an item drag in launcher.";
3068
Daniel Zhang01399072018-08-16 22:28:203069const char kEnableAppListSearchAutocompleteName[] =
3070 "App List Search Autocomplete";
3071const char kEnableAppListSearchAutocompleteDescription[] =
3072 "Allow App List search box to autocomplete queries for Google searches and "
3073 "apps.";
3074
Vladislav Kaznacheevaa213a02018-10-29 17:54:283075const char kEnableAppDataSearchName[] = "Enable app data search in launcher";
3076const char kEnableAppDataSearchDescription[] =
3077 "Allow launcher search to access data available through Firebase App "
3078 "Indexing";
3079
Lei Zhang0a318af2018-11-14 02:19:463080const char kEnableArcUnifiedAudioFocusName[] =
Becca Hughes34415e82018-10-05 18:47:373081 "Enable unified audio focus on ARC";
Lei Zhang0a318af2018-11-14 02:19:463082const char kEnableArcUnifiedAudioFocusDescription[] =
Becca Hughes34415e82018-10-05 18:47:373083 "If audio focus is enabled in Chrome then this will delegate audio focus "
3084 "control in Android apps to Chrome.";
3085
Yue Liebaa9952018-12-07 21:41:263086const char kEnableAssistantAppSupportName[] = "Enable Assistant App Support";
3087const char kEnableAssistantAppSupportDescription[] =
3088 "Enable the Assistant App Support feature";
3089
Meilin Wangb57f92f2019-04-19 04:27:103090const char kEnableAssistantKeyRemappingName[] =
3091 "Enable Assistant Key Remapping";
3092const char kEnableAssistantKeyRemappingDescription[] =
3093 "Allow Assistant key remapping in the keyboard settings.";
3094
Xiaohui Chenb523747b2019-03-14 23:38:323095const char kEnableAssistantLauncherIntegrationName[] =
3096 "Assistant & Launcher integration";
3097const char kEnableAssistantLauncherIntegrationDescription[] =
3098 "Combine Launcher search with the power of Assistant to provide the most "
3099 "useful answer for each query. Requires Assistant to be enabled.";
3100
3101const char kEnableAssistantVoiceMatchName[] = "Enable Assistant Voice Match";
3102const char kEnableAssistantVoiceMatchDescription[] =
3103 "Enable the Assistant Voice Match feature";
3104
Lei Zhang0ca70ea2018-09-07 17:51:013105const char kEnableChromeOsAccountManagerName[] = "Enable Account Manager";
3106const char kEnableChromeOsAccountManagerDescription[] =
Kushagra Sinha8a181fc2018-08-20 17:15:493107 "Enables the Chrome OS Account Manager";
3108
Alexander Alekseev38e1e0a2018-11-08 22:48:483109const char kEnableDiscoverAppName[] = "Enable Discover App";
3110const char kEnableDiscoverAppDescription[] =
3111 "Enable Discover App icon in launcher.";
3112
Sam McNally201fbf94e2018-07-04 03:15:203113const char kEnableDriveFsName[] = "Enable DriveFS";
3114const char kEnableDriveFsDescription[] =
3115 "Enables use of the new DriveFS-based Drive sync client.";
3116
Brett Wilson7b44537e2017-08-18 01:38:283117const char kEnableEncryptionMigrationName[] =
3118 "Enable encryption migration of user data";
3119const char kEnableEncryptionMigrationDescription[] =
3120 "If enabled and the device supports ARC, the user will be asked to update "
3121 "the encryption of user data when the user signs in.";
vabr0215a8e2017-03-28 12:47:343122
Xiaohui Chenfb0943e2018-10-16 22:44:373123const char kEnableGoogleAssistantName[] = "Enable Google Assistant";
3124const char kEnableGoogleAssistantDescription[] =
3125 "Enable an experimental Assistant implementation that will work on all "
3126 "Chromebooks.";
3127
Xiaohui Chenf4283f32018-11-26 20:02:503128const char kEnableGoogleAssistantDspName[] =
3129 "Enable Google Assistant with hardware-based hotword";
3130const char kEnableGoogleAssistantDspDescription[] =
3131 "Enable an experimental feature that uses hardware-based hotword detection "
3132 "for Assistant. Only a limited number of devices have this type of "
3133 "hardware support.";
3134
Xiaohui Chenc3baca42018-11-30 19:29:373135const char kEnableGoogleAssistantStereoInputName[] =
3136 "Enable Google Assistant with stereo audio input";
3137const char kEnableGoogleAssistantStereoInputDescription[] =
3138 "Enable an experimental feature that uses stereo audio input for hotword "
3139 "and voice to text detection in Google Assistant.";
3140
Qiang Xu045aff222018-05-21 23:21:013141const char kEnableHomeLauncherName[] = "Enable home launcher";
3142const char kEnableHomeLauncherDescription[] =
3143 "Enable home launcher in tablet mode.";
3144
Andrew Moylan97585272019-02-19 19:01:223145const char kEnableMyFilesVolumeName[] = "Enable MyFiles as Volume";
3146const char kEnableMyFilesVolumeDescription[] =
3147 "Enables use of MyFiles as a read/write volume. This should be only "
3148 "used for testing or for trying to restore the previous Downloads content.";
3149
Sammie Quon248ccef2018-08-28 23:00:013150const char kEnableOobeRecommendAppsScreenName[] =
3151 "Enable OOBE Recommend Apps Screen";
3152const char kEnableOobeRecommendAppsScreenDescription[] =
3153 "Enable the Recommend Apps Screen in OOBE which allows user to install apps"
3154 "from other devices";
3155
Vladislav Kaznacheevaa213a02018-10-29 17:54:283156const char kEnablePlayStoreSearchName[] = "Enable Play Store search";
3157const char kEnablePlayStoreSearchDescription[] =
3158 "Enable Play Store search in launcher.";
3159
Jazz Xu2e5886662018-12-14 00:38:483160const char kEnableVideoPlayerNativeControlsName[] =
3161 "Enable native controls in video player app";
3162const char kEnableVideoPlayerNativeControlsDescription[] =
3163 "Enable native controls in video player app";
3164
Lei Zhang0ca70ea2018-09-07 17:51:013165const char kEnableZeroStateSuggestionsName[] = "Enable Zero State Suggetions";
3166const char kEnableZeroStateSuggestionsDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013167 "Enable Zero State Suggestions feature in Launcher, which will show "
Vladislav Kaznacheevaa213a02018-10-29 17:54:283168 "suggestions when launcher search box is active with an empty query";
Sammie Quon248ccef2018-08-28 23:00:013169
Akihiro Ota3ff6f8a2019-01-18 17:43:043170const char kExperimentalAccessibilityChromeVoxLanguageSwitchingName[] =
3171 "Enable experimental ChromeVox language switching.";
3172const char kExperimentalAccessibilityChromeVoxLanguageSwitchingDescription[] =
3173 "Enable ChromeVox language switching, which changes ChromeVox's "
3174 "output language upon detection of new language.";
3175
Akihiro Ota000c5e8a2019-03-29 21:48:013176const char kExperimentalAccessibilityChromeVoxRichTextIndicationName[] =
3177 "Enable experimental ChromeVox rich text indication.";
3178const char kExperimentalAccessibilityChromeVoxRichTextIndicationDescription[] =
3179 "Enable ChromeVox rich text indication, which automatically notifies the "
3180 "user of text styling.";
3181
Alex Danilo284b4482019-04-02 09:20:173182const char kFileManagerFeedbackPanelDescription[] =
3183 "Enable new feedback panel in the Files app.";
3184const char kFileManagerFeedbackPanelName[] = "Files App. feedback panel";
3185
Akihiro Ota000c5e8a2019-03-29 21:48:013186const char kFileManagerTouchModeName[] = "Files App. touch mode";
3187const char kFileManagerTouchModeDescription[] =
3188 "Touchscreen-specific interactions of the Files app.";
3189
3190const char kFirstRunUiTransitionsName[] =
3191 "Animated transitions in the first-run tutorial";
3192const char kFirstRunUiTransitionsDescription[] =
3193 "Transitions during first-run tutorial are animated.";
3194
Brett Wilson7b44537e2017-08-18 01:38:283195const char kForceEnableStylusToolsName[] = "Force enable stylus features";
3196const char kForceEnableStylusToolsDescription[] =
3197 "Forces display of the stylus tools menu in the shelf and the stylus "
3198 "section in settings, even if there is no attached stylus device.";
3199
Andrew Moylan97585272019-02-19 19:01:223200const char kFsNosymfollowName[] =
3201 "Prevent symlink traversal on user-supplied filesystems.";
3202const char kFsNosymfollowDescription[] =
3203 "Causes user-supplied filesystems to be mounted with the 'nosymfollow'"
3204 " option, so the chromuimos LSM denies symlink traversal on the"
3205 " filesystem.";
3206
Brett Wilson7b44537e2017-08-18 01:38:283207const char kGestureTypingName[] = "Gesture typing for the virtual keyboard.";
3208const char kGestureTypingDescription[] =
3209 "Enable/Disable gesture typing option in the settings page for the virtual "
3210 "keyboard.";
3211
Becca Hughes71465532019-04-12 19:18:553212const char kHideArcMediaNotificationsName[] = "Hide ARC media notifications";
3213const char kHideArcMediaNotificationsDescription[] =
3214 "Hides media notifications for ARC apps. Requires "
3215 "#enable-media-session-notifications to be enabled.";
3216
Leo Zhang49c34d22019-04-02 09:57:593217const char kImeInputLogicFstName[] = "Enable FST Input Logic on IME";
3218const char kImeInputLogicFstDescription[] =
3219 "Enable FST Input Logic to replace the IME legacy input logic on NaCl";
3220
Andrew Moylan97585272019-02-19 19:01:223221const char kImeServiceName[] = "Enable IME service";
3222const char kImeServiceDescription[] =
3223 "Enable IME service to provide the IME functionality instead of NaCl";
3224
Ahmed Fakhry15d707e2019-02-22 23:54:213225const char kListAllDisplayModesName[] = "List all display modes";
3226const char kListAllDisplayModesDescription[] =
3227 "Enables listing all external displays' modes in the display settings.";
3228
Megumi Hattori5a0d4182018-03-06 11:09:503229const char kLockScreenNotificationName[] = "Lock screen notification";
3230const char kLockScreenNotificationDescription[] =
3231 "Enable notifications on the lock screen.";
3232
Mohsen Izadi06a16f72018-11-29 02:29:223233const char kMashOopVizName[] = "Out-of-process viz for mash";
3234const char kMashOopVizDescription[] =
3235 "Runs viz in a separate process when mash is enabled (otherwise viz would "
3236 "run in ash process)";
3237
Becca Hughes71465532019-04-12 19:18:553238const char kMediaSessionNotificationsName[] = "Media session notifications";
3239const char kMediaSessionNotificationsDescription[] =
3240 "Shows notifications for media sessions showing the currently playing "
3241 "media and providing playback controls";
3242
Brett Wilson7b44537e2017-08-18 01:38:283243const char kMemoryPressureThresholdName[] =
3244 "Memory discard strategy for advanced pressure handling";
3245const char kMemoryPressureThresholdDescription[] =
3246 "Memory discarding strategy to use";
3247const char kConservativeThresholds[] =
3248 "Conservative memory pressure release strategy";
3249const char kAggressiveCacheDiscardThresholds[] =
3250 "Aggressive cache release strategy";
3251const char kAggressiveTabDiscardThresholds[] =
3252 "Aggressive tab release strategy";
3253const char kAggressiveThresholds[] =
3254 "Aggressive tab and cache release strategy";
3255
vabr0215a8e2017-03-28 12:47:343256const char kNetworkPortalNotificationName[] =
3257 "Notifications about captive portals";
vabr0215a8e2017-03-28 12:47:343258const char kNetworkPortalNotificationDescription[] =
3259 "If enabled, notification is displayed when device is connected to a "
3260 "network behind captive portal.";
3261
Anand K. Mistrydb5e0102018-10-04 04:24:003262const char kNewZipUnpackerName[] = "ZIP Archiver (unpacking)";
Brett Wilson7b44537e2017-08-18 01:38:283263const char kNewZipUnpackerDescription[] =
Anand K. Mistrydb5e0102018-10-04 04:24:003264 "Use the ZIP Archiver for mounting/unpacking ZIP files";
vabr0215a8e2017-03-28 12:47:343265
Brett Wilson7b44537e2017-08-18 01:38:283266const char kPhysicalKeyboardAutocorrectName[] = "Physical keyboard autocorrect";
3267const char kPhysicalKeyboardAutocorrectDescription[] =
3268 "Enable physical keyboard autocorrect for US keyboard, which can provide "
3269 "suggestions as typing on physical keyboard.";
vabr0215a8e2017-03-28 12:47:343270
3271const char kPrinterProviderSearchAppName[] =
3272 "Chrome Web Store Gallery app for printer drivers";
vabr0215a8e2017-03-28 12:47:343273const char kPrinterProviderSearchAppDescription[] =
3274 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:193275 "searches Chrome Web Store for extensions that support printing to a USB "
3276 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:343277
Andrew Moylan97585272019-02-19 19:01:223278const char kSchedulerConfigurationName[] = "Scheduler Configuration";
3279const char kSchedulerConfigurationDescription[] =
3280 "Instructs the OS to use a specific scheduler configuration setting.";
3281const char kSchedulerConfigurationConservative[] = "Conservative";
3282const char kSchedulerConfigurationPerformance[] = "Performance";
3283
James Cook0ba192bf2017-12-01 20:53:113284const char kShowTapsName[] = "Show taps";
3285const char kShowTapsDescription[] =
3286 "Draws a circle at each touch point, which makes touch points more obvious "
3287 "when projecting or mirroring the display. Similar to the Android OS "
3288 "developer option.";
3289
3290const char kShowTouchHudName[] = "Show HUD for touch points";
3291const char kShowTouchHudDescription[] =
3292 "Shows a trail of colored dots for the last few touch points. Pressing "
3293 "Ctrl-Alt-I shows a heads-up display view in the top-left corner. Helps "
3294 "debug hardware issues that generate spurious touch events.";
3295
James Cook28d7c482018-09-07 21:00:543296const char kSingleProcessMashName[] =
3297 "In-process window service (SingleProcessMash)";
3298const char kSingleProcessMashDescription[] =
3299 "Runs the system UI (ash) as a mojo service, but inside the browser "
3300 "process. The browser uses the mojo window service (ws) APIs.";
3301
Shu Chen4144c3a2019-04-11 00:54:163302const char kMojoImfName[] = "Mojo-based IMF to bridge the client and IME";
3303const char kMojoImfDescription[] =
3304 "Makes the system UI (ash) as the bridge between the client and the IME via"
3305 " mojo APIs. This can only take effect if the flag \"single-process-masn\" "
3306 "is enabled.";
3307
Jorge Gil5a8ccde2018-07-10 01:46:213308const char kSmartTextSelectionName[] = "Smart Text Selection";
3309const char kSmartTextSelectionDescription[] =
3310 "Shows quick actions for text "
3311 "selections in the context menu.";
3312
Bailey Berro6c989672019-04-11 19:19:203313const char kStreamlinedUsbPrinterSetupName[] =
3314 "Streamlined USB Printer Setup Flow";
3315const char kStreamlinedUsbPrinterSetupDescription[] =
3316 "Automatically sets up capable USB printers when plugged in. Shows a "
3317 "notification with the setup result.";
3318
Brett Wilson7b44537e2017-08-18 01:38:283319const char kTetherName[] = "Instant Tethering";
3320const char kTetherDescription[] =
3321 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
3322 "phone to share its Internet connection with this device.";
stanisc14bed0b132017-05-10 17:46:373323
Brett Wilson7b44537e2017-08-18 01:38:283324const char kTouchscreenCalibrationName[] =
3325 "Enable/disable touchscreen calibration option in material design settings";
3326const char kTouchscreenCalibrationDescription[] =
3327 "If enabled, the user can calibrate the touch screen displays in "
3328 "chrome://settings/display.";
yhanadac5bff5b2017-05-18 06:37:093329
Qiang Xu045aff222018-05-21 23:21:013330const char kUiDevToolsName[] = "Enable native UI inspection";
3331const char kUiDevToolsDescription[] =
3332 "Enables inspection of native UI elements. For local inspection use "
3333 "chrome://inspect#other";
3334
Mitsuru Oshima63d3f2a2017-08-23 00:12:113335// Force UI Mode
3336const char kUiModeName[] = "Force Ui Mode";
3337const char kUiModeDescription[] =
Elly Fong-Jonesf4c15772019-01-31 17:40:063338 "This flag can be used to force a certain mode on to a chromebook, "
3339 "despite its current orientation. \"Tablet\" means that the "
3340 "chromebook will act as if it were in tablet mode. \"Clamshell\" "
3341 "means that the chromebook will act as if it were in clamshell "
3342 "mode. \"Auto\" means that the chromebook will alternate between "
3343 "the two, based on its orientation.";
Min Chenfd25cd22018-11-06 01:50:513344const char kUiModeTablet[] = "Tablet";
Mitsuru Oshima63d3f2a2017-08-23 00:12:113345const char kUiModeClamshell[] = "Clamshell";
3346const char kUiModeAuto[] = "Auto (default)";
3347
Andrew Moylan97585272019-02-19 19:01:223348const char kUiShowCompositedLayerBordersName[] =
3349 "Show UI composited layer borders";
3350const char kUiShowCompositedLayerBordersDescription[] =
3351 "Show border around composited layers created by UI.";
3352const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
3353const char kUiShowCompositedLayerBordersSurface[] = "Surface";
3354const char kUiShowCompositedLayerBordersLayer[] = "Layer";
3355const char kUiShowCompositedLayerBordersAll[] = "All";
3356
3357const char kUiSlowAnimationsName[] = "Slow UI animations";
3358const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
Mattias Nissler6bb633f2019-02-13 23:41:463359
Sonny Sasaka7fecfeda2018-07-11 23:47:553360const char kUnfilteredBluetoothDevicesName[] = "Unfiltered Bluetooth devices";
3361const char kUnfilteredBluetoothDevicesDescription[] =
3362 "Shows all Bluetooth devices in UI (System Tray/Settings Page.)";
3363
Allen Webbcdc8e69d2018-09-12 20:36:003364const char kUsbguardName[] = "Block new USB devices at the lock screen.";
3365const char kUsbguardDescription[] =
3366 "Prevents newly connected USB devices from operating at the lock screen"
3367 " until Chrome OS is unlocked to protect against malicious USB devices."
3368 " Already connected USB devices will continue to function.";
3369
James Cooka1bcfa9a2018-01-30 00:18:403370const char kUseMashName[] = "Out-of-process system UI (mash)";
3371const char kUseMashDescription[] =
3372 "Runs the mojo UI service (mus) and the ash window manager and system UI "
3373 "in a separate process.";
Brett Wilson7b44537e2017-08-18 01:38:283374
Andrew Moylan651220212019-02-19 22:50:143375const char kUserActivityPredictionMlServiceName[] =
3376 "ML Service Smart Dim model";
3377const char kUserActivityPredictionMlServiceDescription[] =
3378 "Uses the new ML Service model for user activity prediction (Smart Dim).";
3379
Andres Calderon Jaramillo43c0e8a2018-08-21 02:46:233380const char kVaapiJpegImageDecodeAccelerationName[] =
3381 "VA-API JPEG decode acceleration for images";
3382const char kVaapiJpegImageDecodeAccelerationDescription[] =
3383 "Enable or disable decode acceleration of JPEG images (as opposed to camera"
3384 " captures) using the VA-API.";
3385
Brett Wilson7b44537e2017-08-18 01:38:283386const char kVirtualKeyboardName[] = "Virtual Keyboard";
3387const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
3388
Brett Wilson7b44537e2017-08-18 01:38:283389const char kWakeOnPacketsName[] = "Wake On Packets";
3390const char kWakeOnPacketsDescription[] =
3391 "Enables waking the device based on the receipt of some network packets.";
orenb21da031c2017-06-30 21:24:203392
Rob Schonbergercf5aeeea2019-02-27 16:57:373393const char kEnableAppReinstallZeroStateName[] =
3394 "Enable Zero State App Reinstall Suggestions.";
3395const char kEnableAppReinstallZeroStateDescription[] =
3396 "Enable Zero State App Reinstall Suggestions feature in launcher, which "
3397 "will show app reinstall recommendations at end of zero state list.";
3398
Tim Song988f7092019-03-01 03:13:393399extern const char kAshNotificationStackingBarRedesignName[] =
3400 "Redesigned notification stacking bar";
3401extern const char kAshNotificationStackingBarRedesignDescription[] =
3402 "Enables the redesigned notification stacking bar UI with a \"Clear all\" "
3403 "button.";
3404
Roman Sorokin6812e0082019-04-01 10:12:573405extern const char kInSessionPasswordChangeName[] =
3406 "Enable user password change in the session";
3407
3408extern const char kInSessionPasswordChangeDescription[] =
3409 "Let user change both their IdP password and Chromebook password on "
3410 "chrome://password-change page.";
3411
yhanadac5bff5b2017-05-18 06:37:093412#endif // defined(OS_CHROMEOS)
3413
Collin Baker75a29462019-03-13 19:57:313414// All views-based platforms --------------------------------------------------
3415
3416#if defined(TOOLKIT_VIEWS)
3417
Sajad Maysamc30d6f82019-03-19 22:52:503418const char kEnableMDRoundedCornersOnDialogsName[] =
Dana Fried4e177f32019-04-11 23:46:463419 "MD corners on secondary UI";
Sajad Maysamc30d6f82019-03-19 22:52:503420const char kEnableMDRoundedCornersOnDialogsDescription[] =
Dana Fried4e177f32019-04-11 23:46:463421 "Increases corner radius on secondary UI.";
Sajad Maysamc30d6f82019-03-19 22:52:503422
Collin Baker75a29462019-03-13 19:57:313423const char kInstallableInkDropName[] = "Use InstallableInkDrop where supported";
3424const char kInstallableInkDropDescription[] =
3425 "InstallableInkDrop is part of an InkDrop refactoring effort. This enables "
3426 "the pilot implementation where available.";
3427
3428#endif // defined(TOOLKIT_VIEWS)
3429
Brett Wilson7b44537e2017-08-18 01:38:283430// Random platform combinations -----------------------------------------------
3431
3432#if defined(OS_WIN) || defined(OS_LINUX)
3433
3434const char kEnableInputImeApiName[] = "Enable Input IME API";
3435const char kEnableInputImeApiDescription[] =
3436 "Enable the use of chrome.input.ime API.";
3437
3438#endif // defined(OS_WIN) || defined(OS_LINUX)
3439
Jiajia Qindb252e92019-01-28 11:47:483440#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_CHROMEOS)
3441
3442const char kWebGL2ComputeContextName[] = "WebGL 2.0 Compute";
3443const char kWebGL2ComputeContextDescription[] =
3444 "Enable the use of WebGL 2.0 Compute API.";
3445
3446#endif // defined(OS_WIN) || defined(OS_LINUX) || defined(OS_CHROMEOS)
3447
lanwei83f54452018-06-21 23:51:043448#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3449
3450const char kDirectManipulationStylusName[] = "Direct Manipulation Stylus";
3451const char kDirectManipulationStylusDescription[] =
3452 "If enabled, Chrome will scroll web pages on stylus drag.";
3453
3454#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3455
Henrik Grunell63f2d772018-12-06 17:25:203456#if defined(OS_MACOSX) || defined(OS_CHROMEOS)
3457
3458const char kForceEnableSystemAecName[] = "Force enable system AEC";
3459const char kForceEnableSystemAecDescription[] =
3460 "Use system echo canceller instead of WebRTC echo canceller. If there is "
3461 "no system echo canceller available, getUserMedia with echo cancellation "
3462 "enabled will fail.";
3463
3464#endif // defined(OS_MACOSX) || defined(OS_CHROMEOS)
3465
David Bienvenuc713d502019-02-07 23:46:323466#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_CHROMEOS)
3467
3468const char kWebContentsOcclusionName[] = "Enable occlusion of web contents";
3469const char kWebContentsOcclusionDescription[] =
3470 "If enabled, web contents will behave as hidden when it is occluded by "
3471 "other windows.";
3472
3473#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_CHROMEOS)
3474
Brett Wilson7b44537e2017-08-18 01:38:283475// Feature flags --------------------------------------------------------------
3476
Lei Zhang0a318af2018-11-14 02:19:463477#if defined(DCHECK_IS_CONFIGURABLE)
3478const char kDcheckIsFatalName[] = "DCHECKs are fatal";
3479const char kDcheckIsFatalDescription[] =
3480 "By default Chrome will evaluate in this build, but only log failures, "
3481 "rather than crashing. If enabled, DCHECKs will crash the calling process.";
3482#endif // defined(DCHECK_IS_CONFIGURABLE)
3483
Brett Wilson7b44537e2017-08-18 01:38:283484#if BUILDFLAG(ENABLE_VR)
3485
Alex Cooper151b596e2019-02-21 01:26:573486const char kWebXrOrientationSensorDeviceName[] = "Orientation sensors for XR";
3487const char kWebXrOrientationSensorDeviceDescription[] =
3488 "Allow use of orientation sensors for XR if present";
3489
Bill Orr103ed272018-02-14 21:23:053490#if BUILDFLAG(ENABLE_OCULUS_VR)
3491const char kOculusVRName[] = "Oculus hardware support";
3492const char kOculusVRDescription[] =
3493 "If enabled, Chrome will use Oculus devices for VR (supported only on "
3494 "Windows 10 or later).";
3495#endif // ENABLE_OCULUS_VR
3496
Bill Orr49527562017-11-22 16:58:483497#if BUILDFLAG(ENABLE_OPENVR)
3498const char kOpenVRName[] = "OpenVR hardware support";
3499const char kOpenVRDescription[] =
Bill Orr5056e692018-01-17 02:08:073500 "If enabled, Chrome will use OpenVR devices for VR (supported only on "
3501 "Windows 10 or later).";
Bill Orr49527562017-11-22 16:58:483502#endif // ENABLE_OPENVR
3503
Bill Orrd2af6bd52019-01-23 02:50:243504#if BUILDFLAG(ENABLE_WINDOWS_MR)
3505const char kWindowsMixedRealityName[] = "Windows Mixed Reality support";
3506const char kWindowsMixedRealityDescription[] =
3507 "If enabled, Chrome will use Windows Mixed Reality devices for VR"
3508 " (supported only on Windows 10 or later).";
3509#endif // ENABLE_WINDOWS_MR
3510
Bill Orrecfb9fe2018-10-02 00:11:103511#if BUILDFLAG(ENABLE_ISOLATED_XR_SERVICE)
3512const char kXRSandboxName[] = "XR device sandboxing";
3513const char kXRSandboxDescription[] =
3514 "If enabled, Chrome will host VR APIs in a restricted process on desktop.";
3515#endif // ENABLE_ISOLATED_XR_SERVICE
3516
Brett Wilson7b44537e2017-08-18 01:38:283517#endif // ENABLE_VR
3518
Derek Schuff71d9a922019-04-24 21:36:003519#if BUILDFLAG(ENABLE_NACL)
3520const char kNaclName[] = "Native Client";
3521const char kNaclDescription[] =
3522 "Support Native Client for all web applications, even those that were not "
3523 "installed from the Chrome Web Store.";
3524#endif // ENABLE_NACL
3525
Lei Zhang802201c2018-11-14 18:16:283526#if BUILDFLAG(ENABLE_PLUGINS)
3527
dstockwellcc759202019-01-11 00:42:123528#if defined(OS_CHROMEOS)
3529const char kPdfAnnotations[] = "PDF Annotations";
Weidong Guo577fe9ac2019-01-28 19:58:103530const char kPdfAnnotationsDescription[] = "Enable annotating PDF documents.";
dstockwellcc759202019-01-11 00:42:123531#endif // defined(OS_CHROMEOS)
3532
Lei Zhang802201c2018-11-14 18:16:283533const char kPdfFormSaveName[] = "Save PDF Forms";
3534const char kPdfFormSaveDescription[] =
3535 "Enable saving PDFs with filled form data.";
3536
3537const char kPdfIsolationName[] = "PDF Isolation";
3538const char kPdfIsolationDescription[] =
3539 "Render PDF files from different origins in different plugin processes.";
3540
3541#endif // BUILDFLAG(ENABLE_PLUGINS)
3542
Brett Wilson7b44537e2017-08-18 01:38:283543#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3544
3545const char kAutofillCreditCardUploadName[] =
3546 "Enable offering upload of Autofilled credit cards";
3547const char kAutofillCreditCardUploadDescription[] =
3548 "Enables a new option to upload credit cards to Google Payments for sync "
3549 "to all Chrome devices.";
3550
3551#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3552
Collin Baker0a45d6a2018-12-20 19:21:503553#if BUILDFLAG(ENABLE_DESKTOP_IN_PRODUCT_HELP)
3554
3555const char kReopenTabInProductHelpName[] = "Reopen tab in-product help";
3556const char kReopenTabInProductHelpDescription[] =
3557 "Enable in-product help that guides a user to reopen a tab if it looks "
3558 "like they accidentally closed it.";
3559
3560#endif // BUILDFLAG(ENABLE_DESKTOP_IN_PRODUCT_HELP)
3561
Tomas Popela253a5832019-01-14 17:22:103562#if defined(WEBRTC_USE_PIPEWIRE)
3563
3564extern const char kWebrtcPipeWireCapturerName[] = "WebRTC PipeWire support";
3565extern const char kWebrtcPipeWireCapturerDescription[] =
3566 "When enabled the WebRTC will use the PipeWire multimedia server for "
3567 "capturing the desktop content on the Wayland display server.";
3568
3569#endif // #if defined(WEBRTC_USE_PIPEWIRE)
3570
Stephen Chenneyde6e5c82019-01-21 01:56:043571const char kAvoidFlashBetweenNavigationName[] =
3572 "Enable flash avoidance between same-origin navigations";
3573const char kAvoidFlahsBetweenNavigationDescription[] =
3574 "Enables experimental flash avoidance when navigating between pages "
3575 "in the same origin. This feature is in the implementation stages and "
3576 "currently has no effect.";
3577
Brett Wilson7b44537e2017-08-18 01:38:283578// ============================================================================
3579// Don't just add flags to the end, put them in the right section in
3580// alphabetical order just like the header file.
3581// ============================================================================
3582
vabr0215a8e2017-03-28 12:47:343583} // namespace flag_descriptions