blob: 6b71a43ef507f3e0f122185ca99866c32a9cc083 [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
Julian Pastarmov885e8ed2019-05-03 14:24:2427const char kAllowPopupsDuringPageUnloadName[] =
28 "Allows a page to show popups during its unloading";
29const char kAllowPopupsDuringPageUnloadDescription[] =
30 "When the flag is set to enabled, pages are allowed to show popups while "
31 "they are being unloaded.";
32
Kunihiko Sakamoto4d407982018-07-10 04:56:2933const char kAllowSignedHTTPExchangeCertsWithoutExtensionName[] =
34 "Allow Signed HTTP Exchange certificates without extension";
35const char kAllowSignedHTTPExchangeCertsWithoutExtensionDescription[] =
36 "Accepts Origin-Signed HTTP Exchanges to be signed with certificates "
Tsuyoshi Horo13d7e2d2019-04-18 07:32:4337 "that do not have CanSignHttpExchangesDraft extension. Warning: Enabling "
38 "this may pose a security risk.";
Kunihiko Sakamoto4d407982018-07-10 04:56:2939
Henrique Nakashima52d76952018-11-30 19:35:5840const char kAllowStartingServiceManagerOnlyName[] =
41 "Allow starting service manager only";
42const char kAllowStartingServiceManagerOnlyDescription[] =
43 "Allows running a lightweight service-manager-only mode, in which services "
44 "can run without the browser process.";
45
Kyle Horimoto7854a032019-04-03 02:51:0746const char kUpdatedCellularActivationUiName[] =
47 "Updated Cellular Activation UI";
48const char kUpdatedCellularActivationUiDescription[] =
49 "Enables the updated cellular activation UI.";
50
Kyle Horimoto2d838ec2018-12-26 19:41:1651const char kUseMessagesGoogleComDomainName[] = "Use messages.google.com domain";
52const char kUseMessagesGoogleComDomainDescription[] =
53 "Use the messages.google.com domain as part of the \"Messages\" "
54 "feature under \"Connected Devices\" settings.";
55
Kyle Horimoto874554a2019-01-31 00:52:0956const char kUseMessagesStagingUrlName[] = "Use Messages staging URL";
57const char kUseMessagesStagingUrlDescription[] =
58 "Use the staging server as part of the \"Messages\" feature under "
59 "\"Connected Devices\" settings.";
60
Azeem Arshad373e1ea72019-01-23 02:16:0061const char kEnableMessagesWebPushName[] =
62 "Web push in Android Messages integration";
63const char kEnableMessagesWebPushDescription[] =
64 "Use web push for background notificatons in Chrome OS integration "
65 "with Android Messages for Web";
66
Kamila472a5942018-11-26 09:48:2767const char kAndroidSiteSettingsUIRefreshName[] =
68 "Android Site Settings UI changes.";
69const char kAndroidSiteSettingsUIRefreshDescription[] =
Kamila02f7e072018-10-08 09:50:2870 "Enable the new UI "
71 "changes in Site Settings in Android.";
72
Brett Wilsonf27ff602017-07-07 22:28:4773const char kAppBannersName[] = "App Banners";
74const char kAppBannersDescription[] =
75 "Enable the display of Progressive Web App banners, which prompt a user to "
76 "add a web app to their shelf, or other platform-specific equivalent.";
77
Ioana Pandelef9689a062018-06-22 15:35:5178const char kAutomaticPasswordGenerationName[] = "Automatic password generation";
79const char kAutomaticPasswordGenerationDescription[] =
80 "Allow Chrome to offer to generate passwords when it detects account "
81 "creation pages.";
82
Jinsuk Kime11e23ed2019-03-20 02:45:1183const char kDelegateOverscrollSwipesName[] =
84 "Delegate overscroll swipes to websites";
85const char kDelegateOverscrollSwipesDescription[] =
86 "Delegate overscroll swipes to websites first";
87
Jinsuk Kim00e52be2019-03-21 02:26:4088const char kDrawVerticallyEdgeToEdgeName[] =
89 "Draw contents vertically from edge to edge.";
90const char kDrawVerticallyEdgeToEdgeDescription[] =
91 "Draw contents vertically from edge to edge.";
92
Ulan Degenbaevb5466a92018-07-19 12:35:3493const char kEnableBloatedRendererDetectionName[] = "Bloated renderer detection";
94const char kEnableBloatedRendererDetectionDescription[] =
95 "Enable bloated renderer detection";
96
Khushalba202212017-07-12 19:53:4997const char kAsyncImageDecodingName[] = "AsyncImageDecoding";
98const char kAsyncImageDecodingDescription[] =
99 "Enables asynchronous decoding of images from raster for web content";
100
sebsgca14b092018-12-07 16:56:15101extern const char kAutofillAlwaysShowServerCardsInSyncTransportName[] =
102 "AlwaysShowServerCardsInSyncTransport";
103extern const char kAutofillAlwaysShowServerCardsInSyncTransportDescription[] =
104 "Always show server cards when in sync transport mode for wallet data";
105
Hui(Andy) Wufbebf91d22019-02-01 01:23:54106extern const char kAutofillAssistantChromeEntryName[] =
107 "AutofillAssistantChromeEntry";
108extern const char kAutofillAssistantChromeEntryDescription[] =
109 "Initiate autofill assistant from within Chrome.";
110
Roger McFarlane2eceba982018-05-18 01:37:11111const char kAutofillCacheQueryResponsesName[] =
112 "Cache Autofill Query Responses";
113const char kAutofillCacheQueryResponsesDescription[] =
114 "When enabled, autofill will cache the responses it receives from the "
115 "crowd-sourced field type prediction server.";
116
Jeffrey Cohen05cdafa392018-08-15 20:49:17117const char kAutofillEnableCompanyNameName[] =
118 "Enable Autofill Company Name field";
119const char kAutofillEnableCompanyNameDescription[] =
120 "When enabled, Company Name fields will be auto filled";
121
siyua9a66d1c2019-03-19 18:26:56122const char kAutofillEnableLocalCardMigrationForNonSyncUserName[] =
123 "Enable local card migration flow for non-syncing users";
124const char kAutofillEnableLocalCardMigrationForNonSyncUserDescription[] =
125 "When enabled, the local card migration flow will be enabled for users who "
126 "have signed in but not enabled Chrome Sync.";
127
siyua1d492612019-03-14 09:27:45128const char kAutofillEnableToolbarStatusChipName[] =
129 "Move Autofill omnibox icons next to the profile avatar icon";
130const char kAutofillEnableToolbarStatusChipDescription[] =
131 "When enabled, Autofill data related icon will be shown in the status "
132 "chip next to the profile avatar icon in the toolbar.";
sebsge35b762c2018-03-29 20:33:27133
Caitlin Fischer43edd90a2019-05-01 13:24:30134const char kAutofillEnforceMinRequiredFieldsForHeuristicsName[] =
135 "Autofill Enforce Min Required Fields For Heuristics";
136const char kAutofillEnforceMinRequiredFieldsForHeuristicsDescription[] =
137 "When enabled, autofill will generally require a form to have at least 3 "
138 "fields before allowing heuristic field-type prediction to occur.";
139
140const char kAutofillEnforceMinRequiredFieldsForQueryName[] =
141 "Autofill Enforce Min Required Fields For Query";
142const char kAutofillEnforceMinRequiredFieldsForQueryDescription[] =
143 "When enabled, autofill will generally require a form to have at least 3 "
144 "fields before querying the autofill server for field-type predictions.";
145
146const char kAutofillEnforceMinRequiredFieldsForUploadName[] =
147 "Autofill Enforce Min Required Fields For Upload";
148const char kAutofillEnforceMinRequiredFieldsForUploadDescription[] =
149 "When enabled, autofill will generally require a form to have at least 3 "
150 "fillable fields before uploading field-type votes for that form.";
151
Jared Saul63f598a12019-03-22 23:40:26152const char kAutofillNoLocalSaveOnUnmaskSuccessName[] =
153 "Remove the option to save local copies of unmasked server cards";
154const char kAutofillNoLocalSaveOnUnmaskSuccessDescription[] =
155 "When enabled, the server card unmask prompt will not include the checkbox "
156 "to also save the card locally on the current device upon success.";
157
Anne Lime625362e2018-08-29 03:13:25158const char kAutofillNoLocalSaveOnUploadSuccessName[] =
Jared Saul6f58ada2019-03-07 20:41:23159 "Disable saving local copy of uploaded card when credit card upload "
160 "succeeds";
Anne Lime625362e2018-08-29 03:13:25161const char kAutofillNoLocalSaveOnUploadSuccessDescription[] =
162 "When enabled, no local copy of server card will be saved when credit card "
163 "upload succeeds.";
164
Sebastien Lalancette1545950b2019-04-08 14:43:11165const char kAutofillOffNoServerDataName[] = "Autofill Off No Server Data";
166const char kAutofillOffNoServerDataDescription[] =
167 "Disables Autofill for fields with autocomplete off that have no "
168 "crowd-sourced evidence that Autofill would be helpful.";
169
Parastoo Geranmayeh0f5ebbc2019-01-21 21:01:09170const char kAutofillProfileClientValidationName[] =
171 "Autofill Validates Profiles By Client";
172const char kAutofillProfileClientValidationDescription[] =
173 "Allows autofill to validate profiles on the client side";
174
Parastoo Geranmayeh25fccec22019-01-29 18:38:13175const char kAutofillProfileServerValidationName[] =
176 "Autofill Uses Server Validation";
177const char kAutofillProfileServerValidationDescription[] =
178 "Allows autofill to use server side validation";
179
Caitlin Fischer6d609542019-05-01 21:59:21180const char kAutofillPruneSuggestionsName[] = "Autofill Prune Suggestions";
181const char kAutofillPruneSuggestionsDescription[] =
182 "Further limits the number of suggestions in the Autofill dropdown.";
183
Parastoo Geranmayeha1895c12019-04-25 16:43:38184const char kAutofillRejectCompanyBirthyearName[] =
185 "Autofill Rejects Invalid Company Names";
186const char kAutofillRejectCompanyBirthyearDescription[] =
187 "Autofill rejects using non-verified company names that are in the "
188 "format of a birthyear.";
189
Moe Ahmadid3ddfcb2018-04-20 19:51:08190const char kAutofillRestrictUnownedFieldsToFormlessCheckoutName[] =
191 "Restrict formless form extraction";
192const char kAutofillRestrictUnownedFieldsToFormlessCheckoutDescription[] =
193 "Restrict extraction of formless forms to checkout flows";
194
Roger McFarlanee193ab122018-11-22 20:55:07195const char kAutofillRichMetadataQueriesName[] =
196 "Autofill - Rich metadata queries (Canary/Dev only)";
197const char kAutofillRichMetadataQueriesDescription[] =
198 "Transmit rich form/field metadata when querying the autofill server. "
199 "This feature only works on the Canary and Dev channels.";
200
sebsg48d53acd92019-01-17 18:11:16201const char kAutofillSettingsSplitByCardTypeName[] =
202 "Autofill settings split by card type";
203const char kAutofillSettingsSplitByCardTypeDescription[] =
204 "When enabled, the cards in the payments settings will be split into two "
205 "lists based on where they are stored.";
206
Caitlin Fischer43edd90a2019-05-01 13:24:30207const char kAutofillUseImprovedLabelDisambiguationName[] =
208 "Autofill Uses Improved Label Disambiguation";
209const char kAutofillUseImprovedLabelDisambiguationDescription[] =
210 "When enabled, the Autofill dropdown's suggestions' labels are displayed "
211 "using the improved disambiguation format.";
212
Maya Lekova4bbfdb7f2018-10-16 08:15:03213const char kAwaitOptimizationName[] = "Await optimization";
214const char kAwaitOptimizationDescription[] =
215 "Enables await taking 1 tick on the microtask queue.";
216
Brett Wilsonf27ff602017-07-07 22:28:47217const char kBrowserTaskSchedulerName[] = "Task Scheduler";
218const char kBrowserTaskSchedulerDescription[] =
219 "Enables redirection of some task posting APIs to the task scheduler.";
220
Carlos IL766fbc882018-02-16 02:34:52221const char kBundledConnectionHelpName[] = "Bundled Connection Help";
222const char kBundledConnectionHelpDescription[] =
Carlos ILaafcd73a2018-07-10 20:08:37223 "Enables or disables redirection to local help content for users who get "
224 "an interstitial after clicking the 'Learn More' link on a previous "
225 "interstitial.";
Carlos IL766fbc882018-02-16 02:34:52226
Brett Wilsonf27ff602017-07-07 22:28:47227const char kBypassAppBannerEngagementChecksName[] =
228 "Bypass user engagement checks";
229const char kBypassAppBannerEngagementChecksDescription[] =
230 "Bypasses user engagement checks for displaying app banners, such as "
231 "requiring that users have visited the site before and that the banner "
232 "hasn't been shown recently. This allows developers to test that other "
233 "eligibility requirements for showing app banners, such as having a "
234 "manifest, are met.";
235
Amber Won478561d2017-08-19 01:02:59236const char kClickToOpenPDFName[] = "Click to open embedded PDFs";
237const char kClickToOpenPDFDescription[] =
238 "When the PDF plugin is unavailable, show a click-to-open placeholder for "
239 "embedded PDFs.";
240
rbpotter9990eb42018-07-12 05:34:59241const char kCloudPrinterHandlerName[] = "Enable Cloud Printer Handler";
242const char kCloudPrinterHandlerDescription[] =
243 "Use the new cloud printer handler for communicating with the cloud "
244 "print server, instead of the cloud print interface in the Print "
245 "Preview WebUI.";
246
Tanja Gornakb0985dd2018-10-11 17:24:40247const char kFCMInvalidationsName[] =
248 "Enable invalidations delivery via new FCM based protocol";
249const char kFCMInvalidationsDescription[] =
250 "Use the new FCM-based protocol for deliveling invalidations";
251
Yining Wangdedf0762019-02-19 20:20:29252const char kFocusMode[] = "Focus Mode";
253const char kFocusModeDescription[] =
254 "If enabled, allows the user to switch to Focus Mode";
255
Christopher Cameronceb8727d2017-09-07 23:53:16256const char kForceColorProfileSRGB[] = "sRGB";
257const char kForceColorProfileP3[] = "Display P3 D65";
258const char kForceColorProfileColorSpin[] = "Color spin with gamma 2.4";
259const char kForceColorProfileHdr[] = "scRGB linear (HDR where available)";
260
261const char kForceColorProfileName[] = "Force color profile";
262const char kForceColorProfileDescription[] =
263 "Forces Chrome to use a specific color profile instead of the color "
264 "of the window's current monitor, as specified by the operating system.";
265
Brett Wilsonf27ff602017-07-07 22:28:47266const char kCompositedLayerBordersName[] = "Composited render layer borders";
267const char kCompositedLayerBordersDescription[] =
268 "Renders a border around composited Render Layers to help debug and study "
269 "layer compositing.";
270
Theresac34db2d2018-06-28 00:03:11271const char kContextualSuggestionsButtonName[] = "Contextual Suggestions Button";
272const char kContextualSuggestionsButtonDescription[] =
273 "If enabled, shows a button to trigger contextual suggestions.";
274
Theresae308b9e2018-10-10 15:57:40275const char kContextualSuggestionsIPHReverseScrollName[] =
276 "Contextual Suggestions IPH Reverse Scroll";
277const char kContextualSuggestionsIPHReverseScrollDescription[] =
278 "Require a reverse scroll before showing in-product help for contextual "
279 "suggestions.";
280
Theresa0f2947b92018-07-02 21:27:58281const char kContextualSuggestionsOptOutName[] =
282 "Contextual Suggestions Opt-out";
283const char kContextualSuggestionsOptOutDescription[] =
284 "If enabled, allows the user to opt out of contextual suggestions.";
285
Lily Cheneb304c8f2019-04-25 23:37:45286extern const char kCookiesWithoutSameSiteMustBeSecureName[] =
287 "Cookies without SameSite must be secure";
288extern const char kCookiesWithoutSameSiteMustBeSecureDescription[] =
289 "If enabled, cookies without SameSite restrictions must also be Secure. If "
290 "a cookie without SameSite restrictions is set without the Secure "
Lily Chend3bf638d2019-05-03 16:54:25291 "attribute, it will be rejected. This flag only has an effect if "
Lily Cheneb304c8f2019-04-25 23:37:45292 "\"SameSite by default cookies\" is also enabled.";
293
Brett Wilsonf27ff602017-07-07 22:28:47294const char kCreditCardAssistName[] = "Credit Card Assisted Filling";
295const char kCreditCardAssistDescription[] =
296 "Enable assisted credit card filling on certain sites.";
297
Thanh Le659cb102017-12-20 22:00:19298const char kDataSaverServerPreviewsName[] = "Data Saver Server Previews";
299const char kDataSaverServerPreviewsDescription[] =
300 "Allow the Data Reduction Proxy to serve previews.";
Brett Wilsonf27ff602017-07-07 22:28:47301
Brett Wilsonf27ff602017-07-07 22:28:47302const char kDebugPackedAppName[] = "Debugging for packed apps";
303const char kDebugPackedAppDescription[] =
304 "Enables debugging context menu options such as Inspect Element for packed "
305 "applications.";
306
Brett Wilsonf27ff602017-07-07 22:28:47307const char kDebugShortcutsName[] = "Debugging keyboard shortcuts";
308const char kDebugShortcutsDescription[] =
309 "Enables additional keyboard shortcuts that are useful for debugging Ash.";
310
311const char kDeviceDiscoveryNotificationsName[] =
312 "Device Discovery Notifications";
313const char kDeviceDiscoveryNotificationsDescription[] =
314 "Device discovery notifications on local network.";
315
316const char kDevtoolsExperimentsName[] = "Developer Tools experiments";
317const char kDevtoolsExperimentsDescription[] =
318 "Enables Developer Tools experiments. Use Settings panel in Developer "
319 "Tools to toggle individual experiments.";
320
321const char kDisableAudioForDesktopShareName[] =
322 "Disable Audio For Desktop Share";
323const char kDisableAudioForDesktopShareDescription[] =
324 "With this flag on, desktop share picker window will not let the user "
325 "choose whether to share audio.";
326
Yue Ru Suna50a80f2019-02-08 05:02:58327const char kDisableBestEffortTasksName[] = "Skip best effort tasks";
328const char kDisableBestEffortTasksDescription[] =
329 "With this flag on, tasks of the lowest priority will not be executed "
330 "until shutdown. The queue of low priority tasks can increase memory usage."
331 "Also, while it should be possible to use Chrome almost normally with this "
332 "flag, it is expected that some non-visible operations such as writing "
333 "user data to disk, cleaning caches, reporting metrics or updating "
334 "components won't be performed until shutdown.";
335
Arthur Sonzogni721f48e2018-10-31 17:10:02336const char kDisableIpcFloodingProtectionName[] =
337 "Disable IPC flooding protection";
338const char kDisableIpcFloodingProtectionDescription[] =
339 "Some javascript code can flood the inter process communication system. "
340 "This protection limits the rate (calls/seconds) at which theses function "
arthursonzogni443bd0ef2018-11-27 16:12:53341 "can be used. This flag disables the protection. This flag is deprecated "
342 "and will be removed in Chrome 76. Use the switch "
343 "--disable-ipc-flooding-protection instead.";
Arthur Sonzogni721f48e2018-10-31 17:10:02344
Chris Palmer917bc052018-03-14 19:28:31345const char kDisablePushStateThrottleName[] = "Disable pushState throttling";
346const char kDisablePushStateThrottleDescription[] =
347 "Disables throttling of history.pushState and history.replaceState method "
arthursonzogni443bd0ef2018-11-27 16:12:53348 "calls. This flag is deprecated and will be removed in Chrome 76. Use the "
349 "switch --disable-ipc-flooding-protection instead.";
Chris Palmer917bc052018-03-14 19:28:31350
Brett Wilsonf27ff602017-07-07 22:28:47351const char kDisallowDocWrittenScriptsUiName[] =
352 "Block scripts loaded via document.write";
353const char kDisallowDocWrittenScriptsUiDescription[] =
354 "Disallows fetches for third-party parser-blocking scripts inserted into "
355 "the main frame via document.write.";
356
Christopher Thompson2ffffa2c2018-05-18 23:06:37357const char kDisallowUnsafeHttpDownloadsName[] =
358 "Block unsafe downloads over insecure connections";
359const char kDisallowUnsafeHttpDownloadsNameDescription[] =
360 "Disallows downloads of unsafe files (files that can potentially execute "
361 "code), where the final download origin or any origin in the redirect "
362 "chain is insecure.";
363
Brett Wilsonf27ff602017-07-07 22:28:47364const char kEmbeddedExtensionOptionsName[] = "Embedded extension options";
365const char kEmbeddedExtensionOptionsDescription[] =
366 "Display extension options as an embedded element in chrome://extensions "
367 "rather than opening a new tab.";
368
Dominic Mazzoniaa4b97d2019-04-03 22:43:48369const char kEnableAccessibilityImageDescriptionsName[] =
370 "Accessibility Image Descriptions";
371const char kEnableAccessibilityImageDescriptionsDescription[] =
372 "Enables screen reader users to request computer-generated descriptions "
373 "of unlabeled images using the page context menu.";
374
Dominic Mazzoni8ac98962018-05-25 05:44:55375const char kEnableAccessibilityObjectModelName[] = "Accessibility Object Model";
376const char kEnableAccessibilityObjectModelDescription[] =
377 "Enables experimental support for Accessibility Object Model APIs "
378 "that are in development.";
379
Becca Hughesac86cd442019-01-09 23:49:54380const char kEnableAudioFocusEnforcementName[] = "Audio Focus Enforcement";
381const char kEnableAudioFocusEnforcementDescription[] =
382 "Enables enforcement of a single media session having audio focus at "
383 "any one time. Requires #enable-media-session-service to be enabled too.";
384
Sebastien Lalancette5daaf4a2019-01-11 22:09:25385const char kEnableAutocompleteDataRetentionPolicyName[] =
386 "Enable automatic cleanup of expired Autocomplete entries.";
387const char kEnableAutocompleteDataRetentionPolicyDescription[] =
388 "If enabled, will clean-up Autocomplete entries whose last use date is "
389 "older than the current retention policy. These entries will be "
390 "permanently deleted from the client on startup, and will be unlinked "
391 "from sync.";
392
Florian Uunk8c428ea2018-07-18 11:12:52393const char kEnableAutofillAccountWalletStorageName[] =
394 "Enable the account data storage for autofill";
395const char kEnableAutofillAccountWalletStorageDescription[] =
396 "Enable the ephemeral storage for account data for autofill.";
397
Shanfeng Zhang19c16562017-10-17 02:30:40398const char kEnableAutofillCreditCardAblationExperimentDisplayName[] =
399 "Credit card autofill ablation experiment.";
400const char kEnableAutofillCreditCardAblationExperimentDescription[] =
401 "If enabled, credit card autofill suggestions will not display.";
402
Manas Verma7e5b391b2019-04-09 02:08:53403const char kEnableAutofillCreditCardAuthenticationName[] =
404 "Allow using platform authenticators to retrieve server cards";
405const char kEnableAutofillCreditCardAuthenticationDescription[] =
406 "When enabled, users will be given the option to use a platform "
407 "authenticator (if available) to verify card ownership when retrieving "
408 "credit cards from Google Payments.";
409
Brett Wilsonf27ff602017-07-07 22:28:47410const char kEnableAutofillCreditCardLastUsedDateDisplayName[] =
411 "Display the last used date of a credit card in autofill.";
412const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
413 "If enabled, display the last used date of a credit card in autofill.";
414
Jared Saulbc672a072018-06-16 05:22:12415const char kEnableAutofillCreditCardUploadEditableCardholderNameName[] =
416 "Make cardholder name editable in dialog during credit card upload";
417const char kEnableAutofillCreditCardUploadEditableCardholderNameDescription[] =
418 "If enabled, in certain situations when offering credit card upload to "
419 "Google Payments, the cardholder name can be edited within the "
420 "offer-to-save dialog, which is prefilled with the name from the signed-in "
421 "Google Account.";
422
Hao Zhang1be9c262018-11-03 00:23:51423const char kEnableAutofillCreditCardUploadEditableExpirationDateName[] =
424 "Make expiration date editable in dialog during credit card upload";
425const char kEnableAutofillCreditCardUploadEditableExpirationDateDescription[] =
426 "If enabled, if a credit card's expiration date was not detected when "
427 "offering card upload to Google Payments, the offer-to-save dialog "
428 "displays an expiration date selector.";
429
Sujie Zhu74dd439e2019-04-27 03:23:39430const char kEnableAutofillDoNotMigrateUnsupportedLocalCardsName[] =
431 "Prevents local card migration on local cards from unsupported networks";
432const char kEnableAutofillDoNotMigrateUnsupportedLocalCardsDescription[] =
433 "If enabled, local cards from unsupported networks will not be offered "
434 "local card migration.";
435
Anne Limc1d23212019-03-07 17:46:08436const char kEnableAutofillDoNotUploadSaveUnsupportedCardsName[] =
437 "Prevents upload save on cards from unsupported networks";
438const char kEnableAutofillDoNotUploadSaveUnsupportedCardsDescription[] =
439 "If enabled, cards from unsupported networks will not be offered upload "
440 "save, and will instead be offered local save.";
441
Hao Zhangd3017112019-02-01 20:13:30442const char kEnableAutofillImportNonFocusableCreditCardFormsName[] =
443 "Allow credit card import from forms that disappear after entry";
444const char kEnableAutofillImportNonFocusableCreditCardFormsDescription[] =
445 "If enabled, offers credit card save for forms that are hidden from the "
446 "page after information has been entered into them, including "
447 "accordion-style checkout flows.";
448
Hao Zhang0c4f18d2019-04-05 01:20:25449const char kEnableAutofillImportDynamicFormsName[] =
450 "Allow credit card import from dynamic forms after entry";
451const char kEnableAutofillImportDynamicFormsDescription[] =
452 "If enabled, offers credit card save for dynamic forms from the page after "
453 "information has been entered into them.";
454
Anne Lim30351782019-03-01 01:57:16455const char kEnableAutofillLocalCardMigrationUsesStrikeSystemV2Name[] =
456 "Enable limit on offering to migrate local cards repeatedly using the "
457 "updated strike system implementation";
458const char kEnableAutofillLocalCardMigrationUsesStrikeSystemV2Description[] =
459 "If enabled, uses the updated strike system implementation to prevent "
460 "offering prompts for local card migration if it has repeatedly been "
461 "ignored, declined, or failed.";
462
tmartinocd414732018-02-12 19:01:01463const char kEnableAutofillNativeDropdownViewsName[] =
464 "Display Autofill Dropdown Using Views";
465const char kEnableAutofillNativeDropdownViewsDescription[] =
466 "If enabled, the Autofill Dropdown will be built natively using Views, "
467 "rather than painted directly to a canvas.";
468
siyua172973d2018-11-21 22:23:20469const char kEnableAutofillSaveCardImprovedUserConsentName[] =
470 "Use updated UI for credit card save bubbles";
471const char kEnableAutofillSaveCardImprovedUserConsentDescription[] =
472 "If enabled, adds a [No thanks] button to credit card save bubbles and "
473 "updates their title headers.";
474
Jared Saul8a0c1e92018-10-10 18:22:47475const char kEnableAutofillSaveCreditCardUsesStrikeSystemName[] =
476 "Enable limit on offering to save the same credit card repeatedly";
477const char kEnableAutofillSaveCreditCardUsesStrikeSystemDescription[] =
478 "If enabled, prevents popping up the credit card offer-to-save prompt if "
479 "it has repeatedly been ignored, declined, or failed.";
480
Anne Lim9d8f66a2019-01-07 23:49:21481const char kEnableAutofillSaveCreditCardUsesStrikeSystemV2Name[] =
Anne Lim30351782019-03-01 01:57:16482 "Enable limit on offering to save the same credit card repeatedly using "
483 "the updated strike system implementation";
Anne Lim9d8f66a2019-01-07 23:49:21484const char kEnableAutofillSaveCreditCardUsesStrikeSystemV2Description[] =
Anne Lim30351782019-03-01 01:57:16485 "If enabled, uses the updated strike system implementation to prevent "
486 "popping up the credit card offer-to-save prompt if it has repeatedly been "
Anne Lim9d8f66a2019-01-07 23:49:21487 "ignored, declined, or failed.";
488
Lakshmi Kumar Dabbirua3d0805f2018-05-22 22:04:23489const char kEnableAutofillSendExperimentIdsInPaymentsRPCsName[] =
490 "Send experiment flag IDs in calls to Google Payments";
491const char kEnableAutofillSendExperimentIdsInPaymentsRPCsDescription[] =
492 "If enabled, adds the status of certain experiment variations when making "
493 "calls to Google Payments.";
494
Brett Wilsonf27ff602017-07-07 22:28:47495const char kEnableBrotliName[] = "Brotli Content-Encoding.";
496const char kEnableBrotliDescription[] =
497 "Enable Brotli Content-Encoding support.";
498
Tarun Bansal56c92932019-04-01 17:58:36499const char kEnableSaveDataName[] = "Enables save data feature";
500const char kEnableSaveDataDescription[] =
501 "Enables save data feature. May cause user's traffic to be proxied via "
502 "Google's data reduction proxy.";
503
Ramin Halavati7dbb0722019-02-15 05:33:49504const char kEnableFilesystemInIncognitoName[] = "Filesystem API in Incognito";
505const char kEnableFilesystemInIncognitoDescription[] =
506 "Enable Filesystem API in incognito mode.";
507
Doug Arnett08b4067b2017-10-12 20:14:44508const char kEnableNoScriptPreviewsName[] = "NoScript previews";
509
510const char kEnableNoScriptPreviewsDescription[] =
511 "Enable disabling JavaScript on some pages on slow networks.";
512
Thanh Le2c279fbc2017-11-21 01:25:40513const char kDataReductionProxyServerAlternative1[] = "Use alt. server config 1";
514const char kDataReductionProxyServerAlternative2[] = "Use alt. server config 2";
515const char kDataReductionProxyServerAlternative3[] = "Use alt. server config 3";
516const char kDataReductionProxyServerAlternative4[] = "Use alt. server config 4";
517const char kDataReductionProxyServerAlternative5[] = "Use alt. server config 5";
518const char kDataReductionProxyServerAlternative6[] = "Use alt. server config 6";
519const char kDataReductionProxyServerAlternative7[] = "Use alt. server config 7";
520const char kDataReductionProxyServerAlternative8[] = "Use alt. server config 8";
521const char kDataReductionProxyServerAlternative9[] = "Use alt. server config 9";
522const char kDataReductionProxyServerAlternative10[] =
523 "Use alt. server config 10";
rajendrantcfa60ba2018-10-30 09:16:54524const char kEnableDataReductionProxyNetworkServiceName[] =
525 "Data reduction proxy with network service";
526const char kEnableDataReductionProxyNetworkServiceDescription[] =
527 "Enable data reduction proxy when network service is enabled";
Brett Wilsonf27ff602017-07-07 22:28:47528const char kEnableDataReductionProxyServerExperimentName[] =
529 "Use an alternative Data Saver back end configuration.";
530const char kEnableDataReductionProxyServerExperimentDescription[] =
531 "Enable a different approach to saving data by configuring the back end "
532 "server";
533
Matt Giucad4870432017-11-24 01:04:38534const char kEnableDesktopPWAsName[] = "Desktop PWAs";
535const char kEnableDesktopPWAsDescription[] =
536 "Experimental windowing and install banner treatment for Progressive Web "
537 "Apps on desktop platforms. Implies #enable-experimental-app-banners.";
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17538
Giovanni Ortuño Urquidi40c8e792018-02-28 04:18:59539const char kEnableDesktopPWAsLinkCapturingName[] =
540 "Desktop PWAs Link Capturing";
541const char kEnableDesktopPWAsLinkCapturingDescription[] =
542 "Experimentally enable link capturing for Desktop PWAs. Navigations to "
543 "URLs that are in-scope of Desktop PWAs will open in a window. Requires "
544 "#enable-desktop-pwas.";
545
Jay Harris52511a02018-11-02 01:00:28546const char kDesktopPWAsCustomTabUIName[] = "Desktop PWAs Custom Tab UI";
547const char kDesktopPWAsCustomTabUIDescription[] =
548 "Browsing out-of-scope links in a desktop PWA will use the custom tab UI "
549 "for displaying the page title and origin instead of the location bar.";
550
Jay Harrisee7a7bc62018-10-09 01:47:49551const char kDesktopPWAsStayInWindowName[] =
552 "Desktop PWAs out-of-scope links open in the app window";
553const char kDesktopPWAsStayInWindowDescription[] =
Jay Harris52511a02018-11-02 01:00:28554 "Links to sites in a different scope will open inside the PWA window as "
555 "opposed to in the browser.";
Jay Harrisee7a7bc62018-10-09 01:47:49556
Alan Cutter1816c9d2019-02-11 02:20:07557const char kDesktopPWAsOmniboxInstallName[] =
558 "Desktop PWAs installable from the omnibox";
559const char kDesktopPWAsOmniboxInstallDescription[] =
560 "When on a site that passes PWA installation requirements show a button in "
561 "the omnibox for installing it.";
562
Christopher Lame66b7812018-09-26 01:49:24563const char kEnableSystemWebAppsName[] = "System Web Apps";
564const char kEnableSystemWebAppsDescription[] =
565 "Experimental system for using the Desktop PWA framework for running System"
566 "Apps (e.g Settings, Discover).";
567
David Benjamin570460e2018-10-16 06:01:29568const char kEnforceTLS13DowngradeName[] = "TLS 1.3 downgrade hardening";
569const char kEnforceTLS13DowngradeDescription[] =
570 "This option enables the TLS 1.3 downgrade hardening mechanism. This "
571 "hardens TLS 1.3 connections while remaining compatible with TLS 1.0 "
572 "through 1.2 connections. Firewalls and proxies that do not function when "
573 "this is enabled do not implement TLS 1.0 through 1.2 correctly or "
574 "securely. They must be fixed by vendors.";
575
Steven Valdez89a44ea92019-05-01 15:18:49576const char kEnableTLS13EarlyDataName[] = "TLS 1.3 Early Data";
577const char kEnableTLS13EarlyDataDescription[] =
578 "This option enables TLS 1.3 Early Data, allowing GET requests to be sent "
579 "during the handshake when resuming a connection to a compatible TLS 1.3 "
580 "server.";
581
Brett Wilsonf27ff602017-07-07 22:28:47582const char kEnableGenericSensorName[] = "Generic Sensor";
583const char kEnableGenericSensorDescription[] =
Mikhail Pozdnyakov73373a62017-08-24 17:31:25584 "Enables motion sensor classes based on Generic Sensor API, i.e. "
585 "Accelerometer, LinearAccelerationSensor, Gyroscope, "
586 "AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
587
588const char kEnableGenericSensorExtraClassesName[] =
589 "Generic Sensor Extra Classes";
590const char kEnableGenericSensorExtraClassesDescription[] =
591 "Enables an extra set of sensor classes based on Generic Sensor API, which "
592 "expose previously unavailable platform features, i.e. AmbientLightSensor "
593 "and Magnetometer interfaces.";
Brett Wilsonf27ff602017-07-07 22:28:47594
Vikas Soni78daa632019-01-12 01:32:52595const char kEnableGpuServiceLoggingName[] = "Enable gpu service logging";
596const char kEnableGpuServiceLoggingDescription[] =
597 "Enable printing the actual GL driver calls.";
598
Brett Wilsonf27ff602017-07-07 22:28:47599const char kEnableHDRName[] = "HDR mode";
600const char kEnableHDRDescription[] =
601 "Enables HDR support on compatible displays.";
602
David Bokan911bded2018-11-27 23:23:32603const char kEnableImplicitRootScrollerName[] = "Implicit Root Scroller";
604const char kEnableImplicitRootScrollerDescription[] =
605 "Enables implicitly choosing which scroller on a page is the 'root "
606 "scroller'. i.e. The one that gets special features like URL bar movement, "
607 "overscroll glow, rotation anchoring, etc.";
608
Robert Ogdence8c9572018-10-08 23:08:48609const char kEnableLitePageServerPreviewsName[] = "Lite Page Server Previews";
610const char kEnableLitePageServerPreviewsDescription[] =
Doug Arnett9c1f87562018-12-14 00:56:39611 "Enable showing Lite Page Previews served from a Previews Server."
612 "This feature will cause Chrome to redirect eligible navigations "
Robert Ogdence8c9572018-10-08 23:08:48613 "to a Google-owned domain that serves a pre-rendered version of the "
Doug Arnett9c1f87562018-12-14 00:56:39614 "original page. Also known as Lite Page Redirect Previews.";
Robert Ogdence8c9572018-10-08 23:08:48615
Ryan Sturm5e4d4422019-02-28 01:32:29616const char kEnableURLLoaderLitePageServerPreviewsName[] =
617 "Lite Page Server Previews using URL Loader";
618const char kEnableURLLoaderLitePageServerPreviewsDescription[] =
619 "Enable using a network service URL Loader for Lite Page Server Previews. "
620 "This requires enable-lite-page-server-previews to be enabled along with "
621 "network-service.";
622
Hiroshige Hayashizaki3ee116af2019-03-05 10:11:22623const char kBuiltInModuleAllName[] = "All experimental built-in modules";
624const char kBuiltInModuleAllDescription[] =
625 "Enable all experimental built-in modules, as well as built-in module "
626 "infrastructure and import maps. The syntax and the APIs exposed are "
627 "experimental and will change over time.";
628
629const char kBuiltInModuleInfraName[] = "Built-in module infra and import maps";
630const char kBuiltInModuleInfraDescription[] =
631 "Enable built-in module infrastructure and import maps. Individual "
632 "built-in modules should be enabled by other flags. The syntax and the "
633 "APIs exposed are experimental and will change over time.";
634
635const char kBuiltInModuleKvStorageName[] = "kv-storage built-in module";
636const char kBuiltInModuleKvStorageDescription[] =
637 "Enable kv-storage built-in module, as well as built-in module "
638 "infrastructure and import maps. The syntax and the APIs exposed are "
639 "experimental and will change over time.";
Hiroshige Hayashizaki99d5821e2018-05-02 04:25:41640
Philip Rogers63481332018-12-01 22:16:51641const char kEnableBlinkGenPropertyTreesName[] = "Enable BlinkGenPropertyTrees";
642const char kEnableBlinkGenPropertyTreesDescription[] =
643 "Enable a new compositing mode where Blink generates the compositor "
644 "property trees.";
645
Ian Kilpatricke68ef11a2018-07-04 03:52:10646const char kEnableLayoutNGName[] = "Enable LayoutNG";
647const char kEnableLayoutNGDescription[] =
648 "Enable Blink's next generation layout engine.";
649
Scott Littled0fd2d002018-04-13 03:37:26650const char kEnableLazyFrameLoadingName[] = "Enable lazy frame loading";
651const char kEnableLazyFrameLoadingDescription[] =
652 "Defers the loading of certain cross-origin frames until the page is "
653 "scrolled down near them.";
654
rajendrant793ff512018-08-10 17:07:59655const char kEnableLazyImageLoadingName[] = "Enable lazy image loading";
656const char kEnableLazyImageLoadingDescription[] =
657 "Defers the loading of images until the page is scrolled down near them.";
658
Sidney San Martín9375b892017-09-09 00:29:54659const char kEnableMacMaterialDesignDownloadShelfName[] =
660 "Enable Material Design download shelf";
661
662const char kEnableMacMaterialDesignDownloadShelfDescription[] =
663 "If enabled, the download shelf uses Material Design.";
664
Becca Hughesac86cd442019-01-09 23:49:54665const char kEnableMediaSessionServiceName[] = "Media Session Service";
666const char kEnableMediaSessionServiceDescription[] =
667 "Enables the media session mojo service and internal media session "
668 "support.";
669
Brett Wilsonf27ff602017-07-07 22:28:47670const char kEnableNavigationTracingName[] = "Enable navigation tracing";
671const char kEnableNavigationTracingDescription[] =
672 "This is to be used in conjunction with the trace-upload-url flag. "
673 "WARNING: When enabled, Chrome will record performance data for every "
674 "navigation and upload it to the URL specified by the trace-upload-url "
675 "flag. The trace may include personally identifiable information (PII) "
676 "such as the titles and URLs of websites you visit.";
677
Bernhard Bauer5533f9912017-11-06 17:56:02678const char kEnableNetworkLoggingToFileName[] = "Enable network logging to file";
679const char kEnableNetworkLoggingToFileDescription[] =
680 "Enables network logging to a file named netlog.json in the user data "
681 "directory. The file can be imported into chrome://net-internals.";
682
Brett Wilsonf27ff602017-07-07 22:28:47683const char kEnableNetworkServiceName[] = "Enable network service";
684const char kEnableNetworkServiceDescription[] =
685 "Enables the network service, which makes network requests through a "
John Abd-El-Malek225b04d2018-09-07 22:41:40686 "separate process.";
Brett Wilsonf27ff602017-07-07 22:28:47687
John Abd-El-Malek8067cc02017-12-04 23:23:20688const char kEnableNetworkServiceInProcessName[] =
689 "Runs network service in-process";
690const char kEnableNetworkServiceInProcessDescription[] =
691 "Runs the network service in the browser process.";
692
Shakti Sahu07b052712019-04-02 00:39:37693const char kDownloadAutoResumptionNativeName[] =
694 "Enable download auto-resumption in native";
695const char kDownloadAutoResumptionNativeDescription[] =
696 "Enables download auto-resumption in native";
697
Shakti Sahu5a046f62019-03-12 19:25:34698const char kEnableNewDownloadBackendName[] = "Enable new download backend";
699const char kEnableNewDownloadBackendDescription[] =
700 "Enables the new download backend that uses offline content provider";
701
Lucas Furukawa Gadani9f57e192019-04-05 14:56:10702const char kEnablePortalsName[] = "Enable Portals.";
703const char kEnablePortalsDescription[] =
704 "Portals are an experimental web platform feature that allows embedding"
705 " and seamless transitions between pages."
706 " See https://github.com/WICG/portals and https://wicg.github.io/portals/";
707
Tetsui Ohkuboc3eb87f72018-07-20 02:22:28708const char kEnableNotificationScrollBarName[] =
709 "Enable notification list scroll bar";
710const char kEnableNotificationScrollBarDescription[] =
711 "Enable the scroll bar of the notification list in Unified System Tray.";
712
Mitsuru Otsukae8304de2018-10-29 02:14:36713const char kEnableNotificationExpansionAnimationName[] =
714 "Enable notification expansion animations";
715const char kEnableNotificationExpansionAnimationDescription[] =
716 "Enable notification animations whenever the expansion state is toggled.";
717
Takashi Toyoshima2e01e692018-11-16 03:23:27718const char kEnableOutOfBlinkCorsName[] = "Out of blink CORS";
719const char kEnableOutOfBlinkCorsDescription[] =
Yutaka Hirano98be3272017-08-07 17:55:39720 "CORS handling logic is moved out of blink.";
721
Chris Halle952239e2018-11-06 06:49:52722const char kExperimentalAccessibilityFeaturesName[] =
723 "Experimental accessibility features";
724const char kExperimentalAccessibilityFeaturesDescription[] =
725 "Enable additional accessibility features in the Settings page.";
726
Katie D652135c2018-11-27 18:30:13727const char kExperimentalAccessibilityAutoclickName[] =
728 "Experimental automatic click features";
729const char kExperimentalAccessibilityAutoclickDescription[] =
730 "Enable additional features for automatic clicks.";
731
Chris Hall4a4225f62019-01-18 03:07:16732const char kExperimentalAccessibilityLanguageDetectionName[] =
733 "Experimental accessibility language detection";
734const char kExperimentalAccessibilityLanguageDetectionDescription[] =
735 "Enable language detection for in-page content which is then exposed to "
736 "accessiblity technologies such as screen readers.";
737
Anastasia Helfinsteinafecc68c2018-11-26 19:20:17738const char kExperimentalAccessibilitySwitchAccessName[] =
739 "Experimental feature Switch Access";
740const char kExperimentalAccessibilitySwitchAccessDescription[] =
741 "Add a setting to enable the prototype of Switch Access";
742
kylechar7051c092018-02-05 20:31:39743const char kVizDisplayCompositorName[] = "Viz Display Compositor (OOP-D)";
744const char kVizDisplayCompositorDescription[] =
745 "If enabled, the display compositor runs as part of the viz service in the"
746 "GPU process.";
747
Xianda Sunfa2a35922019-04-15 19:01:28748const char kVizHitTestName[] = "Viz Hit-test";
749const char kVizHitTestDescription[] =
Ria Jiang6a129b982018-03-01 18:30:40750 "If enabled, event targeting uses the new viz-assisted hit-testing logic, "
Xianda Sunfa2a35922019-04-15 19:01:28751 "with hit-test data computed from the CompositorFrame or the SurfaceLayer.";
Ria Jiang6a129b982018-03-01 18:30:40752
Rahul Arakeri61a2ad272019-03-19 22:55:08753const char kCompositorThreadedScrollbarScrollingName[] =
754 "Enable compositor threaded scrollbar scrolling";
755const char kCompositorThreadedScrollbarScrollingDescription[] =
756 "Enables pointer-based scrollbar scrolling on the compositor thread "
757 "instead of the main thread";
758
Alexei Filippov522a5222019-03-29 03:33:18759const char kMemlogName[] = "Chrome heap profiler start mode.";
760const char kMemlogDescription[] =
761 "Starts heap profiling service that records sampled memory allocation "
762 "profile having each sample attributed with a callstack. "
763 "The sampling resolution is controlled with --memlog-sampling-rate flag. "
764 "Recorded heap dumps can be obtained at chrome://tracing "
765 "[category:memory-infra] and chrome://memory-internals. This setting "
766 "controls which processes will be profiled since their start. To profile "
767 "any given process at a later time use chrome://memory-internals page.";
768const char kMemlogModeMinimal[] = "Browser and GPU";
769const char kMemlogModeAll[] = "All processes";
770const char kMemlogModeAllRenderers[] = "All renderers";
771const char kMemlogModeRendererSampling[] = "Single renderer";
772const char kMemlogModeBrowser[] = "Browser only";
773const char kMemlogModeGpu[] = "GPU only";
Alexei Filippov2e8bfee2019-03-07 21:51:27774
Alexei Filippov522a5222019-03-29 03:33:18775const char kMemlogSamplingRateName[] =
776 "Heap profiling sampling interval (in bytes).";
777const char kMemlogSamplingRateDescription[] =
778 "Heap profiling service uses Poisson process to sample allocations. "
779 "Default value for the interval between samples is 100000 (100KB). "
780 "This results in low noise for large and/or frequent allocations "
Alexei Filippov2e8bfee2019-03-07 21:51:27781 "[size * frequency >> 100KB]. This means that aggregate numbers [e.g. "
erikchen99bfce02018-02-14 20:29:22782 "total size of malloc-ed objects] and large and/or frequent allocations "
Alexei Filippov522a5222019-03-29 03:33:18783 "can be trusted with high fidelity. "
784 "Lower intervals produce higher samples resolution, but come at a cost of "
785 "higher performance overhead.";
786const char kMemlogSamplingRate10KB[] = "10KB";
787const char kMemlogSamplingRate50KB[] = "50KB";
788const char kMemlogSamplingRate100KB[] = "100KB";
789const char kMemlogSamplingRate500KB[] = "500KB";
790const char kMemlogSamplingRate1MB[] = "1MB";
791const char kMemlogSamplingRate5MB[] = "5MB";
erikchen8bc20d82018-02-14 03:21:51792
Alexei Filippov522a5222019-03-29 03:33:18793const char kMemlogStackModeName[] = "Heap profiling stack traces type.";
794const char kMemlogStackModeDescription[] =
795 "By default heap profiling service records native stacks. "
796 "A post-processing step is required to symbolize the stacks. "
797 "'Native with thread names' adds the thread name as the first frame of "
798 "each native stack. It's also possible to record a pseudo stack using "
799 "trace events as identifiers. It's also possible to do a mix of both.";
800const char kMemlogStackModeMixed[] = "Mixed";
801const char kMemlogStackModeNative[] = "Native";
802const char kMemlogStackModeNativeWithThreadNames[] = "Native with thread names";
803const char kMemlogStackModePseudo[] = "Trace events";
Erik Chen3303fd0232018-01-11 20:29:05804
F#m59d036e2017-09-13 07:22:17805const char kEnablePixelCanvasRecordingName[] = "Enable pixel canvas recording";
806const char kEnablePixelCanvasRecordingDescription[] =
807 "Pixel canvas recording allows the compositor to raster contents aligned "
808 "with the pixel and improves text rendering. This should be enabled when a "
809 "device is using fractional scale factor.";
810
Ella Gebee81c92018-08-14 15:51:09811const char kEnableResamplingInputEventsName[] =
812 "Enable resampling input events";
813const char kEnableResamplingInputEventsDescription[] =
814 "Predicts mouse and touch inputs position at rAF time based on previous "
815 "input";
816const char kEnableResamplingScrollEventsName[] =
817 "Enable resampling scroll events";
818const char kEnableResamplingScrollEventsDescription[] =
819 "Predicts the scroll amount at vsync time based on previous input";
820
Doug Arnettaa0bf202018-08-27 19:42:11821const char kEnableResourceLoadingHintsName[] = "Enable resource loading hints";
822const char kEnableResourceLoadingHintsDescription[] =
823 "Enable using server-provided resource loading hints to provide a preview "
824 "over slow network connections.";
825
Raphael Kubo da Costab72914b2019-03-13 09:20:39826const char kEnableSensorContentSettingName[] = "Sensor content setting";
827const char kEnableSensorContentSettingDescription[] =
828 "Enable UI in content settings to control access to the sensor APIs.";
829
Mohamed Amir Yosef0178fa892018-07-23 17:43:52830const char kEnableSyncUSSBookmarksName[] = "Enable USS for bookmarks sync";
831const char kEnableSyncUSSBookmarksDescription[] =
832 "Enables the new, experimental implementation of bookmark sync";
833
Mohamed Amir Yosef3074dfc2019-02-06 18:34:43834const char kEnableSyncUSSPasswordsName[] = "Enable USS for passwords sync";
835const char kEnableSyncUSSPasswordsDescription[] =
836 "Enables the new, experimental implementation of passwords sync";
837
Mikel Astiz38837f82018-04-24 22:23:23838const char kEnableSyncUSSSessionsName[] = "Enable USS for sessions sync";
839const char kEnableSyncUSSSessionsDescription[] =
840 "Enables the new, experimental implementation of session sync (aka tab "
841 "sync).";
842
David Bokane9370c22019-02-14 15:19:58843const char kEnableTextFragmentAnchorName[] = "Enable Text Fragment Anchor.";
844const char kEnableTextFragmentAnchorDescription[] =
845 "Enables scrolling to text specified in URL's fragment.";
846
Brett Wilsonf27ff602017-07-07 22:28:47847const char kEnableUseZoomForDsfName[] =
848 "Use Blink's zoom for device scale factor.";
849const char kEnableUseZoomForDsfDescription[] =
850 "If enabled, Blink uses its zooming mechanism to scale content for device "
851 "scale factor.";
852const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
853const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
854const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
855
Patrick Noland8ee016e2018-01-24 11:44:53856const char kEnableScrollAnchorSerializationName[] =
857 "Scroll Anchor Serialization";
858const char kEnableScrollAnchorSerializationDescription[] =
859 "Save the scroll anchor and use it to restore the scroll position when "
860 "navigating.";
861
Brad Nelson5cd500e2018-01-04 00:50:19862const char kEnableSharedArrayBufferName[] =
863 "Experimental enabled SharedArrayBuffer support in JavaScript.";
864const char kEnableSharedArrayBufferDescription[] =
865 "Enable SharedArrayBuffer support in JavaScript.";
866
Brett Wilsonf27ff602017-07-07 22:28:47867const char kEnableWasmName[] = "WebAssembly structured cloning support.";
868const char kEnableWasmDescription[] =
869 "Enable web pages to use WebAssembly structured cloning.";
870
Lei Zhang0ca70ea2018-09-07 17:51:01871const char kEnableWebAuthenticationCableSupportName[] =
Kim Paulhamus92431372018-07-20 02:25:47872 "Web Authentication caBLE support";
Lei Zhang0ca70ea2018-09-07 17:51:01873const char kEnableWebAuthenticationCableSupportDescription[] =
Kim Paulhamus92431372018-07-20 02:25:47874 "Enable the cloud-assisted pairingless BLE protocol for use with "
875 "the Web Authentication API.";
Kim Paulhamusae635a32018-06-27 07:30:54876
Adam Langley64bc04232019-03-30 21:05:56877const char kEnableWebAuthenticationPINSupportName[] =
878 "Web Authentication PIN support";
879const char kEnableWebAuthenticationPINSupportDescription[] =
880 "Enable the use of PINs with the Web Authentication API and compatible "
881 "security keys.";
882
Ramin Halavatic158b182018-10-18 14:04:54883const char kEnableIncognitoWindowCounterName[] = "Incognito Window Counter";
884const char kEnableIncognitoWindowCounterDescription[] =
885 "Shows the count of Incognito windows next to the Incognito icon on the "
886 "toolbar.";
887
Clemens Hammacher0c8a15a2018-04-27 13:45:32888const char kEnableWasmBaselineName[] = "WebAssembly baseline compiler";
889const char kEnableWasmBaselineDescription[] =
890 "Enables WebAssembly baseline compilation and tier up.";
891
Bill Budged0dace172019-02-10 00:46:21892const char kEnableWasmCodeCacheName[] = "WebAssembly compiled module cache";
893const char kEnableWasmCodeCacheDescription[] =
894 "Enables caching of compiled WebAssembly modules.";
895
Clemens Hammacher082fa572019-04-25 08:22:29896const char kEnableWasmCodeGCName[] = "WebAssembly code garbage collection";
897const char kEnableWasmCodeGCDescription[] =
898 "Enables garbage collection of WebAssembly code.";
899
Deepti Gandluri11734cc42019-05-02 18:00:20900const char kEnableWasmSimdName[] = "WebAssembly SIMD support.";
901const char kEnableWasmSimdDescription[] =
902 "Enables support for the WebAssembly SIMD proposal.";
903
Ben Smith24c1e5c2018-06-20 01:09:02904const char kEnableWasmThreadsName[] = "WebAssembly threads support.";
905const char kEnableWasmThreadsDescription[] =
906 "Enables support for the WebAssembly Threads proposal. Implies "
907 "#shared-array-buffer and #enable-webassembly.";
908
Brett Wilsonf27ff602017-07-07 22:28:47909const char kExpensiveBackgroundTimerThrottlingName[] =
910 "Throttle expensive background timers";
911const char kExpensiveBackgroundTimerThrottlingDescription[] =
912 "Enables intervention to limit CPU usage of background timers to 1%.";
913
914const char kExperimentalAppBannersName[] = "Experimental app banners";
915const char kExperimentalAppBannersDescription[] =
Matt Giucad4870432017-11-24 01:04:38916 "Enables a new experimental app banner flow and UI. Implies "
917 "#enable-app-banners.";
Brett Wilsonf27ff602017-07-07 22:28:47918
919const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
920const char kExperimentalCanvasFeaturesDescription[] =
921 "Enables the use of experimental canvas features which are still in "
922 "development.";
923
924const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
925const char kExperimentalExtensionApisDescription[] =
926 "Enables experimental extension APIs. Note that the extension gallery "
927 "doesn't allow you to upload extensions that use experimental APIs.";
928
Ian Clelland37a985d2018-05-04 02:43:13929const char kExperimentalProductivityFeaturesName[] =
930 "Experimental Productivity Features";
931const char kExperimentalProductivityFeaturesDescription[] =
932 "Enable support for experimental developer productivity features, such as "
Hiroshige Hayashizaki3ee116af2019-03-05 10:11:22933 "built-in modules and policies for avoiding slow rendering.";
Ian Clelland37a985d2018-05-04 02:43:13934
Brett Wilsonf27ff602017-07-07 22:28:47935const char kExperimentalSecurityFeaturesName[] =
936 "Potentially annoying security features";
937const char kExperimentalSecurityFeaturesDescription[] =
938 "Enables several security features that will likely break one or more "
939 "pages that you visit on a daily basis. Strict mixed content checking, for "
940 "example. And locking powerful features to secure contexts. This flag will "
941 "probably annoy you.";
942
943const char kExperimentalWebPlatformFeaturesName[] =
944 "Experimental Web Platform features";
945const char kExperimentalWebPlatformFeaturesDescription[] =
946 "Enables experimental Web Platform features that are in development.";
947
948const char kExtensionContentVerificationName[] =
949 "Extension Content Verification";
950const char kExtensionContentVerificationDescription[] =
951 "This flag can be used to turn on verification that the contents of the "
952 "files on disk for extensions from the webstore match what they're "
953 "expected to be. This can be used to turn on this feature if it would not "
954 "otherwise have been turned on, but cannot be used to turn it off (because "
955 "this setting can be tampered with by malware).";
956const char kExtensionContentVerificationBootstrap[] =
957 "Bootstrap (get expected hashes, but do not enforce them)";
958const char kExtensionContentVerificationEnforce[] =
959 "Enforce (try to get hashes, and enforce them if successful)";
960const char kExtensionContentVerificationEnforceStrict[] =
961 "Enforce strict (hard fail if we can't get hashes)";
962
Peter Boströma445353a2019-03-21 02:58:15963const char kExtensionsToolbarMenuName[] = "Extensions Toolbar Menu";
964const char kExtensionsToolbarMenuDescription[] =
965 "Enable a separate toolbar button and menu for extensions";
966
Brett Wilsonf27ff602017-07-07 22:28:47967const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
968const char kExtensionsOnChromeUrlsDescription[] =
969 "Enables running extensions on chrome:// URLs, where extensions explicitly "
970 "request this permission.";
galinapae72e152017-05-12 13:12:28971
Brett Wilsonecb80982017-07-12 20:34:51972const char kFeaturePolicyName[] = "Feature Policy";
973const char kFeaturePolicyDescription[] =
974 "Enables granting and removing access to features through the "
975 "Feature-Policy HTTP header.";
vabr0215a8e2017-03-28 12:47:34976
Brett Wilsonecb80982017-07-12 20:34:51977const char kForceEffectiveConnectionTypeName[] =
978 "Override effective connection type";
979const char kForceEffectiveConnectionTypeDescription[] =
980 "Overrides the effective connection type of the current connection "
Thanh Lea98f12f2017-12-18 19:35:30981 "returned by the network quality estimator. Slow 2G on Cellular returns "
982 "Slow 2G when connected to a cellular network, and the actual estimate "
983 "effective connection type when not on a cellular network. Previews are "
984 "usually served on 2G networks.";
Brett Wilsonecb80982017-07-12 20:34:51985const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
986const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
987const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
Thanh Lea98f12f2017-12-18 19:35:30988const char kEffectiveConnectionTypeSlow2GOnCellularDescription[] =
989 "Slow 2G On Cellular";
Brett Wilsonecb80982017-07-12 20:34:51990const char kEffectiveConnectionType2GDescription[] = "2G";
991const char kEffectiveConnectionType3GDescription[] = "3G";
992const char kEffectiveConnectionType4GDescription[] = "4G";
993
Jay Harris583f48922019-05-06 05:55:24994const char kFileHandlingAPIName[] = "File Handling API";
995const char kFileHandlingAPIDescription[] =
996 "Enables the file handling API, allowing websites to register as file "
997 "handlers. This depends on native-file-system";
998
Brett Wilsonecb80982017-07-12 20:34:51999const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
1000const char kFillOnAccountSelectDescription[] =
1001 "Filling of passwords when an account is explicitly selected by the user "
1002 "rather than autofilling credentials on page load.";
1003
jdoerrie11c5f4f2019-02-04 18:29:181004const char kFillOnAccountSelectHttpName[] =
1005 "Fill passwords on account selection on HTTP origins";
1006const char kFillOnAccountSelectHttpDescription[] =
1007 "Filling of passwords when an account is explicitly selected by the user "
1008 "rather than autofilling credentials on page load on HTTP origins.";
1009
Brett Wilsonecb80982017-07-12 20:34:511010const char kForceTextDirectionName[] = "Force text direction";
1011const char kForceTextDirectionDescription[] =
1012 "Explicitly force the per-character directionality of UI text to "
1013 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
1014 "direction of the character language.";
1015const char kForceDirectionLtr[] = "Left-to-right";
1016const char kForceDirectionRtl[] = "Right-to-left";
1017
1018const char kForceUiDirectionName[] = "Force UI direction";
1019const char kForceUiDirectionDescription[] =
1020 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
1021 "mode, overriding the default direction of the UI language.";
1022
Brett Wilsonecb80982017-07-12 20:34:511023const char kGpuRasterizationName[] = "GPU rasterization";
1024const char kGpuRasterizationDescription[] =
1025 "Use GPU to rasterize web content. Requires impl-side painting.";
Brett Wilson7b44537e2017-08-18 01:38:281026const char kForceGpuRasterization[] = "Force-enabled for all layers";
Brett Wilsonecb80982017-07-12 20:34:511027
Ioana Pandele1ed7ef72018-11-21 15:22:031028const char kGooglePasswordManagerName[] = "Google Password Manager UI";
1029const char kGooglePasswordManagerDescription[] =
1030 "Enables access to the Google Password Manager UI from Chrome.";
1031
Brett Wilsonecb80982017-07-12 20:34:511032const char kGoogleProfileInfoName[] = "Google profile name and icon";
1033const char kGoogleProfileInfoDescription[] =
1034 "Enables using Google information to populate the profile name and icon in "
1035 "the avatar menu.";
1036
Takumi Fujimotofb71e332018-03-31 14:04:081037const char kViewsCastDialogName[] = "Views Cast dialog";
1038const char kViewsCastDialogDescription[] =
manukaddd3c42019-04-09 21:20:591039 "Replace the WebUI Cast dialog with a Views toolkit dialog.";
Takumi Fujimotofb71e332018-03-31 14:04:081040
Gabrielle Paladoaebf7ca2019-01-16 07:07:061041const char kHandwritingGestureName[] = "Handwriting Gestures";
1042const char kHandwritingGestureDescription[] =
1043 "Enables handwriting gestures within the virtual keyboard";
1044
Tommy Steimel1aadd7b2019-01-18 19:39:421045const char kHardwareMediaKeyHandling[] = "Hardware Media Key Handling";
1046const char kHardwareMediaKeyHandlingDescription[] =
1047 "Enables using media keys to control the active media session. This "
1048 "requires MediaSessionService to be enabled too";
1049
Manu Cornet4a908de2018-04-09 04:32:271050const char kHideActiveAppsFromShelfName[] =
1051 "Hide running apps (that are not pinned) from the shelf";
1052const char kHideActiveAppsFromShelfDescription[] =
1053 "Save space in the shelf by hiding running apps (that are not pinned).";
Manu Cornete5f855b2018-03-13 03:35:251054
Ryan Landay4242dbc22018-04-04 01:47:331055const char kHorizontalTabSwitcherAndroidName[] =
1056 "Enable horizontal tab switcher";
1057const char kHorizontalTabSwitcherAndroidDescription[] =
1058 "Changes the layout of the Android tab switcher so tabs scroll "
1059 "horizontally instead of vertically.";
1060
Matt Simmons2048b2a2018-12-20 20:12:561061const char kTabSwitcherOnReturnName[] = "Enable tab switcher on return";
1062const char kTabSwitcherOnReturnDescription[] =
1063 "Enable tab switcher on return after specified time has elapsed";
1064
Brett Wilsonecb80982017-07-12 20:34:511065const char kHostedAppQuitNotificationName[] =
1066 "Quit notification for hosted apps";
1067const char kHostedAppQuitNotificationDescription[] =
1068 "Display a notification when quitting Chrome if hosted apps are currently "
1069 "running.";
1070
1071const char kHostedAppShimCreationName[] =
1072 "Creation of app shims for hosted apps on Mac";
1073const char kHostedAppShimCreationDescription[] =
1074 "Create app shims on Mac when creating a hosted app.";
1075
Joe DeBlasio20a2a7b2019-04-30 02:33:541076const char kHTTPAuthCommittedInterstitialsName[] =
1077 "Enable Committed Interstitials for HTTP Auth";
1078const char kHTTPAuthCommittedInterstitialsDescription[] =
1079 "Use committed error pages instead of transient navigation entries "
1080 "for HTTP auth interstitial pages.";
1081
Brett Wilsonecb80982017-07-12 20:34:511082const char kIconNtpName[] = "Large icons on the New Tab page";
1083const char kIconNtpDescription[] =
1084 "Enable the experimental New Tab page using large icons.";
1085
1086const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
1087const char kIgnoreGpuBlacklistDescription[] =
1088 "Overrides the built-in software rendering list and enables "
1089 "GPU-acceleration on unsupported system configurations.";
1090
Ryan Sturm8c3dbc92018-06-26 19:22:371091const char kIgnorePreviewsBlacklistName[] = "Ignore Previews Blocklist";
Thanh Le5f090efa52017-12-27 22:39:441092const char kIgnorePreviewsBlacklistDescription[] =
Ryan Sturm8c3dbc92018-06-26 19:22:371093 "Ignore decisions made by the PreviewsBlockList";
Thanh Le5f090efa52017-12-27 22:39:441094
Robert Ogden4d41c432019-05-07 00:24:251095const char kIgnoreLitePageRedirectHintsBlacklistName[] =
1096 "Ignore Lite Page Redirect Preview Optimization Hints Blacklist";
1097const char kIgnoreLitePageRedirectHintsBlacklistDescription[] =
1098 "Ignore blacklist decisions made by Optimization Hints for Lite Page "
1099 "Redirect previews";
1100
Alexandre Frechetted3e1b542018-12-13 14:40:501101const char kImprovedGeoLanguageDataName[] = "Improved Geo-language Data";
1102const char kImprovedGeoLanguageDataDescription[] =
1103 "Makes the GeoLanguageModel use higher quality, more refined ULP "
1104 "geo-language data.";
1105
Brett Wilsonecb80982017-07-12 20:34:511106const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
1107const char kInProductHelpDemoModeChoiceDescription[] =
1108 "Selects the In-Product Help demo mode.";
1109
1110const char kJavascriptHarmonyName[] = "Experimental JavaScript";
1111const char kJavascriptHarmonyDescription[] =
1112 "Enable web pages to use experimental JavaScript features.";
1113
1114const char kJavascriptHarmonyShippingName[] =
1115 "Latest stable JavaScript features";
1116const char kJavascriptHarmonyShippingDescription[] =
1117 "Some web pages use legacy or non-standard JavaScript extensions that may "
1118 "conflict with the latest JavaScript features. This flag allows disabling "
1119 "support of those features for compatibility with such pages.";
1120
Yutaka Hiranof7f2f632017-09-06 10:40:081121const char kKeepAliveRendererForKeepaliveRequestsName[] =
1122 "Keep a renderer alive for keepalive fetch requests";
1123const char kKeepAliveRendererForKeepaliveRequestsDescription[] =
1124 "Keep a render process alive when the process has a pending fetch request "
1125 "with `keepalive' specified.";
1126
Brett Wilsonecb80982017-07-12 20:34:511127const char kLcdTextName[] = "LCD text antialiasing";
1128const char kLcdTextDescription[] =
1129 "If disabled, text is rendered with grayscale antialiasing instead of LCD "
1130 "(subpixel) when doing accelerated compositing.";
1131
1132const char kLoadMediaRouterComponentExtensionName[] =
1133 "Load Media Router Component Extension";
1134const char kLoadMediaRouterComponentExtensionDescription[] =
1135 "Loads the Media Router component extension at startup.";
1136
Hazem Ashmawyf1cd7e42019-03-25 18:17:321137const char kLogJsConsoleMessagesName[] =
1138 "Log JS console messages in system logs";
1139const char kLogJsConsoleMessagesDescription[] =
1140 "Enable logging JS console messages in system logs, please note that they "
1141 "may contain PII.";
1142
Mustafa Emre Acer137dc8b2018-08-29 20:38:131143const char kLookalikeUrlNavigationSuggestionsName[] =
1144 "Navigation suggestions for lookalike URLs";
1145const char kLookalikeUrlNavigationSuggestionsDescription[] =
1146 "Enable navigation suggestions for URLs that are visually similar to "
1147 "popular domains or to domains with a site engagement score.";
1148
Brett Wilsonecb80982017-07-12 20:34:511149const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
1150const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
Brett Wilsonecb80982017-07-12 20:34:511151
spqchanb87755692018-04-05 00:46:091152const char kMediaRouterCastAllowAllIPsName[] =
1153 "Connect to Cast devices on all IP addresses";
1154const char kMediaRouterCastAllowAllIPsDescription[] =
1155 "Have the Media Router connect to Cast devices on all IP addresses, not "
Nick Harperd30507ca2018-08-16 20:24:311156 "just RFC1918/RFC4193 private addresses.";
spqchanb87755692018-04-05 00:46:091157
Brett Wilsonecb80982017-07-12 20:34:511158const char kMessageCenterNewStyleNotificationName[] = "New style notification";
1159const char kMessageCenterNewStyleNotificationDescription[] =
1160 "Enables the experiment style of material-design notification";
1161
Ehsan Karamadebb0f672019-03-22 19:48:391162const char kMimeHandlerViewInCrossProcessFrameName[] =
1163 "MimeHandlerView in cross-process frame";
1164const char kMimeHandlerViewInCrossProcessFrameDescription[] =
1165 "Loads the MimeHandlerView (the extension viewer for certain MIME types "
1166 "such as PDF) in a cross-process frame as opposed to a BrowserPlugin.";
1167
David Roger2183afb2019-02-21 14:19:151168const char kMobileIdentityConsistencyName[] = "Mobile identity consistency";
1169const char kMobileIdentityConsistencyDescription[] =
1170 "Enables stronger identity consistency on mobile";
1171
Marijn Kruisselbrinkca4bb5e2019-04-22 18:19:421172const char kNativeFileSystemAPIName[] = "Native File System API";
1173const char kNativeFileSystemAPIDescription[] =
1174 "Enables the experimental Native File System API, giving websites access "
1175 "to the native file system";
Marijn Kruisselbrinkfa0e1052019-03-05 22:32:551176
Brett Wilsonecb80982017-07-12 20:34:511177const char kNewAudioRenderingMixingStrategyName[] =
1178 "New audio rendering mixing strategy";
1179const char kNewAudioRenderingMixingStrategyDescription[] =
1180 "Use the new audio rendering mixing strategy.";
1181
1182const char kNewBookmarkAppsName[] = "The new bookmark app system";
1183const char kNewBookmarkAppsDescription[] =
1184 "Enables the new system for creating bookmark apps.";
1185
Vadym Doroshenkocd4ff782018-07-24 13:41:021186const char kNewPasswordFormParsingName[] =
1187 "New password form parsing for filling passwords";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241188const char kNewPasswordFormParsingDescription[] =
Vadym Doroshenkocd4ff782018-07-24 13:41:021189 "Replaces existing form parsing for filling in password manager with a new "
1190 "version, currently under development. WARNING: when enabled, Password "
1191 "Manager might stop working";
1192
1193const char kNewPasswordFormParsingForSavingName[] =
1194 "New password form parsing for saving passwords";
1195const char kNewPasswordFormParsingForSavingDescription[] =
1196 "Replaces existing form parsing for saving in password manager with a new "
1197 "version, currently under development. WARNING: when enabled, Password "
1198 "Manager might stop working";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241199
rbpotter62fe2c92019-03-26 22:01:291200const char kNewPrintPreviewLayoutName[] = "Enable New Print Preview UI Layout";
1201const char kNewPrintPreviewLayoutDescription[] =
1202 "If enabled, Print Preview will display a new UI layout.";
1203
CJ DiMeglio7b4a199f2017-11-30 01:26:501204const char kUseSurfaceLayerForVideoName[] =
1205 "Enable the use of SurfaceLayer objects for videos.";
1206const char kUseSurfaceLayerForVideoDescription[] =
1207 "Enable compositing onto a Surface instead of a VideoLayer "
1208 "for videos.";
Brett Wilsonecb80982017-07-12 20:34:511209
1210const char kNewUsbBackendName[] = "Enable new USB backend";
1211const char kNewUsbBackendDescription[] =
1212 "Enables the new experimental USB backend for Windows.";
vabr0215a8e2017-03-28 12:47:341213
Sonny Sasaka2d200432018-03-22 17:43:161214const char kNewblueName[] = "Newblue";
1215const char kNewblueDescription[] =
1216 "Enables the use of newblue Bluetooth daemon.";
1217
Peter Boström7df25c72018-12-12 06:40:191218const char kNewTabLoadingAnimation[] = "New tab-loading animation";
1219const char kNewTabLoadingAnimationDescription[] =
1220 "Enables a new look for the tab-loading animation.";
1221
Egor Pasko6fed3822018-05-30 10:33:141222const char kNostatePrefetchName[] = "NoState Prefetch";
vabr0215a8e2017-03-28 12:47:341223const char kNostatePrefetchDescription[] =
Elly Fong-Jonesf4c15772019-01-31 17:40:061224 "If enabled, pre-downloads resources to improve page load speed.";
vabr0215a8e2017-03-28 12:47:341225
Alex Newcomerd7b0cc42018-05-25 22:58:481226const char kNotificationIndicatorName[] = "Notification Indicators";
1227const char kNotificationIndicatorDescription[] =
1228 "Enable notification indicators, which appear on app icons when a "
1229 "notification is active. This will also enable notifications in context "
1230 "menus.";
1231
Brett Wilsonecb80982017-07-12 20:34:511232const char kNotificationsNativeFlagName[] = "Enable native notifications.";
1233const char kNotificationsNativeFlagDescription[] =
1234 "Enable support for using the native notification toasts and notification "
1235 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:341236
Valeriya Sinevich972ac122018-09-05 07:33:191237const char kUseMultiloginEndpointName[] = "Use Multilogin endpoint.";
1238const char kUseMultiloginEndpointDescription[] =
1239 "Use Gaia OAuth multilogin for identity consistency.";
1240
Zentaro Kavanaghbad511c2017-10-18 22:29:001241#if defined(OS_POSIX)
1242const char kNtlmV2EnabledName[] = "Enable NTLMv2 Authentication";
1243const char kNtlmV2EnabledDescription[] =
1244 "Enable NTLMv2 HTTP Authentication. This disables NTLMv1 support.";
1245#endif
1246
Brett Wilsonecb80982017-07-12 20:34:511247const char kOfferStoreUnmaskedWalletCardsName[] =
1248 "Google Payments card saving checkbox";
1249const char kOfferStoreUnmaskedWalletCardsDescription[] =
1250 "Show the checkbox to offer local saving of a credit card downloaded from "
1251 "the server.";
1252
1253const char kOfflineAutoReloadName[] = "Offline Auto-Reload Mode";
1254const char kOfflineAutoReloadDescription[] =
1255 "Pages that fail to load while the browser is offline will be "
1256 "auto-reloaded when the browser is online again.";
1257
1258const char kOfflineAutoReloadVisibleOnlyName[] =
1259 "Only Auto-Reload Visible Tabs";
1260const char kOfflineAutoReloadVisibleOnlyDescription[] =
1261 "Pages that fail to load while the browser is offline will only be "
1262 "auto-reloaded if their tab is visible.";
1263
Tommy C. Lia6912d7d2019-04-24 21:27:461264const char kOmniboxAlternateMatchDescriptionSeparatorName[] =
1265 "Omnibox Alternate Match Description Separator";
1266const char kOmniboxAlternateMatchDescriptionSeparatorDescription[] =
1267 "Shows an alternate separator before the description of omnibox matches. "
1268 "In English, this changes the separator from '-' to '|'.";
1269
Brett Wilsonecb80982017-07-12 20:34:511270const char kOmniboxDisplayTitleForCurrentUrlName[] =
1271 "Include title for the current URL in the omnibox";
1272const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
1273 "In the event that the omnibox provides suggestions on-focus, the URL of "
1274 "the current page is provided as the first suggestion without a title. "
1275 "Enabling this flag causes the title to be displayed.";
1276
manukaddd3c42019-04-09 21:20:591277const char kOmniboxLocalEntitySuggestionsName[] =
1278 "Omnibox Local Entity Suggestions";
1279const char kOmniboxLocalEntitySuggestionsDescription[] =
1280 "Enables location specific suggestions displayed with images and enhanced "
1281 "layout, similar to #omnibox-rich-entity-suggestions. Enabling this feature"
1282 "will also enable #omnibox-rich-entity-suggestions.";
1283
manuk2e55a7b2019-02-12 20:08:231284const char kOmniboxMaterialDesignWeatherIconsName[] =
1285 "Omnibox Material Design Weather Icons";
1286const char kOmniboxMaterialDesignWeatherIconsDescription[] =
1287 "Use material design weather icons in the omnibox when displaying weather "
1288 "answers.";
1289
Tomasz Wiszkowskic87dff12019-01-15 02:57:511290const char kOmniboxNewAnswerLayoutName[] = "Omnibox new answer layout";
1291const char kOmniboxNewAnswerLayoutDescription[] =
1292 "Modernize omnibox answers using an enhanced layout with larger icons.";
1293
Tomasz Wiszkowskic7fd5bed2019-02-11 17:33:231294const char kOmniboxRichEntitySuggestionsName[] =
1295 "Omnibox rich entity suggestions";
1296const char kOmniboxRichEntitySuggestionsDescription[] =
1297 "Display entity suggestions using images and an enhanced layout; showing "
manukaddd3c42019-04-09 21:20:591298 "more context and descriptive text about the entity.";
Tomasz Wiszkowskic7fd5bed2019-02-11 17:33:231299
Benoit Lizeab08362c2017-07-19 14:50:541300const char kOmniboxSpareRendererName[] =
1301 "Start spare renderer on omnibox focus";
1302const char kOmniboxSpareRendererDescription[] =
1303 "When the omnibox is focused, start an empty spare renderer. This can "
1304 "speed up the load of the navigation from the omnibox.";
1305
manuk3c0e70a2019-02-21 16:30:551306const char kOmniboxUIBlueSearchLoopAndSearchQueryName[] =
1307 "Omnibox UI Blue Search Loop and Search Query";
1308const char kOmniboxUIBlueSearchLoopAndSearchQueryDescription[] =
1309 "Color the generic search icon and search terms blue.";
1310
manuk4451d032019-02-22 17:24:401311const char kOmniboxUIBlueTitlesAndGrayUrlsOnPageSuggestionsName[] =
1312 "Omnibox UI Blue Titles And Gray Urls On Page Suggestions";
1313const char kOmniboxUIBlueTitlesAndGrayUrlsOnPageSuggestionsDescription[] =
1314 "Displays navigation suggestions with blue titles and gray URLs.";
1315
1316const char kOmniboxUIBlueTitlesOnPageSuggestionsName[] =
1317 "Omnibox UI Blue Titles On Page Suggestions";
1318const char kOmniboxUIBlueTitlesOnPageSuggestionsDescription[] =
1319 "Displays navigation suggestions with blue titles.";
1320
manuk59fd5a62019-02-27 21:14:091321const char kOmniboxUIBoldUserTextOnSearchSuggestionsName[] =
1322 "Omnibox UI Bold User Text On Search Suggestions";
1323const char kOmniboxUIBoldUserTextOnSearchSuggestionsDescription[] =
1324 "Bolds the user text instead of autocomplete text for search suggestions.";
1325
Tommy C. Lib5bf6152019-04-23 22:13:161326const char kOmniboxUICuesForSearchHistoryMatchesName[] =
1327 "Omnibox UI Cues to Differentiate Search History Matches";
1328const char kOmniboxUICuesForSearchHistoryMatchesDescription[] =
1329 "Shows UI cues in the omnibox to differentiate Search History matches from "
1330 "other search suggestions provided by the default search provider. This "
1331 "feature is a narrow subset of Omnibox Suggestion Transparency Options.";
1332
Tommy C. Lie4194b732018-09-28 22:21:511333const char kOmniboxUIHideSteadyStateUrlSchemeName[] =
1334 "Omnibox UI Hide Steady-State URL Scheme";
1335const char kOmniboxUIHideSteadyStateUrlSchemeDescription[] =
1336 "In the omnibox, hide the scheme from steady state displayed URLs. It is "
Tommy C. Libef94ee02018-10-17 19:56:361337 "restored during editing.";
Tommy C. Lie4194b732018-09-28 22:21:511338
Tommy C. Lib20aec72018-11-19 21:38:231339const char kOmniboxUIOneClickUnelideName[] = "Omnibox UI One Click Unelide";
1340const char kOmniboxUIOneClickUnelideDescription[] =
1341 "In the omnibox, undo all unelisions with a single click or focus action.";
1342
Tommy C. Lie4194b732018-09-28 22:21:511343const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsName[] =
1344 "Omnibox UI Hide Steady-State URL Trivial Subdomains";
1345const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsDescription[] =
1346 "In the omnibox, hide trivial subdomains from steady state displayed URLs. "
Tommy C. Libef94ee02018-10-17 19:56:361347 "Hidden portions are restored during editing.";
1348
1349const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefName[] =
1350 "Omnibox UI Hide Steady-State URL Path, Query, and Ref";
1351const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefDescription[] =
1352 "In the omnibox, hide the path, query and ref from steady state displayed "
1353 "URLs. Hidden portions are restored during editing.";
Tommy C. Lid79d4402017-12-22 22:49:121354
Brett Wilsonecb80982017-07-12 20:34:511355const char kOmniboxUIMaxAutocompleteMatchesName[] =
1356 "Omnibox UI Max Autocomplete Matches";
Brett Wilsonecb80982017-07-12 20:34:511357const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
1358 "Changes the maximum number of autocomplete matches displayed in the "
1359 "Omnibox UI.";
1360
Dan Beamc9b97fe82019-04-26 02:56:081361const char kOmniboxUIShowPlaceholderWhenCaretShowingName[] =
1362 "Omnibox UI Show Placeholder When Caret Showing";
1363const char kOmniboxUIShowPlaceholderWhenCaretShowingDescription[] =
1364 "Shows the \"Search Google or type a URL\" placeholder text in the "
1365 "omnibox when it's focused / the caret cursor is showing.";
1366
manuk4f56e9fc2019-02-19 18:04:511367const char kOmniboxUIShowSuffixOnAllSearchSuggestionsName[] =
1368 "Omnibox UI Show Suffix On All Search Suggestions";
1369const char kOmniboxUIShowSuffixOnAllSearchSuggestionsDescription[] =
1370 "Shows the search suffix (e.g. \" - Google Search\") on all search "
1371 "suggestions in the omnibox.";
1372
Tommy C. Liba4e66ef2019-02-12 21:33:281373const char kOmniboxUIShowSuggestionFaviconsName[] =
1374 "Omnibox UI Show Suggestion Favicons";
1375const char kOmniboxUIShowSuggestionFaviconsDescription[] =
1376 "Shows favicons instead of generic vector icons for URL suggestions in the "
1377 "Omnibox dropdown.";
1378
Justin Donnelly65c9e8b2017-10-01 05:15:011379const char kOmniboxUISwapTitleAndUrlName[] = "Omnibox UI Swap Title and URL";
1380const char kOmniboxUISwapTitleAndUrlDescription[] =
1381 "In the omnibox dropdown, shows titles before URLs when both are "
1382 "available.";
1383
manuk0187cfa2019-02-27 21:23:241384const char kOmniboxUIUnboldSuggestionTextName[] =
1385 "Omnibox UI Unbold Suggestion Text";
1386const char kOmniboxUIUnboldSuggestionTextDescription[] =
1387 "Displays search suggestions without bolding.";
1388
manuk12527c802019-02-19 16:38:301389const char kOmniboxUIUseGenericSearchEngineIconName[] =
1390 "Omnibox UI Use Generic Search Engine Icon";
1391const char kOmniboxUIUseGenericSearchEngineIconDescription[] =
1392 "In the omnibox and NTP, shows a generic magnifying glass icon instead of "
1393 "the Search Provider favicon.";
1394
Tommy C. Lia737d3e82019-02-13 23:06:141395const char kOmniboxUIVerticalMarginName[] = "Omnibox UI Vertical Margin";
1396const char kOmniboxUIVerticalMarginDescription[] =
1397 "Changes the vertical margin in the Omnibox UI.";
1398
Tommy C. Lidf3064a2019-05-01 17:29:431399const char kOmniboxUIVerticalMarginLimitToNonTouchOnlyName[] =
1400 "Omnibox UI Vertical Margin - Limit to Non-Touch Only";
1401const char kOmniboxUIVerticalMarginLimitToNonTouchOnlyDescription[] =
1402 "Limits the vertical margin UI experiment to non-touch devices only. Has "
1403 "no effect if the Omnibox Vertical Margin experiment is not enabled.";
1404
manukce2cdcf72019-02-26 15:59:291405const char kOmniboxUIWhiteBackgroundOnBlurName[] =
1406 "Omnibox UI White Background On Blur";
1407const char kOmniboxUIWhiteBackgroundOnBlurDescription[] =
manuk59fd5a62019-02-27 21:14:091408 "Set the omnibox background white when it's unfocused";
manukce2cdcf72019-02-26 15:59:291409
Tomasz Wiszkowski947f6d0d2019-03-15 22:27:251410const char kOmniboxZeroSuggestionsOnNTPName[] =
1411 "Omnibox Zero Suggestions on New Tab Page";
1412const char kOmniboxZeroSuggestionsOnNTPDescription[] =
1413 "Offer suggestions when URL bar (omnibox) is focused.";
1414
Vadym Doroshenko6b8f64d2018-11-26 15:35:391415const char kOnlyNewPasswordFormParsingName[] =
1416 "Use only new password form parsing";
1417const char kOnlyNewPasswordFormParsingDescription[] =
1418 "The old password form parsing is disabled";
1419
Mark Lieufaa1b762019-01-08 19:37:281420const char kOnTheFlyMhtmlHashComputationName[] =
1421 "On-The-Fly MHTML Hash Computation";
1422const char kOnTheFlyMhtmlHashComputationDescription[] =
1423 "Save MHTML files to the target location and calculate their content "
1424 "digests in one step.";
1425
Adrienne Walkerc87477e2018-06-06 22:28:211426const char kOopRasterizationName[] = "Out of process rasterization";
1427const char kOopRasterizationDescription[] =
1428 "Perform Ganesh raster in the GPU Process instead of the renderer. "
1429 "Must also enable GPU rasterization";
1430
Brett Wilsonecb80982017-07-12 20:34:511431const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
1432const char kOverlayScrollbarsDescription[] =
1433 "Enable the experimental overlay scrollbars implementation. You must also "
1434 "enable threaded compositing to have the scrollbars animate.";
1435
chaopenge8aa016b2017-08-24 15:20:191436const char kOverlayScrollbarsFlashAfterAnyScrollUpdateName[] =
1437 "Flash Overlay Scrollbars After Any Scroll Update";
1438const char kOverlayScrollbarsFlashAfterAnyScrollUpdateDescription[] =
1439 "Flash Overlay Scrollbars After any scroll update happends in page. You"
1440 " must also enable Overlay Scrollbars.";
1441
chaopeng343678022017-08-24 18:45:001442const char kOverlayScrollbarsFlashWhenMouseEnterName[] =
1443 "Flash Overlay Scrollbars When Mouse Enter";
1444const char kOverlayScrollbarsFlashWhenMouseEnterDescription[] =
1445 "Flash Overlay Scrollbars When Mouse Enter a scrollable area. You must also"
1446 " enable Overlay Scrollbars.";
1447
Daniele Castagna74ddb9c2018-06-21 22:59:021448const char kOverlayStrategiesName[] = "Select HW overlay strategies";
1449const char kOverlayStrategiesDescription[] =
1450 "Select strategies used to promote quads to HW overlays.";
1451const char kOverlayStrategiesDefault[] = "Default";
1452const char kOverlayStrategiesNone[] = "None";
1453const char kOverlayStrategiesUnoccludedFullscreen[] =
1454 "Unoccluded fullscreen buffers (single-fullscreen)";
1455const char kOverlayStrategiesUnoccluded[] =
1456 "Unoccluded buffers (single-fullscreen,single-on-top)";
1457const char kOverlayStrategiesOccludedAndUnoccluded[] =
1458 "Occluded and unoccluded buffers "
1459 "(single-fullscreen,single-on-top,underlay)";
1460
Claudio Magni81326f92017-09-01 05:21:181461const char kUseNewAcceptLanguageHeaderName[] = "Use new Accept-Language header";
1462const char kUseNewAcceptLanguageHeaderDescription[] =
1463 "Adds the base language code after other corresponding language+region "
1464 "codes. This ensures that users receive content in their preferred "
1465 "language.";
1466
Brett Wilsonecb80982017-07-12 20:34:511467const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
1468const char kOverscrollHistoryNavigationDescription[] =
Mohsen Izadi88b392a2018-02-15 06:57:481469 "History navigation in response to horizontal overscroll.";
Brett Wilsonecb80982017-07-12 20:34:511470
1471const char kOverscrollStartThresholdName[] = "Overscroll start threshold";
1472const char kOverscrollStartThresholdDescription[] =
1473 "Changes overscroll start threshold relative to the default value.";
1474const char kOverscrollStartThreshold133Percent[] = "133%";
1475const char kOverscrollStartThreshold166Percent[] = "166%";
1476const char kOverscrollStartThreshold200Percent[] = "200%";
1477
chaopenge2b6e5f2018-05-08 16:40:451478const char kTouchpadOverscrollHistoryNavigationName[] =
1479 "Overscroll history navigation on Touchpad";
1480const char kTouchpadOverscrollHistoryNavigationDescription[] =
1481 "Allows swipe left/right from touchpad change browser navigation.";
1482
Xing Liu5400a002017-09-15 21:48:291483const char kParallelDownloadingName[] = "Parallel downloading";
1484const char kParallelDownloadingDescription[] =
Yannic Bonenbergera32f9902017-11-20 18:47:061485 "Enable parallel downloading to accelerate download speed.";
Xing Liu5400a002017-09-15 21:48:291486
Brett Wilsonecb80982017-07-12 20:34:511487const char kPassiveEventListenerDefaultName[] =
1488 "Passive Event Listener Override";
1489const char kPassiveEventListenerDefaultDescription[] =
1490 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
1491 "haven't requested otherwise) to be treated as passive. This will break "
1492 "touch/wheel behavior on some websites but is useful for demonstrating the "
1493 "potential performance benefits of adopting passive event listeners.";
1494const char kPassiveEventListenerTrue[] = "True (when unspecified)";
1495const char kPassiveEventListenerForceAllTrue[] = "Force All True";
1496
1497const char kPassiveEventListenersDueToFlingName[] =
1498 "Touch Event Listeners Passive Default During Fling";
1499const char kPassiveEventListenersDueToFlingDescription[] =
1500 "Forces touchstart, and first touchmove per scroll event listeners during "
1501 "fling to be treated as passive.";
1502
1503const char kPassiveDocumentEventListenersName[] =
1504 "Document Level Event Listeners Passive Default";
1505const char kPassiveDocumentEventListenersDescription[] =
1506 "Forces touchstart, and touchmove event listeners on document level "
1507 "targets (which haven't requested otherwise) to be treated as passive.";
1508
Sahel Sharify7400e882018-08-13 17:13:211509const char kPassiveDocumentWheelEventListenersName[] =
1510 "Document Level Wheel Event Listeners Passive Default";
1511const char kPassiveDocumentWheelEventListenersDescription[] =
1512 "Forces wheel, and mousewheel event listeners on document level targets "
1513 "(which haven't requested otherwise) to be treated as passive.";
1514
Vaclav Brozekd8a3f542017-11-16 14:21:131515const char kPasswordImportName[] = "Password import";
1516const char kPasswordImportDescription[] =
1517 "Import functionality in password settings.";
Brett Wilsonecb80982017-07-12 20:34:511518
Friedrich Horschige6c27742018-04-23 17:13:411519const char kPasswordsKeyboardAccessoryName[] =
1520 "Add password-related functions to keyboard accessory";
1521const char kPasswordsKeyboardAccessoryDescription[] =
1522 "Adds password generation button and toggle for the passwords bottom sheet "
1523 "to the keyboard accessory. Replaces password generation popups.";
1524
Christos Froussios6e060c42018-07-31 16:17:191525const char kPasswordsMigrateLinuxToLoginDBName[] =
1526 "Migrate passwords to \"Login Data\"";
1527const char kPasswordsMigrateLinuxToLoginDBDescription[] =
Christos Froussiose34c38a2018-09-04 14:27:591528 "Performs a one-off irreversible migration of passwords from the "
Christos Froussios6e060c42018-07-31 16:17:191529 "gnome-keyring or kwallet into the profile directory.";
1530
Rouslan Solomakhinded840112018-11-02 13:27:101531const char kPerMethodCanMakePaymentQuotaName[] =
1532 "Per-method canMakePayment() quota.";
1533const char kPerMethodCanMakePaymentQuotaDescription[] =
1534 "Allow calling canMakePayment() for different payment methods, as long as "
1535 "method-specific parameters remain unchanged.";
1536
Doug Arnett620ff542018-02-06 17:54:221537const char kPreviewsAllowedName[] = "Previews Allowed";
1538const char kPreviewsAllowedDescription[] =
1539 "Allows previews to be shown subject to specific preview types being "
1540 "enabled and the client experiencing specific triggering conditions. "
1541 "May be used as a kill-switch to turn off all potential preview types.";
1542
Brett Wilsonecb80982017-07-12 20:34:511543const char kPrintPdfAsImageName[] = "Print Pdf as Image";
1544const char kPrintPdfAsImageDescription[] =
1545 "If enabled, an option to print PDF files as images will be available in "
1546 "print preview.";
1547
1548const char kPrintPreviewRegisterPromosName[] =
1549 "Print Preview Registration Promos";
1550const char kPrintPreviewRegisterPromosDescription[] =
1551 "Enable registering unregistered cloud printers from print preview.";
1552
Mohsen Izadi93faac12017-07-29 04:45:151553const char kPullToRefreshName[] = "Pull-to-refresh gesture";
1554const char kPullToRefreshDescription[] =
1555 "Pull-to-refresh gesture in response to vertical overscroll.";
Mohsen Izadi8c59ba52018-04-12 18:52:011556const char kPullToRefreshEnabledTouchscreen[] = "Enabled for touchscreen only";
Mohsen Izadi93faac12017-07-29 04:45:151557
Troy Hildebrandt7228ad12018-02-23 21:18:241558const char kQueryInOmniboxName[] = "Query in Omnibox";
1559const char kQueryInOmniboxDescription[] =
1560 "Only display query terms in the omnibox when viewing a search results "
1561 "page.";
1562
Brett Wilsonecb80982017-07-12 20:34:511563const char kQuicName[] = "Experimental QUIC protocol";
1564const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1565
1566const char kReducedReferrerGranularityName[] =
1567 "Reduce default 'referer' header granularity.";
1568const char kReducedReferrerGranularityDescription[] =
1569 "If a page hasn't set an explicit referrer policy, setting this flag will "
1570 "reduce the amount of information in the 'referer' header for cross-origin "
1571 "requests.";
1572
Christian Dullweber3cc579a22018-09-11 10:54:441573const char kRewriteLevelDBOnDeletionName[] =
1574 "Rewrite LevelDB instances after full deletions";
1575const char kRewriteLevelDBOnDeletionDescription[] =
1576 "Rewrite LevelDB instances to remove traces of deleted data from disk.";
1577
Yutaka Hirano4c0f2f5d452017-11-17 04:24:351578const char kRendererSideResourceSchedulerName[] =
1579 "Renderer side ResourceScheduler";
1580const char kRendererSideResourceSchedulerDescription[] =
1581 "Migrate some ResourceScheduler functionalities to renderer";
1582
Brett Wilsonecb80982017-07-12 20:34:511583const char kRequestTabletSiteName[] =
1584 "Request tablet site option in the settings menu";
1585const char kRequestTabletSiteDescription[] =
1586 "Allows the user to request tablet site. Web content is often optimized "
1587 "for tablet devices. When this option is selected the user agent string is "
1588 "changed to indicate a tablet device. Web content optimized for tablets is "
1589 "received there after for the current tab.";
1590
Kinuko Yasuda33955082018-06-19 10:14:591591const char kResourceLoadSchedulerName[] = "Enable resource load throttling";
Brett Wilsonecb80982017-07-12 20:34:511592const char kResourceLoadSchedulerDescription[] =
Kinuko Yasuda33955082018-06-19 10:14:591593 "Uses the resource load scheduler in blink to throttle resource load "
1594 "requests.";
Brett Wilsonecb80982017-07-12 20:34:511595
Daniel Rubery91874e32019-01-10 22:12:341596const char kSafeBrowsingUseAPDownloadVerdictsName[] =
1597 "Request Advanced Protection verdicts when inspecting downloads";
1598const char kSafeBrowsingUseAPDownloadVerdictsDescription[] =
1599 "If enabled, download protection will request Advanced Protection "
1600 "verdicts from Safe Browsing. These will provide stronger protections "
1601 "from files Safe Browsing is unsure about.";
1602
Lily Chene0d3ac92019-04-22 16:55:531603const char kSameSiteByDefaultCookiesName[] = "SameSite by default cookies";
1604const char kSameSiteByDefaultCookiesDescription[] =
1605 "Treat cookies that don't specify a SameSite attribute as if they were "
1606 "SameSite=Lax. Sites must specify SameSite=None in order to enable "
1607 "third-party usage.";
1608
Brett Wilsonecb80982017-07-12 20:34:511609const char kSaveasMenuLabelExperimentName[] =
1610 "Switch 'Save as' menu labels to 'Download'";
1611const char kSaveasMenuLabelExperimentDescription[] =
1612 "Enables an experiment to switch menu labels that use 'Save as...' to "
1613 "'Download'.";
1614
Charlene Yan0ccd7f52019-04-12 23:20:591615const char kScrollableTabStripName[] = "Scrollable TabStrip";
1616const char kScrollableTabStripDescription[] =
1617 "Allows users to access tabs by scrolling when they no longer fit in the "
1618 "tabstrip.";
1619
Sébastien Séguin-Gagnon30481922019-04-24 21:31:001620const char kSendTabToSelfBroadcastName[] = "Send tab to self broadcast";
1621const char kSendTabToSelfBroadcastDescription[] =
1622 "Allows users to broadcast the tab they send to all of their devices "
1623 "instead of targetting only one device.";
1624
Jeffrey Cohene49cc59c2018-10-23 16:27:281625const char kSendTabToSelfName[] = "Send tab to self";
1626const char kSendTabToSelfDescription[] =
Tanya Gupta035a9e202019-04-08 20:01:331627 "Allows users to receive tabs from other synced devices, in order to "
1628 "easily transition those tabs to this device. This enables the sync "
1629 "infrastructure for this feature.";
Jeffrey Cohene49cc59c2018-10-23 16:27:281630
Tanya Gupta035a9e202019-04-08 20:01:331631const char kSendTabToSelfShowSendingUIName[] =
1632 "Send tab to self show sending UI";
1633const char kSendTabToSelfShowSendingUIDescription[] =
1634 "Allows users to send tabs to other synced devices by accessing the "
1635 "sending user interface. Requires Send tab to self to also be enabled";
Jeffrey Cohen9f3e6092019-03-21 21:55:011636
Travis Skare885f8ad2019-04-25 21:33:371637const char kSendTabToSelfWhenSignedInName[] =
1638 "Send tab to self: enable use when signed-in regardless of sync state";
1639const char kSendTabToSelfWhenSignedInDescription[] =
1640 "Allows use of the send-tab-to-self feature for users who are signed-in "
1641 "but not necessarily syncing. The tab-share data is thus ephemeral, "
1642 "rather than persistent sync data.";
1643
momohattfc352292018-08-29 05:12:361644const char kServiceWorkerImportedScriptUpdateCheckName[] =
1645 "Enable update check for service worker importScripts() resources";
1646const char kServiceWorkerImportedScriptUpdateCheckDescription[] =
1647 "Extend byte-for-byte update check for scripts that are imported by the "
1648 "service worker script via importScripts().";
1649
Azeem Arshad3b1ef73122018-08-30 02:04:151650const char kServiceWorkerLongRunningMessageName[] =
1651 "Service worker long running message dispatch.";
1652const char kServiceWorkerLongRunningMessageDescription[] =
1653 "Enables long running message dispatch method for service workers. "
1654 "Messages sent with this method do not timeout, allowing the service "
1655 "worker to run indefinitely.";
1656
Chris Hamiltonb9612e262019-02-12 21:12:061657const char kSessionRestorePrioritizesBackgroundUseCasesName[] =
1658 "Session restore prioritizes background use cases.";
1659const char kSessionRestorePrioritizesBackgroundUseCasesDescription[] =
1660 "When enabled session restore logic will prioritize sites that make use of "
1661 "background communication mechanisms (favicon and tab title switches, "
1662 "notifications, etc) over sites that do not.";
1663
Brett Wilsonecb80982017-07-12 20:34:511664const char kSettingsWindowName[] = "Show settings in a window";
1665const char kSettingsWindowDescription[] =
1666 "Settings will be shown in a dedicated window instead of as a browser tab.";
1667
Manu Cornetd7ef7c52018-05-01 22:08:231668const char kShelfHoverPreviewsName[] =
1669 "Show previews of running apps when hovering over the shelf.";
1670const char kShelfHoverPreviewsDescription[] =
1671 "Shows previews of the open windows for a given running app when hovering "
1672 "over the shelf.";
1673
Naoki Fukino008a0022018-05-23 18:33:001674const char kShowAndroidFilesInFilesAppName[] =
1675 "Show Android files in Files app";
1676const char kShowAndroidFilesInFilesAppDescription[] =
1677 "Show Android files in Files app if Android is enabled on the device.";
1678
Brett Wilsonecb80982017-07-12 20:34:511679const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
1680const char kShowAutofillSignaturesDescription[] =
Maxim Kolosovskiye66f8cb2018-03-23 10:25:381681 "Annotates web forms with Autofill signatures as HTML attributes. Also "
1682 "marks password fields suitable for password generation.";
Brett Wilsonecb80982017-07-12 20:34:511683
1684const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
1685const char kShowAutofillTypePredictionsDescription[] =
1686 "Annotates web forms with Autofill field type predictions as placeholder "
1687 "text.";
1688
Jonathan Backer93610a82019-03-27 14:02:381689const char kSkiaRendererName[] = "Skia API for OOP-D compositing";
1690const char kSkiaRendererDescription[] =
1691 "If enabled, the display compositor will use Skia as the graphics API "
1692 "instead of OpenGL ES. Requires Viz Display Compositor (OOP-D).";
1693
Shivani Sharma2d5b4b6b2019-01-08 16:07:161694const char kHistoryManipulationIntervention[] =
1695 "History Manipulation Intervention";
1696const char kHistoryManipulationInterventionDescription[] =
1697 "If a page does a client side redirect or adds to the history without a "
1698 "user gesture, then skip it on back/forward UI.";
1699
Carlos IL89128732018-04-03 17:00:251700const char kSupervisedUserCommittedInterstitialsName[] =
1701 "Enable Supervised User Committed Interstitials";
1702const char kSupervisedUserCommittedInterstitialsDescription[] =
1703 "Use committed error pages instead of transient navigation entries for "
1704 "supervised user interstitials";
1705
Brett Wilsonecb80982017-07-12 20:34:511706const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1707const char kSilentDebuggerExtensionApiDescription[] =
1708 "Do not show the infobar when an extension attaches to a page via "
1709 "chrome.debugger API. This is required to debug extension background "
1710 "pages.";
1711
Christopher Thompson75ff845d2018-02-01 20:12:461712const char kSimplifyHttpsIndicatorName[] = "Simplify HTTPS indicator UI";
1713const char kSimplifyHttpsIndicatorDescription[] =
1714 "Change the UI treatment for HTTPS pages.";
1715
Lukasz Anforowiczd2e16e62019-03-28 19:06:591716const char kIsolateOriginsName[] = "Isolate additional origins";
1717const char kIsolateOriginsDescription[] =
1718 "Requires dedicated processes for an additional set of origins, "
1719 "specified as a comma-separated list.";
1720
Alan Wink7c1b2ae22019-04-03 19:18:061721const char kKidsManagementUrlClassificationName[] =
1722 "KidsMangement Url Classification";
1723const char kKidsManagementUrlClassificationDescription[] =
1724 "Uses KidsManagementService to classify URLs for Kid Accounts.";
1725
Lukasz Anforowicz738a88d2018-11-05 19:19:341726const char kSiteIsolationOptOutName[] = "Disable site isolation";
1727const char kSiteIsolationOptOutDescription[] =
1728 "Disables site isolation "
Nick Carter855bc492018-03-10 00:44:571729 "(SitePerProcess, IsolateOrigins, etc). Intended for diagnosing bugs that "
1730 "may be due to out-of-process iframes. Opt-out has no effect if site "
Lukasz Anforowicz42840422018-11-05 21:49:221731 "isolation is force-enabled using a command line switch or using an "
1732 "enterprise policy. "
1733 "Caution: this disables important mitigations for the Spectre CPU "
Nick Carter855bc492018-03-10 00:44:571734 "vulnerability affecting most computers.";
Lukasz Anforowicz738a88d2018-11-05 19:19:341735const char kSiteIsolationOptOutChoiceDefault[] = "Default";
1736const char kSiteIsolationOptOutChoiceOptOut[] = "Disabled (not recommended)";
Brett Wilsonecb80982017-07-12 20:34:511737
Pattideade7972018-04-27 02:59:401738const char kSiteSettings[] = "Site settings";
Brett Wilsonecb80982017-07-12 20:34:511739const char kSiteSettingsDescription[] =
Pattideade7972018-04-27 02:59:401740 "Add the All Sites list to Site Settings.";
Brett Wilsonecb80982017-07-12 20:34:511741
Brett Wilsonecb80982017-07-12 20:34:511742const char kSmoothScrollingName[] = "Smooth Scrolling";
1743const char kSmoothScrollingDescription[] =
1744 "Animate smoothly when scrolling page content.";
1745
Justin Donnelly4e448cb2017-07-07 21:32:131746const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
1747 "Enable speculative start of a service worker when a search is predicted.";
Justin Donnelly4e448cb2017-07-07 21:32:131748const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
1749 "If enabled, when the user enters text in the omnibox that looks like a "
1750 "a query, any service worker associated with the search engine the query "
1751 "will be sent to is started early.";
1752
Carlos ILe5fa0a12018-08-03 16:08:321753const char kSSLCommittedInterstitialsName[] = "Committed Interstitials";
1754const char kSSLCommittedInterstitialsDescription[] =
1755 "Use committed error pages instead of transient navigation entries "
1756 "for SSL interstitial error pages (i.e. certificate errors).";
1757
W. James MacLeanf79c97e2019-05-02 20:35:461758extern const char kStrictOriginIsolationName[] = "Strict-Origin-Isolation";
1759extern const char kStrictOriginIsolationDescription[] =
1760 "Experimental security mode that strengthens the site isolation policy. "
1761 "Controls whether site isolation should use origins instead of scheme and "
1762 "eTLD+1.";
1763
Shubhie Panickerfaf082ed2018-01-03 04:49:151764const char kStopInBackgroundName[] = "Stop in background";
1765const char kStopInBackgroundDescription[] =
1766 "Stop scheduler task queues, in the background, "
Shubhie Panicker56c99a22018-03-21 00:22:281767 " after a grace period.";
Shubhie Panickerfaf082ed2018-01-03 04:49:151768
Shubhie Panicker56c99a22018-03-21 00:22:281769const char kStopNonTimersInBackgroundName[] =
1770 "Stop non-timer task queues background";
1771const char kStopNonTimersInBackgroundDescription[] =
1772 "Stop non-timer task queues, in the background, "
1773 "after a grace period.";
1774
Brett Wilsonecb80982017-07-12 20:34:511775const char kSuggestionsWithSubStringMatchName[] =
1776 "Substring matching for Autofill suggestions";
1777const char kSuggestionsWithSubStringMatchDescription[] =
1778 "Match Autofill suggestions based on substrings (token prefixes) rather "
1779 "than just prefixes.";
vabr0215a8e2017-03-28 12:47:341780
Marc Treib4bd95e72018-08-30 06:30:581781const char kSyncSupportSecondaryAccountName[] =
1782 "Support secondary accounts for Sync standalone transport";
1783const char kSyncSupportSecondaryAccountDescription[] =
1784 "If enabled, allows Chrome Sync to start in standalone transport mode for "
1785 "a signed-in account that has not been chosen as Chrome's primary account. "
1786 "This only has an effect if sync-standalone-transport is also enabled.";
1787
Jan Krcal2ff23f7c2018-09-04 16:16:131788const char kSyncUSSAutofillProfileName[] = "Enable USS for autofill profile";
1789const char kSyncUSSAutofillProfileDescription[] =
1790 "Enables the new implementation of autofill profile sync";
1791
Jan Krcale3641b92018-08-10 17:53:311792const char kSyncUSSAutofillWalletDataName[] =
1793 "Enable USS for autofill wallet data";
1794const char kSyncUSSAutofillWalletDataDescription[] =
1795 "Enables the new implementation of autofill walet data sync";
1796
Jan Krcal1e883642019-03-06 16:53:451797const char kSyncUSSAutofillWalletMetadataName[] =
1798 "Enable USS for autofill wallet metadata";
1799const char kSyncUSSAutofillWalletMetadataDescription[] =
1800 "Enables the new implementation of autofill walet metadata sync";
1801
Brett Wilsonecb80982017-07-12 20:34:511802const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1803const char kSyncSandboxDescription[] =
1804 "Connects to the testing server for Chrome Sync.";
vabr0215a8e2017-03-28 12:47:341805
Joe Downing8cbbc192018-05-14 17:37:071806const char kSystemKeyboardLockName[] = "Experimental system keyboard lock";
1807const char kSystemKeyboardLockDescription[] =
1808 "Enables websites to use the keyboard.lock() API to intercept system "
1809 "keyboard shortcuts and have the events routed directly to the website "
1810 "when in fullscreen mode.";
1811
Matt Simmons1fd0c9f2019-04-15 19:08:221812const char kTabEngagementReportingName[] = "Tab Engagement Metrics";
1813const char kTabEngagementReportingDescription[] =
1814 "Tracks tab engagement and lifetime metrics.";
1815
Yusuf Ozuysal67f05a02019-02-15 19:30:521816const char kTabGridLayoutAndroidName[] = "Tab Grid Layout";
1817const char kTabGridLayoutAndroidDescription[] =
1818 "Allows users to see their tabs in a grid layout in the tab switcher.";
1819
Yusuf Ozuysal436d90b82019-03-15 22:17:581820const char kTabGroupsAndroidName[] = "Tab Groups";
1821const char kTabGroupsAndroidDescription[] =
1822 "Allows users to create groups to better organize their tabs.";
1823
Yue Zhang2834d6b2019-05-01 17:30:281824const char kTabGroupsUiImprovementsAndroidName[] = "Tab Groups UI Improvements";
1825const char kTabGroupsUiImprovementsAndroidDescription[] =
1826 "Allows users to access new features in Tab Group UI.";
1827
Taylor Bergquistbcc15462018-12-05 00:36:561828const char kTabGroupsName[] = "Tab Groups";
1829const char kTabGroupsDescription[] =
1830 "Allows users to organize tabs into visually distinct groups, e.g. to "
1831 "separate tabs associated with different tasks.";
1832
Caroline Risinge121c2b2018-12-03 20:19:291833const char kTabHoverCardsName[] = "Tab Hover Cards";
1834const char kTabHoverCardsDescription[] =
1835 "Enables a popup containing tab information to be visible when hovering "
1836 "over a tab. This will replace tooltips for tabs.";
1837
Dana Friedacaa8ef52019-02-08 02:20:351838const char kTabHoverCardImagesName[] = "Tab Hover Card Images";
1839const char kTabHoverCardImagesDescription[] =
1840 "Shows a preview image in tab hover cards, if tab hover cards are enabled.";
1841
Christian Dullweberd0d96f02017-09-13 09:22:511842const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1843const char kTabsInCbdDescription[] =
1844 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
1845
Daniele Castagna0fead93e2018-01-10 20:40:291846const char kTintGlCompositedContentName[] = "Tint GL-composited content";
1847const char kTintGlCompositedContentDescription[] =
1848 "Tint contents composited using GL with a shade of red to help debug and "
1849 "study overlay support.";
1850
Peter Kastingd77428352018-10-26 15:20:251851const char kTopChromeTouchUiName[] = "Touch UI Layout";
1852const char kTopChromeTouchUiDescription[] =
1853 "Enables touch UI layout in the browser's top chrome.";
vabr0215a8e2017-03-28 12:47:341854
Brett Wilsonecb80982017-07-12 20:34:511855const char kThreadedScrollingName[] = "Threaded scrolling";
1856const char kThreadedScrollingDescription[] =
1857 "Threaded handling of scroll-related input events. Disabling this will "
1858 "force all such scroll events to be handled on the main thread. Note that "
1859 "this can dramatically hurt scrolling performance of most websites and is "
1860 "intended for testing purposes only.";
1861
Dominick Ng8896b1cd2017-10-17 23:24:361862const char kTopSitesFromSiteEngagementName[] = "Top Sites from Site Engagement";
1863const char kTopSitesFromSiteEngagementDescription[] =
1864 "Enable Top Sites on the New Tab Page to be sourced and sorted using site "
1865 "engagement.";
1866
Brett Wilsonecb80982017-07-12 20:34:511867const char kTouchAdjustmentName[] = "Touch adjustment";
1868const char kTouchAdjustmentDescription[] =
1869 "Refine the position of a touch gesture in order to compensate for touches "
1870 "having poor resolution compared to a mouse.";
1871
1872const char kTouchDragDropName[] = "Touch initiated drag and drop";
1873const char kTouchDragDropDescription[] =
1874 "Touch drag and drop can be initiated through long press on a draggable "
1875 "element.";
1876
1877const char kTouchEventsName[] = "Touch Events API";
1878const char kTouchEventsDescription[] =
1879 "Force Touch Events API feature detection to always be enabled or "
1880 "disabled, or to be enabled when a touchscreen is detected on startup "
Ella Gea6a203c92017-10-26 19:09:291881 "(Automatic).";
Brett Wilsonecb80982017-07-12 20:34:511882
1883const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
1884const char kTouchSelectionStrategyDescription[] =
1885 "Controls how text selection granularity changes when touch text selection "
1886 "handles are dragged. Non-default behavior is experimental.";
1887const char kTouchSelectionStrategyCharacter[] = "Character";
1888const char kTouchSelectionStrategyDirection[] = "Direction";
1889
1890const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
1891const char kTraceUploadUrlDescription[] =
1892 "This is to be used in conjunction with the enable-navigation-tracing "
1893 "flag. Please select the label that best describes the recorded traces. "
1894 "This will choose the destination the traces are uploaded to. If you are "
1895 "not sure, select other. If left empty, no traces will be uploaded.";
1896const char kTraceUploadUrlChoiceOther[] = "Other";
1897const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1898const char kTraceUploadUrlChoiceQa[] = "QA";
1899const char kTraceUploadUrlChoiceTesting[] = "Testing";
1900
Anthony Vallee-Dubois265c5692018-06-01 15:57:141901const char kTranslateForceTriggerOnEnglishName[] =
1902 "Select which language model to use to trigger translate on English "
1903 "content";
1904const char kTranslateForceTriggerOnEnglishDescription[] =
1905 "Force the Translate Triggering on English pages experiment to be enabled "
1906 "with the selected language model active.";
1907
Mustafa Emre Acerb3aa36a82018-05-22 21:44:051908const char kTreatInsecureOriginAsSecureName[] =
1909 "Insecure origins treated as secure";
1910const char kTreatInsecureOriginAsSecureDescription[] =
1911 "Treat given (insecure) origins as secure origins. Multiple origins can be "
1912 "supplied as a comma-separated list. For the definition of secure "
1913 "contexts, "
1914 "see https://w3c.github.io/webappsec-secure-contexts/";
1915
Joe DeBlasio2a4fb9982019-05-06 23:44:431916const char kTreatUnsafeDownloadsAsActiveName[] =
1917 "Treat risky downloads over insecure connections as active mixed content";
1918const char kTreatUnsafeDownloadsAsActiveDescription[] =
1919 "Disallows downloads of unsafe files (files that can potentially execute "
1920 "code), where the final download origin or any origin in the redirect "
1921 "chain is insecure if the originating page is secure.";
1922
Brett Wilsonecb80982017-07-12 20:34:511923const char kTrySupportedChannelLayoutsName[] =
1924 "Causes audio output streams to check if channel layouts other than the "
1925 "default hardware layout are available.";
1926const char kTrySupportedChannelLayoutsDescription[] =
1927 "Causes audio output streams to check if channel layouts other than the "
1928 "default hardware layout are available. Turning this on will allow the OS "
1929 "to do stereo to surround expansion if supported. May expose third party "
1930 "driver bugs, use with caution.";
1931
David Roger6762a092018-01-31 15:55:071932const char kUnifiedConsentName[] = "Unified Consent";
1933const char kUnifiedConsentDescription[] =
1934 "Enables a unified management of user consent for privacy-related "
1935 "features. This includes new confirmation screens and improved settings "
1936 "pages.";
1937
François Beaufortdb160c12019-05-01 06:28:141938const char kUnsafeWebGPUName[] = "Unsafe WebGPU";
1939const char kUnsafeWebGPUDescription[] =
1940 "Enables access to the experimental WebGPU API. Warning: As GPU sanboxing "
1941 "isn't implemented yet for the WebGPU API, it is possible to read GPU data "
1942 "for other processes.";
1943
Brett Wilsonecb80982017-07-12 20:34:511944const char kUiPartialSwapName[] = "Partial swap";
1945const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
1946
Wei Li790e7a8572018-03-23 01:31:551947const char kUsePdfCompositorServiceName[] =
1948 "Use PDF compositor service for printing";
1949const char kUsePdfCompositorServiceDescription[] =
1950 "When enabled, use PDF compositor service to composite and generate PDF "
1951 "files for printing. When site isolation is enabled, disabling this will "
1952 "not stop using PDF compositor service since the service is required for "
1953 "printing out-of-process iframes correctly.";
1954
Mustaq Ahmedc646c0a2017-10-20 20:08:301955const char kUserActivationV2Name[] = "User Activation v2";
1956const char kUserActivationV2Description[] =
1957 "Enable simple user activation for APIs that are otherwise controlled by "
1958 "user gesture tokens.";
1959
Brett Wilsonecb80982017-07-12 20:34:511960const char kUseSuggestionsEvenIfFewFeatureName[] =
1961 "Disable minimum for server-side tile suggestions on NTP.";
1962const char kUseSuggestionsEvenIfFewFeatureDescription[] =
1963 "Request server-side suggestions even if there are only very few of them "
1964 "and use them for tiles on the New Tab Page.";
1965
1966const char kV8CacheOptionsName[] = "V8 caching mode.";
1967const char kV8CacheOptionsDescription[] =
1968 "Caching mode for the V8 JavaScript engine.";
Brett Wilsonecb80982017-07-12 20:34:511969const char kV8CacheOptionsCode[] = "Cache V8 compiler data.";
1970
Michael Hablich896d52662017-10-23 15:59:571971const char kV8VmFutureName[] = "Future V8 VM features";
1972const char kV8VmFutureDescription[] =
1973 "This enables upcoming and experimental V8 VM features. "
1974 "This flag does not enable experimental JavaScript features.";
1975
Hannes Payer1130d5672018-06-05 07:37:311976const char kV8OrinocoName[] = "V8 Orinoco garbage collection features";
1977const char kV8OrinocoDescription[] =
1978 "This enables the V8 Orinoco garbage collection features.";
1979
Brett Wilsonecb80982017-07-12 20:34:511980const char kWalletServiceUseSandboxName[] =
1981 "Use Google Payments sandbox servers";
1982const char kWalletServiceUseSandboxDescription[] =
1983 "For developers: use the sandbox service for Google Payments API calls.";
1984
Brett Wilsonecb80982017-07-12 20:34:511985const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
1986const char kWebglDraftExtensionsDescription[] =
1987 "Enabling this option allows web applications to access the WebGL "
1988 "Extensions that are still in draft status.";
1989
1990const char kWebMidiName[] = "Web MIDI API";
1991const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
1992
Qingsi Wangec2dbf942018-11-03 05:33:041993const char kWebrtcHideLocalIpsWithMdnsName[] =
1994 "Anonymize local IPs exposed by WebRTC.";
1995const char kWebrtcHideLocalIpsWithMdnsDecription[] =
1996 "Conceal local IP addresses with mDNS hostnames.";
1997
Alex Loikob5fb1282018-08-14 10:04:401998const char kWebrtcHybridAgcName[] = "WebRTC hybrid Agc2/Agc1.";
1999const char kWebrtcHybridAgcDescription[] =
2000 "WebRTC Agc2 digital adaptation with Agc1 analog adaptation.";
2001
Brett Wilsonecb80982017-07-12 20:34:512002const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
2003const char kWebrtcHwDecodingDescription[] =
2004 "Support in WebRTC for decoding video streams using platform hardware.";
2005
2006const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
2007const char kWebrtcHwEncodingDescription[] =
2008 "Support in WebRTC for encoding video streams using platform hardware.";
2009
2010const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
2011const char kWebrtcHwH264EncodingDescription[] =
2012 "Support in WebRTC for encoding h264 video streams using platform "
2013 "hardware.";
2014
2015const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
2016const char kWebrtcHwVP8EncodingDescription[] =
2017 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
2018
Sreerenj Balachandran2a5fd0972019-02-08 22:15:202019const char kWebrtcHwVP9EncodingName[] = "WebRTC hardware vp9 video encoding";
2020const char kWebrtcHwVP9EncodingDescription[] =
2021 "Support in WebRTC for encoding vp9 video streams using platform hardware.";
2022
Niels Möller090866a2018-02-13 10:55:032023const char kWebrtcNewEncodeCpuLoadEstimatorName[] =
2024 "WebRTC new encode cpu load estimator";
2025const char kWebrtcNewEncodeCpuLoadEstimatorDescription[] =
2026 "Enable new estimator for the encoder cpu load, for evaluation and "
2027 "testing. Intended to improve accuracy when screen casting.";
2028
Elad Alon85e0d0be2018-06-26 10:38:372029const char kWebRtcRemoteEventLogName[] = "WebRTC remote-bound event logging";
2030const char kWebRtcRemoteEventLogDescription[] =
2031 "Allow collecting WebRTC event logs and uploading them to Crash. "
2032 "Please note that, even if enabled, this will still require "
2033 "a policy to be set, for it to have an effect.";
2034
Brett Wilsonecb80982017-07-12 20:34:512035const char kWebrtcSrtpAesGcmName[] =
2036 "Negotiation with GCM cipher suites for SRTP in WebRTC";
2037const char kWebrtcSrtpAesGcmDescription[] =
2038 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
2039
2040const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
2041const char kWebrtcStunOriginDescription[] =
2042 "When enabled, Stun messages generated by WebRTC will contain the Origin "
2043 "header.";
2044
2045const char kWebvrName[] = "WebVR";
2046const char kWebvrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012047 "Enables access to experimental Virtual Reality functionality via the "
2048 "WebVR 1.1 API. This feature will eventually be replaced by the WebXR "
2049 "Device API. Warning: Enabling this will also allow WebVR content on "
2050 "insecure origins to access these powerful APIs, and may pose a security "
David Dorwin09448942019-01-11 23:37:302051 "risk. Controllers are exposed as Gamepads, and WebVR-specific attributes "
2052 "are exposed.";
Brett Wilsonecb80982017-07-12 20:34:512053
Brandon Jonese9d9b2b2017-12-11 22:20:112054const char kWebXrName[] = "WebXR Device API";
2055const char kWebXrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012056 "Enables access to experimental APIs to interact with Virtual Reality (VR) "
2057 "and Augmented Reality (AR) devices.";
2058
Ian Vollick7aaccf92018-04-07 23:10:432059const char kWebXrHitTestName[] = "WebXR Hit Test";
2060const char kWebXrHitTestDescription[] =
2061 "Enables access to raycasting against estimated XR scene geometry.";
Brandon Jonese9d9b2b2017-12-11 22:20:112062
Piotr Bialeckid77fb9c2019-04-26 17:06:242063const char kWebXrPlaneDetectionName[] = "WebXR Plane Detection";
2064const char kWebXrPlaneDetectionDescription[] =
2065 "Enables access to planes detected in the user's environment.";
2066
Brett Wilsonecb80982017-07-12 20:34:512067const char kZeroCopyName[] = "Zero-copy rasterizer";
2068const char kZeroCopyDescription[] =
2069 "Raster threads write directly to GPU memory associated with tiles.";
vabr0215a8e2017-03-28 12:47:342070
Brett Wilsonff596952017-07-14 01:06:552071// Android ---------------------------------------------------------------------
2072
2073#if defined(OS_ANDROID)
2074
2075const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
2076const char kAiaFetchingDescription[] =
2077 "Enable intermediate certificate fetching when a server does not provide "
2078 "sufficient certificates to build a chain to a trusted root.";
2079
2080const char kAccessibilityTabSwitcherName[] = "Accessibility Tab Switcher";
2081const char kAccessibilityTabSwitcherDescription[] =
2082 "Enable the accessibility tab switcher for Android.";
2083
Pavel Shmakov798f4742018-11-15 21:27:382084const char kAllowRemoteContextForNotificationsName[] =
2085 "Allow using remote app context for notifications";
2086const char kAllowRemoteContextForNotificationsDescription[] =
2087 "Allow using Context#createPackageContext to work around issues with status"
2088 "bar icons on certain Android M devices.";
2089
Brett Wilsonff596952017-07-14 01:06:552090const char kAndroidAutofillAccessibilityName[] = "Autofill Accessibility";
2091const char kAndroidAutofillAccessibilityDescription[] =
2092 "Enable accessibility for autofill popup.";
2093
Khushalbb1963a2018-10-02 21:02:352094const char kAndroidSurfaceControl[] = "Use Android SurfaceControl";
2095const char kAndroidSurfaceControlDescription[] =
2096 "Use the SurfaceControl API for supporting overlays on Android";
2097
Becky Zhoubbfbde32019-02-20 17:07:592098const char kAndroidWebContentsDarkMode[] = "Android web contents dark mode";
2099const char kAndroidWebContentsDarkModeDescription[] =
2100 "Enable dark mode on web contents in Android";
2101
Anita Woodruffbfcd1e52018-07-16 12:00:512102const char kAppNotificationStatusMessagingName[] =
2103 "App notification status messaging";
2104const char kAppNotificationStatusMessagingDescription[] =
2105 "Enables messaging in site permissions UI informing user when "
2106 "notifications are disabled for the entire app.";
2107
Miriam Gershenson8cf1397222018-01-23 22:48:292108const char kAsyncDnsName[] = "Async DNS resolver";
2109const char kAsyncDnsDescription[] = "Enables the built-in DNS resolver.";
2110
Dan Harrington01229f82018-09-12 21:01:212111const char kAutoFetchOnNetErrorPageName[] = "AutoFetchOnNetErrorPage";
2112const char kAutoFetchOnNetErrorPageDescription[] =
2113 "When enabled, and navigation fails with an offline error, schedule a "
2114 "fetch of the page when online again.";
2115
Brett Wilsonff596952017-07-14 01:06:552116const char kAutofillAccessoryViewName[] =
2117 "Autofill suggestions as keyboard accessory view";
2118const char kAutofillAccessoryViewDescription[] =
2119 "Shows Autofill suggestions on top of the keyboard rather than in a "
2120 "dropdown.";
2121
Caitlin Fischer43edd90a2019-05-01 13:24:302122const char kAutofillUseMobileLabelDisambiguationName[] =
2123 "Autofill Uses Mobile Label Disambiguation";
2124const char kAutofillUseMobileLabelDisambiguationDescription[] =
2125 "When enabled, Autofill suggestions' labels are displayed using a "
2126 "mobile-friendly format.";
2127
Tibor Goldschwendt11b3cf22018-07-04 15:32:442128const char kBackgroundTaskComponentUpdateName[] =
2129 "Background Task Component Updates";
2130const char kBackgroundTaskComponentUpdateDescription[] =
2131 "Schedule component updates with BackgroundTaskScheduler";
2132
Michael van Ouwerkerkbda4ad82018-06-19 14:08:002133const char kCCTModuleName[] = "Chrome Custom Tabs Module";
2134const char kCCTModuleDescription[] =
2135 "Enables a dynamically loaded module in Chrome Custom Tabs, on Android.";
2136
Michael van Ouwerkerk29a7a292018-10-09 09:20:142137const char kCCTModuleCacheName[] = "Chrome Custom Tabs Module Cache";
2138const char kCCTModuleCacheDescription[] =
Michael van Ouwerkerka5df1ec2018-10-11 11:57:402139 "Enables a cache for dynamically loaded modules in Chrome Custom Tabs. "
2140 "Under mild memory pressure the cache may be retained for some time";
Michael van Ouwerkerk29a7a292018-10-09 09:20:142141
John Lin170c00b2018-11-21 15:44:252142const char kCCTModuleCustomHeaderName[] =
2143 "Chrome Custom Tabs Module Custom Header";
2144const char kCCTModuleCustomHeaderDescription[] =
2145 "Enables header customization by dynamically loaded modules in "
2146 "Chrome Custom Tabs.";
2147
Michael van Ouwerkerk0878427a2019-02-13 15:11:422148const char kCCTModuleCustomRequestHeaderName[] =
2149 "Chrome Custom Tabs Module Custom Request Header";
2150const char kCCTModuleCustomRequestHeaderDescription[] =
2151 "Enables a custom request header for URLs managed by dynamically loaded "
2152 "modules in Chrome Custom Tabs.";
2153
alihanlivdumlu12ac4772019-01-17 17:37:182154const char kCCTModuleDexLoadingName[] = "Chrome Custom Tabs Module Dex Loading";
2155const char kCCTModuleDexLoadingDescription[] =
2156 "Enables loading Chrome Custom Tabs module code from a dex file "
2157 "provided by the module.";
2158
barkerd84051482018-11-13 14:46:562159const char kCCTModulePostMessageName[] =
2160 "Chrome Custom Tabs Module postMessage API";
2161const char kCCTModulePostMessageDescription[] =
2162 "Enables the postMessage API exposed to dynamically loaded modules in "
2163 "Chrome Custom Tabs.";
2164
Anna Malova9bb4ead2019-01-18 18:01:262165const char kCCTModuleUseIntentExtrasName[] =
2166 "Chrome Custom Tabs Module Intent Extras Usage";
2167const char kCCTModuleUseIntentExtrasDescription[] =
2168 "Enables usage of Intent's extras in Chrome Custom Tabs Module";
2169
Anna Malovaf7c734a2019-03-01 13:08:452170const char kCCTTargetTranslateLanguageName[] =
2171 "Chrome Custom Tabs Target Translate Language";
2172const char kCCTTargetTranslateLanguageDescription[] =
2173 "Enables specify target language the page should be translated to "
2174 "in Chrome Custom Tabs.";
2175
Matthew Jones1abcb132018-07-09 17:59:462176const char kChromeDuetName[] = "Chrome Duet";
2177const char kChromeDuetDescription[] =
2178 "Enables Chrome Duet, split toolbar Chrome Home, on Android.";
Theresa Wellingtonb9243b22017-12-01 16:23:052179
Sarath Singapati83aef1c2017-11-16 15:54:522180const char kClearOldBrowsingDataName[] = "Clear older browsing data";
2181const char kClearOldBrowsingDataDescription[] =
2182 "Enables clearing of browsing data which is older than a given time "
2183 "period.";
2184
Donn Denman4315f262019-03-02 02:47:412185const char kContextualSearchDefinitionsName[] = "Contextual Search definitions";
2186const char kContextualSearchDefinitionsDescription[] =
2187 "Enables tap-activated contextual definitions of words on a page to be "
2188 "presented in the caption of the Tap to Search Bar.";
2189
Donn Denman6be77d42019-05-04 15:55:422190const char kContextualSearchLongpressResolveName[] =
2191 "Contextual Search long-press Resolves";
2192const char kContextualSearchLongpressResolveDescription[] =
2193 "Enables communicating with Google servers when a long-press gesture is "
2194 "recognized under some privacy-limited conditions. The page context data "
2195 " sent to Google is potentially privacy sensitive!";
2196
Donn Denman8e58ead2017-11-04 01:44:012197const char kContextualSearchMlTapSuppressionName[] =
2198 "Contextual Search ML tap suppression";
2199const char kContextualSearchMlTapSuppressionDescription[] =
2200 "Enables tap gestures to be suppressed to improve CTR by applying machine "
Donn Denman59729812018-01-09 01:27:022201 "learning. The \"Contextual Search Ranker prediction\" flag must also be "
2202 "enabled!";
Brett Wilsonff596952017-07-14 01:06:552203
Donn Denman59729812018-01-09 01:27:022204const char kContextualSearchRankerQueryName[] =
2205 "Contextual Search Ranker prediction";
2206const char kContextualSearchRankerQueryDescription[] =
2207 "Enables prediction of tap gestures using Assist-Ranker machine learning.";
2208
Donn Denman63d169f2019-03-08 23:34:502209const char kContextualSearchSimplifiedServerName[] =
2210 "Contextual Search simplified server logic";
2211const char kContextualSearchSimplifiedServerDescription[] =
2212 "Enables simpler server-side logic for determining what data to return and "
2213 "show in the Contextual Search UI. Option to allow all cards CoCa "
2214 "returns.";
2215
Donn Denman59729812018-01-09 01:27:022216const char kContextualSearchSecondTapName[] =
2217 "Contextual Search second tap triggering";
2218const char kContextualSearchSecondTapDescription[] =
2219 "Enables triggering on a second tap gesture even when Ranker would "
2220 "normally suppress that tap.";
2221
Donn Denman75f4b052019-04-05 17:55:212222const char kContextualSearchTranslationModelName[] =
2223 "Contextual Search translation using the Chrome translate model.";
2224const char kContextualSearchTranslationModelDescription[] =
2225 "Enables triggering translation in Contextual Search according to the "
2226 "Chrome translation model semantics.";
2227
Donn Denmane9b5b7fb2018-07-24 22:19:492228const char kContextualSearchUnityIntegrationName[] =
2229 "Contextual Search integration with Unified Consent";
2230const char kContextualSearchUnityIntegrationDescription[] =
2231 "Enables integration of Tap to Search with Unified Consent.";
2232
Joy Ming189b0cc2017-12-08 19:42:432233const char kDownloadsLocationChangeName[] = "Enable downloads location change";
2234const char kDownloadsLocationChangeDescription[] =
2235 "Enable changing default downloads storage location on Android.";
2236
Shakti Sahu32b2ee102018-05-17 00:04:462237const char kDownloadProgressInfoBarName[] = "Enable download progress infobar";
2238const char kDownloadProgressInfoBarDescription[] =
2239 "Enables an infobar notifying users about status of current downloads.";
2240
Shakti Sahu9ec8cfd2018-07-17 13:29:292241const char kDownloadHomeV2Name[] = "Enable download home v2";
2242const char kDownloadHomeV2Description[] =
2243 "Enables the new UI for download home";
2244
Hesen Zhangf7ad6142019-03-12 23:48:312245const char kDownloadRenameName[] = "Enable download rename";
2246const char kDownloadRenameDescription[] = "Enables rename option for downloads";
2247
Fabio Tirelo918089a2018-10-22 21:24:082248const char kAutofillManualFallbackAndroidName[] =
2249 "Enable Autofill manual fallback for Addresses and Payments (Android)";
2250const char kAutofillManualFallbackAndroidDescription[] =
2251 "If enabled, adds toggle for addresses and payments bottom sheet to the "
2252 "keyboard accessory.";
2253
Fabio Tirelo315e65922018-09-05 03:35:492254const char kEnableAutofillRefreshStyleName[] =
2255 "Enable Autofill refresh style (Android)";
2256const char kEnableAutofillRefreshStyleDescription[] =
2257 "Enable modernized style for Autofill on Android";
2258
Vitalii Iarkof4ed32d2017-09-26 13:15:532259const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
Brett Wilsonff596952017-07-14 01:06:552260const char kEnableAndroidSpellcheckerDescription[] =
2261 "Enables use of the Android spellchecker.";
Brett Wilsonff596952017-07-14 01:06:552262
Lei Tianbd5a3bf2018-02-28 19:01:162263const char kEnableCommandLineOnNonRootedName[] =
2264 "Enable command line on non-rooted devices";
2265const char kEnableCommandLineOnNoRootedDescription[] =
2266 "Enable reading command line file on non-rooted devices (DANGEROUS).";
2267
Brett Wilsonff596952017-07-14 01:06:552268const char kEnableCustomContextMenuName[] = "Enable custom context menu";
2269const char kEnableCustomContextMenuDescription[] =
2270 "Enables a new context menu when a link, image, or video is pressed within "
2271 "Chrome.";
2272
Sinan Sahin3bafe272019-03-11 17:03:062273const char kEnableRevampedContextMenuName[] =
2274 "Enable the revamped context menu";
2275const char kEnableRevampedContextMenuDescription[] =
2276 "Enables a revamped context menu when a link, image, or video is long "
2277 "pressed within Chrome.";
2278
Brett Wilsonff596952017-07-14 01:06:552279const char kEnableNtpRemoteSuggestionsName[] =
2280 "Show server-side suggestions on the New Tab page";
2281const char kEnableNtpRemoteSuggestionsDescription[] =
2282 "If enabled, the list of content suggestions on the New Tab page will "
2283 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
2284 "allows to override the source used to retrieve these server-side "
2285 "suggestions.";
2286
Brett Wilsonff596952017-07-14 01:06:552287const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
2288const char kEnableOfflinePreviewsDescription[] =
2289 "Enable showing offline page previews on slow networks.";
2290
2291const char kEnableOskOverscrollName[] = "Enable OSK Overscroll";
2292const char kEnableOskOverscrollDescription[] =
2293 "Enable OSK overscroll support. With this flag on, the OSK will only "
2294 "resize the visual viewport.";
2295
Brett Wilsonff596952017-07-14 01:06:552296const char kEnableWebNfcName[] = "WebNFC";
2297const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
2298
Donn Denmanffaeaa32018-10-12 17:37:532299const char kEphemeralTabName[] = "An Ephemeral Tab in an Overlay Panel";
2300const char kEphemeralTabDescription[] =
Donn Denmanb45c26a2019-02-13 01:42:212301 "Enable a 'Preview page/image' at a linked page into an overlay.";
Donn Denmanffaeaa32018-10-12 17:37:532302
Lei Zhang0a318af2018-11-14 02:19:462303const char kExploreSitesName[] = "Explore websites";
2304const char kExploreSitesDescription[] =
2305 "Enables portal from new tab page to explore websites.";
2306
Xing Liu7d57dd32019-01-20 02:34:182307const char kForegroundNotificationManagerName[] =
2308 "Foreground notification manager";
2309const char kForegroundNotificationManagerDescription[] =
2310 "Enable foreground notification manager to handle foreground service and "
2311 "notification.";
2312
Daniel Parke74fcf862018-03-27 18:05:452313const char kHomePageButtonName[] = "Force Enable Home Page Button";
Daniel Park990d0992018-05-18 22:12:512314const char kHomePageButtonDescription[] = "Displays a home button if enabled.";
Daniel Parke74fcf862018-03-27 18:05:452315
Yafei Duanbb7663f32018-07-17 01:33:152316const char kHomepageTileName[] =
2317 "Enable Homepage tile shown in Suggested Tiles";
2318const char kHomepageTileDescription[] =
2319 "When NTPButton is enabled, the first tile of the Suggested Tiles will be "
2320 "used for homepage. It will not have an effect when NTPButton is disabled.";
2321
Jian Li4b252642018-07-23 19:49:072322const char kIncognitoStringsName[] = "Alternate incognito strings";
2323const char kIncognitoStringsDescription[] =
2324 "Show alternate incognito strings if enabled.";
2325
Theresa920e0ed2018-03-07 18:12:442326const char kInterestFeedContentSuggestionsDescription[] =
Yafei Duanbb7663f32018-07-17 01:33:152327 "Use the interest feed to render content suggestions. Currently "
2328 "content "
Theresa920e0ed2018-03-07 18:12:442329 "suggestions are shown on the New Tab Page.";
2330const char kInterestFeedContentSuggestionsName[] =
2331 "Interest Feed Content Suggestions";
2332
Leo Zhang051b75482017-12-20 03:28:302333const char kLanguagesPreferenceName[] = "Language Settings";
2334const char kLanguagesPreferenceDescription[] =
2335 "Enable this option for Language Settings feature on Android.";
2336
Brett Wilsonff596952017-07-14 01:06:552337const char kLsdPermissionPromptName[] =
2338 "Location Settings Dialog Permission Prompt";
2339const char kLsdPermissionPromptDescription[] =
2340 "Whether to use the Google Play Services Location Settings Dialog "
2341 "permission dialog.";
2342
Ioana Pandeled8dc2b692019-02-20 12:04:152343const char kManualPasswordGenerationAndroidName[] =
2344 "Manual password generation";
2345const char kManualPasswordGenerationAndroidDescription[] =
2346 "Whether Chrome should offer users the option to manually request to "
2347 "generate passwords on Android.";
Amirhossein Simjour97b4154f2018-02-20 03:49:592348
Brett Wilsonff596952017-07-14 01:06:552349const char kMediaScreenCaptureName[] = "Experimental ScreenCapture.";
2350const char kMediaScreenCaptureDescription[] =
2351 "Enable this option for experimental ScreenCapture feature on Android.";
2352
Dan Harrington541db9e2018-07-30 18:36:302353const char kNewNetErrorPageUIName[] = "Enable new UI for net-error page";
2354const char kNewNetErrorPageUIDescription[] =
Dan Harringtonc78e4622019-03-22 19:13:242355 "Enables showing available offline content on the net-error (Dino) page.";
Dan Harrington541db9e2018-07-30 18:36:302356
Brett Wilsonff596952017-07-14 01:06:552357const char kNewPhotoPickerName[] = "Enable new Photopicker";
2358const char kNewPhotoPickerDescription[] =
2359 "Activates the new picker for selecting photos.";
2360
2361const char kNoCreditCardAbort[] = "No Credit Card Abort";
2362const char kNoCreditCardAbortDescription[] =
2363 "Whether or not the No Credit Card Abort is enabled.";
2364
Daniel Park990d0992018-05-18 22:12:512365const char kNtpButtonName[] = "Enable NTP Button";
2366const char kNtpButtonDescription[] =
2367 "Displays a New Tab Page button in the toolbar if enabled.";
2368
Jian Liade82832018-09-06 22:31:412369const char kOfflineIndicatorAlwaysHttpProbeName[] = "Always http probe";
2370const char kOfflineIndicatorAlwaysHttpProbeDescription[] =
2371 "Always do http probe to detect network connectivity for offline indicator "
2372 "as opposed to just taking the connection state from the system."
2373 "Used for testing.";
2374
2375const char kOfflineIndicatorChoiceName[] = "Offline indicator choices";
2376const char kOfflineIndicatorChoiceDescription[] =
2377 "Show an offline indicator while offline.";
Jian Li1413ebf2018-06-14 20:46:322378
Brett Wilsonff596952017-07-14 01:06:552379const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
2380const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
2381
2382const char kOfflinePagesCtV2Name[] = "Enable Offline Pages CT V2 features.";
2383const char kOfflinePagesCtV2Description[] =
2384 "V2 features include attributing pages to the app that initiated the "
2385 "custom tabs, and being able to query for pages by page attribution.";
2386
Cathy Li7311d792018-04-05 00:34:162387const char kOfflinePagesCTSuppressNotificationsName[] =
2388 "Disable download complete notification for whitelisted CCT apps.";
2389const char kOfflinePagesCTSuppressNotificationsDescription[] =
2390 "Disable download complete notification for page downloads originating "
2391 "from a CCT app whitelisted to show their own download complete "
2392 "notification.";
2393
Candice Sy74fa7a352018-03-30 23:46:492394const char kOfflinePagesDescriptiveFailStatusName[] =
2395 "Enables descriptive failed download status text.";
2396const char kOfflinePagesDescriptiveFailStatusDescription[] =
2397 "Enables failed download status text in notifications and Downloads Home "
2398 "to state the reason the request failed if the failure is actionable.";
2399
2400const char kOfflinePagesDescriptivePendingStatusName[] =
2401 "Enables descriptive pending download status text.";
2402const char kOfflinePagesDescriptivePendingStatusDescription[] =
2403 "Enables pending download status text in notifications and Downloads Home "
2404 "to state the reason the request is pending.";
2405
2406const char kOfflinePagesInDownloadHomeOpenInCctName[] =
2407 "Enables offline pages in the downloads home to be opened in CCT.";
2408const char kOfflinePagesInDownloadHomeOpenInCctDescription[] =
2409 "When enabled offline pages launched from the Downloads Home will be "
2410 "opened in Chrome Custom Tabs (CCT) instead of regular tabs.";
2411
Carlos Knippschild09272ecd2017-12-09 03:29:362412const char kOfflinePagesLimitlessPrefetchingName[] =
2413 "Removes resource usage limits for the prefetching of offline pages.";
2414const char kOfflinePagesLimitlessPrefetchingDescription[] =
2415 "Allows the prefetching of suggested offline pages to ignore resource "
2416 "usage limits. This allows it to completely ignore data usage limitations "
2417 "and allows downloads to happen with any kind of connection.";
2418
Brett Wilsonff596952017-07-14 01:06:552419const char kOfflinePagesLoadSignalCollectingName[] =
2420 "Enables collecting load timing data for offline page snapshots.";
2421const char kOfflinePagesLoadSignalCollectingDescription[] =
2422 "Enables loading completeness data collection while writing an offline "
2423 "page. This data is collected in the snapshotted offline page to allow "
2424 "data analysis to improve deciding when to make the offline snapshot.";
2425
2426const char kOfflinePagesPrefetchingName[] =
2427 "Enables suggested offline pages to be prefetched.";
2428const char kOfflinePagesPrefetchingDescription[] =
2429 "Enables suggested offline pages to be prefetched, so useful content is "
2430 "available while offline.";
2431
Pete Williamson7845dff2017-09-20 11:06:192432const char kOfflinePagesResourceBasedSnapshotName[] =
2433 "Enables offline page snapshots to be based on percentage of page loaded.";
2434const char kOfflinePagesResourceBasedSnapshotDescription[] =
2435 "Enables offline page snapshots to use a resource percentage based "
2436 "approach for determining when the page is loaded as opposed to a time "
2437 "based approach";
2438
Collin Baker17f92a52017-07-19 21:41:252439const char kOfflinePagesRenovationsName[] = "Enables offline page renovations.";
2440const char kOfflinePagesRenovationsDescription[] =
2441 "Enables offline page renovations which correct issues with dynamic "
2442 "content that occur when offlining pages that use JavaScript.";
2443
Yafei Duan36b4b5b2018-08-07 00:40:032444const char kOfflinePagesLivePageSharingName[] =
2445 "Enables live page sharing of offline pages";
2446const char kOfflinePagesLivePageSharingDescription[] =
2447 "Enables to share current loaded page as offline page by saving as MHTML "
2448 "first.";
2449
Cathy Lie0d88762018-04-12 08:03:012450const char kOfflinePagesShowAlternateDinoPageName[] =
2451 "Enable alternate dino page with more user capabilities.";
2452const char kOfflinePagesShowAlternateDinoPageDescription[] =
2453 "Enables the dino page to show more buttons and offer existing offline "
2454 "content.";
2455
Brett Wilsonff596952017-07-14 01:06:552456const char kOffliningRecentPagesName[] =
2457 "Enable offlining of recently visited pages";
2458const char kOffliningRecentPagesDescription[] =
2459 "Enable storing recently visited pages locally for offline use. Requires "
2460 "Offline Pages to be enabled.";
2461
Matthew Jonesa88b95852017-11-08 23:13:502462const char kProgressBarThrottleName[] = "Android progress update throttling.";
2463const char kProgressBarThrottleDescription[] =
2464 "Limit the maximum progress update to make progress appear smoother.";
2465
Piotr Swigon7c296ef2017-08-29 04:32:002466const char kPwaImprovedSplashScreenName[] =
2467 "Improved Splash Screen for standalone PWAs";
2468const char kPwaImprovedSplashScreenDescription[] =
2469 "Enables the Improved Splash Screen UX for standalone PWAs based on new "
2470 "Web App Manifest attributes";
Piotr Swigon9f630b32017-07-26 09:42:492471const char kPwaPersistentNotificationName[] =
2472 "Persistent notification in standalone PWA";
2473const char kPwaPersistentNotificationDescription[] =
2474 "Enables a persistent Android notification for standalone PWAs";
2475
Brett Wilsonff596952017-07-14 01:06:552476const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
2477const char kReaderModeHeuristicsDescription[] =
2478 "Determines what pages the Reader Mode infobar is shown on.";
2479const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
2480const char kReaderModeHeuristicsAdaboost[] = "Non-mobile-friendly articles";
2481const char kReaderModeHeuristicsAllArticles[] = "All articles";
2482const char kReaderModeHeuristicsAlwaysOff[] = "Never";
2483const char kReaderModeHeuristicsAlwaysOn[] = "Always";
2484
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:182485const char kReaderModeInCCTName[] = "Reader Mode in CCT";
2486const char kReaderModeInCCTDescription[] =
2487 "Open Reader Mode in Chrome Custom Tabs.";
2488
Varun Khaneja2a8229f2019-01-12 00:57:262489const char kSafeBrowsingTelemetryForApkDownloadsName[] =
2490 "Send some telemetry for APK downloads for extended reporting users";
2491const char kSafeBrowsingTelemetryForApkDownloadsDescription[] =
2492 "If enabled, sends some information about the source and hash of the "
2493 "contents of any APK files downloaded by a user who has opted into Safe "
2494 "Browsing Extended Reporting already.";
2495
Varun Khaneja80712a82018-10-12 23:34:592496const char kSafeBrowsingUseLocalBlacklistsV2Name[] =
2497 "Use local Safe Browsing blacklists";
2498const char kSafeBrowsingUseLocalBlacklistsV2Description[] =
2499 "If enabled, maintain a copy of Safe Browsing blacklists in the browser "
2500 "process to check the Safe Browsing reputation of URLs without calling "
2501 "into GmsCore for every URL.";
2502
Matthew Jones53114262018-12-12 16:36:472503const char kSearchReadyOmniboxName[] = "Search Ready Omnibox";
2504const char kSearchReadyOmniboxDescription[] =
2505 "Clears the omnibox and adds a suggestion item to share, copy, or edit the "
2506 "URL.";
2507
Brett Wilsonff596952017-07-14 01:06:552508const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2509const char kSetMarketUrlForTestingDescription[] =
2510 "When enabled, sets the market URL for use in testing the update menu "
2511 "item.";
2512
Donn Denmane32c706c2019-04-26 22:30:112513const char kShoppingAssistName[] = "Shopping assist exploration";
2514const char kShoppingAssistDescription[] =
2515 "Show some shopping assistance when available";
2516
Alex Moshchuk07e1bb42019-03-08 04:44:082517const char kSiteIsolationForPasswordSitesName[] =
2518 "Site Isolation For Password Sites";
2519const char kSiteIsolationForPasswordSitesDescription[] =
2520 "Security mode that enables site isolation for sites based on "
2521 "password-oriented heuristics, such as a user typing in a password.";
2522
Lei Zhang0a318af2018-11-14 02:19:462523const char kStrictSiteIsolationName[] = "Strict site isolation";
2524const char kStrictSiteIsolationDescription[] =
2525 "Security mode that enables site isolation for all sites (SitePerProcess). "
2526 "In this mode, each renderer process will contain pages from at most one "
2527 "site, using out-of-process iframes when needed. "
2528 "Check chrome://process-internals to see the current isolation mode. "
2529 "Setting this flag to 'Enabled' turns on site isolation regardless of the "
2530 "default. Here, 'Disabled' is a legacy value that actually means "
2531 "'Default,' in which case site isolation may be already enabled based on "
2532 "platform, enterprise policy, or field trial. See also "
2533 "#site-isolation-trial-opt-out for how to disable site isolation for "
2534 "testing.";
2535
Nate Chapinc710f622019-04-26 19:25:292536extern const char kProcessSharingWithStrictSiteInstancesName[] =
2537 "Process sharing with strict site instances";
2538extern const char kProcessSharingWithStrictSiteInstancesDescription[] =
2539 "When site isolation is disabled, this mode changes how sites are lumped "
2540 "in to a shared process. Process selection is usually controlled with "
2541 "site instances. With strict site isolation, each site on a page gets its "
2542 "own site instance and process. With site isolation disabled and without "
2543 "this mode, all sites that share a process are put into the same site "
2544 "instance. This mode adds a third way: site instances are strictly "
2545 "separated like strict site isolation, but process selection puts multiple "
2546 "site instances in a single process.";
2547
Anthony Vallee-Dubois4623e1b2018-10-11 22:09:182548const char kTranslateAndroidManualTriggerName[] =
2549 "Enable manual translate trigger";
2550const char kTranslateAndroidManualTriggerDescription[] =
2551 "Show a menu item in the main menu that triggers page translation.";
2552
Brett Wilsonff596952017-07-14 01:06:552553const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2554const char kUpdateMenuBadgeDescription[] =
Tommy Nyquist3c02e592018-10-18 23:36:442555 "When enabled, a badge will be shown on the app menu button if the update "
2556 "type is Update Available or Unsupported OS Version.";
Brett Wilsonff596952017-07-14 01:06:552557
2558const char kUpdateMenuItemCustomSummaryDescription[] =
2559 "When this flag and the force show update menu item flag are enabled, a "
2560 "custom summary string will be displayed below the update menu item.";
2561const char kUpdateMenuItemCustomSummaryName[] =
2562 "Update menu item custom summary";
2563
Tommy Nyquist3c02e592018-10-18 23:36:442564const char kUpdateMenuTypeName[] =
2565 "Forces the update menu type to a specific type";
2566const char kUpdateMenuTypeDescription[] =
2567 "When set, forces the update type to be a specific one, which impacts "
Tommy Nyquist023d505f2019-02-16 02:18:382568 "the app menu badge and menu item for updates. For Inline Update, the "
2569 "update available flag is implied. The 'Inline Update: Success' selection "
2570 "goes through the whole inline update flow to the end with a successful "
2571 "outcome. The other 'Inline Update' options go through the same flow, but "
2572 "stop at various stages, see their error type for details.";
Tommy Nyquist3c02e592018-10-18 23:36:442573const char kUpdateMenuTypeNone[] = "None";
2574const char kUpdateMenuTypeUpdateAvailable[] = "Update Available";
2575const char kUpdateMenuTypeUnsupportedOSVersion[] = "Unsupported OS Version";
Tommy Nyquist023d505f2019-02-16 02:18:382576const char kUpdateMenuTypeInlineUpdateSuccess[] = "Inline Update: Success";
2577const char kUpdateMenuTypeInlineUpdateDialogCanceled[] =
2578 "Inline Update Error: Dialog Canceled";
2579const char kUpdateMenuTypeInlineUpdateDialogFailed[] =
2580 "Inline Update Error: Dialog Failed";
2581const char kUpdateMenuTypeInlineUpdateDownloadFailed[] =
2582 "Inline Update Error: Download Failed";
2583const char kUpdateMenuTypeInlineUpdateDownloadCanceled[] =
2584 "Inline Update Error: Download Canceled";
2585const char kUpdateMenuTypeInlineUpdateInstallFailed[] =
2586 "Inline Update Error: Install Failed";
Brett Wilsonff596952017-07-14 01:06:552587
Tommy Nyquist26ffb642019-02-20 20:31:522588const char kInlineUpdateFlowName[] = "Enable Google Play inline update flow";
2589const char kInlineUpdateFlowDescription[] =
2590 "When this flag is set, instead of taking the user to the Google Play "
2591 "Store when an update is available, the user is presented with an inline "
2592 "flow where they do not have to leave Chrome until the update is ready "
2593 "to install.";
2594
Becky Zhou65584142019-01-10 18:22:292595#if BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2596
Becky Zhoubcac628f2019-02-28 18:22:372597const char kAndroidNightModeName[] = "Android Chrome UI dark mode";
Becky Zhou65584142019-01-10 18:22:292598const char kAndroidNightModeDescription[] =
Becky Zhoubcac628f2019-02-28 18:22:372599 "If enabled, user can enable Android Chrome UI dark mode through settings.";
Becky Zhou65584142019-01-10 18:22:292600
2601#endif // BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2602
Brett Wilson7b44537e2017-08-18 01:38:282603// Non-Android -----------------------------------------------------------------
Brett Wilsonff596952017-07-14 01:06:552604
Brett Wilson7b44537e2017-08-18 01:38:282605#else // !defined(OS_ANDROID)
brettw5f9c1642017-05-14 17:12:482606
Brett Wilson7b44537e2017-08-18 01:38:282607const char kAccountConsistencyName[] =
2608 "Identity consistency between browser and cookie jar";
2609const char kAccountConsistencyDescription[] =
2610 "When enabled, the browser manages signing in and out of Google accounts.";
2611const char kAccountConsistencyChoiceMirror[] = "Mirror";
2612const char kAccountConsistencyChoiceDice[] = "Dice";
vabr0215a8e2017-03-28 12:47:342613
Reka Normana11e57fc2019-01-29 21:56:582614const char kAppManagementName[] = "Enable App Management page";
2615const char kAppManagementDescription[] =
2616 "Shows the new app management page at chrome://apps.";
2617
Kristi Parkc9b9d6592019-02-12 22:30:382618const char kRemoveNtpFakeboxName[] = "Remove fakebox from the NTP";
2619const char kRemoveNtpFakeboxDescription[] =
2620 "Do not show the fakebox on the New Tab page.";
2621
Kyle Milka24687352019-04-11 21:13:082622const char kNtpCustomizationMenuV2Name[] = "NTP customization menu version 2";
2623const char kNtpCustomizationMenuV2Description[] =
2624 "Use the second version of the NTP customization menu.";
2625
Aran Gilman766c2ad2019-04-18 00:15:412626const char kEnableReaderModeName[] = "Enable Reader Mode";
2627const char kEnableReaderModeDescription[] =
2628 "Allows viewing of simplified web pages by selecting 'Customize and "
2629 "control Chrome'>'Distill page'";
2630
Lei Zhang0a318af2018-11-14 02:19:462631const char kEnableWebAuthenticationBleSupportName[] =
2632 "Web Authentication API BLE support";
2633const char kEnableWebAuthenticationBleSupportDescription[] =
2634 "Enable support for using Web Authentication API via Bluetooth security "
2635 "keys";
Sebastien Marchandd33f7dc2018-06-22 22:07:062636
Sebastien Marchandd33f7dc2018-06-22 22:07:062637const char kEnableWebAuthenticationTestingAPIName[] =
2638 "Web Authentication Testing API";
2639const char kEnableWebAuthenticationTestingAPIDescription[] =
2640 "Enable Web Authentication Testing API support, which disconnects the API "
2641 "implementation from the real world, and allows configuring virtual "
2642 "authenticator devices for testing";
2643
Owen Min853a8162019-04-26 19:20:362644const char kEnterpriseReportingInBrowserName[] =
2645 "Enterprise cloud reporting in browser";
2646const char kEnterpriseReportingInBrowserDescription[] =
2647 "Enable the enterprise cloud reporting in browser without installing the "
2648 "reporting companion extension. This feautre requires device level cloud "
2649 "mangement.";
2650
Jeffrey Cohenf04130a42018-08-29 00:22:272651const char kHappinessTrackingSurveysForDesktopName[] =
2652 "Happiness Tracking Surveys";
2653const char kHappinessTrackingSurveysForDesktopDescription[] =
2654 "Enable showing Happiness Tracking Surveys to users on Desktop";
2655
Maggie Caib3e2a6c2019-03-12 05:12:542656const char kIntentPickerName[] = "Intent picker";
2657const char kIntentPickerDescription[] =
2658 "When going to a site that has URL managable by a PWA, show the intent"
2659 "picker to allow user to open the URL in the app.";
2660
Travis Skarebcdb5ed32018-08-17 01:49:402661const char kOmniboxDriveSuggestionsName[] =
2662 "Omnibox Google Drive Document suggestions";
2663const char kOmniboxDriveSuggestionsDescriptions[] =
2664 "Display suggestions for Google Drive documents in the omnibox when Google "
2665 "is the default search engine.";
2666
Travis Skare13ad69c2019-03-06 21:01:022667const char kOmniboxDeduplicateDriveUrlsName[] =
2668 "Deduplicate Google Drive suggestions in the Omnibox";
2669const char kOmniboxDeduplicateDriveUrlsDescription[] =
2670 "Present at most one result for the same Drive document across bookmarks, "
2671 "history, document, etc. suggestions.";
2672
Kevin Bailey9ec05532019-01-31 23:01:332673const char kOmniboxExperimentalKeywordModeName[] =
2674 "Omnibox Experimental Keyword Mode";
2675const char kOmniboxExperimentalKeywordModeDescription[] =
2676 "Enables various experimental features related to keyword mode, its "
2677 "suggestions and layout";
2678
Lei Zhang0a318af2018-11-14 02:19:462679const char kOmniboxPedalSuggestionsName[] = "Omnibox Pedal suggestions";
2680const char kOmniboxPedalSuggestionsDescription[] =
Orin Jaworski506db4d2019-02-14 20:17:142681 "Enable omnibox Pedal suggestions to accelerate actions within Chrome by "
2682 "detecting user intent and offering direct access to the end goal.";
Lei Zhang0a318af2018-11-14 02:19:462683
Orin Jaworski04c08b42018-07-11 02:39:562684const char kOmniboxReverseAnswersName[] = "Omnibox reverse answers";
2685const char kOmniboxReverseAnswersDescription[] =
manukaddd3c42019-04-09 21:20:592686 "Display answers with rows reversed (swapped); except definitions.";
Orin Jaworski04c08b42018-07-11 02:39:562687
Kevin Baileya5f17452019-02-13 01:52:032688const char kOmniboxReverseTabSwitchLogicName[] =
2689 "Omnibox reverse tab switch logic";
2690const char kOmniboxReverseTabSwitchLogicDescription[] =
2691 "Reverse the logic of suggestions that have a tab switch button: Have "
2692 "them switch by default, and have the button navigate.";
2693
Kevin Bailey7d918b92019-05-02 16:00:142694const char kOmniboxShortBookmarkSuggestionsName[] =
2695 "Omnibox short bookmark suggestions";
2696const char kOmniboxShortBookmarkSuggestionsDescription[] =
2697 "Match very short input words to beginning of words in bookmark "
2698 "suggestions.";
2699
Tommy C. Li065ddce72019-04-11 22:55:122700const char kOmniboxSuggestionTransparencyOptionsName[] =
2701 "Omnibox Suggestion Transparency Options";
2702const char kOmniboxSuggestionTransparencyOptionsDescription[] =
2703 "Improves transparency of and control over omnibox suggestions. This "
2704 "includes UI cues (like a clock icon for Search History suggestions), as "
2705 "well as user controls to delete personalized suggestions.";
2706
Kevin Bailey898669972017-11-06 15:34:492707const char kOmniboxTabSwitchSuggestionsName[] =
2708 "Omnibox tab switch suggestions";
2709const char kOmniboxTabSwitchSuggestionsDescription[] =
manukaddd3c42019-04-09 21:20:592710 "Enable suggestions for switching to open tabs within the Omnibox.";
Kevin Bailey898669972017-11-06 15:34:492711
krbcc621412017-06-01 19:40:282712const char kOmniboxTailSuggestionsName[] = "Omnibox tail suggestions";
2713const char kOmniboxTailSuggestionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192714 "Enable receiving tail suggestions, a type of search suggestion based on "
2715 "the last few words in the query, for the Omnibox.";
vabr0215a8e2017-03-28 12:47:342716
Sebastien Marchandd33f7dc2018-06-22 22:07:062717const char kProactiveTabFreezeAndDiscardName[] =
2718 "Proactive Tab Freeze and Discard";
2719const char kProactiveTabFreezeAndDiscardDescription[] =
2720 "Enables proactive tab freezing and discarding. This requires "
2721 "#enable-page-almost-idle.";
2722
Nicolas Ouellet-payeur82eb65b2018-11-05 16:49:272723const char kShowManagedUiName[] = "Show managed UI for managed users";
2724const char kShowManagedUiDescription[] =
2725 "Enabled/disable showing enterprise users a 'Managed by your organization' "
2726 "message in the app menu and on some chrome:// pages.";
2727
Brett Wilson7b44537e2017-08-18 01:38:282728#if defined(GOOGLE_CHROME_BUILD)
2729
2730const char kGoogleBrandedContextMenuName[] =
2731 "Google branding in the context menu";
2732const char kGoogleBrandedContextMenuDescription[] =
2733 "Shows a Google icon next to context menu items powered by Google "
2734 "services.";
2735
2736#endif // !defined(GOOGLE_CHROME_BUILD)
2737
2738#endif // !defined(OS_ANDROID)
2739
2740// Windows ---------------------------------------------------------------------
2741
2742#if defined(OS_WIN)
2743
David Bienvenud0ddda32018-11-01 16:59:162744const char kCalculateNativeWinOcclusionName[] =
2745 "Calculate window occlusion on Windows";
2746const char kCalculateNativeWinOcclusionDescription[] =
2747 "Calculate window occlusion on Windows will be used in the future "
2748 "to throttle and potentially unload foreground tabs in occluded windows";
2749
Brett Wilson7b44537e2017-08-18 01:38:282750const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
2751const char kCloudPrintXpsDescription[] =
2752 "XPS enables advanced options for classic printers connected to the Cloud "
2753 "Print with Chrome. Printers must be re-connected after changing this "
2754 "flag.";
2755
Frank Liberato754d14f2019-01-30 23:31:172756const char kD3D11VideoDecoderName[] = "D3D11 Video Decoder";
2757const char kD3D11VideoDecoderDescription[] =
2758 "Enables D3D11VideoDecoder for hardware accelerated video decoding.";
2759
Brett Wilson7b44537e2017-08-18 01:38:282760const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
2761const char kDisablePostscriptPrintingDescription[] =
2762 "Disables PostScript generation when printing to PostScript capable "
2763 "printers, and uses EMF generation in its place.";
2764
2765const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
2766const char kEnableAppcontainerDescription[] =
2767 "Enables the use of an AppContainer on sandboxed processes to improve "
2768 "security.";
2769
James Forshawfd0ce342018-02-14 09:55:392770const char kEnableGpuAppcontainerName[] = "Enable GPU AppContainer Lockdown.";
2771const char kEnableGpuAppcontainerDescription[] =
2772 "Enables the use of an AppContainer for the GPU sandboxed processes to "
2773 "improve security.";
2774
Brett Wilson7b44537e2017-08-18 01:38:282775const char kGdiTextPrinting[] = "GDI Text Printing";
2776const char kGdiTextPrintingDescription[] =
2777 "Use GDI to print text as simply text";
2778
Olli Etuaho122321192018-09-07 10:15:292779const char kUseAngleName[] = "Choose ANGLE graphics backend";
2780const char kUseAngleDescription[] =
2781 "Choose the graphics backend for ANGLE. D3D11 is used on most Windows "
2782 "computers by default. Using the OpenGL driver as the graphics backend may "
2783 "result in higher performance in some graphics-heavy applications, "
2784 "particularly on NVIDIA GPUs. It can increase battery and memory usage of "
2785 "video playback.";
2786
2787const char kUseAngleDefault[] = "Default";
2788const char kUseAngleGL[] = "OpenGL";
2789const char kUseAngleD3D11[] = "D3D11";
2790const char kUseAngleD3D9[] = "D3D9";
2791
Brett Wilson7b44537e2017-08-18 01:38:282792const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2793const char kUseWinrtMidiApiDescription[] =
2794 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
2795 "later).";
2796
Brett Wilson7b44537e2017-08-18 01:38:282797#endif // defined(OS_WIN)
2798
2799// Mac -------------------------------------------------------------------------
2800
2801#if defined(OS_MACOSX)
2802
Brett Wilson7b44537e2017-08-18 01:38:282803const char kContentFullscreenName[] = "Improved Content Fullscreen";
2804const char kContentFullscreenDescription[] =
2805 "Fullscreen content window detaches from main browser window and goes to "
2806 "a new space without moving or changing the original browser window.";
2807
Sidney San Martín678fd4112019-03-30 00:13:052808const char kImmersiveFullscreenName[] = "Immersive Fullscreen Toolbar";
2809const char kImmersiveFullscreenDescription[] =
2810 "Automatically hide and show the toolbar in fullscreen.";
2811
Brett Wilson7b44537e2017-08-18 01:38:282812const char kHostedAppsInWindowsName[] =
2813 "Allow hosted apps to be opened in windows";
2814const char kHostedAppsInWindowsDescription[] =
2815 "Allows hosted apps to be opened in windows instead of being limited to "
2816 "tabs.";
2817
Christopher Cameron57dee5a42018-09-25 01:20:082818const char kCreateAppWindowsInAppShimProcessName[] =
2819 "Create native windows in the app process";
2820const char kCreateAppWindowsInAppShimProcessDescription[] =
2821 "Create native windows the app shim process, instead of of the browser "
2822 "process.";
2823
Lei Zhange065b572018-12-11 08:00:412824const char kEnableCustomMacPaperSizesName[] = "Enable custom paper sizes";
2825const char kEnableCustomMacPaperSizesDescription[] =
2826 "Allow use of custom paper sizes in Print Preview.";
2827
Lei Zhang2eca9082017-10-17 20:42:502828const char kMacTouchBarName[] = "Hardware Touch Bar";
2829const char kMacTouchBarDescription[] = "Control the use of the Touch Bar.";
Brett Wilson7b44537e2017-08-18 01:38:282830
Greg Kerr32483d1c2018-12-18 02:29:142831const char kMacV2GPUSandboxName[] = "Mac V2 GPU Sandbox";
2832const char kMacV2GPUSandboxDescription[] =
2833 "Controls whether the GPU process on macOS uses the V1 or V2 sandbox.";
2834
Brett Wilson7b44537e2017-08-18 01:38:282835const char kMacViewsNativeAppWindowsName[] = "Toolkit-Views App Windows.";
2836const char kMacViewsNativeAppWindowsDescription[] =
2837 "Controls whether to use Toolkit-Views based Chrome App windows.";
2838
2839const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
2840const char kMacViewsTaskManagerDescription[] =
2841 "Controls whether to use the Toolkit-Views based Task Manager.";
2842
Henrik Grunellabaf7182019-04-12 09:15:192843const char kMacSystemMediaPermissionsInfoUiName[] =
2844 "System media permissions info UI";
2845const char kMacSystemMediaPermissionsInfoUiDescription[] =
2846 "In case a website is trying to use the camera/microphone, but Chrome "
2847 "itself is blocked on the system level to access these, show an icon in "
2848 "the Omnibox, which, when clicked, displays a bubble with information on "
2849 "how to toggle Chrome's system-level media permissions.";
2850
Brett Wilson7b44537e2017-08-18 01:38:282851#endif
2852
2853// Chrome OS -------------------------------------------------------------------
vabr0215a8e2017-03-28 12:47:342854
2855#if defined(OS_CHROMEOS)
2856
Brett Wilson7b44537e2017-08-18 01:38:282857const char kAcceleratedMjpegDecodeName[] =
2858 "Hardware-accelerated mjpeg decode for captured frame";
2859const char kAcceleratedMjpegDecodeDescription[] =
2860 "Enable hardware-accelerated mjpeg decode for captured frame where "
2861 "available.";
vabr0215a8e2017-03-28 12:47:342862
Reka Normana11e57fc2019-01-29 21:56:582863const char kAppServiceAshName[] = "App Service Ash";
2864const char kAppServiceAshDescription[] =
2865 "Use the App Service to provide data to the Ash UI, such as the shelf and "
2866 "app list.";
2867
Bruno Kim Medeiros Cesarb98fe1d82018-06-06 18:11:522868const char kArcAvailableForChildName[] = "Allow ARC for child accounts";
2869const char kArcAvailableForChildDescription[] =
2870 "Allow child accounts to start Android apps.";
2871
Brett Wilson7b44537e2017-08-18 01:38:282872const char kArcBootCompleted[] = "Load Android apps automatically";
2873const char kArcBootCompletedDescription[] =
2874 "Allow Android apps to start automatically after signing in.";
vabr0215a8e2017-03-28 12:47:342875
Luum Habtemariamdaa8fd22018-06-25 22:39:432876const char kArcCupsApiName[] = "ARC CUPS API";
2877const char kArcCupsApiDescription[] =
2878 "Enables support of libcups APIs from ARC";
2879
Ryo Hashimoto8f4b30ced2019-04-08 12:14:192880const char kArcCustomTabsExperimentName[] =
2881 "Enable Custom Tabs experiment for ARC";
2882const char kArcCustomTabsExperimentDescription[] =
2883 "Allow Android apps to use Custom Tabs."
2884 "This feature only works on the Canary and Dev channels.";
2885
Naoki Fukino153de8a2019-01-22 08:37:542886const char kArcDocumentsProviderName[] = "ARC DocumentsProvider integration";
2887const char kArcDocumentsProviderDescription[] =
2888 "Enables DocumentsProvider integration in Chrome OS Files app.";
2889
Satoshi Niwa8b1d5282018-10-24 04:53:032890const char kArcFilePickerExperimentName[] =
2891 "Enable file picker experiment for ARC";
2892const char kArcFilePickerExperimentDescription[] =
2893 "Enables using Chrome OS file picker in ARC.";
2894
[email protected]939ceae2019-01-29 17:00:152895const char kArcGraphicBuffersVisualizationToolName[] =
2896 "Enable ARC graphic buffers visualization tool";
2897const char kArcGraphicBuffersVisualizationToolDescription[] =
2898 "Enable ARC graphic buffers visualization tool "
2899 "(chrome://arc-graphics-tracing).";
2900
Lev Rumyantsev7a8544312017-08-18 19:26:512901const char kArcNativeBridgeExperimentName[] =
2902 "Enable native bridge experiment for ARC";
2903const char kArcNativeBridgeExperimentDescription[] =
2904 "Enables experimental native bridge feature.";
2905
Jesse Schettlerc3d0a652019-04-23 18:49:242906const char kArcPrintSpoolerExperimentName[] =
2907 "Enable print spooler experiment for ARC";
2908const char kArcPrintSpoolerExperimentDescription[] =
Jesse Schettler10204aa92019-04-26 23:37:092909 "Enables using Chrome OS print system and print preview in ARC."
2910 "This feature only works on the Canary and Dev channels.";
Jesse Schettlerc3d0a652019-04-23 18:49:242911
lgchengecd1c1a62018-01-09 02:59:462912const char kArcUsbHostName[] = "Enable ARC USB host integration";
2913const char kArcUsbHostDescription[] =
2914 "Allow Android apps to use USB host feature on ChromeOS devices.";
2915
Kevin Cernekeeb7f96a52017-10-25 17:40:182916const char kArcVpnName[] = "Enable ARC VPN integration";
2917const char kArcVpnDescription[] =
2918 "Allow Android VPN clients to tunnel Chrome traffic.";
2919
Qiang Xu045aff222018-05-21 23:21:012920const char kAshEnableDisplayMoveWindowAccelsName[] =
2921 "Enable shortcuts for moving window between displays.";
2922const char kAshEnableDisplayMoveWindowAccelsDescription[] =
2923 "Enable shortcuts for moving window between displays.";
2924
Sammie Quonfe640ca2019-01-30 17:54:182925const char kAshEnableOverviewRoundedCornersName[] =
2926 "Enable rounded corners in overview mode.";
2927const char kAshEnableOverviewRoundedCornersDescription[] =
2928 "Enables rounded corners on overview windows.";
2929
Qiang Xu045aff222018-05-21 23:21:012930const char kAshEnablePersistentWindowBoundsName[] =
2931 "Enable persistent window bounds in multi-displays scenario.";
2932const char kAshEnablePersistentWindowBoundsDescription[] =
2933 "Enable persistent window bounds in multi-displays scenario.";
2934
Eliot Courtneye87a9c32018-11-20 03:33:022935const char kAshEnablePipRoundedCornersName[] =
2936 "Enable Picture-in-Picture rounded corners.";
2937const char kAshEnablePipRoundedCornersDescription[] =
2938 "Enable rounded corners on the Picture-in-Picture window.";
2939
Min Chen3e342562019-05-04 00:08:362940const char kAshSwapSideVolumeButtonsForOrientationName[] =
2941 "Swap side volume buttons to match screen orientation.";
2942const char kAshSwapSideVolumeButtonsForOrientationDescription[] =
2943 "Make the side volume button that's closer to the top/right always "
2944 "increase the volume and the button that's closer to the bottom/left "
2945 "always decrease the volume.";
2946
Brett Wilson7b44537e2017-08-18 01:38:282947const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
2948const char kAshEnableUnifiedDesktopDescription[] =
2949 "Enable unified desktop mode which allows a window to span multiple "
2950 "displays.";
vabr0215a8e2017-03-28 12:47:342951
Sean Kau5e956192017-10-06 22:25:172952const char kBulkPrintersName[] = "Bulk Printers Policy";
2953const char kBulkPrintersDescription[] = "Enables the new bulk printers policy";
2954
Xiaochu Liu51d03fd2017-09-08 23:51:022955const char kCrOSContainerName[] = "Chrome OS Container";
2956const char kCrOSContainerDescription[] =
2957 "Enable the use of Chrome OS Container utility.";
2958
Brett Wilson7b44537e2017-08-18 01:38:282959const char kCrosRegionsModeName[] = "Cros-regions load mode";
2960const char kCrosRegionsModeDescription[] =
2961 "This flag controls cros-regions load mode";
2962const char kCrosRegionsModeDefault[] = "Default";
2963const char kCrosRegionsModeOverride[] = "Override VPD values.";
2964const char kCrosRegionsModeHide[] = "Hide VPD values.";
vabr0215a8e2017-03-28 12:47:342965
Daniel Ng96ab0c82019-01-16 01:21:552966const char kCrostiniAppSearchName[] = "Crostini App Search";
2967const char kCrostiniAppSearchDescription[] =
2968 "Enable search and installation of Crostini apps in the launcher.";
2969
Joel Hockey42387102019-01-10 01:19:322970const char kCrostiniBackupName[] = "Crostini Backup";
2971const char kCrostiniBackupDescription[] = "Enable Crostini export and import.";
2972
Ben Wells7238dd02019-05-02 08:20:322973const char kCrostiniGpuSupportName[] = "Crostini GPU Support";
2974const char kCrostiniGpuSupportDescription[] = "Enable Crostini GPU support.";
2975
Nicholas Verne89be53b2019-03-27 23:08:322976const char kCrostiniUsbAllowUnsupportedName[] =
2977 "Crostini Usb Allow Unsupported";
2978const char kCrostiniUsbAllowUnsupportedDescription[] =
2979 "Allow mounting unsupported Usb devices in Crostini. At your own risk. "
2980 "To enable, Crostini Usb Support must also be enabled.";
2981
Josh Pratt57cea392018-10-30 02:59:062982const char kCrostiniUsbSupportName[] = "Crostini Usb Support";
2983const char kCrostiniUsbSupportDescription[] =
2984 "Enable mounting Usb devices in Crostini.";
2985
Josh Nohle2f82dcc2018-12-17 23:11:232986const char kCryptAuthV2EnrollmentName[] = "CryptAuth v2 Enrollment";
2987const char kCryptAuthV2EnrollmentDescription[] =
2988 "Use the CryptAuth v2 Enrollment protocol.";
2989
Daniele Castagna893d822e2019-03-08 21:37:112990const char kDisableExplicitDmaFencesName[] = "Disable explicit dma-fences";
2991const char kDisableExplicitDmaFencesDescription[] =
2992 "Always rely on implicit syncrhonization between GPU and display "
2993 "controller instead of using dma-fences explcitily when available.";
2994
Sammie Quonef6b4882017-09-14 16:50:052995const char kDisableTabletAutohideTitlebarsName[] =
2996 "Disable autohide titlebars in tablet mode";
2997const char kDisableTabletAutohideTitlebarsDescription[] =
2998 "Disable tablet mode autohide titlebars functionality. The user will be "
2999 "able to see the titlebar in tablet mode.";
3000
Ahmed Fakhry4f567e692018-10-16 15:51:083001const char kDoubleTapToZoomInTabletModeName[] =
3002 "Double-tap to zoom in tablet mode";
3003const char kDoubleTapToZoomInTabletModeDescription[] =
3004 "If Enabled, double tapping in webpages while in tablet mode will zoom the "
3005 "page.";
3006
Matthew Mourgoscf22b4b2019-03-06 23:46:393007const char kEnableAppGridGhostName[] = "App Grid Ghosting";
3008const char kEnableAppGridGhostDescription[] =
3009 "Enables ghosting during an item drag in launcher.";
3010
Daniel Zhang01399072018-08-16 22:28:203011const char kEnableAppListSearchAutocompleteName[] =
3012 "App List Search Autocomplete";
3013const char kEnableAppListSearchAutocompleteDescription[] =
3014 "Allow App List search box to autocomplete queries for Google searches and "
3015 "apps.";
3016
Vladislav Kaznacheevaa213a02018-10-29 17:54:283017const char kEnableAppDataSearchName[] = "Enable app data search in launcher";
3018const char kEnableAppDataSearchDescription[] =
3019 "Allow launcher search to access data available through Firebase App "
3020 "Indexing";
3021
Lei Zhang0a318af2018-11-14 02:19:463022const char kEnableArcUnifiedAudioFocusName[] =
Becca Hughes34415e82018-10-05 18:47:373023 "Enable unified audio focus on ARC";
Lei Zhang0a318af2018-11-14 02:19:463024const char kEnableArcUnifiedAudioFocusDescription[] =
Becca Hughes34415e82018-10-05 18:47:373025 "If audio focus is enabled in Chrome then this will delegate audio focus "
3026 "control in Android apps to Chrome.";
3027
Yue Liebaa9952018-12-07 21:41:263028const char kEnableAssistantAppSupportName[] = "Enable Assistant App Support";
3029const char kEnableAssistantAppSupportDescription[] =
3030 "Enable the Assistant App Support feature";
3031
Meilin Wangb57f92f2019-04-19 04:27:103032const char kEnableAssistantKeyRemappingName[] =
3033 "Enable Assistant Key Remapping";
3034const char kEnableAssistantKeyRemappingDescription[] =
3035 "Allow Assistant key remapping in the keyboard settings.";
3036
Xiaohui Chenb523747b2019-03-14 23:38:323037const char kEnableAssistantLauncherIntegrationName[] =
3038 "Assistant & Launcher integration";
3039const char kEnableAssistantLauncherIntegrationDescription[] =
3040 "Combine Launcher search with the power of Assistant to provide the most "
3041 "useful answer for each query. Requires Assistant to be enabled.";
3042
3043const char kEnableAssistantVoiceMatchName[] = "Enable Assistant Voice Match";
3044const char kEnableAssistantVoiceMatchDescription[] =
3045 "Enable the Assistant Voice Match feature";
3046
Alex Newcomere5a362c2019-05-02 19:31:353047const char kEnableBackgroundBlurName[] = "Enable background blur.";
3048const char kEnableBackgroundBlurDescription[] =
3049 "Enables background blur for the Launcher and Shelf.";
3050
Lei Zhang0ca70ea2018-09-07 17:51:013051const char kEnableChromeOsAccountManagerName[] = "Enable Account Manager";
3052const char kEnableChromeOsAccountManagerDescription[] =
Kushagra Sinha8a181fc2018-08-20 17:15:493053 "Enables the Chrome OS Account Manager";
3054
Alexander Alekseev38e1e0a2018-11-08 22:48:483055const char kEnableDiscoverAppName[] = "Enable Discover App";
3056const char kEnableDiscoverAppDescription[] =
3057 "Enable Discover App icon in launcher.";
3058
Sam McNally201fbf94e2018-07-04 03:15:203059const char kEnableDriveFsName[] = "Enable DriveFS";
3060const char kEnableDriveFsDescription[] =
3061 "Enables use of the new DriveFS-based Drive sync client.";
3062
Brett Wilson7b44537e2017-08-18 01:38:283063const char kEnableEncryptionMigrationName[] =
3064 "Enable encryption migration of user data";
3065const char kEnableEncryptionMigrationDescription[] =
3066 "If enabled and the device supports ARC, the user will be asked to update "
3067 "the encryption of user data when the user signs in.";
vabr0215a8e2017-03-28 12:47:343068
Xiaohui Chenfb0943e2018-10-16 22:44:373069const char kEnableGoogleAssistantName[] = "Enable Google Assistant";
3070const char kEnableGoogleAssistantDescription[] =
3071 "Enable an experimental Assistant implementation that will work on all "
3072 "Chromebooks.";
3073
Xiaohui Chenf4283f32018-11-26 20:02:503074const char kEnableGoogleAssistantDspName[] =
3075 "Enable Google Assistant with hardware-based hotword";
3076const char kEnableGoogleAssistantDspDescription[] =
3077 "Enable an experimental feature that uses hardware-based hotword detection "
3078 "for Assistant. Only a limited number of devices have this type of "
3079 "hardware support.";
3080
Xiaohui Chenc3baca42018-11-30 19:29:373081const char kEnableGoogleAssistantStereoInputName[] =
3082 "Enable Google Assistant with stereo audio input";
3083const char kEnableGoogleAssistantStereoInputDescription[] =
3084 "Enable an experimental feature that uses stereo audio input for hotword "
3085 "and voice to text detection in Google Assistant.";
3086
Qiang Xu045aff222018-05-21 23:21:013087const char kEnableHomeLauncherName[] = "Enable home launcher";
3088const char kEnableHomeLauncherDescription[] =
3089 "Enable home launcher in tablet mode.";
3090
Andrew Moylan97585272019-02-19 19:01:223091const char kEnableMyFilesVolumeName[] = "Enable MyFiles as Volume";
3092const char kEnableMyFilesVolumeDescription[] =
3093 "Enables use of MyFiles as a read/write volume. This should be only "
3094 "used for testing or for trying to restore the previous Downloads content.";
3095
Sammie Quon248ccef2018-08-28 23:00:013096const char kEnableOobeRecommendAppsScreenName[] =
3097 "Enable OOBE Recommend Apps Screen";
3098const char kEnableOobeRecommendAppsScreenDescription[] =
3099 "Enable the Recommend Apps Screen in OOBE which allows user to install apps"
3100 "from other devices";
3101
Vladislav Kaznacheevaa213a02018-10-29 17:54:283102const char kEnablePlayStoreSearchName[] = "Enable Play Store search";
3103const char kEnablePlayStoreSearchDescription[] =
3104 "Enable Play Store search in launcher.";
3105
Jazz Xu2e5886662018-12-14 00:38:483106const char kEnableVideoPlayerNativeControlsName[] =
3107 "Enable native controls in video player app";
3108const char kEnableVideoPlayerNativeControlsDescription[] =
3109 "Enable native controls in video player app";
3110
Lei Zhang0ca70ea2018-09-07 17:51:013111const char kEnableZeroStateSuggestionsName[] = "Enable Zero State Suggetions";
3112const char kEnableZeroStateSuggestionsDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013113 "Enable Zero State Suggestions feature in Launcher, which will show "
Vladislav Kaznacheevaa213a02018-10-29 17:54:283114 "suggestions when launcher search box is active with an empty query";
Sammie Quon248ccef2018-08-28 23:00:013115
Akihiro Ota3ff6f8a2019-01-18 17:43:043116const char kExperimentalAccessibilityChromeVoxLanguageSwitchingName[] =
3117 "Enable experimental ChromeVox language switching.";
3118const char kExperimentalAccessibilityChromeVoxLanguageSwitchingDescription[] =
3119 "Enable ChromeVox language switching, which changes ChromeVox's "
3120 "output language upon detection of new language.";
3121
Akihiro Ota000c5e8a2019-03-29 21:48:013122const char kExperimentalAccessibilityChromeVoxRichTextIndicationName[] =
3123 "Enable experimental ChromeVox rich text indication.";
3124const char kExperimentalAccessibilityChromeVoxRichTextIndicationDescription[] =
3125 "Enable ChromeVox rich text indication, which automatically notifies the "
3126 "user of text styling.";
3127
Alex Danilo284b4482019-04-02 09:20:173128const char kFileManagerFeedbackPanelDescription[] =
3129 "Enable new feedback panel in the Files app.";
3130const char kFileManagerFeedbackPanelName[] = "Files App. feedback panel";
3131
Akihiro Ota000c5e8a2019-03-29 21:48:013132const char kFileManagerTouchModeName[] = "Files App. touch mode";
3133const char kFileManagerTouchModeDescription[] =
3134 "Touchscreen-specific interactions of the Files app.";
3135
3136const char kFirstRunUiTransitionsName[] =
3137 "Animated transitions in the first-run tutorial";
3138const char kFirstRunUiTransitionsDescription[] =
3139 "Transitions during first-run tutorial are animated.";
3140
Brett Wilson7b44537e2017-08-18 01:38:283141const char kForceEnableStylusToolsName[] = "Force enable stylus features";
3142const char kForceEnableStylusToolsDescription[] =
3143 "Forces display of the stylus tools menu in the shelf and the stylus "
3144 "section in settings, even if there is no attached stylus device.";
3145
Sheng-Hao Tsao874327a2019-04-30 08:13:003146const char kForceUseChromeCameraName[] =
3147 "Open Chrome camera app when clicking on camera icon";
3148const char kForceUseChromeCameraDescription[] =
3149 "Open Chrome camera app when clicking on camera icon instead of "
3150 "GoogleCamera app, regardless of whether Android runtime is enabled.";
3151
Andrew Moylan97585272019-02-19 19:01:223152const char kFsNosymfollowName[] =
3153 "Prevent symlink traversal on user-supplied filesystems.";
3154const char kFsNosymfollowDescription[] =
3155 "Causes user-supplied filesystems to be mounted with the 'nosymfollow'"
3156 " option, so the chromuimos LSM denies symlink traversal on the"
3157 " filesystem.";
3158
Brett Wilson7b44537e2017-08-18 01:38:283159const char kGestureTypingName[] = "Gesture typing for the virtual keyboard.";
3160const char kGestureTypingDescription[] =
3161 "Enable/Disable gesture typing option in the settings page for the virtual "
3162 "keyboard.";
3163
Becca Hughes71465532019-04-12 19:18:553164const char kHideArcMediaNotificationsName[] = "Hide ARC media notifications";
3165const char kHideArcMediaNotificationsDescription[] =
3166 "Hides media notifications for ARC apps. Requires "
3167 "#enable-media-session-notifications to be enabled.";
3168
Leo Zhang49c34d22019-04-02 09:57:593169const char kImeInputLogicFstName[] = "Enable FST Input Logic on IME";
3170const char kImeInputLogicFstDescription[] =
3171 "Enable FST Input Logic to replace the IME legacy input logic on NaCl";
3172
Andrew Moylan97585272019-02-19 19:01:223173const char kImeServiceName[] = "Enable IME service";
3174const char kImeServiceDescription[] =
3175 "Enable IME service to provide the IME functionality instead of NaCl";
3176
Ahmed Fakhry15d707e2019-02-22 23:54:213177const char kListAllDisplayModesName[] = "List all display modes";
3178const char kListAllDisplayModesDescription[] =
3179 "Enables listing all external displays' modes in the display settings.";
3180
Megumi Hattori5a0d4182018-03-06 11:09:503181const char kLockScreenNotificationName[] = "Lock screen notification";
3182const char kLockScreenNotificationDescription[] =
3183 "Enable notifications on the lock screen.";
3184
Becca Hughes71465532019-04-12 19:18:553185const char kMediaSessionNotificationsName[] = "Media session notifications";
3186const char kMediaSessionNotificationsDescription[] =
3187 "Shows notifications for media sessions showing the currently playing "
3188 "media and providing playback controls";
3189
Brett Wilson7b44537e2017-08-18 01:38:283190const char kMemoryPressureThresholdName[] =
3191 "Memory discard strategy for advanced pressure handling";
3192const char kMemoryPressureThresholdDescription[] =
3193 "Memory discarding strategy to use";
3194const char kConservativeThresholds[] =
3195 "Conservative memory pressure release strategy";
3196const char kAggressiveCacheDiscardThresholds[] =
3197 "Aggressive cache release strategy";
3198const char kAggressiveTabDiscardThresholds[] =
3199 "Aggressive tab release strategy";
3200const char kAggressiveThresholds[] =
3201 "Aggressive tab and cache release strategy";
3202
vabr0215a8e2017-03-28 12:47:343203const char kNetworkPortalNotificationName[] =
3204 "Notifications about captive portals";
vabr0215a8e2017-03-28 12:47:343205const char kNetworkPortalNotificationDescription[] =
3206 "If enabled, notification is displayed when device is connected to a "
3207 "network behind captive portal.";
3208
Anand K. Mistrydb5e0102018-10-04 04:24:003209const char kNewZipUnpackerName[] = "ZIP Archiver (unpacking)";
Brett Wilson7b44537e2017-08-18 01:38:283210const char kNewZipUnpackerDescription[] =
Anand K. Mistrydb5e0102018-10-04 04:24:003211 "Use the ZIP Archiver for mounting/unpacking ZIP files";
vabr0215a8e2017-03-28 12:47:343212
Brett Wilson7b44537e2017-08-18 01:38:283213const char kPhysicalKeyboardAutocorrectName[] = "Physical keyboard autocorrect";
3214const char kPhysicalKeyboardAutocorrectDescription[] =
3215 "Enable physical keyboard autocorrect for US keyboard, which can provide "
3216 "suggestions as typing on physical keyboard.";
vabr0215a8e2017-03-28 12:47:343217
3218const char kPrinterProviderSearchAppName[] =
3219 "Chrome Web Store Gallery app for printer drivers";
vabr0215a8e2017-03-28 12:47:343220const char kPrinterProviderSearchAppDescription[] =
3221 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:193222 "searches Chrome Web Store for extensions that support printing to a USB "
3223 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:343224
Andrew Moylan97585272019-02-19 19:01:223225const char kSchedulerConfigurationName[] = "Scheduler Configuration";
3226const char kSchedulerConfigurationDescription[] =
3227 "Instructs the OS to use a specific scheduler configuration setting.";
3228const char kSchedulerConfigurationConservative[] = "Conservative";
3229const char kSchedulerConfigurationPerformance[] = "Performance";
3230
James Cook0ba192bf2017-12-01 20:53:113231const char kShowTapsName[] = "Show taps";
3232const char kShowTapsDescription[] =
3233 "Draws a circle at each touch point, which makes touch points more obvious "
3234 "when projecting or mirroring the display. Similar to the Android OS "
3235 "developer option.";
3236
3237const char kShowTouchHudName[] = "Show HUD for touch points";
3238const char kShowTouchHudDescription[] =
3239 "Shows a trail of colored dots for the last few touch points. Pressing "
3240 "Ctrl-Alt-I shows a heads-up display view in the top-left corner. Helps "
3241 "debug hardware issues that generate spurious touch events.";
3242
Shu Chen4144c3a2019-04-11 00:54:163243const char kMojoImfName[] = "Mojo-based IMF to bridge the client and IME";
3244const char kMojoImfDescription[] =
3245 "Makes the system UI (ash) as the bridge between the client and the IME via"
3246 " mojo APIs. This can only take effect if the flag \"single-process-masn\" "
3247 "is enabled.";
3248
Jorge Gil5a8ccde2018-07-10 01:46:213249const char kSmartTextSelectionName[] = "Smart Text Selection";
3250const char kSmartTextSelectionDescription[] =
3251 "Shows quick actions for text "
3252 "selections in the context menu.";
3253
Bailey Berro6c989672019-04-11 19:19:203254const char kStreamlinedUsbPrinterSetupName[] =
3255 "Streamlined USB Printer Setup Flow";
3256const char kStreamlinedUsbPrinterSetupDescription[] =
3257 "Automatically sets up capable USB printers when plugged in. Shows a "
3258 "notification with the setup result.";
3259
Brett Wilson7b44537e2017-08-18 01:38:283260const char kTetherName[] = "Instant Tethering";
3261const char kTetherDescription[] =
3262 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
3263 "phone to share its Internet connection with this device.";
stanisc14bed0b132017-05-10 17:46:373264
Brett Wilson7b44537e2017-08-18 01:38:283265const char kTouchscreenCalibrationName[] =
3266 "Enable/disable touchscreen calibration option in material design settings";
3267const char kTouchscreenCalibrationDescription[] =
3268 "If enabled, the user can calibrate the touch screen displays in "
3269 "chrome://settings/display.";
yhanadac5bff5b2017-05-18 06:37:093270
Qiang Xu045aff222018-05-21 23:21:013271const char kUiDevToolsName[] = "Enable native UI inspection";
3272const char kUiDevToolsDescription[] =
3273 "Enables inspection of native UI elements. For local inspection use "
3274 "chrome://inspect#other";
3275
Mitsuru Oshima63d3f2a2017-08-23 00:12:113276// Force UI Mode
3277const char kUiModeName[] = "Force Ui Mode";
3278const char kUiModeDescription[] =
Elly Fong-Jonesf4c15772019-01-31 17:40:063279 "This flag can be used to force a certain mode on to a chromebook, "
3280 "despite its current orientation. \"Tablet\" means that the "
3281 "chromebook will act as if it were in tablet mode. \"Clamshell\" "
3282 "means that the chromebook will act as if it were in clamshell "
3283 "mode. \"Auto\" means that the chromebook will alternate between "
3284 "the two, based on its orientation.";
Min Chenfd25cd22018-11-06 01:50:513285const char kUiModeTablet[] = "Tablet";
Mitsuru Oshima63d3f2a2017-08-23 00:12:113286const char kUiModeClamshell[] = "Clamshell";
3287const char kUiModeAuto[] = "Auto (default)";
3288
Andrew Moylan97585272019-02-19 19:01:223289const char kUiShowCompositedLayerBordersName[] =
3290 "Show UI composited layer borders";
3291const char kUiShowCompositedLayerBordersDescription[] =
3292 "Show border around composited layers created by UI.";
3293const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
3294const char kUiShowCompositedLayerBordersSurface[] = "Surface";
3295const char kUiShowCompositedLayerBordersLayer[] = "Layer";
3296const char kUiShowCompositedLayerBordersAll[] = "All";
3297
3298const char kUiSlowAnimationsName[] = "Slow UI animations";
3299const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
Mattias Nissler6bb633f2019-02-13 23:41:463300
Sonny Sasaka7fecfeda2018-07-11 23:47:553301const char kUnfilteredBluetoothDevicesName[] = "Unfiltered Bluetooth devices";
3302const char kUnfilteredBluetoothDevicesDescription[] =
3303 "Shows all Bluetooth devices in UI (System Tray/Settings Page.)";
3304
Allen Webbcdc8e69d2018-09-12 20:36:003305const char kUsbguardName[] = "Block new USB devices at the lock screen.";
3306const char kUsbguardDescription[] =
3307 "Prevents newly connected USB devices from operating at the lock screen"
3308 " until Chrome OS is unlocked to protect against malicious USB devices."
3309 " Already connected USB devices will continue to function.";
3310
Andrew Moylan651220212019-02-19 22:50:143311const char kUserActivityPredictionMlServiceName[] =
3312 "ML Service Smart Dim model";
3313const char kUserActivityPredictionMlServiceDescription[] =
3314 "Uses the new ML Service model for user activity prediction (Smart Dim).";
3315
Andres Calderon Jaramillo43c0e8a2018-08-21 02:46:233316const char kVaapiJpegImageDecodeAccelerationName[] =
3317 "VA-API JPEG decode acceleration for images";
3318const char kVaapiJpegImageDecodeAccelerationDescription[] =
3319 "Enable or disable decode acceleration of JPEG images (as opposed to camera"
3320 " captures) using the VA-API.";
3321
Brett Wilson7b44537e2017-08-18 01:38:283322const char kVirtualKeyboardName[] = "Virtual Keyboard";
3323const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
3324
Brett Wilson7b44537e2017-08-18 01:38:283325const char kWakeOnPacketsName[] = "Wake On Packets";
3326const char kWakeOnPacketsDescription[] =
3327 "Enables waking the device based on the receipt of some network packets.";
orenb21da031c2017-06-30 21:24:203328
Rob Schonbergercf5aeeea2019-02-27 16:57:373329const char kEnableAppReinstallZeroStateName[] =
3330 "Enable Zero State App Reinstall Suggestions.";
3331const char kEnableAppReinstallZeroStateDescription[] =
3332 "Enable Zero State App Reinstall Suggestions feature in launcher, which "
3333 "will show app reinstall recommendations at end of zero state list.";
3334
Tim Song988f7092019-03-01 03:13:393335extern const char kAshNotificationStackingBarRedesignName[] =
3336 "Redesigned notification stacking bar";
3337extern const char kAshNotificationStackingBarRedesignDescription[] =
3338 "Enables the redesigned notification stacking bar UI with a \"Clear all\" "
3339 "button.";
3340
Roman Sorokin6812e0082019-04-01 10:12:573341extern const char kInSessionPasswordChangeName[] =
3342 "Enable user password change in the session";
3343
3344extern const char kInSessionPasswordChangeDescription[] =
3345 "Let user change both their IdP password and Chromebook password on "
3346 "chrome://password-change page.";
3347
yhanadac5bff5b2017-05-18 06:37:093348#endif // defined(OS_CHROMEOS)
3349
Collin Baker75a29462019-03-13 19:57:313350// All views-based platforms --------------------------------------------------
3351
3352#if defined(TOOLKIT_VIEWS)
3353
Sajad Maysamc30d6f82019-03-19 22:52:503354const char kEnableMDRoundedCornersOnDialogsName[] =
Dana Fried4e177f32019-04-11 23:46:463355 "MD corners on secondary UI";
Sajad Maysamc30d6f82019-03-19 22:52:503356const char kEnableMDRoundedCornersOnDialogsDescription[] =
Dana Fried4e177f32019-04-11 23:46:463357 "Increases corner radius on secondary UI.";
Sajad Maysamc30d6f82019-03-19 22:52:503358
Collin Baker75a29462019-03-13 19:57:313359const char kInstallableInkDropName[] = "Use InstallableInkDrop where supported";
3360const char kInstallableInkDropDescription[] =
3361 "InstallableInkDrop is part of an InkDrop refactoring effort. This enables "
3362 "the pilot implementation where available.";
3363
3364#endif // defined(TOOLKIT_VIEWS)
3365
Brett Wilson7b44537e2017-08-18 01:38:283366// Random platform combinations -----------------------------------------------
3367
3368#if defined(OS_WIN) || defined(OS_LINUX)
3369
3370const char kEnableInputImeApiName[] = "Enable Input IME API";
3371const char kEnableInputImeApiDescription[] =
3372 "Enable the use of chrome.input.ime API.";
3373
3374#endif // defined(OS_WIN) || defined(OS_LINUX)
3375
Jiajia Qindb252e92019-01-28 11:47:483376#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_CHROMEOS)
3377
3378const char kWebGL2ComputeContextName[] = "WebGL 2.0 Compute";
3379const char kWebGL2ComputeContextDescription[] =
3380 "Enable the use of WebGL 2.0 Compute API.";
3381
3382#endif // defined(OS_WIN) || defined(OS_LINUX) || defined(OS_CHROMEOS)
3383
lanwei83f54452018-06-21 23:51:043384#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3385
3386const char kDirectManipulationStylusName[] = "Direct Manipulation Stylus";
3387const char kDirectManipulationStylusDescription[] =
3388 "If enabled, Chrome will scroll web pages on stylus drag.";
3389
3390#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3391
Henrik Grunell63f2d772018-12-06 17:25:203392#if defined(OS_MACOSX) || defined(OS_CHROMEOS)
3393
3394const char kForceEnableSystemAecName[] = "Force enable system AEC";
3395const char kForceEnableSystemAecDescription[] =
3396 "Use system echo canceller instead of WebRTC echo canceller. If there is "
3397 "no system echo canceller available, getUserMedia with echo cancellation "
3398 "enabled will fail.";
3399
3400#endif // defined(OS_MACOSX) || defined(OS_CHROMEOS)
3401
David Bienvenuc713d502019-02-07 23:46:323402#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_CHROMEOS)
3403
3404const char kWebContentsOcclusionName[] = "Enable occlusion of web contents";
3405const char kWebContentsOcclusionDescription[] =
3406 "If enabled, web contents will behave as hidden when it is occluded by "
3407 "other windows.";
3408
3409#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_CHROMEOS)
3410
Brett Wilson7b44537e2017-08-18 01:38:283411// Feature flags --------------------------------------------------------------
3412
Lei Zhang0a318af2018-11-14 02:19:463413#if defined(DCHECK_IS_CONFIGURABLE)
3414const char kDcheckIsFatalName[] = "DCHECKs are fatal";
3415const char kDcheckIsFatalDescription[] =
3416 "By default Chrome will evaluate in this build, but only log failures, "
3417 "rather than crashing. If enabled, DCHECKs will crash the calling process.";
3418#endif // defined(DCHECK_IS_CONFIGURABLE)
3419
Brett Wilson7b44537e2017-08-18 01:38:283420#if BUILDFLAG(ENABLE_VR)
3421
Alex Cooper151b596e2019-02-21 01:26:573422const char kWebXrOrientationSensorDeviceName[] = "Orientation sensors for XR";
3423const char kWebXrOrientationSensorDeviceDescription[] =
3424 "Allow use of orientation sensors for XR if present";
3425
Bill Orr103ed272018-02-14 21:23:053426#if BUILDFLAG(ENABLE_OCULUS_VR)
3427const char kOculusVRName[] = "Oculus hardware support";
3428const char kOculusVRDescription[] =
3429 "If enabled, Chrome will use Oculus devices for VR (supported only on "
3430 "Windows 10 or later).";
3431#endif // ENABLE_OCULUS_VR
3432
Bill Orr49527562017-11-22 16:58:483433#if BUILDFLAG(ENABLE_OPENVR)
3434const char kOpenVRName[] = "OpenVR hardware support";
3435const char kOpenVRDescription[] =
Bill Orr5056e692018-01-17 02:08:073436 "If enabled, Chrome will use OpenVR devices for VR (supported only on "
3437 "Windows 10 or later).";
Bill Orr49527562017-11-22 16:58:483438#endif // ENABLE_OPENVR
3439
Bill Orrd2af6bd52019-01-23 02:50:243440#if BUILDFLAG(ENABLE_WINDOWS_MR)
3441const char kWindowsMixedRealityName[] = "Windows Mixed Reality support";
3442const char kWindowsMixedRealityDescription[] =
3443 "If enabled, Chrome will use Windows Mixed Reality devices for VR"
3444 " (supported only on Windows 10 or later).";
3445#endif // ENABLE_WINDOWS_MR
3446
Bill Orrecfb9fe2018-10-02 00:11:103447#if BUILDFLAG(ENABLE_ISOLATED_XR_SERVICE)
3448const char kXRSandboxName[] = "XR device sandboxing";
3449const char kXRSandboxDescription[] =
3450 "If enabled, Chrome will host VR APIs in a restricted process on desktop.";
3451#endif // ENABLE_ISOLATED_XR_SERVICE
3452
Brett Wilson7b44537e2017-08-18 01:38:283453#endif // ENABLE_VR
3454
Derek Schuff71d9a922019-04-24 21:36:003455#if BUILDFLAG(ENABLE_NACL)
3456const char kNaclName[] = "Native Client";
3457const char kNaclDescription[] =
3458 "Support Native Client for all web applications, even those that were not "
3459 "installed from the Chrome Web Store.";
3460#endif // ENABLE_NACL
3461
Lei Zhang802201c2018-11-14 18:16:283462#if BUILDFLAG(ENABLE_PLUGINS)
3463
dstockwellcc759202019-01-11 00:42:123464#if defined(OS_CHROMEOS)
3465const char kPdfAnnotations[] = "PDF Annotations";
Weidong Guo577fe9ac2019-01-28 19:58:103466const char kPdfAnnotationsDescription[] = "Enable annotating PDF documents.";
dstockwellcc759202019-01-11 00:42:123467#endif // defined(OS_CHROMEOS)
3468
Lei Zhang802201c2018-11-14 18:16:283469const char kPdfFormSaveName[] = "Save PDF Forms";
3470const char kPdfFormSaveDescription[] =
3471 "Enable saving PDFs with filled form data.";
3472
3473const char kPdfIsolationName[] = "PDF Isolation";
3474const char kPdfIsolationDescription[] =
3475 "Render PDF files from different origins in different plugin processes.";
3476
3477#endif // BUILDFLAG(ENABLE_PLUGINS)
3478
Brett Wilson7b44537e2017-08-18 01:38:283479#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3480
3481const char kAutofillCreditCardUploadName[] =
3482 "Enable offering upload of Autofilled credit cards";
3483const char kAutofillCreditCardUploadDescription[] =
3484 "Enables a new option to upload credit cards to Google Payments for sync "
3485 "to all Chrome devices.";
3486
3487#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3488
Collin Baker0a45d6a2018-12-20 19:21:503489#if BUILDFLAG(ENABLE_DESKTOP_IN_PRODUCT_HELP)
3490
3491const char kReopenTabInProductHelpName[] = "Reopen tab in-product help";
3492const char kReopenTabInProductHelpDescription[] =
3493 "Enable in-product help that guides a user to reopen a tab if it looks "
3494 "like they accidentally closed it.";
3495
3496#endif // BUILDFLAG(ENABLE_DESKTOP_IN_PRODUCT_HELP)
3497
Tomas Popela253a5832019-01-14 17:22:103498#if defined(WEBRTC_USE_PIPEWIRE)
3499
3500extern const char kWebrtcPipeWireCapturerName[] = "WebRTC PipeWire support";
3501extern const char kWebrtcPipeWireCapturerDescription[] =
3502 "When enabled the WebRTC will use the PipeWire multimedia server for "
3503 "capturing the desktop content on the Wayland display server.";
3504
3505#endif // #if defined(WEBRTC_USE_PIPEWIRE)
3506
Stephen Chenneyde6e5c82019-01-21 01:56:043507const char kAvoidFlashBetweenNavigationName[] =
3508 "Enable flash avoidance between same-origin navigations";
3509const char kAvoidFlahsBetweenNavigationDescription[] =
3510 "Enables experimental flash avoidance when navigating between pages "
3511 "in the same origin. This feature is in the implementation stages and "
3512 "currently has no effect.";
3513
Brett Wilson7b44537e2017-08-18 01:38:283514// ============================================================================
3515// Don't just add flags to the end, put them in the right section in
3516// alphabetical order just like the header file.
3517// ============================================================================
3518
vabr0215a8e2017-03-28 12:47:343519} // namespace flag_descriptions