blob: dae21f7f0a7879233d17f84a4b6949d1f9d24b32 [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
Jared Saulbc672a072018-06-16 05:22:12418const char kEnableAutofillCreditCardUploadEditableCardholderNameName[] =
419 "Make cardholder name editable in dialog during credit card upload";
420const char kEnableAutofillCreditCardUploadEditableCardholderNameDescription[] =
421 "If enabled, in certain situations when offering credit card upload to "
422 "Google Payments, the cardholder name can be edited within the "
423 "offer-to-save dialog, which is prefilled with the name from the signed-in "
424 "Google Account.";
425
Hao Zhang1be9c262018-11-03 00:23:51426const char kEnableAutofillCreditCardUploadEditableExpirationDateName[] =
427 "Make expiration date editable in dialog during credit card upload";
428const char kEnableAutofillCreditCardUploadEditableExpirationDateDescription[] =
429 "If enabled, if a credit card's expiration date was not detected when "
430 "offering card upload to Google Payments, the offer-to-save dialog "
431 "displays an expiration date selector.";
432
Sujie Zhu74dd439e2019-04-27 03:23:39433const char kEnableAutofillDoNotMigrateUnsupportedLocalCardsName[] =
434 "Prevents local card migration on local cards from unsupported networks";
435const char kEnableAutofillDoNotMigrateUnsupportedLocalCardsDescription[] =
436 "If enabled, local cards from unsupported networks will not be offered "
437 "local card migration.";
438
Anne Limc1d23212019-03-07 17:46:08439const char kEnableAutofillDoNotUploadSaveUnsupportedCardsName[] =
440 "Prevents upload save on cards from unsupported networks";
441const char kEnableAutofillDoNotUploadSaveUnsupportedCardsDescription[] =
442 "If enabled, cards from unsupported networks will not be offered upload "
443 "save, and will instead be offered local save.";
444
Hao Zhangd3017112019-02-01 20:13:30445const char kEnableAutofillImportNonFocusableCreditCardFormsName[] =
446 "Allow credit card import from forms that disappear after entry";
447const char kEnableAutofillImportNonFocusableCreditCardFormsDescription[] =
448 "If enabled, offers credit card save for forms that are hidden from the "
449 "page after information has been entered into them, including "
450 "accordion-style checkout flows.";
451
Hao Zhang0c4f18d2019-04-05 01:20:25452const char kEnableAutofillImportDynamicFormsName[] =
453 "Allow credit card import from dynamic forms after entry";
454const char kEnableAutofillImportDynamicFormsDescription[] =
455 "If enabled, offers credit card save for dynamic forms from the page after "
456 "information has been entered into them.";
457
Anne Lim30351782019-03-01 01:57:16458const char kEnableAutofillLocalCardMigrationUsesStrikeSystemV2Name[] =
459 "Enable limit on offering to migrate local cards repeatedly using the "
460 "updated strike system implementation";
461const char kEnableAutofillLocalCardMigrationUsesStrikeSystemV2Description[] =
462 "If enabled, uses the updated strike system implementation to prevent "
463 "offering prompts for local card migration if it has repeatedly been "
464 "ignored, declined, or failed.";
465
tmartinocd414732018-02-12 19:01:01466const char kEnableAutofillNativeDropdownViewsName[] =
467 "Display Autofill Dropdown Using Views";
468const char kEnableAutofillNativeDropdownViewsDescription[] =
469 "If enabled, the Autofill Dropdown will be built natively using Views, "
470 "rather than painted directly to a canvas.";
471
Fabio Tirelo87552e02018-07-06 15:43:21472const char kEnableAutofillSaveCardDialogUnlabeledExpirationDateName[] =
473 "Show unlabeled expiration dates on the save card dialog";
474const char kEnableAutofillSaveCardDialogUnlabeledExpirationDateDescription[] =
475 "If enabled, expiration dates on the save card dialog (both local and "
476 "upstream) are shown without an 'Exp:' label.";
477
siyua172973d2018-11-21 22:23:20478const char kEnableAutofillSaveCardImprovedUserConsentName[] =
479 "Use updated UI for credit card save bubbles";
480const char kEnableAutofillSaveCardImprovedUserConsentDescription[] =
481 "If enabled, adds a [No thanks] button to credit card save bubbles and "
482 "updates their title headers.";
483
Jared Saul8a0c1e92018-10-10 18:22:47484const char kEnableAutofillSaveCreditCardUsesStrikeSystemName[] =
485 "Enable limit on offering to save the same credit card repeatedly";
486const char kEnableAutofillSaveCreditCardUsesStrikeSystemDescription[] =
487 "If enabled, prevents popping up the credit card offer-to-save prompt if "
488 "it has repeatedly been ignored, declined, or failed.";
489
Anne Lim9d8f66a2019-01-07 23:49:21490const char kEnableAutofillSaveCreditCardUsesStrikeSystemV2Name[] =
Anne Lim30351782019-03-01 01:57:16491 "Enable limit on offering to save the same credit card repeatedly using "
492 "the updated strike system implementation";
Anne Lim9d8f66a2019-01-07 23:49:21493const char kEnableAutofillSaveCreditCardUsesStrikeSystemV2Description[] =
Anne Lim30351782019-03-01 01:57:16494 "If enabled, uses the updated strike system implementation to prevent "
495 "popping up the credit card offer-to-save prompt if it has repeatedly been "
Anne Lim9d8f66a2019-01-07 23:49:21496 "ignored, declined, or failed.";
497
Lakshmi Kumar Dabbirua3d0805f2018-05-22 22:04:23498const char kEnableAutofillSendExperimentIdsInPaymentsRPCsName[] =
499 "Send experiment flag IDs in calls to Google Payments";
500const char kEnableAutofillSendExperimentIdsInPaymentsRPCsDescription[] =
501 "If enabled, adds the status of certain experiment variations when making "
502 "calls to Google Payments.";
503
Becca Hughes4d896c42018-05-29 16:58:51504const char kEnableAutoplayIgnoreWebAudioName[] =
505 "Autoplay ignores WebAudio playbacks";
506const char kEnableAutoplayIgnoreWebAudioDescription[] =
507 "If enabled, autoplay restrictions will be ignored for WebAudio.";
508
Becca Hughesc62f6a1d2018-08-16 15:59:47509const char kEnableAutoplayUnifiedSoundSettingsName[] =
510 "Autoplay unified sound settings UI";
511const char kEnableAutoplayUnifiedSoundSettingsDescription[] =
512 "If enabled, shows the new unified autoplay sound settings UI.";
513
Brett Wilsonf27ff602017-07-07 22:28:47514const char kEnableBrotliName[] = "Brotli Content-Encoding.";
515const char kEnableBrotliDescription[] =
516 "Enable Brotli Content-Encoding support.";
517
Robert Ogdenc3703942019-02-06 21:05:49518const char kEnableDataSaverLiteModeRebrandName[] =
519 "Data Saver Lite Mode Rebranding";
520const char kEnableDataSaverLiteModeRebrandDescription[] =
521 "Enable the Data Saver rebranding to Lite Mode.";
522
Tarun Bansal56c92932019-04-01 17:58:36523const char kEnableSaveDataName[] = "Enables save data feature";
524const char kEnableSaveDataDescription[] =
525 "Enables save data feature. May cause user's traffic to be proxied via "
526 "Google's data reduction proxy.";
527
sclittle50e4bb92017-07-08 02:23:03528const char kEnableClientLoFiName[] = "Client-side Lo-Fi previews";
529
530const char kEnableClientLoFiDescription[] =
531 "Enable showing low fidelity images on some pages on slow networks.";
532
Ramin Halavati7dbb0722019-02-15 05:33:49533const char kEnableFilesystemInIncognitoName[] = "Filesystem API in Incognito";
534const char kEnableFilesystemInIncognitoDescription[] =
535 "Enable Filesystem API in incognito mode.";
536
Doug Arnett08b4067b2017-10-12 20:14:44537const char kEnableNoScriptPreviewsName[] = "NoScript previews";
538
539const char kEnableNoScriptPreviewsDescription[] =
540 "Enable disabling JavaScript on some pages on slow networks.";
541
Thanh Le2c279fbc2017-11-21 01:25:40542const char kDataReductionProxyServerAlternative1[] = "Use alt. server config 1";
543const char kDataReductionProxyServerAlternative2[] = "Use alt. server config 2";
544const char kDataReductionProxyServerAlternative3[] = "Use alt. server config 3";
545const char kDataReductionProxyServerAlternative4[] = "Use alt. server config 4";
546const char kDataReductionProxyServerAlternative5[] = "Use alt. server config 5";
547const char kDataReductionProxyServerAlternative6[] = "Use alt. server config 6";
548const char kDataReductionProxyServerAlternative7[] = "Use alt. server config 7";
549const char kDataReductionProxyServerAlternative8[] = "Use alt. server config 8";
550const char kDataReductionProxyServerAlternative9[] = "Use alt. server config 9";
551const char kDataReductionProxyServerAlternative10[] =
552 "Use alt. server config 10";
rajendrantcfa60ba2018-10-30 09:16:54553const char kEnableDataReductionProxyNetworkServiceName[] =
554 "Data reduction proxy with network service";
555const char kEnableDataReductionProxyNetworkServiceDescription[] =
556 "Enable data reduction proxy when network service is enabled";
Brett Wilsonf27ff602017-07-07 22:28:47557const char kEnableDataReductionProxyServerExperimentName[] =
558 "Use an alternative Data Saver back end configuration.";
559const char kEnableDataReductionProxyServerExperimentDescription[] =
560 "Enable a different approach to saving data by configuring the back end "
561 "server";
562
563const char kEnableDataReductionProxySavingsPromoName[] =
564 "Data Saver 1 MB Savings Promo";
565const char kEnableDataReductionProxySavingsPromoDescription[] =
566 "Enable a Data Saver promo for 1 MB of savings. If Data Saver has already "
567 "saved 1 MB of data, then the promo will not be shown. Data Saver must be "
568 "enabled for the promo to be shown.";
569
Matt Giucad4870432017-11-24 01:04:38570const char kEnableDesktopPWAsName[] = "Desktop PWAs";
571const char kEnableDesktopPWAsDescription[] =
572 "Experimental windowing and install banner treatment for Progressive Web "
573 "Apps on desktop platforms. Implies #enable-experimental-app-banners.";
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17574
Giovanni Ortuño Urquidi40c8e792018-02-28 04:18:59575const char kEnableDesktopPWAsLinkCapturingName[] =
576 "Desktop PWAs Link Capturing";
577const char kEnableDesktopPWAsLinkCapturingDescription[] =
578 "Experimentally enable link capturing for Desktop PWAs. Navigations to "
579 "URLs that are in-scope of Desktop PWAs will open in a window. Requires "
580 "#enable-desktop-pwas.";
581
Jay Harris52511a02018-11-02 01:00:28582const char kDesktopPWAsCustomTabUIName[] = "Desktop PWAs Custom Tab UI";
583const char kDesktopPWAsCustomTabUIDescription[] =
584 "Browsing out-of-scope links in a desktop PWA will use the custom tab UI "
585 "for displaying the page title and origin instead of the location bar.";
586
Jay Harrisee7a7bc62018-10-09 01:47:49587const char kDesktopPWAsStayInWindowName[] =
588 "Desktop PWAs out-of-scope links open in the app window";
589const char kDesktopPWAsStayInWindowDescription[] =
Jay Harris52511a02018-11-02 01:00:28590 "Links to sites in a different scope will open inside the PWA window as "
591 "opposed to in the browser.";
Jay Harrisee7a7bc62018-10-09 01:47:49592
Alan Cutter1816c9d2019-02-11 02:20:07593const char kDesktopPWAsOmniboxInstallName[] =
594 "Desktop PWAs installable from the omnibox";
595const char kDesktopPWAsOmniboxInstallDescription[] =
596 "When on a site that passes PWA installation requirements show a button in "
597 "the omnibox for installing it.";
598
Christopher Lame66b7812018-09-26 01:49:24599const char kEnableSystemWebAppsName[] = "System Web Apps";
600const char kEnableSystemWebAppsDescription[] =
601 "Experimental system for using the Desktop PWA framework for running System"
602 "Apps (e.g Settings, Discover).";
603
David Benjamin570460e2018-10-16 06:01:29604const char kEnforceTLS13DowngradeName[] = "TLS 1.3 downgrade hardening";
605const char kEnforceTLS13DowngradeDescription[] =
606 "This option enables the TLS 1.3 downgrade hardening mechanism. This "
607 "hardens TLS 1.3 connections while remaining compatible with TLS 1.0 "
608 "through 1.2 connections. Firewalls and proxies that do not function when "
609 "this is enabled do not implement TLS 1.0 through 1.2 correctly or "
610 "securely. They must be fixed by vendors.";
611
Brett Wilsonf27ff602017-07-07 22:28:47612const char kEnableGenericSensorName[] = "Generic Sensor";
613const char kEnableGenericSensorDescription[] =
Mikhail Pozdnyakov73373a62017-08-24 17:31:25614 "Enables motion sensor classes based on Generic Sensor API, i.e. "
615 "Accelerometer, LinearAccelerationSensor, Gyroscope, "
616 "AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
617
618const char kEnableGenericSensorExtraClassesName[] =
619 "Generic Sensor Extra Classes";
620const char kEnableGenericSensorExtraClassesDescription[] =
621 "Enables an extra set of sensor classes based on Generic Sensor API, which "
622 "expose previously unavailable platform features, i.e. AmbientLightSensor "
623 "and Magnetometer interfaces.";
Brett Wilsonf27ff602017-07-07 22:28:47624
Vikas Soni78daa632019-01-12 01:32:52625const char kEnableGpuServiceLoggingName[] = "Enable gpu service logging";
626const char kEnableGpuServiceLoggingDescription[] =
627 "Enable printing the actual GL driver calls.";
628
Brett Wilsonf27ff602017-07-07 22:28:47629const char kEnableHDRName[] = "HDR mode";
630const char kEnableHDRDescription[] =
631 "Enables HDR support on compatible displays.";
632
David Bokan911bded2018-11-27 23:23:32633const char kEnableImplicitRootScrollerName[] = "Implicit Root Scroller";
634const char kEnableImplicitRootScrollerDescription[] =
635 "Enables implicitly choosing which scroller on a page is the 'root "
636 "scroller'. i.e. The one that gets special features like URL bar movement, "
637 "overscroll glow, rotation anchoring, etc.";
638
Robert Ogden5a63b242018-09-17 21:38:57639const char kEnablePreviewsAndroidOmniboxUIName[] =
640 "Previews Android Omnibox UI";
641const char kEnablePreviewsAndroidOmniboxUIDescription[] =
642 "Enable showing the Previews UI in the Omnibox on Android instead of an "
643 "InfoBar. This has no effect on other platforms.";
644
Robert Ogdence8c9572018-10-08 23:08:48645const char kEnableLitePageServerPreviewsName[] = "Lite Page Server Previews";
646const char kEnableLitePageServerPreviewsDescription[] =
Doug Arnett9c1f87562018-12-14 00:56:39647 "Enable showing Lite Page Previews served from a Previews Server."
648 "This feature will cause Chrome to redirect eligible navigations "
Robert Ogdence8c9572018-10-08 23:08:48649 "to a Google-owned domain that serves a pre-rendered version of the "
Doug Arnett9c1f87562018-12-14 00:56:39650 "original page. Also known as Lite Page Redirect Previews.";
Robert Ogdence8c9572018-10-08 23:08:48651
Ryan Sturm5e4d4422019-02-28 01:32:29652const char kEnableURLLoaderLitePageServerPreviewsName[] =
653 "Lite Page Server Previews using URL Loader";
654const char kEnableURLLoaderLitePageServerPreviewsDescription[] =
655 "Enable using a network service URL Loader for Lite Page Server Previews. "
656 "This requires enable-lite-page-server-previews to be enabled along with "
657 "network-service.";
658
Hiroshige Hayashizaki3ee116af2019-03-05 10:11:22659const char kBuiltInModuleAllName[] = "All experimental built-in modules";
660const char kBuiltInModuleAllDescription[] =
661 "Enable all experimental built-in modules, as well as built-in module "
662 "infrastructure and import maps. The syntax and the APIs exposed are "
663 "experimental and will change over time.";
664
665const char kBuiltInModuleInfraName[] = "Built-in module infra and import maps";
666const char kBuiltInModuleInfraDescription[] =
667 "Enable built-in module infrastructure and import maps. Individual "
668 "built-in modules should be enabled by other flags. The syntax and the "
669 "APIs exposed are experimental and will change over time.";
670
671const char kBuiltInModuleKvStorageName[] = "kv-storage built-in module";
672const char kBuiltInModuleKvStorageDescription[] =
673 "Enable kv-storage built-in module, 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.";
Hiroshige Hayashizaki99d5821e2018-05-02 04:25:41676
Philip Rogers63481332018-12-01 22:16:51677const char kEnableBlinkGenPropertyTreesName[] = "Enable BlinkGenPropertyTrees";
678const char kEnableBlinkGenPropertyTreesDescription[] =
679 "Enable a new compositing mode where Blink generates the compositor "
680 "property trees.";
681
Ian Kilpatricke68ef11a2018-07-04 03:52:10682const char kEnableLayoutNGName[] = "Enable LayoutNG";
683const char kEnableLayoutNGDescription[] =
684 "Enable Blink's next generation layout engine.";
685
Scott Littled0fd2d002018-04-13 03:37:26686const char kEnableLazyFrameLoadingName[] = "Enable lazy frame loading";
687const char kEnableLazyFrameLoadingDescription[] =
688 "Defers the loading of certain cross-origin frames until the page is "
689 "scrolled down near them.";
690
rajendrant793ff512018-08-10 17:07:59691const char kEnableLazyImageLoadingName[] = "Enable lazy image loading";
692const char kEnableLazyImageLoadingDescription[] =
693 "Defers the loading of images until the page is scrolled down near them.";
694
Sidney San Martín9375b892017-09-09 00:29:54695const char kEnableMacMaterialDesignDownloadShelfName[] =
696 "Enable Material Design download shelf";
697
698const char kEnableMacMaterialDesignDownloadShelfDescription[] =
699 "If enabled, the download shelf uses Material Design.";
700
Becca Hughesac86cd442019-01-09 23:49:54701const char kEnableMediaSessionServiceName[] = "Media Session Service";
702const char kEnableMediaSessionServiceDescription[] =
703 "Enables the media session mojo service and internal media session "
704 "support.";
705
Brett Wilsonf27ff602017-07-07 22:28:47706const char kEnableNavigationTracingName[] = "Enable navigation tracing";
707const char kEnableNavigationTracingDescription[] =
708 "This is to be used in conjunction with the trace-upload-url flag. "
709 "WARNING: When enabled, Chrome will record performance data for every "
710 "navigation and upload it to the URL specified by the trace-upload-url "
711 "flag. The trace may include personally identifiable information (PII) "
712 "such as the titles and URLs of websites you visit.";
713
Bernhard Bauer5533f9912017-11-06 17:56:02714const char kEnableNetworkLoggingToFileName[] = "Enable network logging to file";
715const char kEnableNetworkLoggingToFileDescription[] =
716 "Enables network logging to a file named netlog.json in the user data "
717 "directory. The file can be imported into chrome://net-internals.";
718
Brett Wilsonf27ff602017-07-07 22:28:47719const char kEnableNetworkServiceName[] = "Enable network service";
720const char kEnableNetworkServiceDescription[] =
721 "Enables the network service, which makes network requests through a "
John Abd-El-Malek225b04d2018-09-07 22:41:40722 "separate process.";
Brett Wilsonf27ff602017-07-07 22:28:47723
John Abd-El-Malek8067cc02017-12-04 23:23:20724const char kEnableNetworkServiceInProcessName[] =
725 "Runs network service in-process";
726const char kEnableNetworkServiceInProcessDescription[] =
727 "Runs the network service in the browser process.";
728
Shakti Sahu07b052712019-04-02 00:39:37729const char kDownloadAutoResumptionNativeName[] =
730 "Enable download auto-resumption in native";
731const char kDownloadAutoResumptionNativeDescription[] =
732 "Enables download auto-resumption in native";
733
Shakti Sahu5a046f62019-03-12 19:25:34734const char kEnableNewDownloadBackendName[] = "Enable new download backend";
735const char kEnableNewDownloadBackendDescription[] =
736 "Enables the new download backend that uses offline content provider";
737
Lucas Furukawa Gadani9f57e192019-04-05 14:56:10738const char kEnablePortalsName[] = "Enable Portals.";
739const char kEnablePortalsDescription[] =
740 "Portals are an experimental web platform feature that allows embedding"
741 " and seamless transitions between pages."
742 " See https://github.com/WICG/portals and https://wicg.github.io/portals/";
743
Tetsui Ohkuboc3eb87f72018-07-20 02:22:28744const char kEnableNotificationScrollBarName[] =
745 "Enable notification list scroll bar";
746const char kEnableNotificationScrollBarDescription[] =
747 "Enable the scroll bar of the notification list in Unified System Tray.";
748
Mitsuru Otsukae8304de2018-10-29 02:14:36749const char kEnableNotificationExpansionAnimationName[] =
750 "Enable notification expansion animations";
751const char kEnableNotificationExpansionAnimationDescription[] =
752 "Enable notification animations whenever the expansion state is toggled.";
753
Sophie Chang117a3b22017-10-24 22:25:36754const char kEnableOptimizationHintsName[] = "Optimization Hints";
755const char kEnableOptimizationHintsDescription[] =
Sophie Chang5454ce82018-07-16 17:44:50756 "Enable the Optimization Hints feature which incorporates server hints "
Sophie Chang117a3b22017-10-24 22:25:36757 "into decisions for what optimizations to perform on some pages on slow "
758 "networks.";
759
Takashi Toyoshima2e01e692018-11-16 03:23:27760const char kEnableOutOfBlinkCorsName[] = "Out of blink CORS";
761const char kEnableOutOfBlinkCorsDescription[] =
Yutaka Hirano98be3272017-08-07 17:55:39762 "CORS handling logic is moved out of blink.";
763
Chris Halle952239e2018-11-06 06:49:52764const char kExperimentalAccessibilityFeaturesName[] =
765 "Experimental accessibility features";
766const char kExperimentalAccessibilityFeaturesDescription[] =
767 "Enable additional accessibility features in the Settings page.";
768
Katie D652135c2018-11-27 18:30:13769const char kExperimentalAccessibilityAutoclickName[] =
770 "Experimental automatic click features";
771const char kExperimentalAccessibilityAutoclickDescription[] =
772 "Enable additional features for automatic clicks.";
773
Chris Hall4a4225f62019-01-18 03:07:16774const char kExperimentalAccessibilityLanguageDetectionName[] =
775 "Experimental accessibility language detection";
776const char kExperimentalAccessibilityLanguageDetectionDescription[] =
777 "Enable language detection for in-page content which is then exposed to "
778 "accessiblity technologies such as screen readers.";
779
Anastasia Helfinsteinafecc68c2018-11-26 19:20:17780const char kExperimentalAccessibilitySwitchAccessName[] =
781 "Experimental feature Switch Access";
782const char kExperimentalAccessibilitySwitchAccessDescription[] =
783 "Add a setting to enable the prototype of Switch Access";
784
kylechar7051c092018-02-05 20:31:39785const char kVizDisplayCompositorName[] = "Viz Display Compositor (OOP-D)";
786const char kVizDisplayCompositorDescription[] =
787 "If enabled, the display compositor runs as part of the viz service in the"
788 "GPU process.";
789
Xianda Sunfa2a35922019-04-15 19:01:28790const char kVizHitTestName[] = "Viz Hit-test";
791const char kVizHitTestDescription[] =
Ria Jiang6a129b982018-03-01 18:30:40792 "If enabled, event targeting uses the new viz-assisted hit-testing logic, "
Xianda Sunfa2a35922019-04-15 19:01:28793 "with hit-test data computed from the CompositorFrame or the SurfaceLayer.";
Ria Jiang6a129b982018-03-01 18:30:40794
Rahul Arakeri61a2ad272019-03-19 22:55:08795const char kCompositorThreadedScrollbarScrollingName[] =
796 "Enable compositor threaded scrollbar scrolling";
797const char kCompositorThreadedScrollbarScrollingDescription[] =
798 "Enables pointer-based scrollbar scrolling on the compositor thread "
799 "instead of the main thread";
800
Alexei Filippov522a5222019-03-29 03:33:18801const char kMemlogName[] = "Chrome heap profiler start mode.";
802const char kMemlogDescription[] =
803 "Starts heap profiling service that records sampled memory allocation "
804 "profile having each sample attributed with a callstack. "
805 "The sampling resolution is controlled with --memlog-sampling-rate flag. "
806 "Recorded heap dumps can be obtained at chrome://tracing "
807 "[category:memory-infra] and chrome://memory-internals. This setting "
808 "controls which processes will be profiled since their start. To profile "
809 "any given process at a later time use chrome://memory-internals page.";
810const char kMemlogModeMinimal[] = "Browser and GPU";
811const char kMemlogModeAll[] = "All processes";
812const char kMemlogModeAllRenderers[] = "All renderers";
813const char kMemlogModeRendererSampling[] = "Single renderer";
814const char kMemlogModeBrowser[] = "Browser only";
815const char kMemlogModeGpu[] = "GPU only";
Alexei Filippov2e8bfee2019-03-07 21:51:27816
Alexei Filippov522a5222019-03-29 03:33:18817const char kMemlogSamplingRateName[] =
818 "Heap profiling sampling interval (in bytes).";
819const char kMemlogSamplingRateDescription[] =
820 "Heap profiling service uses Poisson process to sample allocations. "
821 "Default value for the interval between samples is 100000 (100KB). "
822 "This results in low noise for large and/or frequent allocations "
Alexei Filippov2e8bfee2019-03-07 21:51:27823 "[size * frequency >> 100KB]. This means that aggregate numbers [e.g. "
erikchen99bfce02018-02-14 20:29:22824 "total size of malloc-ed objects] and large and/or frequent allocations "
Alexei Filippov522a5222019-03-29 03:33:18825 "can be trusted with high fidelity. "
826 "Lower intervals produce higher samples resolution, but come at a cost of "
827 "higher performance overhead.";
828const char kMemlogSamplingRate10KB[] = "10KB";
829const char kMemlogSamplingRate50KB[] = "50KB";
830const char kMemlogSamplingRate100KB[] = "100KB";
831const char kMemlogSamplingRate500KB[] = "500KB";
832const char kMemlogSamplingRate1MB[] = "1MB";
833const char kMemlogSamplingRate5MB[] = "5MB";
erikchen8bc20d82018-02-14 03:21:51834
Alexei Filippov522a5222019-03-29 03:33:18835const char kMemlogStackModeName[] = "Heap profiling stack traces type.";
836const char kMemlogStackModeDescription[] =
837 "By default heap profiling service records native stacks. "
838 "A post-processing step is required to symbolize the stacks. "
839 "'Native with thread names' adds the thread name as the first frame of "
840 "each native stack. It's also possible to record a pseudo stack using "
841 "trace events as identifiers. It's also possible to do a mix of both.";
842const char kMemlogStackModeMixed[] = "Mixed";
843const char kMemlogStackModeNative[] = "Native";
844const char kMemlogStackModeNativeWithThreadNames[] = "Native with thread names";
845const char kMemlogStackModePseudo[] = "Trace events";
Erik Chen3303fd0232018-01-11 20:29:05846
F#m59d036e2017-09-13 07:22:17847const char kEnablePixelCanvasRecordingName[] = "Enable pixel canvas recording";
848const char kEnablePixelCanvasRecordingDescription[] =
849 "Pixel canvas recording allows the compositor to raster contents aligned "
850 "with the pixel and improves text rendering. This should be enabled when a "
851 "device is using fractional scale factor.";
852
Ella Gebee81c92018-08-14 15:51:09853const char kEnableResamplingInputEventsName[] =
854 "Enable resampling input events";
855const char kEnableResamplingInputEventsDescription[] =
856 "Predicts mouse and touch inputs position at rAF time based on previous "
857 "input";
858const char kEnableResamplingScrollEventsName[] =
859 "Enable resampling scroll events";
860const char kEnableResamplingScrollEventsDescription[] =
861 "Predicts the scroll amount at vsync time based on previous input";
862
Doug Arnettaa0bf202018-08-27 19:42:11863const char kEnableResourceLoadingHintsName[] = "Enable resource loading hints";
864const char kEnableResourceLoadingHintsDescription[] =
865 "Enable using server-provided resource loading hints to provide a preview "
866 "over slow network connections.";
867
Raphael Kubo da Costab72914b2019-03-13 09:20:39868const char kEnableSensorContentSettingName[] = "Sensor content setting";
869const char kEnableSensorContentSettingDescription[] =
870 "Enable UI in content settings to control access to the sensor APIs.";
871
Mohamed Amir Yosef0178fa892018-07-23 17:43:52872const char kEnableSyncUSSBookmarksName[] = "Enable USS for bookmarks sync";
873const char kEnableSyncUSSBookmarksDescription[] =
874 "Enables the new, experimental implementation of bookmark sync";
875
Mohamed Amir Yosef3074dfc2019-02-06 18:34:43876const char kEnableSyncUSSPasswordsName[] = "Enable USS for passwords sync";
877const char kEnableSyncUSSPasswordsDescription[] =
878 "Enables the new, experimental implementation of passwords sync";
879
Mikel Astiz38837f82018-04-24 22:23:23880const char kEnableSyncUSSSessionsName[] = "Enable USS for sessions sync";
881const char kEnableSyncUSSSessionsDescription[] =
882 "Enables the new, experimental implementation of session sync (aka tab "
883 "sync).";
884
David Bokane9370c22019-02-14 15:19:58885const char kEnableTextFragmentAnchorName[] = "Enable Text Fragment Anchor.";
886const char kEnableTextFragmentAnchorDescription[] =
887 "Enables scrolling to text specified in URL's fragment.";
888
Brett Wilsonf27ff602017-07-07 22:28:47889const char kEnableUseZoomForDsfName[] =
890 "Use Blink's zoom for device scale factor.";
891const char kEnableUseZoomForDsfDescription[] =
892 "If enabled, Blink uses its zooming mechanism to scale content for device "
893 "scale factor.";
894const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
895const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
896const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
897
Patrick Noland8ee016e2018-01-24 11:44:53898const char kEnableScrollAnchorSerializationName[] =
899 "Scroll Anchor Serialization";
900const char kEnableScrollAnchorSerializationDescription[] =
901 "Save the scroll anchor and use it to restore the scroll position when "
902 "navigating.";
903
Brad Nelson5cd500e2018-01-04 00:50:19904const char kEnableSharedArrayBufferName[] =
905 "Experimental enabled SharedArrayBuffer support in JavaScript.";
906const char kEnableSharedArrayBufferDescription[] =
907 "Enable SharedArrayBuffer support in JavaScript.";
908
Brett Wilsonf27ff602017-07-07 22:28:47909const char kEnableWasmName[] = "WebAssembly structured cloning support.";
910const char kEnableWasmDescription[] =
911 "Enable web pages to use WebAssembly structured cloning.";
912
Lei Zhang0ca70ea2018-09-07 17:51:01913const char kEnableWebAuthenticationCableSupportName[] =
Kim Paulhamus92431372018-07-20 02:25:47914 "Web Authentication caBLE support";
Lei Zhang0ca70ea2018-09-07 17:51:01915const char kEnableWebAuthenticationCableSupportDescription[] =
Kim Paulhamus92431372018-07-20 02:25:47916 "Enable the cloud-assisted pairingless BLE protocol for use with "
917 "the Web Authentication API.";
Kim Paulhamusae635a32018-06-27 07:30:54918
Adam Langley64bc04232019-03-30 21:05:56919const char kEnableWebAuthenticationPINSupportName[] =
920 "Web Authentication PIN support";
921const char kEnableWebAuthenticationPINSupportDescription[] =
922 "Enable the use of PINs with the Web Authentication API and compatible "
923 "security keys.";
924
Ramin Halavatic158b182018-10-18 14:04:54925const char kEnableIncognitoWindowCounterName[] = "Incognito Window Counter";
926const char kEnableIncognitoWindowCounterDescription[] =
927 "Shows the count of Incognito windows next to the Incognito icon on the "
928 "toolbar.";
929
Clemens Hammacher0c8a15a2018-04-27 13:45:32930const char kEnableWasmBaselineName[] = "WebAssembly baseline compiler";
931const char kEnableWasmBaselineDescription[] =
932 "Enables WebAssembly baseline compilation and tier up.";
933
Bill Budged0dace172019-02-10 00:46:21934const char kEnableWasmCodeCacheName[] = "WebAssembly compiled module cache";
935const char kEnableWasmCodeCacheDescription[] =
936 "Enables caching of compiled WebAssembly modules.";
937
Clemens Hammacher082fa572019-04-25 08:22:29938const char kEnableWasmCodeGCName[] = "WebAssembly code garbage collection";
939const char kEnableWasmCodeGCDescription[] =
940 "Enables garbage collection of WebAssembly code.";
941
Ben Smith24c1e5c2018-06-20 01:09:02942const char kEnableWasmThreadsName[] = "WebAssembly threads support.";
943const char kEnableWasmThreadsDescription[] =
944 "Enables support for the WebAssembly Threads proposal. Implies "
945 "#shared-array-buffer and #enable-webassembly.";
946
Brett Wilsonf27ff602017-07-07 22:28:47947const char kExpensiveBackgroundTimerThrottlingName[] =
948 "Throttle expensive background timers";
949const char kExpensiveBackgroundTimerThrottlingDescription[] =
950 "Enables intervention to limit CPU usage of background timers to 1%.";
951
952const char kExperimentalAppBannersName[] = "Experimental app banners";
953const char kExperimentalAppBannersDescription[] =
Matt Giucad4870432017-11-24 01:04:38954 "Enables a new experimental app banner flow and UI. Implies "
955 "#enable-app-banners.";
Brett Wilsonf27ff602017-07-07 22:28:47956
957const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
958const char kExperimentalCanvasFeaturesDescription[] =
959 "Enables the use of experimental canvas features which are still in "
960 "development.";
961
962const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
963const char kExperimentalExtensionApisDescription[] =
964 "Enables experimental extension APIs. Note that the extension gallery "
965 "doesn't allow you to upload extensions that use experimental APIs.";
966
Ian Clelland37a985d2018-05-04 02:43:13967const char kExperimentalProductivityFeaturesName[] =
968 "Experimental Productivity Features";
969const char kExperimentalProductivityFeaturesDescription[] =
970 "Enable support for experimental developer productivity features, such as "
Hiroshige Hayashizaki3ee116af2019-03-05 10:11:22971 "built-in modules and policies for avoiding slow rendering.";
Ian Clelland37a985d2018-05-04 02:43:13972
Brett Wilsonf27ff602017-07-07 22:28:47973const char kExperimentalSecurityFeaturesName[] =
974 "Potentially annoying security features";
975const char kExperimentalSecurityFeaturesDescription[] =
976 "Enables several security features that will likely break one or more "
977 "pages that you visit on a daily basis. Strict mixed content checking, for "
978 "example. And locking powerful features to secure contexts. This flag will "
979 "probably annoy you.";
980
981const char kExperimentalWebPlatformFeaturesName[] =
982 "Experimental Web Platform features";
983const char kExperimentalWebPlatformFeaturesDescription[] =
984 "Enables experimental Web Platform features that are in development.";
985
986const char kExtensionContentVerificationName[] =
987 "Extension Content Verification";
988const char kExtensionContentVerificationDescription[] =
989 "This flag can be used to turn on verification that the contents of the "
990 "files on disk for extensions from the webstore match what they're "
991 "expected to be. This can be used to turn on this feature if it would not "
992 "otherwise have been turned on, but cannot be used to turn it off (because "
993 "this setting can be tampered with by malware).";
994const char kExtensionContentVerificationBootstrap[] =
995 "Bootstrap (get expected hashes, but do not enforce them)";
996const char kExtensionContentVerificationEnforce[] =
997 "Enforce (try to get hashes, and enforce them if successful)";
998const char kExtensionContentVerificationEnforceStrict[] =
999 "Enforce strict (hard fail if we can't get hashes)";
1000
Peter Boströma445353a2019-03-21 02:58:151001const char kExtensionsToolbarMenuName[] = "Extensions Toolbar Menu";
1002const char kExtensionsToolbarMenuDescription[] =
1003 "Enable a separate toolbar button and menu for extensions";
1004
Brett Wilsonf27ff602017-07-07 22:28:471005const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
1006const char kExtensionsOnChromeUrlsDescription[] =
1007 "Enables running extensions on chrome:// URLs, where extensions explicitly "
1008 "request this permission.";
galinapae72e152017-05-12 13:12:281009
Brett Wilsonecb80982017-07-12 20:34:511010const char kFeaturePolicyName[] = "Feature Policy";
1011const char kFeaturePolicyDescription[] =
1012 "Enables granting and removing access to features through the "
1013 "Feature-Policy HTTP header.";
vabr0215a8e2017-03-28 12:47:341014
Brett Wilsonecb80982017-07-12 20:34:511015const char kForceEffectiveConnectionTypeName[] =
1016 "Override effective connection type";
1017const char kForceEffectiveConnectionTypeDescription[] =
1018 "Overrides the effective connection type of the current connection "
Thanh Lea98f12f2017-12-18 19:35:301019 "returned by the network quality estimator. Slow 2G on Cellular returns "
1020 "Slow 2G when connected to a cellular network, and the actual estimate "
1021 "effective connection type when not on a cellular network. Previews are "
1022 "usually served on 2G networks.";
Brett Wilsonecb80982017-07-12 20:34:511023const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
1024const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
1025const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
Thanh Lea98f12f2017-12-18 19:35:301026const char kEffectiveConnectionTypeSlow2GOnCellularDescription[] =
1027 "Slow 2G On Cellular";
Brett Wilsonecb80982017-07-12 20:34:511028const char kEffectiveConnectionType2GDescription[] = "2G";
1029const char kEffectiveConnectionType3GDescription[] = "3G";
1030const char kEffectiveConnectionType4GDescription[] = "4G";
1031
1032const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
1033const char kFillOnAccountSelectDescription[] =
1034 "Filling of passwords when an account is explicitly selected by the user "
1035 "rather than autofilling credentials on page load.";
1036
jdoerrie11c5f4f2019-02-04 18:29:181037const char kFillOnAccountSelectHttpName[] =
1038 "Fill passwords on account selection on HTTP origins";
1039const char kFillOnAccountSelectHttpDescription[] =
1040 "Filling of passwords when an account is explicitly selected by the user "
1041 "rather than autofilling credentials on page load on HTTP origins.";
1042
Brett Wilsonecb80982017-07-12 20:34:511043const char kForceTextDirectionName[] = "Force text direction";
1044const char kForceTextDirectionDescription[] =
1045 "Explicitly force the per-character directionality of UI text to "
1046 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
1047 "direction of the character language.";
1048const char kForceDirectionLtr[] = "Left-to-right";
1049const char kForceDirectionRtl[] = "Right-to-left";
1050
1051const char kForceUiDirectionName[] = "Force UI direction";
1052const char kForceUiDirectionDescription[] =
1053 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
1054 "mode, overriding the default direction of the UI language.";
1055
Brett Wilsonecb80982017-07-12 20:34:511056const char kGpuRasterizationName[] = "GPU rasterization";
1057const char kGpuRasterizationDescription[] =
1058 "Use GPU to rasterize web content. Requires impl-side painting.";
Brett Wilson7b44537e2017-08-18 01:38:281059const char kForceGpuRasterization[] = "Force-enabled for all layers";
Brett Wilsonecb80982017-07-12 20:34:511060
Ioana Pandele1ed7ef72018-11-21 15:22:031061const char kGooglePasswordManagerName[] = "Google Password Manager UI";
1062const char kGooglePasswordManagerDescription[] =
1063 "Enables access to the Google Password Manager UI from Chrome.";
1064
Brett Wilsonecb80982017-07-12 20:34:511065const char kGoogleProfileInfoName[] = "Google profile name and icon";
1066const char kGoogleProfileInfoDescription[] =
1067 "Enables using Google information to populate the profile name and icon in "
1068 "the avatar menu.";
1069
Takumi Fujimotofb71e332018-03-31 14:04:081070const char kViewsCastDialogName[] = "Views Cast dialog";
1071const char kViewsCastDialogDescription[] =
manukaddd3c42019-04-09 21:20:591072 "Replace the WebUI Cast dialog with a Views toolkit dialog.";
Takumi Fujimotofb71e332018-03-31 14:04:081073
Gabrielle Paladoaebf7ca2019-01-16 07:07:061074const char kHandwritingGestureName[] = "Handwriting Gestures";
1075const char kHandwritingGestureDescription[] =
1076 "Enables handwriting gestures within the virtual keyboard";
1077
Tommy Steimel1aadd7b2019-01-18 19:39:421078const char kHardwareMediaKeyHandling[] = "Hardware Media Key Handling";
1079const char kHardwareMediaKeyHandlingDescription[] =
1080 "Enables using media keys to control the active media session. This "
1081 "requires MediaSessionService to be enabled too";
1082
Manu Cornet4a908de2018-04-09 04:32:271083const char kHideActiveAppsFromShelfName[] =
1084 "Hide running apps (that are not pinned) from the shelf";
1085const char kHideActiveAppsFromShelfDescription[] =
1086 "Save space in the shelf by hiding running apps (that are not pinned).";
Manu Cornete5f855b2018-03-13 03:35:251087
Ryan Landay4242dbc22018-04-04 01:47:331088const char kHorizontalTabSwitcherAndroidName[] =
1089 "Enable horizontal tab switcher";
1090const char kHorizontalTabSwitcherAndroidDescription[] =
1091 "Changes the layout of the Android tab switcher so tabs scroll "
1092 "horizontally instead of vertically.";
1093
Matt Simmons2048b2a2018-12-20 20:12:561094const char kTabSwitcherOnReturnName[] = "Enable tab switcher on return";
1095const char kTabSwitcherOnReturnDescription[] =
1096 "Enable tab switcher on return after specified time has elapsed";
1097
Brett Wilsonecb80982017-07-12 20:34:511098const char kHostedAppQuitNotificationName[] =
1099 "Quit notification for hosted apps";
1100const char kHostedAppQuitNotificationDescription[] =
1101 "Display a notification when quitting Chrome if hosted apps are currently "
1102 "running.";
1103
1104const char kHostedAppShimCreationName[] =
1105 "Creation of app shims for hosted apps on Mac";
1106const char kHostedAppShimCreationDescription[] =
1107 "Create app shims on Mac when creating a hosted app.";
1108
Joe DeBlasio20a2a7b2019-04-30 02:33:541109const char kHTTPAuthCommittedInterstitialsName[] =
1110 "Enable Committed Interstitials for HTTP Auth";
1111const char kHTTPAuthCommittedInterstitialsDescription[] =
1112 "Use committed error pages instead of transient navigation entries "
1113 "for HTTP auth interstitial pages.";
1114
Brett Wilsonecb80982017-07-12 20:34:511115const char kIconNtpName[] = "Large icons on the New Tab page";
1116const char kIconNtpDescription[] =
1117 "Enable the experimental New Tab page using large icons.";
1118
1119const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
1120const char kIgnoreGpuBlacklistDescription[] =
1121 "Overrides the built-in software rendering list and enables "
1122 "GPU-acceleration on unsupported system configurations.";
1123
Ryan Sturm8c3dbc92018-06-26 19:22:371124const char kIgnorePreviewsBlacklistName[] = "Ignore Previews Blocklist";
Thanh Le5f090efa52017-12-27 22:39:441125const char kIgnorePreviewsBlacklistDescription[] =
Ryan Sturm8c3dbc92018-06-26 19:22:371126 "Ignore decisions made by the PreviewsBlockList";
Thanh Le5f090efa52017-12-27 22:39:441127
Alexandre Frechetted3e1b542018-12-13 14:40:501128const char kImprovedGeoLanguageDataName[] = "Improved Geo-language Data";
1129const char kImprovedGeoLanguageDataDescription[] =
1130 "Makes the GeoLanguageModel use higher quality, more refined ULP "
1131 "geo-language data.";
1132
Brett Wilsonecb80982017-07-12 20:34:511133const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
1134const char kInProductHelpDemoModeChoiceDescription[] =
1135 "Selects the In-Product Help demo mode.";
1136
1137const char kJavascriptHarmonyName[] = "Experimental JavaScript";
1138const char kJavascriptHarmonyDescription[] =
1139 "Enable web pages to use experimental JavaScript features.";
1140
1141const char kJavascriptHarmonyShippingName[] =
1142 "Latest stable JavaScript features";
1143const char kJavascriptHarmonyShippingDescription[] =
1144 "Some web pages use legacy or non-standard JavaScript extensions that may "
1145 "conflict with the latest JavaScript features. This flag allows disabling "
1146 "support of those features for compatibility with such pages.";
1147
Yutaka Hiranof7f2f632017-09-06 10:40:081148const char kKeepAliveRendererForKeepaliveRequestsName[] =
1149 "Keep a renderer alive for keepalive fetch requests";
1150const char kKeepAliveRendererForKeepaliveRequestsDescription[] =
1151 "Keep a render process alive when the process has a pending fetch request "
1152 "with `keepalive' specified.";
1153
Brett Wilsonecb80982017-07-12 20:34:511154const char kLcdTextName[] = "LCD text antialiasing";
1155const char kLcdTextDescription[] =
1156 "If disabled, text is rendered with grayscale antialiasing instead of LCD "
1157 "(subpixel) when doing accelerated compositing.";
1158
1159const char kLoadMediaRouterComponentExtensionName[] =
1160 "Load Media Router Component Extension";
1161const char kLoadMediaRouterComponentExtensionDescription[] =
1162 "Loads the Media Router component extension at startup.";
1163
Hazem Ashmawyf1cd7e42019-03-25 18:17:321164const char kLogJsConsoleMessagesName[] =
1165 "Log JS console messages in system logs";
1166const char kLogJsConsoleMessagesDescription[] =
1167 "Enable logging JS console messages in system logs, please note that they "
1168 "may contain PII.";
1169
Mustafa Emre Acer137dc8b2018-08-29 20:38:131170const char kLookalikeUrlNavigationSuggestionsName[] =
1171 "Navigation suggestions for lookalike URLs";
1172const char kLookalikeUrlNavigationSuggestionsDescription[] =
1173 "Enable navigation suggestions for URLs that are visually similar to "
1174 "popular domains or to domains with a site engagement score.";
1175
Brett Wilsonecb80982017-07-12 20:34:511176const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
1177const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
Brett Wilsonecb80982017-07-12 20:34:511178
spqchanb87755692018-04-05 00:46:091179const char kMediaRouterCastAllowAllIPsName[] =
1180 "Connect to Cast devices on all IP addresses";
1181const char kMediaRouterCastAllowAllIPsDescription[] =
1182 "Have the Media Router connect to Cast devices on all IP addresses, not "
Nick Harperd30507ca2018-08-16 20:24:311183 "just RFC1918/RFC4193 private addresses.";
spqchanb87755692018-04-05 00:46:091184
Brett Wilsonecb80982017-07-12 20:34:511185const char kMessageCenterNewStyleNotificationName[] = "New style notification";
1186const char kMessageCenterNewStyleNotificationDescription[] =
1187 "Enables the experiment style of material-design notification";
1188
Ehsan Karamadebb0f672019-03-22 19:48:391189const char kMimeHandlerViewInCrossProcessFrameName[] =
1190 "MimeHandlerView in cross-process frame";
1191const char kMimeHandlerViewInCrossProcessFrameDescription[] =
1192 "Loads the MimeHandlerView (the extension viewer for certain MIME types "
1193 "such as PDF) in a cross-process frame as opposed to a BrowserPlugin.";
1194
David Roger2183afb2019-02-21 14:19:151195const char kMobileIdentityConsistencyName[] = "Mobile identity consistency";
1196const char kMobileIdentityConsistencyDescription[] =
1197 "Enables stronger identity consistency on mobile";
1198
Marijn Kruisselbrinkca4bb5e2019-04-22 18:19:421199const char kNativeFileSystemAPIName[] = "Native File System API";
1200const char kNativeFileSystemAPIDescription[] =
1201 "Enables the experimental Native File System API, giving websites access "
1202 "to the native file system";
Marijn Kruisselbrinkfa0e1052019-03-05 22:32:551203
Brett Wilsonecb80982017-07-12 20:34:511204const char kNewAudioRenderingMixingStrategyName[] =
1205 "New audio rendering mixing strategy";
1206const char kNewAudioRenderingMixingStrategyDescription[] =
1207 "Use the new audio rendering mixing strategy.";
1208
1209const char kNewBookmarkAppsName[] = "The new bookmark app system";
1210const char kNewBookmarkAppsDescription[] =
1211 "Enables the new system for creating bookmark apps.";
1212
Vadym Doroshenkocd4ff782018-07-24 13:41:021213const char kNewPasswordFormParsingName[] =
1214 "New password form parsing for filling passwords";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241215const char kNewPasswordFormParsingDescription[] =
Vadym Doroshenkocd4ff782018-07-24 13:41:021216 "Replaces existing form parsing for filling in password manager with a new "
1217 "version, currently under development. WARNING: when enabled, Password "
1218 "Manager might stop working";
1219
1220const char kNewPasswordFormParsingForSavingName[] =
1221 "New password form parsing for saving passwords";
1222const char kNewPasswordFormParsingForSavingDescription[] =
1223 "Replaces existing form parsing for saving in password manager with a new "
1224 "version, currently under development. WARNING: when enabled, Password "
1225 "Manager might stop working";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241226
rbpotter62fe2c92019-03-26 22:01:291227const char kNewPrintPreviewLayoutName[] = "Enable New Print Preview UI Layout";
1228const char kNewPrintPreviewLayoutDescription[] =
1229 "If enabled, Print Preview will display a new UI layout.";
1230
CJ DiMeglio7b4a199f2017-11-30 01:26:501231const char kUseSurfaceLayerForVideoName[] =
1232 "Enable the use of SurfaceLayer objects for videos.";
1233const char kUseSurfaceLayerForVideoDescription[] =
1234 "Enable compositing onto a Surface instead of a VideoLayer "
1235 "for videos.";
Brett Wilsonecb80982017-07-12 20:34:511236
1237const char kNewUsbBackendName[] = "Enable new USB backend";
1238const char kNewUsbBackendDescription[] =
1239 "Enables the new experimental USB backend for Windows.";
vabr0215a8e2017-03-28 12:47:341240
Sonny Sasaka2d200432018-03-22 17:43:161241const char kNewblueName[] = "Newblue";
1242const char kNewblueDescription[] =
1243 "Enables the use of newblue Bluetooth daemon.";
1244
Peter Boström7df25c72018-12-12 06:40:191245const char kNewTabLoadingAnimation[] = "New tab-loading animation";
1246const char kNewTabLoadingAnimationDescription[] =
1247 "Enables a new look for the tab-loading animation.";
1248
Egor Pasko6fed3822018-05-30 10:33:141249const char kNostatePrefetchName[] = "NoState Prefetch";
vabr0215a8e2017-03-28 12:47:341250const char kNostatePrefetchDescription[] =
Elly Fong-Jonesf4c15772019-01-31 17:40:061251 "If enabled, pre-downloads resources to improve page load speed.";
vabr0215a8e2017-03-28 12:47:341252
Alex Newcomerd7b0cc42018-05-25 22:58:481253const char kNotificationIndicatorName[] = "Notification Indicators";
1254const char kNotificationIndicatorDescription[] =
1255 "Enable notification indicators, which appear on app icons when a "
1256 "notification is active. This will also enable notifications in context "
1257 "menus.";
1258
Brett Wilsonecb80982017-07-12 20:34:511259const char kNotificationsNativeFlagName[] = "Enable native notifications.";
1260const char kNotificationsNativeFlagDescription[] =
1261 "Enable support for using the native notification toasts and notification "
1262 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:341263
Valeriya Sinevich972ac122018-09-05 07:33:191264const char kUseMultiloginEndpointName[] = "Use Multilogin endpoint.";
1265const char kUseMultiloginEndpointDescription[] =
1266 "Use Gaia OAuth multilogin for identity consistency.";
1267
Zentaro Kavanaghbad511c2017-10-18 22:29:001268#if defined(OS_POSIX)
1269const char kNtlmV2EnabledName[] = "Enable NTLMv2 Authentication";
1270const char kNtlmV2EnabledDescription[] =
1271 "Enable NTLMv2 HTTP Authentication. This disables NTLMv1 support.";
1272#endif
1273
Brett Wilsonecb80982017-07-12 20:34:511274const char kOfferStoreUnmaskedWalletCardsName[] =
1275 "Google Payments card saving checkbox";
1276const char kOfferStoreUnmaskedWalletCardsDescription[] =
1277 "Show the checkbox to offer local saving of a credit card downloaded from "
1278 "the server.";
1279
1280const char kOfflineAutoReloadName[] = "Offline Auto-Reload Mode";
1281const char kOfflineAutoReloadDescription[] =
1282 "Pages that fail to load while the browser is offline will be "
1283 "auto-reloaded when the browser is online again.";
1284
1285const char kOfflineAutoReloadVisibleOnlyName[] =
1286 "Only Auto-Reload Visible Tabs";
1287const char kOfflineAutoReloadVisibleOnlyDescription[] =
1288 "Pages that fail to load while the browser is offline will only be "
1289 "auto-reloaded if their tab is visible.";
1290
Tommy C. Lia6912d7d2019-04-24 21:27:461291const char kOmniboxAlternateMatchDescriptionSeparatorName[] =
1292 "Omnibox Alternate Match Description Separator";
1293const char kOmniboxAlternateMatchDescriptionSeparatorDescription[] =
1294 "Shows an alternate separator before the description of omnibox matches. "
1295 "In English, this changes the separator from '-' to '|'.";
1296
Brett Wilsonecb80982017-07-12 20:34:511297const char kOmniboxDisplayTitleForCurrentUrlName[] =
1298 "Include title for the current URL in the omnibox";
1299const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
1300 "In the event that the omnibox provides suggestions on-focus, the URL of "
1301 "the current page is provided as the first suggestion without a title. "
1302 "Enabling this flag causes the title to be displayed.";
1303
manukaddd3c42019-04-09 21:20:591304const char kOmniboxLocalEntitySuggestionsName[] =
1305 "Omnibox Local Entity Suggestions";
1306const char kOmniboxLocalEntitySuggestionsDescription[] =
1307 "Enables location specific suggestions displayed with images and enhanced "
1308 "layout, similar to #omnibox-rich-entity-suggestions. Enabling this feature"
1309 "will also enable #omnibox-rich-entity-suggestions.";
1310
manuk2e55a7b2019-02-12 20:08:231311const char kOmniboxMaterialDesignWeatherIconsName[] =
1312 "Omnibox Material Design Weather Icons";
1313const char kOmniboxMaterialDesignWeatherIconsDescription[] =
1314 "Use material design weather icons in the omnibox when displaying weather "
1315 "answers.";
1316
Tomasz Wiszkowskic87dff12019-01-15 02:57:511317const char kOmniboxNewAnswerLayoutName[] = "Omnibox new answer layout";
1318const char kOmniboxNewAnswerLayoutDescription[] =
1319 "Modernize omnibox answers using an enhanced layout with larger icons.";
1320
Tomasz Wiszkowskic7fd5bed2019-02-11 17:33:231321const char kOmniboxRichEntitySuggestionsName[] =
1322 "Omnibox rich entity suggestions";
1323const char kOmniboxRichEntitySuggestionsDescription[] =
1324 "Display entity suggestions using images and an enhanced layout; showing "
manukaddd3c42019-04-09 21:20:591325 "more context and descriptive text about the entity.";
Tomasz Wiszkowskic7fd5bed2019-02-11 17:33:231326
Benoit Lizeab08362c2017-07-19 14:50:541327const char kOmniboxSpareRendererName[] =
1328 "Start spare renderer on omnibox focus";
1329const char kOmniboxSpareRendererDescription[] =
1330 "When the omnibox is focused, start an empty spare renderer. This can "
1331 "speed up the load of the navigation from the omnibox.";
1332
manuk3c0e70a2019-02-21 16:30:551333const char kOmniboxUIBlueSearchLoopAndSearchQueryName[] =
1334 "Omnibox UI Blue Search Loop and Search Query";
1335const char kOmniboxUIBlueSearchLoopAndSearchQueryDescription[] =
1336 "Color the generic search icon and search terms blue.";
1337
manuk4451d032019-02-22 17:24:401338const char kOmniboxUIBlueTitlesAndGrayUrlsOnPageSuggestionsName[] =
1339 "Omnibox UI Blue Titles And Gray Urls On Page Suggestions";
1340const char kOmniboxUIBlueTitlesAndGrayUrlsOnPageSuggestionsDescription[] =
1341 "Displays navigation suggestions with blue titles and gray URLs.";
1342
1343const char kOmniboxUIBlueTitlesOnPageSuggestionsName[] =
1344 "Omnibox UI Blue Titles On Page Suggestions";
1345const char kOmniboxUIBlueTitlesOnPageSuggestionsDescription[] =
1346 "Displays navigation suggestions with blue titles.";
1347
manuk59fd5a62019-02-27 21:14:091348const char kOmniboxUIBoldUserTextOnSearchSuggestionsName[] =
1349 "Omnibox UI Bold User Text On Search Suggestions";
1350const char kOmniboxUIBoldUserTextOnSearchSuggestionsDescription[] =
1351 "Bolds the user text instead of autocomplete text for search suggestions.";
1352
Tommy C. Lib5bf6152019-04-23 22:13:161353const char kOmniboxUICuesForSearchHistoryMatchesName[] =
1354 "Omnibox UI Cues to Differentiate Search History Matches";
1355const char kOmniboxUICuesForSearchHistoryMatchesDescription[] =
1356 "Shows UI cues in the omnibox to differentiate Search History matches from "
1357 "other search suggestions provided by the default search provider. This "
1358 "feature is a narrow subset of Omnibox Suggestion Transparency Options.";
1359
Tommy C. Lie4194b732018-09-28 22:21:511360const char kOmniboxUIHideSteadyStateUrlSchemeName[] =
1361 "Omnibox UI Hide Steady-State URL Scheme";
1362const char kOmniboxUIHideSteadyStateUrlSchemeDescription[] =
1363 "In the omnibox, hide the scheme from steady state displayed URLs. It is "
Tommy C. Libef94ee02018-10-17 19:56:361364 "restored during editing.";
Tommy C. Lie4194b732018-09-28 22:21:511365
Tommy C. Lib20aec72018-11-19 21:38:231366const char kOmniboxUIOneClickUnelideName[] = "Omnibox UI One Click Unelide";
1367const char kOmniboxUIOneClickUnelideDescription[] =
1368 "In the omnibox, undo all unelisions with a single click or focus action.";
1369
Tommy C. Lie4194b732018-09-28 22:21:511370const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsName[] =
1371 "Omnibox UI Hide Steady-State URL Trivial Subdomains";
1372const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsDescription[] =
1373 "In the omnibox, hide trivial subdomains from steady state displayed URLs. "
Tommy C. Libef94ee02018-10-17 19:56:361374 "Hidden portions are restored during editing.";
1375
1376const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefName[] =
1377 "Omnibox UI Hide Steady-State URL Path, Query, and Ref";
1378const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefDescription[] =
1379 "In the omnibox, hide the path, query and ref from steady state displayed "
1380 "URLs. Hidden portions are restored during editing.";
Tommy C. Lid79d4402017-12-22 22:49:121381
Brett Wilsonecb80982017-07-12 20:34:511382const char kOmniboxUIMaxAutocompleteMatchesName[] =
1383 "Omnibox UI Max Autocomplete Matches";
Brett Wilsonecb80982017-07-12 20:34:511384const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
1385 "Changes the maximum number of autocomplete matches displayed in the "
1386 "Omnibox UI.";
1387
Dan Beamc9b97fe82019-04-26 02:56:081388const char kOmniboxUIShowPlaceholderWhenCaretShowingName[] =
1389 "Omnibox UI Show Placeholder When Caret Showing";
1390const char kOmniboxUIShowPlaceholderWhenCaretShowingDescription[] =
1391 "Shows the \"Search Google or type a URL\" placeholder text in the "
1392 "omnibox when it's focused / the caret cursor is showing.";
1393
manuk4f56e9fc2019-02-19 18:04:511394const char kOmniboxUIShowSuffixOnAllSearchSuggestionsName[] =
1395 "Omnibox UI Show Suffix On All Search Suggestions";
1396const char kOmniboxUIShowSuffixOnAllSearchSuggestionsDescription[] =
1397 "Shows the search suffix (e.g. \" - Google Search\") on all search "
1398 "suggestions in the omnibox.";
1399
Tommy C. Liba4e66ef2019-02-12 21:33:281400const char kOmniboxUIShowSuggestionFaviconsName[] =
1401 "Omnibox UI Show Suggestion Favicons";
1402const char kOmniboxUIShowSuggestionFaviconsDescription[] =
1403 "Shows favicons instead of generic vector icons for URL suggestions in the "
1404 "Omnibox dropdown.";
1405
Justin Donnelly65c9e8b2017-10-01 05:15:011406const char kOmniboxUISwapTitleAndUrlName[] = "Omnibox UI Swap Title and URL";
1407const char kOmniboxUISwapTitleAndUrlDescription[] =
1408 "In the omnibox dropdown, shows titles before URLs when both are "
1409 "available.";
1410
manuk0187cfa2019-02-27 21:23:241411const char kOmniboxUIUnboldSuggestionTextName[] =
1412 "Omnibox UI Unbold Suggestion Text";
1413const char kOmniboxUIUnboldSuggestionTextDescription[] =
1414 "Displays search suggestions without bolding.";
1415
manuk12527c802019-02-19 16:38:301416const char kOmniboxUIUseGenericSearchEngineIconName[] =
1417 "Omnibox UI Use Generic Search Engine Icon";
1418const char kOmniboxUIUseGenericSearchEngineIconDescription[] =
1419 "In the omnibox and NTP, shows a generic magnifying glass icon instead of "
1420 "the Search Provider favicon.";
1421
Tommy C. Lia737d3e82019-02-13 23:06:141422const char kOmniboxUIVerticalMarginName[] = "Omnibox UI Vertical Margin";
1423const char kOmniboxUIVerticalMarginDescription[] =
1424 "Changes the vertical margin in the Omnibox UI.";
1425
manukce2cdcf72019-02-26 15:59:291426const char kOmniboxUIWhiteBackgroundOnBlurName[] =
1427 "Omnibox UI White Background On Blur";
1428const char kOmniboxUIWhiteBackgroundOnBlurDescription[] =
manuk59fd5a62019-02-27 21:14:091429 "Set the omnibox background white when it's unfocused";
manukce2cdcf72019-02-26 15:59:291430
Tomasz Wiszkowski947f6d0d2019-03-15 22:27:251431const char kOmniboxZeroSuggestionsOnNTPName[] =
1432 "Omnibox Zero Suggestions on New Tab Page";
1433const char kOmniboxZeroSuggestionsOnNTPDescription[] =
1434 "Offer suggestions when URL bar (omnibox) is focused.";
1435
Vadym Doroshenko6b8f64d2018-11-26 15:35:391436const char kOnlyNewPasswordFormParsingName[] =
1437 "Use only new password form parsing";
1438const char kOnlyNewPasswordFormParsingDescription[] =
1439 "The old password form parsing is disabled";
1440
Mark Lieufaa1b762019-01-08 19:37:281441const char kOnTheFlyMhtmlHashComputationName[] =
1442 "On-The-Fly MHTML Hash Computation";
1443const char kOnTheFlyMhtmlHashComputationDescription[] =
1444 "Save MHTML files to the target location and calculate their content "
1445 "digests in one step.";
1446
Adrienne Walkerc87477e2018-06-06 22:28:211447const char kOopRasterizationName[] = "Out of process rasterization";
1448const char kOopRasterizationDescription[] =
1449 "Perform Ganesh raster in the GPU Process instead of the renderer. "
1450 "Must also enable GPU rasterization";
1451
Brett Wilsonecb80982017-07-12 20:34:511452const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
1453const char kOverlayScrollbarsDescription[] =
1454 "Enable the experimental overlay scrollbars implementation. You must also "
1455 "enable threaded compositing to have the scrollbars animate.";
1456
chaopenge8aa016b2017-08-24 15:20:191457const char kOverlayScrollbarsFlashAfterAnyScrollUpdateName[] =
1458 "Flash Overlay Scrollbars After Any Scroll Update";
1459const char kOverlayScrollbarsFlashAfterAnyScrollUpdateDescription[] =
1460 "Flash Overlay Scrollbars After any scroll update happends in page. You"
1461 " must also enable Overlay Scrollbars.";
1462
chaopeng343678022017-08-24 18:45:001463const char kOverlayScrollbarsFlashWhenMouseEnterName[] =
1464 "Flash Overlay Scrollbars When Mouse Enter";
1465const char kOverlayScrollbarsFlashWhenMouseEnterDescription[] =
1466 "Flash Overlay Scrollbars When Mouse Enter a scrollable area. You must also"
1467 " enable Overlay Scrollbars.";
1468
Daniele Castagna74ddb9c2018-06-21 22:59:021469const char kOverlayStrategiesName[] = "Select HW overlay strategies";
1470const char kOverlayStrategiesDescription[] =
1471 "Select strategies used to promote quads to HW overlays.";
1472const char kOverlayStrategiesDefault[] = "Default";
1473const char kOverlayStrategiesNone[] = "None";
1474const char kOverlayStrategiesUnoccludedFullscreen[] =
1475 "Unoccluded fullscreen buffers (single-fullscreen)";
1476const char kOverlayStrategiesUnoccluded[] =
1477 "Unoccluded buffers (single-fullscreen,single-on-top)";
1478const char kOverlayStrategiesOccludedAndUnoccluded[] =
1479 "Occluded and unoccluded buffers "
1480 "(single-fullscreen,single-on-top,underlay)";
1481
Claudio Magni81326f92017-09-01 05:21:181482const char kUseNewAcceptLanguageHeaderName[] = "Use new Accept-Language header";
1483const char kUseNewAcceptLanguageHeaderDescription[] =
1484 "Adds the base language code after other corresponding language+region "
1485 "codes. This ensures that users receive content in their preferred "
1486 "language.";
1487
Brett Wilsonecb80982017-07-12 20:34:511488const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
1489const char kOverscrollHistoryNavigationDescription[] =
Mohsen Izadi88b392a2018-02-15 06:57:481490 "History navigation in response to horizontal overscroll.";
Brett Wilsonecb80982017-07-12 20:34:511491
1492const char kOverscrollStartThresholdName[] = "Overscroll start threshold";
1493const char kOverscrollStartThresholdDescription[] =
1494 "Changes overscroll start threshold relative to the default value.";
1495const char kOverscrollStartThreshold133Percent[] = "133%";
1496const char kOverscrollStartThreshold166Percent[] = "166%";
1497const char kOverscrollStartThreshold200Percent[] = "200%";
1498
chaopenge2b6e5f2018-05-08 16:40:451499const char kTouchpadOverscrollHistoryNavigationName[] =
1500 "Overscroll history navigation on Touchpad";
1501const char kTouchpadOverscrollHistoryNavigationDescription[] =
1502 "Allows swipe left/right from touchpad change browser navigation.";
1503
Xing Liu5400a002017-09-15 21:48:291504const char kParallelDownloadingName[] = "Parallel downloading";
1505const char kParallelDownloadingDescription[] =
Yannic Bonenbergera32f9902017-11-20 18:47:061506 "Enable parallel downloading to accelerate download speed.";
Xing Liu5400a002017-09-15 21:48:291507
Brett Wilsonecb80982017-07-12 20:34:511508const char kPassiveEventListenerDefaultName[] =
1509 "Passive Event Listener Override";
1510const char kPassiveEventListenerDefaultDescription[] =
1511 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
1512 "haven't requested otherwise) to be treated as passive. This will break "
1513 "touch/wheel behavior on some websites but is useful for demonstrating the "
1514 "potential performance benefits of adopting passive event listeners.";
1515const char kPassiveEventListenerTrue[] = "True (when unspecified)";
1516const char kPassiveEventListenerForceAllTrue[] = "Force All True";
1517
1518const char kPassiveEventListenersDueToFlingName[] =
1519 "Touch Event Listeners Passive Default During Fling";
1520const char kPassiveEventListenersDueToFlingDescription[] =
1521 "Forces touchstart, and first touchmove per scroll event listeners during "
1522 "fling to be treated as passive.";
1523
1524const char kPassiveDocumentEventListenersName[] =
1525 "Document Level Event Listeners Passive Default";
1526const char kPassiveDocumentEventListenersDescription[] =
1527 "Forces touchstart, and touchmove event listeners on document level "
1528 "targets (which haven't requested otherwise) to be treated as passive.";
1529
Sahel Sharify7400e882018-08-13 17:13:211530const char kPassiveDocumentWheelEventListenersName[] =
1531 "Document Level Wheel Event Listeners Passive Default";
1532const char kPassiveDocumentWheelEventListenersDescription[] =
1533 "Forces wheel, and mousewheel event listeners on document level targets "
1534 "(which haven't requested otherwise) to be treated as passive.";
1535
Vaclav Brozekd8a3f542017-11-16 14:21:131536const char kPasswordImportName[] = "Password import";
1537const char kPasswordImportDescription[] =
1538 "Import functionality in password settings.";
Brett Wilsonecb80982017-07-12 20:34:511539
Friedrich Horschige6c27742018-04-23 17:13:411540const char kPasswordsKeyboardAccessoryName[] =
1541 "Add password-related functions to keyboard accessory";
1542const char kPasswordsKeyboardAccessoryDescription[] =
1543 "Adds password generation button and toggle for the passwords bottom sheet "
1544 "to the keyboard accessory. Replaces password generation popups.";
1545
Christos Froussios6e060c42018-07-31 16:17:191546const char kPasswordsMigrateLinuxToLoginDBName[] =
1547 "Migrate passwords to \"Login Data\"";
1548const char kPasswordsMigrateLinuxToLoginDBDescription[] =
Christos Froussiose34c38a2018-09-04 14:27:591549 "Performs a one-off irreversible migration of passwords from the "
Christos Froussios6e060c42018-07-31 16:17:191550 "gnome-keyring or kwallet into the profile directory.";
1551
Rouslan Solomakhinded840112018-11-02 13:27:101552const char kPerMethodCanMakePaymentQuotaName[] =
1553 "Per-method canMakePayment() quota.";
1554const char kPerMethodCanMakePaymentQuotaDescription[] =
1555 "Allow calling canMakePayment() for different payment methods, as long as "
1556 "method-specific parameters remain unchanged.";
1557
Doug Arnett620ff542018-02-06 17:54:221558const char kPreviewsAllowedName[] = "Previews Allowed";
1559const char kPreviewsAllowedDescription[] =
1560 "Allows previews to be shown subject to specific preview types being "
1561 "enabled and the client experiencing specific triggering conditions. "
1562 "May be used as a kill-switch to turn off all potential preview types.";
1563
Brett Wilsonecb80982017-07-12 20:34:511564const char kPrintPdfAsImageName[] = "Print Pdf as Image";
1565const char kPrintPdfAsImageDescription[] =
1566 "If enabled, an option to print PDF files as images will be available in "
1567 "print preview.";
1568
1569const char kPrintPreviewRegisterPromosName[] =
1570 "Print Preview Registration Promos";
1571const char kPrintPreviewRegisterPromosDescription[] =
1572 "Enable registering unregistered cloud printers from print preview.";
1573
Mohsen Izadi93faac12017-07-29 04:45:151574const char kPullToRefreshName[] = "Pull-to-refresh gesture";
1575const char kPullToRefreshDescription[] =
1576 "Pull-to-refresh gesture in response to vertical overscroll.";
Mohsen Izadi8c59ba52018-04-12 18:52:011577const char kPullToRefreshEnabledTouchscreen[] = "Enabled for touchscreen only";
Mohsen Izadi93faac12017-07-29 04:45:151578
Troy Hildebrandt7228ad12018-02-23 21:18:241579const char kQueryInOmniboxName[] = "Query in Omnibox";
1580const char kQueryInOmniboxDescription[] =
1581 "Only display query terms in the omnibox when viewing a search results "
1582 "page.";
1583
Brett Wilsonecb80982017-07-12 20:34:511584const char kQuicName[] = "Experimental QUIC protocol";
1585const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1586
1587const char kReducedReferrerGranularityName[] =
1588 "Reduce default 'referer' header granularity.";
1589const char kReducedReferrerGranularityDescription[] =
1590 "If a page hasn't set an explicit referrer policy, setting this flag will "
1591 "reduce the amount of information in the 'referer' header for cross-origin "
1592 "requests.";
1593
Christian Dullweber3cc579a22018-09-11 10:54:441594const char kRewriteLevelDBOnDeletionName[] =
1595 "Rewrite LevelDB instances after full deletions";
1596const char kRewriteLevelDBOnDeletionDescription[] =
1597 "Rewrite LevelDB instances to remove traces of deleted data from disk.";
1598
Yutaka Hirano4c0f2f5d452017-11-17 04:24:351599const char kRendererSideResourceSchedulerName[] =
1600 "Renderer side ResourceScheduler";
1601const char kRendererSideResourceSchedulerDescription[] =
1602 "Migrate some ResourceScheduler functionalities to renderer";
1603
Brett Wilsonecb80982017-07-12 20:34:511604const char kRequestTabletSiteName[] =
1605 "Request tablet site option in the settings menu";
1606const char kRequestTabletSiteDescription[] =
1607 "Allows the user to request tablet site. Web content is often optimized "
1608 "for tablet devices. When this option is selected the user agent string is "
1609 "changed to indicate a tablet device. Web content optimized for tablets is "
1610 "received there after for the current tab.";
1611
Kinuko Yasuda33955082018-06-19 10:14:591612const char kResourceLoadSchedulerName[] = "Enable resource load throttling";
Brett Wilsonecb80982017-07-12 20:34:511613const char kResourceLoadSchedulerDescription[] =
Kinuko Yasuda33955082018-06-19 10:14:591614 "Uses the resource load scheduler in blink to throttle resource load "
1615 "requests.";
Brett Wilsonecb80982017-07-12 20:34:511616
Daniel Rubery91874e32019-01-10 22:12:341617const char kSafeBrowsingUseAPDownloadVerdictsName[] =
1618 "Request Advanced Protection verdicts when inspecting downloads";
1619const char kSafeBrowsingUseAPDownloadVerdictsDescription[] =
1620 "If enabled, download protection will request Advanced Protection "
1621 "verdicts from Safe Browsing. These will provide stronger protections "
1622 "from files Safe Browsing is unsure about.";
1623
Brett Wilsonecb80982017-07-12 20:34:511624const char kSafeSearchUrlReportingName[] = "SafeSearch URLs reporting.";
1625const char kSafeSearchUrlReportingDescription[] =
1626 "If enabled, inappropriate URLs can be reported back to SafeSearch.";
1627
Lily Chene0d3ac92019-04-22 16:55:531628const char kSameSiteByDefaultCookiesName[] = "SameSite by default cookies";
1629const char kSameSiteByDefaultCookiesDescription[] =
1630 "Treat cookies that don't specify a SameSite attribute as if they were "
1631 "SameSite=Lax. Sites must specify SameSite=None in order to enable "
1632 "third-party usage.";
1633
Brett Wilsonecb80982017-07-12 20:34:511634const char kSaveasMenuLabelExperimentName[] =
1635 "Switch 'Save as' menu labels to 'Download'";
1636const char kSaveasMenuLabelExperimentDescription[] =
1637 "Enables an experiment to switch menu labels that use 'Save as...' to "
1638 "'Download'.";
1639
Charlene Yan0ccd7f52019-04-12 23:20:591640const char kScrollableTabStripName[] = "Scrollable TabStrip";
1641const char kScrollableTabStripDescription[] =
1642 "Allows users to access tabs by scrolling when they no longer fit in the "
1643 "tabstrip.";
1644
Sébastien Séguin-Gagnon30481922019-04-24 21:31:001645const char kSendTabToSelfBroadcastName[] = "Send tab to self broadcast";
1646const char kSendTabToSelfBroadcastDescription[] =
1647 "Allows users to broadcast the tab they send to all of their devices "
1648 "instead of targetting only one device.";
1649
Jeffrey Cohene49cc59c2018-10-23 16:27:281650const char kSendTabToSelfName[] = "Send tab to self";
1651const char kSendTabToSelfDescription[] =
Tanya Gupta035a9e202019-04-08 20:01:331652 "Allows users to receive tabs from other synced devices, in order to "
1653 "easily transition those tabs to this device. This enables the sync "
1654 "infrastructure for this feature.";
Jeffrey Cohene49cc59c2018-10-23 16:27:281655
Tanya Gupta035a9e202019-04-08 20:01:331656const char kSendTabToSelfShowSendingUIName[] =
1657 "Send tab to self show sending UI";
1658const char kSendTabToSelfShowSendingUIDescription[] =
1659 "Allows users to send tabs to other synced devices by accessing the "
1660 "sending user interface. Requires Send tab to self to also be enabled";
Jeffrey Cohen9f3e6092019-03-21 21:55:011661
Travis Skare885f8ad2019-04-25 21:33:371662const char kSendTabToSelfWhenSignedInName[] =
1663 "Send tab to self: enable use when signed-in regardless of sync state";
1664const char kSendTabToSelfWhenSignedInDescription[] =
1665 "Allows use of the send-tab-to-self feature for users who are signed-in "
1666 "but not necessarily syncing. The tab-share data is thus ephemeral, "
1667 "rather than persistent sync data.";
1668
momohattfc352292018-08-29 05:12:361669const char kServiceWorkerImportedScriptUpdateCheckName[] =
1670 "Enable update check for service worker importScripts() resources";
1671const char kServiceWorkerImportedScriptUpdateCheckDescription[] =
1672 "Extend byte-for-byte update check for scripts that are imported by the "
1673 "service worker script via importScripts().";
1674
Azeem Arshad3b1ef73122018-08-30 02:04:151675const char kServiceWorkerLongRunningMessageName[] =
1676 "Service worker long running message dispatch.";
1677const char kServiceWorkerLongRunningMessageDescription[] =
1678 "Enables long running message dispatch method for service workers. "
1679 "Messages sent with this method do not timeout, allowing the service "
1680 "worker to run indefinitely.";
1681
Chris Hamiltonb9612e262019-02-12 21:12:061682const char kSessionRestorePrioritizesBackgroundUseCasesName[] =
1683 "Session restore prioritizes background use cases.";
1684const char kSessionRestorePrioritizesBackgroundUseCasesDescription[] =
1685 "When enabled session restore logic will prioritize sites that make use of "
1686 "background communication mechanisms (favicon and tab title switches, "
1687 "notifications, etc) over sites that do not.";
1688
Brett Wilsonecb80982017-07-12 20:34:511689const char kSettingsWindowName[] = "Show settings in a window";
1690const char kSettingsWindowDescription[] =
1691 "Settings will be shown in a dedicated window instead of as a browser tab.";
1692
Manu Cornetd7ef7c52018-05-01 22:08:231693const char kShelfHoverPreviewsName[] =
1694 "Show previews of running apps when hovering over the shelf.";
1695const char kShelfHoverPreviewsDescription[] =
1696 "Shows previews of the open windows for a given running app when hovering "
1697 "over the shelf.";
1698
Naoki Fukino008a0022018-05-23 18:33:001699const char kShowAndroidFilesInFilesAppName[] =
1700 "Show Android files in Files app";
1701const char kShowAndroidFilesInFilesAppDescription[] =
1702 "Show Android files in Files app if Android is enabled on the device.";
1703
Brett Wilsonecb80982017-07-12 20:34:511704const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
1705const char kShowAutofillSignaturesDescription[] =
Maxim Kolosovskiye66f8cb2018-03-23 10:25:381706 "Annotates web forms with Autofill signatures as HTML attributes. Also "
1707 "marks password fields suitable for password generation.";
Brett Wilsonecb80982017-07-12 20:34:511708
1709const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
1710const char kShowAutofillTypePredictionsDescription[] =
1711 "Annotates web forms with Autofill field type predictions as placeholder "
1712 "text.";
1713
Jonathan Backer93610a82019-03-27 14:02:381714const char kSkiaRendererName[] = "Skia API for OOP-D compositing";
1715const char kSkiaRendererDescription[] =
1716 "If enabled, the display compositor will use Skia as the graphics API "
1717 "instead of OpenGL ES. Requires Viz Display Compositor (OOP-D).";
1718
Shivani Sharma2d5b4b6b2019-01-08 16:07:161719const char kHistoryManipulationIntervention[] =
1720 "History Manipulation Intervention";
1721const char kHistoryManipulationInterventionDescription[] =
1722 "If a page does a client side redirect or adds to the history without a "
1723 "user gesture, then skip it on back/forward UI.";
1724
Carlos IL89128732018-04-03 17:00:251725const char kSupervisedUserCommittedInterstitialsName[] =
1726 "Enable Supervised User Committed Interstitials";
1727const char kSupervisedUserCommittedInterstitialsDescription[] =
1728 "Use committed error pages instead of transient navigation entries for "
1729 "supervised user interstitials";
1730
Brett Wilsonecb80982017-07-12 20:34:511731const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1732const char kSilentDebuggerExtensionApiDescription[] =
1733 "Do not show the infobar when an extension attaches to a page via "
1734 "chrome.debugger API. This is required to debug extension background "
1735 "pages.";
1736
Christopher Thompson75ff845d2018-02-01 20:12:461737const char kSimplifyHttpsIndicatorName[] = "Simplify HTTPS indicator UI";
1738const char kSimplifyHttpsIndicatorDescription[] =
1739 "Change the UI treatment for HTTPS pages.";
1740
Lukasz Anforowiczd2e16e62019-03-28 19:06:591741const char kIsolateOriginsName[] = "Isolate additional origins";
1742const char kIsolateOriginsDescription[] =
1743 "Requires dedicated processes for an additional set of origins, "
1744 "specified as a comma-separated list.";
1745
Alan Wink7c1b2ae22019-04-03 19:18:061746const char kKidsManagementUrlClassificationName[] =
1747 "KidsMangement Url Classification";
1748const char kKidsManagementUrlClassificationDescription[] =
1749 "Uses KidsManagementService to classify URLs for Kid Accounts.";
1750
Lukasz Anforowicz738a88d2018-11-05 19:19:341751const char kSiteIsolationOptOutName[] = "Disable site isolation";
1752const char kSiteIsolationOptOutDescription[] =
1753 "Disables site isolation "
Nick Carter855bc492018-03-10 00:44:571754 "(SitePerProcess, IsolateOrigins, etc). Intended for diagnosing bugs that "
1755 "may be due to out-of-process iframes. Opt-out has no effect if site "
Lukasz Anforowicz42840422018-11-05 21:49:221756 "isolation is force-enabled using a command line switch or using an "
1757 "enterprise policy. "
1758 "Caution: this disables important mitigations for the Spectre CPU "
Nick Carter855bc492018-03-10 00:44:571759 "vulnerability affecting most computers.";
Lukasz Anforowicz738a88d2018-11-05 19:19:341760const char kSiteIsolationOptOutChoiceDefault[] = "Default";
1761const char kSiteIsolationOptOutChoiceOptOut[] = "Disabled (not recommended)";
Brett Wilsonecb80982017-07-12 20:34:511762
Pattideade7972018-04-27 02:59:401763const char kSiteSettings[] = "Site settings";
Brett Wilsonecb80982017-07-12 20:34:511764const char kSiteSettingsDescription[] =
Pattideade7972018-04-27 02:59:401765 "Add the All Sites list to Site Settings.";
Brett Wilsonecb80982017-07-12 20:34:511766
Brett Wilsonecb80982017-07-12 20:34:511767const char kSmoothScrollingName[] = "Smooth Scrolling";
1768const char kSmoothScrollingDescription[] =
1769 "Animate smoothly when scrolling page content.";
1770
Wei-Yin Chen (陳威尹)c12a30502019-04-24 20:54:421771const char kSoleIntegrationName[] = "Sole integration";
1772const char kSoleIntegrationDescription[] =
1773 "Enable Sole integration for browser customization. You must restart "
1774 "the browser twice for changes to take effect.";
1775
Justin Donnelly4e448cb2017-07-07 21:32:131776const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
1777 "Enable speculative start of a service worker when a search is predicted.";
Justin Donnelly4e448cb2017-07-07 21:32:131778const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
1779 "If enabled, when the user enters text in the omnibox that looks like a "
1780 "a query, any service worker associated with the search engine the query "
1781 "will be sent to is started early.";
1782
Carlos ILe5fa0a12018-08-03 16:08:321783const char kSSLCommittedInterstitialsName[] = "Committed Interstitials";
1784const char kSSLCommittedInterstitialsDescription[] =
1785 "Use committed error pages instead of transient navigation entries "
1786 "for SSL interstitial error pages (i.e. certificate errors).";
1787
Shubhie Panickerfaf082ed2018-01-03 04:49:151788const char kStopInBackgroundName[] = "Stop in background";
1789const char kStopInBackgroundDescription[] =
1790 "Stop scheduler task queues, in the background, "
Shubhie Panicker56c99a22018-03-21 00:22:281791 " after a grace period.";
Shubhie Panickerfaf082ed2018-01-03 04:49:151792
Shubhie Panicker56c99a22018-03-21 00:22:281793const char kStopNonTimersInBackgroundName[] =
1794 "Stop non-timer task queues background";
1795const char kStopNonTimersInBackgroundDescription[] =
1796 "Stop non-timer task queues, in the background, "
1797 "after a grace period.";
1798
Brett Wilsonecb80982017-07-12 20:34:511799const char kSuggestionsWithSubStringMatchName[] =
1800 "Substring matching for Autofill suggestions";
1801const char kSuggestionsWithSubStringMatchDescription[] =
1802 "Match Autofill suggestions based on substrings (token prefixes) rather "
1803 "than just prefixes.";
vabr0215a8e2017-03-28 12:47:341804
Marc Treib4bd95e72018-08-30 06:30:581805const char kSyncSupportSecondaryAccountName[] =
1806 "Support secondary accounts for Sync standalone transport";
1807const char kSyncSupportSecondaryAccountDescription[] =
1808 "If enabled, allows Chrome Sync to start in standalone transport mode for "
1809 "a signed-in account that has not been chosen as Chrome's primary account. "
1810 "This only has an effect if sync-standalone-transport is also enabled.";
1811
Jan Krcal2ff23f7c2018-09-04 16:16:131812const char kSyncUSSAutofillProfileName[] = "Enable USS for autofill profile";
1813const char kSyncUSSAutofillProfileDescription[] =
1814 "Enables the new implementation of autofill profile sync";
1815
Jan Krcale3641b92018-08-10 17:53:311816const char kSyncUSSAutofillWalletDataName[] =
1817 "Enable USS for autofill wallet data";
1818const char kSyncUSSAutofillWalletDataDescription[] =
1819 "Enables the new implementation of autofill walet data sync";
1820
Jan Krcal1e883642019-03-06 16:53:451821const char kSyncUSSAutofillWalletMetadataName[] =
1822 "Enable USS for autofill wallet metadata";
1823const char kSyncUSSAutofillWalletMetadataDescription[] =
1824 "Enables the new implementation of autofill walet metadata sync";
1825
Brett Wilsonecb80982017-07-12 20:34:511826const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1827const char kSyncSandboxDescription[] =
1828 "Connects to the testing server for Chrome Sync.";
vabr0215a8e2017-03-28 12:47:341829
Joe Downing8cbbc192018-05-14 17:37:071830const char kSystemKeyboardLockName[] = "Experimental system keyboard lock";
1831const char kSystemKeyboardLockDescription[] =
1832 "Enables websites to use the keyboard.lock() API to intercept system "
1833 "keyboard shortcuts and have the events routed directly to the website "
1834 "when in fullscreen mode.";
1835
Matt Simmons1fd0c9f2019-04-15 19:08:221836const char kTabEngagementReportingName[] = "Tab Engagement Metrics";
1837const char kTabEngagementReportingDescription[] =
1838 "Tracks tab engagement and lifetime metrics.";
1839
Yusuf Ozuysal67f05a02019-02-15 19:30:521840const char kTabGridLayoutAndroidName[] = "Tab Grid Layout";
1841const char kTabGridLayoutAndroidDescription[] =
1842 "Allows users to see their tabs in a grid layout in the tab switcher.";
1843
Yusuf Ozuysal436d90b82019-03-15 22:17:581844const char kTabGroupsAndroidName[] = "Tab Groups";
1845const char kTabGroupsAndroidDescription[] =
1846 "Allows users to create groups to better organize their tabs.";
1847
Taylor Bergquistbcc15462018-12-05 00:36:561848const char kTabGroupsName[] = "Tab Groups";
1849const char kTabGroupsDescription[] =
1850 "Allows users to organize tabs into visually distinct groups, e.g. to "
1851 "separate tabs associated with different tasks.";
1852
Caroline Risinge121c2b2018-12-03 20:19:291853const char kTabHoverCardsName[] = "Tab Hover Cards";
1854const char kTabHoverCardsDescription[] =
1855 "Enables a popup containing tab information to be visible when hovering "
1856 "over a tab. This will replace tooltips for tabs.";
1857
Dana Friedacaa8ef52019-02-08 02:20:351858const char kTabHoverCardImagesName[] = "Tab Hover Card Images";
1859const char kTabHoverCardImagesDescription[] =
1860 "Shows a preview image in tab hover cards, if tab hover cards are enabled.";
1861
Christian Dullweberd0d96f02017-09-13 09:22:511862const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1863const char kTabsInCbdDescription[] =
1864 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
1865
Daniele Castagna0fead93e2018-01-10 20:40:291866const char kTintGlCompositedContentName[] = "Tint GL-composited content";
1867const char kTintGlCompositedContentDescription[] =
1868 "Tint contents composited using GL with a shade of red to help debug and "
1869 "study overlay support.";
1870
Peter Kastingd77428352018-10-26 15:20:251871const char kTopChromeTouchUiName[] = "Touch UI Layout";
1872const char kTopChromeTouchUiDescription[] =
1873 "Enables touch UI layout in the browser's top chrome.";
vabr0215a8e2017-03-28 12:47:341874
Brett Wilsonecb80982017-07-12 20:34:511875const char kThreadedScrollingName[] = "Threaded scrolling";
1876const char kThreadedScrollingDescription[] =
1877 "Threaded handling of scroll-related input events. Disabling this will "
1878 "force all such scroll events to be handled on the main thread. Note that "
1879 "this can dramatically hurt scrolling performance of most websites and is "
1880 "intended for testing purposes only.";
1881
Dominick Ng8896b1cd2017-10-17 23:24:361882const char kTopSitesFromSiteEngagementName[] = "Top Sites from Site Engagement";
1883const char kTopSitesFromSiteEngagementDescription[] =
1884 "Enable Top Sites on the New Tab Page to be sourced and sorted using site "
1885 "engagement.";
1886
Brett Wilsonecb80982017-07-12 20:34:511887const char kTouchAdjustmentName[] = "Touch adjustment";
1888const char kTouchAdjustmentDescription[] =
1889 "Refine the position of a touch gesture in order to compensate for touches "
1890 "having poor resolution compared to a mouse.";
1891
1892const char kTouchDragDropName[] = "Touch initiated drag and drop";
1893const char kTouchDragDropDescription[] =
1894 "Touch drag and drop can be initiated through long press on a draggable "
1895 "element.";
1896
1897const char kTouchEventsName[] = "Touch Events API";
1898const char kTouchEventsDescription[] =
1899 "Force Touch Events API feature detection to always be enabled or "
1900 "disabled, or to be enabled when a touchscreen is detected on startup "
Ella Gea6a203c92017-10-26 19:09:291901 "(Automatic).";
Brett Wilsonecb80982017-07-12 20:34:511902
1903const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
1904const char kTouchSelectionStrategyDescription[] =
1905 "Controls how text selection granularity changes when touch text selection "
1906 "handles are dragged. Non-default behavior is experimental.";
1907const char kTouchSelectionStrategyCharacter[] = "Character";
1908const char kTouchSelectionStrategyDirection[] = "Direction";
1909
1910const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
1911const char kTraceUploadUrlDescription[] =
1912 "This is to be used in conjunction with the enable-navigation-tracing "
1913 "flag. Please select the label that best describes the recorded traces. "
1914 "This will choose the destination the traces are uploaded to. If you are "
1915 "not sure, select other. If left empty, no traces will be uploaded.";
1916const char kTraceUploadUrlChoiceOther[] = "Other";
1917const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1918const char kTraceUploadUrlChoiceQa[] = "QA";
1919const char kTraceUploadUrlChoiceTesting[] = "Testing";
1920
Anthony Vallee-Dubois265c5692018-06-01 15:57:141921const char kTranslateForceTriggerOnEnglishName[] =
1922 "Select which language model to use to trigger translate on English "
1923 "content";
1924const char kTranslateForceTriggerOnEnglishDescription[] =
1925 "Force the Translate Triggering on English pages experiment to be enabled "
1926 "with the selected language model active.";
1927
Mustafa Emre Acerb3aa36a82018-05-22 21:44:051928const char kTreatInsecureOriginAsSecureName[] =
1929 "Insecure origins treated as secure";
1930const char kTreatInsecureOriginAsSecureDescription[] =
1931 "Treat given (insecure) origins as secure origins. Multiple origins can be "
1932 "supplied as a comma-separated list. For the definition of secure "
1933 "contexts, "
1934 "see https://w3c.github.io/webappsec-secure-contexts/";
1935
Brett Wilsonecb80982017-07-12 20:34:511936const char kTrySupportedChannelLayoutsName[] =
1937 "Causes audio output streams to check if channel layouts other than the "
1938 "default hardware layout are available.";
1939const char kTrySupportedChannelLayoutsDescription[] =
1940 "Causes audio output streams to check if channel layouts other than the "
1941 "default hardware layout are available. Turning this on will allow the OS "
1942 "to do stereo to surround expansion if supported. May expose third party "
1943 "driver bugs, use with caution.";
1944
David Roger6762a092018-01-31 15:55:071945const char kUnifiedConsentName[] = "Unified Consent";
1946const char kUnifiedConsentDescription[] =
1947 "Enables a unified management of user consent for privacy-related "
1948 "features. This includes new confirmation screens and improved settings "
1949 "pages.";
1950
Brett Wilsonecb80982017-07-12 20:34:511951const char kUiPartialSwapName[] = "Partial swap";
1952const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
1953
Wei Li790e7a8572018-03-23 01:31:551954const char kUsePdfCompositorServiceName[] =
1955 "Use PDF compositor service for printing";
1956const char kUsePdfCompositorServiceDescription[] =
1957 "When enabled, use PDF compositor service to composite and generate PDF "
1958 "files for printing. When site isolation is enabled, disabling this will "
1959 "not stop using PDF compositor service since the service is required for "
1960 "printing out-of-process iframes correctly.";
1961
Mustaq Ahmedc646c0a2017-10-20 20:08:301962const char kUserActivationV2Name[] = "User Activation v2";
1963const char kUserActivationV2Description[] =
1964 "Enable simple user activation for APIs that are otherwise controlled by "
1965 "user gesture tokens.";
1966
Brett Wilsonecb80982017-07-12 20:34:511967const char kUseSuggestionsEvenIfFewFeatureName[] =
1968 "Disable minimum for server-side tile suggestions on NTP.";
1969const char kUseSuggestionsEvenIfFewFeatureDescription[] =
1970 "Request server-side suggestions even if there are only very few of them "
1971 "and use them for tiles on the New Tab Page.";
1972
1973const char kV8CacheOptionsName[] = "V8 caching mode.";
1974const char kV8CacheOptionsDescription[] =
1975 "Caching mode for the V8 JavaScript engine.";
Brett Wilsonecb80982017-07-12 20:34:511976const char kV8CacheOptionsCode[] = "Cache V8 compiler data.";
1977
Michael Hablich896d52662017-10-23 15:59:571978const char kV8VmFutureName[] = "Future V8 VM features";
1979const char kV8VmFutureDescription[] =
1980 "This enables upcoming and experimental V8 VM features. "
1981 "This flag does not enable experimental JavaScript features.";
1982
Hannes Payer1130d5672018-06-05 07:37:311983const char kV8OrinocoName[] = "V8 Orinoco garbage collection features";
1984const char kV8OrinocoDescription[] =
1985 "This enables the V8 Orinoco garbage collection features.";
1986
Brett Wilsonecb80982017-07-12 20:34:511987const char kWalletServiceUseSandboxName[] =
1988 "Use Google Payments sandbox servers";
1989const char kWalletServiceUseSandboxDescription[] =
1990 "For developers: use the sandbox service for Google Payments API calls.";
1991
Brett Wilsonecb80982017-07-12 20:34:511992const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
1993const char kWebglDraftExtensionsDescription[] =
1994 "Enabling this option allows web applications to access the WebGL "
1995 "Extensions that are still in draft status.";
1996
1997const char kWebMidiName[] = "Web MIDI API";
1998const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
1999
Qingsi Wangec2dbf942018-11-03 05:33:042000const char kWebrtcHideLocalIpsWithMdnsName[] =
2001 "Anonymize local IPs exposed by WebRTC.";
2002const char kWebrtcHideLocalIpsWithMdnsDecription[] =
2003 "Conceal local IP addresses with mDNS hostnames.";
2004
Alex Loikob5fb1282018-08-14 10:04:402005const char kWebrtcHybridAgcName[] = "WebRTC hybrid Agc2/Agc1.";
2006const char kWebrtcHybridAgcDescription[] =
2007 "WebRTC Agc2 digital adaptation with Agc1 analog adaptation.";
2008
Brett Wilsonecb80982017-07-12 20:34:512009const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
2010const char kWebrtcHwDecodingDescription[] =
2011 "Support in WebRTC for decoding video streams using platform hardware.";
2012
2013const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
2014const char kWebrtcHwEncodingDescription[] =
2015 "Support in WebRTC for encoding video streams using platform hardware.";
2016
2017const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
2018const char kWebrtcHwH264EncodingDescription[] =
2019 "Support in WebRTC for encoding h264 video streams using platform "
2020 "hardware.";
2021
2022const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
2023const char kWebrtcHwVP8EncodingDescription[] =
2024 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
2025
Sreerenj Balachandran2a5fd0972019-02-08 22:15:202026const char kWebrtcHwVP9EncodingName[] = "WebRTC hardware vp9 video encoding";
2027const char kWebrtcHwVP9EncodingDescription[] =
2028 "Support in WebRTC for encoding vp9 video streams using platform hardware.";
2029
Niels Möller090866a2018-02-13 10:55:032030const char kWebrtcNewEncodeCpuLoadEstimatorName[] =
2031 "WebRTC new encode cpu load estimator";
2032const char kWebrtcNewEncodeCpuLoadEstimatorDescription[] =
2033 "Enable new estimator for the encoder cpu load, for evaluation and "
2034 "testing. Intended to improve accuracy when screen casting.";
2035
Elad Alon85e0d0be2018-06-26 10:38:372036const char kWebRtcRemoteEventLogName[] = "WebRTC remote-bound event logging";
2037const char kWebRtcRemoteEventLogDescription[] =
2038 "Allow collecting WebRTC event logs and uploading them to Crash. "
2039 "Please note that, even if enabled, this will still require "
2040 "a policy to be set, for it to have an effect.";
2041
Brett Wilsonecb80982017-07-12 20:34:512042const char kWebrtcSrtpAesGcmName[] =
2043 "Negotiation with GCM cipher suites for SRTP in WebRTC";
2044const char kWebrtcSrtpAesGcmDescription[] =
2045 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
2046
2047const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
2048const char kWebrtcStunOriginDescription[] =
2049 "When enabled, Stun messages generated by WebRTC will contain the Origin "
2050 "header.";
2051
2052const char kWebvrName[] = "WebVR";
2053const char kWebvrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012054 "Enables access to experimental Virtual Reality functionality via the "
2055 "WebVR 1.1 API. This feature will eventually be replaced by the WebXR "
2056 "Device API. Warning: Enabling this will also allow WebVR content on "
2057 "insecure origins to access these powerful APIs, and may pose a security "
David Dorwin09448942019-01-11 23:37:302058 "risk. Controllers are exposed as Gamepads, and WebVR-specific attributes "
2059 "are exposed.";
Brett Wilsonecb80982017-07-12 20:34:512060
Brandon Jonese9d9b2b2017-12-11 22:20:112061const char kWebXrName[] = "WebXR Device API";
2062const char kWebXrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012063 "Enables access to experimental APIs to interact with Virtual Reality (VR) "
2064 "and Augmented Reality (AR) devices.";
2065
Ian Vollick7aaccf92018-04-07 23:10:432066const char kWebXrHitTestName[] = "WebXR Hit Test";
2067const char kWebXrHitTestDescription[] =
2068 "Enables access to raycasting against estimated XR scene geometry.";
Brandon Jonese9d9b2b2017-12-11 22:20:112069
Piotr Bialeckid77fb9c2019-04-26 17:06:242070const char kWebXrPlaneDetectionName[] = "WebXR Plane Detection";
2071const char kWebXrPlaneDetectionDescription[] =
2072 "Enables access to planes detected in the user's environment.";
2073
Brett Wilsonecb80982017-07-12 20:34:512074const char kZeroCopyName[] = "Zero-copy rasterizer";
2075const char kZeroCopyDescription[] =
2076 "Raster threads write directly to GPU memory associated with tiles.";
vabr0215a8e2017-03-28 12:47:342077
Brett Wilsonff596952017-07-14 01:06:552078// Android ---------------------------------------------------------------------
2079
2080#if defined(OS_ANDROID)
2081
2082const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
2083const char kAiaFetchingDescription[] =
2084 "Enable intermediate certificate fetching when a server does not provide "
2085 "sufficient certificates to build a chain to a trusted root.";
2086
2087const char kAccessibilityTabSwitcherName[] = "Accessibility Tab Switcher";
2088const char kAccessibilityTabSwitcherDescription[] =
2089 "Enable the accessibility tab switcher for Android.";
2090
Pavel Shmakov798f4742018-11-15 21:27:382091const char kAllowRemoteContextForNotificationsName[] =
2092 "Allow using remote app context for notifications";
2093const char kAllowRemoteContextForNotificationsDescription[] =
2094 "Allow using Context#createPackageContext to work around issues with status"
2095 "bar icons on certain Android M devices.";
2096
Brett Wilsonff596952017-07-14 01:06:552097const char kAndroidAutofillAccessibilityName[] = "Autofill Accessibility";
2098const char kAndroidAutofillAccessibilityDescription[] =
2099 "Enable accessibility for autofill popup.";
2100
Khushalbb1963a2018-10-02 21:02:352101const char kAndroidSurfaceControl[] = "Use Android SurfaceControl";
2102const char kAndroidSurfaceControlDescription[] =
2103 "Use the SurfaceControl API for supporting overlays on Android";
2104
Becky Zhoubbfbde32019-02-20 17:07:592105const char kAndroidWebContentsDarkMode[] = "Android web contents dark mode";
2106const char kAndroidWebContentsDarkModeDescription[] =
2107 "Enable dark mode on web contents in Android";
2108
Anita Woodruffbfcd1e52018-07-16 12:00:512109const char kAppNotificationStatusMessagingName[] =
2110 "App notification status messaging";
2111const char kAppNotificationStatusMessagingDescription[] =
2112 "Enables messaging in site permissions UI informing user when "
2113 "notifications are disabled for the entire app.";
2114
Miriam Gershenson8cf1397222018-01-23 22:48:292115const char kAsyncDnsName[] = "Async DNS resolver";
2116const char kAsyncDnsDescription[] = "Enables the built-in DNS resolver.";
2117
Dan Harrington01229f82018-09-12 21:01:212118const char kAutoFetchOnNetErrorPageName[] = "AutoFetchOnNetErrorPage";
2119const char kAutoFetchOnNetErrorPageDescription[] =
2120 "When enabled, and navigation fails with an offline error, schedule a "
2121 "fetch of the page when online again.";
2122
Brett Wilsonff596952017-07-14 01:06:552123const char kAutofillAccessoryViewName[] =
2124 "Autofill suggestions as keyboard accessory view";
2125const char kAutofillAccessoryViewDescription[] =
2126 "Shows Autofill suggestions on top of the keyboard rather than in a "
2127 "dropdown.";
2128
Tibor Goldschwendt11b3cf22018-07-04 15:32:442129const char kBackgroundTaskComponentUpdateName[] =
2130 "Background Task Component Updates";
2131const char kBackgroundTaskComponentUpdateDescription[] =
2132 "Schedule component updates with BackgroundTaskScheduler";
2133
Michael van Ouwerkerkbda4ad82018-06-19 14:08:002134const char kCCTModuleName[] = "Chrome Custom Tabs Module";
2135const char kCCTModuleDescription[] =
2136 "Enables a dynamically loaded module in Chrome Custom Tabs, on Android.";
2137
Michael van Ouwerkerk29a7a292018-10-09 09:20:142138const char kCCTModuleCacheName[] = "Chrome Custom Tabs Module Cache";
2139const char kCCTModuleCacheDescription[] =
Michael van Ouwerkerka5df1ec2018-10-11 11:57:402140 "Enables a cache for dynamically loaded modules in Chrome Custom Tabs. "
2141 "Under mild memory pressure the cache may be retained for some time";
Michael van Ouwerkerk29a7a292018-10-09 09:20:142142
John Lin170c00b2018-11-21 15:44:252143const char kCCTModuleCustomHeaderName[] =
2144 "Chrome Custom Tabs Module Custom Header";
2145const char kCCTModuleCustomHeaderDescription[] =
2146 "Enables header customization by dynamically loaded modules in "
2147 "Chrome Custom Tabs.";
2148
Michael van Ouwerkerk0878427a2019-02-13 15:11:422149const char kCCTModuleCustomRequestHeaderName[] =
2150 "Chrome Custom Tabs Module Custom Request Header";
2151const char kCCTModuleCustomRequestHeaderDescription[] =
2152 "Enables a custom request header for URLs managed by dynamically loaded "
2153 "modules in Chrome Custom Tabs.";
2154
alihanlivdumlu12ac4772019-01-17 17:37:182155const char kCCTModuleDexLoadingName[] = "Chrome Custom Tabs Module Dex Loading";
2156const char kCCTModuleDexLoadingDescription[] =
2157 "Enables loading Chrome Custom Tabs module code from a dex file "
2158 "provided by the module.";
2159
barkerd84051482018-11-13 14:46:562160const char kCCTModulePostMessageName[] =
2161 "Chrome Custom Tabs Module postMessage API";
2162const char kCCTModulePostMessageDescription[] =
2163 "Enables the postMessage API exposed to dynamically loaded modules in "
2164 "Chrome Custom Tabs.";
2165
Anna Malova9bb4ead2019-01-18 18:01:262166const char kCCTModuleUseIntentExtrasName[] =
2167 "Chrome Custom Tabs Module Intent Extras Usage";
2168const char kCCTModuleUseIntentExtrasDescription[] =
2169 "Enables usage of Intent's extras in Chrome Custom Tabs Module";
2170
Anna Malovaf7c734a2019-03-01 13:08:452171const char kCCTTargetTranslateLanguageName[] =
2172 "Chrome Custom Tabs Target Translate Language";
2173const char kCCTTargetTranslateLanguageDescription[] =
2174 "Enables specify target language the page should be translated to "
2175 "in Chrome Custom Tabs.";
2176
Matthew Jones1abcb132018-07-09 17:59:462177const char kChromeDuetName[] = "Chrome Duet";
2178const char kChromeDuetDescription[] =
2179 "Enables Chrome Duet, split toolbar Chrome Home, on Android.";
Theresa Wellingtonb9243b22017-12-01 16:23:052180
Sarath Singapati83aef1c2017-11-16 15:54:522181const char kClearOldBrowsingDataName[] = "Clear older browsing data";
2182const char kClearOldBrowsingDataDescription[] =
2183 "Enables clearing of browsing data which is older than a given time "
2184 "period.";
2185
Vitalii Iarkof52ff802017-09-14 12:34:242186const char kContentSuggestionsDebugLogName[] = "Content suggestions debug log";
2187const char kContentSuggestionsDebugLogDescription[] =
2188 "Enable content suggestions debug log accessible through "
2189 "snippets-internals.";
2190
Donn Denman4315f262019-03-02 02:47:412191const char kContextualSearchDefinitionsName[] = "Contextual Search definitions";
2192const char kContextualSearchDefinitionsDescription[] =
2193 "Enables tap-activated contextual definitions of words on a page to be "
2194 "presented in the caption of the Tap to Search Bar.";
2195
Donn Denman8e58ead2017-11-04 01:44:012196const char kContextualSearchMlTapSuppressionName[] =
2197 "Contextual Search ML tap suppression";
2198const char kContextualSearchMlTapSuppressionDescription[] =
2199 "Enables tap gestures to be suppressed to improve CTR by applying machine "
Donn Denman59729812018-01-09 01:27:022200 "learning. The \"Contextual Search Ranker prediction\" flag must also be "
2201 "enabled!";
Brett Wilsonff596952017-07-14 01:06:552202
Donn Denman59729812018-01-09 01:27:022203const char kContextualSearchRankerQueryName[] =
2204 "Contextual Search Ranker prediction";
2205const char kContextualSearchRankerQueryDescription[] =
2206 "Enables prediction of tap gestures using Assist-Ranker machine learning.";
2207
Donn Denman63d169f2019-03-08 23:34:502208const char kContextualSearchSimplifiedServerName[] =
2209 "Contextual Search simplified server logic";
2210const char kContextualSearchSimplifiedServerDescription[] =
2211 "Enables simpler server-side logic for determining what data to return and "
2212 "show in the Contextual Search UI. Option to allow all cards CoCa "
2213 "returns.";
2214
Donn Denman59729812018-01-09 01:27:022215const char kContextualSearchSecondTapName[] =
2216 "Contextual Search second tap triggering";
2217const char kContextualSearchSecondTapDescription[] =
2218 "Enables triggering on a second tap gesture even when Ranker would "
2219 "normally suppress that tap.";
2220
Donn Denman75f4b052019-04-05 17:55:212221const char kContextualSearchTranslationModelName[] =
2222 "Contextual Search translation using the Chrome translate model.";
2223const char kContextualSearchTranslationModelDescription[] =
2224 "Enables triggering translation in Contextual Search according to the "
2225 "Chrome translation model semantics.";
2226
Donn Denmane9b5b7fb2018-07-24 22:19:492227const char kContextualSearchUnityIntegrationName[] =
2228 "Contextual Search integration with Unified Consent";
2229const char kContextualSearchUnityIntegrationDescription[] =
2230 "Enables integration of Tap to Search with Unified Consent.";
2231
Joy Ming189b0cc2017-12-08 19:42:432232const char kDownloadsLocationChangeName[] = "Enable downloads location change";
2233const char kDownloadsLocationChangeDescription[] =
2234 "Enable changing default downloads storage location on Android.";
2235
Shakti Sahu32b2ee102018-05-17 00:04:462236const char kDownloadProgressInfoBarName[] = "Enable download progress infobar";
2237const char kDownloadProgressInfoBarDescription[] =
2238 "Enables an infobar notifying users about status of current downloads.";
2239
Shakti Sahu9ec8cfd2018-07-17 13:29:292240const char kDownloadHomeV2Name[] = "Enable download home v2";
2241const char kDownloadHomeV2Description[] =
2242 "Enables the new UI for download home";
2243
Hesen Zhangf7ad6142019-03-12 23:48:312244const char kDownloadRenameName[] = "Enable download rename";
2245const char kDownloadRenameDescription[] = "Enables rename option for downloads";
2246
Fabio Tirelo918089a2018-10-22 21:24:082247const char kAutofillManualFallbackAndroidName[] =
2248 "Enable Autofill manual fallback for Addresses and Payments (Android)";
2249const char kAutofillManualFallbackAndroidDescription[] =
2250 "If enabled, adds toggle for addresses and payments bottom sheet to the "
2251 "keyboard accessory.";
2252
Fabio Tirelo315e65922018-09-05 03:35:492253const char kEnableAutofillRefreshStyleName[] =
2254 "Enable Autofill refresh style (Android)";
2255const char kEnableAutofillRefreshStyleDescription[] =
2256 "Enable modernized style for Autofill on Android";
2257
Vitalii Iarkof4ed32d2017-09-26 13:15:532258const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
Brett Wilsonff596952017-07-14 01:06:552259const char kEnableAndroidSpellcheckerDescription[] =
2260 "Enables use of the Android spellchecker.";
Brett Wilsonff596952017-07-14 01:06:552261
Lei Tianbd5a3bf2018-02-28 19:01:162262const char kEnableCommandLineOnNonRootedName[] =
2263 "Enable command line on non-rooted devices";
2264const char kEnableCommandLineOnNoRootedDescription[] =
2265 "Enable reading command line file on non-rooted devices (DANGEROUS).";
2266
Brett Wilsonff596952017-07-14 01:06:552267const char kEnableCustomContextMenuName[] = "Enable custom context menu";
2268const char kEnableCustomContextMenuDescription[] =
2269 "Enables a new context menu when a link, image, or video is pressed within "
2270 "Chrome.";
2271
Sinan Sahin3bafe272019-03-11 17:03:062272const char kEnableRevampedContextMenuName[] =
2273 "Enable the revamped context menu";
2274const char kEnableRevampedContextMenuDescription[] =
2275 "Enables a revamped context menu when a link, image, or video is long "
2276 "pressed within Chrome.";
2277
Brett Wilsonff596952017-07-14 01:06:552278const char kEnableNtpRemoteSuggestionsName[] =
2279 "Show server-side suggestions on the New Tab page";
2280const char kEnableNtpRemoteSuggestionsDescription[] =
2281 "If enabled, the list of content suggestions on the New Tab page will "
2282 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
2283 "allows to override the source used to retrieve these server-side "
2284 "suggestions.";
2285
Brett Wilsonff596952017-07-14 01:06:552286const char kEnableNtpSuggestionsNotificationsName[] =
2287 "Notify about new content suggestions available at the New Tab page";
2288const char kEnableNtpSuggestionsNotificationsDescription[] =
2289 "If enabled, notifications will inform about new content suggestions on "
2290 "the New Tab page.";
2291
Brett Wilsonff596952017-07-14 01:06:552292const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
2293const char kEnableOfflinePreviewsDescription[] =
2294 "Enable showing offline page previews on slow networks.";
2295
2296const char kEnableOskOverscrollName[] = "Enable OSK Overscroll";
2297const char kEnableOskOverscrollDescription[] =
2298 "Enable OSK overscroll support. With this flag on, the OSK will only "
2299 "resize the visual viewport.";
2300
Brett Wilsonff596952017-07-14 01:06:552301const char kEnableWebNfcName[] = "WebNFC";
2302const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
2303
Donn Denmanffaeaa32018-10-12 17:37:532304const char kEphemeralTabName[] = "An Ephemeral Tab in an Overlay Panel";
2305const char kEphemeralTabDescription[] =
Donn Denmanb45c26a2019-02-13 01:42:212306 "Enable a 'Preview page/image' at a linked page into an overlay.";
Donn Denmanffaeaa32018-10-12 17:37:532307
Lei Zhang0a318af2018-11-14 02:19:462308const char kExploreSitesName[] = "Explore websites";
2309const char kExploreSitesDescription[] =
2310 "Enables portal from new tab page to explore websites.";
2311
Xing Liu7d57dd32019-01-20 02:34:182312const char kForegroundNotificationManagerName[] =
2313 "Foreground notification manager";
2314const char kForegroundNotificationManagerDescription[] =
2315 "Enable foreground notification manager to handle foreground service and "
2316 "notification.";
2317
Daniel Parke74fcf862018-03-27 18:05:452318const char kHomePageButtonName[] = "Force Enable Home Page Button";
Daniel Park990d0992018-05-18 22:12:512319const char kHomePageButtonDescription[] = "Displays a home button if enabled.";
Daniel Parke74fcf862018-03-27 18:05:452320
Yafei Duanbb7663f32018-07-17 01:33:152321const char kHomepageTileName[] =
2322 "Enable Homepage tile shown in Suggested Tiles";
2323const char kHomepageTileDescription[] =
2324 "When NTPButton is enabled, the first tile of the Suggested Tiles will be "
2325 "used for homepage. It will not have an effect when NTPButton is disabled.";
2326
Jian Li4b252642018-07-23 19:49:072327const char kIncognitoStringsName[] = "Alternate incognito strings";
2328const char kIncognitoStringsDescription[] =
2329 "Show alternate incognito strings if enabled.";
2330
Theresa920e0ed2018-03-07 18:12:442331const char kInterestFeedContentSuggestionsDescription[] =
Yafei Duanbb7663f32018-07-17 01:33:152332 "Use the interest feed to render content suggestions. Currently "
2333 "content "
Theresa920e0ed2018-03-07 18:12:442334 "suggestions are shown on the New Tab Page.";
2335const char kInterestFeedContentSuggestionsName[] =
2336 "Interest Feed Content Suggestions";
2337
Leo Zhang051b75482017-12-20 03:28:302338const char kLanguagesPreferenceName[] = "Language Settings";
2339const char kLanguagesPreferenceDescription[] =
2340 "Enable this option for Language Settings feature on Android.";
2341
Brett Wilsonff596952017-07-14 01:06:552342const char kLsdPermissionPromptName[] =
2343 "Location Settings Dialog Permission Prompt";
2344const char kLsdPermissionPromptDescription[] =
2345 "Whether to use the Google Play Services Location Settings Dialog "
2346 "permission dialog.";
2347
Ioana Pandeled8dc2b692019-02-20 12:04:152348const char kManualPasswordGenerationAndroidName[] =
2349 "Manual password generation";
2350const char kManualPasswordGenerationAndroidDescription[] =
2351 "Whether Chrome should offer users the option to manually request to "
2352 "generate passwords on Android.";
Amirhossein Simjour97b4154f2018-02-20 03:49:592353
Brett Wilsonff596952017-07-14 01:06:552354const char kMediaScreenCaptureName[] = "Experimental ScreenCapture.";
2355const char kMediaScreenCaptureDescription[] =
2356 "Enable this option for experimental ScreenCapture feature on Android.";
2357
Dan Harrington541db9e2018-07-30 18:36:302358const char kNewNetErrorPageUIName[] = "Enable new UI for net-error page";
2359const char kNewNetErrorPageUIDescription[] =
Dan Harringtonc78e4622019-03-22 19:13:242360 "Enables showing available offline content on the net-error (Dino) page.";
Dan Harrington541db9e2018-07-30 18:36:302361
Brett Wilsonff596952017-07-14 01:06:552362const char kNewPhotoPickerName[] = "Enable new Photopicker";
2363const char kNewPhotoPickerDescription[] =
2364 "Activates the new picker for selecting photos.";
2365
2366const char kNoCreditCardAbort[] = "No Credit Card Abort";
2367const char kNoCreditCardAbortDescription[] =
2368 "Whether or not the No Credit Card Abort is enabled.";
2369
Daniel Park990d0992018-05-18 22:12:512370const char kNtpButtonName[] = "Enable NTP Button";
2371const char kNtpButtonDescription[] =
2372 "Displays a New Tab Page button in the toolbar if enabled.";
2373
Jian Liade82832018-09-06 22:31:412374const char kOfflineIndicatorAlwaysHttpProbeName[] = "Always http probe";
2375const char kOfflineIndicatorAlwaysHttpProbeDescription[] =
2376 "Always do http probe to detect network connectivity for offline indicator "
2377 "as opposed to just taking the connection state from the system."
2378 "Used for testing.";
2379
2380const char kOfflineIndicatorChoiceName[] = "Offline indicator choices";
2381const char kOfflineIndicatorChoiceDescription[] =
2382 "Show an offline indicator while offline.";
Jian Li1413ebf2018-06-14 20:46:322383
Brett Wilsonff596952017-07-14 01:06:552384const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
2385const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
2386
2387const char kOfflinePagesCtV2Name[] = "Enable Offline Pages CT V2 features.";
2388const char kOfflinePagesCtV2Description[] =
2389 "V2 features include attributing pages to the app that initiated the "
2390 "custom tabs, and being able to query for pages by page attribution.";
2391
Cathy Li7311d792018-04-05 00:34:162392const char kOfflinePagesCTSuppressNotificationsName[] =
2393 "Disable download complete notification for whitelisted CCT apps.";
2394const char kOfflinePagesCTSuppressNotificationsDescription[] =
2395 "Disable download complete notification for page downloads originating "
2396 "from a CCT app whitelisted to show their own download complete "
2397 "notification.";
2398
Candice Sy74fa7a352018-03-30 23:46:492399const char kOfflinePagesDescriptiveFailStatusName[] =
2400 "Enables descriptive failed download status text.";
2401const char kOfflinePagesDescriptiveFailStatusDescription[] =
2402 "Enables failed download status text in notifications and Downloads Home "
2403 "to state the reason the request failed if the failure is actionable.";
2404
2405const char kOfflinePagesDescriptivePendingStatusName[] =
2406 "Enables descriptive pending download status text.";
2407const char kOfflinePagesDescriptivePendingStatusDescription[] =
2408 "Enables pending download status text in notifications and Downloads Home "
2409 "to state the reason the request is pending.";
2410
2411const char kOfflinePagesInDownloadHomeOpenInCctName[] =
2412 "Enables offline pages in the downloads home to be opened in CCT.";
2413const char kOfflinePagesInDownloadHomeOpenInCctDescription[] =
2414 "When enabled offline pages launched from the Downloads Home will be "
2415 "opened in Chrome Custom Tabs (CCT) instead of regular tabs.";
2416
Carlos Knippschild09272ecd2017-12-09 03:29:362417const char kOfflinePagesLimitlessPrefetchingName[] =
2418 "Removes resource usage limits for the prefetching of offline pages.";
2419const char kOfflinePagesLimitlessPrefetchingDescription[] =
2420 "Allows the prefetching of suggested offline pages to ignore resource "
2421 "usage limits. This allows it to completely ignore data usage limitations "
2422 "and allows downloads to happen with any kind of connection.";
2423
Brett Wilsonff596952017-07-14 01:06:552424const char kOfflinePagesLoadSignalCollectingName[] =
2425 "Enables collecting load timing data for offline page snapshots.";
2426const char kOfflinePagesLoadSignalCollectingDescription[] =
2427 "Enables loading completeness data collection while writing an offline "
2428 "page. This data is collected in the snapshotted offline page to allow "
2429 "data analysis to improve deciding when to make the offline snapshot.";
2430
2431const char kOfflinePagesPrefetchingName[] =
2432 "Enables suggested offline pages to be prefetched.";
2433const char kOfflinePagesPrefetchingDescription[] =
2434 "Enables suggested offline pages to be prefetched, so useful content is "
2435 "available while offline.";
2436
Pete Williamson7845dff2017-09-20 11:06:192437const char kOfflinePagesResourceBasedSnapshotName[] =
2438 "Enables offline page snapshots to be based on percentage of page loaded.";
2439const char kOfflinePagesResourceBasedSnapshotDescription[] =
2440 "Enables offline page snapshots to use a resource percentage based "
2441 "approach for determining when the page is loaded as opposed to a time "
2442 "based approach";
2443
Collin Baker17f92a52017-07-19 21:41:252444const char kOfflinePagesRenovationsName[] = "Enables offline page renovations.";
2445const char kOfflinePagesRenovationsDescription[] =
2446 "Enables offline page renovations which correct issues with dynamic "
2447 "content that occur when offlining pages that use JavaScript.";
2448
Yafei Duan36b4b5b2018-08-07 00:40:032449const char kOfflinePagesLivePageSharingName[] =
2450 "Enables live page sharing of offline pages";
2451const char kOfflinePagesLivePageSharingDescription[] =
2452 "Enables to share current loaded page as offline page by saving as MHTML "
2453 "first.";
2454
Cathy Lie0d88762018-04-12 08:03:012455const char kOfflinePagesShowAlternateDinoPageName[] =
2456 "Enable alternate dino page with more user capabilities.";
2457const char kOfflinePagesShowAlternateDinoPageDescription[] =
2458 "Enables the dino page to show more buttons and offer existing offline "
2459 "content.";
2460
Brett Wilsonff596952017-07-14 01:06:552461const char kOffliningRecentPagesName[] =
2462 "Enable offlining of recently visited pages";
2463const char kOffliningRecentPagesDescription[] =
2464 "Enable storing recently visited pages locally for offline use. Requires "
2465 "Offline Pages to be enabled.";
2466
Matthew Jonesa88b95852017-11-08 23:13:502467const char kProgressBarThrottleName[] = "Android progress update throttling.";
2468const char kProgressBarThrottleDescription[] =
2469 "Limit the maximum progress update to make progress appear smoother.";
2470
Piotr Swigon7c296ef2017-08-29 04:32:002471const char kPwaImprovedSplashScreenName[] =
2472 "Improved Splash Screen for standalone PWAs";
2473const char kPwaImprovedSplashScreenDescription[] =
2474 "Enables the Improved Splash Screen UX for standalone PWAs based on new "
2475 "Web App Manifest attributes";
Piotr Swigon9f630b32017-07-26 09:42:492476const char kPwaPersistentNotificationName[] =
2477 "Persistent notification in standalone PWA";
2478const char kPwaPersistentNotificationDescription[] =
2479 "Enables a persistent Android notification for standalone PWAs";
2480
Brett Wilsonff596952017-07-14 01:06:552481const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
2482const char kReaderModeHeuristicsDescription[] =
2483 "Determines what pages the Reader Mode infobar is shown on.";
2484const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
2485const char kReaderModeHeuristicsAdaboost[] = "Non-mobile-friendly articles";
2486const char kReaderModeHeuristicsAllArticles[] = "All articles";
2487const char kReaderModeHeuristicsAlwaysOff[] = "Never";
2488const char kReaderModeHeuristicsAlwaysOn[] = "Always";
2489
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:182490const char kReaderModeInCCTName[] = "Reader Mode in CCT";
2491const char kReaderModeInCCTDescription[] =
2492 "Open Reader Mode in Chrome Custom Tabs.";
2493
Varun Khaneja2a8229f2019-01-12 00:57:262494const char kSafeBrowsingTelemetryForApkDownloadsName[] =
2495 "Send some telemetry for APK downloads for extended reporting users";
2496const char kSafeBrowsingTelemetryForApkDownloadsDescription[] =
2497 "If enabled, sends some information about the source and hash of the "
2498 "contents of any APK files downloaded by a user who has opted into Safe "
2499 "Browsing Extended Reporting already.";
2500
Varun Khaneja80712a82018-10-12 23:34:592501const char kSafeBrowsingUseLocalBlacklistsV2Name[] =
2502 "Use local Safe Browsing blacklists";
2503const char kSafeBrowsingUseLocalBlacklistsV2Description[] =
2504 "If enabled, maintain a copy of Safe Browsing blacklists in the browser "
2505 "process to check the Safe Browsing reputation of URLs without calling "
2506 "into GmsCore for every URL.";
2507
Matthew Jones53114262018-12-12 16:36:472508const char kSearchReadyOmniboxName[] = "Search Ready Omnibox";
2509const char kSearchReadyOmniboxDescription[] =
2510 "Clears the omnibox and adds a suggestion item to share, copy, or edit the "
2511 "URL.";
2512
Brett Wilsonff596952017-07-14 01:06:552513const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2514const char kSetMarketUrlForTestingDescription[] =
2515 "When enabled, sets the market URL for use in testing the update menu "
2516 "item.";
2517
Donn Denmane32c706c2019-04-26 22:30:112518const char kShoppingAssistName[] = "Shopping assist exploration";
2519const char kShoppingAssistDescription[] =
2520 "Show some shopping assistance when available";
2521
Alex Moshchuk07e1bb42019-03-08 04:44:082522const char kSiteIsolationForPasswordSitesName[] =
2523 "Site Isolation For Password Sites";
2524const char kSiteIsolationForPasswordSitesDescription[] =
2525 "Security mode that enables site isolation for sites based on "
2526 "password-oriented heuristics, such as a user typing in a password.";
2527
Lei Zhang0a318af2018-11-14 02:19:462528const char kStrictSiteIsolationName[] = "Strict site isolation";
2529const char kStrictSiteIsolationDescription[] =
2530 "Security mode that enables site isolation for all sites (SitePerProcess). "
2531 "In this mode, each renderer process will contain pages from at most one "
2532 "site, using out-of-process iframes when needed. "
2533 "Check chrome://process-internals to see the current isolation mode. "
2534 "Setting this flag to 'Enabled' turns on site isolation regardless of the "
2535 "default. Here, 'Disabled' is a legacy value that actually means "
2536 "'Default,' in which case site isolation may be already enabled based on "
2537 "platform, enterprise policy, or field trial. See also "
2538 "#site-isolation-trial-opt-out for how to disable site isolation for "
2539 "testing.";
2540
Nate Chapinc710f622019-04-26 19:25:292541extern const char kProcessSharingWithStrictSiteInstancesName[] =
2542 "Process sharing with strict site instances";
2543extern const char kProcessSharingWithStrictSiteInstancesDescription[] =
2544 "When site isolation is disabled, this mode changes how sites are lumped "
2545 "in to a shared process. Process selection is usually controlled with "
2546 "site instances. With strict site isolation, each site on a page gets its "
2547 "own site instance and process. With site isolation disabled and without "
2548 "this mode, all sites that share a process are put into the same site "
2549 "instance. This mode adds a third way: site instances are strictly "
2550 "separated like strict site isolation, but process selection puts multiple "
2551 "site instances in a single process.";
2552
Anthony Vallee-Dubois4623e1b2018-10-11 22:09:182553const char kTranslateAndroidManualTriggerName[] =
2554 "Enable manual translate trigger";
2555const char kTranslateAndroidManualTriggerDescription[] =
2556 "Show a menu item in the main menu that triggers page translation.";
2557
Brett Wilsonff596952017-07-14 01:06:552558const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2559const char kUpdateMenuBadgeDescription[] =
Tommy Nyquist3c02e592018-10-18 23:36:442560 "When enabled, a badge will be shown on the app menu button if the update "
2561 "type is Update Available or Unsupported OS Version.";
Brett Wilsonff596952017-07-14 01:06:552562
2563const char kUpdateMenuItemCustomSummaryDescription[] =
2564 "When this flag and the force show update menu item flag are enabled, a "
2565 "custom summary string will be displayed below the update menu item.";
2566const char kUpdateMenuItemCustomSummaryName[] =
2567 "Update menu item custom summary";
2568
Tommy Nyquist3c02e592018-10-18 23:36:442569const char kUpdateMenuTypeName[] =
2570 "Forces the update menu type to a specific type";
2571const char kUpdateMenuTypeDescription[] =
2572 "When set, forces the update type to be a specific one, which impacts "
Tommy Nyquist023d505f2019-02-16 02:18:382573 "the app menu badge and menu item for updates. For Inline Update, the "
2574 "update available flag is implied. The 'Inline Update: Success' selection "
2575 "goes through the whole inline update flow to the end with a successful "
2576 "outcome. The other 'Inline Update' options go through the same flow, but "
2577 "stop at various stages, see their error type for details.";
Tommy Nyquist3c02e592018-10-18 23:36:442578const char kUpdateMenuTypeNone[] = "None";
2579const char kUpdateMenuTypeUpdateAvailable[] = "Update Available";
2580const char kUpdateMenuTypeUnsupportedOSVersion[] = "Unsupported OS Version";
Tommy Nyquist023d505f2019-02-16 02:18:382581const char kUpdateMenuTypeInlineUpdateSuccess[] = "Inline Update: Success";
2582const char kUpdateMenuTypeInlineUpdateDialogCanceled[] =
2583 "Inline Update Error: Dialog Canceled";
2584const char kUpdateMenuTypeInlineUpdateDialogFailed[] =
2585 "Inline Update Error: Dialog Failed";
2586const char kUpdateMenuTypeInlineUpdateDownloadFailed[] =
2587 "Inline Update Error: Download Failed";
2588const char kUpdateMenuTypeInlineUpdateDownloadCanceled[] =
2589 "Inline Update Error: Download Canceled";
2590const char kUpdateMenuTypeInlineUpdateInstallFailed[] =
2591 "Inline Update Error: Install Failed";
Brett Wilsonff596952017-07-14 01:06:552592
Tommy Nyquist26ffb642019-02-20 20:31:522593const char kInlineUpdateFlowName[] = "Enable Google Play inline update flow";
2594const char kInlineUpdateFlowDescription[] =
2595 "When this flag is set, instead of taking the user to the Google Play "
2596 "Store when an update is available, the user is presented with an inline "
2597 "flow where they do not have to leave Chrome until the update is ready "
2598 "to install.";
2599
Becky Zhou65584142019-01-10 18:22:292600#if BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2601
Becky Zhoubcac628f2019-02-28 18:22:372602const char kAndroidNightModeName[] = "Android Chrome UI dark mode";
Becky Zhou65584142019-01-10 18:22:292603const char kAndroidNightModeDescription[] =
Becky Zhoubcac628f2019-02-28 18:22:372604 "If enabled, user can enable Android Chrome UI dark mode through settings.";
Becky Zhou65584142019-01-10 18:22:292605
2606#endif // BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2607
Brett Wilson7b44537e2017-08-18 01:38:282608// Non-Android -----------------------------------------------------------------
Brett Wilsonff596952017-07-14 01:06:552609
Brett Wilson7b44537e2017-08-18 01:38:282610#else // !defined(OS_ANDROID)
brettw5f9c1642017-05-14 17:12:482611
Brett Wilson7b44537e2017-08-18 01:38:282612const char kAccountConsistencyName[] =
2613 "Identity consistency between browser and cookie jar";
2614const char kAccountConsistencyDescription[] =
2615 "When enabled, the browser manages signing in and out of Google accounts.";
2616const char kAccountConsistencyChoiceMirror[] = "Mirror";
2617const char kAccountConsistencyChoiceDice[] = "Dice";
vabr0215a8e2017-03-28 12:47:342618
Reka Normana11e57fc2019-01-29 21:56:582619const char kAppManagementName[] = "Enable App Management page";
2620const char kAppManagementDescription[] =
2621 "Shows the new app management page at chrome://apps.";
2622
Kristi Parkc9b9d6592019-02-12 22:30:382623const char kRemoveNtpFakeboxName[] = "Remove fakebox from the NTP";
2624const char kRemoveNtpFakeboxDescription[] =
2625 "Do not show the fakebox on the New Tab page.";
2626
Kyle Milka24687352019-04-11 21:13:082627const char kNtpCustomizationMenuV2Name[] = "NTP customization menu version 2";
2628const char kNtpCustomizationMenuV2Description[] =
2629 "Use the second version of the NTP customization menu.";
2630
Aran Gilman766c2ad2019-04-18 00:15:412631const char kEnableReaderModeName[] = "Enable Reader Mode";
2632const char kEnableReaderModeDescription[] =
2633 "Allows viewing of simplified web pages by selecting 'Customize and "
2634 "control Chrome'>'Distill page'";
2635
Lei Zhang0a318af2018-11-14 02:19:462636const char kEnableWebAuthenticationBleSupportName[] =
2637 "Web Authentication API BLE support";
2638const char kEnableWebAuthenticationBleSupportDescription[] =
2639 "Enable support for using Web Authentication API via Bluetooth security "
2640 "keys";
Sebastien Marchandd33f7dc2018-06-22 22:07:062641
Sebastien Marchandd33f7dc2018-06-22 22:07:062642const char kEnableWebAuthenticationTestingAPIName[] =
2643 "Web Authentication Testing API";
2644const char kEnableWebAuthenticationTestingAPIDescription[] =
2645 "Enable Web Authentication Testing API support, which disconnects the API "
2646 "implementation from the real world, and allows configuring virtual "
2647 "authenticator devices for testing";
2648
Owen Min853a8162019-04-26 19:20:362649const char kEnterpriseReportingInBrowserName[] =
2650 "Enterprise cloud reporting in browser";
2651const char kEnterpriseReportingInBrowserDescription[] =
2652 "Enable the enterprise cloud reporting in browser without installing the "
2653 "reporting companion extension. This feautre requires device level cloud "
2654 "mangement.";
2655
Jeffrey Cohenf04130a42018-08-29 00:22:272656const char kHappinessTrackingSurveysForDesktopName[] =
2657 "Happiness Tracking Surveys";
2658const char kHappinessTrackingSurveysForDesktopDescription[] =
2659 "Enable showing Happiness Tracking Surveys to users on Desktop";
2660
Maggie Caib3e2a6c2019-03-12 05:12:542661const char kIntentPickerName[] = "Intent picker";
2662const char kIntentPickerDescription[] =
2663 "When going to a site that has URL managable by a PWA, show the intent"
2664 "picker to allow user to open the URL in the app.";
2665
Travis Skarebcdb5ed32018-08-17 01:49:402666const char kOmniboxDriveSuggestionsName[] =
2667 "Omnibox Google Drive Document suggestions";
2668const char kOmniboxDriveSuggestionsDescriptions[] =
2669 "Display suggestions for Google Drive documents in the omnibox when Google "
2670 "is the default search engine.";
2671
Travis Skare13ad69c2019-03-06 21:01:022672const char kOmniboxDeduplicateDriveUrlsName[] =
2673 "Deduplicate Google Drive suggestions in the Omnibox";
2674const char kOmniboxDeduplicateDriveUrlsDescription[] =
2675 "Present at most one result for the same Drive document across bookmarks, "
2676 "history, document, etc. suggestions.";
2677
Kevin Bailey9ec05532019-01-31 23:01:332678const char kOmniboxExperimentalKeywordModeName[] =
2679 "Omnibox Experimental Keyword Mode";
2680const char kOmniboxExperimentalKeywordModeDescription[] =
2681 "Enables various experimental features related to keyword mode, its "
2682 "suggestions and layout";
2683
Lei Zhang0a318af2018-11-14 02:19:462684const char kOmniboxPedalSuggestionsName[] = "Omnibox Pedal suggestions";
2685const char kOmniboxPedalSuggestionsDescription[] =
Orin Jaworski506db4d2019-02-14 20:17:142686 "Enable omnibox Pedal suggestions to accelerate actions within Chrome by "
2687 "detecting user intent and offering direct access to the end goal.";
Lei Zhang0a318af2018-11-14 02:19:462688
Orin Jaworski04c08b42018-07-11 02:39:562689const char kOmniboxReverseAnswersName[] = "Omnibox reverse answers";
2690const char kOmniboxReverseAnswersDescription[] =
manukaddd3c42019-04-09 21:20:592691 "Display answers with rows reversed (swapped); except definitions.";
Orin Jaworski04c08b42018-07-11 02:39:562692
Kevin Baileya5f17452019-02-13 01:52:032693const char kOmniboxReverseTabSwitchLogicName[] =
2694 "Omnibox reverse tab switch logic";
2695const char kOmniboxReverseTabSwitchLogicDescription[] =
2696 "Reverse the logic of suggestions that have a tab switch button: Have "
2697 "them switch by default, and have the button navigate.";
2698
Tommy C. Li065ddce72019-04-11 22:55:122699const char kOmniboxSuggestionTransparencyOptionsName[] =
2700 "Omnibox Suggestion Transparency Options";
2701const char kOmniboxSuggestionTransparencyOptionsDescription[] =
2702 "Improves transparency of and control over omnibox suggestions. This "
2703 "includes UI cues (like a clock icon for Search History suggestions), as "
2704 "well as user controls to delete personalized suggestions.";
2705
Kevin Bailey898669972017-11-06 15:34:492706const char kOmniboxTabSwitchSuggestionsName[] =
2707 "Omnibox tab switch suggestions";
2708const char kOmniboxTabSwitchSuggestionsDescription[] =
manukaddd3c42019-04-09 21:20:592709 "Enable suggestions for switching to open tabs within the Omnibox.";
Kevin Bailey898669972017-11-06 15:34:492710
krbcc621412017-06-01 19:40:282711const char kOmniboxTailSuggestionsName[] = "Omnibox tail suggestions";
2712const char kOmniboxTailSuggestionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192713 "Enable receiving tail suggestions, a type of search suggestion based on "
2714 "the last few words in the query, for the Omnibox.";
vabr0215a8e2017-03-28 12:47:342715
Sebastien Marchandd33f7dc2018-06-22 22:07:062716const char kProactiveTabFreezeAndDiscardName[] =
2717 "Proactive Tab Freeze and Discard";
2718const char kProactiveTabFreezeAndDiscardDescription[] =
2719 "Enables proactive tab freezing and discarding. This requires "
2720 "#enable-page-almost-idle.";
2721
Nicolas Ouellet-payeur82eb65b2018-11-05 16:49:272722const char kShowManagedUiName[] = "Show managed UI for managed users";
2723const char kShowManagedUiDescription[] =
2724 "Enabled/disable showing enterprise users a 'Managed by your organization' "
2725 "message in the app menu and on some chrome:// pages.";
2726
Brett Wilson7b44537e2017-08-18 01:38:282727#if defined(GOOGLE_CHROME_BUILD)
2728
2729const char kGoogleBrandedContextMenuName[] =
2730 "Google branding in the context menu";
2731const char kGoogleBrandedContextMenuDescription[] =
2732 "Shows a Google icon next to context menu items powered by Google "
2733 "services.";
2734
2735#endif // !defined(GOOGLE_CHROME_BUILD)
2736
2737#endif // !defined(OS_ANDROID)
2738
2739// Windows ---------------------------------------------------------------------
2740
2741#if defined(OS_WIN)
2742
David Bienvenud0ddda32018-11-01 16:59:162743const char kCalculateNativeWinOcclusionName[] =
2744 "Calculate window occlusion on Windows";
2745const char kCalculateNativeWinOcclusionDescription[] =
2746 "Calculate window occlusion on Windows will be used in the future "
2747 "to throttle and potentially unload foreground tabs in occluded windows";
2748
Brett Wilson7b44537e2017-08-18 01:38:282749const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
2750const char kCloudPrintXpsDescription[] =
2751 "XPS enables advanced options for classic printers connected to the Cloud "
2752 "Print with Chrome. Printers must be re-connected after changing this "
2753 "flag.";
2754
Frank Liberato754d14f2019-01-30 23:31:172755const char kD3D11VideoDecoderName[] = "D3D11 Video Decoder";
2756const char kD3D11VideoDecoderDescription[] =
2757 "Enables D3D11VideoDecoder for hardware accelerated video decoding.";
2758
Brett Wilson7b44537e2017-08-18 01:38:282759const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
2760const char kDisablePostscriptPrintingDescription[] =
2761 "Disables PostScript generation when printing to PostScript capable "
2762 "printers, and uses EMF generation in its place.";
2763
2764const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
2765const char kEnableAppcontainerDescription[] =
2766 "Enables the use of an AppContainer on sandboxed processes to improve "
2767 "security.";
2768
James Forshawfd0ce342018-02-14 09:55:392769const char kEnableGpuAppcontainerName[] = "Enable GPU AppContainer Lockdown.";
2770const char kEnableGpuAppcontainerDescription[] =
2771 "Enables the use of an AppContainer for the GPU sandboxed processes to "
2772 "improve security.";
2773
Brett Wilson7b44537e2017-08-18 01:38:282774const char kGdiTextPrinting[] = "GDI Text Printing";
2775const char kGdiTextPrintingDescription[] =
2776 "Use GDI to print text as simply text";
2777
Olli Etuaho122321192018-09-07 10:15:292778const char kUseAngleName[] = "Choose ANGLE graphics backend";
2779const char kUseAngleDescription[] =
2780 "Choose the graphics backend for ANGLE. D3D11 is used on most Windows "
2781 "computers by default. Using the OpenGL driver as the graphics backend may "
2782 "result in higher performance in some graphics-heavy applications, "
2783 "particularly on NVIDIA GPUs. It can increase battery and memory usage of "
2784 "video playback.";
2785
2786const char kUseAngleDefault[] = "Default";
2787const char kUseAngleGL[] = "OpenGL";
2788const char kUseAngleD3D11[] = "D3D11";
2789const char kUseAngleD3D9[] = "D3D9";
2790
Brett Wilson7b44537e2017-08-18 01:38:282791const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2792const char kUseWinrtMidiApiDescription[] =
2793 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
2794 "later).";
2795
Brett Wilson7b44537e2017-08-18 01:38:282796#endif // defined(OS_WIN)
2797
2798// Mac -------------------------------------------------------------------------
2799
2800#if defined(OS_MACOSX)
2801
Brett Wilson7b44537e2017-08-18 01:38:282802const char kContentFullscreenName[] = "Improved Content Fullscreen";
2803const char kContentFullscreenDescription[] =
2804 "Fullscreen content window detaches from main browser window and goes to "
2805 "a new space without moving or changing the original browser window.";
2806
Sidney San Martín678fd4112019-03-30 00:13:052807const char kImmersiveFullscreenName[] = "Immersive Fullscreen Toolbar";
2808const char kImmersiveFullscreenDescription[] =
2809 "Automatically hide and show the toolbar in fullscreen.";
2810
Brett Wilson7b44537e2017-08-18 01:38:282811const char kHostedAppsInWindowsName[] =
2812 "Allow hosted apps to be opened in windows";
2813const char kHostedAppsInWindowsDescription[] =
2814 "Allows hosted apps to be opened in windows instead of being limited to "
2815 "tabs.";
2816
Christopher Cameron57dee5a42018-09-25 01:20:082817const char kCreateAppWindowsInAppShimProcessName[] =
2818 "Create native windows in the app process";
2819const char kCreateAppWindowsInAppShimProcessDescription[] =
2820 "Create native windows the app shim process, instead of of the browser "
2821 "process.";
2822
Lei Zhange065b572018-12-11 08:00:412823const char kEnableCustomMacPaperSizesName[] = "Enable custom paper sizes";
2824const char kEnableCustomMacPaperSizesDescription[] =
2825 "Allow use of custom paper sizes in Print Preview.";
2826
Lei Zhang2eca9082017-10-17 20:42:502827const char kMacTouchBarName[] = "Hardware Touch Bar";
2828const char kMacTouchBarDescription[] = "Control the use of the Touch Bar.";
Brett Wilson7b44537e2017-08-18 01:38:282829
Greg Kerr32483d1c2018-12-18 02:29:142830const char kMacV2GPUSandboxName[] = "Mac V2 GPU Sandbox";
2831const char kMacV2GPUSandboxDescription[] =
2832 "Controls whether the GPU process on macOS uses the V1 or V2 sandbox.";
2833
Brett Wilson7b44537e2017-08-18 01:38:282834const char kMacViewsNativeAppWindowsName[] = "Toolkit-Views App Windows.";
2835const char kMacViewsNativeAppWindowsDescription[] =
2836 "Controls whether to use Toolkit-Views based Chrome App windows.";
2837
2838const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
2839const char kMacViewsTaskManagerDescription[] =
2840 "Controls whether to use the Toolkit-Views based Task Manager.";
2841
Henrik Grunellabaf7182019-04-12 09:15:192842const char kMacSystemMediaPermissionsInfoUiName[] =
2843 "System media permissions info UI";
2844const char kMacSystemMediaPermissionsInfoUiDescription[] =
2845 "In case a website is trying to use the camera/microphone, but Chrome "
2846 "itself is blocked on the system level to access these, show an icon in "
2847 "the Omnibox, which, when clicked, displays a bubble with information on "
2848 "how to toggle Chrome's system-level media permissions.";
2849
Brett Wilson7b44537e2017-08-18 01:38:282850#endif
2851
2852// Chrome OS -------------------------------------------------------------------
vabr0215a8e2017-03-28 12:47:342853
2854#if defined(OS_CHROMEOS)
2855
Brett Wilson7b44537e2017-08-18 01:38:282856const char kAcceleratedMjpegDecodeName[] =
2857 "Hardware-accelerated mjpeg decode for captured frame";
2858const char kAcceleratedMjpegDecodeDescription[] =
2859 "Enable hardware-accelerated mjpeg decode for captured frame where "
2860 "available.";
vabr0215a8e2017-03-28 12:47:342861
Reka Normana11e57fc2019-01-29 21:56:582862const char kAppServiceAshName[] = "App Service Ash";
2863const char kAppServiceAshDescription[] =
2864 "Use the App Service to provide data to the Ash UI, such as the shelf and "
2865 "app list.";
2866
Bruno Kim Medeiros Cesarb98fe1d82018-06-06 18:11:522867const char kArcAvailableForChildName[] = "Allow ARC for child accounts";
2868const char kArcAvailableForChildDescription[] =
2869 "Allow child accounts to start Android apps.";
2870
Brett Wilson7b44537e2017-08-18 01:38:282871const char kArcBootCompleted[] = "Load Android apps automatically";
2872const char kArcBootCompletedDescription[] =
2873 "Allow Android apps to start automatically after signing in.";
vabr0215a8e2017-03-28 12:47:342874
Luum Habtemariamdaa8fd22018-06-25 22:39:432875const char kArcCupsApiName[] = "ARC CUPS API";
2876const char kArcCupsApiDescription[] =
2877 "Enables support of libcups APIs from ARC";
2878
Ryo Hashimoto8f4b30ced2019-04-08 12:14:192879const char kArcCustomTabsExperimentName[] =
2880 "Enable Custom Tabs experiment for ARC";
2881const char kArcCustomTabsExperimentDescription[] =
2882 "Allow Android apps to use Custom Tabs."
2883 "This feature only works on the Canary and Dev channels.";
2884
Naoki Fukino153de8a2019-01-22 08:37:542885const char kArcDocumentsProviderName[] = "ARC DocumentsProvider integration";
2886const char kArcDocumentsProviderDescription[] =
2887 "Enables DocumentsProvider integration in Chrome OS Files app.";
2888
Satoshi Niwa8b1d5282018-10-24 04:53:032889const char kArcFilePickerExperimentName[] =
2890 "Enable file picker experiment for ARC";
2891const char kArcFilePickerExperimentDescription[] =
2892 "Enables using Chrome OS file picker in ARC.";
2893
[email protected]939ceae2019-01-29 17:00:152894const char kArcGraphicBuffersVisualizationToolName[] =
2895 "Enable ARC graphic buffers visualization tool";
2896const char kArcGraphicBuffersVisualizationToolDescription[] =
2897 "Enable ARC graphic buffers visualization tool "
2898 "(chrome://arc-graphics-tracing).";
2899
Lev Rumyantsev7a8544312017-08-18 19:26:512900const char kArcNativeBridgeExperimentName[] =
2901 "Enable native bridge experiment for ARC";
2902const char kArcNativeBridgeExperimentDescription[] =
2903 "Enables experimental native bridge feature.";
2904
Jesse Schettlerc3d0a652019-04-23 18:49:242905const char kArcPrintSpoolerExperimentName[] =
2906 "Enable print spooler experiment for ARC";
2907const char kArcPrintSpoolerExperimentDescription[] =
Jesse Schettler10204aa92019-04-26 23:37:092908 "Enables using Chrome OS print system and print preview in ARC."
2909 "This feature only works on the Canary and Dev channels.";
Jesse Schettlerc3d0a652019-04-23 18:49:242910
lgchengecd1c1a62018-01-09 02:59:462911const char kArcUsbHostName[] = "Enable ARC USB host integration";
2912const char kArcUsbHostDescription[] =
2913 "Allow Android apps to use USB host feature on ChromeOS devices.";
2914
Kevin Cernekeeb7f96a52017-10-25 17:40:182915const char kArcVpnName[] = "Enable ARC VPN integration";
2916const char kArcVpnDescription[] =
2917 "Allow Android VPN clients to tunnel Chrome traffic.";
2918
Qiang Xu045aff222018-05-21 23:21:012919const char kAshEnableDisplayMoveWindowAccelsName[] =
2920 "Enable shortcuts for moving window between displays.";
2921const char kAshEnableDisplayMoveWindowAccelsDescription[] =
2922 "Enable shortcuts for moving window between displays.";
2923
Sammie Quonfe640ca2019-01-30 17:54:182924const char kAshEnableOverviewRoundedCornersName[] =
2925 "Enable rounded corners in overview mode.";
2926const char kAshEnableOverviewRoundedCornersDescription[] =
2927 "Enables rounded corners on overview windows.";
2928
Qiang Xu045aff222018-05-21 23:21:012929const char kAshEnablePersistentWindowBoundsName[] =
2930 "Enable persistent window bounds in multi-displays scenario.";
2931const char kAshEnablePersistentWindowBoundsDescription[] =
2932 "Enable persistent window bounds in multi-displays scenario.";
2933
Eliot Courtneye87a9c32018-11-20 03:33:022934const char kAshEnablePipRoundedCornersName[] =
2935 "Enable Picture-in-Picture rounded corners.";
2936const char kAshEnablePipRoundedCornersDescription[] =
2937 "Enable rounded corners on the Picture-in-Picture window.";
2938
Brett Wilson7b44537e2017-08-18 01:38:282939const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
2940const char kAshEnableUnifiedDesktopDescription[] =
2941 "Enable unified desktop mode which allows a window to span multiple "
2942 "displays.";
vabr0215a8e2017-03-28 12:47:342943
Sean Kau5e956192017-10-06 22:25:172944const char kBulkPrintersName[] = "Bulk Printers Policy";
2945const char kBulkPrintersDescription[] = "Enables the new bulk printers policy";
2946
Xiaochu Liu51d03fd2017-09-08 23:51:022947const char kCrOSContainerName[] = "Chrome OS Container";
2948const char kCrOSContainerDescription[] =
2949 "Enable the use of Chrome OS Container utility.";
2950
Brett Wilson7b44537e2017-08-18 01:38:282951const char kCrosRegionsModeName[] = "Cros-regions load mode";
2952const char kCrosRegionsModeDescription[] =
2953 "This flag controls cros-regions load mode";
2954const char kCrosRegionsModeDefault[] = "Default";
2955const char kCrosRegionsModeOverride[] = "Override VPD values.";
2956const char kCrosRegionsModeHide[] = "Hide VPD values.";
vabr0215a8e2017-03-28 12:47:342957
Daniel Ng96ab0c82019-01-16 01:21:552958const char kCrostiniAppSearchName[] = "Crostini App Search";
2959const char kCrostiniAppSearchDescription[] =
2960 "Enable search and installation of Crostini apps in the launcher.";
2961
Joel Hockey42387102019-01-10 01:19:322962const char kCrostiniBackupName[] = "Crostini Backup";
2963const char kCrostiniBackupDescription[] = "Enable Crostini export and import.";
2964
Nicholas Verne89be53b2019-03-27 23:08:322965const char kCrostiniUsbAllowUnsupportedName[] =
2966 "Crostini Usb Allow Unsupported";
2967const char kCrostiniUsbAllowUnsupportedDescription[] =
2968 "Allow mounting unsupported Usb devices in Crostini. At your own risk. "
2969 "To enable, Crostini Usb Support must also be enabled.";
2970
Josh Pratt57cea392018-10-30 02:59:062971const char kCrostiniUsbSupportName[] = "Crostini Usb Support";
2972const char kCrostiniUsbSupportDescription[] =
2973 "Enable mounting Usb devices in Crostini.";
2974
Josh Nohle2f82dcc2018-12-17 23:11:232975const char kCryptAuthV2EnrollmentName[] = "CryptAuth v2 Enrollment";
2976const char kCryptAuthV2EnrollmentDescription[] =
2977 "Use the CryptAuth v2 Enrollment protocol.";
2978
Daniele Castagna893d822e2019-03-08 21:37:112979const char kDisableExplicitDmaFencesName[] = "Disable explicit dma-fences";
2980const char kDisableExplicitDmaFencesDescription[] =
2981 "Always rely on implicit syncrhonization between GPU and display "
2982 "controller instead of using dma-fences explcitily when available.";
2983
Sammie Quonef6b4882017-09-14 16:50:052984const char kDisableTabletAutohideTitlebarsName[] =
2985 "Disable autohide titlebars in tablet mode";
2986const char kDisableTabletAutohideTitlebarsDescription[] =
2987 "Disable tablet mode autohide titlebars functionality. The user will be "
2988 "able to see the titlebar in tablet mode.";
2989
Xiaoqian Dai24b33eb2018-04-10 21:01:572990const char kDisableTabletSplitViewName[] = "Disable split view in Tablet mode";
2991const char kDisableTabletSplitViewDescription[] =
2992 "Disable split view for Chrome OS tablet mode.";
2993
Ahmed Fakhry4f567e692018-10-16 15:51:082994const char kDoubleTapToZoomInTabletModeName[] =
2995 "Double-tap to zoom in tablet mode";
2996const char kDoubleTapToZoomInTabletModeDescription[] =
2997 "If Enabled, double tapping in webpages while in tablet mode will zoom the "
2998 "page.";
2999
Matthew Mourgoscf22b4b2019-03-06 23:46:393000const char kEnableAppGridGhostName[] = "App Grid Ghosting";
3001const char kEnableAppGridGhostDescription[] =
3002 "Enables ghosting during an item drag in launcher.";
3003
Daniel Zhang01399072018-08-16 22:28:203004const char kEnableAppListSearchAutocompleteName[] =
3005 "App List Search Autocomplete";
3006const char kEnableAppListSearchAutocompleteDescription[] =
3007 "Allow App List search box to autocomplete queries for Google searches and "
3008 "apps.";
3009
Vladislav Kaznacheevaa213a02018-10-29 17:54:283010const char kEnableAppDataSearchName[] = "Enable app data search in launcher";
3011const char kEnableAppDataSearchDescription[] =
3012 "Allow launcher search to access data available through Firebase App "
3013 "Indexing";
3014
Lei Zhang0a318af2018-11-14 02:19:463015const char kEnableArcUnifiedAudioFocusName[] =
Becca Hughes34415e82018-10-05 18:47:373016 "Enable unified audio focus on ARC";
Lei Zhang0a318af2018-11-14 02:19:463017const char kEnableArcUnifiedAudioFocusDescription[] =
Becca Hughes34415e82018-10-05 18:47:373018 "If audio focus is enabled in Chrome then this will delegate audio focus "
3019 "control in Android apps to Chrome.";
3020
Yue Liebaa9952018-12-07 21:41:263021const char kEnableAssistantAppSupportName[] = "Enable Assistant App Support";
3022const char kEnableAssistantAppSupportDescription[] =
3023 "Enable the Assistant App Support feature";
3024
Meilin Wangb57f92f2019-04-19 04:27:103025const char kEnableAssistantKeyRemappingName[] =
3026 "Enable Assistant Key Remapping";
3027const char kEnableAssistantKeyRemappingDescription[] =
3028 "Allow Assistant key remapping in the keyboard settings.";
3029
Xiaohui Chenb523747b2019-03-14 23:38:323030const char kEnableAssistantLauncherIntegrationName[] =
3031 "Assistant & Launcher integration";
3032const char kEnableAssistantLauncherIntegrationDescription[] =
3033 "Combine Launcher search with the power of Assistant to provide the most "
3034 "useful answer for each query. Requires Assistant to be enabled.";
3035
3036const char kEnableAssistantVoiceMatchName[] = "Enable Assistant Voice Match";
3037const char kEnableAssistantVoiceMatchDescription[] =
3038 "Enable the Assistant Voice Match feature";
3039
Lei Zhang0ca70ea2018-09-07 17:51:013040const char kEnableChromeOsAccountManagerName[] = "Enable Account Manager";
3041const char kEnableChromeOsAccountManagerDescription[] =
Kushagra Sinha8a181fc2018-08-20 17:15:493042 "Enables the Chrome OS Account Manager";
3043
Alexander Alekseev38e1e0a2018-11-08 22:48:483044const char kEnableDiscoverAppName[] = "Enable Discover App";
3045const char kEnableDiscoverAppDescription[] =
3046 "Enable Discover App icon in launcher.";
3047
Sam McNally201fbf94e2018-07-04 03:15:203048const char kEnableDriveFsName[] = "Enable DriveFS";
3049const char kEnableDriveFsDescription[] =
3050 "Enables use of the new DriveFS-based Drive sync client.";
3051
Brett Wilson7b44537e2017-08-18 01:38:283052const char kEnableEncryptionMigrationName[] =
3053 "Enable encryption migration of user data";
3054const char kEnableEncryptionMigrationDescription[] =
3055 "If enabled and the device supports ARC, the user will be asked to update "
3056 "the encryption of user data when the user signs in.";
vabr0215a8e2017-03-28 12:47:343057
Xiaohui Chenfb0943e2018-10-16 22:44:373058const char kEnableGoogleAssistantName[] = "Enable Google Assistant";
3059const char kEnableGoogleAssistantDescription[] =
3060 "Enable an experimental Assistant implementation that will work on all "
3061 "Chromebooks.";
3062
Xiaohui Chenf4283f32018-11-26 20:02:503063const char kEnableGoogleAssistantDspName[] =
3064 "Enable Google Assistant with hardware-based hotword";
3065const char kEnableGoogleAssistantDspDescription[] =
3066 "Enable an experimental feature that uses hardware-based hotword detection "
3067 "for Assistant. Only a limited number of devices have this type of "
3068 "hardware support.";
3069
Xiaohui Chenc3baca42018-11-30 19:29:373070const char kEnableGoogleAssistantStereoInputName[] =
3071 "Enable Google Assistant with stereo audio input";
3072const char kEnableGoogleAssistantStereoInputDescription[] =
3073 "Enable an experimental feature that uses stereo audio input for hotword "
3074 "and voice to text detection in Google Assistant.";
3075
Qiang Xu045aff222018-05-21 23:21:013076const char kEnableHomeLauncherName[] = "Enable home launcher";
3077const char kEnableHomeLauncherDescription[] =
3078 "Enable home launcher in tablet mode.";
3079
Andrew Moylan97585272019-02-19 19:01:223080const char kEnableMyFilesVolumeName[] = "Enable MyFiles as Volume";
3081const char kEnableMyFilesVolumeDescription[] =
3082 "Enables use of MyFiles as a read/write volume. This should be only "
3083 "used for testing or for trying to restore the previous Downloads content.";
3084
Sammie Quon248ccef2018-08-28 23:00:013085const char kEnableOobeRecommendAppsScreenName[] =
3086 "Enable OOBE Recommend Apps Screen";
3087const char kEnableOobeRecommendAppsScreenDescription[] =
3088 "Enable the Recommend Apps Screen in OOBE which allows user to install apps"
3089 "from other devices";
3090
Vladislav Kaznacheevaa213a02018-10-29 17:54:283091const char kEnablePlayStoreSearchName[] = "Enable Play Store search";
3092const char kEnablePlayStoreSearchDescription[] =
3093 "Enable Play Store search in launcher.";
3094
Jazz Xu2e5886662018-12-14 00:38:483095const char kEnableVideoPlayerNativeControlsName[] =
3096 "Enable native controls in video player app";
3097const char kEnableVideoPlayerNativeControlsDescription[] =
3098 "Enable native controls in video player app";
3099
Lei Zhang0ca70ea2018-09-07 17:51:013100const char kEnableZeroStateSuggestionsName[] = "Enable Zero State Suggetions";
3101const char kEnableZeroStateSuggestionsDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013102 "Enable Zero State Suggestions feature in Launcher, which will show "
Vladislav Kaznacheevaa213a02018-10-29 17:54:283103 "suggestions when launcher search box is active with an empty query";
Sammie Quon248ccef2018-08-28 23:00:013104
Akihiro Ota3ff6f8a2019-01-18 17:43:043105const char kExperimentalAccessibilityChromeVoxLanguageSwitchingName[] =
3106 "Enable experimental ChromeVox language switching.";
3107const char kExperimentalAccessibilityChromeVoxLanguageSwitchingDescription[] =
3108 "Enable ChromeVox language switching, which changes ChromeVox's "
3109 "output language upon detection of new language.";
3110
Akihiro Ota000c5e8a2019-03-29 21:48:013111const char kExperimentalAccessibilityChromeVoxRichTextIndicationName[] =
3112 "Enable experimental ChromeVox rich text indication.";
3113const char kExperimentalAccessibilityChromeVoxRichTextIndicationDescription[] =
3114 "Enable ChromeVox rich text indication, which automatically notifies the "
3115 "user of text styling.";
3116
Alex Danilo284b4482019-04-02 09:20:173117const char kFileManagerFeedbackPanelDescription[] =
3118 "Enable new feedback panel in the Files app.";
3119const char kFileManagerFeedbackPanelName[] = "Files App. feedback panel";
3120
Akihiro Ota000c5e8a2019-03-29 21:48:013121const char kFileManagerTouchModeName[] = "Files App. touch mode";
3122const char kFileManagerTouchModeDescription[] =
3123 "Touchscreen-specific interactions of the Files app.";
3124
3125const char kFirstRunUiTransitionsName[] =
3126 "Animated transitions in the first-run tutorial";
3127const char kFirstRunUiTransitionsDescription[] =
3128 "Transitions during first-run tutorial are animated.";
3129
Brett Wilson7b44537e2017-08-18 01:38:283130const char kForceEnableStylusToolsName[] = "Force enable stylus features";
3131const char kForceEnableStylusToolsDescription[] =
3132 "Forces display of the stylus tools menu in the shelf and the stylus "
3133 "section in settings, even if there is no attached stylus device.";
3134
Sheng-Hao Tsao874327a2019-04-30 08:13:003135const char kForceUseChromeCameraName[] =
3136 "Open Chrome camera app when clicking on camera icon";
3137const char kForceUseChromeCameraDescription[] =
3138 "Open Chrome camera app when clicking on camera icon instead of "
3139 "GoogleCamera app, regardless of whether Android runtime is enabled.";
3140
Andrew Moylan97585272019-02-19 19:01:223141const char kFsNosymfollowName[] =
3142 "Prevent symlink traversal on user-supplied filesystems.";
3143const char kFsNosymfollowDescription[] =
3144 "Causes user-supplied filesystems to be mounted with the 'nosymfollow'"
3145 " option, so the chromuimos LSM denies symlink traversal on the"
3146 " filesystem.";
3147
Brett Wilson7b44537e2017-08-18 01:38:283148const char kGestureTypingName[] = "Gesture typing for the virtual keyboard.";
3149const char kGestureTypingDescription[] =
3150 "Enable/Disable gesture typing option in the settings page for the virtual "
3151 "keyboard.";
3152
Becca Hughes71465532019-04-12 19:18:553153const char kHideArcMediaNotificationsName[] = "Hide ARC media notifications";
3154const char kHideArcMediaNotificationsDescription[] =
3155 "Hides media notifications for ARC apps. Requires "
3156 "#enable-media-session-notifications to be enabled.";
3157
Leo Zhang49c34d22019-04-02 09:57:593158const char kImeInputLogicFstName[] = "Enable FST Input Logic on IME";
3159const char kImeInputLogicFstDescription[] =
3160 "Enable FST Input Logic to replace the IME legacy input logic on NaCl";
3161
Andrew Moylan97585272019-02-19 19:01:223162const char kImeServiceName[] = "Enable IME service";
3163const char kImeServiceDescription[] =
3164 "Enable IME service to provide the IME functionality instead of NaCl";
3165
Ahmed Fakhry15d707e2019-02-22 23:54:213166const char kListAllDisplayModesName[] = "List all display modes";
3167const char kListAllDisplayModesDescription[] =
3168 "Enables listing all external displays' modes in the display settings.";
3169
Megumi Hattori5a0d4182018-03-06 11:09:503170const char kLockScreenNotificationName[] = "Lock screen notification";
3171const char kLockScreenNotificationDescription[] =
3172 "Enable notifications on the lock screen.";
3173
Mohsen Izadi06a16f72018-11-29 02:29:223174const char kMashOopVizName[] = "Out-of-process viz for mash";
3175const char kMashOopVizDescription[] =
3176 "Runs viz in a separate process when mash is enabled (otherwise viz would "
3177 "run in ash process)";
3178
Becca Hughes71465532019-04-12 19:18:553179const char kMediaSessionNotificationsName[] = "Media session notifications";
3180const char kMediaSessionNotificationsDescription[] =
3181 "Shows notifications for media sessions showing the currently playing "
3182 "media and providing playback controls";
3183
Brett Wilson7b44537e2017-08-18 01:38:283184const char kMemoryPressureThresholdName[] =
3185 "Memory discard strategy for advanced pressure handling";
3186const char kMemoryPressureThresholdDescription[] =
3187 "Memory discarding strategy to use";
3188const char kConservativeThresholds[] =
3189 "Conservative memory pressure release strategy";
3190const char kAggressiveCacheDiscardThresholds[] =
3191 "Aggressive cache release strategy";
3192const char kAggressiveTabDiscardThresholds[] =
3193 "Aggressive tab release strategy";
3194const char kAggressiveThresholds[] =
3195 "Aggressive tab and cache release strategy";
3196
vabr0215a8e2017-03-28 12:47:343197const char kNetworkPortalNotificationName[] =
3198 "Notifications about captive portals";
vabr0215a8e2017-03-28 12:47:343199const char kNetworkPortalNotificationDescription[] =
3200 "If enabled, notification is displayed when device is connected to a "
3201 "network behind captive portal.";
3202
Anand K. Mistrydb5e0102018-10-04 04:24:003203const char kNewZipUnpackerName[] = "ZIP Archiver (unpacking)";
Brett Wilson7b44537e2017-08-18 01:38:283204const char kNewZipUnpackerDescription[] =
Anand K. Mistrydb5e0102018-10-04 04:24:003205 "Use the ZIP Archiver for mounting/unpacking ZIP files";
vabr0215a8e2017-03-28 12:47:343206
Brett Wilson7b44537e2017-08-18 01:38:283207const char kPhysicalKeyboardAutocorrectName[] = "Physical keyboard autocorrect";
3208const char kPhysicalKeyboardAutocorrectDescription[] =
3209 "Enable physical keyboard autocorrect for US keyboard, which can provide "
3210 "suggestions as typing on physical keyboard.";
vabr0215a8e2017-03-28 12:47:343211
3212const char kPrinterProviderSearchAppName[] =
3213 "Chrome Web Store Gallery app for printer drivers";
vabr0215a8e2017-03-28 12:47:343214const char kPrinterProviderSearchAppDescription[] =
3215 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:193216 "searches Chrome Web Store for extensions that support printing to a USB "
3217 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:343218
Andrew Moylan97585272019-02-19 19:01:223219const char kSchedulerConfigurationName[] = "Scheduler Configuration";
3220const char kSchedulerConfigurationDescription[] =
3221 "Instructs the OS to use a specific scheduler configuration setting.";
3222const char kSchedulerConfigurationConservative[] = "Conservative";
3223const char kSchedulerConfigurationPerformance[] = "Performance";
3224
James Cook0ba192bf2017-12-01 20:53:113225const char kShowTapsName[] = "Show taps";
3226const char kShowTapsDescription[] =
3227 "Draws a circle at each touch point, which makes touch points more obvious "
3228 "when projecting or mirroring the display. Similar to the Android OS "
3229 "developer option.";
3230
3231const char kShowTouchHudName[] = "Show HUD for touch points";
3232const char kShowTouchHudDescription[] =
3233 "Shows a trail of colored dots for the last few touch points. Pressing "
3234 "Ctrl-Alt-I shows a heads-up display view in the top-left corner. Helps "
3235 "debug hardware issues that generate spurious touch events.";
3236
James Cook28d7c482018-09-07 21:00:543237const char kSingleProcessMashName[] =
3238 "In-process window service (SingleProcessMash)";
3239const char kSingleProcessMashDescription[] =
3240 "Runs the system UI (ash) as a mojo service, but inside the browser "
3241 "process. The browser uses the mojo window service (ws) APIs.";
3242
Shu Chen4144c3a2019-04-11 00:54:163243const char kMojoImfName[] = "Mojo-based IMF to bridge the client and IME";
3244const char kMojoImfDescription[] =
3245 "Makes the system UI (ash) as the bridge between the client and the IME via"
3246 " mojo APIs. This can only take effect if the flag \"single-process-masn\" "
3247 "is enabled.";
3248
Jorge Gil5a8ccde2018-07-10 01:46:213249const char kSmartTextSelectionName[] = "Smart Text Selection";
3250const char kSmartTextSelectionDescription[] =
3251 "Shows quick actions for text "
3252 "selections in the context menu.";
3253
Bailey Berro6c989672019-04-11 19:19:203254const char kStreamlinedUsbPrinterSetupName[] =
3255 "Streamlined USB Printer Setup Flow";
3256const char kStreamlinedUsbPrinterSetupDescription[] =
3257 "Automatically sets up capable USB printers when plugged in. Shows a "
3258 "notification with the setup result.";
3259
Brett Wilson7b44537e2017-08-18 01:38:283260const char kTetherName[] = "Instant Tethering";
3261const char kTetherDescription[] =
3262 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
3263 "phone to share its Internet connection with this device.";
stanisc14bed0b132017-05-10 17:46:373264
Brett Wilson7b44537e2017-08-18 01:38:283265const char kTouchscreenCalibrationName[] =
3266 "Enable/disable touchscreen calibration option in material design settings";
3267const char kTouchscreenCalibrationDescription[] =
3268 "If enabled, the user can calibrate the touch screen displays in "
3269 "chrome://settings/display.";
yhanadac5bff5b2017-05-18 06:37:093270
Qiang Xu045aff222018-05-21 23:21:013271const char kUiDevToolsName[] = "Enable native UI inspection";
3272const char kUiDevToolsDescription[] =
3273 "Enables inspection of native UI elements. For local inspection use "
3274 "chrome://inspect#other";
3275
Mitsuru Oshima63d3f2a2017-08-23 00:12:113276// Force UI Mode
3277const char kUiModeName[] = "Force Ui Mode";
3278const char kUiModeDescription[] =
Elly Fong-Jonesf4c15772019-01-31 17:40:063279 "This flag can be used to force a certain mode on to a chromebook, "
3280 "despite its current orientation. \"Tablet\" means that the "
3281 "chromebook will act as if it were in tablet mode. \"Clamshell\" "
3282 "means that the chromebook will act as if it were in clamshell "
3283 "mode. \"Auto\" means that the chromebook will alternate between "
3284 "the two, based on its orientation.";
Min Chenfd25cd22018-11-06 01:50:513285const char kUiModeTablet[] = "Tablet";
Mitsuru Oshima63d3f2a2017-08-23 00:12:113286const char kUiModeClamshell[] = "Clamshell";
3287const char kUiModeAuto[] = "Auto (default)";
3288
Andrew Moylan97585272019-02-19 19:01:223289const char kUiShowCompositedLayerBordersName[] =
3290 "Show UI composited layer borders";
3291const char kUiShowCompositedLayerBordersDescription[] =
3292 "Show border around composited layers created by UI.";
3293const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
3294const char kUiShowCompositedLayerBordersSurface[] = "Surface";
3295const char kUiShowCompositedLayerBordersLayer[] = "Layer";
3296const char kUiShowCompositedLayerBordersAll[] = "All";
3297
3298const char kUiSlowAnimationsName[] = "Slow UI animations";
3299const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
Mattias Nissler6bb633f2019-02-13 23:41:463300
Sonny Sasaka7fecfeda2018-07-11 23:47:553301const char kUnfilteredBluetoothDevicesName[] = "Unfiltered Bluetooth devices";
3302const char kUnfilteredBluetoothDevicesDescription[] =
3303 "Shows all Bluetooth devices in UI (System Tray/Settings Page.)";
3304
Allen Webbcdc8e69d2018-09-12 20:36:003305const char kUsbguardName[] = "Block new USB devices at the lock screen.";
3306const char kUsbguardDescription[] =
3307 "Prevents newly connected USB devices from operating at the lock screen"
3308 " until Chrome OS is unlocked to protect against malicious USB devices."
3309 " Already connected USB devices will continue to function.";
3310
James Cooka1bcfa9a2018-01-30 00:18:403311const char kUseMashName[] = "Out-of-process system UI (mash)";
3312const char kUseMashDescription[] =
3313 "Runs the mojo UI service (mus) and the ash window manager and system UI "
3314 "in a separate process.";
Brett Wilson7b44537e2017-08-18 01:38:283315
Andrew Moylan651220212019-02-19 22:50:143316const char kUserActivityPredictionMlServiceName[] =
3317 "ML Service Smart Dim model";
3318const char kUserActivityPredictionMlServiceDescription[] =
3319 "Uses the new ML Service model for user activity prediction (Smart Dim).";
3320
Andres Calderon Jaramillo43c0e8a2018-08-21 02:46:233321const char kVaapiJpegImageDecodeAccelerationName[] =
3322 "VA-API JPEG decode acceleration for images";
3323const char kVaapiJpegImageDecodeAccelerationDescription[] =
3324 "Enable or disable decode acceleration of JPEG images (as opposed to camera"
3325 " captures) using the VA-API.";
3326
Brett Wilson7b44537e2017-08-18 01:38:283327const char kVirtualKeyboardName[] = "Virtual Keyboard";
3328const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
3329
Brett Wilson7b44537e2017-08-18 01:38:283330const char kWakeOnPacketsName[] = "Wake On Packets";
3331const char kWakeOnPacketsDescription[] =
3332 "Enables waking the device based on the receipt of some network packets.";
orenb21da031c2017-06-30 21:24:203333
Rob Schonbergercf5aeeea2019-02-27 16:57:373334const char kEnableAppReinstallZeroStateName[] =
3335 "Enable Zero State App Reinstall Suggestions.";
3336const char kEnableAppReinstallZeroStateDescription[] =
3337 "Enable Zero State App Reinstall Suggestions feature in launcher, which "
3338 "will show app reinstall recommendations at end of zero state list.";
3339
Tim Song988f7092019-03-01 03:13:393340extern const char kAshNotificationStackingBarRedesignName[] =
3341 "Redesigned notification stacking bar";
3342extern const char kAshNotificationStackingBarRedesignDescription[] =
3343 "Enables the redesigned notification stacking bar UI with a \"Clear all\" "
3344 "button.";
3345
Roman Sorokin6812e0082019-04-01 10:12:573346extern const char kInSessionPasswordChangeName[] =
3347 "Enable user password change in the session";
3348
3349extern const char kInSessionPasswordChangeDescription[] =
3350 "Let user change both their IdP password and Chromebook password on "
3351 "chrome://password-change page.";
3352
yhanadac5bff5b2017-05-18 06:37:093353#endif // defined(OS_CHROMEOS)
3354
Collin Baker75a29462019-03-13 19:57:313355// All views-based platforms --------------------------------------------------
3356
3357#if defined(TOOLKIT_VIEWS)
3358
Sajad Maysamc30d6f82019-03-19 22:52:503359const char kEnableMDRoundedCornersOnDialogsName[] =
Dana Fried4e177f32019-04-11 23:46:463360 "MD corners on secondary UI";
Sajad Maysamc30d6f82019-03-19 22:52:503361const char kEnableMDRoundedCornersOnDialogsDescription[] =
Dana Fried4e177f32019-04-11 23:46:463362 "Increases corner radius on secondary UI.";
Sajad Maysamc30d6f82019-03-19 22:52:503363
Collin Baker75a29462019-03-13 19:57:313364const char kInstallableInkDropName[] = "Use InstallableInkDrop where supported";
3365const char kInstallableInkDropDescription[] =
3366 "InstallableInkDrop is part of an InkDrop refactoring effort. This enables "
3367 "the pilot implementation where available.";
3368
3369#endif // defined(TOOLKIT_VIEWS)
3370
Brett Wilson7b44537e2017-08-18 01:38:283371// Random platform combinations -----------------------------------------------
3372
3373#if defined(OS_WIN) || defined(OS_LINUX)
3374
3375const char kEnableInputImeApiName[] = "Enable Input IME API";
3376const char kEnableInputImeApiDescription[] =
3377 "Enable the use of chrome.input.ime API.";
3378
3379#endif // defined(OS_WIN) || defined(OS_LINUX)
3380
Jiajia Qindb252e92019-01-28 11:47:483381#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_CHROMEOS)
3382
3383const char kWebGL2ComputeContextName[] = "WebGL 2.0 Compute";
3384const char kWebGL2ComputeContextDescription[] =
3385 "Enable the use of WebGL 2.0 Compute API.";
3386
3387#endif // defined(OS_WIN) || defined(OS_LINUX) || defined(OS_CHROMEOS)
3388
lanwei83f54452018-06-21 23:51:043389#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3390
3391const char kDirectManipulationStylusName[] = "Direct Manipulation Stylus";
3392const char kDirectManipulationStylusDescription[] =
3393 "If enabled, Chrome will scroll web pages on stylus drag.";
3394
3395#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3396
Henrik Grunell63f2d772018-12-06 17:25:203397#if defined(OS_MACOSX) || defined(OS_CHROMEOS)
3398
3399const char kForceEnableSystemAecName[] = "Force enable system AEC";
3400const char kForceEnableSystemAecDescription[] =
3401 "Use system echo canceller instead of WebRTC echo canceller. If there is "
3402 "no system echo canceller available, getUserMedia with echo cancellation "
3403 "enabled will fail.";
3404
3405#endif // defined(OS_MACOSX) || defined(OS_CHROMEOS)
3406
David Bienvenuc713d502019-02-07 23:46:323407#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_CHROMEOS)
3408
3409const char kWebContentsOcclusionName[] = "Enable occlusion of web contents";
3410const char kWebContentsOcclusionDescription[] =
3411 "If enabled, web contents will behave as hidden when it is occluded by "
3412 "other windows.";
3413
3414#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_CHROMEOS)
3415
Brett Wilson7b44537e2017-08-18 01:38:283416// Feature flags --------------------------------------------------------------
3417
Lei Zhang0a318af2018-11-14 02:19:463418#if defined(DCHECK_IS_CONFIGURABLE)
3419const char kDcheckIsFatalName[] = "DCHECKs are fatal";
3420const char kDcheckIsFatalDescription[] =
3421 "By default Chrome will evaluate in this build, but only log failures, "
3422 "rather than crashing. If enabled, DCHECKs will crash the calling process.";
3423#endif // defined(DCHECK_IS_CONFIGURABLE)
3424
Brett Wilson7b44537e2017-08-18 01:38:283425#if BUILDFLAG(ENABLE_VR)
3426
Alex Cooper151b596e2019-02-21 01:26:573427const char kWebXrOrientationSensorDeviceName[] = "Orientation sensors for XR";
3428const char kWebXrOrientationSensorDeviceDescription[] =
3429 "Allow use of orientation sensors for XR if present";
3430
Bill Orr103ed272018-02-14 21:23:053431#if BUILDFLAG(ENABLE_OCULUS_VR)
3432const char kOculusVRName[] = "Oculus hardware support";
3433const char kOculusVRDescription[] =
3434 "If enabled, Chrome will use Oculus devices for VR (supported only on "
3435 "Windows 10 or later).";
3436#endif // ENABLE_OCULUS_VR
3437
Bill Orr49527562017-11-22 16:58:483438#if BUILDFLAG(ENABLE_OPENVR)
3439const char kOpenVRName[] = "OpenVR hardware support";
3440const char kOpenVRDescription[] =
Bill Orr5056e692018-01-17 02:08:073441 "If enabled, Chrome will use OpenVR devices for VR (supported only on "
3442 "Windows 10 or later).";
Bill Orr49527562017-11-22 16:58:483443#endif // ENABLE_OPENVR
3444
Bill Orrd2af6bd52019-01-23 02:50:243445#if BUILDFLAG(ENABLE_WINDOWS_MR)
3446const char kWindowsMixedRealityName[] = "Windows Mixed Reality support";
3447const char kWindowsMixedRealityDescription[] =
3448 "If enabled, Chrome will use Windows Mixed Reality devices for VR"
3449 " (supported only on Windows 10 or later).";
3450#endif // ENABLE_WINDOWS_MR
3451
Bill Orrecfb9fe2018-10-02 00:11:103452#if BUILDFLAG(ENABLE_ISOLATED_XR_SERVICE)
3453const char kXRSandboxName[] = "XR device sandboxing";
3454const char kXRSandboxDescription[] =
3455 "If enabled, Chrome will host VR APIs in a restricted process on desktop.";
3456#endif // ENABLE_ISOLATED_XR_SERVICE
3457
Brett Wilson7b44537e2017-08-18 01:38:283458#endif // ENABLE_VR
3459
Derek Schuff71d9a922019-04-24 21:36:003460#if BUILDFLAG(ENABLE_NACL)
3461const char kNaclName[] = "Native Client";
3462const char kNaclDescription[] =
3463 "Support Native Client for all web applications, even those that were not "
3464 "installed from the Chrome Web Store.";
3465#endif // ENABLE_NACL
3466
Lei Zhang802201c2018-11-14 18:16:283467#if BUILDFLAG(ENABLE_PLUGINS)
3468
dstockwellcc759202019-01-11 00:42:123469#if defined(OS_CHROMEOS)
3470const char kPdfAnnotations[] = "PDF Annotations";
Weidong Guo577fe9ac2019-01-28 19:58:103471const char kPdfAnnotationsDescription[] = "Enable annotating PDF documents.";
dstockwellcc759202019-01-11 00:42:123472#endif // defined(OS_CHROMEOS)
3473
Lei Zhang802201c2018-11-14 18:16:283474const char kPdfFormSaveName[] = "Save PDF Forms";
3475const char kPdfFormSaveDescription[] =
3476 "Enable saving PDFs with filled form data.";
3477
3478const char kPdfIsolationName[] = "PDF Isolation";
3479const char kPdfIsolationDescription[] =
3480 "Render PDF files from different origins in different plugin processes.";
3481
3482#endif // BUILDFLAG(ENABLE_PLUGINS)
3483
Brett Wilson7b44537e2017-08-18 01:38:283484#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3485
3486const char kAutofillCreditCardUploadName[] =
3487 "Enable offering upload of Autofilled credit cards";
3488const char kAutofillCreditCardUploadDescription[] =
3489 "Enables a new option to upload credit cards to Google Payments for sync "
3490 "to all Chrome devices.";
3491
3492#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3493
Collin Baker0a45d6a2018-12-20 19:21:503494#if BUILDFLAG(ENABLE_DESKTOP_IN_PRODUCT_HELP)
3495
3496const char kReopenTabInProductHelpName[] = "Reopen tab in-product help";
3497const char kReopenTabInProductHelpDescription[] =
3498 "Enable in-product help that guides a user to reopen a tab if it looks "
3499 "like they accidentally closed it.";
3500
3501#endif // BUILDFLAG(ENABLE_DESKTOP_IN_PRODUCT_HELP)
3502
Tomas Popela253a5832019-01-14 17:22:103503#if defined(WEBRTC_USE_PIPEWIRE)
3504
3505extern const char kWebrtcPipeWireCapturerName[] = "WebRTC PipeWire support";
3506extern const char kWebrtcPipeWireCapturerDescription[] =
3507 "When enabled the WebRTC will use the PipeWire multimedia server for "
3508 "capturing the desktop content on the Wayland display server.";
3509
3510#endif // #if defined(WEBRTC_USE_PIPEWIRE)
3511
Stephen Chenneyde6e5c82019-01-21 01:56:043512const char kAvoidFlashBetweenNavigationName[] =
3513 "Enable flash avoidance between same-origin navigations";
3514const char kAvoidFlahsBetweenNavigationDescription[] =
3515 "Enables experimental flash avoidance when navigating between pages "
3516 "in the same origin. This feature is in the implementation stages and "
3517 "currently has no effect.";
3518
Brett Wilson7b44537e2017-08-18 01:38:283519// ============================================================================
3520// Don't just add flags to the end, put them in the right section in
3521// alphabetical order just like the header file.
3522// ============================================================================
3523
vabr0215a8e2017-03-28 12:47:343524} // namespace flag_descriptions