blob: d12835119edb912dd75da303b84039c7066a693f [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
Caitlin Fischer31e60b22019-03-21 21:43:37156const char kAutofillUseImprovedLabelDisambiguationName[] =
157 "Autofill Uses Improved Label Disambiguation";
158const char kAutofillUseImprovedLabelDisambiguationDescription[] =
159 "When enabled, the Autofill dropdown's suggestions' labels are displayed "
160 "using the improved disambiguation format.";
Caitlin Fischerfd366e72019-02-20 20:47:32161
Roger McFarlane1a37d7b2018-04-20 22:45:19162const char kAutofillEnforceMinRequiredFieldsForHeuristicsName[] =
163 "Autofill Enforce Min Required Fields For Heuristics";
164const char kAutofillEnforceMinRequiredFieldsForHeuristicsDescription[] =
165 "When enabled, autofill will generally require a form to have at least 3 "
166 "fields before allowing heuristic field-type prediction to occur.";
167
168const char kAutofillEnforceMinRequiredFieldsForQueryName[] =
169 "Autofill Enforce Min Required Fields For Query";
170const char kAutofillEnforceMinRequiredFieldsForQueryDescription[] =
171 "When enabled, autofill will generally require a form to have at least 3 "
172 "fields before querying the autofill server for field-type predictions.";
173
174const char kAutofillEnforceMinRequiredFieldsForUploadName[] =
175 "Autofill Enforce Min Required Fields For Upload";
176const char kAutofillEnforceMinRequiredFieldsForUploadDescription[] =
177 "When enabled, autofill will generally require a form to have at least 3 "
178 "fillable fields before uploading field-type votes for that form.";
179
Moe Ahmadid3ddfcb2018-04-20 19:51:08180const char kAutofillRestrictUnownedFieldsToFormlessCheckoutName[] =
181 "Restrict formless form extraction";
182const char kAutofillRestrictUnownedFieldsToFormlessCheckoutDescription[] =
183 "Restrict extraction of formless forms to checkout flows";
184
Roger McFarlanee193ab122018-11-22 20:55:07185const char kAutofillRichMetadataQueriesName[] =
186 "Autofill - Rich metadata queries (Canary/Dev only)";
187const char kAutofillRichMetadataQueriesDescription[] =
188 "Transmit rich form/field metadata when querying the autofill server. "
189 "This feature only works on the Canary and Dev channels.";
190
sebsg48d53acd92019-01-17 18:11:16191const char kAutofillSettingsSplitByCardTypeName[] =
192 "Autofill settings split by card type";
193const char kAutofillSettingsSplitByCardTypeDescription[] =
194 "When enabled, the cards in the payments settings will be split into two "
195 "lists based on where they are stored.";
196
Brett Wilsonf27ff602017-07-07 22:28:47197const char kAutoplayPolicyName[] = "Autoplay policy";
198const char kAutoplayPolicyDescription[] =
199 "Policy used when deciding if audio or video is allowed to autoplay.";
200
201const char kAutoplayPolicyUserGestureRequiredForCrossOrigin[] =
202 "User gesture is required for cross-origin iframes.";
203const char kAutoplayPolicyNoUserGestureRequired[] =
204 "No user gesture is required.";
205const char kAutoplayPolicyUserGestureRequired[] = "User gesture is required.";
206const char kAutoplayPolicyDocumentUserActivation[] =
207 "Document user activation is required.";
208
Maya Lekova4bbfdb7f2018-10-16 08:15:03209const char kAwaitOptimizationName[] = "Await optimization";
210const char kAwaitOptimizationDescription[] =
211 "Enables await taking 1 tick on the microtask queue.";
212
Brett Wilsonf27ff602017-07-07 22:28:47213const char kBrowserTaskSchedulerName[] = "Task Scheduler";
214const char kBrowserTaskSchedulerDescription[] =
215 "Enables redirection of some task posting APIs to the task scheduler.";
216
Carlos IL766fbc882018-02-16 02:34:52217const char kBundledConnectionHelpName[] = "Bundled Connection Help";
218const char kBundledConnectionHelpDescription[] =
Carlos ILaafcd73a2018-07-10 20:08:37219 "Enables or disables redirection to local help content for users who get "
220 "an interstitial after clicking the 'Learn More' link on a previous "
221 "interstitial.";
Carlos IL766fbc882018-02-16 02:34:52222
Brett Wilsonf27ff602017-07-07 22:28:47223const char kBypassAppBannerEngagementChecksName[] =
224 "Bypass user engagement checks";
225const char kBypassAppBannerEngagementChecksDescription[] =
226 "Bypasses user engagement checks for displaying app banners, such as "
227 "requiring that users have visited the site before and that the banner "
228 "hasn't been shown recently. This allows developers to test that other "
229 "eligibility requirements for showing app banners, such as having a "
230 "manifest, are met.";
231
Amber Won478561d2017-08-19 01:02:59232const char kClickToOpenPDFName[] = "Click to open embedded PDFs";
233const char kClickToOpenPDFDescription[] =
234 "When the PDF plugin is unavailable, show a click-to-open placeholder for "
235 "embedded PDFs.";
236
rbpotter9990eb42018-07-12 05:34:59237const char kCloudPrinterHandlerName[] = "Enable Cloud Printer Handler";
238const char kCloudPrinterHandlerDescription[] =
239 "Use the new cloud printer handler for communicating with the cloud "
240 "print server, instead of the cloud print interface in the Print "
241 "Preview WebUI.";
242
Tanja Gornakb0985dd2018-10-11 17:24:40243const char kFCMInvalidationsName[] =
244 "Enable invalidations delivery via new FCM based protocol";
245const char kFCMInvalidationsDescription[] =
246 "Use the new FCM-based protocol for deliveling invalidations";
247
Yining Wangdedf0762019-02-19 20:20:29248const char kFocusMode[] = "Focus Mode";
249const char kFocusModeDescription[] =
250 "If enabled, allows the user to switch to Focus Mode";
251
Christopher Cameronceb8727d2017-09-07 23:53:16252const char kForceColorProfileSRGB[] = "sRGB";
253const char kForceColorProfileP3[] = "Display P3 D65";
254const char kForceColorProfileColorSpin[] = "Color spin with gamma 2.4";
255const char kForceColorProfileHdr[] = "scRGB linear (HDR where available)";
256
257const char kForceColorProfileName[] = "Force color profile";
258const char kForceColorProfileDescription[] =
259 "Forces Chrome to use a specific color profile instead of the color "
260 "of the window's current monitor, as specified by the operating system.";
261
Brett Wilsonf27ff602017-07-07 22:28:47262const char kCompositedLayerBordersName[] = "Composited render layer borders";
263const char kCompositedLayerBordersDescription[] =
264 "Renders a border around composited Render Layers to help debug and study "
265 "layer compositing.";
266
Theresac34db2d2018-06-28 00:03:11267const char kContextualSuggestionsButtonName[] = "Contextual Suggestions Button";
268const char kContextualSuggestionsButtonDescription[] =
269 "If enabled, shows a button to trigger contextual suggestions.";
270
Theresae308b9e2018-10-10 15:57:40271const char kContextualSuggestionsIPHReverseScrollName[] =
272 "Contextual Suggestions IPH Reverse Scroll";
273const char kContextualSuggestionsIPHReverseScrollDescription[] =
274 "Require a reverse scroll before showing in-product help for contextual "
275 "suggestions.";
276
Theresa0f2947b92018-07-02 21:27:58277const char kContextualSuggestionsOptOutName[] =
278 "Contextual Suggestions Opt-out";
279const char kContextualSuggestionsOptOutDescription[] =
280 "If enabled, allows the user to opt out of contextual suggestions.";
281
Brett Wilsonf27ff602017-07-07 22:28:47282const char kCreditCardAssistName[] = "Credit Card Assisted Filling";
283const char kCreditCardAssistDescription[] =
284 "Enable assisted credit card filling on certain sites.";
285
Thanh Le659cb102017-12-20 22:00:19286const char kDataSaverServerPreviewsName[] = "Data Saver Server Previews";
287const char kDataSaverServerPreviewsDescription[] =
288 "Allow the Data Reduction Proxy to serve previews.";
Brett Wilsonf27ff602017-07-07 22:28:47289
Brett Wilsonf27ff602017-07-07 22:28:47290const char kDebugPackedAppName[] = "Debugging for packed apps";
291const char kDebugPackedAppDescription[] =
292 "Enables debugging context menu options such as Inspect Element for packed "
293 "applications.";
294
Brett Wilsonf27ff602017-07-07 22:28:47295const char kDebugShortcutsName[] = "Debugging keyboard shortcuts";
296const char kDebugShortcutsDescription[] =
297 "Enables additional keyboard shortcuts that are useful for debugging Ash.";
298
299const char kDeviceDiscoveryNotificationsName[] =
300 "Device Discovery Notifications";
301const char kDeviceDiscoveryNotificationsDescription[] =
302 "Device discovery notifications on local network.";
303
304const char kDevtoolsExperimentsName[] = "Developer Tools experiments";
305const char kDevtoolsExperimentsDescription[] =
306 "Enables Developer Tools experiments. Use Settings panel in Developer "
307 "Tools to toggle individual experiments.";
308
309const char kDisableAudioForDesktopShareName[] =
310 "Disable Audio For Desktop Share";
311const char kDisableAudioForDesktopShareDescription[] =
312 "With this flag on, desktop share picker window will not let the user "
313 "choose whether to share audio.";
314
Yue Ru Suna50a80f2019-02-08 05:02:58315const char kDisableBestEffortTasksName[] = "Skip best effort tasks";
316const char kDisableBestEffortTasksDescription[] =
317 "With this flag on, tasks of the lowest priority will not be executed "
318 "until shutdown. The queue of low priority tasks can increase memory usage."
319 "Also, while it should be possible to use Chrome almost normally with this "
320 "flag, it is expected that some non-visible operations such as writing "
321 "user data to disk, cleaning caches, reporting metrics or updating "
322 "components won't be performed until shutdown.";
323
Arthur Sonzogni721f48e2018-10-31 17:10:02324const char kDisableIpcFloodingProtectionName[] =
325 "Disable IPC flooding protection";
326const char kDisableIpcFloodingProtectionDescription[] =
327 "Some javascript code can flood the inter process communication system. "
328 "This protection limits the rate (calls/seconds) at which theses function "
arthursonzogni443bd0ef2018-11-27 16:12:53329 "can be used. This flag disables the protection. This flag is deprecated "
330 "and will be removed in Chrome 76. Use the switch "
331 "--disable-ipc-flooding-protection instead.";
Arthur Sonzogni721f48e2018-10-31 17:10:02332
Chris Palmer917bc052018-03-14 19:28:31333const char kDisablePushStateThrottleName[] = "Disable pushState throttling";
334const char kDisablePushStateThrottleDescription[] =
335 "Disables throttling of history.pushState and history.replaceState method "
arthursonzogni443bd0ef2018-11-27 16:12:53336 "calls. This flag is deprecated and will be removed in Chrome 76. Use the "
337 "switch --disable-ipc-flooding-protection instead.";
Chris Palmer917bc052018-03-14 19:28:31338
Brett Wilsonf27ff602017-07-07 22:28:47339const char kDisallowDocWrittenScriptsUiName[] =
340 "Block scripts loaded via document.write";
341const char kDisallowDocWrittenScriptsUiDescription[] =
342 "Disallows fetches for third-party parser-blocking scripts inserted into "
343 "the main frame via document.write.";
344
Christopher Thompson2ffffa2c2018-05-18 23:06:37345const char kDisallowUnsafeHttpDownloadsName[] =
346 "Block unsafe downloads over insecure connections";
347const char kDisallowUnsafeHttpDownloadsNameDescription[] =
348 "Disallows downloads of unsafe files (files that can potentially execute "
349 "code), where the final download origin or any origin in the redirect "
350 "chain is insecure.";
351
Brett Wilsonf27ff602017-07-07 22:28:47352const char kEmbeddedExtensionOptionsName[] = "Embedded extension options";
353const char kEmbeddedExtensionOptionsDescription[] =
354 "Display extension options as an embedded element in chrome://extensions "
355 "rather than opening a new tab.";
356
Dominic Mazzoniaa4b97d2019-04-03 22:43:48357const char kEnableAccessibilityImageDescriptionsName[] =
358 "Accessibility Image Descriptions";
359const char kEnableAccessibilityImageDescriptionsDescription[] =
360 "Enables screen reader users to request computer-generated descriptions "
361 "of unlabeled images using the page context menu.";
362
Dominic Mazzoni8ac98962018-05-25 05:44:55363const char kEnableAccessibilityObjectModelName[] = "Accessibility Object Model";
364const char kEnableAccessibilityObjectModelDescription[] =
365 "Enables experimental support for Accessibility Object Model APIs "
366 "that are in development.";
367
Becca Hughesac86cd442019-01-09 23:49:54368const char kEnableAudioFocusEnforcementName[] = "Audio Focus Enforcement";
369const char kEnableAudioFocusEnforcementDescription[] =
370 "Enables enforcement of a single media session having audio focus at "
371 "any one time. Requires #enable-media-session-service to be enabled too.";
372
Sebastien Lalancette5daaf4a2019-01-11 22:09:25373const char kEnableAutocompleteDataRetentionPolicyName[] =
374 "Enable automatic cleanup of expired Autocomplete entries.";
375const char kEnableAutocompleteDataRetentionPolicyDescription[] =
376 "If enabled, will clean-up Autocomplete entries whose last use date is "
377 "older than the current retention policy. These entries will be "
378 "permanently deleted from the client on startup, and will be unlinked "
379 "from sync.";
380
Florian Uunk8c428ea2018-07-18 11:12:52381const char kEnableAutofillAccountWalletStorageName[] =
382 "Enable the account data storage for autofill";
383const char kEnableAutofillAccountWalletStorageDescription[] =
384 "Enable the ephemeral storage for account data for autofill.";
385
Shanfeng Zhang19c16562017-10-17 02:30:40386const char kEnableAutofillCreditCardAblationExperimentDisplayName[] =
387 "Credit card autofill ablation experiment.";
388const char kEnableAutofillCreditCardAblationExperimentDescription[] =
389 "If enabled, credit card autofill suggestions will not display.";
390
Manas Verma7e5b391b2019-04-09 02:08:53391const char kEnableAutofillCreditCardAuthenticationName[] =
392 "Allow using platform authenticators to retrieve server cards";
393const char kEnableAutofillCreditCardAuthenticationDescription[] =
394 "When enabled, users will be given the option to use a platform "
395 "authenticator (if available) to verify card ownership when retrieving "
396 "credit cards from Google Payments.";
397
Brett Wilsonf27ff602017-07-07 22:28:47398const char kEnableAutofillCreditCardLastUsedDateDisplayName[] =
399 "Display the last used date of a credit card in autofill.";
400const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
401 "If enabled, display the last used date of a credit card in autofill.";
402
Sujie Zhu2cf0e5c2018-07-17 18:00:27403const char kEnableAutofillCreditCardLocalCardMigrationName[] =
404 "Enable migrating local cards to Google Pay";
405const char kEnableAutofillCreditCardLocalCardMigrationDescription[] =
406 "If enabled, prompt migration of locally-saved credit cards to Google Pay.";
407
Jared Saulbc672a072018-06-16 05:22:12408const char kEnableAutofillCreditCardUploadEditableCardholderNameName[] =
409 "Make cardholder name editable in dialog during credit card upload";
410const char kEnableAutofillCreditCardUploadEditableCardholderNameDescription[] =
411 "If enabled, in certain situations when offering credit card upload to "
412 "Google Payments, the cardholder name can be edited within the "
413 "offer-to-save dialog, which is prefilled with the name from the signed-in "
414 "Google Account.";
415
Hao Zhang1be9c262018-11-03 00:23:51416const char kEnableAutofillCreditCardUploadEditableExpirationDateName[] =
417 "Make expiration date editable in dialog during credit card upload";
418const char kEnableAutofillCreditCardUploadEditableExpirationDateDescription[] =
419 "If enabled, if a credit card's expiration date was not detected when "
420 "offering card upload to Google Payments, the offer-to-save dialog "
421 "displays an expiration date selector.";
422
Anne Limc1d23212019-03-07 17:46:08423const char kEnableAutofillDoNotUploadSaveUnsupportedCardsName[] =
424 "Prevents upload save on cards from unsupported networks";
425const char kEnableAutofillDoNotUploadSaveUnsupportedCardsDescription[] =
426 "If enabled, cards from unsupported networks will not be offered upload "
427 "save, and will instead be offered local save.";
428
Hao Zhangd3017112019-02-01 20:13:30429const char kEnableAutofillImportNonFocusableCreditCardFormsName[] =
430 "Allow credit card import from forms that disappear after entry";
431const char kEnableAutofillImportNonFocusableCreditCardFormsDescription[] =
432 "If enabled, offers credit card save for forms that are hidden from the "
433 "page after information has been entered into them, including "
434 "accordion-style checkout flows.";
435
Hao Zhang0c4f18d2019-04-05 01:20:25436const char kEnableAutofillImportDynamicFormsName[] =
437 "Allow credit card import from dynamic forms after entry";
438const char kEnableAutofillImportDynamicFormsDescription[] =
439 "If enabled, offers credit card save for dynamic forms from the page after "
440 "information has been entered into them.";
441
siyua9a4a8872018-10-05 03:46:56442const char kEnableAutofillLocalCardMigrationShowFeedbackName[] =
443 "Show the upload results dialog after local card migration";
444const char kEnableAutofillLocalCardMigrationShowFeedbackDescription[] =
445 "If enabled, the local card migration offer dialog will remain pending "
446 "after the user clicks the save button. Once migration is finished, "
447 "the dialog will be updated with the results of each card.";
448
Anne Lim30351782019-03-01 01:57:16449const char kEnableAutofillLocalCardMigrationUsesStrikeSystemV2Name[] =
450 "Enable limit on offering to migrate local cards repeatedly using the "
451 "updated strike system implementation";
452const char kEnableAutofillLocalCardMigrationUsesStrikeSystemV2Description[] =
453 "If enabled, uses the updated strike system implementation to prevent "
454 "offering prompts for local card migration if it has repeatedly been "
455 "ignored, declined, or failed.";
456
tmartinocd414732018-02-12 19:01:01457const char kEnableAutofillNativeDropdownViewsName[] =
458 "Display Autofill Dropdown Using Views";
459const char kEnableAutofillNativeDropdownViewsDescription[] =
460 "If enabled, the Autofill Dropdown will be built natively using Views, "
461 "rather than painted directly to a canvas.";
462
Fabio Tirelo87552e02018-07-06 15:43:21463const char kEnableAutofillSaveCardDialogUnlabeledExpirationDateName[] =
464 "Show unlabeled expiration dates on the save card dialog";
465const char kEnableAutofillSaveCardDialogUnlabeledExpirationDateDescription[] =
466 "If enabled, expiration dates on the save card dialog (both local and "
467 "upstream) are shown without an 'Exp:' label.";
468
siyua172973d2018-11-21 22:23:20469const char kEnableAutofillSaveCardImprovedUserConsentName[] =
470 "Use updated UI for credit card save bubbles";
471const char kEnableAutofillSaveCardImprovedUserConsentDescription[] =
472 "If enabled, adds a [No thanks] button to credit card save bubbles and "
473 "updates their title headers.";
474
Jared Saul8a0c1e92018-10-10 18:22:47475const char kEnableAutofillSaveCreditCardUsesStrikeSystemName[] =
476 "Enable limit on offering to save the same credit card repeatedly";
477const char kEnableAutofillSaveCreditCardUsesStrikeSystemDescription[] =
478 "If enabled, prevents popping up the credit card offer-to-save prompt if "
479 "it has repeatedly been ignored, declined, or failed.";
480
Anne Lim9d8f66a2019-01-07 23:49:21481const char kEnableAutofillSaveCreditCardUsesStrikeSystemV2Name[] =
Anne Lim30351782019-03-01 01:57:16482 "Enable limit on offering to save the same credit card repeatedly using "
483 "the updated strike system implementation";
Anne Lim9d8f66a2019-01-07 23:49:21484const char kEnableAutofillSaveCreditCardUsesStrikeSystemV2Description[] =
Anne Lim30351782019-03-01 01:57:16485 "If enabled, uses the updated strike system implementation to prevent "
486 "popping up the credit card offer-to-save prompt if it has repeatedly been "
Anne Lim9d8f66a2019-01-07 23:49:21487 "ignored, declined, or failed.";
488
Lakshmi Kumar Dabbirua3d0805f2018-05-22 22:04:23489const char kEnableAutofillSendExperimentIdsInPaymentsRPCsName[] =
490 "Send experiment flag IDs in calls to Google Payments";
491const char kEnableAutofillSendExperimentIdsInPaymentsRPCsDescription[] =
492 "If enabled, adds the status of certain experiment variations when making "
493 "calls to Google Payments.";
494
Becca Hughes4d896c42018-05-29 16:58:51495const char kEnableAutoplayIgnoreWebAudioName[] =
496 "Autoplay ignores WebAudio playbacks";
497const char kEnableAutoplayIgnoreWebAudioDescription[] =
498 "If enabled, autoplay restrictions will be ignored for WebAudio.";
499
Becca Hughesc62f6a1d2018-08-16 15:59:47500const char kEnableAutoplayUnifiedSoundSettingsName[] =
501 "Autoplay unified sound settings UI";
502const char kEnableAutoplayUnifiedSoundSettingsDescription[] =
503 "If enabled, shows the new unified autoplay sound settings UI.";
504
Brett Wilsonf27ff602017-07-07 22:28:47505const char kEnableBrotliName[] = "Brotli Content-Encoding.";
506const char kEnableBrotliDescription[] =
507 "Enable Brotli Content-Encoding support.";
508
Robert Ogdenc3703942019-02-06 21:05:49509const char kEnableDataSaverLiteModeRebrandName[] =
510 "Data Saver Lite Mode Rebranding";
511const char kEnableDataSaverLiteModeRebrandDescription[] =
512 "Enable the Data Saver rebranding to Lite Mode.";
513
Tarun Bansal56c92932019-04-01 17:58:36514const char kEnableSaveDataName[] = "Enables save data feature";
515const char kEnableSaveDataDescription[] =
516 "Enables save data feature. May cause user's traffic to be proxied via "
517 "Google's data reduction proxy.";
518
sclittle50e4bb92017-07-08 02:23:03519const char kEnableClientLoFiName[] = "Client-side Lo-Fi previews";
520
521const char kEnableClientLoFiDescription[] =
522 "Enable showing low fidelity images on some pages on slow networks.";
523
Patrick Noland8bc57472018-06-19 21:09:54524const char kEnableCSSFragmentIdentifiersName[] =
525 "Enable CSS Fragment Identifiers";
526const char kEnableCSSFragmentIdentifiersDescription[] =
527 "Enable support for specifying a target element using a css selector in "
528 "the fragment identifier.";
529
Ramin Halavati7dbb0722019-02-15 05:33:49530const char kEnableFilesystemInIncognitoName[] = "Filesystem API in Incognito";
531const char kEnableFilesystemInIncognitoDescription[] =
532 "Enable Filesystem API in incognito mode.";
533
Doug Arnett08b4067b2017-10-12 20:14:44534const char kEnableNoScriptPreviewsName[] = "NoScript previews";
535
536const char kEnableNoScriptPreviewsDescription[] =
537 "Enable disabling JavaScript on some pages on slow networks.";
538
Thanh Le2c279fbc2017-11-21 01:25:40539const char kDataReductionProxyServerAlternative1[] = "Use alt. server config 1";
540const char kDataReductionProxyServerAlternative2[] = "Use alt. server config 2";
541const char kDataReductionProxyServerAlternative3[] = "Use alt. server config 3";
542const char kDataReductionProxyServerAlternative4[] = "Use alt. server config 4";
543const char kDataReductionProxyServerAlternative5[] = "Use alt. server config 5";
544const char kDataReductionProxyServerAlternative6[] = "Use alt. server config 6";
545const char kDataReductionProxyServerAlternative7[] = "Use alt. server config 7";
546const char kDataReductionProxyServerAlternative8[] = "Use alt. server config 8";
547const char kDataReductionProxyServerAlternative9[] = "Use alt. server config 9";
548const char kDataReductionProxyServerAlternative10[] =
549 "Use alt. server config 10";
rajendrantcfa60ba2018-10-30 09:16:54550const char kEnableDataReductionProxyNetworkServiceName[] =
551 "Data reduction proxy with network service";
552const char kEnableDataReductionProxyNetworkServiceDescription[] =
553 "Enable data reduction proxy when network service is enabled";
Brett Wilsonf27ff602017-07-07 22:28:47554const char kEnableDataReductionProxyServerExperimentName[] =
555 "Use an alternative Data Saver back end configuration.";
556const char kEnableDataReductionProxyServerExperimentDescription[] =
557 "Enable a different approach to saving data by configuring the back end "
558 "server";
559
560const char kEnableDataReductionProxySavingsPromoName[] =
561 "Data Saver 1 MB Savings Promo";
562const char kEnableDataReductionProxySavingsPromoDescription[] =
563 "Enable a Data Saver promo for 1 MB of savings. If Data Saver has already "
564 "saved 1 MB of data, then the promo will not be shown. Data Saver must be "
565 "enabled for the promo to be shown.";
566
Matt Giucad4870432017-11-24 01:04:38567const char kEnableDesktopPWAsName[] = "Desktop PWAs";
568const char kEnableDesktopPWAsDescription[] =
569 "Experimental windowing and install banner treatment for Progressive Web "
570 "Apps on desktop platforms. Implies #enable-experimental-app-banners.";
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17571
Giovanni Ortuño Urquidi40c8e792018-02-28 04:18:59572const char kEnableDesktopPWAsLinkCapturingName[] =
573 "Desktop PWAs Link Capturing";
574const char kEnableDesktopPWAsLinkCapturingDescription[] =
575 "Experimentally enable link capturing for Desktop PWAs. Navigations to "
576 "URLs that are in-scope of Desktop PWAs will open in a window. Requires "
577 "#enable-desktop-pwas.";
578
Jay Harris52511a02018-11-02 01:00:28579const char kDesktopPWAsCustomTabUIName[] = "Desktop PWAs Custom Tab UI";
580const char kDesktopPWAsCustomTabUIDescription[] =
581 "Browsing out-of-scope links in a desktop PWA will use the custom tab UI "
582 "for displaying the page title and origin instead of the location bar.";
583
Jay Harrisee7a7bc62018-10-09 01:47:49584const char kDesktopPWAsStayInWindowName[] =
585 "Desktop PWAs out-of-scope links open in the app window";
586const char kDesktopPWAsStayInWindowDescription[] =
Jay Harris52511a02018-11-02 01:00:28587 "Links to sites in a different scope will open inside the PWA window as "
588 "opposed to in the browser.";
Jay Harrisee7a7bc62018-10-09 01:47:49589
Alan Cutter1816c9d2019-02-11 02:20:07590const char kDesktopPWAsOmniboxInstallName[] =
591 "Desktop PWAs installable from the omnibox";
592const char kDesktopPWAsOmniboxInstallDescription[] =
593 "When on a site that passes PWA installation requirements show a button in "
594 "the omnibox for installing it.";
595
Christopher Lame66b7812018-09-26 01:49:24596const char kEnableSystemWebAppsName[] = "System Web Apps";
597const char kEnableSystemWebAppsDescription[] =
598 "Experimental system for using the Desktop PWA framework for running System"
599 "Apps (e.g Settings, Discover).";
600
David Benjamin570460e2018-10-16 06:01:29601const char kEnforceTLS13DowngradeName[] = "TLS 1.3 downgrade hardening";
602const char kEnforceTLS13DowngradeDescription[] =
603 "This option enables the TLS 1.3 downgrade hardening mechanism. This "
604 "hardens TLS 1.3 connections while remaining compatible with TLS 1.0 "
605 "through 1.2 connections. Firewalls and proxies that do not function when "
606 "this is enabled do not implement TLS 1.0 through 1.2 correctly or "
607 "securely. They must be fixed by vendors.";
608
Brett Wilsonf27ff602017-07-07 22:28:47609const char kEnableGenericSensorName[] = "Generic Sensor";
610const char kEnableGenericSensorDescription[] =
Mikhail Pozdnyakov73373a62017-08-24 17:31:25611 "Enables motion sensor classes based on Generic Sensor API, i.e. "
612 "Accelerometer, LinearAccelerationSensor, Gyroscope, "
613 "AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
614
615const char kEnableGenericSensorExtraClassesName[] =
616 "Generic Sensor Extra Classes";
617const char kEnableGenericSensorExtraClassesDescription[] =
618 "Enables an extra set of sensor classes based on Generic Sensor API, which "
619 "expose previously unavailable platform features, i.e. AmbientLightSensor "
620 "and Magnetometer interfaces.";
Brett Wilsonf27ff602017-07-07 22:28:47621
Vikas Soni78daa632019-01-12 01:32:52622const char kEnableGpuServiceLoggingName[] = "Enable gpu service logging";
623const char kEnableGpuServiceLoggingDescription[] =
624 "Enable printing the actual GL driver calls.";
625
Brett Wilsonf27ff602017-07-07 22:28:47626const char kEnableHDRName[] = "HDR mode";
627const char kEnableHDRDescription[] =
628 "Enables HDR support on compatible displays.";
629
David Bokan911bded2018-11-27 23:23:32630const char kEnableImplicitRootScrollerName[] = "Implicit Root Scroller";
631const char kEnableImplicitRootScrollerDescription[] =
632 "Enables implicitly choosing which scroller on a page is the 'root "
633 "scroller'. i.e. The one that gets special features like URL bar movement, "
634 "overscroll glow, rotation anchoring, etc.";
635
Robert Ogden5a63b242018-09-17 21:38:57636const char kEnablePreviewsAndroidOmniboxUIName[] =
637 "Previews Android Omnibox UI";
638const char kEnablePreviewsAndroidOmniboxUIDescription[] =
639 "Enable showing the Previews UI in the Omnibox on Android instead of an "
640 "InfoBar. This has no effect on other platforms.";
641
Robert Ogdence8c9572018-10-08 23:08:48642const char kEnableLitePageServerPreviewsName[] = "Lite Page Server Previews";
643const char kEnableLitePageServerPreviewsDescription[] =
Doug Arnett9c1f87562018-12-14 00:56:39644 "Enable showing Lite Page Previews served from a Previews Server."
645 "This feature will cause Chrome to redirect eligible navigations "
Robert Ogdence8c9572018-10-08 23:08:48646 "to a Google-owned domain that serves a pre-rendered version of the "
Doug Arnett9c1f87562018-12-14 00:56:39647 "original page. Also known as Lite Page Redirect Previews.";
Robert Ogdence8c9572018-10-08 23:08:48648
Ryan Sturm5e4d4422019-02-28 01:32:29649const char kEnableURLLoaderLitePageServerPreviewsName[] =
650 "Lite Page Server Previews using URL Loader";
651const char kEnableURLLoaderLitePageServerPreviewsDescription[] =
652 "Enable using a network service URL Loader for Lite Page Server Previews. "
653 "This requires enable-lite-page-server-previews to be enabled along with "
654 "network-service.";
655
Hiroshige Hayashizaki3ee116af2019-03-05 10:11:22656const char kBuiltInModuleAllName[] = "All experimental built-in modules";
657const char kBuiltInModuleAllDescription[] =
658 "Enable all experimental built-in modules, as well as built-in module "
659 "infrastructure and import maps. The syntax and the APIs exposed are "
660 "experimental and will change over time.";
661
662const char kBuiltInModuleInfraName[] = "Built-in module infra and import maps";
663const char kBuiltInModuleInfraDescription[] =
664 "Enable built-in module infrastructure and import maps. Individual "
665 "built-in modules should be enabled by other flags. The syntax and the "
666 "APIs exposed are experimental and will change over time.";
667
668const char kBuiltInModuleKvStorageName[] = "kv-storage built-in module";
669const char kBuiltInModuleKvStorageDescription[] =
670 "Enable kv-storage built-in module, as well as built-in module "
671 "infrastructure and import maps. The syntax and the APIs exposed are "
672 "experimental and will change over time.";
Hiroshige Hayashizaki99d5821e2018-05-02 04:25:41673
Philip Rogers63481332018-12-01 22:16:51674const char kEnableBlinkGenPropertyTreesName[] = "Enable BlinkGenPropertyTrees";
675const char kEnableBlinkGenPropertyTreesDescription[] =
676 "Enable a new compositing mode where Blink generates the compositor "
677 "property trees.";
678
Ian Kilpatricke68ef11a2018-07-04 03:52:10679const char kEnableLayoutNGName[] = "Enable LayoutNG";
680const char kEnableLayoutNGDescription[] =
681 "Enable Blink's next generation layout engine.";
682
Scott Littled0fd2d002018-04-13 03:37:26683const char kEnableLazyFrameLoadingName[] = "Enable lazy frame loading";
684const char kEnableLazyFrameLoadingDescription[] =
685 "Defers the loading of certain cross-origin frames until the page is "
686 "scrolled down near them.";
687
rajendrant793ff512018-08-10 17:07:59688const char kEnableLazyImageLoadingName[] = "Enable lazy image loading";
689const char kEnableLazyImageLoadingDescription[] =
690 "Defers the loading of images until the page is scrolled down near them.";
691
Sidney San Martín9375b892017-09-09 00:29:54692const char kEnableMacMaterialDesignDownloadShelfName[] =
693 "Enable Material Design download shelf";
694
695const char kEnableMacMaterialDesignDownloadShelfDescription[] =
696 "If enabled, the download shelf uses Material Design.";
697
Becca Hughesac86cd442019-01-09 23:49:54698const char kEnableMediaSessionServiceName[] = "Media Session Service";
699const char kEnableMediaSessionServiceDescription[] =
700 "Enables the media session mojo service and internal media session "
701 "support.";
702
Brett Wilsonf27ff602017-07-07 22:28:47703const char kEnableNavigationTracingName[] = "Enable navigation tracing";
704const char kEnableNavigationTracingDescription[] =
705 "This is to be used in conjunction with the trace-upload-url flag. "
706 "WARNING: When enabled, Chrome will record performance data for every "
707 "navigation and upload it to the URL specified by the trace-upload-url "
708 "flag. The trace may include personally identifiable information (PII) "
709 "such as the titles and URLs of websites you visit.";
710
Bernhard Bauer5533f9912017-11-06 17:56:02711const char kEnableNetworkLoggingToFileName[] = "Enable network logging to file";
712const char kEnableNetworkLoggingToFileDescription[] =
713 "Enables network logging to a file named netlog.json in the user data "
714 "directory. The file can be imported into chrome://net-internals.";
715
Brett Wilsonf27ff602017-07-07 22:28:47716const char kEnableNetworkServiceName[] = "Enable network service";
717const char kEnableNetworkServiceDescription[] =
718 "Enables the network service, which makes network requests through a "
John Abd-El-Malek225b04d2018-09-07 22:41:40719 "separate process.";
Brett Wilsonf27ff602017-07-07 22:28:47720
John Abd-El-Malek8067cc02017-12-04 23:23:20721const char kEnableNetworkServiceInProcessName[] =
722 "Runs network service in-process";
723const char kEnableNetworkServiceInProcessDescription[] =
724 "Runs the network service in the browser process.";
725
Shakti Sahu07b052712019-04-02 00:39:37726const char kDownloadAutoResumptionNativeName[] =
727 "Enable download auto-resumption in native";
728const char kDownloadAutoResumptionNativeDescription[] =
729 "Enables download auto-resumption in native";
730
Shakti Sahu5a046f62019-03-12 19:25:34731const char kEnableNewDownloadBackendName[] = "Enable new download backend";
732const char kEnableNewDownloadBackendDescription[] =
733 "Enables the new download backend that uses offline content provider";
734
Lucas Furukawa Gadani9f57e192019-04-05 14:56:10735const char kEnablePortalsName[] = "Enable Portals.";
736const char kEnablePortalsDescription[] =
737 "Portals are an experimental web platform feature that allows embedding"
738 " and seamless transitions between pages."
739 " See https://github.com/WICG/portals and https://wicg.github.io/portals/";
740
Tetsui Ohkuboc3eb87f72018-07-20 02:22:28741const char kEnableNotificationScrollBarName[] =
742 "Enable notification list scroll bar";
743const char kEnableNotificationScrollBarDescription[] =
744 "Enable the scroll bar of the notification list in Unified System Tray.";
745
Mitsuru Otsukae8304de2018-10-29 02:14:36746const char kEnableNotificationExpansionAnimationName[] =
747 "Enable notification expansion animations";
748const char kEnableNotificationExpansionAnimationDescription[] =
749 "Enable notification animations whenever the expansion state is toggled.";
750
Sophie Chang117a3b22017-10-24 22:25:36751const char kEnableOptimizationHintsName[] = "Optimization Hints";
752const char kEnableOptimizationHintsDescription[] =
Sophie Chang5454ce82018-07-16 17:44:50753 "Enable the Optimization Hints feature which incorporates server hints "
Sophie Chang117a3b22017-10-24 22:25:36754 "into decisions for what optimizations to perform on some pages on slow "
755 "networks.";
756
Takashi Toyoshima2e01e692018-11-16 03:23:27757const char kEnableOutOfBlinkCorsName[] = "Out of blink CORS";
758const char kEnableOutOfBlinkCorsDescription[] =
Yutaka Hirano98be3272017-08-07 17:55:39759 "CORS handling logic is moved out of blink.";
760
Chris Halle952239e2018-11-06 06:49:52761const char kExperimentalAccessibilityFeaturesName[] =
762 "Experimental accessibility features";
763const char kExperimentalAccessibilityFeaturesDescription[] =
764 "Enable additional accessibility features in the Settings page.";
765
Katie D652135c2018-11-27 18:30:13766const char kExperimentalAccessibilityAutoclickName[] =
767 "Experimental automatic click features";
768const char kExperimentalAccessibilityAutoclickDescription[] =
769 "Enable additional features for automatic clicks.";
770
Chris Hall4a4225f62019-01-18 03:07:16771const char kExperimentalAccessibilityLanguageDetectionName[] =
772 "Experimental accessibility language detection";
773const char kExperimentalAccessibilityLanguageDetectionDescription[] =
774 "Enable language detection for in-page content which is then exposed to "
775 "accessiblity technologies such as screen readers.";
776
Anastasia Helfinsteinafecc68c2018-11-26 19:20:17777const char kExperimentalAccessibilitySwitchAccessName[] =
778 "Experimental feature Switch Access";
779const char kExperimentalAccessibilitySwitchAccessDescription[] =
780 "Add a setting to enable the prototype of Switch Access";
781
kylechar7051c092018-02-05 20:31:39782const char kVizDisplayCompositorName[] = "Viz Display Compositor (OOP-D)";
783const char kVizDisplayCompositorDescription[] =
784 "If enabled, the display compositor runs as part of the viz service in the"
785 "GPU process.";
786
Xianda Sunfa2a35922019-04-15 19:01:28787const char kVizHitTestName[] = "Viz Hit-test";
788const char kVizHitTestDescription[] =
Ria Jiang6a129b982018-03-01 18:30:40789 "If enabled, event targeting uses the new viz-assisted hit-testing logic, "
Xianda Sunfa2a35922019-04-15 19:01:28790 "with hit-test data computed from the CompositorFrame or the SurfaceLayer.";
Ria Jiang6a129b982018-03-01 18:30:40791
Rahul Arakeri61a2ad272019-03-19 22:55:08792const char kCompositorThreadedScrollbarScrollingName[] =
793 "Enable compositor threaded scrollbar scrolling";
794const char kCompositorThreadedScrollbarScrollingDescription[] =
795 "Enables pointer-based scrollbar scrolling on the compositor thread "
796 "instead of the main thread";
797
Alexei Filippov522a5222019-03-29 03:33:18798const char kMemlogName[] = "Chrome heap profiler start mode.";
799const char kMemlogDescription[] =
800 "Starts heap profiling service that records sampled memory allocation "
801 "profile having each sample attributed with a callstack. "
802 "The sampling resolution is controlled with --memlog-sampling-rate flag. "
803 "Recorded heap dumps can be obtained at chrome://tracing "
804 "[category:memory-infra] and chrome://memory-internals. This setting "
805 "controls which processes will be profiled since their start. To profile "
806 "any given process at a later time use chrome://memory-internals page.";
807const char kMemlogModeMinimal[] = "Browser and GPU";
808const char kMemlogModeAll[] = "All processes";
809const char kMemlogModeAllRenderers[] = "All renderers";
810const char kMemlogModeRendererSampling[] = "Single renderer";
811const char kMemlogModeBrowser[] = "Browser only";
812const char kMemlogModeGpu[] = "GPU only";
Alexei Filippov2e8bfee2019-03-07 21:51:27813
Alexei Filippov522a5222019-03-29 03:33:18814const char kMemlogSamplingRateName[] =
815 "Heap profiling sampling interval (in bytes).";
816const char kMemlogSamplingRateDescription[] =
817 "Heap profiling service uses Poisson process to sample allocations. "
818 "Default value for the interval between samples is 100000 (100KB). "
819 "This results in low noise for large and/or frequent allocations "
Alexei Filippov2e8bfee2019-03-07 21:51:27820 "[size * frequency >> 100KB]. This means that aggregate numbers [e.g. "
erikchen99bfce02018-02-14 20:29:22821 "total size of malloc-ed objects] and large and/or frequent allocations "
Alexei Filippov522a5222019-03-29 03:33:18822 "can be trusted with high fidelity. "
823 "Lower intervals produce higher samples resolution, but come at a cost of "
824 "higher performance overhead.";
825const char kMemlogSamplingRate10KB[] = "10KB";
826const char kMemlogSamplingRate50KB[] = "50KB";
827const char kMemlogSamplingRate100KB[] = "100KB";
828const char kMemlogSamplingRate500KB[] = "500KB";
829const char kMemlogSamplingRate1MB[] = "1MB";
830const char kMemlogSamplingRate5MB[] = "5MB";
erikchen8bc20d82018-02-14 03:21:51831
Alexei Filippov522a5222019-03-29 03:33:18832const char kMemlogStackModeName[] = "Heap profiling stack traces type.";
833const char kMemlogStackModeDescription[] =
834 "By default heap profiling service records native stacks. "
835 "A post-processing step is required to symbolize the stacks. "
836 "'Native with thread names' adds the thread name as the first frame of "
837 "each native stack. It's also possible to record a pseudo stack using "
838 "trace events as identifiers. It's also possible to do a mix of both.";
839const char kMemlogStackModeMixed[] = "Mixed";
840const char kMemlogStackModeNative[] = "Native";
841const char kMemlogStackModeNativeWithThreadNames[] = "Native with thread names";
842const char kMemlogStackModePseudo[] = "Trace events";
Erik Chen3303fd0232018-01-11 20:29:05843
F#m59d036e2017-09-13 07:22:17844const char kEnablePixelCanvasRecordingName[] = "Enable pixel canvas recording";
845const char kEnablePixelCanvasRecordingDescription[] =
846 "Pixel canvas recording allows the compositor to raster contents aligned "
847 "with the pixel and improves text rendering. This should be enabled when a "
848 "device is using fractional scale factor.";
849
Ella Gebee81c92018-08-14 15:51:09850const char kEnableResamplingInputEventsName[] =
851 "Enable resampling input events";
852const char kEnableResamplingInputEventsDescription[] =
853 "Predicts mouse and touch inputs position at rAF time based on previous "
854 "input";
855const char kEnableResamplingScrollEventsName[] =
856 "Enable resampling scroll events";
857const char kEnableResamplingScrollEventsDescription[] =
858 "Predicts the scroll amount at vsync time based on previous input";
859
Doug Arnettaa0bf202018-08-27 19:42:11860const char kEnableResourceLoadingHintsName[] = "Enable resource loading hints";
861const char kEnableResourceLoadingHintsDescription[] =
862 "Enable using server-provided resource loading hints to provide a preview "
863 "over slow network connections.";
864
Raphael Kubo da Costab72914b2019-03-13 09:20:39865const char kEnableSensorContentSettingName[] = "Sensor content setting";
866const char kEnableSensorContentSettingDescription[] =
867 "Enable UI in content settings to control access to the sensor APIs.";
868
Mikel Astizb4786aa2018-11-09 22:12:09869const char kEnableSyncPseudoUSSAppListName[] =
870 "Enable pseudo-USS for APP_LIST sync.";
871const char kEnableSyncPseudoUSSAppListDescription[] =
872 "Enable new USS-based codepath for sync datatype APP_LIST.";
873
874const char kEnableSyncPseudoUSSAppsName[] = "Enable pseudo-USS for APPS sync.";
875const char kEnableSyncPseudoUSSAppsDescription[] =
876 "Enable new USS-based codepath for sync datatype APPS.";
877
878const char kEnableSyncPseudoUSSDictionaryName[] =
879 "Enable pseudo-USS for DICTIONARY sync.";
880const char kEnableSyncPseudoUSSDictionaryDescription[] =
881 "Enable new USS-based codepath for sync datatype DICTIONARY.";
882
883const char kEnableSyncPseudoUSSExtensionSettingsName[] =
884 "Enable pseudo-USS for EXTENSION_SETTINGS and APP_SETTINGS sync.";
885const char kEnableSyncPseudoUSSExtensionSettingsDescription[] =
886 "Enable new USS-based codepath for sync datatypes EXTENSION_SETTINGS and "
887 "APP_SETTINGS.";
888
889const char kEnableSyncPseudoUSSExtensionsName[] =
890 "Enable pseudo-USS for EXTENSIONS sync.";
891const char kEnableSyncPseudoUSSExtensionsDescription[] =
892 "Enable new USS-based codepath for sync datatype EXTENSIONS.";
893
894const char kEnableSyncPseudoUSSFaviconsName[] =
895 "Enable pseudo-USS for favicon sync.";
896const char kEnableSyncPseudoUSSFaviconsDescription[] =
897 "Enable new USS-based codepath for sync datatypes FAVICON_IMAGES and "
898 "FAVICON_TRACKING.";
899
900const char kEnableSyncPseudoUSSHistoryDeleteDirectivesName[] =
901 "Enable pseudo-USS for HISTORY_DELETE_DIRECTIVES sync.";
902const char kEnableSyncPseudoUSSHistoryDeleteDirectivesDescription[] =
903 "Enable new USS-based codepath for sync datatype "
904 "HISTORY_DELETE_DIRECTIVES.";
905
906const char kEnableSyncPseudoUSSPasswordsName[] =
907 "Enable pseudo-USS for PASSWORDS sync.";
908const char kEnableSyncPseudoUSSPasswordsDescription[] =
909 "Enable new USS-based codepath for sync datatype PASSWORDS (pseudo-USS).";
910
911const char kEnableSyncPseudoUSSPreferencesName[] =
912 "Enable pseudo-USS for PREFERENCES sync.";
913const char kEnableSyncPseudoUSSPreferencesDescription[] =
914 "Enable new USS-based codepath for sync datatype PREFERENCES.";
915
916const char kEnableSyncPseudoUSSPriorityPreferencesName[] =
917 "Enable pseudo-USS for PRIORITY_PREFERENCES sync.";
918const char kEnableSyncPseudoUSSPriorityPreferencesDescription[] =
919 "Enable new USS-based codepath for sync datatype PRIORITY_PREFERENCES.";
920
921const char kEnableSyncPseudoUSSSearchEnginesName[] =
922 "Enable pseudo-USS for SEARCH_ENGINES sync.";
923const char kEnableSyncPseudoUSSSearchEnginesDescription[] =
924 "Enable new USS-based codepath for sync datatype SEARCH_ENGINES.";
925
926const char kEnableSyncPseudoUSSSupervisedUsersName[] =
927 "Enable pseudo-USS for supervised users sync.";
928const char kEnableSyncPseudoUSSSupervisedUsersDescription[] =
929 "Enable new USS-based codepath for sync datatypes SUPERVISED_USER_SETTINGS "
930 "and SUPERVISED_USER_WHITELISTS.";
931
932const char kEnableSyncPseudoUSSThemesName[] =
933 "Enable pseudo-USS for THEMES sync.";
934const char kEnableSyncPseudoUSSThemesDescription[] =
935 "Enable new USS-based codepath for sync datatype THEMES.";
936
Mohamed Amir Yosef0178fa892018-07-23 17:43:52937const char kEnableSyncUSSBookmarksName[] = "Enable USS for bookmarks sync";
938const char kEnableSyncUSSBookmarksDescription[] =
939 "Enables the new, experimental implementation of bookmark sync";
940
Mohamed Amir Yosef3074dfc2019-02-06 18:34:43941const char kEnableSyncUSSPasswordsName[] = "Enable USS for passwords sync";
942const char kEnableSyncUSSPasswordsDescription[] =
943 "Enables the new, experimental implementation of passwords sync";
944
Mikel Astiz38837f82018-04-24 22:23:23945const char kEnableSyncUSSSessionsName[] = "Enable USS for sessions sync";
946const char kEnableSyncUSSSessionsDescription[] =
947 "Enables the new, experimental implementation of session sync (aka tab "
948 "sync).";
949
David Bokane9370c22019-02-14 15:19:58950const char kEnableTextFragmentAnchorName[] = "Enable Text Fragment Anchor.";
951const char kEnableTextFragmentAnchorDescription[] =
952 "Enables scrolling to text specified in URL's fragment.";
953
Brett Wilsonf27ff602017-07-07 22:28:47954const char kEnableUseZoomForDsfName[] =
955 "Use Blink's zoom for device scale factor.";
956const char kEnableUseZoomForDsfDescription[] =
957 "If enabled, Blink uses its zooming mechanism to scale content for device "
958 "scale factor.";
959const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
960const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
961const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
962
Patrick Noland8ee016e2018-01-24 11:44:53963const char kEnableScrollAnchorSerializationName[] =
964 "Scroll Anchor Serialization";
965const char kEnableScrollAnchorSerializationDescription[] =
966 "Save the scroll anchor and use it to restore the scroll position when "
967 "navigating.";
968
Brad Nelson5cd500e2018-01-04 00:50:19969const char kEnableSharedArrayBufferName[] =
970 "Experimental enabled SharedArrayBuffer support in JavaScript.";
971const char kEnableSharedArrayBufferDescription[] =
972 "Enable SharedArrayBuffer support in JavaScript.";
973
Brett Wilsonf27ff602017-07-07 22:28:47974const char kEnableWasmName[] = "WebAssembly structured cloning support.";
975const char kEnableWasmDescription[] =
976 "Enable web pages to use WebAssembly structured cloning.";
977
Lei Zhang0ca70ea2018-09-07 17:51:01978const char kEnableWebAuthenticationCableSupportName[] =
Kim Paulhamus92431372018-07-20 02:25:47979 "Web Authentication caBLE support";
Lei Zhang0ca70ea2018-09-07 17:51:01980const char kEnableWebAuthenticationCableSupportDescription[] =
Kim Paulhamus92431372018-07-20 02:25:47981 "Enable the cloud-assisted pairingless BLE protocol for use with "
982 "the Web Authentication API.";
Kim Paulhamusae635a32018-06-27 07:30:54983
Adam Langley64bc04232019-03-30 21:05:56984const char kEnableWebAuthenticationPINSupportName[] =
985 "Web Authentication PIN support";
986const char kEnableWebAuthenticationPINSupportDescription[] =
987 "Enable the use of PINs with the Web Authentication API and compatible "
988 "security keys.";
989
Ramin Halavatic158b182018-10-18 14:04:54990const char kEnableIncognitoWindowCounterName[] = "Incognito Window Counter";
991const char kEnableIncognitoWindowCounterDescription[] =
992 "Shows the count of Incognito windows next to the Incognito icon on the "
993 "toolbar.";
994
Clemens Hammacher0c8a15a2018-04-27 13:45:32995const char kEnableWasmBaselineName[] = "WebAssembly baseline compiler";
996const char kEnableWasmBaselineDescription[] =
997 "Enables WebAssembly baseline compilation and tier up.";
998
Bill Budged0dace172019-02-10 00:46:21999const char kEnableWasmCodeCacheName[] = "WebAssembly compiled module cache";
1000const char kEnableWasmCodeCacheDescription[] =
1001 "Enables caching of compiled WebAssembly modules.";
1002
Ben Smith24c1e5c2018-06-20 01:09:021003const char kEnableWasmThreadsName[] = "WebAssembly threads support.";
1004const char kEnableWasmThreadsDescription[] =
1005 "Enables support for the WebAssembly Threads proposal. Implies "
1006 "#shared-array-buffer and #enable-webassembly.";
1007
Brett Wilsonf27ff602017-07-07 22:28:471008const char kExpensiveBackgroundTimerThrottlingName[] =
1009 "Throttle expensive background timers";
1010const char kExpensiveBackgroundTimerThrottlingDescription[] =
1011 "Enables intervention to limit CPU usage of background timers to 1%.";
1012
1013const char kExperimentalAppBannersName[] = "Experimental app banners";
1014const char kExperimentalAppBannersDescription[] =
Matt Giucad4870432017-11-24 01:04:381015 "Enables a new experimental app banner flow and UI. Implies "
1016 "#enable-app-banners.";
Brett Wilsonf27ff602017-07-07 22:28:471017
1018const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
1019const char kExperimentalCanvasFeaturesDescription[] =
1020 "Enables the use of experimental canvas features which are still in "
1021 "development.";
1022
1023const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
1024const char kExperimentalExtensionApisDescription[] =
1025 "Enables experimental extension APIs. Note that the extension gallery "
1026 "doesn't allow you to upload extensions that use experimental APIs.";
1027
Ian Clelland37a985d2018-05-04 02:43:131028const char kExperimentalProductivityFeaturesName[] =
1029 "Experimental Productivity Features";
1030const char kExperimentalProductivityFeaturesDescription[] =
1031 "Enable support for experimental developer productivity features, such as "
Hiroshige Hayashizaki3ee116af2019-03-05 10:11:221032 "built-in modules and policies for avoiding slow rendering.";
Ian Clelland37a985d2018-05-04 02:43:131033
Brett Wilsonf27ff602017-07-07 22:28:471034const char kExperimentalSecurityFeaturesName[] =
1035 "Potentially annoying security features";
1036const char kExperimentalSecurityFeaturesDescription[] =
1037 "Enables several security features that will likely break one or more "
1038 "pages that you visit on a daily basis. Strict mixed content checking, for "
1039 "example. And locking powerful features to secure contexts. This flag will "
1040 "probably annoy you.";
1041
1042const char kExperimentalWebPlatformFeaturesName[] =
1043 "Experimental Web Platform features";
1044const char kExperimentalWebPlatformFeaturesDescription[] =
1045 "Enables experimental Web Platform features that are in development.";
1046
1047const char kExtensionContentVerificationName[] =
1048 "Extension Content Verification";
1049const char kExtensionContentVerificationDescription[] =
1050 "This flag can be used to turn on verification that the contents of the "
1051 "files on disk for extensions from the webstore match what they're "
1052 "expected to be. This can be used to turn on this feature if it would not "
1053 "otherwise have been turned on, but cannot be used to turn it off (because "
1054 "this setting can be tampered with by malware).";
1055const char kExtensionContentVerificationBootstrap[] =
1056 "Bootstrap (get expected hashes, but do not enforce them)";
1057const char kExtensionContentVerificationEnforce[] =
1058 "Enforce (try to get hashes, and enforce them if successful)";
1059const char kExtensionContentVerificationEnforceStrict[] =
1060 "Enforce strict (hard fail if we can't get hashes)";
1061
Peter Boströma445353a2019-03-21 02:58:151062const char kExtensionsToolbarMenuName[] = "Extensions Toolbar Menu";
1063const char kExtensionsToolbarMenuDescription[] =
1064 "Enable a separate toolbar button and menu for extensions";
1065
Brett Wilsonf27ff602017-07-07 22:28:471066const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
1067const char kExtensionsOnChromeUrlsDescription[] =
1068 "Enables running extensions on chrome:// URLs, where extensions explicitly "
1069 "request this permission.";
galinapae72e152017-05-12 13:12:281070
Brett Wilsonecb80982017-07-12 20:34:511071const char kFeaturePolicyName[] = "Feature Policy";
1072const char kFeaturePolicyDescription[] =
1073 "Enables granting and removing access to features through the "
1074 "Feature-Policy HTTP header.";
vabr0215a8e2017-03-28 12:47:341075
Brett Wilsonecb80982017-07-12 20:34:511076const char kFontCacheScalingName[] = "FontCache scaling";
1077const char kFontCacheScalingDescription[] =
1078 "Reuse a cached font in the renderer to serve different sizes of font for "
1079 "faster layout.";
1080
1081const char kForceEffectiveConnectionTypeName[] =
1082 "Override effective connection type";
1083const char kForceEffectiveConnectionTypeDescription[] =
1084 "Overrides the effective connection type of the current connection "
Thanh Lea98f12f2017-12-18 19:35:301085 "returned by the network quality estimator. Slow 2G on Cellular returns "
1086 "Slow 2G when connected to a cellular network, and the actual estimate "
1087 "effective connection type when not on a cellular network. Previews are "
1088 "usually served on 2G networks.";
Brett Wilsonecb80982017-07-12 20:34:511089const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
1090const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
1091const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
Thanh Lea98f12f2017-12-18 19:35:301092const char kEffectiveConnectionTypeSlow2GOnCellularDescription[] =
1093 "Slow 2G On Cellular";
Brett Wilsonecb80982017-07-12 20:34:511094const char kEffectiveConnectionType2GDescription[] = "2G";
1095const char kEffectiveConnectionType3GDescription[] = "3G";
1096const char kEffectiveConnectionType4GDescription[] = "4G";
1097
1098const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
1099const char kFillOnAccountSelectDescription[] =
1100 "Filling of passwords when an account is explicitly selected by the user "
1101 "rather than autofilling credentials on page load.";
1102
jdoerrie11c5f4f2019-02-04 18:29:181103const char kFillOnAccountSelectHttpName[] =
1104 "Fill passwords on account selection on HTTP origins";
1105const char kFillOnAccountSelectHttpDescription[] =
1106 "Filling of passwords when an account is explicitly selected by the user "
1107 "rather than autofilling credentials on page load on HTTP origins.";
1108
Brett Wilsonecb80982017-07-12 20:34:511109const char kForceTextDirectionName[] = "Force text direction";
1110const char kForceTextDirectionDescription[] =
1111 "Explicitly force the per-character directionality of UI text to "
1112 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
1113 "direction of the character language.";
1114const char kForceDirectionLtr[] = "Left-to-right";
1115const char kForceDirectionRtl[] = "Right-to-left";
1116
1117const char kForceUiDirectionName[] = "Force UI direction";
1118const char kForceUiDirectionDescription[] =
1119 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
1120 "mode, overriding the default direction of the UI language.";
1121
Brett Wilsonecb80982017-07-12 20:34:511122const char kGpuRasterizationName[] = "GPU rasterization";
1123const char kGpuRasterizationDescription[] =
1124 "Use GPU to rasterize web content. Requires impl-side painting.";
Brett Wilson7b44537e2017-08-18 01:38:281125const char kForceGpuRasterization[] = "Force-enabled for all layers";
Brett Wilsonecb80982017-07-12 20:34:511126
Ioana Pandele1ed7ef72018-11-21 15:22:031127const char kGooglePasswordManagerName[] = "Google Password Manager UI";
1128const char kGooglePasswordManagerDescription[] =
1129 "Enables access to the Google Password Manager UI from Chrome.";
1130
Brett Wilsonecb80982017-07-12 20:34:511131const char kGoogleProfileInfoName[] = "Google profile name and icon";
1132const char kGoogleProfileInfoDescription[] =
1133 "Enables using Google information to populate the profile name and icon in "
1134 "the avatar menu.";
1135
Takumi Fujimotofb71e332018-03-31 14:04:081136const char kViewsCastDialogName[] = "Views Cast dialog";
1137const char kViewsCastDialogDescription[] =
manukaddd3c42019-04-09 21:20:591138 "Replace the WebUI Cast dialog with a Views toolkit dialog.";
Takumi Fujimotofb71e332018-03-31 14:04:081139
Gabrielle Paladoaebf7ca2019-01-16 07:07:061140const char kHandwritingGestureName[] = "Handwriting Gestures";
1141const char kHandwritingGestureDescription[] =
1142 "Enables handwriting gestures within the virtual keyboard";
1143
Tommy Steimel1aadd7b2019-01-18 19:39:421144const char kHardwareMediaKeyHandling[] = "Hardware Media Key Handling";
1145const char kHardwareMediaKeyHandlingDescription[] =
1146 "Enables using media keys to control the active media session. This "
1147 "requires MediaSessionService to be enabled too";
1148
Manu Cornet4a908de2018-04-09 04:32:271149const char kHideActiveAppsFromShelfName[] =
1150 "Hide running apps (that are not pinned) from the shelf";
1151const char kHideActiveAppsFromShelfDescription[] =
1152 "Save space in the shelf by hiding running apps (that are not pinned).";
Manu Cornete5f855b2018-03-13 03:35:251153
Brett Wilsonecb80982017-07-12 20:34:511154const char kHistoryRequiresUserGestureName[] =
1155 "New history entries require a user gesture.";
1156const char kHistoryRequiresUserGestureDescription[] =
1157 "Require a user gesture to add a history entry.";
Brett Wilsonecb80982017-07-12 20:34:511158
Ryan Landay4242dbc22018-04-04 01:47:331159const char kHorizontalTabSwitcherAndroidName[] =
1160 "Enable horizontal tab switcher";
1161const char kHorizontalTabSwitcherAndroidDescription[] =
1162 "Changes the layout of the Android tab switcher so tabs scroll "
1163 "horizontally instead of vertically.";
1164
Matt Simmons2048b2a2018-12-20 20:12:561165const char kTabSwitcherOnReturnName[] = "Enable tab switcher on return";
1166const char kTabSwitcherOnReturnDescription[] =
1167 "Enable tab switcher on return after specified time has elapsed";
1168
Brett Wilsonecb80982017-07-12 20:34:511169const char kHostedAppQuitNotificationName[] =
1170 "Quit notification for hosted apps";
1171const char kHostedAppQuitNotificationDescription[] =
1172 "Display a notification when quitting Chrome if hosted apps are currently "
1173 "running.";
1174
1175const char kHostedAppShimCreationName[] =
1176 "Creation of app shims for hosted apps on Mac";
1177const char kHostedAppShimCreationDescription[] =
1178 "Create app shims on Mac when creating a hosted app.";
1179
1180const char kIconNtpName[] = "Large icons on the New Tab page";
1181const char kIconNtpDescription[] =
1182 "Enable the experimental New Tab page using large icons.";
1183
1184const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
1185const char kIgnoreGpuBlacklistDescription[] =
1186 "Overrides the built-in software rendering list and enables "
1187 "GPU-acceleration on unsupported system configurations.";
1188
Ryan Sturm8c3dbc92018-06-26 19:22:371189const char kIgnorePreviewsBlacklistName[] = "Ignore Previews Blocklist";
Thanh Le5f090efa52017-12-27 22:39:441190const char kIgnorePreviewsBlacklistDescription[] =
Ryan Sturm8c3dbc92018-06-26 19:22:371191 "Ignore decisions made by the PreviewsBlockList";
Thanh Le5f090efa52017-12-27 22:39:441192
Alexandre Frechetted3e1b542018-12-13 14:40:501193const char kImprovedGeoLanguageDataName[] = "Improved Geo-language Data";
1194const char kImprovedGeoLanguageDataDescription[] =
1195 "Makes the GeoLanguageModel use higher quality, more refined ULP "
1196 "geo-language data.";
1197
Brett Wilsonecb80982017-07-12 20:34:511198const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
1199const char kInProductHelpDemoModeChoiceDescription[] =
1200 "Selects the In-Product Help demo mode.";
1201
1202const char kJavascriptHarmonyName[] = "Experimental JavaScript";
1203const char kJavascriptHarmonyDescription[] =
1204 "Enable web pages to use experimental JavaScript features.";
1205
1206const char kJavascriptHarmonyShippingName[] =
1207 "Latest stable JavaScript features";
1208const char kJavascriptHarmonyShippingDescription[] =
1209 "Some web pages use legacy or non-standard JavaScript extensions that may "
1210 "conflict with the latest JavaScript features. This flag allows disabling "
1211 "support of those features for compatibility with such pages.";
1212
Yutaka Hiranof7f2f632017-09-06 10:40:081213const char kKeepAliveRendererForKeepaliveRequestsName[] =
1214 "Keep a renderer alive for keepalive fetch requests";
1215const char kKeepAliveRendererForKeepaliveRequestsDescription[] =
1216 "Keep a render process alive when the process has a pending fetch request "
1217 "with `keepalive' specified.";
1218
Brett Wilsonecb80982017-07-12 20:34:511219const char kLcdTextName[] = "LCD text antialiasing";
1220const char kLcdTextDescription[] =
1221 "If disabled, text is rendered with grayscale antialiasing instead of LCD "
1222 "(subpixel) when doing accelerated compositing.";
1223
1224const char kLoadMediaRouterComponentExtensionName[] =
1225 "Load Media Router Component Extension";
1226const char kLoadMediaRouterComponentExtensionDescription[] =
1227 "Loads the Media Router component extension at startup.";
1228
Hazem Ashmawyf1cd7e42019-03-25 18:17:321229const char kLogJsConsoleMessagesName[] =
1230 "Log JS console messages in system logs";
1231const char kLogJsConsoleMessagesDescription[] =
1232 "Enable logging JS console messages in system logs, please note that they "
1233 "may contain PII.";
1234
Mustafa Emre Acer137dc8b2018-08-29 20:38:131235const char kLookalikeUrlNavigationSuggestionsName[] =
1236 "Navigation suggestions for lookalike URLs";
1237const char kLookalikeUrlNavigationSuggestionsDescription[] =
1238 "Enable navigation suggestions for URLs that are visually similar to "
1239 "popular domains or to domains with a site engagement score.";
1240
Brett Wilsonecb80982017-07-12 20:34:511241const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
1242const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
Brett Wilsonecb80982017-07-12 20:34:511243
spqchanb87755692018-04-05 00:46:091244const char kMediaRouterCastAllowAllIPsName[] =
1245 "Connect to Cast devices on all IP addresses";
1246const char kMediaRouterCastAllowAllIPsDescription[] =
1247 "Have the Media Router connect to Cast devices on all IP addresses, not "
Nick Harperd30507ca2018-08-16 20:24:311248 "just RFC1918/RFC4193 private addresses.";
spqchanb87755692018-04-05 00:46:091249
Brett Wilsonecb80982017-07-12 20:34:511250const char kMessageCenterNewStyleNotificationName[] = "New style notification";
1251const char kMessageCenterNewStyleNotificationDescription[] =
1252 "Enables the experiment style of material-design notification";
1253
Ehsan Karamadebb0f672019-03-22 19:48:391254const char kMimeHandlerViewInCrossProcessFrameName[] =
1255 "MimeHandlerView in cross-process frame";
1256const char kMimeHandlerViewInCrossProcessFrameDescription[] =
1257 "Loads the MimeHandlerView (the extension viewer for certain MIME types "
1258 "such as PDF) in a cross-process frame as opposed to a BrowserPlugin.";
1259
David Roger2183afb2019-02-21 14:19:151260const char kMobileIdentityConsistencyName[] = "Mobile identity consistency";
1261const char kMobileIdentityConsistencyDescription[] =
1262 "Enables stronger identity consistency on mobile";
1263
Marijn Kruisselbrinkca4bb5e2019-04-22 18:19:421264const char kNativeFileSystemAPIName[] = "Native File System API";
1265const char kNativeFileSystemAPIDescription[] =
1266 "Enables the experimental Native File System API, giving websites access "
1267 "to the native file system";
Marijn Kruisselbrinkfa0e1052019-03-05 22:32:551268
Brett Wilsonecb80982017-07-12 20:34:511269const char kNewAudioRenderingMixingStrategyName[] =
1270 "New audio rendering mixing strategy";
1271const char kNewAudioRenderingMixingStrategyDescription[] =
1272 "Use the new audio rendering mixing strategy.";
1273
1274const char kNewBookmarkAppsName[] = "The new bookmark app system";
1275const char kNewBookmarkAppsDescription[] =
1276 "Enables the new system for creating bookmark apps.";
1277
Vadym Doroshenkocd4ff782018-07-24 13:41:021278const char kNewPasswordFormParsingName[] =
1279 "New password form parsing for filling passwords";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241280const char kNewPasswordFormParsingDescription[] =
Vadym Doroshenkocd4ff782018-07-24 13:41:021281 "Replaces existing form parsing for filling in password manager with a new "
1282 "version, currently under development. WARNING: when enabled, Password "
1283 "Manager might stop working";
1284
1285const char kNewPasswordFormParsingForSavingName[] =
1286 "New password form parsing for saving passwords";
1287const char kNewPasswordFormParsingForSavingDescription[] =
1288 "Replaces existing form parsing for saving in password manager with a new "
1289 "version, currently under development. WARNING: when enabled, Password "
1290 "Manager might stop working";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241291
rbpotter62fe2c92019-03-26 22:01:291292const char kNewPrintPreviewLayoutName[] = "Enable New Print Preview UI Layout";
1293const char kNewPrintPreviewLayoutDescription[] =
1294 "If enabled, Print Preview will display a new UI layout.";
1295
CJ DiMeglio7b4a199f2017-11-30 01:26:501296const char kUseSurfaceLayerForVideoName[] =
1297 "Enable the use of SurfaceLayer objects for videos.";
1298const char kUseSurfaceLayerForVideoDescription[] =
1299 "Enable compositing onto a Surface instead of a VideoLayer "
1300 "for videos.";
Brett Wilsonecb80982017-07-12 20:34:511301
1302const char kNewUsbBackendName[] = "Enable new USB backend";
1303const char kNewUsbBackendDescription[] =
1304 "Enables the new experimental USB backend for Windows.";
vabr0215a8e2017-03-28 12:47:341305
Sonny Sasaka2d200432018-03-22 17:43:161306const char kNewblueName[] = "Newblue";
1307const char kNewblueDescription[] =
1308 "Enables the use of newblue Bluetooth daemon.";
1309
Peter Boström7df25c72018-12-12 06:40:191310const char kNewTabLoadingAnimation[] = "New tab-loading animation";
1311const char kNewTabLoadingAnimationDescription[] =
1312 "Enables a new look for the tab-loading animation.";
1313
Egor Pasko6fed3822018-05-30 10:33:141314const char kNostatePrefetchName[] = "NoState Prefetch";
vabr0215a8e2017-03-28 12:47:341315const char kNostatePrefetchDescription[] =
Elly Fong-Jonesf4c15772019-01-31 17:40:061316 "If enabled, pre-downloads resources to improve page load speed.";
vabr0215a8e2017-03-28 12:47:341317
Alex Newcomerd7b0cc42018-05-25 22:58:481318const char kNotificationIndicatorName[] = "Notification Indicators";
1319const char kNotificationIndicatorDescription[] =
1320 "Enable notification indicators, which appear on app icons when a "
1321 "notification is active. This will also enable notifications in context "
1322 "menus.";
1323
Brett Wilsonecb80982017-07-12 20:34:511324const char kNotificationsNativeFlagName[] = "Enable native notifications.";
1325const char kNotificationsNativeFlagDescription[] =
1326 "Enable support for using the native notification toasts and notification "
1327 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:341328
Valeriya Sinevich972ac122018-09-05 07:33:191329const char kUseMultiloginEndpointName[] = "Use Multilogin endpoint.";
1330const char kUseMultiloginEndpointDescription[] =
1331 "Use Gaia OAuth multilogin for identity consistency.";
1332
Zentaro Kavanaghbad511c2017-10-18 22:29:001333#if defined(OS_POSIX)
1334const char kNtlmV2EnabledName[] = "Enable NTLMv2 Authentication";
1335const char kNtlmV2EnabledDescription[] =
1336 "Enable NTLMv2 HTTP Authentication. This disables NTLMv1 support.";
1337#endif
1338
Brett Wilsonecb80982017-07-12 20:34:511339const char kOfferStoreUnmaskedWalletCardsName[] =
1340 "Google Payments card saving checkbox";
1341const char kOfferStoreUnmaskedWalletCardsDescription[] =
1342 "Show the checkbox to offer local saving of a credit card downloaded from "
1343 "the server.";
1344
1345const char kOfflineAutoReloadName[] = "Offline Auto-Reload Mode";
1346const char kOfflineAutoReloadDescription[] =
1347 "Pages that fail to load while the browser is offline will be "
1348 "auto-reloaded when the browser is online again.";
1349
1350const char kOfflineAutoReloadVisibleOnlyName[] =
1351 "Only Auto-Reload Visible Tabs";
1352const char kOfflineAutoReloadVisibleOnlyDescription[] =
1353 "Pages that fail to load while the browser is offline will only be "
1354 "auto-reloaded if their tab is visible.";
1355
Tommy C. Lia6912d7d2019-04-24 21:27:461356const char kOmniboxAlternateMatchDescriptionSeparatorName[] =
1357 "Omnibox Alternate Match Description Separator";
1358const char kOmniboxAlternateMatchDescriptionSeparatorDescription[] =
1359 "Shows an alternate separator before the description of omnibox matches. "
1360 "In English, this changes the separator from '-' to '|'.";
1361
Brett Wilsonecb80982017-07-12 20:34:511362const char kOmniboxDisplayTitleForCurrentUrlName[] =
1363 "Include title for the current URL in the omnibox";
1364const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
1365 "In the event that the omnibox provides suggestions on-focus, the URL of "
1366 "the current page is provided as the first suggestion without a title. "
1367 "Enabling this flag causes the title to be displayed.";
1368
manukaddd3c42019-04-09 21:20:591369const char kOmniboxLocalEntitySuggestionsName[] =
1370 "Omnibox Local Entity Suggestions";
1371const char kOmniboxLocalEntitySuggestionsDescription[] =
1372 "Enables location specific suggestions displayed with images and enhanced "
1373 "layout, similar to #omnibox-rich-entity-suggestions. Enabling this feature"
1374 "will also enable #omnibox-rich-entity-suggestions.";
1375
manuk2e55a7b2019-02-12 20:08:231376const char kOmniboxMaterialDesignWeatherIconsName[] =
1377 "Omnibox Material Design Weather Icons";
1378const char kOmniboxMaterialDesignWeatherIconsDescription[] =
1379 "Use material design weather icons in the omnibox when displaying weather "
1380 "answers.";
1381
Tomasz Wiszkowskic87dff12019-01-15 02:57:511382const char kOmniboxNewAnswerLayoutName[] = "Omnibox new answer layout";
1383const char kOmniboxNewAnswerLayoutDescription[] =
1384 "Modernize omnibox answers using an enhanced layout with larger icons.";
1385
Tomasz Wiszkowskic7fd5bed2019-02-11 17:33:231386const char kOmniboxRichEntitySuggestionsName[] =
1387 "Omnibox rich entity suggestions";
1388const char kOmniboxRichEntitySuggestionsDescription[] =
1389 "Display entity suggestions using images and an enhanced layout; showing "
manukaddd3c42019-04-09 21:20:591390 "more context and descriptive text about the entity.";
Tomasz Wiszkowskic7fd5bed2019-02-11 17:33:231391
Benoit Lizeab08362c2017-07-19 14:50:541392const char kOmniboxSpareRendererName[] =
1393 "Start spare renderer on omnibox focus";
1394const char kOmniboxSpareRendererDescription[] =
1395 "When the omnibox is focused, start an empty spare renderer. This can "
1396 "speed up the load of the navigation from the omnibox.";
1397
manuk3c0e70a2019-02-21 16:30:551398const char kOmniboxUIBlueSearchLoopAndSearchQueryName[] =
1399 "Omnibox UI Blue Search Loop and Search Query";
1400const char kOmniboxUIBlueSearchLoopAndSearchQueryDescription[] =
1401 "Color the generic search icon and search terms blue.";
1402
manuk4451d032019-02-22 17:24:401403const char kOmniboxUIBlueTitlesAndGrayUrlsOnPageSuggestionsName[] =
1404 "Omnibox UI Blue Titles And Gray Urls On Page Suggestions";
1405const char kOmniboxUIBlueTitlesAndGrayUrlsOnPageSuggestionsDescription[] =
1406 "Displays navigation suggestions with blue titles and gray URLs.";
1407
1408const char kOmniboxUIBlueTitlesOnPageSuggestionsName[] =
1409 "Omnibox UI Blue Titles On Page Suggestions";
1410const char kOmniboxUIBlueTitlesOnPageSuggestionsDescription[] =
1411 "Displays navigation suggestions with blue titles.";
1412
manuk59fd5a62019-02-27 21:14:091413const char kOmniboxUIBoldUserTextOnSearchSuggestionsName[] =
1414 "Omnibox UI Bold User Text On Search Suggestions";
1415const char kOmniboxUIBoldUserTextOnSearchSuggestionsDescription[] =
1416 "Bolds the user text instead of autocomplete text for search suggestions.";
1417
Tommy C. Lib5bf6152019-04-23 22:13:161418const char kOmniboxUICuesForSearchHistoryMatchesName[] =
1419 "Omnibox UI Cues to Differentiate Search History Matches";
1420const char kOmniboxUICuesForSearchHistoryMatchesDescription[] =
1421 "Shows UI cues in the omnibox to differentiate Search History matches from "
1422 "other search suggestions provided by the default search provider. This "
1423 "feature is a narrow subset of Omnibox Suggestion Transparency Options.";
1424
Tommy C. Lie4194b732018-09-28 22:21:511425const char kOmniboxUIHideSteadyStateUrlSchemeName[] =
1426 "Omnibox UI Hide Steady-State URL Scheme";
1427const char kOmniboxUIHideSteadyStateUrlSchemeDescription[] =
1428 "In the omnibox, hide the scheme from steady state displayed URLs. It is "
Tommy C. Libef94ee02018-10-17 19:56:361429 "restored during editing.";
Tommy C. Lie4194b732018-09-28 22:21:511430
Tommy C. Lib20aec72018-11-19 21:38:231431const char kOmniboxUIOneClickUnelideName[] = "Omnibox UI One Click Unelide";
1432const char kOmniboxUIOneClickUnelideDescription[] =
1433 "In the omnibox, undo all unelisions with a single click or focus action.";
1434
Tommy C. Lie4194b732018-09-28 22:21:511435const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsName[] =
1436 "Omnibox UI Hide Steady-State URL Trivial Subdomains";
1437const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsDescription[] =
1438 "In the omnibox, hide trivial subdomains from steady state displayed URLs. "
Tommy C. Libef94ee02018-10-17 19:56:361439 "Hidden portions are restored during editing.";
1440
1441const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefName[] =
1442 "Omnibox UI Hide Steady-State URL Path, Query, and Ref";
1443const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefDescription[] =
1444 "In the omnibox, hide the path, query and ref from steady state displayed "
1445 "URLs. Hidden portions are restored during editing.";
Tommy C. Lid79d4402017-12-22 22:49:121446
Brett Wilsonecb80982017-07-12 20:34:511447const char kOmniboxUIMaxAutocompleteMatchesName[] =
1448 "Omnibox UI Max Autocomplete Matches";
1449
1450const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
1451 "Changes the maximum number of autocomplete matches displayed in the "
1452 "Omnibox UI.";
1453
manuk4f56e9fc2019-02-19 18:04:511454const char kOmniboxUIShowSuffixOnAllSearchSuggestionsName[] =
1455 "Omnibox UI Show Suffix On All Search Suggestions";
1456const char kOmniboxUIShowSuffixOnAllSearchSuggestionsDescription[] =
1457 "Shows the search suffix (e.g. \" - Google Search\") on all search "
1458 "suggestions in the omnibox.";
1459
Tommy C. Liba4e66ef2019-02-12 21:33:281460const char kOmniboxUIShowSuggestionFaviconsName[] =
1461 "Omnibox UI Show Suggestion Favicons";
1462const char kOmniboxUIShowSuggestionFaviconsDescription[] =
1463 "Shows favicons instead of generic vector icons for URL suggestions in the "
1464 "Omnibox dropdown.";
1465
Justin Donnelly65c9e8b2017-10-01 05:15:011466const char kOmniboxUISwapTitleAndUrlName[] = "Omnibox UI Swap Title and URL";
1467const char kOmniboxUISwapTitleAndUrlDescription[] =
1468 "In the omnibox dropdown, shows titles before URLs when both are "
1469 "available.";
1470
manuk0187cfa2019-02-27 21:23:241471const char kOmniboxUIUnboldSuggestionTextName[] =
1472 "Omnibox UI Unbold Suggestion Text";
1473const char kOmniboxUIUnboldSuggestionTextDescription[] =
1474 "Displays search suggestions without bolding.";
1475
manuk12527c802019-02-19 16:38:301476const char kOmniboxUIUseGenericSearchEngineIconName[] =
1477 "Omnibox UI Use Generic Search Engine Icon";
1478const char kOmniboxUIUseGenericSearchEngineIconDescription[] =
1479 "In the omnibox and NTP, shows a generic magnifying glass icon instead of "
1480 "the Search Provider favicon.";
1481
Tommy C. Lia737d3e82019-02-13 23:06:141482const char kOmniboxUIVerticalMarginName[] = "Omnibox UI Vertical Margin";
1483const char kOmniboxUIVerticalMarginDescription[] =
1484 "Changes the vertical margin in the Omnibox UI.";
1485
manukce2cdcf72019-02-26 15:59:291486const char kOmniboxUIWhiteBackgroundOnBlurName[] =
1487 "Omnibox UI White Background On Blur";
1488const char kOmniboxUIWhiteBackgroundOnBlurDescription[] =
manuk59fd5a62019-02-27 21:14:091489 "Set the omnibox background white when it's unfocused";
manukce2cdcf72019-02-26 15:59:291490
Tomasz Wiszkowski947f6d0d2019-03-15 22:27:251491const char kOmniboxZeroSuggestionsOnNTPName[] =
1492 "Omnibox Zero Suggestions on New Tab Page";
1493const char kOmniboxZeroSuggestionsOnNTPDescription[] =
1494 "Offer suggestions when URL bar (omnibox) is focused.";
1495
Vadym Doroshenko6b8f64d2018-11-26 15:35:391496const char kOnlyNewPasswordFormParsingName[] =
1497 "Use only new password form parsing";
1498const char kOnlyNewPasswordFormParsingDescription[] =
1499 "The old password form parsing is disabled";
1500
Mark Lieufaa1b762019-01-08 19:37:281501const char kOnTheFlyMhtmlHashComputationName[] =
1502 "On-The-Fly MHTML Hash Computation";
1503const char kOnTheFlyMhtmlHashComputationDescription[] =
1504 "Save MHTML files to the target location and calculate their content "
1505 "digests in one step.";
1506
Adrienne Walkerc87477e2018-06-06 22:28:211507const char kOopRasterizationName[] = "Out of process rasterization";
1508const char kOopRasterizationDescription[] =
1509 "Perform Ganesh raster in the GPU Process instead of the renderer. "
1510 "Must also enable GPU rasterization";
1511
Brett Wilsonecb80982017-07-12 20:34:511512const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
1513const char kOverlayScrollbarsDescription[] =
1514 "Enable the experimental overlay scrollbars implementation. You must also "
1515 "enable threaded compositing to have the scrollbars animate.";
1516
chaopenge8aa016b2017-08-24 15:20:191517const char kOverlayScrollbarsFlashAfterAnyScrollUpdateName[] =
1518 "Flash Overlay Scrollbars After Any Scroll Update";
1519const char kOverlayScrollbarsFlashAfterAnyScrollUpdateDescription[] =
1520 "Flash Overlay Scrollbars After any scroll update happends in page. You"
1521 " must also enable Overlay Scrollbars.";
1522
chaopeng343678022017-08-24 18:45:001523const char kOverlayScrollbarsFlashWhenMouseEnterName[] =
1524 "Flash Overlay Scrollbars When Mouse Enter";
1525const char kOverlayScrollbarsFlashWhenMouseEnterDescription[] =
1526 "Flash Overlay Scrollbars When Mouse Enter a scrollable area. You must also"
1527 " enable Overlay Scrollbars.";
1528
Daniele Castagna74ddb9c2018-06-21 22:59:021529const char kOverlayStrategiesName[] = "Select HW overlay strategies";
1530const char kOverlayStrategiesDescription[] =
1531 "Select strategies used to promote quads to HW overlays.";
1532const char kOverlayStrategiesDefault[] = "Default";
1533const char kOverlayStrategiesNone[] = "None";
1534const char kOverlayStrategiesUnoccludedFullscreen[] =
1535 "Unoccluded fullscreen buffers (single-fullscreen)";
1536const char kOverlayStrategiesUnoccluded[] =
1537 "Unoccluded buffers (single-fullscreen,single-on-top)";
1538const char kOverlayStrategiesOccludedAndUnoccluded[] =
1539 "Occluded and unoccluded buffers "
1540 "(single-fullscreen,single-on-top,underlay)";
1541
Claudio Magni81326f92017-09-01 05:21:181542const char kUseNewAcceptLanguageHeaderName[] = "Use new Accept-Language header";
1543const char kUseNewAcceptLanguageHeaderDescription[] =
1544 "Adds the base language code after other corresponding language+region "
1545 "codes. This ensures that users receive content in their preferred "
1546 "language.";
1547
Brett Wilsonecb80982017-07-12 20:34:511548const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
1549const char kOverscrollHistoryNavigationDescription[] =
Mohsen Izadi88b392a2018-02-15 06:57:481550 "History navigation in response to horizontal overscroll.";
Brett Wilsonecb80982017-07-12 20:34:511551
1552const char kOverscrollStartThresholdName[] = "Overscroll start threshold";
1553const char kOverscrollStartThresholdDescription[] =
1554 "Changes overscroll start threshold relative to the default value.";
1555const char kOverscrollStartThreshold133Percent[] = "133%";
1556const char kOverscrollStartThreshold166Percent[] = "166%";
1557const char kOverscrollStartThreshold200Percent[] = "200%";
1558
chaopenge2b6e5f2018-05-08 16:40:451559const char kTouchpadOverscrollHistoryNavigationName[] =
1560 "Overscroll history navigation on Touchpad";
1561const char kTouchpadOverscrollHistoryNavigationDescription[] =
1562 "Allows swipe left/right from touchpad change browser navigation.";
1563
Xing Liu5400a002017-09-15 21:48:291564const char kParallelDownloadingName[] = "Parallel downloading";
1565const char kParallelDownloadingDescription[] =
Yannic Bonenbergera32f9902017-11-20 18:47:061566 "Enable parallel downloading to accelerate download speed.";
Xing Liu5400a002017-09-15 21:48:291567
Brett Wilsonecb80982017-07-12 20:34:511568const char kPassiveEventListenerDefaultName[] =
1569 "Passive Event Listener Override";
1570const char kPassiveEventListenerDefaultDescription[] =
1571 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
1572 "haven't requested otherwise) to be treated as passive. This will break "
1573 "touch/wheel behavior on some websites but is useful for demonstrating the "
1574 "potential performance benefits of adopting passive event listeners.";
1575const char kPassiveEventListenerTrue[] = "True (when unspecified)";
1576const char kPassiveEventListenerForceAllTrue[] = "Force All True";
1577
1578const char kPassiveEventListenersDueToFlingName[] =
1579 "Touch Event Listeners Passive Default During Fling";
1580const char kPassiveEventListenersDueToFlingDescription[] =
1581 "Forces touchstart, and first touchmove per scroll event listeners during "
1582 "fling to be treated as passive.";
1583
1584const char kPassiveDocumentEventListenersName[] =
1585 "Document Level Event Listeners Passive Default";
1586const char kPassiveDocumentEventListenersDescription[] =
1587 "Forces touchstart, and touchmove event listeners on document level "
1588 "targets (which haven't requested otherwise) to be treated as passive.";
1589
Sahel Sharify7400e882018-08-13 17:13:211590const char kPassiveDocumentWheelEventListenersName[] =
1591 "Document Level Wheel Event Listeners Passive Default";
1592const char kPassiveDocumentWheelEventListenersDescription[] =
1593 "Forces wheel, and mousewheel event listeners on document level targets "
1594 "(which haven't requested otherwise) to be treated as passive.";
1595
Vaclav Brozekd8a3f542017-11-16 14:21:131596const char kPasswordImportName[] = "Password import";
1597const char kPasswordImportDescription[] =
1598 "Import functionality in password settings.";
Brett Wilsonecb80982017-07-12 20:34:511599
Friedrich Horschige6c27742018-04-23 17:13:411600const char kPasswordsKeyboardAccessoryName[] =
1601 "Add password-related functions to keyboard accessory";
1602const char kPasswordsKeyboardAccessoryDescription[] =
1603 "Adds password generation button and toggle for the passwords bottom sheet "
1604 "to the keyboard accessory. Replaces password generation popups.";
1605
Christos Froussios6e060c42018-07-31 16:17:191606const char kPasswordsMigrateLinuxToLoginDBName[] =
1607 "Migrate passwords to \"Login Data\"";
1608const char kPasswordsMigrateLinuxToLoginDBDescription[] =
Christos Froussiose34c38a2018-09-04 14:27:591609 "Performs a one-off irreversible migration of passwords from the "
Christos Froussios6e060c42018-07-31 16:17:191610 "gnome-keyring or kwallet into the profile directory.";
1611
Rouslan Solomakhinded840112018-11-02 13:27:101612const char kPerMethodCanMakePaymentQuotaName[] =
1613 "Per-method canMakePayment() quota.";
1614const char kPerMethodCanMakePaymentQuotaDescription[] =
1615 "Allow calling canMakePayment() for different payment methods, as long as "
1616 "method-specific parameters remain unchanged.";
1617
Doug Arnett620ff542018-02-06 17:54:221618const char kPreviewsAllowedName[] = "Previews Allowed";
1619const char kPreviewsAllowedDescription[] =
1620 "Allows previews to be shown subject to specific preview types being "
1621 "enabled and the client experiencing specific triggering conditions. "
1622 "May be used as a kill-switch to turn off all potential preview types.";
1623
Brett Wilsonecb80982017-07-12 20:34:511624const char kPrintPdfAsImageName[] = "Print Pdf as Image";
1625const char kPrintPdfAsImageDescription[] =
1626 "If enabled, an option to print PDF files as images will be available in "
1627 "print preview.";
1628
1629const char kPrintPreviewRegisterPromosName[] =
1630 "Print Preview Registration Promos";
1631const char kPrintPreviewRegisterPromosDescription[] =
1632 "Enable registering unregistered cloud printers from print preview.";
1633
Mohsen Izadi93faac12017-07-29 04:45:151634const char kPullToRefreshName[] = "Pull-to-refresh gesture";
1635const char kPullToRefreshDescription[] =
1636 "Pull-to-refresh gesture in response to vertical overscroll.";
Mohsen Izadi8c59ba52018-04-12 18:52:011637const char kPullToRefreshEnabledTouchscreen[] = "Enabled for touchscreen only";
Mohsen Izadi93faac12017-07-29 04:45:151638
Troy Hildebrandt7228ad12018-02-23 21:18:241639const char kQueryInOmniboxName[] = "Query in Omnibox";
1640const char kQueryInOmniboxDescription[] =
1641 "Only display query terms in the omnibox when viewing a search results "
1642 "page.";
1643
Brett Wilsonecb80982017-07-12 20:34:511644const char kQuicName[] = "Experimental QUIC protocol";
1645const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1646
1647const char kReducedReferrerGranularityName[] =
1648 "Reduce default 'referer' header granularity.";
1649const char kReducedReferrerGranularityDescription[] =
1650 "If a page hasn't set an explicit referrer policy, setting this flag will "
1651 "reduce the amount of information in the 'referer' header for cross-origin "
1652 "requests.";
1653
Christian Dullweber3cc579a22018-09-11 10:54:441654const char kRewriteLevelDBOnDeletionName[] =
1655 "Rewrite LevelDB instances after full deletions";
1656const char kRewriteLevelDBOnDeletionDescription[] =
1657 "Rewrite LevelDB instances to remove traces of deleted data from disk.";
1658
Yutaka Hirano4c0f2f5d452017-11-17 04:24:351659const char kRendererSideResourceSchedulerName[] =
1660 "Renderer side ResourceScheduler";
1661const char kRendererSideResourceSchedulerDescription[] =
1662 "Migrate some ResourceScheduler functionalities to renderer";
1663
Brett Wilsonecb80982017-07-12 20:34:511664const char kRequestTabletSiteName[] =
1665 "Request tablet site option in the settings menu";
1666const char kRequestTabletSiteDescription[] =
1667 "Allows the user to request tablet site. Web content is often optimized "
1668 "for tablet devices. When this option is selected the user agent string is "
1669 "changed to indicate a tablet device. Web content optimized for tablets is "
1670 "received there after for the current tab.";
1671
Kinuko Yasuda33955082018-06-19 10:14:591672const char kResourceLoadSchedulerName[] = "Enable resource load throttling";
Brett Wilsonecb80982017-07-12 20:34:511673const char kResourceLoadSchedulerDescription[] =
Kinuko Yasuda33955082018-06-19 10:14:591674 "Uses the resource load scheduler in blink to throttle resource load "
1675 "requests.";
Brett Wilsonecb80982017-07-12 20:34:511676
Daniel Rubery91874e32019-01-10 22:12:341677const char kSafeBrowsingUseAPDownloadVerdictsName[] =
1678 "Request Advanced Protection verdicts when inspecting downloads";
1679const char kSafeBrowsingUseAPDownloadVerdictsDescription[] =
1680 "If enabled, download protection will request Advanced Protection "
1681 "verdicts from Safe Browsing. These will provide stronger protections "
1682 "from files Safe Browsing is unsure about.";
1683
Brett Wilsonecb80982017-07-12 20:34:511684const char kSafeSearchUrlReportingName[] = "SafeSearch URLs reporting.";
1685const char kSafeSearchUrlReportingDescription[] =
1686 "If enabled, inappropriate URLs can be reported back to SafeSearch.";
1687
Lily Chene0d3ac92019-04-22 16:55:531688const char kSameSiteByDefaultCookiesName[] = "SameSite by default cookies";
1689const char kSameSiteByDefaultCookiesDescription[] =
1690 "Treat cookies that don't specify a SameSite attribute as if they were "
1691 "SameSite=Lax. Sites must specify SameSite=None in order to enable "
1692 "third-party usage.";
1693
Alexei Filippov98772752018-01-27 08:26:521694const char kSamplingHeapProfilerName[] = "Native memory sampling profiler.";
1695const char kSamplingHeapProfilerDescription[] =
1696 "Enables native memory sampling profiler with specified rate in KiB. "
1697 "If sampling rate is not provided the default value of 128 KiB is used.";
1698
Brett Wilsonecb80982017-07-12 20:34:511699const char kSaveasMenuLabelExperimentName[] =
1700 "Switch 'Save as' menu labels to 'Download'";
1701const char kSaveasMenuLabelExperimentDescription[] =
1702 "Enables an experiment to switch menu labels that use 'Save as...' to "
1703 "'Download'.";
1704
Charlene Yan0ccd7f52019-04-12 23:20:591705const char kScrollableTabStripName[] = "Scrollable TabStrip";
1706const char kScrollableTabStripDescription[] =
1707 "Allows users to access tabs by scrolling when they no longer fit in the "
1708 "tabstrip.";
1709
Jeffrey Cohene49cc59c2018-10-23 16:27:281710const char kSendTabToSelfName[] = "Send tab to self";
1711const char kSendTabToSelfDescription[] =
Tanya Gupta035a9e202019-04-08 20:01:331712 "Allows users to receive tabs from other synced devices, in order to "
1713 "easily transition those tabs to this device. This enables the sync "
1714 "infrastructure for this feature.";
Jeffrey Cohene49cc59c2018-10-23 16:27:281715
Tanya Gupta035a9e202019-04-08 20:01:331716const char kSendTabToSelfShowSendingUIName[] =
1717 "Send tab to self show sending UI";
1718const char kSendTabToSelfShowSendingUIDescription[] =
1719 "Allows users to send tabs to other synced devices by accessing the "
1720 "sending user interface. Requires Send tab to self to also be enabled";
Jeffrey Cohen9f3e6092019-03-21 21:55:011721
momohattfc352292018-08-29 05:12:361722const char kServiceWorkerImportedScriptUpdateCheckName[] =
1723 "Enable update check for service worker importScripts() resources";
1724const char kServiceWorkerImportedScriptUpdateCheckDescription[] =
1725 "Extend byte-for-byte update check for scripts that are imported by the "
1726 "service worker script via importScripts().";
1727
Azeem Arshad3b1ef73122018-08-30 02:04:151728const char kServiceWorkerLongRunningMessageName[] =
1729 "Service worker long running message dispatch.";
1730const char kServiceWorkerLongRunningMessageDescription[] =
1731 "Enables long running message dispatch method for service workers. "
1732 "Messages sent with this method do not timeout, allowing the service "
1733 "worker to run indefinitely.";
1734
Chris Hamiltonb9612e262019-02-12 21:12:061735const char kSessionRestorePrioritizesBackgroundUseCasesName[] =
1736 "Session restore prioritizes background use cases.";
1737const char kSessionRestorePrioritizesBackgroundUseCasesDescription[] =
1738 "When enabled session restore logic will prioritize sites that make use of "
1739 "background communication mechanisms (favicon and tab title switches, "
1740 "notifications, etc) over sites that do not.";
1741
Brett Wilsonecb80982017-07-12 20:34:511742const char kSettingsWindowName[] = "Show settings in a window";
1743const char kSettingsWindowDescription[] =
1744 "Settings will be shown in a dedicated window instead of as a browser tab.";
1745
Manu Cornetd7ef7c52018-05-01 22:08:231746const char kShelfHoverPreviewsName[] =
1747 "Show previews of running apps when hovering over the shelf.";
1748const char kShelfHoverPreviewsDescription[] =
1749 "Shows previews of the open windows for a given running app when hovering "
1750 "over the shelf.";
1751
Naoki Fukino008a0022018-05-23 18:33:001752const char kShowAndroidFilesInFilesAppName[] =
1753 "Show Android files in Files app";
1754const char kShowAndroidFilesInFilesAppDescription[] =
1755 "Show Android files in Files app if Android is enabled on the device.";
1756
Brett Wilsonecb80982017-07-12 20:34:511757const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
1758const char kShowAutofillSignaturesDescription[] =
Maxim Kolosovskiye66f8cb2018-03-23 10:25:381759 "Annotates web forms with Autofill signatures as HTML attributes. Also "
1760 "marks password fields suitable for password generation.";
Brett Wilsonecb80982017-07-12 20:34:511761
1762const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
1763const char kShowAutofillTypePredictionsDescription[] =
1764 "Annotates web forms with Autofill field type predictions as placeholder "
1765 "text.";
1766
Jonathan Backer93610a82019-03-27 14:02:381767const char kSkiaRendererName[] = "Skia API for OOP-D compositing";
1768const char kSkiaRendererDescription[] =
1769 "If enabled, the display compositor will use Skia as the graphics API "
1770 "instead of OpenGL ES. Requires Viz Display Compositor (OOP-D).";
1771
Shivani Sharma2d5b4b6b2019-01-08 16:07:161772const char kHistoryManipulationIntervention[] =
1773 "History Manipulation Intervention";
1774const char kHistoryManipulationInterventionDescription[] =
1775 "If a page does a client side redirect or adds to the history without a "
1776 "user gesture, then skip it on back/forward UI.";
1777
Carlos IL89128732018-04-03 17:00:251778const char kSupervisedUserCommittedInterstitialsName[] =
1779 "Enable Supervised User Committed Interstitials";
1780const char kSupervisedUserCommittedInterstitialsDescription[] =
1781 "Use committed error pages instead of transient navigation entries for "
1782 "supervised user interstitials";
1783
Brett Wilsonecb80982017-07-12 20:34:511784const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1785const char kSilentDebuggerExtensionApiDescription[] =
1786 "Do not show the infobar when an extension attaches to a page via "
1787 "chrome.debugger API. This is required to debug extension background "
1788 "pages.";
1789
Christopher Thompson75ff845d2018-02-01 20:12:461790const char kSimplifyHttpsIndicatorName[] = "Simplify HTTPS indicator UI";
1791const char kSimplifyHttpsIndicatorDescription[] =
1792 "Change the UI treatment for HTTPS pages.";
1793
Lukasz Anforowiczd2e16e62019-03-28 19:06:591794const char kIsolateOriginsName[] = "Isolate additional origins";
1795const char kIsolateOriginsDescription[] =
1796 "Requires dedicated processes for an additional set of origins, "
1797 "specified as a comma-separated list.";
1798
Alan Wink7c1b2ae22019-04-03 19:18:061799const char kKidsManagementUrlClassificationName[] =
1800 "KidsMangement Url Classification";
1801const char kKidsManagementUrlClassificationDescription[] =
1802 "Uses KidsManagementService to classify URLs for Kid Accounts.";
1803
Lukasz Anforowicz738a88d2018-11-05 19:19:341804const char kSiteIsolationOptOutName[] = "Disable site isolation";
1805const char kSiteIsolationOptOutDescription[] =
1806 "Disables site isolation "
Nick Carter855bc492018-03-10 00:44:571807 "(SitePerProcess, IsolateOrigins, etc). Intended for diagnosing bugs that "
1808 "may be due to out-of-process iframes. Opt-out has no effect if site "
Lukasz Anforowicz42840422018-11-05 21:49:221809 "isolation is force-enabled using a command line switch or using an "
1810 "enterprise policy. "
1811 "Caution: this disables important mitigations for the Spectre CPU "
Nick Carter855bc492018-03-10 00:44:571812 "vulnerability affecting most computers.";
Lukasz Anforowicz738a88d2018-11-05 19:19:341813const char kSiteIsolationOptOutChoiceDefault[] = "Default";
1814const char kSiteIsolationOptOutChoiceOptOut[] = "Disabled (not recommended)";
Brett Wilsonecb80982017-07-12 20:34:511815
Pattideade7972018-04-27 02:59:401816const char kSiteSettings[] = "Site settings";
Brett Wilsonecb80982017-07-12 20:34:511817const char kSiteSettingsDescription[] =
Pattideade7972018-04-27 02:59:401818 "Add the All Sites list to Site Settings.";
Brett Wilsonecb80982017-07-12 20:34:511819
Brett Wilsonecb80982017-07-12 20:34:511820const char kSmoothScrollingName[] = "Smooth Scrolling";
1821const char kSmoothScrollingDescription[] =
1822 "Animate smoothly when scrolling page content.";
1823
Wei-Yin Chen (陳威尹)c12a30502019-04-24 20:54:421824const char kSoleIntegrationName[] = "Sole integration";
1825const char kSoleIntegrationDescription[] =
1826 "Enable Sole integration for browser customization. You must restart "
1827 "the browser twice for changes to take effect.";
1828
Justin Donnelly4e448cb2017-07-07 21:32:131829const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
1830 "Enable speculative start of a service worker when a search is predicted.";
Justin Donnelly4e448cb2017-07-07 21:32:131831const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
1832 "If enabled, when the user enters text in the omnibox that looks like a "
1833 "a query, any service worker associated with the search engine the query "
1834 "will be sent to is started early.";
1835
Carlos ILe5fa0a12018-08-03 16:08:321836const char kSSLCommittedInterstitialsName[] = "Committed Interstitials";
1837const char kSSLCommittedInterstitialsDescription[] =
1838 "Use committed error pages instead of transient navigation entries "
1839 "for SSL interstitial error pages (i.e. certificate errors).";
1840
Shubhie Panickerfaf082ed2018-01-03 04:49:151841const char kStopInBackgroundName[] = "Stop in background";
1842const char kStopInBackgroundDescription[] =
1843 "Stop scheduler task queues, in the background, "
Shubhie Panicker56c99a22018-03-21 00:22:281844 " after a grace period.";
Shubhie Panickerfaf082ed2018-01-03 04:49:151845
Shubhie Panicker56c99a22018-03-21 00:22:281846const char kStopNonTimersInBackgroundName[] =
1847 "Stop non-timer task queues background";
1848const char kStopNonTimersInBackgroundDescription[] =
1849 "Stop non-timer task queues, in the background, "
1850 "after a grace period.";
1851
Brett Wilsonecb80982017-07-12 20:34:511852const char kSuggestionsWithSubStringMatchName[] =
1853 "Substring matching for Autofill suggestions";
1854const char kSuggestionsWithSubStringMatchDescription[] =
1855 "Match Autofill suggestions based on substrings (token prefixes) rather "
1856 "than just prefixes.";
vabr0215a8e2017-03-28 12:47:341857
Marc Treib4bd95e72018-08-30 06:30:581858const char kSyncSupportSecondaryAccountName[] =
1859 "Support secondary accounts for Sync standalone transport";
1860const char kSyncSupportSecondaryAccountDescription[] =
1861 "If enabled, allows Chrome Sync to start in standalone transport mode for "
1862 "a signed-in account that has not been chosen as Chrome's primary account. "
1863 "This only has an effect if sync-standalone-transport is also enabled.";
1864
Jan Krcal2ff23f7c2018-09-04 16:16:131865const char kSyncUSSAutofillProfileName[] = "Enable USS for autofill profile";
1866const char kSyncUSSAutofillProfileDescription[] =
1867 "Enables the new implementation of autofill profile sync";
1868
Jan Krcale3641b92018-08-10 17:53:311869const char kSyncUSSAutofillWalletDataName[] =
1870 "Enable USS for autofill wallet data";
1871const char kSyncUSSAutofillWalletDataDescription[] =
1872 "Enables the new implementation of autofill walet data sync";
1873
Jan Krcal1e883642019-03-06 16:53:451874const char kSyncUSSAutofillWalletMetadataName[] =
1875 "Enable USS for autofill wallet metadata";
1876const char kSyncUSSAutofillWalletMetadataDescription[] =
1877 "Enables the new implementation of autofill walet metadata sync";
1878
Brett Wilsonecb80982017-07-12 20:34:511879const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1880const char kSyncSandboxDescription[] =
1881 "Connects to the testing server for Chrome Sync.";
vabr0215a8e2017-03-28 12:47:341882
Joe Downing8cbbc192018-05-14 17:37:071883const char kSystemKeyboardLockName[] = "Experimental system keyboard lock";
1884const char kSystemKeyboardLockDescription[] =
1885 "Enables websites to use the keyboard.lock() API to intercept system "
1886 "keyboard shortcuts and have the events routed directly to the website "
1887 "when in fullscreen mode.";
1888
Matt Simmons1fd0c9f2019-04-15 19:08:221889const char kTabEngagementReportingName[] = "Tab Engagement Metrics";
1890const char kTabEngagementReportingDescription[] =
1891 "Tracks tab engagement and lifetime metrics.";
1892
Yusuf Ozuysal67f05a02019-02-15 19:30:521893const char kTabGridLayoutAndroidName[] = "Tab Grid Layout";
1894const char kTabGridLayoutAndroidDescription[] =
1895 "Allows users to see their tabs in a grid layout in the tab switcher.";
1896
Yusuf Ozuysal436d90b82019-03-15 22:17:581897const char kTabGroupsAndroidName[] = "Tab Groups";
1898const char kTabGroupsAndroidDescription[] =
1899 "Allows users to create groups to better organize their tabs.";
1900
Taylor Bergquistbcc15462018-12-05 00:36:561901const char kTabGroupsName[] = "Tab Groups";
1902const char kTabGroupsDescription[] =
1903 "Allows users to organize tabs into visually distinct groups, e.g. to "
1904 "separate tabs associated with different tasks.";
1905
Caroline Risinge121c2b2018-12-03 20:19:291906const char kTabHoverCardsName[] = "Tab Hover Cards";
1907const char kTabHoverCardsDescription[] =
1908 "Enables a popup containing tab information to be visible when hovering "
1909 "over a tab. This will replace tooltips for tabs.";
1910
Dana Friedacaa8ef52019-02-08 02:20:351911const char kTabHoverCardImagesName[] = "Tab Hover Card Images";
1912const char kTabHoverCardImagesDescription[] =
1913 "Shows a preview image in tab hover cards, if tab hover cards are enabled.";
1914
Christian Dullweberd0d96f02017-09-13 09:22:511915const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1916const char kTabsInCbdDescription[] =
1917 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
1918
Daniele Castagna0fead93e2018-01-10 20:40:291919const char kTintGlCompositedContentName[] = "Tint GL-composited content";
1920const char kTintGlCompositedContentDescription[] =
1921 "Tint contents composited using GL with a shade of red to help debug and "
1922 "study overlay support.";
1923
Peter Kastingd77428352018-10-26 15:20:251924const char kTopChromeTouchUiName[] = "Touch UI Layout";
1925const char kTopChromeTouchUiDescription[] =
1926 "Enables touch UI layout in the browser's top chrome.";
vabr0215a8e2017-03-28 12:47:341927
Brett Wilsonecb80982017-07-12 20:34:511928const char kThreadedScrollingName[] = "Threaded scrolling";
1929const char kThreadedScrollingDescription[] =
1930 "Threaded handling of scroll-related input events. Disabling this will "
1931 "force all such scroll events to be handled on the main thread. Note that "
1932 "this can dramatically hurt scrolling performance of most websites and is "
1933 "intended for testing purposes only.";
1934
Dominick Ng8896b1cd2017-10-17 23:24:361935const char kTopSitesFromSiteEngagementName[] = "Top Sites from Site Engagement";
1936const char kTopSitesFromSiteEngagementDescription[] =
1937 "Enable Top Sites on the New Tab Page to be sourced and sorted using site "
1938 "engagement.";
1939
Brett Wilsonecb80982017-07-12 20:34:511940const char kTouchAdjustmentName[] = "Touch adjustment";
1941const char kTouchAdjustmentDescription[] =
1942 "Refine the position of a touch gesture in order to compensate for touches "
1943 "having poor resolution compared to a mouse.";
1944
1945const char kTouchDragDropName[] = "Touch initiated drag and drop";
1946const char kTouchDragDropDescription[] =
1947 "Touch drag and drop can be initiated through long press on a draggable "
1948 "element.";
1949
1950const char kTouchEventsName[] = "Touch Events API";
1951const char kTouchEventsDescription[] =
1952 "Force Touch Events API feature detection to always be enabled or "
1953 "disabled, or to be enabled when a touchscreen is detected on startup "
Ella Gea6a203c92017-10-26 19:09:291954 "(Automatic).";
Brett Wilsonecb80982017-07-12 20:34:511955
1956const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
1957const char kTouchSelectionStrategyDescription[] =
1958 "Controls how text selection granularity changes when touch text selection "
1959 "handles are dragged. Non-default behavior is experimental.";
1960const char kTouchSelectionStrategyCharacter[] = "Character";
1961const char kTouchSelectionStrategyDirection[] = "Direction";
1962
1963const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
1964const char kTraceUploadUrlDescription[] =
1965 "This is to be used in conjunction with the enable-navigation-tracing "
1966 "flag. Please select the label that best describes the recorded traces. "
1967 "This will choose the destination the traces are uploaded to. If you are "
1968 "not sure, select other. If left empty, no traces will be uploaded.";
1969const char kTraceUploadUrlChoiceOther[] = "Other";
1970const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1971const char kTraceUploadUrlChoiceQa[] = "QA";
1972const char kTraceUploadUrlChoiceTesting[] = "Testing";
1973
Anthony Vallee-Dubois265c5692018-06-01 15:57:141974const char kTranslateForceTriggerOnEnglishName[] =
1975 "Select which language model to use to trigger translate on English "
1976 "content";
1977const char kTranslateForceTriggerOnEnglishDescription[] =
1978 "Force the Translate Triggering on English pages experiment to be enabled "
1979 "with the selected language model active.";
1980
Mustafa Emre Acerb3aa36a82018-05-22 21:44:051981const char kTreatInsecureOriginAsSecureName[] =
1982 "Insecure origins treated as secure";
1983const char kTreatInsecureOriginAsSecureDescription[] =
1984 "Treat given (insecure) origins as secure origins. Multiple origins can be "
1985 "supplied as a comma-separated list. For the definition of secure "
1986 "contexts, "
1987 "see https://w3c.github.io/webappsec-secure-contexts/";
1988
Brett Wilsonecb80982017-07-12 20:34:511989const char kTrySupportedChannelLayoutsName[] =
1990 "Causes audio output streams to check if channel layouts other than the "
1991 "default hardware layout are available.";
1992const char kTrySupportedChannelLayoutsDescription[] =
1993 "Causes audio output streams to check if channel layouts other than the "
1994 "default hardware layout are available. Turning this on will allow the OS "
1995 "to do stereo to surround expansion if supported. May expose third party "
1996 "driver bugs, use with caution.";
1997
David Roger6762a092018-01-31 15:55:071998const char kUnifiedConsentName[] = "Unified Consent";
1999const char kUnifiedConsentDescription[] =
2000 "Enables a unified management of user consent for privacy-related "
2001 "features. This includes new confirmation screens and improved settings "
2002 "pages.";
2003
Brett Wilsonecb80982017-07-12 20:34:512004const char kUiPartialSwapName[] = "Partial swap";
2005const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
2006
Wei Li790e7a8572018-03-23 01:31:552007const char kUsePdfCompositorServiceName[] =
2008 "Use PDF compositor service for printing";
2009const char kUsePdfCompositorServiceDescription[] =
2010 "When enabled, use PDF compositor service to composite and generate PDF "
2011 "files for printing. When site isolation is enabled, disabling this will "
2012 "not stop using PDF compositor service since the service is required for "
2013 "printing out-of-process iframes correctly.";
2014
Mustaq Ahmedc646c0a2017-10-20 20:08:302015const char kUserActivationV2Name[] = "User Activation v2";
2016const char kUserActivationV2Description[] =
2017 "Enable simple user activation for APIs that are otherwise controlled by "
2018 "user gesture tokens.";
2019
Brett Wilsonecb80982017-07-12 20:34:512020const char kUseSuggestionsEvenIfFewFeatureName[] =
2021 "Disable minimum for server-side tile suggestions on NTP.";
2022const char kUseSuggestionsEvenIfFewFeatureDescription[] =
2023 "Request server-side suggestions even if there are only very few of them "
2024 "and use them for tiles on the New Tab Page.";
2025
2026const char kV8CacheOptionsName[] = "V8 caching mode.";
2027const char kV8CacheOptionsDescription[] =
2028 "Caching mode for the V8 JavaScript engine.";
Brett Wilsonecb80982017-07-12 20:34:512029const char kV8CacheOptionsCode[] = "Cache V8 compiler data.";
2030
Michael Hablich896d52662017-10-23 15:59:572031const char kV8VmFutureName[] = "Future V8 VM features";
2032const char kV8VmFutureDescription[] =
2033 "This enables upcoming and experimental V8 VM features. "
2034 "This flag does not enable experimental JavaScript features.";
2035
Hannes Payer1130d5672018-06-05 07:37:312036const char kV8OrinocoName[] = "V8 Orinoco garbage collection features";
2037const char kV8OrinocoDescription[] =
2038 "This enables the V8 Orinoco garbage collection features.";
2039
Brett Wilsonecb80982017-07-12 20:34:512040const char kWalletServiceUseSandboxName[] =
2041 "Use Google Payments sandbox servers";
2042const char kWalletServiceUseSandboxDescription[] =
2043 "For developers: use the sandbox service for Google Payments API calls.";
2044
Brett Wilsonecb80982017-07-12 20:34:512045const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
2046const char kWebglDraftExtensionsDescription[] =
2047 "Enabling this option allows web applications to access the WebGL "
2048 "Extensions that are still in draft status.";
2049
2050const char kWebMidiName[] = "Web MIDI API";
2051const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
2052
Qingsi Wangec2dbf942018-11-03 05:33:042053const char kWebrtcHideLocalIpsWithMdnsName[] =
2054 "Anonymize local IPs exposed by WebRTC.";
2055const char kWebrtcHideLocalIpsWithMdnsDecription[] =
2056 "Conceal local IP addresses with mDNS hostnames.";
2057
Alex Loikob5fb1282018-08-14 10:04:402058const char kWebrtcHybridAgcName[] = "WebRTC hybrid Agc2/Agc1.";
2059const char kWebrtcHybridAgcDescription[] =
2060 "WebRTC Agc2 digital adaptation with Agc1 analog adaptation.";
2061
Brett Wilsonecb80982017-07-12 20:34:512062const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
2063const char kWebrtcHwDecodingDescription[] =
2064 "Support in WebRTC for decoding video streams using platform hardware.";
2065
2066const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
2067const char kWebrtcHwEncodingDescription[] =
2068 "Support in WebRTC for encoding video streams using platform hardware.";
2069
2070const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
2071const char kWebrtcHwH264EncodingDescription[] =
2072 "Support in WebRTC for encoding h264 video streams using platform "
2073 "hardware.";
2074
2075const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
2076const char kWebrtcHwVP8EncodingDescription[] =
2077 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
2078
Sreerenj Balachandran2a5fd0972019-02-08 22:15:202079const char kWebrtcHwVP9EncodingName[] = "WebRTC hardware vp9 video encoding";
2080const char kWebrtcHwVP9EncodingDescription[] =
2081 "Support in WebRTC for encoding vp9 video streams using platform hardware.";
2082
Niels Möller090866a2018-02-13 10:55:032083const char kWebrtcNewEncodeCpuLoadEstimatorName[] =
2084 "WebRTC new encode cpu load estimator";
2085const char kWebrtcNewEncodeCpuLoadEstimatorDescription[] =
2086 "Enable new estimator for the encoder cpu load, for evaluation and "
2087 "testing. Intended to improve accuracy when screen casting.";
2088
Elad Alon85e0d0be2018-06-26 10:38:372089const char kWebRtcRemoteEventLogName[] = "WebRTC remote-bound event logging";
2090const char kWebRtcRemoteEventLogDescription[] =
2091 "Allow collecting WebRTC event logs and uploading them to Crash. "
2092 "Please note that, even if enabled, this will still require "
2093 "a policy to be set, for it to have an effect.";
2094
Brett Wilsonecb80982017-07-12 20:34:512095const char kWebrtcSrtpAesGcmName[] =
2096 "Negotiation with GCM cipher suites for SRTP in WebRTC";
2097const char kWebrtcSrtpAesGcmDescription[] =
2098 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
2099
2100const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
2101const char kWebrtcStunOriginDescription[] =
2102 "When enabled, Stun messages generated by WebRTC will contain the Origin "
2103 "header.";
2104
2105const char kWebvrName[] = "WebVR";
2106const char kWebvrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012107 "Enables access to experimental Virtual Reality functionality via the "
2108 "WebVR 1.1 API. This feature will eventually be replaced by the WebXR "
2109 "Device API. Warning: Enabling this will also allow WebVR content on "
2110 "insecure origins to access these powerful APIs, and may pose a security "
David Dorwin09448942019-01-11 23:37:302111 "risk. Controllers are exposed as Gamepads, and WebVR-specific attributes "
2112 "are exposed.";
Brett Wilsonecb80982017-07-12 20:34:512113
Brandon Jonese9d9b2b2017-12-11 22:20:112114const char kWebXrName[] = "WebXR Device API";
2115const char kWebXrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012116 "Enables access to experimental APIs to interact with Virtual Reality (VR) "
2117 "and Augmented Reality (AR) devices.";
2118
Ian Vollick7aaccf92018-04-07 23:10:432119const char kWebXrHitTestName[] = "WebXR Hit Test";
2120const char kWebXrHitTestDescription[] =
2121 "Enables access to raycasting against estimated XR scene geometry.";
Brandon Jonese9d9b2b2017-12-11 22:20:112122
Brett Wilsonecb80982017-07-12 20:34:512123const char kZeroCopyName[] = "Zero-copy rasterizer";
2124const char kZeroCopyDescription[] =
2125 "Raster threads write directly to GPU memory associated with tiles.";
vabr0215a8e2017-03-28 12:47:342126
Brett Wilsonff596952017-07-14 01:06:552127// Android ---------------------------------------------------------------------
2128
2129#if defined(OS_ANDROID)
2130
2131const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
2132const char kAiaFetchingDescription[] =
2133 "Enable intermediate certificate fetching when a server does not provide "
2134 "sufficient certificates to build a chain to a trusted root.";
2135
2136const char kAccessibilityTabSwitcherName[] = "Accessibility Tab Switcher";
2137const char kAccessibilityTabSwitcherDescription[] =
2138 "Enable the accessibility tab switcher for Android.";
2139
Pavel Shmakov798f4742018-11-15 21:27:382140const char kAllowRemoteContextForNotificationsName[] =
2141 "Allow using remote app context for notifications";
2142const char kAllowRemoteContextForNotificationsDescription[] =
2143 "Allow using Context#createPackageContext to work around issues with status"
2144 "bar icons on certain Android M devices.";
2145
Brett Wilsonff596952017-07-14 01:06:552146const char kAndroidAutofillAccessibilityName[] = "Autofill Accessibility";
2147const char kAndroidAutofillAccessibilityDescription[] =
2148 "Enable accessibility for autofill popup.";
2149
Khushalbb1963a2018-10-02 21:02:352150const char kAndroidSurfaceControl[] = "Use Android SurfaceControl";
2151const char kAndroidSurfaceControlDescription[] =
2152 "Use the SurfaceControl API for supporting overlays on Android";
2153
Becky Zhoubbfbde32019-02-20 17:07:592154const char kAndroidWebContentsDarkMode[] = "Android web contents dark mode";
2155const char kAndroidWebContentsDarkModeDescription[] =
2156 "Enable dark mode on web contents in Android";
2157
Anita Woodruffbfcd1e52018-07-16 12:00:512158const char kAppNotificationStatusMessagingName[] =
2159 "App notification status messaging";
2160const char kAppNotificationStatusMessagingDescription[] =
2161 "Enables messaging in site permissions UI informing user when "
2162 "notifications are disabled for the entire app.";
2163
Miriam Gershenson8cf1397222018-01-23 22:48:292164const char kAsyncDnsName[] = "Async DNS resolver";
2165const char kAsyncDnsDescription[] = "Enables the built-in DNS resolver.";
2166
Dan Harrington01229f82018-09-12 21:01:212167const char kAutoFetchOnNetErrorPageName[] = "AutoFetchOnNetErrorPage";
2168const char kAutoFetchOnNetErrorPageDescription[] =
2169 "When enabled, and navigation fails with an offline error, schedule a "
2170 "fetch of the page when online again.";
2171
Brett Wilsonff596952017-07-14 01:06:552172const char kAutofillAccessoryViewName[] =
2173 "Autofill suggestions as keyboard accessory view";
2174const char kAutofillAccessoryViewDescription[] =
2175 "Shows Autofill suggestions on top of the keyboard rather than in a "
2176 "dropdown.";
2177
Tibor Goldschwendt11b3cf22018-07-04 15:32:442178const char kBackgroundTaskComponentUpdateName[] =
2179 "Background Task Component Updates";
2180const char kBackgroundTaskComponentUpdateDescription[] =
2181 "Schedule component updates with BackgroundTaskScheduler";
2182
Michael van Ouwerkerkbda4ad82018-06-19 14:08:002183const char kCCTModuleName[] = "Chrome Custom Tabs Module";
2184const char kCCTModuleDescription[] =
2185 "Enables a dynamically loaded module in Chrome Custom Tabs, on Android.";
2186
Michael van Ouwerkerk29a7a292018-10-09 09:20:142187const char kCCTModuleCacheName[] = "Chrome Custom Tabs Module Cache";
2188const char kCCTModuleCacheDescription[] =
Michael van Ouwerkerka5df1ec2018-10-11 11:57:402189 "Enables a cache for dynamically loaded modules in Chrome Custom Tabs. "
2190 "Under mild memory pressure the cache may be retained for some time";
Michael van Ouwerkerk29a7a292018-10-09 09:20:142191
John Lin170c00b2018-11-21 15:44:252192const char kCCTModuleCustomHeaderName[] =
2193 "Chrome Custom Tabs Module Custom Header";
2194const char kCCTModuleCustomHeaderDescription[] =
2195 "Enables header customization by dynamically loaded modules in "
2196 "Chrome Custom Tabs.";
2197
Michael van Ouwerkerk0878427a2019-02-13 15:11:422198const char kCCTModuleCustomRequestHeaderName[] =
2199 "Chrome Custom Tabs Module Custom Request Header";
2200const char kCCTModuleCustomRequestHeaderDescription[] =
2201 "Enables a custom request header for URLs managed by dynamically loaded "
2202 "modules in Chrome Custom Tabs.";
2203
alihanlivdumlu12ac4772019-01-17 17:37:182204const char kCCTModuleDexLoadingName[] = "Chrome Custom Tabs Module Dex Loading";
2205const char kCCTModuleDexLoadingDescription[] =
2206 "Enables loading Chrome Custom Tabs module code from a dex file "
2207 "provided by the module.";
2208
barkerd84051482018-11-13 14:46:562209const char kCCTModulePostMessageName[] =
2210 "Chrome Custom Tabs Module postMessage API";
2211const char kCCTModulePostMessageDescription[] =
2212 "Enables the postMessage API exposed to dynamically loaded modules in "
2213 "Chrome Custom Tabs.";
2214
Anna Malova9bb4ead2019-01-18 18:01:262215const char kCCTModuleUseIntentExtrasName[] =
2216 "Chrome Custom Tabs Module Intent Extras Usage";
2217const char kCCTModuleUseIntentExtrasDescription[] =
2218 "Enables usage of Intent's extras in Chrome Custom Tabs Module";
2219
Anna Malovaf7c734a2019-03-01 13:08:452220const char kCCTTargetTranslateLanguageName[] =
2221 "Chrome Custom Tabs Target Translate Language";
2222const char kCCTTargetTranslateLanguageDescription[] =
2223 "Enables specify target language the page should be translated to "
2224 "in Chrome Custom Tabs.";
2225
Matthew Jones1abcb132018-07-09 17:59:462226const char kChromeDuetName[] = "Chrome Duet";
2227const char kChromeDuetDescription[] =
2228 "Enables Chrome Duet, split toolbar Chrome Home, on Android.";
Theresa Wellingtonb9243b22017-12-01 16:23:052229
Sarath Singapati83aef1c2017-11-16 15:54:522230const char kClearOldBrowsingDataName[] = "Clear older browsing data";
2231const char kClearOldBrowsingDataDescription[] =
2232 "Enables clearing of browsing data which is older than a given time "
2233 "period.";
2234
Vitalii Iarkof52ff802017-09-14 12:34:242235const char kContentSuggestionsDebugLogName[] = "Content suggestions debug log";
2236const char kContentSuggestionsDebugLogDescription[] =
2237 "Enable content suggestions debug log accessible through "
2238 "snippets-internals.";
2239
Donn Denman4315f262019-03-02 02:47:412240const char kContextualSearchDefinitionsName[] = "Contextual Search definitions";
2241const char kContextualSearchDefinitionsDescription[] =
2242 "Enables tap-activated contextual definitions of words on a page to be "
2243 "presented in the caption of the Tap to Search Bar.";
2244
Donn Denman8e58ead2017-11-04 01:44:012245const char kContextualSearchMlTapSuppressionName[] =
2246 "Contextual Search ML tap suppression";
2247const char kContextualSearchMlTapSuppressionDescription[] =
2248 "Enables tap gestures to be suppressed to improve CTR by applying machine "
Donn Denman59729812018-01-09 01:27:022249 "learning. The \"Contextual Search Ranker prediction\" flag must also be "
2250 "enabled!";
Brett Wilsonff596952017-07-14 01:06:552251
Donn Denman59729812018-01-09 01:27:022252const char kContextualSearchRankerQueryName[] =
2253 "Contextual Search Ranker prediction";
2254const char kContextualSearchRankerQueryDescription[] =
2255 "Enables prediction of tap gestures using Assist-Ranker machine learning.";
2256
Donn Denman63d169f2019-03-08 23:34:502257const char kContextualSearchSimplifiedServerName[] =
2258 "Contextual Search simplified server logic";
2259const char kContextualSearchSimplifiedServerDescription[] =
2260 "Enables simpler server-side logic for determining what data to return and "
2261 "show in the Contextual Search UI. Option to allow all cards CoCa "
2262 "returns.";
2263
Donn Denman59729812018-01-09 01:27:022264const char kContextualSearchSecondTapName[] =
2265 "Contextual Search second tap triggering";
2266const char kContextualSearchSecondTapDescription[] =
2267 "Enables triggering on a second tap gesture even when Ranker would "
2268 "normally suppress that tap.";
2269
Donn Denman75f4b052019-04-05 17:55:212270const char kContextualSearchTranslationModelName[] =
2271 "Contextual Search translation using the Chrome translate model.";
2272const char kContextualSearchTranslationModelDescription[] =
2273 "Enables triggering translation in Contextual Search according to the "
2274 "Chrome translation model semantics.";
2275
Donn Denmane9b5b7fb2018-07-24 22:19:492276const char kContextualSearchUnityIntegrationName[] =
2277 "Contextual Search integration with Unified Consent";
2278const char kContextualSearchUnityIntegrationDescription[] =
2279 "Enables integration of Tap to Search with Unified Consent.";
2280
Joy Ming189b0cc2017-12-08 19:42:432281const char kDownloadsLocationChangeName[] = "Enable downloads location change";
2282const char kDownloadsLocationChangeDescription[] =
2283 "Enable changing default downloads storage location on Android.";
2284
Shakti Sahu32b2ee102018-05-17 00:04:462285const char kDownloadProgressInfoBarName[] = "Enable download progress infobar";
2286const char kDownloadProgressInfoBarDescription[] =
2287 "Enables an infobar notifying users about status of current downloads.";
2288
Shakti Sahu9ec8cfd2018-07-17 13:29:292289const char kDownloadHomeV2Name[] = "Enable download home v2";
2290const char kDownloadHomeV2Description[] =
2291 "Enables the new UI for download home";
2292
Hesen Zhangf7ad6142019-03-12 23:48:312293const char kDownloadRenameName[] = "Enable download rename";
2294const char kDownloadRenameDescription[] = "Enables rename option for downloads";
2295
Fabio Tirelo918089a2018-10-22 21:24:082296const char kAutofillManualFallbackAndroidName[] =
2297 "Enable Autofill manual fallback for Addresses and Payments (Android)";
2298const char kAutofillManualFallbackAndroidDescription[] =
2299 "If enabled, adds toggle for addresses and payments bottom sheet to the "
2300 "keyboard accessory.";
2301
Fabio Tirelo315e65922018-09-05 03:35:492302const char kEnableAutofillRefreshStyleName[] =
2303 "Enable Autofill refresh style (Android)";
2304const char kEnableAutofillRefreshStyleDescription[] =
2305 "Enable modernized style for Autofill on Android";
2306
Vitalii Iarkof4ed32d2017-09-26 13:15:532307const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
Brett Wilsonff596952017-07-14 01:06:552308const char kEnableAndroidSpellcheckerDescription[] =
2309 "Enables use of the Android spellchecker.";
Brett Wilsonff596952017-07-14 01:06:552310
Lei Tianbd5a3bf2018-02-28 19:01:162311const char kEnableCommandLineOnNonRootedName[] =
2312 "Enable command line on non-rooted devices";
2313const char kEnableCommandLineOnNoRootedDescription[] =
2314 "Enable reading command line file on non-rooted devices (DANGEROUS).";
2315
Brett Wilsonff596952017-07-14 01:06:552316const char kEnableCustomContextMenuName[] = "Enable custom context menu";
2317const char kEnableCustomContextMenuDescription[] =
2318 "Enables a new context menu when a link, image, or video is pressed within "
2319 "Chrome.";
2320
Sinan Sahin3bafe272019-03-11 17:03:062321const char kEnableRevampedContextMenuName[] =
2322 "Enable the revamped context menu";
2323const char kEnableRevampedContextMenuDescription[] =
2324 "Enables a revamped context menu when a link, image, or video is long "
2325 "pressed within Chrome.";
2326
Brett Wilsonff596952017-07-14 01:06:552327const char kEnableNtpRemoteSuggestionsName[] =
2328 "Show server-side suggestions on the New Tab page";
2329const char kEnableNtpRemoteSuggestionsDescription[] =
2330 "If enabled, the list of content suggestions on the New Tab page will "
2331 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
2332 "allows to override the source used to retrieve these server-side "
2333 "suggestions.";
2334
Brett Wilsonff596952017-07-14 01:06:552335const char kEnableNtpSuggestionsNotificationsName[] =
2336 "Notify about new content suggestions available at the New Tab page";
2337const char kEnableNtpSuggestionsNotificationsDescription[] =
2338 "If enabled, notifications will inform about new content suggestions on "
2339 "the New Tab page.";
2340
Brett Wilsonff596952017-07-14 01:06:552341const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
2342const char kEnableOfflinePreviewsDescription[] =
2343 "Enable showing offline page previews on slow networks.";
2344
2345const char kEnableOskOverscrollName[] = "Enable OSK Overscroll";
2346const char kEnableOskOverscrollDescription[] =
2347 "Enable OSK overscroll support. With this flag on, the OSK will only "
2348 "resize the visual viewport.";
2349
Brett Wilsonff596952017-07-14 01:06:552350const char kEnableWebNfcName[] = "WebNFC";
2351const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
2352
Donn Denmanffaeaa32018-10-12 17:37:532353const char kEphemeralTabName[] = "An Ephemeral Tab in an Overlay Panel";
2354const char kEphemeralTabDescription[] =
Donn Denmanb45c26a2019-02-13 01:42:212355 "Enable a 'Preview page/image' at a linked page into an overlay.";
Donn Denmanffaeaa32018-10-12 17:37:532356
Lei Zhang0a318af2018-11-14 02:19:462357const char kExploreSitesName[] = "Explore websites";
2358const char kExploreSitesDescription[] =
2359 "Enables portal from new tab page to explore websites.";
2360
Xing Liu7d57dd32019-01-20 02:34:182361const char kForegroundNotificationManagerName[] =
2362 "Foreground notification manager";
2363const char kForegroundNotificationManagerDescription[] =
2364 "Enable foreground notification manager to handle foreground service and "
2365 "notification.";
2366
Daniel Parke74fcf862018-03-27 18:05:452367const char kHomePageButtonName[] = "Force Enable Home Page Button";
Daniel Park990d0992018-05-18 22:12:512368const char kHomePageButtonDescription[] = "Displays a home button if enabled.";
Daniel Parke74fcf862018-03-27 18:05:452369
Yafei Duanbb7663f32018-07-17 01:33:152370const char kHomepageTileName[] =
2371 "Enable Homepage tile shown in Suggested Tiles";
2372const char kHomepageTileDescription[] =
2373 "When NTPButton is enabled, the first tile of the Suggested Tiles will be "
2374 "used for homepage. It will not have an effect when NTPButton is disabled.";
2375
Jian Li4b252642018-07-23 19:49:072376const char kIncognitoStringsName[] = "Alternate incognito strings";
2377const char kIncognitoStringsDescription[] =
2378 "Show alternate incognito strings if enabled.";
2379
Theresa920e0ed2018-03-07 18:12:442380const char kInterestFeedContentSuggestionsDescription[] =
Yafei Duanbb7663f32018-07-17 01:33:152381 "Use the interest feed to render content suggestions. Currently "
2382 "content "
Theresa920e0ed2018-03-07 18:12:442383 "suggestions are shown on the New Tab Page.";
2384const char kInterestFeedContentSuggestionsName[] =
2385 "Interest Feed Content Suggestions";
2386
Leo Zhang051b75482017-12-20 03:28:302387const char kLanguagesPreferenceName[] = "Language Settings";
2388const char kLanguagesPreferenceDescription[] =
2389 "Enable this option for Language Settings feature on Android.";
2390
Brett Wilsonff596952017-07-14 01:06:552391const char kLsdPermissionPromptName[] =
2392 "Location Settings Dialog Permission Prompt";
2393const char kLsdPermissionPromptDescription[] =
2394 "Whether to use the Google Play Services Location Settings Dialog "
2395 "permission dialog.";
2396
Ioana Pandeled8dc2b692019-02-20 12:04:152397const char kManualPasswordGenerationAndroidName[] =
2398 "Manual password generation";
2399const char kManualPasswordGenerationAndroidDescription[] =
2400 "Whether Chrome should offer users the option to manually request to "
2401 "generate passwords on Android.";
Amirhossein Simjour97b4154f2018-02-20 03:49:592402
Brett Wilsonff596952017-07-14 01:06:552403const char kMediaScreenCaptureName[] = "Experimental ScreenCapture.";
2404const char kMediaScreenCaptureDescription[] =
2405 "Enable this option for experimental ScreenCapture feature on Android.";
2406
Dan Harrington541db9e2018-07-30 18:36:302407const char kNewNetErrorPageUIName[] = "Enable new UI for net-error page";
2408const char kNewNetErrorPageUIDescription[] =
Dan Harringtonc78e4622019-03-22 19:13:242409 "Enables showing available offline content on the net-error (Dino) page.";
Dan Harrington541db9e2018-07-30 18:36:302410
Brett Wilsonff596952017-07-14 01:06:552411const char kNewPhotoPickerName[] = "Enable new Photopicker";
2412const char kNewPhotoPickerDescription[] =
2413 "Activates the new picker for selecting photos.";
2414
2415const char kNoCreditCardAbort[] = "No Credit Card Abort";
2416const char kNoCreditCardAbortDescription[] =
2417 "Whether or not the No Credit Card Abort is enabled.";
2418
Daniel Park990d0992018-05-18 22:12:512419const char kNtpButtonName[] = "Enable NTP Button";
2420const char kNtpButtonDescription[] =
2421 "Displays a New Tab Page button in the toolbar if enabled.";
2422
Jian Liade82832018-09-06 22:31:412423const char kOfflineIndicatorAlwaysHttpProbeName[] = "Always http probe";
2424const char kOfflineIndicatorAlwaysHttpProbeDescription[] =
2425 "Always do http probe to detect network connectivity for offline indicator "
2426 "as opposed to just taking the connection state from the system."
2427 "Used for testing.";
2428
2429const char kOfflineIndicatorChoiceName[] = "Offline indicator choices";
2430const char kOfflineIndicatorChoiceDescription[] =
2431 "Show an offline indicator while offline.";
Jian Li1413ebf2018-06-14 20:46:322432
Brett Wilsonff596952017-07-14 01:06:552433const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
2434const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
2435
2436const char kOfflinePagesCtV2Name[] = "Enable Offline Pages CT V2 features.";
2437const char kOfflinePagesCtV2Description[] =
2438 "V2 features include attributing pages to the app that initiated the "
2439 "custom tabs, and being able to query for pages by page attribution.";
2440
Cathy Li7311d792018-04-05 00:34:162441const char kOfflinePagesCTSuppressNotificationsName[] =
2442 "Disable download complete notification for whitelisted CCT apps.";
2443const char kOfflinePagesCTSuppressNotificationsDescription[] =
2444 "Disable download complete notification for page downloads originating "
2445 "from a CCT app whitelisted to show their own download complete "
2446 "notification.";
2447
Candice Sy74fa7a352018-03-30 23:46:492448const char kOfflinePagesDescriptiveFailStatusName[] =
2449 "Enables descriptive failed download status text.";
2450const char kOfflinePagesDescriptiveFailStatusDescription[] =
2451 "Enables failed download status text in notifications and Downloads Home "
2452 "to state the reason the request failed if the failure is actionable.";
2453
2454const char kOfflinePagesDescriptivePendingStatusName[] =
2455 "Enables descriptive pending download status text.";
2456const char kOfflinePagesDescriptivePendingStatusDescription[] =
2457 "Enables pending download status text in notifications and Downloads Home "
2458 "to state the reason the request is pending.";
2459
2460const char kOfflinePagesInDownloadHomeOpenInCctName[] =
2461 "Enables offline pages in the downloads home to be opened in CCT.";
2462const char kOfflinePagesInDownloadHomeOpenInCctDescription[] =
2463 "When enabled offline pages launched from the Downloads Home will be "
2464 "opened in Chrome Custom Tabs (CCT) instead of regular tabs.";
2465
Carlos Knippschild09272ecd2017-12-09 03:29:362466const char kOfflinePagesLimitlessPrefetchingName[] =
2467 "Removes resource usage limits for the prefetching of offline pages.";
2468const char kOfflinePagesLimitlessPrefetchingDescription[] =
2469 "Allows the prefetching of suggested offline pages to ignore resource "
2470 "usage limits. This allows it to completely ignore data usage limitations "
2471 "and allows downloads to happen with any kind of connection.";
2472
Brett Wilsonff596952017-07-14 01:06:552473const char kOfflinePagesLoadSignalCollectingName[] =
2474 "Enables collecting load timing data for offline page snapshots.";
2475const char kOfflinePagesLoadSignalCollectingDescription[] =
2476 "Enables loading completeness data collection while writing an offline "
2477 "page. This data is collected in the snapshotted offline page to allow "
2478 "data analysis to improve deciding when to make the offline snapshot.";
2479
2480const char kOfflinePagesPrefetchingName[] =
2481 "Enables suggested offline pages to be prefetched.";
2482const char kOfflinePagesPrefetchingDescription[] =
2483 "Enables suggested offline pages to be prefetched, so useful content is "
2484 "available while offline.";
2485
Pete Williamson7845dff2017-09-20 11:06:192486const char kOfflinePagesResourceBasedSnapshotName[] =
2487 "Enables offline page snapshots to be based on percentage of page loaded.";
2488const char kOfflinePagesResourceBasedSnapshotDescription[] =
2489 "Enables offline page snapshots to use a resource percentage based "
2490 "approach for determining when the page is loaded as opposed to a time "
2491 "based approach";
2492
Collin Baker17f92a52017-07-19 21:41:252493const char kOfflinePagesRenovationsName[] = "Enables offline page renovations.";
2494const char kOfflinePagesRenovationsDescription[] =
2495 "Enables offline page renovations which correct issues with dynamic "
2496 "content that occur when offlining pages that use JavaScript.";
2497
Yafei Duan36b4b5b2018-08-07 00:40:032498const char kOfflinePagesLivePageSharingName[] =
2499 "Enables live page sharing of offline pages";
2500const char kOfflinePagesLivePageSharingDescription[] =
2501 "Enables to share current loaded page as offline page by saving as MHTML "
2502 "first.";
2503
Cathy Lie0d88762018-04-12 08:03:012504const char kOfflinePagesShowAlternateDinoPageName[] =
2505 "Enable alternate dino page with more user capabilities.";
2506const char kOfflinePagesShowAlternateDinoPageDescription[] =
2507 "Enables the dino page to show more buttons and offer existing offline "
2508 "content.";
2509
Brett Wilsonff596952017-07-14 01:06:552510const char kOffliningRecentPagesName[] =
2511 "Enable offlining of recently visited pages";
2512const char kOffliningRecentPagesDescription[] =
2513 "Enable storing recently visited pages locally for offline use. Requires "
2514 "Offline Pages to be enabled.";
2515
Matthew Jonesa88b95852017-11-08 23:13:502516const char kProgressBarThrottleName[] = "Android progress update throttling.";
2517const char kProgressBarThrottleDescription[] =
2518 "Limit the maximum progress update to make progress appear smoother.";
2519
Piotr Swigon7c296ef2017-08-29 04:32:002520const char kPwaImprovedSplashScreenName[] =
2521 "Improved Splash Screen for standalone PWAs";
2522const char kPwaImprovedSplashScreenDescription[] =
2523 "Enables the Improved Splash Screen UX for standalone PWAs based on new "
2524 "Web App Manifest attributes";
Piotr Swigon9f630b32017-07-26 09:42:492525const char kPwaPersistentNotificationName[] =
2526 "Persistent notification in standalone PWA";
2527const char kPwaPersistentNotificationDescription[] =
2528 "Enables a persistent Android notification for standalone PWAs";
2529
Brett Wilsonff596952017-07-14 01:06:552530const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
2531const char kReaderModeHeuristicsDescription[] =
2532 "Determines what pages the Reader Mode infobar is shown on.";
2533const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
2534const char kReaderModeHeuristicsAdaboost[] = "Non-mobile-friendly articles";
2535const char kReaderModeHeuristicsAllArticles[] = "All articles";
2536const char kReaderModeHeuristicsAlwaysOff[] = "Never";
2537const char kReaderModeHeuristicsAlwaysOn[] = "Always";
2538
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:182539const char kReaderModeInCCTName[] = "Reader Mode in CCT";
2540const char kReaderModeInCCTDescription[] =
2541 "Open Reader Mode in Chrome Custom Tabs.";
2542
Varun Khaneja2a8229f2019-01-12 00:57:262543const char kSafeBrowsingTelemetryForApkDownloadsName[] =
2544 "Send some telemetry for APK downloads for extended reporting users";
2545const char kSafeBrowsingTelemetryForApkDownloadsDescription[] =
2546 "If enabled, sends some information about the source and hash of the "
2547 "contents of any APK files downloaded by a user who has opted into Safe "
2548 "Browsing Extended Reporting already.";
2549
Varun Khaneja80712a82018-10-12 23:34:592550const char kSafeBrowsingUseLocalBlacklistsV2Name[] =
2551 "Use local Safe Browsing blacklists";
2552const char kSafeBrowsingUseLocalBlacklistsV2Description[] =
2553 "If enabled, maintain a copy of Safe Browsing blacklists in the browser "
2554 "process to check the Safe Browsing reputation of URLs without calling "
2555 "into GmsCore for every URL.";
2556
Matthew Jones53114262018-12-12 16:36:472557const char kSearchReadyOmniboxName[] = "Search Ready Omnibox";
2558const char kSearchReadyOmniboxDescription[] =
2559 "Clears the omnibox and adds a suggestion item to share, copy, or edit the "
2560 "URL.";
2561
Brett Wilsonff596952017-07-14 01:06:552562const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2563const char kSetMarketUrlForTestingDescription[] =
2564 "When enabled, sets the market URL for use in testing the update menu "
2565 "item.";
2566
Theresaeea05a12018-05-09 21:01:592567const char kSiteExplorationUiName[] = "Site Exploration UI";
2568const char kSiteExplorationUiDescription[] =
2569 "Show site suggestions in the Exploration UI";
2570
Alex Moshchuk07e1bb42019-03-08 04:44:082571const char kSiteIsolationForPasswordSitesName[] =
2572 "Site Isolation For Password Sites";
2573const char kSiteIsolationForPasswordSitesDescription[] =
2574 "Security mode that enables site isolation for sites based on "
2575 "password-oriented heuristics, such as a user typing in a password.";
2576
Lei Zhang0a318af2018-11-14 02:19:462577const char kStrictSiteIsolationName[] = "Strict site isolation";
2578const char kStrictSiteIsolationDescription[] =
2579 "Security mode that enables site isolation for all sites (SitePerProcess). "
2580 "In this mode, each renderer process will contain pages from at most one "
2581 "site, using out-of-process iframes when needed. "
2582 "Check chrome://process-internals to see the current isolation mode. "
2583 "Setting this flag to 'Enabled' turns on site isolation regardless of the "
2584 "default. Here, 'Disabled' is a legacy value that actually means "
2585 "'Default,' in which case site isolation may be already enabled based on "
2586 "platform, enterprise policy, or field trial. See also "
2587 "#site-isolation-trial-opt-out for how to disable site isolation for "
2588 "testing.";
2589
Anthony Vallee-Dubois4623e1b2018-10-11 22:09:182590const char kTranslateAndroidManualTriggerName[] =
2591 "Enable manual translate trigger";
2592const char kTranslateAndroidManualTriggerDescription[] =
2593 "Show a menu item in the main menu that triggers page translation.";
2594
Brett Wilsonff596952017-07-14 01:06:552595const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2596const char kUpdateMenuBadgeDescription[] =
Tommy Nyquist3c02e592018-10-18 23:36:442597 "When enabled, a badge will be shown on the app menu button if the update "
2598 "type is Update Available or Unsupported OS Version.";
Brett Wilsonff596952017-07-14 01:06:552599
2600const char kUpdateMenuItemCustomSummaryDescription[] =
2601 "When this flag and the force show update menu item flag are enabled, a "
2602 "custom summary string will be displayed below the update menu item.";
2603const char kUpdateMenuItemCustomSummaryName[] =
2604 "Update menu item custom summary";
2605
Tommy Nyquist3c02e592018-10-18 23:36:442606const char kUpdateMenuTypeName[] =
2607 "Forces the update menu type to a specific type";
2608const char kUpdateMenuTypeDescription[] =
2609 "When set, forces the update type to be a specific one, which impacts "
Tommy Nyquist023d505f2019-02-16 02:18:382610 "the app menu badge and menu item for updates. For Inline Update, the "
2611 "update available flag is implied. The 'Inline Update: Success' selection "
2612 "goes through the whole inline update flow to the end with a successful "
2613 "outcome. The other 'Inline Update' options go through the same flow, but "
2614 "stop at various stages, see their error type for details.";
Tommy Nyquist3c02e592018-10-18 23:36:442615const char kUpdateMenuTypeNone[] = "None";
2616const char kUpdateMenuTypeUpdateAvailable[] = "Update Available";
2617const char kUpdateMenuTypeUnsupportedOSVersion[] = "Unsupported OS Version";
Tommy Nyquist023d505f2019-02-16 02:18:382618const char kUpdateMenuTypeInlineUpdateSuccess[] = "Inline Update: Success";
2619const char kUpdateMenuTypeInlineUpdateDialogCanceled[] =
2620 "Inline Update Error: Dialog Canceled";
2621const char kUpdateMenuTypeInlineUpdateDialogFailed[] =
2622 "Inline Update Error: Dialog Failed";
2623const char kUpdateMenuTypeInlineUpdateDownloadFailed[] =
2624 "Inline Update Error: Download Failed";
2625const char kUpdateMenuTypeInlineUpdateDownloadCanceled[] =
2626 "Inline Update Error: Download Canceled";
2627const char kUpdateMenuTypeInlineUpdateInstallFailed[] =
2628 "Inline Update Error: Install Failed";
Brett Wilsonff596952017-07-14 01:06:552629
Tommy Nyquist26ffb642019-02-20 20:31:522630const char kInlineUpdateFlowName[] = "Enable Google Play inline update flow";
2631const char kInlineUpdateFlowDescription[] =
2632 "When this flag is set, instead of taking the user to the Google Play "
2633 "Store when an update is available, the user is presented with an inline "
2634 "flow where they do not have to leave Chrome until the update is ready "
2635 "to install.";
2636
Becky Zhou65584142019-01-10 18:22:292637#if BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2638
Becky Zhoubcac628f2019-02-28 18:22:372639const char kAndroidNightModeName[] = "Android Chrome UI dark mode";
Becky Zhou65584142019-01-10 18:22:292640const char kAndroidNightModeDescription[] =
Becky Zhoubcac628f2019-02-28 18:22:372641 "If enabled, user can enable Android Chrome UI dark mode through settings.";
Becky Zhou65584142019-01-10 18:22:292642
2643#endif // BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2644
Brett Wilson7b44537e2017-08-18 01:38:282645// Non-Android -----------------------------------------------------------------
Brett Wilsonff596952017-07-14 01:06:552646
Brett Wilson7b44537e2017-08-18 01:38:282647#else // !defined(OS_ANDROID)
brettw5f9c1642017-05-14 17:12:482648
Brett Wilson7b44537e2017-08-18 01:38:282649const char kAccountConsistencyName[] =
2650 "Identity consistency between browser and cookie jar";
2651const char kAccountConsistencyDescription[] =
2652 "When enabled, the browser manages signing in and out of Google accounts.";
2653const char kAccountConsistencyChoiceMirror[] = "Mirror";
2654const char kAccountConsistencyChoiceDice[] = "Dice";
vabr0215a8e2017-03-28 12:47:342655
Reka Normana11e57fc2019-01-29 21:56:582656const char kAppManagementName[] = "Enable App Management page";
2657const char kAppManagementDescription[] =
2658 "Shows the new app management page at chrome://apps.";
2659
Kristi Parkc9b9d6592019-02-12 22:30:382660const char kRemoveNtpFakeboxName[] = "Remove fakebox from the NTP";
2661const char kRemoveNtpFakeboxDescription[] =
2662 "Do not show the fakebox on the New Tab page.";
2663
Kyle Milka24687352019-04-11 21:13:082664const char kNtpCustomizationMenuV2Name[] = "NTP customization menu version 2";
2665const char kNtpCustomizationMenuV2Description[] =
2666 "Use the second version of the NTP customization menu.";
2667
Aran Gilman766c2ad2019-04-18 00:15:412668const char kEnableReaderModeName[] = "Enable Reader Mode";
2669const char kEnableReaderModeDescription[] =
2670 "Allows viewing of simplified web pages by selecting 'Customize and "
2671 "control Chrome'>'Distill page'";
2672
Lei Zhang0a318af2018-11-14 02:19:462673const char kEnableWebAuthenticationBleSupportName[] =
2674 "Web Authentication API BLE support";
2675const char kEnableWebAuthenticationBleSupportDescription[] =
2676 "Enable support for using Web Authentication API via Bluetooth security "
2677 "keys";
Sebastien Marchandd33f7dc2018-06-22 22:07:062678
Sebastien Marchandd33f7dc2018-06-22 22:07:062679const char kEnableWebAuthenticationTestingAPIName[] =
2680 "Web Authentication Testing API";
2681const char kEnableWebAuthenticationTestingAPIDescription[] =
2682 "Enable Web Authentication Testing API support, which disconnects the API "
2683 "implementation from the real world, and allows configuring virtual "
2684 "authenticator devices for testing";
2685
Jeffrey Cohenf04130a42018-08-29 00:22:272686const char kHappinessTrackingSurveysForDesktopName[] =
2687 "Happiness Tracking Surveys";
2688const char kHappinessTrackingSurveysForDesktopDescription[] =
2689 "Enable showing Happiness Tracking Surveys to users on Desktop";
2690
Maggie Caib3e2a6c2019-03-12 05:12:542691const char kIntentPickerName[] = "Intent picker";
2692const char kIntentPickerDescription[] =
2693 "When going to a site that has URL managable by a PWA, show the intent"
2694 "picker to allow user to open the URL in the app.";
2695
Travis Skarebcdb5ed32018-08-17 01:49:402696const char kOmniboxDriveSuggestionsName[] =
2697 "Omnibox Google Drive Document suggestions";
2698const char kOmniboxDriveSuggestionsDescriptions[] =
2699 "Display suggestions for Google Drive documents in the omnibox when Google "
2700 "is the default search engine.";
2701
Travis Skare13ad69c2019-03-06 21:01:022702const char kOmniboxDeduplicateDriveUrlsName[] =
2703 "Deduplicate Google Drive suggestions in the Omnibox";
2704const char kOmniboxDeduplicateDriveUrlsDescription[] =
2705 "Present at most one result for the same Drive document across bookmarks, "
2706 "history, document, etc. suggestions.";
2707
Kevin Bailey9ec05532019-01-31 23:01:332708const char kOmniboxExperimentalKeywordModeName[] =
2709 "Omnibox Experimental Keyword Mode";
2710const char kOmniboxExperimentalKeywordModeDescription[] =
2711 "Enables various experimental features related to keyword mode, its "
2712 "suggestions and layout";
2713
Lei Zhang0a318af2018-11-14 02:19:462714const char kOmniboxPedalSuggestionsName[] = "Omnibox Pedal suggestions";
2715const char kOmniboxPedalSuggestionsDescription[] =
Orin Jaworski506db4d2019-02-14 20:17:142716 "Enable omnibox Pedal suggestions to accelerate actions within Chrome by "
2717 "detecting user intent and offering direct access to the end goal.";
Lei Zhang0a318af2018-11-14 02:19:462718
Orin Jaworski04c08b42018-07-11 02:39:562719const char kOmniboxReverseAnswersName[] = "Omnibox reverse answers";
2720const char kOmniboxReverseAnswersDescription[] =
manukaddd3c42019-04-09 21:20:592721 "Display answers with rows reversed (swapped); except definitions.";
Orin Jaworski04c08b42018-07-11 02:39:562722
Kevin Baileya5f17452019-02-13 01:52:032723const char kOmniboxReverseTabSwitchLogicName[] =
2724 "Omnibox reverse tab switch logic";
2725const char kOmniboxReverseTabSwitchLogicDescription[] =
2726 "Reverse the logic of suggestions that have a tab switch button: Have "
2727 "them switch by default, and have the button navigate.";
2728
Tommy C. Li065ddce72019-04-11 22:55:122729const char kOmniboxSuggestionTransparencyOptionsName[] =
2730 "Omnibox Suggestion Transparency Options";
2731const char kOmniboxSuggestionTransparencyOptionsDescription[] =
2732 "Improves transparency of and control over omnibox suggestions. This "
2733 "includes UI cues (like a clock icon for Search History suggestions), as "
2734 "well as user controls to delete personalized suggestions.";
2735
Kevin Bailey898669972017-11-06 15:34:492736const char kOmniboxTabSwitchSuggestionsName[] =
2737 "Omnibox tab switch suggestions";
2738const char kOmniboxTabSwitchSuggestionsDescription[] =
manukaddd3c42019-04-09 21:20:592739 "Enable suggestions for switching to open tabs within the Omnibox.";
Kevin Bailey898669972017-11-06 15:34:492740
krbcc621412017-06-01 19:40:282741const char kOmniboxTailSuggestionsName[] = "Omnibox tail suggestions";
2742const char kOmniboxTailSuggestionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192743 "Enable receiving tail suggestions, a type of search suggestion based on "
2744 "the last few words in the query, for the Omnibox.";
vabr0215a8e2017-03-28 12:47:342745
Sebastien Marchandd33f7dc2018-06-22 22:07:062746const char kProactiveTabFreezeAndDiscardName[] =
2747 "Proactive Tab Freeze and Discard";
2748const char kProactiveTabFreezeAndDiscardDescription[] =
2749 "Enables proactive tab freezing and discarding. This requires "
2750 "#enable-page-almost-idle.";
2751
Nicolas Ouellet-payeur82eb65b2018-11-05 16:49:272752const char kShowManagedUiName[] = "Show managed UI for managed users";
2753const char kShowManagedUiDescription[] =
2754 "Enabled/disable showing enterprise users a 'Managed by your organization' "
2755 "message in the app menu and on some chrome:// pages.";
2756
Brett Wilson7b44537e2017-08-18 01:38:282757#if defined(GOOGLE_CHROME_BUILD)
2758
2759const char kGoogleBrandedContextMenuName[] =
2760 "Google branding in the context menu";
2761const char kGoogleBrandedContextMenuDescription[] =
2762 "Shows a Google icon next to context menu items powered by Google "
2763 "services.";
2764
2765#endif // !defined(GOOGLE_CHROME_BUILD)
2766
2767#endif // !defined(OS_ANDROID)
2768
2769// Windows ---------------------------------------------------------------------
2770
2771#if defined(OS_WIN)
2772
David Bienvenud0ddda32018-11-01 16:59:162773const char kCalculateNativeWinOcclusionName[] =
2774 "Calculate window occlusion on Windows";
2775const char kCalculateNativeWinOcclusionDescription[] =
2776 "Calculate window occlusion on Windows will be used in the future "
2777 "to throttle and potentially unload foreground tabs in occluded windows";
2778
Brett Wilson7b44537e2017-08-18 01:38:282779const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
2780const char kCloudPrintXpsDescription[] =
2781 "XPS enables advanced options for classic printers connected to the Cloud "
2782 "Print with Chrome. Printers must be re-connected after changing this "
2783 "flag.";
2784
Frank Liberato754d14f2019-01-30 23:31:172785const char kD3D11VideoDecoderName[] = "D3D11 Video Decoder";
2786const char kD3D11VideoDecoderDescription[] =
2787 "Enables D3D11VideoDecoder for hardware accelerated video decoding.";
2788
Brett Wilson7b44537e2017-08-18 01:38:282789const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
2790const char kDisablePostscriptPrintingDescription[] =
2791 "Disables PostScript generation when printing to PostScript capable "
2792 "printers, and uses EMF generation in its place.";
2793
2794const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
2795const char kEnableAppcontainerDescription[] =
2796 "Enables the use of an AppContainer on sandboxed processes to improve "
2797 "security.";
2798
James Forshawfd0ce342018-02-14 09:55:392799const char kEnableGpuAppcontainerName[] = "Enable GPU AppContainer Lockdown.";
2800const char kEnableGpuAppcontainerDescription[] =
2801 "Enables the use of an AppContainer for the GPU sandboxed processes to "
2802 "improve security.";
2803
Brett Wilson7b44537e2017-08-18 01:38:282804const char kGdiTextPrinting[] = "GDI Text Printing";
2805const char kGdiTextPrintingDescription[] =
2806 "Use GDI to print text as simply text";
2807
Olli Etuaho122321192018-09-07 10:15:292808const char kUseAngleName[] = "Choose ANGLE graphics backend";
2809const char kUseAngleDescription[] =
2810 "Choose the graphics backend for ANGLE. D3D11 is used on most Windows "
2811 "computers by default. Using the OpenGL driver as the graphics backend may "
2812 "result in higher performance in some graphics-heavy applications, "
2813 "particularly on NVIDIA GPUs. It can increase battery and memory usage of "
2814 "video playback.";
2815
2816const char kUseAngleDefault[] = "Default";
2817const char kUseAngleGL[] = "OpenGL";
2818const char kUseAngleD3D11[] = "D3D11";
2819const char kUseAngleD3D9[] = "D3D9";
2820
Brett Wilson7b44537e2017-08-18 01:38:282821const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2822const char kUseWinrtMidiApiDescription[] =
2823 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
2824 "later).";
2825
Brett Wilson7b44537e2017-08-18 01:38:282826#endif // defined(OS_WIN)
2827
2828// Mac -------------------------------------------------------------------------
2829
2830#if defined(OS_MACOSX)
2831
Brett Wilson7b44537e2017-08-18 01:38:282832const char kContentFullscreenName[] = "Improved Content Fullscreen";
2833const char kContentFullscreenDescription[] =
2834 "Fullscreen content window detaches from main browser window and goes to "
2835 "a new space without moving or changing the original browser window.";
2836
Sidney San Martín678fd4112019-03-30 00:13:052837const char kImmersiveFullscreenName[] = "Immersive Fullscreen Toolbar";
2838const char kImmersiveFullscreenDescription[] =
2839 "Automatically hide and show the toolbar in fullscreen.";
2840
Brett Wilson7b44537e2017-08-18 01:38:282841const char kHostedAppsInWindowsName[] =
2842 "Allow hosted apps to be opened in windows";
2843const char kHostedAppsInWindowsDescription[] =
2844 "Allows hosted apps to be opened in windows instead of being limited to "
2845 "tabs.";
2846
Christopher Cameron57dee5a42018-09-25 01:20:082847const char kCreateAppWindowsInAppShimProcessName[] =
2848 "Create native windows in the app process";
2849const char kCreateAppWindowsInAppShimProcessDescription[] =
2850 "Create native windows the app shim process, instead of of the browser "
2851 "process.";
2852
Lei Zhange065b572018-12-11 08:00:412853const char kEnableCustomMacPaperSizesName[] = "Enable custom paper sizes";
2854const char kEnableCustomMacPaperSizesDescription[] =
2855 "Allow use of custom paper sizes in Print Preview.";
2856
Lei Zhang2eca9082017-10-17 20:42:502857const char kMacTouchBarName[] = "Hardware Touch Bar";
2858const char kMacTouchBarDescription[] = "Control the use of the Touch Bar.";
Brett Wilson7b44537e2017-08-18 01:38:282859
Greg Kerr32483d1c2018-12-18 02:29:142860const char kMacV2GPUSandboxName[] = "Mac V2 GPU Sandbox";
2861const char kMacV2GPUSandboxDescription[] =
2862 "Controls whether the GPU process on macOS uses the V1 or V2 sandbox.";
2863
Brett Wilson7b44537e2017-08-18 01:38:282864const char kMacViewsNativeAppWindowsName[] = "Toolkit-Views App Windows.";
2865const char kMacViewsNativeAppWindowsDescription[] =
2866 "Controls whether to use Toolkit-Views based Chrome App windows.";
2867
2868const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
2869const char kMacViewsTaskManagerDescription[] =
2870 "Controls whether to use the Toolkit-Views based Task Manager.";
2871
Henrik Grunellabaf7182019-04-12 09:15:192872const char kMacSystemMediaPermissionsInfoUiName[] =
2873 "System media permissions info UI";
2874const char kMacSystemMediaPermissionsInfoUiDescription[] =
2875 "In case a website is trying to use the camera/microphone, but Chrome "
2876 "itself is blocked on the system level to access these, show an icon in "
2877 "the Omnibox, which, when clicked, displays a bubble with information on "
2878 "how to toggle Chrome's system-level media permissions.";
2879
Brett Wilson7b44537e2017-08-18 01:38:282880#endif
2881
2882// Chrome OS -------------------------------------------------------------------
vabr0215a8e2017-03-28 12:47:342883
2884#if defined(OS_CHROMEOS)
2885
Brett Wilson7b44537e2017-08-18 01:38:282886const char kAcceleratedMjpegDecodeName[] =
2887 "Hardware-accelerated mjpeg decode for captured frame";
2888const char kAcceleratedMjpegDecodeDescription[] =
2889 "Enable hardware-accelerated mjpeg decode for captured frame where "
2890 "available.";
vabr0215a8e2017-03-28 12:47:342891
Reka Normana11e57fc2019-01-29 21:56:582892const char kAppServiceAshName[] = "App Service Ash";
2893const char kAppServiceAshDescription[] =
2894 "Use the App Service to provide data to the Ash UI, such as the shelf and "
2895 "app list.";
2896
Bruno Kim Medeiros Cesarb98fe1d82018-06-06 18:11:522897const char kArcAvailableForChildName[] = "Allow ARC for child accounts";
2898const char kArcAvailableForChildDescription[] =
2899 "Allow child accounts to start Android apps.";
2900
Brett Wilson7b44537e2017-08-18 01:38:282901const char kArcBootCompleted[] = "Load Android apps automatically";
2902const char kArcBootCompletedDescription[] =
2903 "Allow Android apps to start automatically after signing in.";
vabr0215a8e2017-03-28 12:47:342904
Luum Habtemariamdaa8fd22018-06-25 22:39:432905const char kArcCupsApiName[] = "ARC CUPS API";
2906const char kArcCupsApiDescription[] =
2907 "Enables support of libcups APIs from ARC";
2908
Ryo Hashimoto8f4b30ced2019-04-08 12:14:192909const char kArcCustomTabsExperimentName[] =
2910 "Enable Custom Tabs experiment for ARC";
2911const char kArcCustomTabsExperimentDescription[] =
2912 "Allow Android apps to use Custom Tabs."
2913 "This feature only works on the Canary and Dev channels.";
2914
Naoki Fukino153de8a2019-01-22 08:37:542915const char kArcDocumentsProviderName[] = "ARC DocumentsProvider integration";
2916const char kArcDocumentsProviderDescription[] =
2917 "Enables DocumentsProvider integration in Chrome OS Files app.";
2918
Satoshi Niwa8b1d5282018-10-24 04:53:032919const char kArcFilePickerExperimentName[] =
2920 "Enable file picker experiment for ARC";
2921const char kArcFilePickerExperimentDescription[] =
2922 "Enables using Chrome OS file picker in ARC.";
2923
[email protected]939ceae2019-01-29 17:00:152924const char kArcGraphicBuffersVisualizationToolName[] =
2925 "Enable ARC graphic buffers visualization tool";
2926const char kArcGraphicBuffersVisualizationToolDescription[] =
2927 "Enable ARC graphic buffers visualization tool "
2928 "(chrome://arc-graphics-tracing).";
2929
Lev Rumyantsev7a8544312017-08-18 19:26:512930const char kArcNativeBridgeExperimentName[] =
2931 "Enable native bridge experiment for ARC";
2932const char kArcNativeBridgeExperimentDescription[] =
2933 "Enables experimental native bridge feature.";
2934
Jesse Schettlerc3d0a652019-04-23 18:49:242935const char kArcPrintSpoolerExperimentName[] =
2936 "Enable print spooler experiment for ARC";
2937const char kArcPrintSpoolerExperimentDescription[] =
2938 "Enables using Chrome OS print system and print preview in ARC.";
2939
lgchengecd1c1a62018-01-09 02:59:462940const char kArcUsbHostName[] = "Enable ARC USB host integration";
2941const char kArcUsbHostDescription[] =
2942 "Allow Android apps to use USB host feature on ChromeOS devices.";
2943
Kevin Cernekeeb7f96a52017-10-25 17:40:182944const char kArcVpnName[] = "Enable ARC VPN integration";
2945const char kArcVpnDescription[] =
2946 "Allow Android VPN clients to tunnel Chrome traffic.";
2947
Qiang Xu045aff222018-05-21 23:21:012948const char kAshEnableDisplayMoveWindowAccelsName[] =
2949 "Enable shortcuts for moving window between displays.";
2950const char kAshEnableDisplayMoveWindowAccelsDescription[] =
2951 "Enable shortcuts for moving window between displays.";
2952
Sammie Quonfe640ca2019-01-30 17:54:182953const char kAshEnableOverviewRoundedCornersName[] =
2954 "Enable rounded corners in overview mode.";
2955const char kAshEnableOverviewRoundedCornersDescription[] =
2956 "Enables rounded corners on overview windows.";
2957
Qiang Xu045aff222018-05-21 23:21:012958const char kAshEnablePersistentWindowBoundsName[] =
2959 "Enable persistent window bounds in multi-displays scenario.";
2960const char kAshEnablePersistentWindowBoundsDescription[] =
2961 "Enable persistent window bounds in multi-displays scenario.";
2962
Eliot Courtneye87a9c32018-11-20 03:33:022963const char kAshEnablePipRoundedCornersName[] =
2964 "Enable Picture-in-Picture rounded corners.";
2965const char kAshEnablePipRoundedCornersDescription[] =
2966 "Enable rounded corners on the Picture-in-Picture window.";
2967
Brett Wilson7b44537e2017-08-18 01:38:282968const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
2969const char kAshEnableUnifiedDesktopDescription[] =
2970 "Enable unified desktop mode which allows a window to span multiple "
2971 "displays.";
vabr0215a8e2017-03-28 12:47:342972
Sean Kau5e956192017-10-06 22:25:172973const char kBulkPrintersName[] = "Bulk Printers Policy";
2974const char kBulkPrintersDescription[] = "Enables the new bulk printers policy";
2975
Xiaochu Liu51d03fd2017-09-08 23:51:022976const char kCrOSContainerName[] = "Chrome OS Container";
2977const char kCrOSContainerDescription[] =
2978 "Enable the use of Chrome OS Container utility.";
2979
Brett Wilson7b44537e2017-08-18 01:38:282980const char kCrosRegionsModeName[] = "Cros-regions load mode";
2981const char kCrosRegionsModeDescription[] =
2982 "This flag controls cros-regions load mode";
2983const char kCrosRegionsModeDefault[] = "Default";
2984const char kCrosRegionsModeOverride[] = "Override VPD values.";
2985const char kCrosRegionsModeHide[] = "Hide VPD values.";
vabr0215a8e2017-03-28 12:47:342986
Daniel Ng96ab0c82019-01-16 01:21:552987const char kCrostiniAppSearchName[] = "Crostini App Search";
2988const char kCrostiniAppSearchDescription[] =
2989 "Enable search and installation of Crostini apps in the launcher.";
2990
Joel Hockey42387102019-01-10 01:19:322991const char kCrostiniBackupName[] = "Crostini Backup";
2992const char kCrostiniBackupDescription[] = "Enable Crostini export and import.";
2993
Nicholas Verne89be53b2019-03-27 23:08:322994const char kCrostiniUsbAllowUnsupportedName[] =
2995 "Crostini Usb Allow Unsupported";
2996const char kCrostiniUsbAllowUnsupportedDescription[] =
2997 "Allow mounting unsupported Usb devices in Crostini. At your own risk. "
2998 "To enable, Crostini Usb Support must also be enabled.";
2999
Josh Pratt57cea392018-10-30 02:59:063000const char kCrostiniUsbSupportName[] = "Crostini Usb Support";
3001const char kCrostiniUsbSupportDescription[] =
3002 "Enable mounting Usb devices in Crostini.";
3003
Josh Nohle2f82dcc2018-12-17 23:11:233004const char kCryptAuthV2EnrollmentName[] = "CryptAuth v2 Enrollment";
3005const char kCryptAuthV2EnrollmentDescription[] =
3006 "Use the CryptAuth v2 Enrollment protocol.";
3007
Daniele Castagna893d822e2019-03-08 21:37:113008const char kDisableExplicitDmaFencesName[] = "Disable explicit dma-fences";
3009const char kDisableExplicitDmaFencesDescription[] =
3010 "Always rely on implicit syncrhonization between GPU and display "
3011 "controller instead of using dma-fences explcitily when available.";
3012
Sammie Quonef6b4882017-09-14 16:50:053013const char kDisableTabletAutohideTitlebarsName[] =
3014 "Disable autohide titlebars in tablet mode";
3015const char kDisableTabletAutohideTitlebarsDescription[] =
3016 "Disable tablet mode autohide titlebars functionality. The user will be "
3017 "able to see the titlebar in tablet mode.";
3018
Xiaoqian Dai24b33eb2018-04-10 21:01:573019const char kDisableTabletSplitViewName[] = "Disable split view in Tablet mode";
3020const char kDisableTabletSplitViewDescription[] =
3021 "Disable split view for Chrome OS tablet mode.";
3022
Ahmed Fakhry4f567e692018-10-16 15:51:083023const char kDoubleTapToZoomInTabletModeName[] =
3024 "Double-tap to zoom in tablet mode";
3025const char kDoubleTapToZoomInTabletModeDescription[] =
3026 "If Enabled, double tapping in webpages while in tablet mode will zoom the "
3027 "page.";
3028
Matthew Mourgoscf22b4b2019-03-06 23:46:393029const char kEnableAppGridGhostName[] = "App Grid Ghosting";
3030const char kEnableAppGridGhostDescription[] =
3031 "Enables ghosting during an item drag in launcher.";
3032
Daniel Zhang01399072018-08-16 22:28:203033const char kEnableAppListSearchAutocompleteName[] =
3034 "App List Search Autocomplete";
3035const char kEnableAppListSearchAutocompleteDescription[] =
3036 "Allow App List search box to autocomplete queries for Google searches and "
3037 "apps.";
3038
Vladislav Kaznacheevaa213a02018-10-29 17:54:283039const char kEnableAppDataSearchName[] = "Enable app data search in launcher";
3040const char kEnableAppDataSearchDescription[] =
3041 "Allow launcher search to access data available through Firebase App "
3042 "Indexing";
3043
Lei Zhang0a318af2018-11-14 02:19:463044const char kEnableArcUnifiedAudioFocusName[] =
Becca Hughes34415e82018-10-05 18:47:373045 "Enable unified audio focus on ARC";
Lei Zhang0a318af2018-11-14 02:19:463046const char kEnableArcUnifiedAudioFocusDescription[] =
Becca Hughes34415e82018-10-05 18:47:373047 "If audio focus is enabled in Chrome then this will delegate audio focus "
3048 "control in Android apps to Chrome.";
3049
Yue Liebaa9952018-12-07 21:41:263050const char kEnableAssistantAppSupportName[] = "Enable Assistant App Support";
3051const char kEnableAssistantAppSupportDescription[] =
3052 "Enable the Assistant App Support feature";
3053
Meilin Wangb57f92f2019-04-19 04:27:103054const char kEnableAssistantKeyRemappingName[] =
3055 "Enable Assistant Key Remapping";
3056const char kEnableAssistantKeyRemappingDescription[] =
3057 "Allow Assistant key remapping in the keyboard settings.";
3058
Xiaohui Chenb523747b2019-03-14 23:38:323059const char kEnableAssistantLauncherIntegrationName[] =
3060 "Assistant & Launcher integration";
3061const char kEnableAssistantLauncherIntegrationDescription[] =
3062 "Combine Launcher search with the power of Assistant to provide the most "
3063 "useful answer for each query. Requires Assistant to be enabled.";
3064
3065const char kEnableAssistantVoiceMatchName[] = "Enable Assistant Voice Match";
3066const char kEnableAssistantVoiceMatchDescription[] =
3067 "Enable the Assistant Voice Match feature";
3068
Lei Zhang0ca70ea2018-09-07 17:51:013069const char kEnableChromeOsAccountManagerName[] = "Enable Account Manager";
3070const char kEnableChromeOsAccountManagerDescription[] =
Kushagra Sinha8a181fc2018-08-20 17:15:493071 "Enables the Chrome OS Account Manager";
3072
Alexander Alekseev38e1e0a2018-11-08 22:48:483073const char kEnableDiscoverAppName[] = "Enable Discover App";
3074const char kEnableDiscoverAppDescription[] =
3075 "Enable Discover App icon in launcher.";
3076
Sam McNally201fbf94e2018-07-04 03:15:203077const char kEnableDriveFsName[] = "Enable DriveFS";
3078const char kEnableDriveFsDescription[] =
3079 "Enables use of the new DriveFS-based Drive sync client.";
3080
Brett Wilson7b44537e2017-08-18 01:38:283081const char kEnableEncryptionMigrationName[] =
3082 "Enable encryption migration of user data";
3083const char kEnableEncryptionMigrationDescription[] =
3084 "If enabled and the device supports ARC, the user will be asked to update "
3085 "the encryption of user data when the user signs in.";
vabr0215a8e2017-03-28 12:47:343086
Xiaohui Chenfb0943e2018-10-16 22:44:373087const char kEnableGoogleAssistantName[] = "Enable Google Assistant";
3088const char kEnableGoogleAssistantDescription[] =
3089 "Enable an experimental Assistant implementation that will work on all "
3090 "Chromebooks.";
3091
Xiaohui Chenf4283f32018-11-26 20:02:503092const char kEnableGoogleAssistantDspName[] =
3093 "Enable Google Assistant with hardware-based hotword";
3094const char kEnableGoogleAssistantDspDescription[] =
3095 "Enable an experimental feature that uses hardware-based hotword detection "
3096 "for Assistant. Only a limited number of devices have this type of "
3097 "hardware support.";
3098
Xiaohui Chenc3baca42018-11-30 19:29:373099const char kEnableGoogleAssistantStereoInputName[] =
3100 "Enable Google Assistant with stereo audio input";
3101const char kEnableGoogleAssistantStereoInputDescription[] =
3102 "Enable an experimental feature that uses stereo audio input for hotword "
3103 "and voice to text detection in Google Assistant.";
3104
Qiang Xu045aff222018-05-21 23:21:013105const char kEnableHomeLauncherName[] = "Enable home launcher";
3106const char kEnableHomeLauncherDescription[] =
3107 "Enable home launcher in tablet mode.";
3108
Andrew Moylan97585272019-02-19 19:01:223109const char kEnableMyFilesVolumeName[] = "Enable MyFiles as Volume";
3110const char kEnableMyFilesVolumeDescription[] =
3111 "Enables use of MyFiles as a read/write volume. This should be only "
3112 "used for testing or for trying to restore the previous Downloads content.";
3113
Sammie Quon248ccef2018-08-28 23:00:013114const char kEnableOobeRecommendAppsScreenName[] =
3115 "Enable OOBE Recommend Apps Screen";
3116const char kEnableOobeRecommendAppsScreenDescription[] =
3117 "Enable the Recommend Apps Screen in OOBE which allows user to install apps"
3118 "from other devices";
3119
Vladislav Kaznacheevaa213a02018-10-29 17:54:283120const char kEnablePlayStoreSearchName[] = "Enable Play Store search";
3121const char kEnablePlayStoreSearchDescription[] =
3122 "Enable Play Store search in launcher.";
3123
Jazz Xu2e5886662018-12-14 00:38:483124const char kEnableVideoPlayerNativeControlsName[] =
3125 "Enable native controls in video player app";
3126const char kEnableVideoPlayerNativeControlsDescription[] =
3127 "Enable native controls in video player app";
3128
Lei Zhang0ca70ea2018-09-07 17:51:013129const char kEnableZeroStateSuggestionsName[] = "Enable Zero State Suggetions";
3130const char kEnableZeroStateSuggestionsDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013131 "Enable Zero State Suggestions feature in Launcher, which will show "
Vladislav Kaznacheevaa213a02018-10-29 17:54:283132 "suggestions when launcher search box is active with an empty query";
Sammie Quon248ccef2018-08-28 23:00:013133
Akihiro Ota3ff6f8a2019-01-18 17:43:043134const char kExperimentalAccessibilityChromeVoxLanguageSwitchingName[] =
3135 "Enable experimental ChromeVox language switching.";
3136const char kExperimentalAccessibilityChromeVoxLanguageSwitchingDescription[] =
3137 "Enable ChromeVox language switching, which changes ChromeVox's "
3138 "output language upon detection of new language.";
3139
Akihiro Ota000c5e8a2019-03-29 21:48:013140const char kExperimentalAccessibilityChromeVoxRichTextIndicationName[] =
3141 "Enable experimental ChromeVox rich text indication.";
3142const char kExperimentalAccessibilityChromeVoxRichTextIndicationDescription[] =
3143 "Enable ChromeVox rich text indication, which automatically notifies the "
3144 "user of text styling.";
3145
Alex Danilo284b4482019-04-02 09:20:173146const char kFileManagerFeedbackPanelDescription[] =
3147 "Enable new feedback panel in the Files app.";
3148const char kFileManagerFeedbackPanelName[] = "Files App. feedback panel";
3149
Akihiro Ota000c5e8a2019-03-29 21:48:013150const char kFileManagerTouchModeName[] = "Files App. touch mode";
3151const char kFileManagerTouchModeDescription[] =
3152 "Touchscreen-specific interactions of the Files app.";
3153
3154const char kFirstRunUiTransitionsName[] =
3155 "Animated transitions in the first-run tutorial";
3156const char kFirstRunUiTransitionsDescription[] =
3157 "Transitions during first-run tutorial are animated.";
3158
Brett Wilson7b44537e2017-08-18 01:38:283159const char kForceEnableStylusToolsName[] = "Force enable stylus features";
3160const char kForceEnableStylusToolsDescription[] =
3161 "Forces display of the stylus tools menu in the shelf and the stylus "
3162 "section in settings, even if there is no attached stylus device.";
3163
Andrew Moylan97585272019-02-19 19:01:223164const char kFsNosymfollowName[] =
3165 "Prevent symlink traversal on user-supplied filesystems.";
3166const char kFsNosymfollowDescription[] =
3167 "Causes user-supplied filesystems to be mounted with the 'nosymfollow'"
3168 " option, so the chromuimos LSM denies symlink traversal on the"
3169 " filesystem.";
3170
Brett Wilson7b44537e2017-08-18 01:38:283171const char kGestureTypingName[] = "Gesture typing for the virtual keyboard.";
3172const char kGestureTypingDescription[] =
3173 "Enable/Disable gesture typing option in the settings page for the virtual "
3174 "keyboard.";
3175
Becca Hughes71465532019-04-12 19:18:553176const char kHideArcMediaNotificationsName[] = "Hide ARC media notifications";
3177const char kHideArcMediaNotificationsDescription[] =
3178 "Hides media notifications for ARC apps. Requires "
3179 "#enable-media-session-notifications to be enabled.";
3180
Leo Zhang49c34d22019-04-02 09:57:593181const char kImeInputLogicFstName[] = "Enable FST Input Logic on IME";
3182const char kImeInputLogicFstDescription[] =
3183 "Enable FST Input Logic to replace the IME legacy input logic on NaCl";
3184
Andrew Moylan97585272019-02-19 19:01:223185const char kImeServiceName[] = "Enable IME service";
3186const char kImeServiceDescription[] =
3187 "Enable IME service to provide the IME functionality instead of NaCl";
3188
Ahmed Fakhry15d707e2019-02-22 23:54:213189const char kListAllDisplayModesName[] = "List all display modes";
3190const char kListAllDisplayModesDescription[] =
3191 "Enables listing all external displays' modes in the display settings.";
3192
Megumi Hattori5a0d4182018-03-06 11:09:503193const char kLockScreenNotificationName[] = "Lock screen notification";
3194const char kLockScreenNotificationDescription[] =
3195 "Enable notifications on the lock screen.";
3196
Mohsen Izadi06a16f72018-11-29 02:29:223197const char kMashOopVizName[] = "Out-of-process viz for mash";
3198const char kMashOopVizDescription[] =
3199 "Runs viz in a separate process when mash is enabled (otherwise viz would "
3200 "run in ash process)";
3201
Becca Hughes71465532019-04-12 19:18:553202const char kMediaSessionNotificationsName[] = "Media session notifications";
3203const char kMediaSessionNotificationsDescription[] =
3204 "Shows notifications for media sessions showing the currently playing "
3205 "media and providing playback controls";
3206
Brett Wilson7b44537e2017-08-18 01:38:283207const char kMemoryPressureThresholdName[] =
3208 "Memory discard strategy for advanced pressure handling";
3209const char kMemoryPressureThresholdDescription[] =
3210 "Memory discarding strategy to use";
3211const char kConservativeThresholds[] =
3212 "Conservative memory pressure release strategy";
3213const char kAggressiveCacheDiscardThresholds[] =
3214 "Aggressive cache release strategy";
3215const char kAggressiveTabDiscardThresholds[] =
3216 "Aggressive tab release strategy";
3217const char kAggressiveThresholds[] =
3218 "Aggressive tab and cache release strategy";
3219
vabr0215a8e2017-03-28 12:47:343220const char kNetworkPortalNotificationName[] =
3221 "Notifications about captive portals";
vabr0215a8e2017-03-28 12:47:343222const char kNetworkPortalNotificationDescription[] =
3223 "If enabled, notification is displayed when device is connected to a "
3224 "network behind captive portal.";
3225
Anand K. Mistrydb5e0102018-10-04 04:24:003226const char kNewZipUnpackerName[] = "ZIP Archiver (unpacking)";
Brett Wilson7b44537e2017-08-18 01:38:283227const char kNewZipUnpackerDescription[] =
Anand K. Mistrydb5e0102018-10-04 04:24:003228 "Use the ZIP Archiver for mounting/unpacking ZIP files";
vabr0215a8e2017-03-28 12:47:343229
Qiang Xu045aff222018-05-21 23:21:013230const char kOfficeEditingComponentAppName[] =
3231 "Office Editing for Docs, Sheets & Slides";
3232const char kOfficeEditingComponentAppDescription[] =
3233 "Office Editing for Docs, Sheets & Slides for testing purposes.";
3234
Brett Wilson7b44537e2017-08-18 01:38:283235const char kPhysicalKeyboardAutocorrectName[] = "Physical keyboard autocorrect";
3236const char kPhysicalKeyboardAutocorrectDescription[] =
3237 "Enable physical keyboard autocorrect for US keyboard, which can provide "
3238 "suggestions as typing on physical keyboard.";
vabr0215a8e2017-03-28 12:47:343239
3240const char kPrinterProviderSearchAppName[] =
3241 "Chrome Web Store Gallery app for printer drivers";
vabr0215a8e2017-03-28 12:47:343242const char kPrinterProviderSearchAppDescription[] =
3243 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:193244 "searches Chrome Web Store for extensions that support printing to a USB "
3245 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:343246
Andrew Moylan97585272019-02-19 19:01:223247const char kSchedulerConfigurationName[] = "Scheduler Configuration";
3248const char kSchedulerConfigurationDescription[] =
3249 "Instructs the OS to use a specific scheduler configuration setting.";
3250const char kSchedulerConfigurationConservative[] = "Conservative";
3251const char kSchedulerConfigurationPerformance[] = "Performance";
3252
James Cook0ba192bf2017-12-01 20:53:113253const char kShowTapsName[] = "Show taps";
3254const char kShowTapsDescription[] =
3255 "Draws a circle at each touch point, which makes touch points more obvious "
3256 "when projecting or mirroring the display. Similar to the Android OS "
3257 "developer option.";
3258
3259const char kShowTouchHudName[] = "Show HUD for touch points";
3260const char kShowTouchHudDescription[] =
3261 "Shows a trail of colored dots for the last few touch points. Pressing "
3262 "Ctrl-Alt-I shows a heads-up display view in the top-left corner. Helps "
3263 "debug hardware issues that generate spurious touch events.";
3264
James Cook28d7c482018-09-07 21:00:543265const char kSingleProcessMashName[] =
3266 "In-process window service (SingleProcessMash)";
3267const char kSingleProcessMashDescription[] =
3268 "Runs the system UI (ash) as a mojo service, but inside the browser "
3269 "process. The browser uses the mojo window service (ws) APIs.";
3270
Shu Chen4144c3a2019-04-11 00:54:163271const char kMojoImfName[] = "Mojo-based IMF to bridge the client and IME";
3272const char kMojoImfDescription[] =
3273 "Makes the system UI (ash) as the bridge between the client and the IME via"
3274 " mojo APIs. This can only take effect if the flag \"single-process-masn\" "
3275 "is enabled.";
3276
Jorge Gil5a8ccde2018-07-10 01:46:213277const char kSmartTextSelectionName[] = "Smart Text Selection";
3278const char kSmartTextSelectionDescription[] =
3279 "Shows quick actions for text "
3280 "selections in the context menu.";
3281
Bailey Berro6c989672019-04-11 19:19:203282const char kStreamlinedUsbPrinterSetupName[] =
3283 "Streamlined USB Printer Setup Flow";
3284const char kStreamlinedUsbPrinterSetupDescription[] =
3285 "Automatically sets up capable USB printers when plugged in. Shows a "
3286 "notification with the setup result.";
3287
Brett Wilson7b44537e2017-08-18 01:38:283288const char kTetherName[] = "Instant Tethering";
3289const char kTetherDescription[] =
3290 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
3291 "phone to share its Internet connection with this device.";
stanisc14bed0b132017-05-10 17:46:373292
Brett Wilson7b44537e2017-08-18 01:38:283293const char kTouchscreenCalibrationName[] =
3294 "Enable/disable touchscreen calibration option in material design settings";
3295const char kTouchscreenCalibrationDescription[] =
3296 "If enabled, the user can calibrate the touch screen displays in "
3297 "chrome://settings/display.";
yhanadac5bff5b2017-05-18 06:37:093298
Qiang Xu045aff222018-05-21 23:21:013299const char kUiDevToolsName[] = "Enable native UI inspection";
3300const char kUiDevToolsDescription[] =
3301 "Enables inspection of native UI elements. For local inspection use "
3302 "chrome://inspect#other";
3303
Mitsuru Oshima63d3f2a2017-08-23 00:12:113304// Force UI Mode
3305const char kUiModeName[] = "Force Ui Mode";
3306const char kUiModeDescription[] =
Elly Fong-Jonesf4c15772019-01-31 17:40:063307 "This flag can be used to force a certain mode on to a chromebook, "
3308 "despite its current orientation. \"Tablet\" means that the "
3309 "chromebook will act as if it were in tablet mode. \"Clamshell\" "
3310 "means that the chromebook will act as if it were in clamshell "
3311 "mode. \"Auto\" means that the chromebook will alternate between "
3312 "the two, based on its orientation.";
Min Chenfd25cd22018-11-06 01:50:513313const char kUiModeTablet[] = "Tablet";
Mitsuru Oshima63d3f2a2017-08-23 00:12:113314const char kUiModeClamshell[] = "Clamshell";
3315const char kUiModeAuto[] = "Auto (default)";
3316
Andrew Moylan97585272019-02-19 19:01:223317const char kUiShowCompositedLayerBordersName[] =
3318 "Show UI composited layer borders";
3319const char kUiShowCompositedLayerBordersDescription[] =
3320 "Show border around composited layers created by UI.";
3321const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
3322const char kUiShowCompositedLayerBordersSurface[] = "Surface";
3323const char kUiShowCompositedLayerBordersLayer[] = "Layer";
3324const char kUiShowCompositedLayerBordersAll[] = "All";
3325
3326const char kUiSlowAnimationsName[] = "Slow UI animations";
3327const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
Mattias Nissler6bb633f2019-02-13 23:41:463328
Sonny Sasaka7fecfeda2018-07-11 23:47:553329const char kUnfilteredBluetoothDevicesName[] = "Unfiltered Bluetooth devices";
3330const char kUnfilteredBluetoothDevicesDescription[] =
3331 "Shows all Bluetooth devices in UI (System Tray/Settings Page.)";
3332
Allen Webbcdc8e69d2018-09-12 20:36:003333const char kUsbguardName[] = "Block new USB devices at the lock screen.";
3334const char kUsbguardDescription[] =
3335 "Prevents newly connected USB devices from operating at the lock screen"
3336 " until Chrome OS is unlocked to protect against malicious USB devices."
3337 " Already connected USB devices will continue to function.";
3338
James Cooka1bcfa9a2018-01-30 00:18:403339const char kUseMashName[] = "Out-of-process system UI (mash)";
3340const char kUseMashDescription[] =
3341 "Runs the mojo UI service (mus) and the ash window manager and system UI "
3342 "in a separate process.";
Brett Wilson7b44537e2017-08-18 01:38:283343
Andrew Moylan651220212019-02-19 22:50:143344const char kUserActivityPredictionMlServiceName[] =
3345 "ML Service Smart Dim model";
3346const char kUserActivityPredictionMlServiceDescription[] =
3347 "Uses the new ML Service model for user activity prediction (Smart Dim).";
3348
Andres Calderon Jaramillo43c0e8a2018-08-21 02:46:233349const char kVaapiJpegImageDecodeAccelerationName[] =
3350 "VA-API JPEG decode acceleration for images";
3351const char kVaapiJpegImageDecodeAccelerationDescription[] =
3352 "Enable or disable decode acceleration of JPEG images (as opposed to camera"
3353 " captures) using the VA-API.";
3354
Brett Wilson7b44537e2017-08-18 01:38:283355const char kVirtualKeyboardName[] = "Virtual Keyboard";
3356const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
3357
Brett Wilson7b44537e2017-08-18 01:38:283358const char kWakeOnPacketsName[] = "Wake On Packets";
3359const char kWakeOnPacketsDescription[] =
3360 "Enables waking the device based on the receipt of some network packets.";
orenb21da031c2017-06-30 21:24:203361
Rob Schonbergercf5aeeea2019-02-27 16:57:373362const char kEnableAppReinstallZeroStateName[] =
3363 "Enable Zero State App Reinstall Suggestions.";
3364const char kEnableAppReinstallZeroStateDescription[] =
3365 "Enable Zero State App Reinstall Suggestions feature in launcher, which "
3366 "will show app reinstall recommendations at end of zero state list.";
3367
Tim Song988f7092019-03-01 03:13:393368extern const char kAshNotificationStackingBarRedesignName[] =
3369 "Redesigned notification stacking bar";
3370extern const char kAshNotificationStackingBarRedesignDescription[] =
3371 "Enables the redesigned notification stacking bar UI with a \"Clear all\" "
3372 "button.";
3373
Roman Sorokin6812e0082019-04-01 10:12:573374extern const char kInSessionPasswordChangeName[] =
3375 "Enable user password change in the session";
3376
3377extern const char kInSessionPasswordChangeDescription[] =
3378 "Let user change both their IdP password and Chromebook password on "
3379 "chrome://password-change page.";
3380
yhanadac5bff5b2017-05-18 06:37:093381#endif // defined(OS_CHROMEOS)
3382
Collin Baker75a29462019-03-13 19:57:313383// All views-based platforms --------------------------------------------------
3384
3385#if defined(TOOLKIT_VIEWS)
3386
Sajad Maysamc30d6f82019-03-19 22:52:503387const char kEnableMDRoundedCornersOnDialogsName[] =
Dana Fried4e177f32019-04-11 23:46:463388 "MD corners on secondary UI";
Sajad Maysamc30d6f82019-03-19 22:52:503389const char kEnableMDRoundedCornersOnDialogsDescription[] =
Dana Fried4e177f32019-04-11 23:46:463390 "Increases corner radius on secondary UI.";
Sajad Maysamc30d6f82019-03-19 22:52:503391
Collin Baker75a29462019-03-13 19:57:313392const char kInstallableInkDropName[] = "Use InstallableInkDrop where supported";
3393const char kInstallableInkDropDescription[] =
3394 "InstallableInkDrop is part of an InkDrop refactoring effort. This enables "
3395 "the pilot implementation where available.";
3396
3397#endif // defined(TOOLKIT_VIEWS)
3398
Brett Wilson7b44537e2017-08-18 01:38:283399// Random platform combinations -----------------------------------------------
3400
3401#if defined(OS_WIN) || defined(OS_LINUX)
3402
3403const char kEnableInputImeApiName[] = "Enable Input IME API";
3404const char kEnableInputImeApiDescription[] =
3405 "Enable the use of chrome.input.ime API.";
3406
3407#endif // defined(OS_WIN) || defined(OS_LINUX)
3408
Jiajia Qindb252e92019-01-28 11:47:483409#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_CHROMEOS)
3410
3411const char kWebGL2ComputeContextName[] = "WebGL 2.0 Compute";
3412const char kWebGL2ComputeContextDescription[] =
3413 "Enable the use of WebGL 2.0 Compute API.";
3414
3415#endif // defined(OS_WIN) || defined(OS_LINUX) || defined(OS_CHROMEOS)
3416
lanwei83f54452018-06-21 23:51:043417#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3418
3419const char kDirectManipulationStylusName[] = "Direct Manipulation Stylus";
3420const char kDirectManipulationStylusDescription[] =
3421 "If enabled, Chrome will scroll web pages on stylus drag.";
3422
3423#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3424
Henrik Grunell63f2d772018-12-06 17:25:203425#if defined(OS_MACOSX) || defined(OS_CHROMEOS)
3426
3427const char kForceEnableSystemAecName[] = "Force enable system AEC";
3428const char kForceEnableSystemAecDescription[] =
3429 "Use system echo canceller instead of WebRTC echo canceller. If there is "
3430 "no system echo canceller available, getUserMedia with echo cancellation "
3431 "enabled will fail.";
3432
3433#endif // defined(OS_MACOSX) || defined(OS_CHROMEOS)
3434
David Bienvenuc713d502019-02-07 23:46:323435#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_CHROMEOS)
3436
3437const char kWebContentsOcclusionName[] = "Enable occlusion of web contents";
3438const char kWebContentsOcclusionDescription[] =
3439 "If enabled, web contents will behave as hidden when it is occluded by "
3440 "other windows.";
3441
3442#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_CHROMEOS)
3443
Brett Wilson7b44537e2017-08-18 01:38:283444// Feature flags --------------------------------------------------------------
3445
Lei Zhang0a318af2018-11-14 02:19:463446#if defined(DCHECK_IS_CONFIGURABLE)
3447const char kDcheckIsFatalName[] = "DCHECKs are fatal";
3448const char kDcheckIsFatalDescription[] =
3449 "By default Chrome will evaluate in this build, but only log failures, "
3450 "rather than crashing. If enabled, DCHECKs will crash the calling process.";
3451#endif // defined(DCHECK_IS_CONFIGURABLE)
3452
Brett Wilson7b44537e2017-08-18 01:38:283453#if BUILDFLAG(ENABLE_VR)
3454
Alex Cooper151b596e2019-02-21 01:26:573455const char kWebXrOrientationSensorDeviceName[] = "Orientation sensors for XR";
3456const char kWebXrOrientationSensorDeviceDescription[] =
3457 "Allow use of orientation sensors for XR if present";
3458
Bill Orr103ed272018-02-14 21:23:053459#if BUILDFLAG(ENABLE_OCULUS_VR)
3460const char kOculusVRName[] = "Oculus hardware support";
3461const char kOculusVRDescription[] =
3462 "If enabled, Chrome will use Oculus devices for VR (supported only on "
3463 "Windows 10 or later).";
3464#endif // ENABLE_OCULUS_VR
3465
Bill Orr49527562017-11-22 16:58:483466#if BUILDFLAG(ENABLE_OPENVR)
3467const char kOpenVRName[] = "OpenVR hardware support";
3468const char kOpenVRDescription[] =
Bill Orr5056e692018-01-17 02:08:073469 "If enabled, Chrome will use OpenVR devices for VR (supported only on "
3470 "Windows 10 or later).";
Bill Orr49527562017-11-22 16:58:483471#endif // ENABLE_OPENVR
3472
Bill Orrd2af6bd52019-01-23 02:50:243473#if BUILDFLAG(ENABLE_WINDOWS_MR)
3474const char kWindowsMixedRealityName[] = "Windows Mixed Reality support";
3475const char kWindowsMixedRealityDescription[] =
3476 "If enabled, Chrome will use Windows Mixed Reality devices for VR"
3477 " (supported only on Windows 10 or later).";
3478#endif // ENABLE_WINDOWS_MR
3479
Bill Orrecfb9fe2018-10-02 00:11:103480#if BUILDFLAG(ENABLE_ISOLATED_XR_SERVICE)
3481const char kXRSandboxName[] = "XR device sandboxing";
3482const char kXRSandboxDescription[] =
3483 "If enabled, Chrome will host VR APIs in a restricted process on desktop.";
3484#endif // ENABLE_ISOLATED_XR_SERVICE
3485
Brett Wilson7b44537e2017-08-18 01:38:283486#endif // ENABLE_VR
3487
Lei Zhang802201c2018-11-14 18:16:283488#if BUILDFLAG(ENABLE_PLUGINS)
3489
dstockwellcc759202019-01-11 00:42:123490#if defined(OS_CHROMEOS)
3491const char kPdfAnnotations[] = "PDF Annotations";
Weidong Guo577fe9ac2019-01-28 19:58:103492const char kPdfAnnotationsDescription[] = "Enable annotating PDF documents.";
dstockwellcc759202019-01-11 00:42:123493#endif // defined(OS_CHROMEOS)
3494
Lei Zhang802201c2018-11-14 18:16:283495const char kPdfFormSaveName[] = "Save PDF Forms";
3496const char kPdfFormSaveDescription[] =
3497 "Enable saving PDFs with filled form data.";
3498
3499const char kPdfIsolationName[] = "PDF Isolation";
3500const char kPdfIsolationDescription[] =
3501 "Render PDF files from different origins in different plugin processes.";
3502
3503#endif // BUILDFLAG(ENABLE_PLUGINS)
3504
Brett Wilson7b44537e2017-08-18 01:38:283505#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3506
3507const char kAutofillCreditCardUploadName[] =
3508 "Enable offering upload of Autofilled credit cards";
3509const char kAutofillCreditCardUploadDescription[] =
3510 "Enables a new option to upload credit cards to Google Payments for sync "
3511 "to all Chrome devices.";
3512
3513#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3514
Collin Baker0a45d6a2018-12-20 19:21:503515#if BUILDFLAG(ENABLE_DESKTOP_IN_PRODUCT_HELP)
3516
3517const char kReopenTabInProductHelpName[] = "Reopen tab in-product help";
3518const char kReopenTabInProductHelpDescription[] =
3519 "Enable in-product help that guides a user to reopen a tab if it looks "
3520 "like they accidentally closed it.";
3521
3522#endif // BUILDFLAG(ENABLE_DESKTOP_IN_PRODUCT_HELP)
3523
Tomas Popela253a5832019-01-14 17:22:103524#if defined(WEBRTC_USE_PIPEWIRE)
3525
3526extern const char kWebrtcPipeWireCapturerName[] = "WebRTC PipeWire support";
3527extern const char kWebrtcPipeWireCapturerDescription[] =
3528 "When enabled the WebRTC will use the PipeWire multimedia server for "
3529 "capturing the desktop content on the Wayland display server.";
3530
3531#endif // #if defined(WEBRTC_USE_PIPEWIRE)
3532
Stephen Chenneyde6e5c82019-01-21 01:56:043533const char kAvoidFlashBetweenNavigationName[] =
3534 "Enable flash avoidance between same-origin navigations";
3535const char kAvoidFlahsBetweenNavigationDescription[] =
3536 "Enables experimental flash avoidance when navigating between pages "
3537 "in the same origin. This feature is in the implementation stages and "
3538 "currently has no effect.";
3539
Brett Wilson7b44537e2017-08-18 01:38:283540// ============================================================================
3541// Don't just add flags to the end, put them in the right section in
3542// alphabetical order just like the header file.
3543// ============================================================================
3544
vabr0215a8e2017-03-28 12:47:343545} // namespace flag_descriptions