blob: b7e00cc82a153640352b3baad7208a6cdee6f8db [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
Manas Verma99541e52018-08-03 20:37:23475const char kEnableAutofillSaveCardSignInAfterLocalSaveName[] =
476 "Show Sign-In/Sync promo after saving a card locally";
477const char kEnableAutofillSaveCardSignInAfterLocalSaveDescription[] =
478 "If enabled, shows a sign in prompt to the user after the user "
479 "saves a card locally. This also introduces a Manage Cards bubble "
480 "which you can access from the card icon after saving a card.";
481
Jared Saul8a0c1e92018-10-10 18:22:47482const char kEnableAutofillSaveCreditCardUsesStrikeSystemName[] =
483 "Enable limit on offering to save the same credit card repeatedly";
484const char kEnableAutofillSaveCreditCardUsesStrikeSystemDescription[] =
485 "If enabled, prevents popping up the credit card offer-to-save prompt if "
486 "it has repeatedly been ignored, declined, or failed.";
487
Anne Lim9d8f66a2019-01-07 23:49:21488const char kEnableAutofillSaveCreditCardUsesStrikeSystemV2Name[] =
Anne Lim30351782019-03-01 01:57:16489 "Enable limit on offering to save the same credit card repeatedly using "
490 "the updated strike system implementation";
Anne Lim9d8f66a2019-01-07 23:49:21491const char kEnableAutofillSaveCreditCardUsesStrikeSystemV2Description[] =
Anne Lim30351782019-03-01 01:57:16492 "If enabled, uses the updated strike system implementation to prevent "
493 "popping up the credit card offer-to-save prompt if it has repeatedly been "
Anne Lim9d8f66a2019-01-07 23:49:21494 "ignored, declined, or failed.";
495
Lakshmi Kumar Dabbirua3d0805f2018-05-22 22:04:23496const char kEnableAutofillSendExperimentIdsInPaymentsRPCsName[] =
497 "Send experiment flag IDs in calls to Google Payments";
498const char kEnableAutofillSendExperimentIdsInPaymentsRPCsDescription[] =
499 "If enabled, adds the status of certain experiment variations when making "
500 "calls to Google Payments.";
501
Becca Hughes4d896c42018-05-29 16:58:51502const char kEnableAutoplayIgnoreWebAudioName[] =
503 "Autoplay ignores WebAudio playbacks";
504const char kEnableAutoplayIgnoreWebAudioDescription[] =
505 "If enabled, autoplay restrictions will be ignored for WebAudio.";
506
Becca Hughesc62f6a1d2018-08-16 15:59:47507const char kEnableAutoplayUnifiedSoundSettingsName[] =
508 "Autoplay unified sound settings UI";
509const char kEnableAutoplayUnifiedSoundSettingsDescription[] =
510 "If enabled, shows the new unified autoplay sound settings UI.";
511
Brett Wilsonf27ff602017-07-07 22:28:47512const char kEnableBrotliName[] = "Brotli Content-Encoding.";
513const char kEnableBrotliDescription[] =
514 "Enable Brotli Content-Encoding support.";
515
Robert Ogdenc3703942019-02-06 21:05:49516const char kEnableDataSaverLiteModeRebrandName[] =
517 "Data Saver Lite Mode Rebranding";
518const char kEnableDataSaverLiteModeRebrandDescription[] =
519 "Enable the Data Saver rebranding to Lite Mode.";
520
Tarun Bansal56c92932019-04-01 17:58:36521const char kEnableSaveDataName[] = "Enables save data feature";
522const char kEnableSaveDataDescription[] =
523 "Enables save data feature. May cause user's traffic to be proxied via "
524 "Google's data reduction proxy.";
525
sclittle50e4bb92017-07-08 02:23:03526const char kEnableClientLoFiName[] = "Client-side Lo-Fi previews";
527
528const char kEnableClientLoFiDescription[] =
529 "Enable showing low fidelity images on some pages on slow networks.";
530
Patrick Noland8bc57472018-06-19 21:09:54531const char kEnableCSSFragmentIdentifiersName[] =
532 "Enable CSS Fragment Identifiers";
533const char kEnableCSSFragmentIdentifiersDescription[] =
534 "Enable support for specifying a target element using a css selector in "
535 "the fragment identifier.";
536
Ramin Halavati7dbb0722019-02-15 05:33:49537const char kEnableFilesystemInIncognitoName[] = "Filesystem API in Incognito";
538const char kEnableFilesystemInIncognitoDescription[] =
539 "Enable Filesystem API in incognito mode.";
540
Doug Arnett08b4067b2017-10-12 20:14:44541const char kEnableNoScriptPreviewsName[] = "NoScript previews";
542
543const char kEnableNoScriptPreviewsDescription[] =
544 "Enable disabling JavaScript on some pages on slow networks.";
545
Thanh Le2c279fbc2017-11-21 01:25:40546const char kDataReductionProxyServerAlternative1[] = "Use alt. server config 1";
547const char kDataReductionProxyServerAlternative2[] = "Use alt. server config 2";
548const char kDataReductionProxyServerAlternative3[] = "Use alt. server config 3";
549const char kDataReductionProxyServerAlternative4[] = "Use alt. server config 4";
550const char kDataReductionProxyServerAlternative5[] = "Use alt. server config 5";
551const char kDataReductionProxyServerAlternative6[] = "Use alt. server config 6";
552const char kDataReductionProxyServerAlternative7[] = "Use alt. server config 7";
553const char kDataReductionProxyServerAlternative8[] = "Use alt. server config 8";
554const char kDataReductionProxyServerAlternative9[] = "Use alt. server config 9";
555const char kDataReductionProxyServerAlternative10[] =
556 "Use alt. server config 10";
rajendrantcfa60ba2018-10-30 09:16:54557const char kEnableDataReductionProxyNetworkServiceName[] =
558 "Data reduction proxy with network service";
559const char kEnableDataReductionProxyNetworkServiceDescription[] =
560 "Enable data reduction proxy when network service is enabled";
Brett Wilsonf27ff602017-07-07 22:28:47561const char kEnableDataReductionProxyServerExperimentName[] =
562 "Use an alternative Data Saver back end configuration.";
563const char kEnableDataReductionProxyServerExperimentDescription[] =
564 "Enable a different approach to saving data by configuring the back end "
565 "server";
566
567const char kEnableDataReductionProxySavingsPromoName[] =
568 "Data Saver 1 MB Savings Promo";
569const char kEnableDataReductionProxySavingsPromoDescription[] =
570 "Enable a Data Saver promo for 1 MB of savings. If Data Saver has already "
571 "saved 1 MB of data, then the promo will not be shown. Data Saver must be "
572 "enabled for the promo to be shown.";
573
Matt Giucad4870432017-11-24 01:04:38574const char kEnableDesktopPWAsName[] = "Desktop PWAs";
575const char kEnableDesktopPWAsDescription[] =
576 "Experimental windowing and install banner treatment for Progressive Web "
577 "Apps on desktop platforms. Implies #enable-experimental-app-banners.";
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17578
Giovanni Ortuño Urquidi40c8e792018-02-28 04:18:59579const char kEnableDesktopPWAsLinkCapturingName[] =
580 "Desktop PWAs Link Capturing";
581const char kEnableDesktopPWAsLinkCapturingDescription[] =
582 "Experimentally enable link capturing for Desktop PWAs. Navigations to "
583 "URLs that are in-scope of Desktop PWAs will open in a window. Requires "
584 "#enable-desktop-pwas.";
585
Jay Harris52511a02018-11-02 01:00:28586const char kDesktopPWAsCustomTabUIName[] = "Desktop PWAs Custom Tab UI";
587const char kDesktopPWAsCustomTabUIDescription[] =
588 "Browsing out-of-scope links in a desktop PWA will use the custom tab UI "
589 "for displaying the page title and origin instead of the location bar.";
590
Jay Harrisee7a7bc62018-10-09 01:47:49591const char kDesktopPWAsStayInWindowName[] =
592 "Desktop PWAs out-of-scope links open in the app window";
593const char kDesktopPWAsStayInWindowDescription[] =
Jay Harris52511a02018-11-02 01:00:28594 "Links to sites in a different scope will open inside the PWA window as "
595 "opposed to in the browser.";
Jay Harrisee7a7bc62018-10-09 01:47:49596
Alan Cutter1816c9d2019-02-11 02:20:07597const char kDesktopPWAsOmniboxInstallName[] =
598 "Desktop PWAs installable from the omnibox";
599const char kDesktopPWAsOmniboxInstallDescription[] =
600 "When on a site that passes PWA installation requirements show a button in "
601 "the omnibox for installing it.";
602
Christopher Lame66b7812018-09-26 01:49:24603const char kEnableSystemWebAppsName[] = "System Web Apps";
604const char kEnableSystemWebAppsDescription[] =
605 "Experimental system for using the Desktop PWA framework for running System"
606 "Apps (e.g Settings, Discover).";
607
David Benjamin570460e2018-10-16 06:01:29608const char kEnforceTLS13DowngradeName[] = "TLS 1.3 downgrade hardening";
609const char kEnforceTLS13DowngradeDescription[] =
610 "This option enables the TLS 1.3 downgrade hardening mechanism. This "
611 "hardens TLS 1.3 connections while remaining compatible with TLS 1.0 "
612 "through 1.2 connections. Firewalls and proxies that do not function when "
613 "this is enabled do not implement TLS 1.0 through 1.2 correctly or "
614 "securely. They must be fixed by vendors.";
615
Brett Wilsonf27ff602017-07-07 22:28:47616const char kEnableGenericSensorName[] = "Generic Sensor";
617const char kEnableGenericSensorDescription[] =
Mikhail Pozdnyakov73373a62017-08-24 17:31:25618 "Enables motion sensor classes based on Generic Sensor API, i.e. "
619 "Accelerometer, LinearAccelerationSensor, Gyroscope, "
620 "AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
621
622const char kEnableGenericSensorExtraClassesName[] =
623 "Generic Sensor Extra Classes";
624const char kEnableGenericSensorExtraClassesDescription[] =
625 "Enables an extra set of sensor classes based on Generic Sensor API, which "
626 "expose previously unavailable platform features, i.e. AmbientLightSensor "
627 "and Magnetometer interfaces.";
Brett Wilsonf27ff602017-07-07 22:28:47628
Vikas Soni78daa632019-01-12 01:32:52629const char kEnableGpuServiceLoggingName[] = "Enable gpu service logging";
630const char kEnableGpuServiceLoggingDescription[] =
631 "Enable printing the actual GL driver calls.";
632
Brett Wilsonf27ff602017-07-07 22:28:47633const char kEnableHDRName[] = "HDR mode";
634const char kEnableHDRDescription[] =
635 "Enables HDR support on compatible displays.";
636
David Bokan911bded2018-11-27 23:23:32637const char kEnableImplicitRootScrollerName[] = "Implicit Root Scroller";
638const char kEnableImplicitRootScrollerDescription[] =
639 "Enables implicitly choosing which scroller on a page is the 'root "
640 "scroller'. i.e. The one that gets special features like URL bar movement, "
641 "overscroll glow, rotation anchoring, etc.";
642
Robert Ogden5a63b242018-09-17 21:38:57643const char kEnablePreviewsAndroidOmniboxUIName[] =
644 "Previews Android Omnibox UI";
645const char kEnablePreviewsAndroidOmniboxUIDescription[] =
646 "Enable showing the Previews UI in the Omnibox on Android instead of an "
647 "InfoBar. This has no effect on other platforms.";
648
Robert Ogdence8c9572018-10-08 23:08:48649const char kEnableLitePageServerPreviewsName[] = "Lite Page Server Previews";
650const char kEnableLitePageServerPreviewsDescription[] =
Doug Arnett9c1f87562018-12-14 00:56:39651 "Enable showing Lite Page Previews served from a Previews Server."
652 "This feature will cause Chrome to redirect eligible navigations "
Robert Ogdence8c9572018-10-08 23:08:48653 "to a Google-owned domain that serves a pre-rendered version of the "
Doug Arnett9c1f87562018-12-14 00:56:39654 "original page. Also known as Lite Page Redirect Previews.";
Robert Ogdence8c9572018-10-08 23:08:48655
Ryan Sturm5e4d4422019-02-28 01:32:29656const char kEnableURLLoaderLitePageServerPreviewsName[] =
657 "Lite Page Server Previews using URL Loader";
658const char kEnableURLLoaderLitePageServerPreviewsDescription[] =
659 "Enable using a network service URL Loader for Lite Page Server Previews. "
660 "This requires enable-lite-page-server-previews to be enabled along with "
661 "network-service.";
662
Hiroshige Hayashizaki3ee116af2019-03-05 10:11:22663const char kBuiltInModuleAllName[] = "All experimental built-in modules";
664const char kBuiltInModuleAllDescription[] =
665 "Enable all experimental built-in modules, as well as built-in module "
666 "infrastructure and import maps. The syntax and the APIs exposed are "
667 "experimental and will change over time.";
668
669const char kBuiltInModuleInfraName[] = "Built-in module infra and import maps";
670const char kBuiltInModuleInfraDescription[] =
671 "Enable built-in module infrastructure and import maps. Individual "
672 "built-in modules should be enabled by other flags. The syntax and the "
673 "APIs exposed are experimental and will change over time.";
674
675const char kBuiltInModuleKvStorageName[] = "kv-storage built-in module";
676const char kBuiltInModuleKvStorageDescription[] =
677 "Enable kv-storage built-in module, as well as built-in module "
678 "infrastructure and import maps. The syntax and the APIs exposed are "
679 "experimental and will change over time.";
Hiroshige Hayashizaki99d5821e2018-05-02 04:25:41680
Philip Rogers63481332018-12-01 22:16:51681const char kEnableBlinkGenPropertyTreesName[] = "Enable BlinkGenPropertyTrees";
682const char kEnableBlinkGenPropertyTreesDescription[] =
683 "Enable a new compositing mode where Blink generates the compositor "
684 "property trees.";
685
Ian Kilpatricke68ef11a2018-07-04 03:52:10686const char kEnableLayoutNGName[] = "Enable LayoutNG";
687const char kEnableLayoutNGDescription[] =
688 "Enable Blink's next generation layout engine.";
689
Scott Littled0fd2d002018-04-13 03:37:26690const char kEnableLazyFrameLoadingName[] = "Enable lazy frame loading";
691const char kEnableLazyFrameLoadingDescription[] =
692 "Defers the loading of certain cross-origin frames until the page is "
693 "scrolled down near them.";
694
rajendrant793ff512018-08-10 17:07:59695const char kEnableLazyImageLoadingName[] = "Enable lazy image loading";
696const char kEnableLazyImageLoadingDescription[] =
697 "Defers the loading of images until the page is scrolled down near them.";
698
Sidney San Martín9375b892017-09-09 00:29:54699const char kEnableMacMaterialDesignDownloadShelfName[] =
700 "Enable Material Design download shelf";
701
702const char kEnableMacMaterialDesignDownloadShelfDescription[] =
703 "If enabled, the download shelf uses Material Design.";
704
Becca Hughesac86cd442019-01-09 23:49:54705const char kEnableMediaSessionServiceName[] = "Media Session Service";
706const char kEnableMediaSessionServiceDescription[] =
707 "Enables the media session mojo service and internal media session "
708 "support.";
709
Brett Wilsonf27ff602017-07-07 22:28:47710const char kEnableNavigationTracingName[] = "Enable navigation tracing";
711const char kEnableNavigationTracingDescription[] =
712 "This is to be used in conjunction with the trace-upload-url flag. "
713 "WARNING: When enabled, Chrome will record performance data for every "
714 "navigation and upload it to the URL specified by the trace-upload-url "
715 "flag. The trace may include personally identifiable information (PII) "
716 "such as the titles and URLs of websites you visit.";
717
Bernhard Bauer5533f9912017-11-06 17:56:02718const char kEnableNetworkLoggingToFileName[] = "Enable network logging to file";
719const char kEnableNetworkLoggingToFileDescription[] =
720 "Enables network logging to a file named netlog.json in the user data "
721 "directory. The file can be imported into chrome://net-internals.";
722
Brett Wilsonf27ff602017-07-07 22:28:47723const char kEnableNetworkServiceName[] = "Enable network service";
724const char kEnableNetworkServiceDescription[] =
725 "Enables the network service, which makes network requests through a "
John Abd-El-Malek225b04d2018-09-07 22:41:40726 "separate process.";
Brett Wilsonf27ff602017-07-07 22:28:47727
John Abd-El-Malek8067cc02017-12-04 23:23:20728const char kEnableNetworkServiceInProcessName[] =
729 "Runs network service in-process";
730const char kEnableNetworkServiceInProcessDescription[] =
731 "Runs the network service in the browser process.";
732
Shakti Sahu07b052712019-04-02 00:39:37733const char kDownloadAutoResumptionNativeName[] =
734 "Enable download auto-resumption in native";
735const char kDownloadAutoResumptionNativeDescription[] =
736 "Enables download auto-resumption in native";
737
Shakti Sahu5a046f62019-03-12 19:25:34738const char kEnableNewDownloadBackendName[] = "Enable new download backend";
739const char kEnableNewDownloadBackendDescription[] =
740 "Enables the new download backend that uses offline content provider";
741
Lucas Furukawa Gadani9f57e192019-04-05 14:56:10742const char kEnablePortalsName[] = "Enable Portals.";
743const char kEnablePortalsDescription[] =
744 "Portals are an experimental web platform feature that allows embedding"
745 " and seamless transitions between pages."
746 " See https://github.com/WICG/portals and https://wicg.github.io/portals/";
747
Tetsui Ohkuboc3eb87f72018-07-20 02:22:28748const char kEnableNotificationScrollBarName[] =
749 "Enable notification list scroll bar";
750const char kEnableNotificationScrollBarDescription[] =
751 "Enable the scroll bar of the notification list in Unified System Tray.";
752
Mitsuru Otsukae8304de2018-10-29 02:14:36753const char kEnableNotificationExpansionAnimationName[] =
754 "Enable notification expansion animations";
755const char kEnableNotificationExpansionAnimationDescription[] =
756 "Enable notification animations whenever the expansion state is toggled.";
757
Sophie Chang117a3b22017-10-24 22:25:36758const char kEnableOptimizationHintsName[] = "Optimization Hints";
759const char kEnableOptimizationHintsDescription[] =
Sophie Chang5454ce82018-07-16 17:44:50760 "Enable the Optimization Hints feature which incorporates server hints "
Sophie Chang117a3b22017-10-24 22:25:36761 "into decisions for what optimizations to perform on some pages on slow "
762 "networks.";
763
Takashi Toyoshima2e01e692018-11-16 03:23:27764const char kEnableOutOfBlinkCorsName[] = "Out of blink CORS";
765const char kEnableOutOfBlinkCorsDescription[] =
Yutaka Hirano98be3272017-08-07 17:55:39766 "CORS handling logic is moved out of blink.";
767
Chris Halle952239e2018-11-06 06:49:52768const char kExperimentalAccessibilityFeaturesName[] =
769 "Experimental accessibility features";
770const char kExperimentalAccessibilityFeaturesDescription[] =
771 "Enable additional accessibility features in the Settings page.";
772
Katie D652135c2018-11-27 18:30:13773const char kExperimentalAccessibilityAutoclickName[] =
774 "Experimental automatic click features";
775const char kExperimentalAccessibilityAutoclickDescription[] =
776 "Enable additional features for automatic clicks.";
777
Chris Hall4a4225f62019-01-18 03:07:16778const char kExperimentalAccessibilityLanguageDetectionName[] =
779 "Experimental accessibility language detection";
780const char kExperimentalAccessibilityLanguageDetectionDescription[] =
781 "Enable language detection for in-page content which is then exposed to "
782 "accessiblity technologies such as screen readers.";
783
Anastasia Helfinsteinafecc68c2018-11-26 19:20:17784const char kExperimentalAccessibilitySwitchAccessName[] =
785 "Experimental feature Switch Access";
786const char kExperimentalAccessibilitySwitchAccessDescription[] =
787 "Add a setting to enable the prototype of Switch Access";
788
kylechar7051c092018-02-05 20:31:39789const char kVizDisplayCompositorName[] = "Viz Display Compositor (OOP-D)";
790const char kVizDisplayCompositorDescription[] =
791 "If enabled, the display compositor runs as part of the viz service in the"
792 "GPU process.";
793
Xianda Sunfa2a35922019-04-15 19:01:28794const char kVizHitTestName[] = "Viz Hit-test";
795const char kVizHitTestDescription[] =
Ria Jiang6a129b982018-03-01 18:30:40796 "If enabled, event targeting uses the new viz-assisted hit-testing logic, "
Xianda Sunfa2a35922019-04-15 19:01:28797 "with hit-test data computed from the CompositorFrame or the SurfaceLayer.";
Ria Jiang6a129b982018-03-01 18:30:40798
Rahul Arakeri61a2ad272019-03-19 22:55:08799const char kCompositorThreadedScrollbarScrollingName[] =
800 "Enable compositor threaded scrollbar scrolling";
801const char kCompositorThreadedScrollbarScrollingDescription[] =
802 "Enables pointer-based scrollbar scrolling on the compositor thread "
803 "instead of the main thread";
804
Alexei Filippov522a5222019-03-29 03:33:18805const char kMemlogName[] = "Chrome heap profiler start mode.";
806const char kMemlogDescription[] =
807 "Starts heap profiling service that records sampled memory allocation "
808 "profile having each sample attributed with a callstack. "
809 "The sampling resolution is controlled with --memlog-sampling-rate flag. "
810 "Recorded heap dumps can be obtained at chrome://tracing "
811 "[category:memory-infra] and chrome://memory-internals. This setting "
812 "controls which processes will be profiled since their start. To profile "
813 "any given process at a later time use chrome://memory-internals page.";
814const char kMemlogModeMinimal[] = "Browser and GPU";
815const char kMemlogModeAll[] = "All processes";
816const char kMemlogModeAllRenderers[] = "All renderers";
817const char kMemlogModeRendererSampling[] = "Single renderer";
818const char kMemlogModeBrowser[] = "Browser only";
819const char kMemlogModeGpu[] = "GPU only";
Alexei Filippov2e8bfee2019-03-07 21:51:27820
Alexei Filippov522a5222019-03-29 03:33:18821const char kMemlogSamplingRateName[] =
822 "Heap profiling sampling interval (in bytes).";
823const char kMemlogSamplingRateDescription[] =
824 "Heap profiling service uses Poisson process to sample allocations. "
825 "Default value for the interval between samples is 100000 (100KB). "
826 "This results in low noise for large and/or frequent allocations "
Alexei Filippov2e8bfee2019-03-07 21:51:27827 "[size * frequency >> 100KB]. This means that aggregate numbers [e.g. "
erikchen99bfce02018-02-14 20:29:22828 "total size of malloc-ed objects] and large and/or frequent allocations "
Alexei Filippov522a5222019-03-29 03:33:18829 "can be trusted with high fidelity. "
830 "Lower intervals produce higher samples resolution, but come at a cost of "
831 "higher performance overhead.";
832const char kMemlogSamplingRate10KB[] = "10KB";
833const char kMemlogSamplingRate50KB[] = "50KB";
834const char kMemlogSamplingRate100KB[] = "100KB";
835const char kMemlogSamplingRate500KB[] = "500KB";
836const char kMemlogSamplingRate1MB[] = "1MB";
837const char kMemlogSamplingRate5MB[] = "5MB";
erikchen8bc20d82018-02-14 03:21:51838
Alexei Filippov522a5222019-03-29 03:33:18839const char kMemlogStackModeName[] = "Heap profiling stack traces type.";
840const char kMemlogStackModeDescription[] =
841 "By default heap profiling service records native stacks. "
842 "A post-processing step is required to symbolize the stacks. "
843 "'Native with thread names' adds the thread name as the first frame of "
844 "each native stack. It's also possible to record a pseudo stack using "
845 "trace events as identifiers. It's also possible to do a mix of both.";
846const char kMemlogStackModeMixed[] = "Mixed";
847const char kMemlogStackModeNative[] = "Native";
848const char kMemlogStackModeNativeWithThreadNames[] = "Native with thread names";
849const char kMemlogStackModePseudo[] = "Trace events";
Erik Chen3303fd0232018-01-11 20:29:05850
F#m59d036e2017-09-13 07:22:17851const char kEnablePixelCanvasRecordingName[] = "Enable pixel canvas recording";
852const char kEnablePixelCanvasRecordingDescription[] =
853 "Pixel canvas recording allows the compositor to raster contents aligned "
854 "with the pixel and improves text rendering. This should be enabled when a "
855 "device is using fractional scale factor.";
856
Ella Gebee81c92018-08-14 15:51:09857const char kEnableResamplingInputEventsName[] =
858 "Enable resampling input events";
859const char kEnableResamplingInputEventsDescription[] =
860 "Predicts mouse and touch inputs position at rAF time based on previous "
861 "input";
862const char kEnableResamplingScrollEventsName[] =
863 "Enable resampling scroll events";
864const char kEnableResamplingScrollEventsDescription[] =
865 "Predicts the scroll amount at vsync time based on previous input";
866
Doug Arnettaa0bf202018-08-27 19:42:11867const char kEnableResourceLoadingHintsName[] = "Enable resource loading hints";
868const char kEnableResourceLoadingHintsDescription[] =
869 "Enable using server-provided resource loading hints to provide a preview "
870 "over slow network connections.";
871
Raphael Kubo da Costab72914b2019-03-13 09:20:39872const char kEnableSensorContentSettingName[] = "Sensor content setting";
873const char kEnableSensorContentSettingDescription[] =
874 "Enable UI in content settings to control access to the sensor APIs.";
875
Mikel Astizb4786aa2018-11-09 22:12:09876const char kEnableSyncPseudoUSSAppListName[] =
877 "Enable pseudo-USS for APP_LIST sync.";
878const char kEnableSyncPseudoUSSAppListDescription[] =
879 "Enable new USS-based codepath for sync datatype APP_LIST.";
880
881const char kEnableSyncPseudoUSSAppsName[] = "Enable pseudo-USS for APPS sync.";
882const char kEnableSyncPseudoUSSAppsDescription[] =
883 "Enable new USS-based codepath for sync datatype APPS.";
884
885const char kEnableSyncPseudoUSSDictionaryName[] =
886 "Enable pseudo-USS for DICTIONARY sync.";
887const char kEnableSyncPseudoUSSDictionaryDescription[] =
888 "Enable new USS-based codepath for sync datatype DICTIONARY.";
889
890const char kEnableSyncPseudoUSSExtensionSettingsName[] =
891 "Enable pseudo-USS for EXTENSION_SETTINGS and APP_SETTINGS sync.";
892const char kEnableSyncPseudoUSSExtensionSettingsDescription[] =
893 "Enable new USS-based codepath for sync datatypes EXTENSION_SETTINGS and "
894 "APP_SETTINGS.";
895
896const char kEnableSyncPseudoUSSExtensionsName[] =
897 "Enable pseudo-USS for EXTENSIONS sync.";
898const char kEnableSyncPseudoUSSExtensionsDescription[] =
899 "Enable new USS-based codepath for sync datatype EXTENSIONS.";
900
901const char kEnableSyncPseudoUSSFaviconsName[] =
902 "Enable pseudo-USS for favicon sync.";
903const char kEnableSyncPseudoUSSFaviconsDescription[] =
904 "Enable new USS-based codepath for sync datatypes FAVICON_IMAGES and "
905 "FAVICON_TRACKING.";
906
907const char kEnableSyncPseudoUSSHistoryDeleteDirectivesName[] =
908 "Enable pseudo-USS for HISTORY_DELETE_DIRECTIVES sync.";
909const char kEnableSyncPseudoUSSHistoryDeleteDirectivesDescription[] =
910 "Enable new USS-based codepath for sync datatype "
911 "HISTORY_DELETE_DIRECTIVES.";
912
913const char kEnableSyncPseudoUSSPasswordsName[] =
914 "Enable pseudo-USS for PASSWORDS sync.";
915const char kEnableSyncPseudoUSSPasswordsDescription[] =
916 "Enable new USS-based codepath for sync datatype PASSWORDS (pseudo-USS).";
917
918const char kEnableSyncPseudoUSSPreferencesName[] =
919 "Enable pseudo-USS for PREFERENCES sync.";
920const char kEnableSyncPseudoUSSPreferencesDescription[] =
921 "Enable new USS-based codepath for sync datatype PREFERENCES.";
922
923const char kEnableSyncPseudoUSSPriorityPreferencesName[] =
924 "Enable pseudo-USS for PRIORITY_PREFERENCES sync.";
925const char kEnableSyncPseudoUSSPriorityPreferencesDescription[] =
926 "Enable new USS-based codepath for sync datatype PRIORITY_PREFERENCES.";
927
928const char kEnableSyncPseudoUSSSearchEnginesName[] =
929 "Enable pseudo-USS for SEARCH_ENGINES sync.";
930const char kEnableSyncPseudoUSSSearchEnginesDescription[] =
931 "Enable new USS-based codepath for sync datatype SEARCH_ENGINES.";
932
933const char kEnableSyncPseudoUSSSupervisedUsersName[] =
934 "Enable pseudo-USS for supervised users sync.";
935const char kEnableSyncPseudoUSSSupervisedUsersDescription[] =
936 "Enable new USS-based codepath for sync datatypes SUPERVISED_USER_SETTINGS "
937 "and SUPERVISED_USER_WHITELISTS.";
938
939const char kEnableSyncPseudoUSSThemesName[] =
940 "Enable pseudo-USS for THEMES sync.";
941const char kEnableSyncPseudoUSSThemesDescription[] =
942 "Enable new USS-based codepath for sync datatype THEMES.";
943
Mohamed Amir Yosef0178fa892018-07-23 17:43:52944const char kEnableSyncUSSBookmarksName[] = "Enable USS for bookmarks sync";
945const char kEnableSyncUSSBookmarksDescription[] =
946 "Enables the new, experimental implementation of bookmark sync";
947
Mohamed Amir Yosef3074dfc2019-02-06 18:34:43948const char kEnableSyncUSSPasswordsName[] = "Enable USS for passwords sync";
949const char kEnableSyncUSSPasswordsDescription[] =
950 "Enables the new, experimental implementation of passwords sync";
951
Mikel Astiz38837f82018-04-24 22:23:23952const char kEnableSyncUSSSessionsName[] = "Enable USS for sessions sync";
953const char kEnableSyncUSSSessionsDescription[] =
954 "Enables the new, experimental implementation of session sync (aka tab "
955 "sync).";
956
David Bokane9370c22019-02-14 15:19:58957const char kEnableTextFragmentAnchorName[] = "Enable Text Fragment Anchor.";
958const char kEnableTextFragmentAnchorDescription[] =
959 "Enables scrolling to text specified in URL's fragment.";
960
Brett Wilsonf27ff602017-07-07 22:28:47961const char kEnableUseZoomForDsfName[] =
962 "Use Blink's zoom for device scale factor.";
963const char kEnableUseZoomForDsfDescription[] =
964 "If enabled, Blink uses its zooming mechanism to scale content for device "
965 "scale factor.";
966const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
967const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
968const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
969
Patrick Noland8ee016e2018-01-24 11:44:53970const char kEnableScrollAnchorSerializationName[] =
971 "Scroll Anchor Serialization";
972const char kEnableScrollAnchorSerializationDescription[] =
973 "Save the scroll anchor and use it to restore the scroll position when "
974 "navigating.";
975
Brad Nelson5cd500e2018-01-04 00:50:19976const char kEnableSharedArrayBufferName[] =
977 "Experimental enabled SharedArrayBuffer support in JavaScript.";
978const char kEnableSharedArrayBufferDescription[] =
979 "Enable SharedArrayBuffer support in JavaScript.";
980
Brett Wilsonf27ff602017-07-07 22:28:47981const char kEnableWasmName[] = "WebAssembly structured cloning support.";
982const char kEnableWasmDescription[] =
983 "Enable web pages to use WebAssembly structured cloning.";
984
Lei Zhang0ca70ea2018-09-07 17:51:01985const char kEnableWebAuthenticationCableSupportName[] =
Kim Paulhamus92431372018-07-20 02:25:47986 "Web Authentication caBLE support";
Lei Zhang0ca70ea2018-09-07 17:51:01987const char kEnableWebAuthenticationCableSupportDescription[] =
Kim Paulhamus92431372018-07-20 02:25:47988 "Enable the cloud-assisted pairingless BLE protocol for use with "
989 "the Web Authentication API.";
Kim Paulhamusae635a32018-06-27 07:30:54990
Adam Langley64bc04232019-03-30 21:05:56991const char kEnableWebAuthenticationPINSupportName[] =
992 "Web Authentication PIN support";
993const char kEnableWebAuthenticationPINSupportDescription[] =
994 "Enable the use of PINs with the Web Authentication API and compatible "
995 "security keys.";
996
Ramin Halavatic158b182018-10-18 14:04:54997const char kEnableIncognitoWindowCounterName[] = "Incognito Window Counter";
998const char kEnableIncognitoWindowCounterDescription[] =
999 "Shows the count of Incognito windows next to the Incognito icon on the "
1000 "toolbar.";
1001
Clemens Hammacher0c8a15a2018-04-27 13:45:321002const char kEnableWasmBaselineName[] = "WebAssembly baseline compiler";
1003const char kEnableWasmBaselineDescription[] =
1004 "Enables WebAssembly baseline compilation and tier up.";
1005
Bill Budged0dace172019-02-10 00:46:211006const char kEnableWasmCodeCacheName[] = "WebAssembly compiled module cache";
1007const char kEnableWasmCodeCacheDescription[] =
1008 "Enables caching of compiled WebAssembly modules.";
1009
Ben Smith24c1e5c2018-06-20 01:09:021010const char kEnableWasmThreadsName[] = "WebAssembly threads support.";
1011const char kEnableWasmThreadsDescription[] =
1012 "Enables support for the WebAssembly Threads proposal. Implies "
1013 "#shared-array-buffer and #enable-webassembly.";
1014
Brett Wilsonf27ff602017-07-07 22:28:471015const char kExpensiveBackgroundTimerThrottlingName[] =
1016 "Throttle expensive background timers";
1017const char kExpensiveBackgroundTimerThrottlingDescription[] =
1018 "Enables intervention to limit CPU usage of background timers to 1%.";
1019
1020const char kExperimentalAppBannersName[] = "Experimental app banners";
1021const char kExperimentalAppBannersDescription[] =
Matt Giucad4870432017-11-24 01:04:381022 "Enables a new experimental app banner flow and UI. Implies "
1023 "#enable-app-banners.";
Brett Wilsonf27ff602017-07-07 22:28:471024
1025const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
1026const char kExperimentalCanvasFeaturesDescription[] =
1027 "Enables the use of experimental canvas features which are still in "
1028 "development.";
1029
1030const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
1031const char kExperimentalExtensionApisDescription[] =
1032 "Enables experimental extension APIs. Note that the extension gallery "
1033 "doesn't allow you to upload extensions that use experimental APIs.";
1034
Ian Clelland37a985d2018-05-04 02:43:131035const char kExperimentalProductivityFeaturesName[] =
1036 "Experimental Productivity Features";
1037const char kExperimentalProductivityFeaturesDescription[] =
1038 "Enable support for experimental developer productivity features, such as "
Hiroshige Hayashizaki3ee116af2019-03-05 10:11:221039 "built-in modules and policies for avoiding slow rendering.";
Ian Clelland37a985d2018-05-04 02:43:131040
Brett Wilsonf27ff602017-07-07 22:28:471041const char kExperimentalSecurityFeaturesName[] =
1042 "Potentially annoying security features";
1043const char kExperimentalSecurityFeaturesDescription[] =
1044 "Enables several security features that will likely break one or more "
1045 "pages that you visit on a daily basis. Strict mixed content checking, for "
1046 "example. And locking powerful features to secure contexts. This flag will "
1047 "probably annoy you.";
1048
1049const char kExperimentalWebPlatformFeaturesName[] =
1050 "Experimental Web Platform features";
1051const char kExperimentalWebPlatformFeaturesDescription[] =
1052 "Enables experimental Web Platform features that are in development.";
1053
1054const char kExtensionContentVerificationName[] =
1055 "Extension Content Verification";
1056const char kExtensionContentVerificationDescription[] =
1057 "This flag can be used to turn on verification that the contents of the "
1058 "files on disk for extensions from the webstore match what they're "
1059 "expected to be. This can be used to turn on this feature if it would not "
1060 "otherwise have been turned on, but cannot be used to turn it off (because "
1061 "this setting can be tampered with by malware).";
1062const char kExtensionContentVerificationBootstrap[] =
1063 "Bootstrap (get expected hashes, but do not enforce them)";
1064const char kExtensionContentVerificationEnforce[] =
1065 "Enforce (try to get hashes, and enforce them if successful)";
1066const char kExtensionContentVerificationEnforceStrict[] =
1067 "Enforce strict (hard fail if we can't get hashes)";
1068
Peter Boströma445353a2019-03-21 02:58:151069const char kExtensionsToolbarMenuName[] = "Extensions Toolbar Menu";
1070const char kExtensionsToolbarMenuDescription[] =
1071 "Enable a separate toolbar button and menu for extensions";
1072
Brett Wilsonf27ff602017-07-07 22:28:471073const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
1074const char kExtensionsOnChromeUrlsDescription[] =
1075 "Enables running extensions on chrome:// URLs, where extensions explicitly "
1076 "request this permission.";
galinapae72e152017-05-12 13:12:281077
Brett Wilsonecb80982017-07-12 20:34:511078const char kFeaturePolicyName[] = "Feature Policy";
1079const char kFeaturePolicyDescription[] =
1080 "Enables granting and removing access to features through the "
1081 "Feature-Policy HTTP header.";
vabr0215a8e2017-03-28 12:47:341082
Brett Wilsonecb80982017-07-12 20:34:511083const char kFontCacheScalingName[] = "FontCache scaling";
1084const char kFontCacheScalingDescription[] =
1085 "Reuse a cached font in the renderer to serve different sizes of font for "
1086 "faster layout.";
1087
1088const char kForceEffectiveConnectionTypeName[] =
1089 "Override effective connection type";
1090const char kForceEffectiveConnectionTypeDescription[] =
1091 "Overrides the effective connection type of the current connection "
Thanh Lea98f12f2017-12-18 19:35:301092 "returned by the network quality estimator. Slow 2G on Cellular returns "
1093 "Slow 2G when connected to a cellular network, and the actual estimate "
1094 "effective connection type when not on a cellular network. Previews are "
1095 "usually served on 2G networks.";
Brett Wilsonecb80982017-07-12 20:34:511096const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
1097const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
1098const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
Thanh Lea98f12f2017-12-18 19:35:301099const char kEffectiveConnectionTypeSlow2GOnCellularDescription[] =
1100 "Slow 2G On Cellular";
Brett Wilsonecb80982017-07-12 20:34:511101const char kEffectiveConnectionType2GDescription[] = "2G";
1102const char kEffectiveConnectionType3GDescription[] = "3G";
1103const char kEffectiveConnectionType4GDescription[] = "4G";
1104
1105const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
1106const char kFillOnAccountSelectDescription[] =
1107 "Filling of passwords when an account is explicitly selected by the user "
1108 "rather than autofilling credentials on page load.";
1109
jdoerrie11c5f4f2019-02-04 18:29:181110const char kFillOnAccountSelectHttpName[] =
1111 "Fill passwords on account selection on HTTP origins";
1112const char kFillOnAccountSelectHttpDescription[] =
1113 "Filling of passwords when an account is explicitly selected by the user "
1114 "rather than autofilling credentials on page load on HTTP origins.";
1115
Brett Wilsonecb80982017-07-12 20:34:511116const char kForceTextDirectionName[] = "Force text direction";
1117const char kForceTextDirectionDescription[] =
1118 "Explicitly force the per-character directionality of UI text to "
1119 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
1120 "direction of the character language.";
1121const char kForceDirectionLtr[] = "Left-to-right";
1122const char kForceDirectionRtl[] = "Right-to-left";
1123
1124const char kForceUiDirectionName[] = "Force UI direction";
1125const char kForceUiDirectionDescription[] =
1126 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
1127 "mode, overriding the default direction of the UI language.";
1128
Brett Wilsonecb80982017-07-12 20:34:511129const char kGpuRasterizationName[] = "GPU rasterization";
1130const char kGpuRasterizationDescription[] =
1131 "Use GPU to rasterize web content. Requires impl-side painting.";
Brett Wilson7b44537e2017-08-18 01:38:281132const char kForceGpuRasterization[] = "Force-enabled for all layers";
Brett Wilsonecb80982017-07-12 20:34:511133
Ioana Pandele1ed7ef72018-11-21 15:22:031134const char kGooglePasswordManagerName[] = "Google Password Manager UI";
1135const char kGooglePasswordManagerDescription[] =
1136 "Enables access to the Google Password Manager UI from Chrome.";
1137
Brett Wilsonecb80982017-07-12 20:34:511138const char kGoogleProfileInfoName[] = "Google profile name and icon";
1139const char kGoogleProfileInfoDescription[] =
1140 "Enables using Google information to populate the profile name and icon in "
1141 "the avatar menu.";
1142
Takumi Fujimotofb71e332018-03-31 14:04:081143const char kViewsCastDialogName[] = "Views Cast dialog";
1144const char kViewsCastDialogDescription[] =
manukaddd3c42019-04-09 21:20:591145 "Replace the WebUI Cast dialog with a Views toolkit dialog.";
Takumi Fujimotofb71e332018-03-31 14:04:081146
Gabrielle Paladoaebf7ca2019-01-16 07:07:061147const char kHandwritingGestureName[] = "Handwriting Gestures";
1148const char kHandwritingGestureDescription[] =
1149 "Enables handwriting gestures within the virtual keyboard";
1150
Tommy Steimel1aadd7b2019-01-18 19:39:421151const char kHardwareMediaKeyHandling[] = "Hardware Media Key Handling";
1152const char kHardwareMediaKeyHandlingDescription[] =
1153 "Enables using media keys to control the active media session. This "
1154 "requires MediaSessionService to be enabled too";
1155
Manu Cornet4a908de2018-04-09 04:32:271156const char kHideActiveAppsFromShelfName[] =
1157 "Hide running apps (that are not pinned) from the shelf";
1158const char kHideActiveAppsFromShelfDescription[] =
1159 "Save space in the shelf by hiding running apps (that are not pinned).";
Manu Cornete5f855b2018-03-13 03:35:251160
Brett Wilsonecb80982017-07-12 20:34:511161const char kHistoryRequiresUserGestureName[] =
1162 "New history entries require a user gesture.";
1163const char kHistoryRequiresUserGestureDescription[] =
1164 "Require a user gesture to add a history entry.";
Brett Wilsonecb80982017-07-12 20:34:511165
Ryan Landay4242dbc22018-04-04 01:47:331166const char kHorizontalTabSwitcherAndroidName[] =
1167 "Enable horizontal tab switcher";
1168const char kHorizontalTabSwitcherAndroidDescription[] =
1169 "Changes the layout of the Android tab switcher so tabs scroll "
1170 "horizontally instead of vertically.";
1171
Matt Simmons2048b2a2018-12-20 20:12:561172const char kTabSwitcherOnReturnName[] = "Enable tab switcher on return";
1173const char kTabSwitcherOnReturnDescription[] =
1174 "Enable tab switcher on return after specified time has elapsed";
1175
Brett Wilsonecb80982017-07-12 20:34:511176const char kHostedAppQuitNotificationName[] =
1177 "Quit notification for hosted apps";
1178const char kHostedAppQuitNotificationDescription[] =
1179 "Display a notification when quitting Chrome if hosted apps are currently "
1180 "running.";
1181
1182const char kHostedAppShimCreationName[] =
1183 "Creation of app shims for hosted apps on Mac";
1184const char kHostedAppShimCreationDescription[] =
1185 "Create app shims on Mac when creating a hosted app.";
1186
1187const char kIconNtpName[] = "Large icons on the New Tab page";
1188const char kIconNtpDescription[] =
1189 "Enable the experimental New Tab page using large icons.";
1190
1191const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
1192const char kIgnoreGpuBlacklistDescription[] =
1193 "Overrides the built-in software rendering list and enables "
1194 "GPU-acceleration on unsupported system configurations.";
1195
Ryan Sturm8c3dbc92018-06-26 19:22:371196const char kIgnorePreviewsBlacklistName[] = "Ignore Previews Blocklist";
Thanh Le5f090efa52017-12-27 22:39:441197const char kIgnorePreviewsBlacklistDescription[] =
Ryan Sturm8c3dbc92018-06-26 19:22:371198 "Ignore decisions made by the PreviewsBlockList";
Thanh Le5f090efa52017-12-27 22:39:441199
Alexandre Frechetted3e1b542018-12-13 14:40:501200const char kImprovedGeoLanguageDataName[] = "Improved Geo-language Data";
1201const char kImprovedGeoLanguageDataDescription[] =
1202 "Makes the GeoLanguageModel use higher quality, more refined ULP "
1203 "geo-language data.";
1204
Brett Wilsonecb80982017-07-12 20:34:511205const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
1206const char kInProductHelpDemoModeChoiceDescription[] =
1207 "Selects the In-Product Help demo mode.";
1208
1209const char kJavascriptHarmonyName[] = "Experimental JavaScript";
1210const char kJavascriptHarmonyDescription[] =
1211 "Enable web pages to use experimental JavaScript features.";
1212
1213const char kJavascriptHarmonyShippingName[] =
1214 "Latest stable JavaScript features";
1215const char kJavascriptHarmonyShippingDescription[] =
1216 "Some web pages use legacy or non-standard JavaScript extensions that may "
1217 "conflict with the latest JavaScript features. This flag allows disabling "
1218 "support of those features for compatibility with such pages.";
1219
Yutaka Hiranof7f2f632017-09-06 10:40:081220const char kKeepAliveRendererForKeepaliveRequestsName[] =
1221 "Keep a renderer alive for keepalive fetch requests";
1222const char kKeepAliveRendererForKeepaliveRequestsDescription[] =
1223 "Keep a render process alive when the process has a pending fetch request "
1224 "with `keepalive' specified.";
1225
Brett Wilsonecb80982017-07-12 20:34:511226const char kLcdTextName[] = "LCD text antialiasing";
1227const char kLcdTextDescription[] =
1228 "If disabled, text is rendered with grayscale antialiasing instead of LCD "
1229 "(subpixel) when doing accelerated compositing.";
1230
1231const char kLoadMediaRouterComponentExtensionName[] =
1232 "Load Media Router Component Extension";
1233const char kLoadMediaRouterComponentExtensionDescription[] =
1234 "Loads the Media Router component extension at startup.";
1235
Hazem Ashmawyf1cd7e42019-03-25 18:17:321236const char kLogJsConsoleMessagesName[] =
1237 "Log JS console messages in system logs";
1238const char kLogJsConsoleMessagesDescription[] =
1239 "Enable logging JS console messages in system logs, please note that they "
1240 "may contain PII.";
1241
Mustafa Emre Acer137dc8b2018-08-29 20:38:131242const char kLookalikeUrlNavigationSuggestionsName[] =
1243 "Navigation suggestions for lookalike URLs";
1244const char kLookalikeUrlNavigationSuggestionsDescription[] =
1245 "Enable navigation suggestions for URLs that are visually similar to "
1246 "popular domains or to domains with a site engagement score.";
1247
Brett Wilsonecb80982017-07-12 20:34:511248const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
1249const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
Brett Wilsonecb80982017-07-12 20:34:511250
spqchanb87755692018-04-05 00:46:091251const char kMediaRouterCastAllowAllIPsName[] =
1252 "Connect to Cast devices on all IP addresses";
1253const char kMediaRouterCastAllowAllIPsDescription[] =
1254 "Have the Media Router connect to Cast devices on all IP addresses, not "
Nick Harperd30507ca2018-08-16 20:24:311255 "just RFC1918/RFC4193 private addresses.";
spqchanb87755692018-04-05 00:46:091256
Brett Wilsonecb80982017-07-12 20:34:511257const char kMessageCenterNewStyleNotificationName[] = "New style notification";
1258const char kMessageCenterNewStyleNotificationDescription[] =
1259 "Enables the experiment style of material-design notification";
1260
Ehsan Karamadebb0f672019-03-22 19:48:391261const char kMimeHandlerViewInCrossProcessFrameName[] =
1262 "MimeHandlerView in cross-process frame";
1263const char kMimeHandlerViewInCrossProcessFrameDescription[] =
1264 "Loads the MimeHandlerView (the extension viewer for certain MIME types "
1265 "such as PDF) in a cross-process frame as opposed to a BrowserPlugin.";
1266
David Roger2183afb2019-02-21 14:19:151267const char kMobileIdentityConsistencyName[] = "Mobile identity consistency";
1268const char kMobileIdentityConsistencyDescription[] =
1269 "Enables stronger identity consistency on mobile";
1270
Marijn Kruisselbrinkfa0e1052019-03-05 22:32:551271const char kNativeFilesystemAPIName[] = "Native Filesystem API";
1272const char kNativeFilesystemAPIDescription[] =
1273 "Enables the experimental Native Filesystem API, giving websites access to "
1274 "the native filesystem";
1275
Brett Wilsonecb80982017-07-12 20:34:511276const char kNewAudioRenderingMixingStrategyName[] =
1277 "New audio rendering mixing strategy";
1278const char kNewAudioRenderingMixingStrategyDescription[] =
1279 "Use the new audio rendering mixing strategy.";
1280
1281const char kNewBookmarkAppsName[] = "The new bookmark app system";
1282const char kNewBookmarkAppsDescription[] =
1283 "Enables the new system for creating bookmark apps.";
1284
Vadym Doroshenkocd4ff782018-07-24 13:41:021285const char kNewPasswordFormParsingName[] =
1286 "New password form parsing for filling passwords";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241287const char kNewPasswordFormParsingDescription[] =
Vadym Doroshenkocd4ff782018-07-24 13:41:021288 "Replaces existing form parsing for filling in password manager with a new "
1289 "version, currently under development. WARNING: when enabled, Password "
1290 "Manager might stop working";
1291
1292const char kNewPasswordFormParsingForSavingName[] =
1293 "New password form parsing for saving passwords";
1294const char kNewPasswordFormParsingForSavingDescription[] =
1295 "Replaces existing form parsing for saving in password manager with a new "
1296 "version, currently under development. WARNING: when enabled, Password "
1297 "Manager might stop working";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241298
rbpotter62fe2c92019-03-26 22:01:291299const char kNewPrintPreviewLayoutName[] = "Enable New Print Preview UI Layout";
1300const char kNewPrintPreviewLayoutDescription[] =
1301 "If enabled, Print Preview will display a new UI layout.";
1302
CJ DiMeglio7b4a199f2017-11-30 01:26:501303const char kUseSurfaceLayerForVideoName[] =
1304 "Enable the use of SurfaceLayer objects for videos.";
1305const char kUseSurfaceLayerForVideoDescription[] =
1306 "Enable compositing onto a Surface instead of a VideoLayer "
1307 "for videos.";
Brett Wilsonecb80982017-07-12 20:34:511308
1309const char kNewUsbBackendName[] = "Enable new USB backend";
1310const char kNewUsbBackendDescription[] =
1311 "Enables the new experimental USB backend for Windows.";
vabr0215a8e2017-03-28 12:47:341312
Sonny Sasaka2d200432018-03-22 17:43:161313const char kNewblueName[] = "Newblue";
1314const char kNewblueDescription[] =
1315 "Enables the use of newblue Bluetooth daemon.";
1316
Peter Boström7df25c72018-12-12 06:40:191317const char kNewTabLoadingAnimation[] = "New tab-loading animation";
1318const char kNewTabLoadingAnimationDescription[] =
1319 "Enables a new look for the tab-loading animation.";
1320
Egor Pasko6fed3822018-05-30 10:33:141321const char kNostatePrefetchName[] = "NoState Prefetch";
vabr0215a8e2017-03-28 12:47:341322const char kNostatePrefetchDescription[] =
Elly Fong-Jonesf4c15772019-01-31 17:40:061323 "If enabled, pre-downloads resources to improve page load speed.";
vabr0215a8e2017-03-28 12:47:341324
Alex Newcomerd7b0cc42018-05-25 22:58:481325const char kNotificationIndicatorName[] = "Notification Indicators";
1326const char kNotificationIndicatorDescription[] =
1327 "Enable notification indicators, which appear on app icons when a "
1328 "notification is active. This will also enable notifications in context "
1329 "menus.";
1330
Brett Wilsonecb80982017-07-12 20:34:511331const char kNotificationsNativeFlagName[] = "Enable native notifications.";
1332const char kNotificationsNativeFlagDescription[] =
1333 "Enable support for using the native notification toasts and notification "
1334 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:341335
Valeriya Sinevich972ac122018-09-05 07:33:191336const char kUseMultiloginEndpointName[] = "Use Multilogin endpoint.";
1337const char kUseMultiloginEndpointDescription[] =
1338 "Use Gaia OAuth multilogin for identity consistency.";
1339
Zentaro Kavanaghbad511c2017-10-18 22:29:001340#if defined(OS_POSIX)
1341const char kNtlmV2EnabledName[] = "Enable NTLMv2 Authentication";
1342const char kNtlmV2EnabledDescription[] =
1343 "Enable NTLMv2 HTTP Authentication. This disables NTLMv1 support.";
1344#endif
1345
Brett Wilsonecb80982017-07-12 20:34:511346const char kOfferStoreUnmaskedWalletCardsName[] =
1347 "Google Payments card saving checkbox";
1348const char kOfferStoreUnmaskedWalletCardsDescription[] =
1349 "Show the checkbox to offer local saving of a credit card downloaded from "
1350 "the server.";
1351
1352const char kOfflineAutoReloadName[] = "Offline Auto-Reload Mode";
1353const char kOfflineAutoReloadDescription[] =
1354 "Pages that fail to load while the browser is offline will be "
1355 "auto-reloaded when the browser is online again.";
1356
1357const char kOfflineAutoReloadVisibleOnlyName[] =
1358 "Only Auto-Reload Visible Tabs";
1359const char kOfflineAutoReloadVisibleOnlyDescription[] =
1360 "Pages that fail to load while the browser is offline will only be "
1361 "auto-reloaded if their tab is visible.";
1362
Brett Wilsonecb80982017-07-12 20:34:511363const char kOmniboxDisplayTitleForCurrentUrlName[] =
1364 "Include title for the current URL in the omnibox";
1365const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
1366 "In the event that the omnibox provides suggestions on-focus, the URL of "
1367 "the current page is provided as the first suggestion without a title. "
1368 "Enabling this flag causes the title to be displayed.";
1369
manukaddd3c42019-04-09 21:20:591370const char kOmniboxLocalEntitySuggestionsName[] =
1371 "Omnibox Local Entity Suggestions";
1372const char kOmniboxLocalEntitySuggestionsDescription[] =
1373 "Enables location specific suggestions displayed with images and enhanced "
1374 "layout, similar to #omnibox-rich-entity-suggestions. Enabling this feature"
1375 "will also enable #omnibox-rich-entity-suggestions.";
1376
manuk2e55a7b2019-02-12 20:08:231377const char kOmniboxMaterialDesignWeatherIconsName[] =
1378 "Omnibox Material Design Weather Icons";
1379const char kOmniboxMaterialDesignWeatherIconsDescription[] =
1380 "Use material design weather icons in the omnibox when displaying weather "
1381 "answers.";
1382
Tomasz Wiszkowskic87dff12019-01-15 02:57:511383const char kOmniboxNewAnswerLayoutName[] = "Omnibox new answer layout";
1384const char kOmniboxNewAnswerLayoutDescription[] =
1385 "Modernize omnibox answers using an enhanced layout with larger icons.";
1386
Tomasz Wiszkowskic7fd5bed2019-02-11 17:33:231387const char kOmniboxRichEntitySuggestionsName[] =
1388 "Omnibox rich entity suggestions";
1389const char kOmniboxRichEntitySuggestionsDescription[] =
1390 "Display entity suggestions using images and an enhanced layout; showing "
manukaddd3c42019-04-09 21:20:591391 "more context and descriptive text about the entity.";
Tomasz Wiszkowskic7fd5bed2019-02-11 17:33:231392
Benoit Lizeab08362c2017-07-19 14:50:541393const char kOmniboxSpareRendererName[] =
1394 "Start spare renderer on omnibox focus";
1395const char kOmniboxSpareRendererDescription[] =
1396 "When the omnibox is focused, start an empty spare renderer. This can "
1397 "speed up the load of the navigation from the omnibox.";
1398
manuk3c0e70a2019-02-21 16:30:551399const char kOmniboxUIBlueSearchLoopAndSearchQueryName[] =
1400 "Omnibox UI Blue Search Loop and Search Query";
1401const char kOmniboxUIBlueSearchLoopAndSearchQueryDescription[] =
1402 "Color the generic search icon and search terms blue.";
1403
manuk4451d032019-02-22 17:24:401404const char kOmniboxUIBlueTitlesAndGrayUrlsOnPageSuggestionsName[] =
1405 "Omnibox UI Blue Titles And Gray Urls On Page Suggestions";
1406const char kOmniboxUIBlueTitlesAndGrayUrlsOnPageSuggestionsDescription[] =
1407 "Displays navigation suggestions with blue titles and gray URLs.";
1408
1409const char kOmniboxUIBlueTitlesOnPageSuggestionsName[] =
1410 "Omnibox UI Blue Titles On Page Suggestions";
1411const char kOmniboxUIBlueTitlesOnPageSuggestionsDescription[] =
1412 "Displays navigation suggestions with blue titles.";
1413
manuk59fd5a62019-02-27 21:14:091414const char kOmniboxUIBoldUserTextOnSearchSuggestionsName[] =
1415 "Omnibox UI Bold User Text On Search Suggestions";
1416const char kOmniboxUIBoldUserTextOnSearchSuggestionsDescription[] =
1417 "Bolds the user text instead of autocomplete text for search suggestions.";
1418
Tommy C. Lie4194b732018-09-28 22:21:511419const char kOmniboxUIHideSteadyStateUrlSchemeName[] =
1420 "Omnibox UI Hide Steady-State URL Scheme";
1421const char kOmniboxUIHideSteadyStateUrlSchemeDescription[] =
1422 "In the omnibox, hide the scheme from steady state displayed URLs. It is "
Tommy C. Libef94ee02018-10-17 19:56:361423 "restored during editing.";
Tommy C. Lie4194b732018-09-28 22:21:511424
Tommy C. Lib20aec72018-11-19 21:38:231425const char kOmniboxUIOneClickUnelideName[] = "Omnibox UI One Click Unelide";
1426const char kOmniboxUIOneClickUnelideDescription[] =
1427 "In the omnibox, undo all unelisions with a single click or focus action.";
1428
Tommy C. Lie4194b732018-09-28 22:21:511429const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsName[] =
1430 "Omnibox UI Hide Steady-State URL Trivial Subdomains";
1431const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsDescription[] =
1432 "In the omnibox, hide trivial subdomains from steady state displayed URLs. "
Tommy C. Libef94ee02018-10-17 19:56:361433 "Hidden portions are restored during editing.";
1434
1435const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefName[] =
1436 "Omnibox UI Hide Steady-State URL Path, Query, and Ref";
1437const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefDescription[] =
1438 "In the omnibox, hide the path, query and ref from steady state displayed "
1439 "URLs. Hidden portions are restored during editing.";
Tommy C. Lid79d4402017-12-22 22:49:121440
Brett Wilsonecb80982017-07-12 20:34:511441const char kOmniboxUIMaxAutocompleteMatchesName[] =
1442 "Omnibox UI Max Autocomplete Matches";
1443
1444const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
1445 "Changes the maximum number of autocomplete matches displayed in the "
1446 "Omnibox UI.";
1447
manuk4f56e9fc2019-02-19 18:04:511448const char kOmniboxUIShowSuffixOnAllSearchSuggestionsName[] =
1449 "Omnibox UI Show Suffix On All Search Suggestions";
1450const char kOmniboxUIShowSuffixOnAllSearchSuggestionsDescription[] =
1451 "Shows the search suffix (e.g. \" - Google Search\") on all search "
1452 "suggestions in the omnibox.";
1453
Tommy C. Liba4e66ef2019-02-12 21:33:281454const char kOmniboxUIShowSuggestionFaviconsName[] =
1455 "Omnibox UI Show Suggestion Favicons";
1456const char kOmniboxUIShowSuggestionFaviconsDescription[] =
1457 "Shows favicons instead of generic vector icons for URL suggestions in the "
1458 "Omnibox dropdown.";
1459
Justin Donnelly65c9e8b2017-10-01 05:15:011460const char kOmniboxUISwapTitleAndUrlName[] = "Omnibox UI Swap Title and URL";
1461const char kOmniboxUISwapTitleAndUrlDescription[] =
1462 "In the omnibox dropdown, shows titles before URLs when both are "
1463 "available.";
1464
manuk0187cfa2019-02-27 21:23:241465const char kOmniboxUIUnboldSuggestionTextName[] =
1466 "Omnibox UI Unbold Suggestion Text";
1467const char kOmniboxUIUnboldSuggestionTextDescription[] =
1468 "Displays search suggestions without bolding.";
1469
manuk12527c802019-02-19 16:38:301470const char kOmniboxUIUseGenericSearchEngineIconName[] =
1471 "Omnibox UI Use Generic Search Engine Icon";
1472const char kOmniboxUIUseGenericSearchEngineIconDescription[] =
1473 "In the omnibox and NTP, shows a generic magnifying glass icon instead of "
1474 "the Search Provider favicon.";
1475
Tommy C. Lia737d3e82019-02-13 23:06:141476const char kOmniboxUIVerticalMarginName[] = "Omnibox UI Vertical Margin";
1477const char kOmniboxUIVerticalMarginDescription[] =
1478 "Changes the vertical margin in the Omnibox UI.";
1479
manukce2cdcf72019-02-26 15:59:291480const char kOmniboxUIWhiteBackgroundOnBlurName[] =
1481 "Omnibox UI White Background On Blur";
1482const char kOmniboxUIWhiteBackgroundOnBlurDescription[] =
manuk59fd5a62019-02-27 21:14:091483 "Set the omnibox background white when it's unfocused";
manukce2cdcf72019-02-26 15:59:291484
Tomasz Wiszkowski947f6d0d2019-03-15 22:27:251485const char kOmniboxZeroSuggestionsOnNTPName[] =
1486 "Omnibox Zero Suggestions on New Tab Page";
1487const char kOmniboxZeroSuggestionsOnNTPDescription[] =
1488 "Offer suggestions when URL bar (omnibox) is focused.";
1489
Vadym Doroshenko6b8f64d2018-11-26 15:35:391490const char kOnlyNewPasswordFormParsingName[] =
1491 "Use only new password form parsing";
1492const char kOnlyNewPasswordFormParsingDescription[] =
1493 "The old password form parsing is disabled";
1494
Mark Lieufaa1b762019-01-08 19:37:281495const char kOnTheFlyMhtmlHashComputationName[] =
1496 "On-The-Fly MHTML Hash Computation";
1497const char kOnTheFlyMhtmlHashComputationDescription[] =
1498 "Save MHTML files to the target location and calculate their content "
1499 "digests in one step.";
1500
Adrienne Walkerc87477e2018-06-06 22:28:211501const char kOopRasterizationName[] = "Out of process rasterization";
1502const char kOopRasterizationDescription[] =
1503 "Perform Ganesh raster in the GPU Process instead of the renderer. "
1504 "Must also enable GPU rasterization";
1505
Brett Wilsonecb80982017-07-12 20:34:511506const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
1507const char kOverlayScrollbarsDescription[] =
1508 "Enable the experimental overlay scrollbars implementation. You must also "
1509 "enable threaded compositing to have the scrollbars animate.";
1510
chaopenge8aa016b2017-08-24 15:20:191511const char kOverlayScrollbarsFlashAfterAnyScrollUpdateName[] =
1512 "Flash Overlay Scrollbars After Any Scroll Update";
1513const char kOverlayScrollbarsFlashAfterAnyScrollUpdateDescription[] =
1514 "Flash Overlay Scrollbars After any scroll update happends in page. You"
1515 " must also enable Overlay Scrollbars.";
1516
chaopeng343678022017-08-24 18:45:001517const char kOverlayScrollbarsFlashWhenMouseEnterName[] =
1518 "Flash Overlay Scrollbars When Mouse Enter";
1519const char kOverlayScrollbarsFlashWhenMouseEnterDescription[] =
1520 "Flash Overlay Scrollbars When Mouse Enter a scrollable area. You must also"
1521 " enable Overlay Scrollbars.";
1522
Daniele Castagna74ddb9c2018-06-21 22:59:021523const char kOverlayStrategiesName[] = "Select HW overlay strategies";
1524const char kOverlayStrategiesDescription[] =
1525 "Select strategies used to promote quads to HW overlays.";
1526const char kOverlayStrategiesDefault[] = "Default";
1527const char kOverlayStrategiesNone[] = "None";
1528const char kOverlayStrategiesUnoccludedFullscreen[] =
1529 "Unoccluded fullscreen buffers (single-fullscreen)";
1530const char kOverlayStrategiesUnoccluded[] =
1531 "Unoccluded buffers (single-fullscreen,single-on-top)";
1532const char kOverlayStrategiesOccludedAndUnoccluded[] =
1533 "Occluded and unoccluded buffers "
1534 "(single-fullscreen,single-on-top,underlay)";
1535
Claudio Magni81326f92017-09-01 05:21:181536const char kUseNewAcceptLanguageHeaderName[] = "Use new Accept-Language header";
1537const char kUseNewAcceptLanguageHeaderDescription[] =
1538 "Adds the base language code after other corresponding language+region "
1539 "codes. This ensures that users receive content in their preferred "
1540 "language.";
1541
Brett Wilsonecb80982017-07-12 20:34:511542const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
1543const char kOverscrollHistoryNavigationDescription[] =
Mohsen Izadi88b392a2018-02-15 06:57:481544 "History navigation in response to horizontal overscroll.";
Brett Wilsonecb80982017-07-12 20:34:511545
1546const char kOverscrollStartThresholdName[] = "Overscroll start threshold";
1547const char kOverscrollStartThresholdDescription[] =
1548 "Changes overscroll start threshold relative to the default value.";
1549const char kOverscrollStartThreshold133Percent[] = "133%";
1550const char kOverscrollStartThreshold166Percent[] = "166%";
1551const char kOverscrollStartThreshold200Percent[] = "200%";
1552
chaopenge2b6e5f2018-05-08 16:40:451553const char kTouchpadOverscrollHistoryNavigationName[] =
1554 "Overscroll history navigation on Touchpad";
1555const char kTouchpadOverscrollHistoryNavigationDescription[] =
1556 "Allows swipe left/right from touchpad change browser navigation.";
1557
Xing Liu5400a002017-09-15 21:48:291558const char kParallelDownloadingName[] = "Parallel downloading";
1559const char kParallelDownloadingDescription[] =
Yannic Bonenbergera32f9902017-11-20 18:47:061560 "Enable parallel downloading to accelerate download speed.";
Xing Liu5400a002017-09-15 21:48:291561
Brett Wilsonecb80982017-07-12 20:34:511562const char kPassiveEventListenerDefaultName[] =
1563 "Passive Event Listener Override";
1564const char kPassiveEventListenerDefaultDescription[] =
1565 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
1566 "haven't requested otherwise) to be treated as passive. This will break "
1567 "touch/wheel behavior on some websites but is useful for demonstrating the "
1568 "potential performance benefits of adopting passive event listeners.";
1569const char kPassiveEventListenerTrue[] = "True (when unspecified)";
1570const char kPassiveEventListenerForceAllTrue[] = "Force All True";
1571
1572const char kPassiveEventListenersDueToFlingName[] =
1573 "Touch Event Listeners Passive Default During Fling";
1574const char kPassiveEventListenersDueToFlingDescription[] =
1575 "Forces touchstart, and first touchmove per scroll event listeners during "
1576 "fling to be treated as passive.";
1577
1578const char kPassiveDocumentEventListenersName[] =
1579 "Document Level Event Listeners Passive Default";
1580const char kPassiveDocumentEventListenersDescription[] =
1581 "Forces touchstart, and touchmove event listeners on document level "
1582 "targets (which haven't requested otherwise) to be treated as passive.";
1583
Sahel Sharify7400e882018-08-13 17:13:211584const char kPassiveDocumentWheelEventListenersName[] =
1585 "Document Level Wheel Event Listeners Passive Default";
1586const char kPassiveDocumentWheelEventListenersDescription[] =
1587 "Forces wheel, and mousewheel event listeners on document level targets "
1588 "(which haven't requested otherwise) to be treated as passive.";
1589
Vaclav Brozekd8a3f542017-11-16 14:21:131590const char kPasswordImportName[] = "Password import";
1591const char kPasswordImportDescription[] =
1592 "Import functionality in password settings.";
Brett Wilsonecb80982017-07-12 20:34:511593
Friedrich Horschige6c27742018-04-23 17:13:411594const char kPasswordsKeyboardAccessoryName[] =
1595 "Add password-related functions to keyboard accessory";
1596const char kPasswordsKeyboardAccessoryDescription[] =
1597 "Adds password generation button and toggle for the passwords bottom sheet "
1598 "to the keyboard accessory. Replaces password generation popups.";
1599
Christos Froussios6e060c42018-07-31 16:17:191600const char kPasswordsMigrateLinuxToLoginDBName[] =
1601 "Migrate passwords to \"Login Data\"";
1602const char kPasswordsMigrateLinuxToLoginDBDescription[] =
Christos Froussiose34c38a2018-09-04 14:27:591603 "Performs a one-off irreversible migration of passwords from the "
Christos Froussios6e060c42018-07-31 16:17:191604 "gnome-keyring or kwallet into the profile directory.";
1605
Rouslan Solomakhinded840112018-11-02 13:27:101606const char kPerMethodCanMakePaymentQuotaName[] =
1607 "Per-method canMakePayment() quota.";
1608const char kPerMethodCanMakePaymentQuotaDescription[] =
1609 "Allow calling canMakePayment() for different payment methods, as long as "
1610 "method-specific parameters remain unchanged.";
1611
Doug Arnett620ff542018-02-06 17:54:221612const char kPreviewsAllowedName[] = "Previews Allowed";
1613const char kPreviewsAllowedDescription[] =
1614 "Allows previews to be shown subject to specific preview types being "
1615 "enabled and the client experiencing specific triggering conditions. "
1616 "May be used as a kill-switch to turn off all potential preview types.";
1617
Brett Wilsonecb80982017-07-12 20:34:511618const char kPrintPdfAsImageName[] = "Print Pdf as Image";
1619const char kPrintPdfAsImageDescription[] =
1620 "If enabled, an option to print PDF files as images will be available in "
1621 "print preview.";
1622
1623const char kPrintPreviewRegisterPromosName[] =
1624 "Print Preview Registration Promos";
1625const char kPrintPreviewRegisterPromosDescription[] =
1626 "Enable registering unregistered cloud printers from print preview.";
1627
Mohsen Izadi93faac12017-07-29 04:45:151628const char kPullToRefreshName[] = "Pull-to-refresh gesture";
1629const char kPullToRefreshDescription[] =
1630 "Pull-to-refresh gesture in response to vertical overscroll.";
Mohsen Izadi8c59ba52018-04-12 18:52:011631const char kPullToRefreshEnabledTouchscreen[] = "Enabled for touchscreen only";
Mohsen Izadi93faac12017-07-29 04:45:151632
Troy Hildebrandt7228ad12018-02-23 21:18:241633const char kQueryInOmniboxName[] = "Query in Omnibox";
1634const char kQueryInOmniboxDescription[] =
1635 "Only display query terms in the omnibox when viewing a search results "
1636 "page.";
1637
Brett Wilsonecb80982017-07-12 20:34:511638const char kQuicName[] = "Experimental QUIC protocol";
1639const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1640
Emily Starke8878d52018-05-11 21:27:261641const char kRecurrentInterstitialName[] =
1642 "Show a message when the same SSL error recurs";
1643const char kRecurrentInterstitialDescription[] =
1644 "Enable a special message on the SSL certificate error page when the same "
1645 "SSL error occurs repeatedly.";
1646
Brett Wilsonecb80982017-07-12 20:34:511647const 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
Alexei Filippov98772752018-01-27 08:26:521688const char kSamplingHeapProfilerName[] = "Native memory sampling profiler.";
1689const char kSamplingHeapProfilerDescription[] =
1690 "Enables native memory sampling profiler with specified rate in KiB. "
1691 "If sampling rate is not provided the default value of 128 KiB is used.";
1692
Brett Wilsonecb80982017-07-12 20:34:511693const char kSaveasMenuLabelExperimentName[] =
1694 "Switch 'Save as' menu labels to 'Download'";
1695const char kSaveasMenuLabelExperimentDescription[] =
1696 "Enables an experiment to switch menu labels that use 'Save as...' to "
1697 "'Download'.";
1698
Charlene Yan0ccd7f52019-04-12 23:20:591699const char kScrollableTabStripName[] = "Scrollable TabStrip";
1700const char kScrollableTabStripDescription[] =
1701 "Allows users to access tabs by scrolling when they no longer fit in the "
1702 "tabstrip.";
1703
Jeffrey Cohene49cc59c2018-10-23 16:27:281704const char kSendTabToSelfName[] = "Send tab to self";
1705const char kSendTabToSelfDescription[] =
Tanya Gupta035a9e202019-04-08 20:01:331706 "Allows users to receive tabs from other synced devices, in order to "
1707 "easily transition those tabs to this device. This enables the sync "
1708 "infrastructure for this feature.";
Jeffrey Cohene49cc59c2018-10-23 16:27:281709
Tanya Gupta035a9e202019-04-08 20:01:331710const char kSendTabToSelfShowSendingUIName[] =
1711 "Send tab to self show sending UI";
1712const char kSendTabToSelfShowSendingUIDescription[] =
1713 "Allows users to send tabs to other synced devices by accessing the "
1714 "sending user interface. Requires Send tab to self to also be enabled";
Jeffrey Cohen9f3e6092019-03-21 21:55:011715
momohattfc352292018-08-29 05:12:361716const char kServiceWorkerImportedScriptUpdateCheckName[] =
1717 "Enable update check for service worker importScripts() resources";
1718const char kServiceWorkerImportedScriptUpdateCheckDescription[] =
1719 "Extend byte-for-byte update check for scripts that are imported by the "
1720 "service worker script via importScripts().";
1721
Azeem Arshad3b1ef73122018-08-30 02:04:151722const char kServiceWorkerLongRunningMessageName[] =
1723 "Service worker long running message dispatch.";
1724const char kServiceWorkerLongRunningMessageDescription[] =
1725 "Enables long running message dispatch method for service workers. "
1726 "Messages sent with this method do not timeout, allowing the service "
1727 "worker to run indefinitely.";
1728
Chris Hamiltonb9612e262019-02-12 21:12:061729const char kSessionRestorePrioritizesBackgroundUseCasesName[] =
1730 "Session restore prioritizes background use cases.";
1731const char kSessionRestorePrioritizesBackgroundUseCasesDescription[] =
1732 "When enabled session restore logic will prioritize sites that make use of "
1733 "background communication mechanisms (favicon and tab title switches, "
1734 "notifications, etc) over sites that do not.";
1735
Brett Wilsonecb80982017-07-12 20:34:511736const char kSettingsWindowName[] = "Show settings in a window";
1737const char kSettingsWindowDescription[] =
1738 "Settings will be shown in a dedicated window instead of as a browser tab.";
1739
Manu Cornetd7ef7c52018-05-01 22:08:231740const char kShelfHoverPreviewsName[] =
1741 "Show previews of running apps when hovering over the shelf.";
1742const char kShelfHoverPreviewsDescription[] =
1743 "Shows previews of the open windows for a given running app when hovering "
1744 "over the shelf.";
1745
Naoki Fukino008a0022018-05-23 18:33:001746const char kShowAndroidFilesInFilesAppName[] =
1747 "Show Android files in Files app";
1748const char kShowAndroidFilesInFilesAppDescription[] =
1749 "Show Android files in Files app if Android is enabled on the device.";
1750
Brett Wilsonecb80982017-07-12 20:34:511751const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
1752const char kShowAutofillSignaturesDescription[] =
Maxim Kolosovskiye66f8cb2018-03-23 10:25:381753 "Annotates web forms with Autofill signatures as HTML attributes. Also "
1754 "marks password fields suitable for password generation.";
Brett Wilsonecb80982017-07-12 20:34:511755
1756const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
1757const char kShowAutofillTypePredictionsDescription[] =
1758 "Annotates web forms with Autofill field type predictions as placeholder "
1759 "text.";
1760
Jonathan Backer93610a82019-03-27 14:02:381761const char kSkiaRendererName[] = "Skia API for OOP-D compositing";
1762const char kSkiaRendererDescription[] =
1763 "If enabled, the display compositor will use Skia as the graphics API "
1764 "instead of OpenGL ES. Requires Viz Display Compositor (OOP-D).";
1765
Shivani Sharma2d5b4b6b2019-01-08 16:07:161766const char kHistoryManipulationIntervention[] =
1767 "History Manipulation Intervention";
1768const char kHistoryManipulationInterventionDescription[] =
1769 "If a page does a client side redirect or adds to the history without a "
1770 "user gesture, then skip it on back/forward UI.";
1771
Carlos IL89128732018-04-03 17:00:251772const char kSupervisedUserCommittedInterstitialsName[] =
1773 "Enable Supervised User Committed Interstitials";
1774const char kSupervisedUserCommittedInterstitialsDescription[] =
1775 "Use committed error pages instead of transient navigation entries for "
1776 "supervised user interstitials";
1777
Brett Wilsonecb80982017-07-12 20:34:511778const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1779const char kSilentDebuggerExtensionApiDescription[] =
1780 "Do not show the infobar when an extension attaches to a page via "
1781 "chrome.debugger API. This is required to debug extension background "
1782 "pages.";
1783
Christopher Thompson75ff845d2018-02-01 20:12:461784const char kSimplifyHttpsIndicatorName[] = "Simplify HTTPS indicator UI";
1785const char kSimplifyHttpsIndicatorDescription[] =
1786 "Change the UI treatment for HTTPS pages.";
1787
Lukasz Anforowiczd2e16e62019-03-28 19:06:591788const char kIsolateOriginsName[] = "Isolate additional origins";
1789const char kIsolateOriginsDescription[] =
1790 "Requires dedicated processes for an additional set of origins, "
1791 "specified as a comma-separated list.";
1792
Alan Wink7c1b2ae22019-04-03 19:18:061793const char kKidsManagementUrlClassificationName[] =
1794 "KidsMangement Url Classification";
1795const char kKidsManagementUrlClassificationDescription[] =
1796 "Uses KidsManagementService to classify URLs for Kid Accounts.";
1797
Lukasz Anforowicz738a88d2018-11-05 19:19:341798const char kSiteIsolationOptOutName[] = "Disable site isolation";
1799const char kSiteIsolationOptOutDescription[] =
1800 "Disables site isolation "
Nick Carter855bc492018-03-10 00:44:571801 "(SitePerProcess, IsolateOrigins, etc). Intended for diagnosing bugs that "
1802 "may be due to out-of-process iframes. Opt-out has no effect if site "
Lukasz Anforowicz42840422018-11-05 21:49:221803 "isolation is force-enabled using a command line switch or using an "
1804 "enterprise policy. "
1805 "Caution: this disables important mitigations for the Spectre CPU "
Nick Carter855bc492018-03-10 00:44:571806 "vulnerability affecting most computers.";
Lukasz Anforowicz738a88d2018-11-05 19:19:341807const char kSiteIsolationOptOutChoiceDefault[] = "Default";
1808const char kSiteIsolationOptOutChoiceOptOut[] = "Disabled (not recommended)";
Brett Wilsonecb80982017-07-12 20:34:511809
Pattideade7972018-04-27 02:59:401810const char kSiteSettings[] = "Site settings";
Brett Wilsonecb80982017-07-12 20:34:511811const char kSiteSettingsDescription[] =
Pattideade7972018-04-27 02:59:401812 "Add the All Sites list to Site Settings.";
Brett Wilsonecb80982017-07-12 20:34:511813
Brett Wilsonecb80982017-07-12 20:34:511814const char kSmoothScrollingName[] = "Smooth Scrolling";
1815const char kSmoothScrollingDescription[] =
1816 "Animate smoothly when scrolling page content.";
1817
Wei-Yin Chen (陳威尹)deff0802018-01-19 06:29:201818const char kSoleIntegrationName[] = "Sole integration";
1819const char kSoleIntegrationDescription[] =
1820 "Enable Sole integration for browser customization. You must restart "
1821 "the browser twice for changes to take effect.";
1822
Justin Donnelly4e448cb2017-07-07 21:32:131823const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
1824 "Enable speculative start of a service worker when a search is predicted.";
Justin Donnelly4e448cb2017-07-07 21:32:131825const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
1826 "If enabled, when the user enters text in the omnibox that looks like a "
1827 "a query, any service worker associated with the search engine the query "
1828 "will be sent to is started early.";
1829
Carlos ILe5fa0a12018-08-03 16:08:321830const char kSSLCommittedInterstitialsName[] = "Committed Interstitials";
1831const char kSSLCommittedInterstitialsDescription[] =
1832 "Use committed error pages instead of transient navigation entries "
1833 "for SSL interstitial error pages (i.e. certificate errors).";
1834
Shubhie Panickerfaf082ed2018-01-03 04:49:151835const char kStopInBackgroundName[] = "Stop in background";
1836const char kStopInBackgroundDescription[] =
1837 "Stop scheduler task queues, in the background, "
Shubhie Panicker56c99a22018-03-21 00:22:281838 " after a grace period.";
Shubhie Panickerfaf082ed2018-01-03 04:49:151839
Shubhie Panicker56c99a22018-03-21 00:22:281840const char kStopNonTimersInBackgroundName[] =
1841 "Stop non-timer task queues background";
1842const char kStopNonTimersInBackgroundDescription[] =
1843 "Stop non-timer task queues, in the background, "
1844 "after a grace period.";
1845
Brett Wilsonecb80982017-07-12 20:34:511846const char kSuggestionsWithSubStringMatchName[] =
1847 "Substring matching for Autofill suggestions";
1848const char kSuggestionsWithSubStringMatchDescription[] =
1849 "Match Autofill suggestions based on substrings (token prefixes) rather "
1850 "than just prefixes.";
vabr0215a8e2017-03-28 12:47:341851
Marc Treib4bd95e72018-08-30 06:30:581852const char kSyncSupportSecondaryAccountName[] =
1853 "Support secondary accounts for Sync standalone transport";
1854const char kSyncSupportSecondaryAccountDescription[] =
1855 "If enabled, allows Chrome Sync to start in standalone transport mode for "
1856 "a signed-in account that has not been chosen as Chrome's primary account. "
1857 "This only has an effect if sync-standalone-transport is also enabled.";
1858
Jan Krcal2ff23f7c2018-09-04 16:16:131859const char kSyncUSSAutofillProfileName[] = "Enable USS for autofill profile";
1860const char kSyncUSSAutofillProfileDescription[] =
1861 "Enables the new implementation of autofill profile sync";
1862
Jan Krcale3641b92018-08-10 17:53:311863const char kSyncUSSAutofillWalletDataName[] =
1864 "Enable USS for autofill wallet data";
1865const char kSyncUSSAutofillWalletDataDescription[] =
1866 "Enables the new implementation of autofill walet data sync";
1867
Jan Krcal1e883642019-03-06 16:53:451868const char kSyncUSSAutofillWalletMetadataName[] =
1869 "Enable USS for autofill wallet metadata";
1870const char kSyncUSSAutofillWalletMetadataDescription[] =
1871 "Enables the new implementation of autofill walet metadata sync";
1872
Brett Wilsonecb80982017-07-12 20:34:511873const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1874const char kSyncSandboxDescription[] =
1875 "Connects to the testing server for Chrome Sync.";
vabr0215a8e2017-03-28 12:47:341876
Joe Downing8cbbc192018-05-14 17:37:071877const char kSystemKeyboardLockName[] = "Experimental system keyboard lock";
1878const char kSystemKeyboardLockDescription[] =
1879 "Enables websites to use the keyboard.lock() API to intercept system "
1880 "keyboard shortcuts and have the events routed directly to the website "
1881 "when in fullscreen mode.";
1882
Matt Simmons1fd0c9f2019-04-15 19:08:221883const char kTabEngagementReportingName[] = "Tab Engagement Metrics";
1884const char kTabEngagementReportingDescription[] =
1885 "Tracks tab engagement and lifetime metrics.";
1886
Yusuf Ozuysal67f05a02019-02-15 19:30:521887const char kTabGridLayoutAndroidName[] = "Tab Grid Layout";
1888const char kTabGridLayoutAndroidDescription[] =
1889 "Allows users to see their tabs in a grid layout in the tab switcher.";
1890
Yusuf Ozuysal436d90b82019-03-15 22:17:581891const char kTabGroupsAndroidName[] = "Tab Groups";
1892const char kTabGroupsAndroidDescription[] =
1893 "Allows users to create groups to better organize their tabs.";
1894
Taylor Bergquistbcc15462018-12-05 00:36:561895const char kTabGroupsName[] = "Tab Groups";
1896const char kTabGroupsDescription[] =
1897 "Allows users to organize tabs into visually distinct groups, e.g. to "
1898 "separate tabs associated with different tasks.";
1899
Caroline Risinge121c2b2018-12-03 20:19:291900const char kTabHoverCardsName[] = "Tab Hover Cards";
1901const char kTabHoverCardsDescription[] =
1902 "Enables a popup containing tab information to be visible when hovering "
1903 "over a tab. This will replace tooltips for tabs.";
1904
Dana Friedacaa8ef52019-02-08 02:20:351905const char kTabHoverCardImagesName[] = "Tab Hover Card Images";
1906const char kTabHoverCardImagesDescription[] =
1907 "Shows a preview image in tab hover cards, if tab hover cards are enabled.";
1908
Christian Dullweberd0d96f02017-09-13 09:22:511909const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1910const char kTabsInCbdDescription[] =
1911 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
1912
Daniele Castagna0fead93e2018-01-10 20:40:291913const char kTintGlCompositedContentName[] = "Tint GL-composited content";
1914const char kTintGlCompositedContentDescription[] =
1915 "Tint contents composited using GL with a shade of red to help debug and "
1916 "study overlay support.";
1917
Peter Kastingd77428352018-10-26 15:20:251918const char kTopChromeTouchUiName[] = "Touch UI Layout";
1919const char kTopChromeTouchUiDescription[] =
1920 "Enables touch UI layout in the browser's top chrome.";
vabr0215a8e2017-03-28 12:47:341921
Brett Wilsonecb80982017-07-12 20:34:511922const char kThreadedScrollingName[] = "Threaded scrolling";
1923const char kThreadedScrollingDescription[] =
1924 "Threaded handling of scroll-related input events. Disabling this will "
1925 "force all such scroll events to be handled on the main thread. Note that "
1926 "this can dramatically hurt scrolling performance of most websites and is "
1927 "intended for testing purposes only.";
1928
Dominick Ng8896b1cd2017-10-17 23:24:361929const char kTopSitesFromSiteEngagementName[] = "Top Sites from Site Engagement";
1930const char kTopSitesFromSiteEngagementDescription[] =
1931 "Enable Top Sites on the New Tab Page to be sourced and sorted using site "
1932 "engagement.";
1933
Brett Wilsonecb80982017-07-12 20:34:511934const char kTouchAdjustmentName[] = "Touch adjustment";
1935const char kTouchAdjustmentDescription[] =
1936 "Refine the position of a touch gesture in order to compensate for touches "
1937 "having poor resolution compared to a mouse.";
1938
1939const char kTouchDragDropName[] = "Touch initiated drag and drop";
1940const char kTouchDragDropDescription[] =
1941 "Touch drag and drop can be initiated through long press on a draggable "
1942 "element.";
1943
1944const char kTouchEventsName[] = "Touch Events API";
1945const char kTouchEventsDescription[] =
1946 "Force Touch Events API feature detection to always be enabled or "
1947 "disabled, or to be enabled when a touchscreen is detected on startup "
Ella Gea6a203c92017-10-26 19:09:291948 "(Automatic).";
Brett Wilsonecb80982017-07-12 20:34:511949
1950const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
1951const char kTouchSelectionStrategyDescription[] =
1952 "Controls how text selection granularity changes when touch text selection "
1953 "handles are dragged. Non-default behavior is experimental.";
1954const char kTouchSelectionStrategyCharacter[] = "Character";
1955const char kTouchSelectionStrategyDirection[] = "Direction";
1956
1957const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
1958const char kTraceUploadUrlDescription[] =
1959 "This is to be used in conjunction with the enable-navigation-tracing "
1960 "flag. Please select the label that best describes the recorded traces. "
1961 "This will choose the destination the traces are uploaded to. If you are "
1962 "not sure, select other. If left empty, no traces will be uploaded.";
1963const char kTraceUploadUrlChoiceOther[] = "Other";
1964const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1965const char kTraceUploadUrlChoiceQa[] = "QA";
1966const char kTraceUploadUrlChoiceTesting[] = "Testing";
1967
Anthony Vallee-Dubois265c5692018-06-01 15:57:141968const char kTranslateForceTriggerOnEnglishName[] =
1969 "Select which language model to use to trigger translate on English "
1970 "content";
1971const char kTranslateForceTriggerOnEnglishDescription[] =
1972 "Force the Translate Triggering on English pages experiment to be enabled "
1973 "with the selected language model active.";
1974
Mustafa Emre Acerb3aa36a82018-05-22 21:44:051975const char kTreatInsecureOriginAsSecureName[] =
1976 "Insecure origins treated as secure";
1977const char kTreatInsecureOriginAsSecureDescription[] =
1978 "Treat given (insecure) origins as secure origins. Multiple origins can be "
1979 "supplied as a comma-separated list. For the definition of secure "
1980 "contexts, "
1981 "see https://w3c.github.io/webappsec-secure-contexts/";
1982
Brett Wilsonecb80982017-07-12 20:34:511983const char kTrySupportedChannelLayoutsName[] =
1984 "Causes audio output streams to check if channel layouts other than the "
1985 "default hardware layout are available.";
1986const char kTrySupportedChannelLayoutsDescription[] =
1987 "Causes audio output streams to check if channel layouts other than the "
1988 "default hardware layout are available. Turning this on will allow the OS "
1989 "to do stereo to surround expansion if supported. May expose third party "
1990 "driver bugs, use with caution.";
1991
David Roger6762a092018-01-31 15:55:071992const char kUnifiedConsentName[] = "Unified Consent";
1993const char kUnifiedConsentDescription[] =
1994 "Enables a unified management of user consent for privacy-related "
1995 "features. This includes new confirmation screens and improved settings "
1996 "pages.";
1997
Brett Wilsonecb80982017-07-12 20:34:511998const char kUiPartialSwapName[] = "Partial swap";
1999const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
2000
Wei Li790e7a8572018-03-23 01:31:552001const char kUsePdfCompositorServiceName[] =
2002 "Use PDF compositor service for printing";
2003const char kUsePdfCompositorServiceDescription[] =
2004 "When enabled, use PDF compositor service to composite and generate PDF "
2005 "files for printing. When site isolation is enabled, disabling this will "
2006 "not stop using PDF compositor service since the service is required for "
2007 "printing out-of-process iframes correctly.";
2008
Mustaq Ahmedc646c0a2017-10-20 20:08:302009const char kUserActivationV2Name[] = "User Activation v2";
2010const char kUserActivationV2Description[] =
2011 "Enable simple user activation for APIs that are otherwise controlled by "
2012 "user gesture tokens.";
2013
Brett Wilsonecb80982017-07-12 20:34:512014const char kUseSuggestionsEvenIfFewFeatureName[] =
2015 "Disable minimum for server-side tile suggestions on NTP.";
2016const char kUseSuggestionsEvenIfFewFeatureDescription[] =
2017 "Request server-side suggestions even if there are only very few of them "
2018 "and use them for tiles on the New Tab Page.";
2019
2020const char kV8CacheOptionsName[] = "V8 caching mode.";
2021const char kV8CacheOptionsDescription[] =
2022 "Caching mode for the V8 JavaScript engine.";
Brett Wilsonecb80982017-07-12 20:34:512023const char kV8CacheOptionsCode[] = "Cache V8 compiler data.";
2024
Michael Hablich896d52662017-10-23 15:59:572025const char kV8VmFutureName[] = "Future V8 VM features";
2026const char kV8VmFutureDescription[] =
2027 "This enables upcoming and experimental V8 VM features. "
2028 "This flag does not enable experimental JavaScript features.";
2029
Hannes Payer1130d5672018-06-05 07:37:312030const char kV8OrinocoName[] = "V8 Orinoco garbage collection features";
2031const char kV8OrinocoDescription[] =
2032 "This enables the V8 Orinoco garbage collection features.";
2033
Brett Wilsonecb80982017-07-12 20:34:512034const char kWalletServiceUseSandboxName[] =
2035 "Use Google Payments sandbox servers";
2036const char kWalletServiceUseSandboxDescription[] =
2037 "For developers: use the sandbox service for Google Payments API calls.";
2038
Brett Wilsonecb80982017-07-12 20:34:512039const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
2040const char kWebglDraftExtensionsDescription[] =
2041 "Enabling this option allows web applications to access the WebGL "
2042 "Extensions that are still in draft status.";
2043
2044const char kWebMidiName[] = "Web MIDI API";
2045const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
2046
Qingsi Wangec2dbf942018-11-03 05:33:042047const char kWebrtcHideLocalIpsWithMdnsName[] =
2048 "Anonymize local IPs exposed by WebRTC.";
2049const char kWebrtcHideLocalIpsWithMdnsDecription[] =
2050 "Conceal local IP addresses with mDNS hostnames.";
2051
Alex Loikob5fb1282018-08-14 10:04:402052const char kWebrtcHybridAgcName[] = "WebRTC hybrid Agc2/Agc1.";
2053const char kWebrtcHybridAgcDescription[] =
2054 "WebRTC Agc2 digital adaptation with Agc1 analog adaptation.";
2055
Brett Wilsonecb80982017-07-12 20:34:512056const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
2057const char kWebrtcHwDecodingDescription[] =
2058 "Support in WebRTC for decoding video streams using platform hardware.";
2059
2060const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
2061const char kWebrtcHwEncodingDescription[] =
2062 "Support in WebRTC for encoding video streams using platform hardware.";
2063
2064const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
2065const char kWebrtcHwH264EncodingDescription[] =
2066 "Support in WebRTC for encoding h264 video streams using platform "
2067 "hardware.";
2068
2069const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
2070const char kWebrtcHwVP8EncodingDescription[] =
2071 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
2072
Sreerenj Balachandran2a5fd0972019-02-08 22:15:202073const char kWebrtcHwVP9EncodingName[] = "WebRTC hardware vp9 video encoding";
2074const char kWebrtcHwVP9EncodingDescription[] =
2075 "Support in WebRTC for encoding vp9 video streams using platform hardware.";
2076
Niels Möller090866a2018-02-13 10:55:032077const char kWebrtcNewEncodeCpuLoadEstimatorName[] =
2078 "WebRTC new encode cpu load estimator";
2079const char kWebrtcNewEncodeCpuLoadEstimatorDescription[] =
2080 "Enable new estimator for the encoder cpu load, for evaluation and "
2081 "testing. Intended to improve accuracy when screen casting.";
2082
Elad Alon85e0d0be2018-06-26 10:38:372083const char kWebRtcRemoteEventLogName[] = "WebRTC remote-bound event logging";
2084const char kWebRtcRemoteEventLogDescription[] =
2085 "Allow collecting WebRTC event logs and uploading them to Crash. "
2086 "Please note that, even if enabled, this will still require "
2087 "a policy to be set, for it to have an effect.";
2088
Brett Wilsonecb80982017-07-12 20:34:512089const char kWebrtcSrtpAesGcmName[] =
2090 "Negotiation with GCM cipher suites for SRTP in WebRTC";
2091const char kWebrtcSrtpAesGcmDescription[] =
2092 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
2093
Joachim Bauch4a41d7512017-08-23 14:24:232094const char kWebrtcSrtpEncryptedHeadersName[] =
2095 "Negotiation with encrypted header extensions for SRTP in WebRTC";
2096const char kWebrtcSrtpEncryptedHeadersDescription[] =
2097 "When enabled, WebRTC will try to negotiate encrypted header extensions "
2098 "for SRTP.";
2099
Brett Wilsonecb80982017-07-12 20:34:512100const 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
Dmitry Skiba9c3efa72017-07-20 22:01:142281const char kDontPrefetchLibrariesName[] = "Don't Prefetch Libraries";
2282const char kDontPrefetchLibrariesDescription[] =
2283 "Don't prefetch libraries after loading.";
2284
Joy Ming189b0cc2017-12-08 19:42:432285const char kDownloadsLocationChangeName[] = "Enable downloads location change";
2286const char kDownloadsLocationChangeDescription[] =
2287 "Enable changing default downloads storage location on Android.";
2288
Shakti Sahu32b2ee102018-05-17 00:04:462289const char kDownloadProgressInfoBarName[] = "Enable download progress infobar";
2290const char kDownloadProgressInfoBarDescription[] =
2291 "Enables an infobar notifying users about status of current downloads.";
2292
Shakti Sahu9ec8cfd2018-07-17 13:29:292293const char kDownloadHomeV2Name[] = "Enable download home v2";
2294const char kDownloadHomeV2Description[] =
2295 "Enables the new UI for download home";
2296
Hesen Zhangf7ad6142019-03-12 23:48:312297const char kDownloadRenameName[] = "Enable download rename";
2298const char kDownloadRenameDescription[] = "Enables rename option for downloads";
2299
Fabio Tirelo918089a2018-10-22 21:24:082300const char kAutofillManualFallbackAndroidName[] =
2301 "Enable Autofill manual fallback for Addresses and Payments (Android)";
2302const char kAutofillManualFallbackAndroidDescription[] =
2303 "If enabled, adds toggle for addresses and payments bottom sheet to the "
2304 "keyboard accessory.";
2305
Fabio Tirelo315e65922018-09-05 03:35:492306const char kEnableAutofillRefreshStyleName[] =
2307 "Enable Autofill refresh style (Android)";
2308const char kEnableAutofillRefreshStyleDescription[] =
2309 "Enable modernized style for Autofill on Android";
2310
Vitalii Iarkof4ed32d2017-09-26 13:15:532311const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
Brett Wilsonff596952017-07-14 01:06:552312const char kEnableAndroidSpellcheckerDescription[] =
2313 "Enables use of the Android spellchecker.";
Brett Wilsonff596952017-07-14 01:06:552314
Lei Tianbd5a3bf2018-02-28 19:01:162315const char kEnableCommandLineOnNonRootedName[] =
2316 "Enable command line on non-rooted devices";
2317const char kEnableCommandLineOnNoRootedDescription[] =
2318 "Enable reading command line file on non-rooted devices (DANGEROUS).";
2319
Brett Wilsonff596952017-07-14 01:06:552320const char kEnableCustomContextMenuName[] = "Enable custom context menu";
2321const char kEnableCustomContextMenuDescription[] =
2322 "Enables a new context menu when a link, image, or video is pressed within "
2323 "Chrome.";
2324
Sinan Sahin3bafe272019-03-11 17:03:062325const char kEnableRevampedContextMenuName[] =
2326 "Enable the revamped context menu";
2327const char kEnableRevampedContextMenuDescription[] =
2328 "Enables a revamped context menu when a link, image, or video is long "
2329 "pressed within Chrome.";
2330
Brett Wilsonff596952017-07-14 01:06:552331const char kEnableNtpRemoteSuggestionsName[] =
2332 "Show server-side suggestions on the New Tab page";
2333const char kEnableNtpRemoteSuggestionsDescription[] =
2334 "If enabled, the list of content suggestions on the New Tab page will "
2335 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
2336 "allows to override the source used to retrieve these server-side "
2337 "suggestions.";
2338
Brett Wilsonff596952017-07-14 01:06:552339const char kEnableNtpSuggestionsNotificationsName[] =
2340 "Notify about new content suggestions available at the New Tab page";
2341const char kEnableNtpSuggestionsNotificationsDescription[] =
2342 "If enabled, notifications will inform about new content suggestions on "
2343 "the New Tab page.";
2344
Brett Wilsonff596952017-07-14 01:06:552345const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
2346const char kEnableOfflinePreviewsDescription[] =
2347 "Enable showing offline page previews on slow networks.";
2348
2349const char kEnableOskOverscrollName[] = "Enable OSK Overscroll";
2350const char kEnableOskOverscrollDescription[] =
2351 "Enable OSK overscroll support. With this flag on, the OSK will only "
2352 "resize the visual viewport.";
2353
Brett Wilsonff596952017-07-14 01:06:552354const char kEnableWebNfcName[] = "WebNFC";
2355const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
2356
Donn Denmanffaeaa32018-10-12 17:37:532357const char kEphemeralTabName[] = "An Ephemeral Tab in an Overlay Panel";
2358const char kEphemeralTabDescription[] =
Donn Denmanb45c26a2019-02-13 01:42:212359 "Enable a 'Preview page/image' at a linked page into an overlay.";
Donn Denmanffaeaa32018-10-12 17:37:532360
Lei Zhang0a318af2018-11-14 02:19:462361const char kExploreSitesName[] = "Explore websites";
2362const char kExploreSitesDescription[] =
2363 "Enables portal from new tab page to explore websites.";
2364
Xing Liu7d57dd32019-01-20 02:34:182365const char kForegroundNotificationManagerName[] =
2366 "Foreground notification manager";
2367const char kForegroundNotificationManagerDescription[] =
2368 "Enable foreground notification manager to handle foreground service and "
2369 "notification.";
2370
Daniel Parke74fcf862018-03-27 18:05:452371const char kHomePageButtonName[] = "Force Enable Home Page Button";
Daniel Park990d0992018-05-18 22:12:512372const char kHomePageButtonDescription[] = "Displays a home button if enabled.";
Daniel Parke74fcf862018-03-27 18:05:452373
Yafei Duanbb7663f32018-07-17 01:33:152374const char kHomepageTileName[] =
2375 "Enable Homepage tile shown in Suggested Tiles";
2376const char kHomepageTileDescription[] =
2377 "When NTPButton is enabled, the first tile of the Suggested Tiles will be "
2378 "used for homepage. It will not have an effect when NTPButton is disabled.";
2379
Jian Li4b252642018-07-23 19:49:072380const char kIncognitoStringsName[] = "Alternate incognito strings";
2381const char kIncognitoStringsDescription[] =
2382 "Show alternate incognito strings if enabled.";
2383
Theresa920e0ed2018-03-07 18:12:442384const char kInterestFeedContentSuggestionsDescription[] =
Yafei Duanbb7663f32018-07-17 01:33:152385 "Use the interest feed to render content suggestions. Currently "
2386 "content "
Theresa920e0ed2018-03-07 18:12:442387 "suggestions are shown on the New Tab Page.";
2388const char kInterestFeedContentSuggestionsName[] =
2389 "Interest Feed Content Suggestions";
2390
Leo Zhang051b75482017-12-20 03:28:302391const char kLanguagesPreferenceName[] = "Language Settings";
2392const char kLanguagesPreferenceDescription[] =
2393 "Enable this option for Language Settings feature on Android.";
2394
Brett Wilsonff596952017-07-14 01:06:552395const char kLsdPermissionPromptName[] =
2396 "Location Settings Dialog Permission Prompt";
2397const char kLsdPermissionPromptDescription[] =
2398 "Whether to use the Google Play Services Location Settings Dialog "
2399 "permission dialog.";
2400
Ioana Pandeled8dc2b692019-02-20 12:04:152401const char kManualPasswordGenerationAndroidName[] =
2402 "Manual password generation";
2403const char kManualPasswordGenerationAndroidDescription[] =
2404 "Whether Chrome should offer users the option to manually request to "
2405 "generate passwords on Android.";
Amirhossein Simjour97b4154f2018-02-20 03:49:592406
Brett Wilsonff596952017-07-14 01:06:552407const char kMediaScreenCaptureName[] = "Experimental ScreenCapture.";
2408const char kMediaScreenCaptureDescription[] =
2409 "Enable this option for experimental ScreenCapture feature on Android.";
2410
Dan Harrington541db9e2018-07-30 18:36:302411const char kNewNetErrorPageUIName[] = "Enable new UI for net-error page";
2412const char kNewNetErrorPageUIDescription[] =
Dan Harringtonc78e4622019-03-22 19:13:242413 "Enables showing available offline content on the net-error (Dino) page.";
Dan Harrington541db9e2018-07-30 18:36:302414
Brett Wilsonff596952017-07-14 01:06:552415const char kNewPhotoPickerName[] = "Enable new Photopicker";
2416const char kNewPhotoPickerDescription[] =
2417 "Activates the new picker for selecting photos.";
2418
2419const char kNoCreditCardAbort[] = "No Credit Card Abort";
2420const char kNoCreditCardAbortDescription[] =
2421 "Whether or not the No Credit Card Abort is enabled.";
2422
Daniel Park990d0992018-05-18 22:12:512423const char kNtpButtonName[] = "Enable NTP Button";
2424const char kNtpButtonDescription[] =
2425 "Displays a New Tab Page button in the toolbar if enabled.";
2426
Jian Liade82832018-09-06 22:31:412427const char kOfflineIndicatorAlwaysHttpProbeName[] = "Always http probe";
2428const char kOfflineIndicatorAlwaysHttpProbeDescription[] =
2429 "Always do http probe to detect network connectivity for offline indicator "
2430 "as opposed to just taking the connection state from the system."
2431 "Used for testing.";
2432
2433const char kOfflineIndicatorChoiceName[] = "Offline indicator choices";
2434const char kOfflineIndicatorChoiceDescription[] =
2435 "Show an offline indicator while offline.";
Jian Li1413ebf2018-06-14 20:46:322436
Brett Wilsonff596952017-07-14 01:06:552437const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
2438const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
2439
2440const char kOfflinePagesCtV2Name[] = "Enable Offline Pages CT V2 features.";
2441const char kOfflinePagesCtV2Description[] =
2442 "V2 features include attributing pages to the app that initiated the "
2443 "custom tabs, and being able to query for pages by page attribution.";
2444
Cathy Li7311d792018-04-05 00:34:162445const char kOfflinePagesCTSuppressNotificationsName[] =
2446 "Disable download complete notification for whitelisted CCT apps.";
2447const char kOfflinePagesCTSuppressNotificationsDescription[] =
2448 "Disable download complete notification for page downloads originating "
2449 "from a CCT app whitelisted to show their own download complete "
2450 "notification.";
2451
Candice Sy74fa7a352018-03-30 23:46:492452const char kOfflinePagesDescriptiveFailStatusName[] =
2453 "Enables descriptive failed download status text.";
2454const char kOfflinePagesDescriptiveFailStatusDescription[] =
2455 "Enables failed download status text in notifications and Downloads Home "
2456 "to state the reason the request failed if the failure is actionable.";
2457
2458const char kOfflinePagesDescriptivePendingStatusName[] =
2459 "Enables descriptive pending download status text.";
2460const char kOfflinePagesDescriptivePendingStatusDescription[] =
2461 "Enables pending download status text in notifications and Downloads Home "
2462 "to state the reason the request is pending.";
2463
2464const char kOfflinePagesInDownloadHomeOpenInCctName[] =
2465 "Enables offline pages in the downloads home to be opened in CCT.";
2466const char kOfflinePagesInDownloadHomeOpenInCctDescription[] =
2467 "When enabled offline pages launched from the Downloads Home will be "
2468 "opened in Chrome Custom Tabs (CCT) instead of regular tabs.";
2469
Carlos Knippschild09272ecd2017-12-09 03:29:362470const char kOfflinePagesLimitlessPrefetchingName[] =
2471 "Removes resource usage limits for the prefetching of offline pages.";
2472const char kOfflinePagesLimitlessPrefetchingDescription[] =
2473 "Allows the prefetching of suggested offline pages to ignore resource "
2474 "usage limits. This allows it to completely ignore data usage limitations "
2475 "and allows downloads to happen with any kind of connection.";
2476
Brett Wilsonff596952017-07-14 01:06:552477const char kOfflinePagesLoadSignalCollectingName[] =
2478 "Enables collecting load timing data for offline page snapshots.";
2479const char kOfflinePagesLoadSignalCollectingDescription[] =
2480 "Enables loading completeness data collection while writing an offline "
2481 "page. This data is collected in the snapshotted offline page to allow "
2482 "data analysis to improve deciding when to make the offline snapshot.";
2483
2484const char kOfflinePagesPrefetchingName[] =
2485 "Enables suggested offline pages to be prefetched.";
2486const char kOfflinePagesPrefetchingDescription[] =
2487 "Enables suggested offline pages to be prefetched, so useful content is "
2488 "available while offline.";
2489
Pete Williamson7845dff2017-09-20 11:06:192490const char kOfflinePagesResourceBasedSnapshotName[] =
2491 "Enables offline page snapshots to be based on percentage of page loaded.";
2492const char kOfflinePagesResourceBasedSnapshotDescription[] =
2493 "Enables offline page snapshots to use a resource percentage based "
2494 "approach for determining when the page is loaded as opposed to a time "
2495 "based approach";
2496
Collin Baker17f92a52017-07-19 21:41:252497const char kOfflinePagesRenovationsName[] = "Enables offline page renovations.";
2498const char kOfflinePagesRenovationsDescription[] =
2499 "Enables offline page renovations which correct issues with dynamic "
2500 "content that occur when offlining pages that use JavaScript.";
2501
Yafei Duan36b4b5b2018-08-07 00:40:032502const char kOfflinePagesLivePageSharingName[] =
2503 "Enables live page sharing of offline pages";
2504const char kOfflinePagesLivePageSharingDescription[] =
2505 "Enables to share current loaded page as offline page by saving as MHTML "
2506 "first.";
2507
Cathy Lie0d88762018-04-12 08:03:012508const char kOfflinePagesShowAlternateDinoPageName[] =
2509 "Enable alternate dino page with more user capabilities.";
2510const char kOfflinePagesShowAlternateDinoPageDescription[] =
2511 "Enables the dino page to show more buttons and offer existing offline "
2512 "content.";
2513
Brett Wilsonff596952017-07-14 01:06:552514const char kOffliningRecentPagesName[] =
2515 "Enable offlining of recently visited pages";
2516const char kOffliningRecentPagesDescription[] =
2517 "Enable storing recently visited pages locally for offline use. Requires "
2518 "Offline Pages to be enabled.";
2519
Matthew Jonesa88b95852017-11-08 23:13:502520const char kProgressBarThrottleName[] = "Android progress update throttling.";
2521const char kProgressBarThrottleDescription[] =
2522 "Limit the maximum progress update to make progress appear smoother.";
2523
Piotr Swigon7c296ef2017-08-29 04:32:002524const char kPwaImprovedSplashScreenName[] =
2525 "Improved Splash Screen for standalone PWAs";
2526const char kPwaImprovedSplashScreenDescription[] =
2527 "Enables the Improved Splash Screen UX for standalone PWAs based on new "
2528 "Web App Manifest attributes";
Piotr Swigon9f630b32017-07-26 09:42:492529const char kPwaPersistentNotificationName[] =
2530 "Persistent notification in standalone PWA";
2531const char kPwaPersistentNotificationDescription[] =
2532 "Enables a persistent Android notification for standalone PWAs";
2533
Brett Wilsonff596952017-07-14 01:06:552534const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
2535const char kReaderModeHeuristicsDescription[] =
2536 "Determines what pages the Reader Mode infobar is shown on.";
2537const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
2538const char kReaderModeHeuristicsAdaboost[] = "Non-mobile-friendly articles";
2539const char kReaderModeHeuristicsAllArticles[] = "All articles";
2540const char kReaderModeHeuristicsAlwaysOff[] = "Never";
2541const char kReaderModeHeuristicsAlwaysOn[] = "Always";
2542
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:182543const char kReaderModeInCCTName[] = "Reader Mode in CCT";
2544const char kReaderModeInCCTDescription[] =
2545 "Open Reader Mode in Chrome Custom Tabs.";
2546
Varun Khaneja2a8229f2019-01-12 00:57:262547const char kSafeBrowsingTelemetryForApkDownloadsName[] =
2548 "Send some telemetry for APK downloads for extended reporting users";
2549const char kSafeBrowsingTelemetryForApkDownloadsDescription[] =
2550 "If enabled, sends some information about the source and hash of the "
2551 "contents of any APK files downloaded by a user who has opted into Safe "
2552 "Browsing Extended Reporting already.";
2553
Varun Khaneja80712a82018-10-12 23:34:592554const char kSafeBrowsingUseLocalBlacklistsV2Name[] =
2555 "Use local Safe Browsing blacklists";
2556const char kSafeBrowsingUseLocalBlacklistsV2Description[] =
2557 "If enabled, maintain a copy of Safe Browsing blacklists in the browser "
2558 "process to check the Safe Browsing reputation of URLs without calling "
2559 "into GmsCore for every URL.";
2560
Matthew Jones53114262018-12-12 16:36:472561const char kSearchReadyOmniboxName[] = "Search Ready Omnibox";
2562const char kSearchReadyOmniboxDescription[] =
2563 "Clears the omnibox and adds a suggestion item to share, copy, or edit the "
2564 "URL.";
2565
Brett Wilsonff596952017-07-14 01:06:552566const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2567const char kSetMarketUrlForTestingDescription[] =
2568 "When enabled, sets the market URL for use in testing the update menu "
2569 "item.";
2570
Theresaeea05a12018-05-09 21:01:592571const char kSiteExplorationUiName[] = "Site Exploration UI";
2572const char kSiteExplorationUiDescription[] =
2573 "Show site suggestions in the Exploration UI";
2574
Alex Moshchuk07e1bb42019-03-08 04:44:082575const char kSiteIsolationForPasswordSitesName[] =
2576 "Site Isolation For Password Sites";
2577const char kSiteIsolationForPasswordSitesDescription[] =
2578 "Security mode that enables site isolation for sites based on "
2579 "password-oriented heuristics, such as a user typing in a password.";
2580
Lei Zhang0a318af2018-11-14 02:19:462581const char kStrictSiteIsolationName[] = "Strict site isolation";
2582const char kStrictSiteIsolationDescription[] =
2583 "Security mode that enables site isolation for all sites (SitePerProcess). "
2584 "In this mode, each renderer process will contain pages from at most one "
2585 "site, using out-of-process iframes when needed. "
2586 "Check chrome://process-internals to see the current isolation mode. "
2587 "Setting this flag to 'Enabled' turns on site isolation regardless of the "
2588 "default. Here, 'Disabled' is a legacy value that actually means "
2589 "'Default,' in which case site isolation may be already enabled based on "
2590 "platform, enterprise policy, or field trial. See also "
2591 "#site-isolation-trial-opt-out for how to disable site isolation for "
2592 "testing.";
2593
Anthony Vallee-Dubois4623e1b2018-10-11 22:09:182594const char kTranslateAndroidManualTriggerName[] =
2595 "Enable manual translate trigger";
2596const char kTranslateAndroidManualTriggerDescription[] =
2597 "Show a menu item in the main menu that triggers page translation.";
2598
Brett Wilsonff596952017-07-14 01:06:552599const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2600const char kUpdateMenuBadgeDescription[] =
Tommy Nyquist3c02e592018-10-18 23:36:442601 "When enabled, a badge will be shown on the app menu button if the update "
2602 "type is Update Available or Unsupported OS Version.";
Brett Wilsonff596952017-07-14 01:06:552603
2604const char kUpdateMenuItemCustomSummaryDescription[] =
2605 "When this flag and the force show update menu item flag are enabled, a "
2606 "custom summary string will be displayed below the update menu item.";
2607const char kUpdateMenuItemCustomSummaryName[] =
2608 "Update menu item custom summary";
2609
Tommy Nyquist3c02e592018-10-18 23:36:442610const char kUpdateMenuTypeName[] =
2611 "Forces the update menu type to a specific type";
2612const char kUpdateMenuTypeDescription[] =
2613 "When set, forces the update type to be a specific one, which impacts "
Tommy Nyquist023d505f2019-02-16 02:18:382614 "the app menu badge and menu item for updates. For Inline Update, the "
2615 "update available flag is implied. The 'Inline Update: Success' selection "
2616 "goes through the whole inline update flow to the end with a successful "
2617 "outcome. The other 'Inline Update' options go through the same flow, but "
2618 "stop at various stages, see their error type for details.";
Tommy Nyquist3c02e592018-10-18 23:36:442619const char kUpdateMenuTypeNone[] = "None";
2620const char kUpdateMenuTypeUpdateAvailable[] = "Update Available";
2621const char kUpdateMenuTypeUnsupportedOSVersion[] = "Unsupported OS Version";
Tommy Nyquist023d505f2019-02-16 02:18:382622const char kUpdateMenuTypeInlineUpdateSuccess[] = "Inline Update: Success";
2623const char kUpdateMenuTypeInlineUpdateDialogCanceled[] =
2624 "Inline Update Error: Dialog Canceled";
2625const char kUpdateMenuTypeInlineUpdateDialogFailed[] =
2626 "Inline Update Error: Dialog Failed";
2627const char kUpdateMenuTypeInlineUpdateDownloadFailed[] =
2628 "Inline Update Error: Download Failed";
2629const char kUpdateMenuTypeInlineUpdateDownloadCanceled[] =
2630 "Inline Update Error: Download Canceled";
2631const char kUpdateMenuTypeInlineUpdateInstallFailed[] =
2632 "Inline Update Error: Install Failed";
Brett Wilsonff596952017-07-14 01:06:552633
Tommy Nyquist26ffb642019-02-20 20:31:522634const char kInlineUpdateFlowName[] = "Enable Google Play inline update flow";
2635const char kInlineUpdateFlowDescription[] =
2636 "When this flag is set, instead of taking the user to the Google Play "
2637 "Store when an update is available, the user is presented with an inline "
2638 "flow where they do not have to leave Chrome until the update is ready "
2639 "to install.";
2640
Becky Zhou65584142019-01-10 18:22:292641#if BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2642
Becky Zhoubcac628f2019-02-28 18:22:372643const char kAndroidNightModeName[] = "Android Chrome UI dark mode";
Becky Zhou65584142019-01-10 18:22:292644const char kAndroidNightModeDescription[] =
Becky Zhoubcac628f2019-02-28 18:22:372645 "If enabled, user can enable Android Chrome UI dark mode through settings.";
Becky Zhou65584142019-01-10 18:22:292646
2647#endif // BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2648
Brett Wilson7b44537e2017-08-18 01:38:282649// Non-Android -----------------------------------------------------------------
Brett Wilsonff596952017-07-14 01:06:552650
Brett Wilson7b44537e2017-08-18 01:38:282651#else // !defined(OS_ANDROID)
brettw5f9c1642017-05-14 17:12:482652
Brett Wilson7b44537e2017-08-18 01:38:282653const char kAccountConsistencyName[] =
2654 "Identity consistency between browser and cookie jar";
2655const char kAccountConsistencyDescription[] =
2656 "When enabled, the browser manages signing in and out of Google accounts.";
2657const char kAccountConsistencyChoiceMirror[] = "Mirror";
2658const char kAccountConsistencyChoiceDice[] = "Dice";
vabr0215a8e2017-03-28 12:47:342659
Reka Normana11e57fc2019-01-29 21:56:582660const char kAppManagementName[] = "Enable App Management page";
2661const char kAppManagementDescription[] =
2662 "Shows the new app management page at chrome://apps.";
2663
Chris Pickel3a227ae62017-08-24 10:47:262664const char kDoodlesOnLocalNtpName[] = "Enable doodles on the local NTP";
2665const char kDoodlesOnLocalNtpDescription[] =
2666 "Show doodles on the local New Tab page if Google is the default search "
2667 "engine.";
2668
Kyle Milkaedb39f52018-11-21 19:53:072669const char kSearchSuggestionsOnLocalNtpName[] =
2670 "Enable search suggestions on the local NTP";
2671const char kSearchSuggestionsOnLocalNtpDescription[] =
2672 "Show search suggestions on the local New Tab page if Google is the "
2673 "default search engine.";
2674
2675const char kPromosOnLocalNtpName[] = "Enable promos on the local NTP";
2676const char kPromosOnLocalNtpDescription[] =
2677 "Show promos on the local New Tab page if Google is the "
2678 "default search engine.";
2679
Kristi Parkc9b9d6592019-02-12 22:30:382680const char kRemoveNtpFakeboxName[] = "Remove fakebox from the NTP";
2681const char kRemoveNtpFakeboxDescription[] =
2682 "Do not show the fakebox on the New Tab page.";
2683
Kyle Milka24687352019-04-11 21:13:082684const char kNtpCustomizationMenuV2Name[] = "NTP customization menu version 2";
2685const char kNtpCustomizationMenuV2Description[] =
2686 "Use the second version of the NTP customization menu.";
2687
Aran Gilman766c2ad2019-04-18 00:15:412688const char kEnableReaderModeName[] = "Enable Reader Mode";
2689const char kEnableReaderModeDescription[] =
2690 "Allows viewing of simplified web pages by selecting 'Customize and "
2691 "control Chrome'>'Distill page'";
2692
Lei Zhang0a318af2018-11-14 02:19:462693const char kEnableWebAuthenticationBleSupportName[] =
2694 "Web Authentication API BLE support";
2695const char kEnableWebAuthenticationBleSupportDescription[] =
2696 "Enable support for using Web Authentication API via Bluetooth security "
2697 "keys";
Sebastien Marchandd33f7dc2018-06-22 22:07:062698
Sebastien Marchandd33f7dc2018-06-22 22:07:062699const char kEnableWebAuthenticationTestingAPIName[] =
2700 "Web Authentication Testing API";
2701const char kEnableWebAuthenticationTestingAPIDescription[] =
2702 "Enable Web Authentication Testing API support, which disconnects the API "
2703 "implementation from the real world, and allows configuring virtual "
2704 "authenticator devices for testing";
2705
Jeffrey Cohenf04130a42018-08-29 00:22:272706const char kHappinessTrackingSurveysForDesktopName[] =
2707 "Happiness Tracking Surveys";
2708const char kHappinessTrackingSurveysForDesktopDescription[] =
2709 "Enable showing Happiness Tracking Surveys to users on Desktop";
2710
Maggie Caib3e2a6c2019-03-12 05:12:542711const char kIntentPickerName[] = "Intent picker";
2712const char kIntentPickerDescription[] =
2713 "When going to a site that has URL managable by a PWA, show the intent"
2714 "picker to allow user to open the URL in the app.";
2715
Travis Skarebcdb5ed32018-08-17 01:49:402716const char kOmniboxDriveSuggestionsName[] =
2717 "Omnibox Google Drive Document suggestions";
2718const char kOmniboxDriveSuggestionsDescriptions[] =
2719 "Display suggestions for Google Drive documents in the omnibox when Google "
2720 "is the default search engine.";
2721
Travis Skare13ad69c2019-03-06 21:01:022722const char kOmniboxDeduplicateDriveUrlsName[] =
2723 "Deduplicate Google Drive suggestions in the Omnibox";
2724const char kOmniboxDeduplicateDriveUrlsDescription[] =
2725 "Present at most one result for the same Drive document across bookmarks, "
2726 "history, document, etc. suggestions.";
2727
Kevin Bailey9ec05532019-01-31 23:01:332728const char kOmniboxExperimentalKeywordModeName[] =
2729 "Omnibox Experimental Keyword Mode";
2730const char kOmniboxExperimentalKeywordModeDescription[] =
2731 "Enables various experimental features related to keyword mode, its "
2732 "suggestions and layout";
2733
Lei Zhang0a318af2018-11-14 02:19:462734const char kOmniboxPedalSuggestionsName[] = "Omnibox Pedal suggestions";
2735const char kOmniboxPedalSuggestionsDescription[] =
Orin Jaworski506db4d2019-02-14 20:17:142736 "Enable omnibox Pedal suggestions to accelerate actions within Chrome by "
2737 "detecting user intent and offering direct access to the end goal.";
Lei Zhang0a318af2018-11-14 02:19:462738
Orin Jaworski04c08b42018-07-11 02:39:562739const char kOmniboxReverseAnswersName[] = "Omnibox reverse answers";
2740const char kOmniboxReverseAnswersDescription[] =
manukaddd3c42019-04-09 21:20:592741 "Display answers with rows reversed (swapped); except definitions.";
Orin Jaworski04c08b42018-07-11 02:39:562742
Kevin Baileya5f17452019-02-13 01:52:032743const char kOmniboxReverseTabSwitchLogicName[] =
2744 "Omnibox reverse tab switch logic";
2745const char kOmniboxReverseTabSwitchLogicDescription[] =
2746 "Reverse the logic of suggestions that have a tab switch button: Have "
2747 "them switch by default, and have the button navigate.";
2748
Tommy C. Li065ddce72019-04-11 22:55:122749const char kOmniboxSuggestionTransparencyOptionsName[] =
2750 "Omnibox Suggestion Transparency Options";
2751const char kOmniboxSuggestionTransparencyOptionsDescription[] =
2752 "Improves transparency of and control over omnibox suggestions. This "
2753 "includes UI cues (like a clock icon for Search History suggestions), as "
2754 "well as user controls to delete personalized suggestions.";
2755
Kevin Bailey898669972017-11-06 15:34:492756const char kOmniboxTabSwitchSuggestionsName[] =
2757 "Omnibox tab switch suggestions";
2758const char kOmniboxTabSwitchSuggestionsDescription[] =
manukaddd3c42019-04-09 21:20:592759 "Enable suggestions for switching to open tabs within the Omnibox.";
Kevin Bailey898669972017-11-06 15:34:492760
krbcc621412017-06-01 19:40:282761const char kOmniboxTailSuggestionsName[] = "Omnibox tail suggestions";
2762const char kOmniboxTailSuggestionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192763 "Enable receiving tail suggestions, a type of search suggestion based on "
2764 "the last few words in the query, for the Omnibox.";
vabr0215a8e2017-03-28 12:47:342765
Sebastien Marchandd33f7dc2018-06-22 22:07:062766const char kProactiveTabFreezeAndDiscardName[] =
2767 "Proactive Tab Freeze and Discard";
2768const char kProactiveTabFreezeAndDiscardDescription[] =
2769 "Enables proactive tab freezing and discarding. This requires "
2770 "#enable-page-almost-idle.";
2771
Nicolas Ouellet-payeur82eb65b2018-11-05 16:49:272772const char kShowManagedUiName[] = "Show managed UI for managed users";
2773const char kShowManagedUiDescription[] =
2774 "Enabled/disable showing enterprise users a 'Managed by your organization' "
2775 "message in the app menu and on some chrome:// pages.";
2776
Sebastien Marchandd33f7dc2018-06-22 22:07:062777const char kSiteCharacteristicsDatabaseName[] = "Site Characteristics database";
2778const char kSiteCharacteristicsDatabaseDescription[] =
2779 "Records usage of some features in a database while a tab is in background "
2780 "(title/favicon update, audio playback or usage of non-persistent "
2781 "notifications).";
2782
Brett Wilson7b44537e2017-08-18 01:38:282783const char kUseGoogleLocalNtpName[] = "Enable using the Google local NTP";
2784const char kUseGoogleLocalNtpDescription[] =
2785 "Use the local New Tab page if Google is the default search engine.";
spqchan064a8112017-04-18 16:46:322786
Brett Wilson7b44537e2017-08-18 01:38:282787#if defined(GOOGLE_CHROME_BUILD)
2788
2789const char kGoogleBrandedContextMenuName[] =
2790 "Google branding in the context menu";
2791const char kGoogleBrandedContextMenuDescription[] =
2792 "Shows a Google icon next to context menu items powered by Google "
2793 "services.";
2794
2795#endif // !defined(GOOGLE_CHROME_BUILD)
2796
2797#endif // !defined(OS_ANDROID)
2798
2799// Windows ---------------------------------------------------------------------
2800
2801#if defined(OS_WIN)
2802
David Bienvenud0ddda32018-11-01 16:59:162803const char kCalculateNativeWinOcclusionName[] =
2804 "Calculate window occlusion on Windows";
2805const char kCalculateNativeWinOcclusionDescription[] =
2806 "Calculate window occlusion on Windows will be used in the future "
2807 "to throttle and potentially unload foreground tabs in occluded windows";
2808
Brett Wilson7b44537e2017-08-18 01:38:282809const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
2810const char kCloudPrintXpsDescription[] =
2811 "XPS enables advanced options for classic printers connected to the Cloud "
2812 "Print with Chrome. Printers must be re-connected after changing this "
2813 "flag.";
2814
Frank Liberato754d14f2019-01-30 23:31:172815const char kD3D11VideoDecoderName[] = "D3D11 Video Decoder";
2816const char kD3D11VideoDecoderDescription[] =
2817 "Enables D3D11VideoDecoder for hardware accelerated video decoding.";
2818
Brett Wilson7b44537e2017-08-18 01:38:282819const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
2820const char kDisablePostscriptPrintingDescription[] =
2821 "Disables PostScript generation when printing to PostScript capable "
2822 "printers, and uses EMF generation in its place.";
2823
2824const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
2825const char kEnableAppcontainerDescription[] =
2826 "Enables the use of an AppContainer on sandboxed processes to improve "
2827 "security.";
2828
James Forshawfd0ce342018-02-14 09:55:392829const char kEnableGpuAppcontainerName[] = "Enable GPU AppContainer Lockdown.";
2830const char kEnableGpuAppcontainerDescription[] =
2831 "Enables the use of an AppContainer for the GPU sandboxed processes to "
2832 "improve security.";
2833
Brett Wilson7b44537e2017-08-18 01:38:282834const char kGdiTextPrinting[] = "GDI Text Printing";
2835const char kGdiTextPrintingDescription[] =
2836 "Use GDI to print text as simply text";
2837
Olli Etuaho122321192018-09-07 10:15:292838const char kUseAngleName[] = "Choose ANGLE graphics backend";
2839const char kUseAngleDescription[] =
2840 "Choose the graphics backend for ANGLE. D3D11 is used on most Windows "
2841 "computers by default. Using the OpenGL driver as the graphics backend may "
2842 "result in higher performance in some graphics-heavy applications, "
2843 "particularly on NVIDIA GPUs. It can increase battery and memory usage of "
2844 "video playback.";
2845
2846const char kUseAngleDefault[] = "Default";
2847const char kUseAngleGL[] = "OpenGL";
2848const char kUseAngleD3D11[] = "D3D11";
2849const char kUseAngleD3D9[] = "D3D9";
2850
Brett Wilson7b44537e2017-08-18 01:38:282851const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2852const char kUseWinrtMidiApiDescription[] =
2853 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
2854 "later).";
2855
Brett Wilson7b44537e2017-08-18 01:38:282856#endif // defined(OS_WIN)
2857
2858// Mac -------------------------------------------------------------------------
2859
2860#if defined(OS_MACOSX)
2861
Brett Wilson7b44537e2017-08-18 01:38:282862const char kContentFullscreenName[] = "Improved Content Fullscreen";
2863const char kContentFullscreenDescription[] =
2864 "Fullscreen content window detaches from main browser window and goes to "
2865 "a new space without moving or changing the original browser window.";
2866
Sidney San Martín678fd4112019-03-30 00:13:052867const char kImmersiveFullscreenName[] = "Immersive Fullscreen Toolbar";
2868const char kImmersiveFullscreenDescription[] =
2869 "Automatically hide and show the toolbar in fullscreen.";
2870
Brett Wilson7b44537e2017-08-18 01:38:282871const char kHostedAppsInWindowsName[] =
2872 "Allow hosted apps to be opened in windows";
2873const char kHostedAppsInWindowsDescription[] =
2874 "Allows hosted apps to be opened in windows instead of being limited to "
2875 "tabs.";
2876
Christopher Cameron57dee5a42018-09-25 01:20:082877const char kCreateAppWindowsInAppShimProcessName[] =
2878 "Create native windows in the app process";
2879const char kCreateAppWindowsInAppShimProcessDescription[] =
2880 "Create native windows the app shim process, instead of of the browser "
2881 "process.";
2882
Lei Zhange065b572018-12-11 08:00:412883const char kEnableCustomMacPaperSizesName[] = "Enable custom paper sizes";
2884const char kEnableCustomMacPaperSizesDescription[] =
2885 "Allow use of custom paper sizes in Print Preview.";
2886
Lei Zhang2eca9082017-10-17 20:42:502887const char kMacTouchBarName[] = "Hardware Touch Bar";
2888const char kMacTouchBarDescription[] = "Control the use of the Touch Bar.";
Brett Wilson7b44537e2017-08-18 01:38:282889
Greg Kerr32483d1c2018-12-18 02:29:142890const char kMacV2GPUSandboxName[] = "Mac V2 GPU Sandbox";
2891const char kMacV2GPUSandboxDescription[] =
2892 "Controls whether the GPU process on macOS uses the V1 or V2 sandbox.";
2893
Brett Wilson7b44537e2017-08-18 01:38:282894const char kMacViewsNativeAppWindowsName[] = "Toolkit-Views App Windows.";
2895const char kMacViewsNativeAppWindowsDescription[] =
2896 "Controls whether to use Toolkit-Views based Chrome App windows.";
2897
2898const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
2899const char kMacViewsTaskManagerDescription[] =
2900 "Controls whether to use the Toolkit-Views based Task Manager.";
2901
Henrik Grunellabaf7182019-04-12 09:15:192902const char kMacSystemMediaPermissionsInfoUiName[] =
2903 "System media permissions info UI";
2904const char kMacSystemMediaPermissionsInfoUiDescription[] =
2905 "In case a website is trying to use the camera/microphone, but Chrome "
2906 "itself is blocked on the system level to access these, show an icon in "
2907 "the Omnibox, which, when clicked, displays a bubble with information on "
2908 "how to toggle Chrome's system-level media permissions.";
2909
Brett Wilson7b44537e2017-08-18 01:38:282910#endif
2911
2912// Chrome OS -------------------------------------------------------------------
vabr0215a8e2017-03-28 12:47:342913
2914#if defined(OS_CHROMEOS)
2915
Brett Wilson7b44537e2017-08-18 01:38:282916const char kAcceleratedMjpegDecodeName[] =
2917 "Hardware-accelerated mjpeg decode for captured frame";
2918const char kAcceleratedMjpegDecodeDescription[] =
2919 "Enable hardware-accelerated mjpeg decode for captured frame where "
2920 "available.";
vabr0215a8e2017-03-28 12:47:342921
Reka Normana11e57fc2019-01-29 21:56:582922const char kAppServiceAshName[] = "App Service Ash";
2923const char kAppServiceAshDescription[] =
2924 "Use the App Service to provide data to the Ash UI, such as the shelf and "
2925 "app list.";
2926
Bruno Kim Medeiros Cesarb98fe1d82018-06-06 18:11:522927const char kArcAvailableForChildName[] = "Allow ARC for child accounts";
2928const char kArcAvailableForChildDescription[] =
2929 "Allow child accounts to start Android apps.";
2930
Brett Wilson7b44537e2017-08-18 01:38:282931const char kArcBootCompleted[] = "Load Android apps automatically";
2932const char kArcBootCompletedDescription[] =
2933 "Allow Android apps to start automatically after signing in.";
vabr0215a8e2017-03-28 12:47:342934
Luum Habtemariamdaa8fd22018-06-25 22:39:432935const char kArcCupsApiName[] = "ARC CUPS API";
2936const char kArcCupsApiDescription[] =
2937 "Enables support of libcups APIs from ARC";
2938
Ryo Hashimoto8f4b30ced2019-04-08 12:14:192939const char kArcCustomTabsExperimentName[] =
2940 "Enable Custom Tabs experiment for ARC";
2941const char kArcCustomTabsExperimentDescription[] =
2942 "Allow Android apps to use Custom Tabs."
2943 "This feature only works on the Canary and Dev channels.";
2944
Naoki Fukino153de8a2019-01-22 08:37:542945const char kArcDocumentsProviderName[] = "ARC DocumentsProvider integration";
2946const char kArcDocumentsProviderDescription[] =
2947 "Enables DocumentsProvider integration in Chrome OS Files app.";
2948
Satoshi Niwa8b1d5282018-10-24 04:53:032949const char kArcFilePickerExperimentName[] =
2950 "Enable file picker experiment for ARC";
2951const char kArcFilePickerExperimentDescription[] =
2952 "Enables using Chrome OS file picker in ARC.";
2953
[email protected]939ceae2019-01-29 17:00:152954const char kArcGraphicBuffersVisualizationToolName[] =
2955 "Enable ARC graphic buffers visualization tool";
2956const char kArcGraphicBuffersVisualizationToolDescription[] =
2957 "Enable ARC graphic buffers visualization tool "
2958 "(chrome://arc-graphics-tracing).";
2959
Lev Rumyantsev7a8544312017-08-18 19:26:512960const char kArcNativeBridgeExperimentName[] =
2961 "Enable native bridge experiment for ARC";
2962const char kArcNativeBridgeExperimentDescription[] =
2963 "Enables experimental native bridge feature.";
2964
lgchengecd1c1a62018-01-09 02:59:462965const char kArcUsbHostName[] = "Enable ARC USB host integration";
2966const char kArcUsbHostDescription[] =
2967 "Allow Android apps to use USB host feature on ChromeOS devices.";
2968
Kevin Cernekeeb7f96a52017-10-25 17:40:182969const char kArcVpnName[] = "Enable ARC VPN integration";
2970const char kArcVpnDescription[] =
2971 "Allow Android VPN clients to tunnel Chrome traffic.";
2972
Qiang Xu045aff222018-05-21 23:21:012973const char kAshEnableDisplayMoveWindowAccelsName[] =
2974 "Enable shortcuts for moving window between displays.";
2975const char kAshEnableDisplayMoveWindowAccelsDescription[] =
2976 "Enable shortcuts for moving window between displays.";
2977
Sammie Quonfe640ca2019-01-30 17:54:182978const char kAshEnableOverviewRoundedCornersName[] =
2979 "Enable rounded corners in overview mode.";
2980const char kAshEnableOverviewRoundedCornersDescription[] =
2981 "Enables rounded corners on overview windows.";
2982
Qiang Xu045aff222018-05-21 23:21:012983const char kAshEnablePersistentWindowBoundsName[] =
2984 "Enable persistent window bounds in multi-displays scenario.";
2985const char kAshEnablePersistentWindowBoundsDescription[] =
2986 "Enable persistent window bounds in multi-displays scenario.";
2987
Eliot Courtneye87a9c32018-11-20 03:33:022988const char kAshEnablePipRoundedCornersName[] =
2989 "Enable Picture-in-Picture rounded corners.";
2990const char kAshEnablePipRoundedCornersDescription[] =
2991 "Enable rounded corners on the Picture-in-Picture window.";
2992
Brett Wilson7b44537e2017-08-18 01:38:282993const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
2994const char kAshEnableUnifiedDesktopDescription[] =
2995 "Enable unified desktop mode which allows a window to span multiple "
2996 "displays.";
vabr0215a8e2017-03-28 12:47:342997
Sean Kau5e956192017-10-06 22:25:172998const char kBulkPrintersName[] = "Bulk Printers Policy";
2999const char kBulkPrintersDescription[] = "Enables the new bulk printers policy";
3000
Xiaochu Liu51d03fd2017-09-08 23:51:023001const char kCrOSContainerName[] = "Chrome OS Container";
3002const char kCrOSContainerDescription[] =
3003 "Enable the use of Chrome OS Container utility.";
3004
Brett Wilson7b44537e2017-08-18 01:38:283005const char kCrosRegionsModeName[] = "Cros-regions load mode";
3006const char kCrosRegionsModeDescription[] =
3007 "This flag controls cros-regions load mode";
3008const char kCrosRegionsModeDefault[] = "Default";
3009const char kCrosRegionsModeOverride[] = "Override VPD values.";
3010const char kCrosRegionsModeHide[] = "Hide VPD values.";
vabr0215a8e2017-03-28 12:47:343011
Daniel Ng96ab0c82019-01-16 01:21:553012const char kCrostiniAppSearchName[] = "Crostini App Search";
3013const char kCrostiniAppSearchDescription[] =
3014 "Enable search and installation of Crostini apps in the launcher.";
3015
Joel Hockey42387102019-01-10 01:19:323016const char kCrostiniBackupName[] = "Crostini Backup";
3017const char kCrostiniBackupDescription[] = "Enable Crostini export and import.";
3018
Nicholas Verne89be53b2019-03-27 23:08:323019const char kCrostiniUsbAllowUnsupportedName[] =
3020 "Crostini Usb Allow Unsupported";
3021const char kCrostiniUsbAllowUnsupportedDescription[] =
3022 "Allow mounting unsupported Usb devices in Crostini. At your own risk. "
3023 "To enable, Crostini Usb Support must also be enabled.";
3024
Josh Pratt57cea392018-10-30 02:59:063025const char kCrostiniUsbSupportName[] = "Crostini Usb Support";
3026const char kCrostiniUsbSupportDescription[] =
3027 "Enable mounting Usb devices in Crostini.";
3028
Josh Nohle2f82dcc2018-12-17 23:11:233029const char kCryptAuthV2EnrollmentName[] = "CryptAuth v2 Enrollment";
3030const char kCryptAuthV2EnrollmentDescription[] =
3031 "Use the CryptAuth v2 Enrollment protocol.";
3032
Daniele Castagna893d822e2019-03-08 21:37:113033const char kDisableExplicitDmaFencesName[] = "Disable explicit dma-fences";
3034const char kDisableExplicitDmaFencesDescription[] =
3035 "Always rely on implicit syncrhonization between GPU and display "
3036 "controller instead of using dma-fences explcitily when available.";
3037
Sammie Quonef6b4882017-09-14 16:50:053038const char kDisableTabletAutohideTitlebarsName[] =
3039 "Disable autohide titlebars in tablet mode";
3040const char kDisableTabletAutohideTitlebarsDescription[] =
3041 "Disable tablet mode autohide titlebars functionality. The user will be "
3042 "able to see the titlebar in tablet mode.";
3043
Xiaoqian Dai24b33eb2018-04-10 21:01:573044const char kDisableTabletSplitViewName[] = "Disable split view in Tablet mode";
3045const char kDisableTabletSplitViewDescription[] =
3046 "Disable split view for Chrome OS tablet mode.";
3047
Ahmed Fakhry4f567e692018-10-16 15:51:083048const char kDoubleTapToZoomInTabletModeName[] =
3049 "Double-tap to zoom in tablet mode";
3050const char kDoubleTapToZoomInTabletModeDescription[] =
3051 "If Enabled, double tapping in webpages while in tablet mode will zoom the "
3052 "page.";
3053
Matthew Mourgoscf22b4b2019-03-06 23:46:393054const char kEnableAppGridGhostName[] = "App Grid Ghosting";
3055const char kEnableAppGridGhostDescription[] =
3056 "Enables ghosting during an item drag in launcher.";
3057
Daniel Zhang01399072018-08-16 22:28:203058const char kEnableAppListSearchAutocompleteName[] =
3059 "App List Search Autocomplete";
3060const char kEnableAppListSearchAutocompleteDescription[] =
3061 "Allow App List search box to autocomplete queries for Google searches and "
3062 "apps.";
3063
Vladislav Kaznacheevaa213a02018-10-29 17:54:283064const char kEnableAppDataSearchName[] = "Enable app data search in launcher";
3065const char kEnableAppDataSearchDescription[] =
3066 "Allow launcher search to access data available through Firebase App "
3067 "Indexing";
3068
Lei Zhang0a318af2018-11-14 02:19:463069const char kEnableArcUnifiedAudioFocusName[] =
Becca Hughes34415e82018-10-05 18:47:373070 "Enable unified audio focus on ARC";
Lei Zhang0a318af2018-11-14 02:19:463071const char kEnableArcUnifiedAudioFocusDescription[] =
Becca Hughes34415e82018-10-05 18:47:373072 "If audio focus is enabled in Chrome then this will delegate audio focus "
3073 "control in Android apps to Chrome.";
3074
Yue Liebaa9952018-12-07 21:41:263075const char kEnableAssistantAppSupportName[] = "Enable Assistant App Support";
3076const char kEnableAssistantAppSupportDescription[] =
3077 "Enable the Assistant App Support feature";
3078
Meilin Wangb57f92f2019-04-19 04:27:103079const char kEnableAssistantKeyRemappingName[] =
3080 "Enable Assistant Key Remapping";
3081const char kEnableAssistantKeyRemappingDescription[] =
3082 "Allow Assistant key remapping in the keyboard settings.";
3083
Xiaohui Chenb523747b2019-03-14 23:38:323084const char kEnableAssistantLauncherIntegrationName[] =
3085 "Assistant & Launcher integration";
3086const char kEnableAssistantLauncherIntegrationDescription[] =
3087 "Combine Launcher search with the power of Assistant to provide the most "
3088 "useful answer for each query. Requires Assistant to be enabled.";
3089
3090const char kEnableAssistantVoiceMatchName[] = "Enable Assistant Voice Match";
3091const char kEnableAssistantVoiceMatchDescription[] =
3092 "Enable the Assistant Voice Match feature";
3093
Lei Zhang0ca70ea2018-09-07 17:51:013094const char kEnableChromeOsAccountManagerName[] = "Enable Account Manager";
3095const char kEnableChromeOsAccountManagerDescription[] =
Kushagra Sinha8a181fc2018-08-20 17:15:493096 "Enables the Chrome OS Account Manager";
3097
Alexander Alekseev38e1e0a2018-11-08 22:48:483098const char kEnableDiscoverAppName[] = "Enable Discover App";
3099const char kEnableDiscoverAppDescription[] =
3100 "Enable Discover App icon in launcher.";
3101
Sam McNally201fbf94e2018-07-04 03:15:203102const char kEnableDriveFsName[] = "Enable DriveFS";
3103const char kEnableDriveFsDescription[] =
3104 "Enables use of the new DriveFS-based Drive sync client.";
3105
Brett Wilson7b44537e2017-08-18 01:38:283106const char kEnableEncryptionMigrationName[] =
3107 "Enable encryption migration of user data";
3108const char kEnableEncryptionMigrationDescription[] =
3109 "If enabled and the device supports ARC, the user will be asked to update "
3110 "the encryption of user data when the user signs in.";
vabr0215a8e2017-03-28 12:47:343111
Xiaohui Chenfb0943e2018-10-16 22:44:373112const char kEnableGoogleAssistantName[] = "Enable Google Assistant";
3113const char kEnableGoogleAssistantDescription[] =
3114 "Enable an experimental Assistant implementation that will work on all "
3115 "Chromebooks.";
3116
Xiaohui Chenf4283f32018-11-26 20:02:503117const char kEnableGoogleAssistantDspName[] =
3118 "Enable Google Assistant with hardware-based hotword";
3119const char kEnableGoogleAssistantDspDescription[] =
3120 "Enable an experimental feature that uses hardware-based hotword detection "
3121 "for Assistant. Only a limited number of devices have this type of "
3122 "hardware support.";
3123
Xiaohui Chenc3baca42018-11-30 19:29:373124const char kEnableGoogleAssistantStereoInputName[] =
3125 "Enable Google Assistant with stereo audio input";
3126const char kEnableGoogleAssistantStereoInputDescription[] =
3127 "Enable an experimental feature that uses stereo audio input for hotword "
3128 "and voice to text detection in Google Assistant.";
3129
Qiang Xu045aff222018-05-21 23:21:013130const char kEnableHomeLauncherName[] = "Enable home launcher";
3131const char kEnableHomeLauncherDescription[] =
3132 "Enable home launcher in tablet mode.";
3133
Andrew Moylan97585272019-02-19 19:01:223134const char kEnableMyFilesVolumeName[] = "Enable MyFiles as Volume";
3135const char kEnableMyFilesVolumeDescription[] =
3136 "Enables use of MyFiles as a read/write volume. This should be only "
3137 "used for testing or for trying to restore the previous Downloads content.";
3138
Sammie Quon248ccef2018-08-28 23:00:013139const char kEnableOobeRecommendAppsScreenName[] =
3140 "Enable OOBE Recommend Apps Screen";
3141const char kEnableOobeRecommendAppsScreenDescription[] =
3142 "Enable the Recommend Apps Screen in OOBE which allows user to install apps"
3143 "from other devices";
3144
Vladislav Kaznacheevaa213a02018-10-29 17:54:283145const char kEnablePlayStoreSearchName[] = "Enable Play Store search";
3146const char kEnablePlayStoreSearchDescription[] =
3147 "Enable Play Store search in launcher.";
3148
Jazz Xu2e5886662018-12-14 00:38:483149const char kEnableVideoPlayerNativeControlsName[] =
3150 "Enable native controls in video player app";
3151const char kEnableVideoPlayerNativeControlsDescription[] =
3152 "Enable native controls in video player app";
3153
Lei Zhang0ca70ea2018-09-07 17:51:013154const char kEnableZeroStateSuggestionsName[] = "Enable Zero State Suggetions";
3155const char kEnableZeroStateSuggestionsDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013156 "Enable Zero State Suggestions feature in Launcher, which will show "
Vladislav Kaznacheevaa213a02018-10-29 17:54:283157 "suggestions when launcher search box is active with an empty query";
Sammie Quon248ccef2018-08-28 23:00:013158
Brett Wilson7b44537e2017-08-18 01:38:283159const char kEolNotificationName[] = "Disable Device End of Life notification.";
3160const char kEolNotificationDescription[] =
3161 "Disable Notifcation when Device is End of Life.";
3162
Akihiro Ota3ff6f8a2019-01-18 17:43:043163const char kExperimentalAccessibilityChromeVoxLanguageSwitchingName[] =
3164 "Enable experimental ChromeVox language switching.";
3165const char kExperimentalAccessibilityChromeVoxLanguageSwitchingDescription[] =
3166 "Enable ChromeVox language switching, which changes ChromeVox's "
3167 "output language upon detection of new language.";
3168
Akihiro Ota000c5e8a2019-03-29 21:48:013169const char kExperimentalAccessibilityChromeVoxRichTextIndicationName[] =
3170 "Enable experimental ChromeVox rich text indication.";
3171const char kExperimentalAccessibilityChromeVoxRichTextIndicationDescription[] =
3172 "Enable ChromeVox rich text indication, which automatically notifies the "
3173 "user of text styling.";
3174
Alex Danilo284b4482019-04-02 09:20:173175const char kFileManagerFeedbackPanelDescription[] =
3176 "Enable new feedback panel in the Files app.";
3177const char kFileManagerFeedbackPanelName[] = "Files App. feedback panel";
3178
Akihiro Ota000c5e8a2019-03-29 21:48:013179const char kFileManagerTouchModeName[] = "Files App. touch mode";
3180const char kFileManagerTouchModeDescription[] =
3181 "Touchscreen-specific interactions of the Files app.";
3182
3183const char kFirstRunUiTransitionsName[] =
3184 "Animated transitions in the first-run tutorial";
3185const char kFirstRunUiTransitionsDescription[] =
3186 "Transitions during first-run tutorial are animated.";
3187
Brett Wilson7b44537e2017-08-18 01:38:283188const char kForceEnableStylusToolsName[] = "Force enable stylus features";
3189const char kForceEnableStylusToolsDescription[] =
3190 "Forces display of the stylus tools menu in the shelf and the stylus "
3191 "section in settings, even if there is no attached stylus device.";
3192
Andrew Moylan97585272019-02-19 19:01:223193const char kFsNosymfollowName[] =
3194 "Prevent symlink traversal on user-supplied filesystems.";
3195const char kFsNosymfollowDescription[] =
3196 "Causes user-supplied filesystems to be mounted with the 'nosymfollow'"
3197 " option, so the chromuimos LSM denies symlink traversal on the"
3198 " filesystem.";
3199
Brett Wilson7b44537e2017-08-18 01:38:283200const char kGestureTypingName[] = "Gesture typing for the virtual keyboard.";
3201const char kGestureTypingDescription[] =
3202 "Enable/Disable gesture typing option in the settings page for the virtual "
3203 "keyboard.";
3204
Becca Hughes71465532019-04-12 19:18:553205const char kHideArcMediaNotificationsName[] = "Hide ARC media notifications";
3206const char kHideArcMediaNotificationsDescription[] =
3207 "Hides media notifications for ARC apps. Requires "
3208 "#enable-media-session-notifications to be enabled.";
3209
Leo Zhang49c34d22019-04-02 09:57:593210const char kImeInputLogicFstName[] = "Enable FST Input Logic on IME";
3211const char kImeInputLogicFstDescription[] =
3212 "Enable FST Input Logic to replace the IME legacy input logic on NaCl";
3213
Andrew Moylan97585272019-02-19 19:01:223214const char kImeServiceName[] = "Enable IME service";
3215const char kImeServiceDescription[] =
3216 "Enable IME service to provide the IME functionality instead of NaCl";
3217
Ahmed Fakhry15d707e2019-02-22 23:54:213218const char kListAllDisplayModesName[] = "List all display modes";
3219const char kListAllDisplayModesDescription[] =
3220 "Enables listing all external displays' modes in the display settings.";
3221
Megumi Hattori5a0d4182018-03-06 11:09:503222const char kLockScreenNotificationName[] = "Lock screen notification";
3223const char kLockScreenNotificationDescription[] =
3224 "Enable notifications on the lock screen.";
3225
Mohsen Izadi06a16f72018-11-29 02:29:223226const char kMashOopVizName[] = "Out-of-process viz for mash";
3227const char kMashOopVizDescription[] =
3228 "Runs viz in a separate process when mash is enabled (otherwise viz would "
3229 "run in ash process)";
3230
Becca Hughes71465532019-04-12 19:18:553231const char kMediaSessionNotificationsName[] = "Media session notifications";
3232const char kMediaSessionNotificationsDescription[] =
3233 "Shows notifications for media sessions showing the currently playing "
3234 "media and providing playback controls";
3235
Brett Wilson7b44537e2017-08-18 01:38:283236const char kMemoryPressureThresholdName[] =
3237 "Memory discard strategy for advanced pressure handling";
3238const char kMemoryPressureThresholdDescription[] =
3239 "Memory discarding strategy to use";
3240const char kConservativeThresholds[] =
3241 "Conservative memory pressure release strategy";
3242const char kAggressiveCacheDiscardThresholds[] =
3243 "Aggressive cache release strategy";
3244const char kAggressiveTabDiscardThresholds[] =
3245 "Aggressive tab release strategy";
3246const char kAggressiveThresholds[] =
3247 "Aggressive tab and cache release strategy";
3248
3249const char kMtpWriteSupportName[] = "MTP write support";
3250const char kMtpWriteSupportDescription[] =
3251 "MTP write support in File System API (and file manager). In-place editing "
3252 "operations are not supported.";
3253
vabr0215a8e2017-03-28 12:47:343254const char kNetworkPortalNotificationName[] =
3255 "Notifications about captive portals";
vabr0215a8e2017-03-28 12:47:343256const char kNetworkPortalNotificationDescription[] =
3257 "If enabled, notification is displayed when device is connected to a "
3258 "network behind captive portal.";
3259
Anand K. Mistrydb5e0102018-10-04 04:24:003260const char kNewZipUnpackerName[] = "ZIP Archiver (unpacking)";
Brett Wilson7b44537e2017-08-18 01:38:283261const char kNewZipUnpackerDescription[] =
Anand K. Mistrydb5e0102018-10-04 04:24:003262 "Use the ZIP Archiver for mounting/unpacking ZIP files";
vabr0215a8e2017-03-28 12:47:343263
Qiang Xu045aff222018-05-21 23:21:013264const char kOfficeEditingComponentAppName[] =
3265 "Office Editing for Docs, Sheets & Slides";
3266const char kOfficeEditingComponentAppDescription[] =
3267 "Office Editing for Docs, Sheets & Slides for testing purposes.";
3268
Brett Wilson7b44537e2017-08-18 01:38:283269const char kPhysicalKeyboardAutocorrectName[] = "Physical keyboard autocorrect";
3270const char kPhysicalKeyboardAutocorrectDescription[] =
3271 "Enable physical keyboard autocorrect for US keyboard, which can provide "
3272 "suggestions as typing on physical keyboard.";
vabr0215a8e2017-03-28 12:47:343273
3274const char kPrinterProviderSearchAppName[] =
3275 "Chrome Web Store Gallery app for printer drivers";
vabr0215a8e2017-03-28 12:47:343276const char kPrinterProviderSearchAppDescription[] =
3277 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:193278 "searches Chrome Web Store for extensions that support printing to a USB "
3279 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:343280
Andrew Moylan97585272019-02-19 19:01:223281const char kSchedulerConfigurationName[] = "Scheduler Configuration";
3282const char kSchedulerConfigurationDescription[] =
3283 "Instructs the OS to use a specific scheduler configuration setting.";
3284const char kSchedulerConfigurationConservative[] = "Conservative";
3285const char kSchedulerConfigurationPerformance[] = "Performance";
3286
James Cook0ba192bf2017-12-01 20:53:113287const char kShowTapsName[] = "Show taps";
3288const char kShowTapsDescription[] =
3289 "Draws a circle at each touch point, which makes touch points more obvious "
3290 "when projecting or mirroring the display. Similar to the Android OS "
3291 "developer option.";
3292
3293const char kShowTouchHudName[] = "Show HUD for touch points";
3294const char kShowTouchHudDescription[] =
3295 "Shows a trail of colored dots for the last few touch points. Pressing "
3296 "Ctrl-Alt-I shows a heads-up display view in the top-left corner. Helps "
3297 "debug hardware issues that generate spurious touch events.";
3298
James Cook28d7c482018-09-07 21:00:543299const char kSingleProcessMashName[] =
3300 "In-process window service (SingleProcessMash)";
3301const char kSingleProcessMashDescription[] =
3302 "Runs the system UI (ash) as a mojo service, but inside the browser "
3303 "process. The browser uses the mojo window service (ws) APIs.";
3304
Shu Chen4144c3a2019-04-11 00:54:163305const char kMojoImfName[] = "Mojo-based IMF to bridge the client and IME";
3306const char kMojoImfDescription[] =
3307 "Makes the system UI (ash) as the bridge between the client and the IME via"
3308 " mojo APIs. This can only take effect if the flag \"single-process-masn\" "
3309 "is enabled.";
3310
Jorge Gil5a8ccde2018-07-10 01:46:213311const char kSmartTextSelectionName[] = "Smart Text Selection";
3312const char kSmartTextSelectionDescription[] =
3313 "Shows quick actions for text "
3314 "selections in the context menu.";
3315
Bailey Berro6c989672019-04-11 19:19:203316const char kStreamlinedUsbPrinterSetupName[] =
3317 "Streamlined USB Printer Setup Flow";
3318const char kStreamlinedUsbPrinterSetupDescription[] =
3319 "Automatically sets up capable USB printers when plugged in. Shows a "
3320 "notification with the setup result.";
3321
Brett Wilson7b44537e2017-08-18 01:38:283322const char kTetherName[] = "Instant Tethering";
3323const char kTetherDescription[] =
3324 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
3325 "phone to share its Internet connection with this device.";
stanisc14bed0b132017-05-10 17:46:373326
Brett Wilson7b44537e2017-08-18 01:38:283327const char kTouchscreenCalibrationName[] =
3328 "Enable/disable touchscreen calibration option in material design settings";
3329const char kTouchscreenCalibrationDescription[] =
3330 "If enabled, the user can calibrate the touch screen displays in "
3331 "chrome://settings/display.";
yhanadac5bff5b2017-05-18 06:37:093332
Qiang Xu045aff222018-05-21 23:21:013333const char kUiDevToolsName[] = "Enable native UI inspection";
3334const char kUiDevToolsDescription[] =
3335 "Enables inspection of native UI elements. For local inspection use "
3336 "chrome://inspect#other";
3337
Mitsuru Oshima63d3f2a2017-08-23 00:12:113338// Force UI Mode
3339const char kUiModeName[] = "Force Ui Mode";
3340const char kUiModeDescription[] =
Elly Fong-Jonesf4c15772019-01-31 17:40:063341 "This flag can be used to force a certain mode on to a chromebook, "
3342 "despite its current orientation. \"Tablet\" means that the "
3343 "chromebook will act as if it were in tablet mode. \"Clamshell\" "
3344 "means that the chromebook will act as if it were in clamshell "
3345 "mode. \"Auto\" means that the chromebook will alternate between "
3346 "the two, based on its orientation.";
Min Chenfd25cd22018-11-06 01:50:513347const char kUiModeTablet[] = "Tablet";
Mitsuru Oshima63d3f2a2017-08-23 00:12:113348const char kUiModeClamshell[] = "Clamshell";
3349const char kUiModeAuto[] = "Auto (default)";
3350
Andrew Moylan97585272019-02-19 19:01:223351const char kUiShowCompositedLayerBordersName[] =
3352 "Show UI composited layer borders";
3353const char kUiShowCompositedLayerBordersDescription[] =
3354 "Show border around composited layers created by UI.";
3355const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
3356const char kUiShowCompositedLayerBordersSurface[] = "Surface";
3357const char kUiShowCompositedLayerBordersLayer[] = "Layer";
3358const char kUiShowCompositedLayerBordersAll[] = "All";
3359
3360const char kUiSlowAnimationsName[] = "Slow UI animations";
3361const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
Mattias Nissler6bb633f2019-02-13 23:41:463362
Sonny Sasaka7fecfeda2018-07-11 23:47:553363const char kUnfilteredBluetoothDevicesName[] = "Unfiltered Bluetooth devices";
3364const char kUnfilteredBluetoothDevicesDescription[] =
3365 "Shows all Bluetooth devices in UI (System Tray/Settings Page.)";
3366
Allen Webbcdc8e69d2018-09-12 20:36:003367const char kUsbguardName[] = "Block new USB devices at the lock screen.";
3368const char kUsbguardDescription[] =
3369 "Prevents newly connected USB devices from operating at the lock screen"
3370 " until Chrome OS is unlocked to protect against malicious USB devices."
3371 " Already connected USB devices will continue to function.";
3372
James Cooka1bcfa9a2018-01-30 00:18:403373const char kUseMashName[] = "Out-of-process system UI (mash)";
3374const char kUseMashDescription[] =
3375 "Runs the mojo UI service (mus) and the ash window manager and system UI "
3376 "in a separate process.";
Brett Wilson7b44537e2017-08-18 01:38:283377
Andrew Moylan651220212019-02-19 22:50:143378const char kUserActivityPredictionMlServiceName[] =
3379 "ML Service Smart Dim model";
3380const char kUserActivityPredictionMlServiceDescription[] =
3381 "Uses the new ML Service model for user activity prediction (Smart Dim).";
3382
Andres Calderon Jaramillo43c0e8a2018-08-21 02:46:233383const char kVaapiJpegImageDecodeAccelerationName[] =
3384 "VA-API JPEG decode acceleration for images";
3385const char kVaapiJpegImageDecodeAccelerationDescription[] =
3386 "Enable or disable decode acceleration of JPEG images (as opposed to camera"
3387 " captures) using the VA-API.";
3388
Brett Wilson7b44537e2017-08-18 01:38:283389const char kVirtualKeyboardName[] = "Virtual Keyboard";
3390const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
3391
Brett Wilson7b44537e2017-08-18 01:38:283392const char kWakeOnPacketsName[] = "Wake On Packets";
3393const char kWakeOnPacketsDescription[] =
3394 "Enables waking the device based on the receipt of some network packets.";
orenb21da031c2017-06-30 21:24:203395
Rob Schonbergercf5aeeea2019-02-27 16:57:373396const char kEnableAppReinstallZeroStateName[] =
3397 "Enable Zero State App Reinstall Suggestions.";
3398const char kEnableAppReinstallZeroStateDescription[] =
3399 "Enable Zero State App Reinstall Suggestions feature in launcher, which "
3400 "will show app reinstall recommendations at end of zero state list.";
3401
Tim Song988f7092019-03-01 03:13:393402extern const char kAshNotificationStackingBarRedesignName[] =
3403 "Redesigned notification stacking bar";
3404extern const char kAshNotificationStackingBarRedesignDescription[] =
3405 "Enables the redesigned notification stacking bar UI with a \"Clear all\" "
3406 "button.";
3407
Roman Sorokin6812e0082019-04-01 10:12:573408extern const char kInSessionPasswordChangeName[] =
3409 "Enable user password change in the session";
3410
3411extern const char kInSessionPasswordChangeDescription[] =
3412 "Let user change both their IdP password and Chromebook password on "
3413 "chrome://password-change page.";
3414
yhanadac5bff5b2017-05-18 06:37:093415#endif // defined(OS_CHROMEOS)
3416
Collin Baker75a29462019-03-13 19:57:313417// All views-based platforms --------------------------------------------------
3418
3419#if defined(TOOLKIT_VIEWS)
3420
Sajad Maysamc30d6f82019-03-19 22:52:503421const char kEnableMDRoundedCornersOnDialogsName[] =
Dana Fried4e177f32019-04-11 23:46:463422 "MD corners on secondary UI";
Sajad Maysamc30d6f82019-03-19 22:52:503423const char kEnableMDRoundedCornersOnDialogsDescription[] =
Dana Fried4e177f32019-04-11 23:46:463424 "Increases corner radius on secondary UI.";
Sajad Maysamc30d6f82019-03-19 22:52:503425
Collin Baker75a29462019-03-13 19:57:313426const char kInstallableInkDropName[] = "Use InstallableInkDrop where supported";
3427const char kInstallableInkDropDescription[] =
3428 "InstallableInkDrop is part of an InkDrop refactoring effort. This enables "
3429 "the pilot implementation where available.";
3430
3431#endif // defined(TOOLKIT_VIEWS)
3432
Brett Wilson7b44537e2017-08-18 01:38:283433// Random platform combinations -----------------------------------------------
3434
3435#if defined(OS_WIN) || defined(OS_LINUX)
3436
3437const char kEnableInputImeApiName[] = "Enable Input IME API";
3438const char kEnableInputImeApiDescription[] =
3439 "Enable the use of chrome.input.ime API.";
3440
3441#endif // defined(OS_WIN) || defined(OS_LINUX)
3442
Jiajia Qindb252e92019-01-28 11:47:483443#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_CHROMEOS)
3444
3445const char kWebGL2ComputeContextName[] = "WebGL 2.0 Compute";
3446const char kWebGL2ComputeContextDescription[] =
3447 "Enable the use of WebGL 2.0 Compute API.";
3448
3449#endif // defined(OS_WIN) || defined(OS_LINUX) || defined(OS_CHROMEOS)
3450
lanwei83f54452018-06-21 23:51:043451#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3452
3453const char kDirectManipulationStylusName[] = "Direct Manipulation Stylus";
3454const char kDirectManipulationStylusDescription[] =
3455 "If enabled, Chrome will scroll web pages on stylus drag.";
3456
3457#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3458
Henrik Grunell63f2d772018-12-06 17:25:203459#if defined(OS_MACOSX) || defined(OS_CHROMEOS)
3460
3461const char kForceEnableSystemAecName[] = "Force enable system AEC";
3462const char kForceEnableSystemAecDescription[] =
3463 "Use system echo canceller instead of WebRTC echo canceller. If there is "
3464 "no system echo canceller available, getUserMedia with echo cancellation "
3465 "enabled will fail.";
3466
3467#endif // defined(OS_MACOSX) || defined(OS_CHROMEOS)
3468
David Bienvenuc713d502019-02-07 23:46:323469#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_CHROMEOS)
3470
3471const char kWebContentsOcclusionName[] = "Enable occlusion of web contents";
3472const char kWebContentsOcclusionDescription[] =
3473 "If enabled, web contents will behave as hidden when it is occluded by "
3474 "other windows.";
3475
3476#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_CHROMEOS)
3477
Brett Wilson7b44537e2017-08-18 01:38:283478// Feature flags --------------------------------------------------------------
3479
Lei Zhang0a318af2018-11-14 02:19:463480#if defined(DCHECK_IS_CONFIGURABLE)
3481const char kDcheckIsFatalName[] = "DCHECKs are fatal";
3482const char kDcheckIsFatalDescription[] =
3483 "By default Chrome will evaluate in this build, but only log failures, "
3484 "rather than crashing. If enabled, DCHECKs will crash the calling process.";
3485#endif // defined(DCHECK_IS_CONFIGURABLE)
3486
Brett Wilson7b44537e2017-08-18 01:38:283487#if BUILDFLAG(ENABLE_VR)
3488
Alex Cooper151b596e2019-02-21 01:26:573489const char kWebXrOrientationSensorDeviceName[] = "Orientation sensors for XR";
3490const char kWebXrOrientationSensorDeviceDescription[] =
3491 "Allow use of orientation sensors for XR if present";
3492
Bill Orr103ed272018-02-14 21:23:053493#if BUILDFLAG(ENABLE_OCULUS_VR)
3494const char kOculusVRName[] = "Oculus hardware support";
3495const char kOculusVRDescription[] =
3496 "If enabled, Chrome will use Oculus devices for VR (supported only on "
3497 "Windows 10 or later).";
3498#endif // ENABLE_OCULUS_VR
3499
Bill Orr49527562017-11-22 16:58:483500#if BUILDFLAG(ENABLE_OPENVR)
3501const char kOpenVRName[] = "OpenVR hardware support";
3502const char kOpenVRDescription[] =
Bill Orr5056e692018-01-17 02:08:073503 "If enabled, Chrome will use OpenVR devices for VR (supported only on "
3504 "Windows 10 or later).";
Bill Orr49527562017-11-22 16:58:483505#endif // ENABLE_OPENVR
3506
Bill Orrd2af6bd52019-01-23 02:50:243507#if BUILDFLAG(ENABLE_WINDOWS_MR)
3508const char kWindowsMixedRealityName[] = "Windows Mixed Reality support";
3509const char kWindowsMixedRealityDescription[] =
3510 "If enabled, Chrome will use Windows Mixed Reality devices for VR"
3511 " (supported only on Windows 10 or later).";
3512#endif // ENABLE_WINDOWS_MR
3513
Bill Orrecfb9fe2018-10-02 00:11:103514#if BUILDFLAG(ENABLE_ISOLATED_XR_SERVICE)
3515const char kXRSandboxName[] = "XR device sandboxing";
3516const char kXRSandboxDescription[] =
3517 "If enabled, Chrome will host VR APIs in a restricted process on desktop.";
3518#endif // ENABLE_ISOLATED_XR_SERVICE
3519
Brett Wilson7b44537e2017-08-18 01:38:283520#endif // ENABLE_VR
3521
Lei Zhang802201c2018-11-14 18:16:283522#if BUILDFLAG(ENABLE_PLUGINS)
3523
dstockwellcc759202019-01-11 00:42:123524#if defined(OS_CHROMEOS)
3525const char kPdfAnnotations[] = "PDF Annotations";
Weidong Guo577fe9ac2019-01-28 19:58:103526const char kPdfAnnotationsDescription[] = "Enable annotating PDF documents.";
dstockwellcc759202019-01-11 00:42:123527#endif // defined(OS_CHROMEOS)
3528
Lei Zhang802201c2018-11-14 18:16:283529const char kPdfFormSaveName[] = "Save PDF Forms";
3530const char kPdfFormSaveDescription[] =
3531 "Enable saving PDFs with filled form data.";
3532
3533const char kPdfIsolationName[] = "PDF Isolation";
3534const char kPdfIsolationDescription[] =
3535 "Render PDF files from different origins in different plugin processes.";
3536
3537#endif // BUILDFLAG(ENABLE_PLUGINS)
3538
Brett Wilson7b44537e2017-08-18 01:38:283539#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3540
3541const char kAutofillCreditCardUploadName[] =
3542 "Enable offering upload of Autofilled credit cards";
3543const char kAutofillCreditCardUploadDescription[] =
3544 "Enables a new option to upload credit cards to Google Payments for sync "
3545 "to all Chrome devices.";
3546
3547#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3548
Collin Baker0a45d6a2018-12-20 19:21:503549#if BUILDFLAG(ENABLE_DESKTOP_IN_PRODUCT_HELP)
3550
3551const char kReopenTabInProductHelpName[] = "Reopen tab in-product help";
3552const char kReopenTabInProductHelpDescription[] =
3553 "Enable in-product help that guides a user to reopen a tab if it looks "
3554 "like they accidentally closed it.";
3555
3556#endif // BUILDFLAG(ENABLE_DESKTOP_IN_PRODUCT_HELP)
3557
Tomas Popela253a5832019-01-14 17:22:103558#if defined(WEBRTC_USE_PIPEWIRE)
3559
3560extern const char kWebrtcPipeWireCapturerName[] = "WebRTC PipeWire support";
3561extern const char kWebrtcPipeWireCapturerDescription[] =
3562 "When enabled the WebRTC will use the PipeWire multimedia server for "
3563 "capturing the desktop content on the Wayland display server.";
3564
3565#endif // #if defined(WEBRTC_USE_PIPEWIRE)
3566
Stephen Chenneyde6e5c82019-01-21 01:56:043567const char kAvoidFlashBetweenNavigationName[] =
3568 "Enable flash avoidance between same-origin navigations";
3569const char kAvoidFlahsBetweenNavigationDescription[] =
3570 "Enables experimental flash avoidance when navigating between pages "
3571 "in the same origin. This feature is in the implementation stages and "
3572 "currently has no effect.";
3573
Brett Wilson7b44537e2017-08-18 01:38:283574// ============================================================================
3575// Don't just add flags to the end, put them in the right section in
3576// alphabetical order just like the header file.
3577// ============================================================================
3578
vabr0215a8e2017-03-28 12:47:343579} // namespace flag_descriptions