blob: 899950017cc34ab5de854b13ea7ad72be5ba8bbc [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
Hirokazu Honda732d3e622019-06-12 01:13:4421const char kAcceleratedVideoEncodeName[] = "Hardware-accelerated video encode";
22const char kAcceleratedVideoEncodeDescription[] =
23 "Hardware-accelerated video encode where available.";
24
Brett Wilsonf27ff602017-07-07 22:28:4725const char kAllowInsecureLocalhostName[] =
26 "Allow invalid certificates for resources loaded from localhost.";
27const char kAllowInsecureLocalhostDescription[] =
28 "Allows requests to localhost over HTTPS even when an invalid certificate "
29 "is presented.";
30
Julian Pastarmov885e8ed2019-05-03 14:24:2431const char kAllowPopupsDuringPageUnloadName[] =
32 "Allows a page to show popups during its unloading";
33const char kAllowPopupsDuringPageUnloadDescription[] =
34 "When the flag is set to enabled, pages are allowed to show popups while "
35 "they are being unloaded.";
36
Kunihiko Sakamoto4d407982018-07-10 04:56:2937const char kAllowSignedHTTPExchangeCertsWithoutExtensionName[] =
38 "Allow Signed HTTP Exchange certificates without extension";
39const char kAllowSignedHTTPExchangeCertsWithoutExtensionDescription[] =
40 "Accepts Origin-Signed HTTP Exchanges to be signed with certificates "
Tsuyoshi Horo13d7e2d2019-04-18 07:32:4341 "that do not have CanSignHttpExchangesDraft extension. Warning: Enabling "
42 "this may pose a security risk.";
Kunihiko Sakamoto4d407982018-07-10 04:56:2943
Tsuyoshi Horo3bab99c2019-05-20 11:05:1444const char kEnableSignedExchangeSubresourcePrefetchName[] =
45 "Enable Signed Exchange subresource prefetching";
46const char kEnableSignedExchangeSubresourcePrefetchDescription[] =
47 "When enabled, the distributors of signed exchanges can let Chrome know "
48 "alternative signed exchange subresources by setting \"alternate\" link "
49 "header. Chrome will prefetch the alternate signed exchange subresources "
50 "and will load them if the publisher of the main signed exchange has set "
Tsuyoshi Horo5e61f162019-05-20 12:24:1251 "\"allowed-alt-sxg\" link header in the signed inner response of the "
Tsuyoshi Horo3bab99c2019-05-20 11:05:1452 "main signed exchange.";
53
Tsuyoshi Horo636e8652019-05-31 03:34:0854const char kEnableSignedExchangePrefetchCacheForNavigationsName[] =
55 "Enable Signed Exchange prefetch cache for navigations";
56const char kEnableSignedExchangePrefetchCacheForNavigationsDescription[] =
57 "When enabled, the prefetched signed exchanges is stored to a prefetch "
58 "cache attached to the frame. The body of the inner response is stored as "
59 "a blob and the verification process of the signed exchange is skipped for "
60 "the succeeding navigation.";
61
Hongchan Choi370d3af2019-05-20 20:56:5862const char kAudioWorkletRealtimeThreadName[] =
63 "Use realtime priority thread for Audio Worklet";
64const char kAudioWorkletRealtimeThreadDescription[] =
65 "Run Audio Worklet operation on a realtime priority thread for better "
66 "audio stream stability.";
67
Kyle Horimoto7854a032019-04-03 02:51:0768const char kUpdatedCellularActivationUiName[] =
69 "Updated Cellular Activation UI";
70const char kUpdatedCellularActivationUiDescription[] =
71 "Enables the updated cellular activation UI.";
72
Kyle Horimoto2d838ec2018-12-26 19:41:1673const char kUseMessagesGoogleComDomainName[] = "Use messages.google.com domain";
74const char kUseMessagesGoogleComDomainDescription[] =
75 "Use the messages.google.com domain as part of the \"Messages\" "
76 "feature under \"Connected Devices\" settings.";
77
Kyle Horimoto874554a2019-01-31 00:52:0978const char kUseMessagesStagingUrlName[] = "Use Messages staging URL";
79const char kUseMessagesStagingUrlDescription[] =
80 "Use the staging server as part of the \"Messages\" feature under "
81 "\"Connected Devices\" settings.";
82
Azeem Arshad373e1ea72019-01-23 02:16:0083const char kEnableMessagesWebPushName[] =
84 "Web push in Android Messages integration";
85const char kEnableMessagesWebPushDescription[] =
86 "Use web push for background notificatons in Chrome OS integration "
87 "with Android Messages for Web";
88
Jazz Xu32261b542019-06-13 20:11:2789const char kAndroidPictureInPictureAPIName[] =
90 "Picture-in-Picture Web API for Android";
91const char kAndroidPictureInPictureAPIDescription[] =
92 "Enable Picture-in-Picture Web API for Android";
93
Kamila472a5942018-11-26 09:48:2794const char kAndroidSiteSettingsUIRefreshName[] =
95 "Android Site Settings UI changes.";
96const char kAndroidSiteSettingsUIRefreshDescription[] =
Kamila02f7e072018-10-08 09:50:2897 "Enable the new UI "
98 "changes in Site Settings in Android.";
99
Ioana Pandelef9689a062018-06-22 15:35:51100const char kAutomaticPasswordGenerationName[] = "Automatic password generation";
101const char kAutomaticPasswordGenerationDescription[] =
102 "Allow Chrome to offer to generate passwords when it detects account "
103 "creation pages.";
104
dalykc936eb612019-08-14 11:46:47105const char kDnsOverHttpsName[] = "Secure DNS lookups";
106const char kDnsOverHttpsDescription[] =
107 "Enables DNS over HTTPS. When this feature is enabled, your browser may "
108 "try to use a secure HTTPS connection to look up the addresses of websites "
109 "and other web resources.";
110
Jinsuk Kim00e52be2019-03-21 02:26:40111const char kDrawVerticallyEdgeToEdgeName[] =
112 "Draw contents vertically from edge to edge.";
113const char kDrawVerticallyEdgeToEdgeDescription[] =
114 "Draw contents vertically from edge to edge.";
115
sebsgca14b092018-12-07 16:56:15116extern const char kAutofillAlwaysShowServerCardsInSyncTransportName[] =
117 "AlwaysShowServerCardsInSyncTransport";
118extern const char kAutofillAlwaysShowServerCardsInSyncTransportDescription[] =
119 "Always show server cards when in sync transport mode for wallet data";
120
Hui(Andy) Wufbebf91d22019-02-01 01:23:54121extern const char kAutofillAssistantChromeEntryName[] =
122 "AutofillAssistantChromeEntry";
123extern const char kAutofillAssistantChromeEntryDescription[] =
124 "Initiate autofill assistant from within Chrome.";
125
Jordan Demeulenaere9404ba232019-07-01 12:57:16126extern const char kAutofillAssistantDirectActionsName[] =
127 "Autofill Assistant direct actions";
128extern const char kAutofillAssistantDirectActionsDescription[] =
129 "When enabled, expose direct actions from the Autofill Assistant.";
130
Roger McFarlane2eceba982018-05-18 01:37:11131const char kAutofillCacheQueryResponsesName[] =
132 "Cache Autofill Query Responses";
133const char kAutofillCacheQueryResponsesDescription[] =
134 "When enabled, autofill will cache the responses it receives from the "
135 "crowd-sourced field type prediction server.";
136
Jeffrey Cohen05cdafa392018-08-15 20:49:17137const char kAutofillEnableCompanyNameName[] =
138 "Enable Autofill Company Name field";
139const char kAutofillEnableCompanyNameDescription[] =
140 "When enabled, Company Name fields will be auto filled";
141
siyua9a66d1c2019-03-19 18:26:56142const char kAutofillEnableLocalCardMigrationForNonSyncUserName[] =
143 "Enable local card migration flow for non-syncing users";
144const char kAutofillEnableLocalCardMigrationForNonSyncUserDescription[] =
145 "When enabled, the local card migration flow will be enabled for users who "
146 "have signed in but not enabled Chrome Sync.";
147
siyua1d492612019-03-14 09:27:45148const char kAutofillEnableToolbarStatusChipName[] =
149 "Move Autofill omnibox icons next to the profile avatar icon";
150const char kAutofillEnableToolbarStatusChipDescription[] =
151 "When enabled, Autofill data related icon will be shown in the status "
152 "chip next to the profile avatar icon in the toolbar.";
sebsge35b762c2018-03-29 20:33:27153
Caitlin Fischer43edd90a2019-05-01 13:24:30154const char kAutofillEnforceMinRequiredFieldsForHeuristicsName[] =
155 "Autofill Enforce Min Required Fields For Heuristics";
156const char kAutofillEnforceMinRequiredFieldsForHeuristicsDescription[] =
157 "When enabled, autofill will generally require a form to have at least 3 "
158 "fields before allowing heuristic field-type prediction to occur.";
159
160const char kAutofillEnforceMinRequiredFieldsForQueryName[] =
161 "Autofill Enforce Min Required Fields For Query";
162const char kAutofillEnforceMinRequiredFieldsForQueryDescription[] =
163 "When enabled, autofill will generally require a form to have at least 3 "
164 "fields before querying the autofill server for field-type predictions.";
165
166const char kAutofillEnforceMinRequiredFieldsForUploadName[] =
167 "Autofill Enforce Min Required Fields For Upload";
168const char kAutofillEnforceMinRequiredFieldsForUploadDescription[] =
169 "When enabled, autofill will generally require a form to have at least 3 "
170 "fillable fields before uploading field-type votes for that form.";
171
Jared Saul63f598a12019-03-22 23:40:26172const char kAutofillNoLocalSaveOnUnmaskSuccessName[] =
173 "Remove the option to save local copies of unmasked server cards";
174const char kAutofillNoLocalSaveOnUnmaskSuccessDescription[] =
175 "When enabled, the server card unmask prompt will not include the checkbox "
176 "to also save the card locally on the current device upon success.";
177
Anne Lime625362e2018-08-29 03:13:25178const char kAutofillNoLocalSaveOnUploadSuccessName[] =
Jared Saul6f58ada2019-03-07 20:41:23179 "Disable saving local copy of uploaded card when credit card upload "
180 "succeeds";
Anne Lime625362e2018-08-29 03:13:25181const char kAutofillNoLocalSaveOnUploadSuccessDescription[] =
182 "When enabled, no local copy of server card will be saved when credit card "
183 "upload succeeds.";
184
Sebastien Lalancette1545950b2019-04-08 14:43:11185const char kAutofillOffNoServerDataName[] = "Autofill Off No Server Data";
186const char kAutofillOffNoServerDataDescription[] =
187 "Disables Autofill for fields with autocomplete off that have no "
188 "crowd-sourced evidence that Autofill would be helpful.";
189
Parastoo Geranmayeh0f5ebbc2019-01-21 21:01:09190const char kAutofillProfileClientValidationName[] =
191 "Autofill Validates Profiles By Client";
192const char kAutofillProfileClientValidationDescription[] =
193 "Allows autofill to validate profiles on the client side";
194
Parastoo Geranmayeh25fccec22019-01-29 18:38:13195const char kAutofillProfileServerValidationName[] =
196 "Autofill Uses Server Validation";
197const char kAutofillProfileServerValidationDescription[] =
198 "Allows autofill to use server side validation";
199
Caitlin Fischer6d609542019-05-01 21:59:21200const char kAutofillPruneSuggestionsName[] = "Autofill Prune Suggestions";
201const char kAutofillPruneSuggestionsDescription[] =
202 "Further limits the number of suggestions in the Autofill dropdown.";
203
Parastoo Geranmayeha1895c12019-04-25 16:43:38204const char kAutofillRejectCompanyBirthyearName[] =
205 "Autofill Rejects Invalid Company Names";
206const char kAutofillRejectCompanyBirthyearDescription[] =
207 "Autofill rejects using non-verified company names that are in the "
208 "format of a birthyear.";
209
Moe Ahmadid3ddfcb2018-04-20 19:51:08210const char kAutofillRestrictUnownedFieldsToFormlessCheckoutName[] =
211 "Restrict formless form extraction";
212const char kAutofillRestrictUnownedFieldsToFormlessCheckoutDescription[] =
213 "Restrict extraction of formless forms to checkout flows";
214
Roger McFarlanee193ab122018-11-22 20:55:07215const char kAutofillRichMetadataQueriesName[] =
216 "Autofill - Rich metadata queries (Canary/Dev only)";
217const char kAutofillRichMetadataQueriesDescription[] =
218 "Transmit rich form/field metadata when querying the autofill server. "
219 "This feature only works on the Canary and Dev channels.";
220
sebsg48d53acd92019-01-17 18:11:16221const char kAutofillSettingsSplitByCardTypeName[] =
222 "Autofill settings split by card type";
223const char kAutofillSettingsSplitByCardTypeDescription[] =
224 "When enabled, the cards in the payments settings will be split into two "
225 "lists based on where they are stored.";
226
Caitlin Fischer43edd90a2019-05-01 13:24:30227const char kAutofillUseImprovedLabelDisambiguationName[] =
228 "Autofill Uses Improved Label Disambiguation";
229const char kAutofillUseImprovedLabelDisambiguationDescription[] =
230 "When enabled, the Autofill dropdown's suggestions' labels are displayed "
231 "using the improved disambiguation format.";
232
Jia0175adae2019-05-15 00:21:25233const char kAutoScreenBrightnessName[] = "Auto Screen Brightness model";
234const char kAutoScreenBrightnessDescription[] =
235 "Uses Auto Screen Brightness model to adjust screen brightness based on "
236 "ambient light";
237
Brett Wilsonf27ff602017-07-07 22:28:47238const char kBrowserTaskSchedulerName[] = "Task Scheduler";
239const char kBrowserTaskSchedulerDescription[] =
240 "Enables redirection of some task posting APIs to the task scheduler.";
241
Carlos IL766fbc882018-02-16 02:34:52242const char kBundledConnectionHelpName[] = "Bundled Connection Help";
243const char kBundledConnectionHelpDescription[] =
Carlos ILaafcd73a2018-07-10 20:08:37244 "Enables or disables redirection to local help content for users who get "
245 "an interstitial after clicking the 'Learn More' link on a previous "
246 "interstitial.";
Carlos IL766fbc882018-02-16 02:34:52247
Takashi Toyoshimaff977072019-08-16 10:34:13248const char kBundledHTTPExchangesName[] = "Bundled HTTP Exchanges";
249const char kBundledHTTPExchangesDescription[] =
250 "Enables experimental supports for Bundled HTTP Exchanges core navigation.";
251
Brett Wilsonf27ff602017-07-07 22:28:47252const char kBypassAppBannerEngagementChecksName[] =
253 "Bypass user engagement checks";
254const char kBypassAppBannerEngagementChecksDescription[] =
255 "Bypasses user engagement checks for displaying app banners, such as "
256 "requiring that users have visited the site before and that the banner "
257 "hasn't been shown recently. This allows developers to test that other "
258 "eligibility requirements for showing app banners, such as having a "
259 "manifest, are met.";
260
Evan Liu24f7902a2019-06-14 21:38:33261const char kCaptionSettingsName[] = "Caption Settings";
262const char kCaptionSettingsDescription[] =
263 "Enable the ability to customize captions.";
264
Amber Won478561d2017-08-19 01:02:59265const char kClickToOpenPDFName[] = "Click to open embedded PDFs";
266const char kClickToOpenPDFDescription[] =
267 "When the PDF plugin is unavailable, show a click-to-open placeholder for "
268 "embedded PDFs.";
269
rbpotter9990eb42018-07-12 05:34:59270const char kCloudPrinterHandlerName[] = "Enable Cloud Printer Handler";
271const char kCloudPrinterHandlerDescription[] =
272 "Use the new cloud printer handler for communicating with the cloud "
273 "print server, instead of the cloud print interface in the Print "
274 "Preview WebUI.";
275
Madeleine Barowsky266406d92019-08-12 19:20:15276const char kDecodeLossyWebPImagesToYUVName[] = "YUV Decoding for WebP";
277const char kDecodeLossyWebPImagesToYUVDescription[] =
278 "Decode and render lossy WebP images from YUV instead of RGB. "
279 "You must also have GPU rasterization or OOP rasterization.";
280
Tanja Gornakb0985dd2018-10-11 17:24:40281const char kFCMInvalidationsName[] =
282 "Enable invalidations delivery via new FCM based protocol";
283const char kFCMInvalidationsDescription[] =
284 "Use the new FCM-based protocol for deliveling invalidations";
285
Yining Wangdedf0762019-02-19 20:20:29286const char kFocusMode[] = "Focus Mode";
287const char kFocusModeDescription[] =
288 "If enabled, allows the user to switch to Focus Mode";
289
Dominik Röttschesb7d7ad02019-06-17 18:21:27290const char kFontSrcLocalMatchingName[] =
291 "Match @font-face { src: local(<name>) } names by PostScript and full font "
292 "name.";
293const char kFontSrcLocalMatchingDescription[] =
294 "Match local() src attributes in @font-face declarations precisely by "
295 "PostScript name and full font name instead of the previous behavior of "
296 "matching those unspecifically as family names.";
297
Christopher Cameronceb8727d2017-09-07 23:53:16298const char kForceColorProfileSRGB[] = "sRGB";
299const char kForceColorProfileP3[] = "Display P3 D65";
300const char kForceColorProfileColorSpin[] = "Color spin with gamma 2.4";
Sunny Sachanandani71e474a2019-06-11 02:32:03301const char kForceColorProfileSCRGBLinear[] =
302 "scRGB linear (HDR where available)";
303const char kForceColorProfileHDR10[] = "HDR10 (HDR where available)";
Christopher Cameronceb8727d2017-09-07 23:53:16304
305const char kForceColorProfileName[] = "Force color profile";
306const char kForceColorProfileDescription[] =
307 "Forces Chrome to use a specific color profile instead of the color "
308 "of the window's current monitor, as specified by the operating system.";
309
Brett Wilsonf27ff602017-07-07 22:28:47310const char kCompositedLayerBordersName[] = "Composited render layer borders";
311const char kCompositedLayerBordersDescription[] =
312 "Renders a border around composited Render Layers to help debug and study "
313 "layer compositing.";
314
Lily Chenb22952e2019-06-06 18:56:23315const char kCookieDeprecationMessagesName[] = "Cookie deprecation messages";
316const char kCookieDeprecationMessagesDescription[] =
317 "Show messages in the DevTools console about upcoming deprecations that "
318 "would affect sent/received cookies.";
319
320const char kCookiesWithoutSameSiteMustBeSecureName[] =
Lily Cheneb304c8f2019-04-25 23:37:45321 "Cookies without SameSite must be secure";
Lily Chenb22952e2019-06-06 18:56:23322const char kCookiesWithoutSameSiteMustBeSecureDescription[] =
Lily Cheneb304c8f2019-04-25 23:37:45323 "If enabled, cookies without SameSite restrictions must also be Secure. If "
324 "a cookie without SameSite restrictions is set without the Secure "
Lily Chend3bf638d2019-05-03 16:54:25325 "attribute, it will be rejected. This flag only has an effect if "
Lily Cheneb304c8f2019-04-25 23:37:45326 "\"SameSite by default cookies\" is also enabled.";
327
Brett Wilsonf27ff602017-07-07 22:28:47328const char kCreditCardAssistName[] = "Credit Card Assisted Filling";
329const char kCreditCardAssistDescription[] =
330 "Enable assisted credit card filling on certain sites.";
331
Thanh Le659cb102017-12-20 22:00:19332const char kDataSaverServerPreviewsName[] = "Data Saver Server Previews";
333const char kDataSaverServerPreviewsDescription[] =
334 "Allow the Data Reduction Proxy to serve previews.";
Brett Wilsonf27ff602017-07-07 22:28:47335
Brett Wilsonf27ff602017-07-07 22:28:47336const char kDebugPackedAppName[] = "Debugging for packed apps";
337const char kDebugPackedAppDescription[] =
338 "Enables debugging context menu options such as Inspect Element for packed "
339 "applications.";
340
Brett Wilsonf27ff602017-07-07 22:28:47341const char kDebugShortcutsName[] = "Debugging keyboard shortcuts";
342const char kDebugShortcutsDescription[] =
343 "Enables additional keyboard shortcuts that are useful for debugging Ash.";
344
345const char kDeviceDiscoveryNotificationsName[] =
346 "Device Discovery Notifications";
347const char kDeviceDiscoveryNotificationsDescription[] =
348 "Device discovery notifications on local network.";
349
350const char kDevtoolsExperimentsName[] = "Developer Tools experiments";
351const char kDevtoolsExperimentsDescription[] =
352 "Enables Developer Tools experiments. Use Settings panel in Developer "
353 "Tools to toggle individual experiments.";
354
355const char kDisableAudioForDesktopShareName[] =
356 "Disable Audio For Desktop Share";
357const char kDisableAudioForDesktopShareDescription[] =
358 "With this flag on, desktop share picker window will not let the user "
359 "choose whether to share audio.";
360
Yue Ru Suna50a80f2019-02-08 05:02:58361const char kDisableBestEffortTasksName[] = "Skip best effort tasks";
362const char kDisableBestEffortTasksDescription[] =
363 "With this flag on, tasks of the lowest priority will not be executed "
364 "until shutdown. The queue of low priority tasks can increase memory usage."
365 "Also, while it should be possible to use Chrome almost normally with this "
366 "flag, it is expected that some non-visible operations such as writing "
367 "user data to disk, cleaning caches, reporting metrics or updating "
368 "components won't be performed until shutdown.";
369
Arthur Sonzogni721f48e2018-10-31 17:10:02370const char kDisableIpcFloodingProtectionName[] =
371 "Disable IPC flooding protection";
372const char kDisableIpcFloodingProtectionDescription[] =
373 "Some javascript code can flood the inter process communication system. "
374 "This protection limits the rate (calls/seconds) at which theses function "
arthursonzogni443bd0ef2018-11-27 16:12:53375 "can be used. This flag disables the protection. This flag is deprecated "
376 "and will be removed in Chrome 76. Use the switch "
377 "--disable-ipc-flooding-protection instead.";
Arthur Sonzogni721f48e2018-10-31 17:10:02378
Chris Palmer917bc052018-03-14 19:28:31379const char kDisablePushStateThrottleName[] = "Disable pushState throttling";
380const char kDisablePushStateThrottleDescription[] =
381 "Disables throttling of history.pushState and history.replaceState method "
arthursonzogni443bd0ef2018-11-27 16:12:53382 "calls. This flag is deprecated and will be removed in Chrome 76. Use the "
383 "switch --disable-ipc-flooding-protection instead.";
Chris Palmer917bc052018-03-14 19:28:31384
Brett Wilsonf27ff602017-07-07 22:28:47385const char kDisallowDocWrittenScriptsUiName[] =
386 "Block scripts loaded via document.write";
387const char kDisallowDocWrittenScriptsUiDescription[] =
388 "Disallows fetches for third-party parser-blocking scripts inserted into "
389 "the main frame via document.write.";
390
Christopher Thompson2ffffa2c2018-05-18 23:06:37391const char kDisallowUnsafeHttpDownloadsName[] =
392 "Block unsafe downloads over insecure connections";
393const char kDisallowUnsafeHttpDownloadsNameDescription[] =
394 "Disallows downloads of unsafe files (files that can potentially execute "
395 "code), where the final download origin or any origin in the redirect "
396 "chain is insecure.";
397
Min Qin3a3945262019-05-30 01:49:00398const char kDownloadResumptionWithoutStrongValidatorsName[] =
399 "Allow download resumption without strong validators";
400const char kDownloadResumptionWithoutStrongValidatorsDescription[] =
401 "Allows download to resume instead of restarting from the begining if "
402 "strong validators are not present.";
403
Dominic Mazzoniaa4b97d2019-04-03 22:43:48404const char kEnableAccessibilityImageDescriptionsName[] =
405 "Accessibility Image Descriptions";
406const char kEnableAccessibilityImageDescriptionsDescription[] =
407 "Enables screen reader users to request computer-generated descriptions "
408 "of unlabeled images using the page context menu.";
409
Dominic Mazzoni8ac98962018-05-25 05:44:55410const char kEnableAccessibilityObjectModelName[] = "Accessibility Object Model";
411const char kEnableAccessibilityObjectModelDescription[] =
412 "Enables experimental support for Accessibility Object Model APIs "
413 "that are in development.";
414
Ramin Halavati8aad5b22019-07-22 12:52:21415const char kEnableAmbientAuthenticationInIncognitoName[] =
416 "Enable Ambient Authentication in Incognito mode";
417const char kEnableAmbientAuthenticationInIncognitoDescription[] =
418 "Enables ambient authentication in Incognito mode. This flag may be "
419 "overriden by policies.";
420
421const char kEnableAmbientAuthenticationInGuestSessionName[] =
422 "Enable Ambient Authentication in Guest session.";
423const char kEnableAmbientAuthenticationInGuestSessionDescription[] =
424 "Enables ambient authentication in Guest session. This flag may be "
425 "overriden by policies.";
426
Becca Hughesac86cd442019-01-09 23:49:54427const char kEnableAudioFocusEnforcementName[] = "Audio Focus Enforcement";
428const char kEnableAudioFocusEnforcementDescription[] =
429 "Enables enforcement of a single media session having audio focus at "
430 "any one time. Requires #enable-media-session-service to be enabled too.";
431
Sebastien Lalancette5daaf4a2019-01-11 22:09:25432const char kEnableAutocompleteDataRetentionPolicyName[] =
433 "Enable automatic cleanup of expired Autocomplete entries.";
434const char kEnableAutocompleteDataRetentionPolicyDescription[] =
435 "If enabled, will clean-up Autocomplete entries whose last use date is "
436 "older than the current retention policy. These entries will be "
437 "permanently deleted from the client on startup, and will be unlinked "
438 "from sync.";
439
Florian Uunk8c428ea2018-07-18 11:12:52440const char kEnableAutofillAccountWalletStorageName[] =
441 "Enable the account data storage for autofill";
442const char kEnableAutofillAccountWalletStorageDescription[] =
443 "Enable the ephemeral storage for account data for autofill.";
444
Shanfeng Zhang19c16562017-10-17 02:30:40445const char kEnableAutofillCreditCardAblationExperimentDisplayName[] =
446 "Credit card autofill ablation experiment.";
447const char kEnableAutofillCreditCardAblationExperimentDescription[] =
448 "If enabled, credit card autofill suggestions will not display.";
449
Manas Verma7e5b391b2019-04-09 02:08:53450const char kEnableAutofillCreditCardAuthenticationName[] =
451 "Allow using platform authenticators to retrieve server cards";
452const char kEnableAutofillCreditCardAuthenticationDescription[] =
453 "When enabled, users will be given the option to use a platform "
454 "authenticator (if available) to verify card ownership when retrieving "
455 "credit cards from Google Payments.";
456
Brett Wilsonf27ff602017-07-07 22:28:47457const char kEnableAutofillCreditCardLastUsedDateDisplayName[] =
458 "Display the last used date of a credit card in autofill.";
459const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
460 "If enabled, display the last used date of a credit card in autofill.";
461
Jared Saulbc672a072018-06-16 05:22:12462const char kEnableAutofillCreditCardUploadEditableCardholderNameName[] =
463 "Make cardholder name editable in dialog during credit card upload";
464const char kEnableAutofillCreditCardUploadEditableCardholderNameDescription[] =
465 "If enabled, in certain situations when offering credit card upload to "
466 "Google Payments, the cardholder name can be edited within the "
467 "offer-to-save dialog, which is prefilled with the name from the signed-in "
468 "Google Account.";
469
Hao Zhang1be9c262018-11-03 00:23:51470const char kEnableAutofillCreditCardUploadEditableExpirationDateName[] =
471 "Make expiration date editable in dialog during credit card upload";
472const char kEnableAutofillCreditCardUploadEditableExpirationDateDescription[] =
473 "If enabled, if a credit card's expiration date was not detected when "
474 "offering card upload to Google Payments, the offer-to-save dialog "
475 "displays an expiration date selector.";
476
siyua29899832019-06-07 19:42:12477const char kEnableAutofillCreditCardUploadFeedbackName[] =
478 "Enable feedback for credit card upload flow";
479const char kEnableAutofillCreditCardUploadFeedbackDescription[] =
480 "When enabled, if credit card upload succeeds, the avatar button will "
481 "show a highlight, otherwise the icon will be updated and if it is "
482 "clicked, the save card failure bubble will be shown.";
483
Sujie Zhu74dd439e2019-04-27 03:23:39484const char kEnableAutofillDoNotMigrateUnsupportedLocalCardsName[] =
485 "Prevents local card migration on local cards from unsupported networks";
486const char kEnableAutofillDoNotMigrateUnsupportedLocalCardsDescription[] =
487 "If enabled, local cards from unsupported networks will not be offered "
488 "local card migration.";
489
Hao Zhang0c4f18d2019-04-05 01:20:25490const char kEnableAutofillImportDynamicFormsName[] =
491 "Allow credit card import from dynamic forms after entry";
492const char kEnableAutofillImportDynamicFormsDescription[] =
493 "If enabled, offers credit card save for dynamic forms from the page after "
494 "information has been entered into them.";
495
Anne Lim30351782019-03-01 01:57:16496const char kEnableAutofillLocalCardMigrationUsesStrikeSystemV2Name[] =
497 "Enable limit on offering to migrate local cards repeatedly using the "
498 "updated strike system implementation";
499const char kEnableAutofillLocalCardMigrationUsesStrikeSystemV2Description[] =
500 "If enabled, uses the updated strike system implementation to prevent "
501 "offering prompts for local card migration if it has repeatedly been "
502 "ignored, declined, or failed.";
503
tmartinocd414732018-02-12 19:01:01504const char kEnableAutofillNativeDropdownViewsName[] =
505 "Display Autofill Dropdown Using Views";
506const char kEnableAutofillNativeDropdownViewsDescription[] =
507 "If enabled, the Autofill Dropdown will be built natively using Views, "
508 "rather than painted directly to a canvas.";
509
siashah1ddbd592019-07-11 00:17:16510const char kEnableAutofillSaveCardShowNoThanksName[] =
511 "Show explicit decline option in credit card save prompts";
512const char kEnableAutofillSaveCardShowNoThanksDescription[] =
513 "If enabled, adds a [No thanks] button to credit card save prompts.";
514
siyuaa92bc942019-05-24 20:57:33515const char kEnableAutofillSaveCreditCardUsesImprovedMessagingName[] =
516 "Enable new title and button label for credit card upload bubble";
517const char kEnableAutofillSaveCreditCardUsesImprovedMessagingDescription[] =
518 "If enabled, four variations of new messaging will be used in credit card "
519 "upload bubble.";
520
siyuad573455f2019-08-06 22:39:26521const char kEnableAutofillUpdatedCardUnmaskPromptUiName[] =
522 "Enable new card unmask prompt UI";
523const char kEnableAutofillUpdatedCardUnmaskPromptUiDescription[] =
524 "If enabled, shows the updated card unmask prompt when performing CVC "
525 "verification.";
526
Doug Arnett32e3e012019-07-11 16:45:17527const char kEnableDeferAllScriptName[] = "DeferAllScript previews";
528const char kEnableDeferAllScriptDescription[] =
529 "Enable deferring synchronous script on slow pages.";
530
Tarun Bansalfb3069d32019-07-19 03:28:04531const char kEnableDeferAllScriptWithoutOptimizationHintsName[] =
532 "Skip checking optimization hints for Defer Script previews";
533const char kEnableDeferAllScriptWithoutOptimizationHintsDescription[] =
534 "Skips checking optimization hints for Defer Script previews and assumes "
535 "that the ECT trigger threshold is set to 4G (which is otherwise provided "
536 "by the optimization hints). Rest of the checks are still executed.";
537
Tarun Bansal56c92932019-04-01 17:58:36538const char kEnableSaveDataName[] = "Enables save data feature";
539const char kEnableSaveDataDescription[] =
540 "Enables save data feature. May cause user's traffic to be proxied via "
541 "Google's data reduction proxy.";
542
Ramin Halavati7dbb0722019-02-15 05:33:49543const char kEnableFilesystemInIncognitoName[] = "Filesystem API in Incognito";
544const char kEnableFilesystemInIncognitoDescription[] =
545 "Enable Filesystem API in incognito mode.";
546
Doug Arnett08b4067b2017-10-12 20:14:44547const char kEnableNoScriptPreviewsName[] = "NoScript previews";
548
549const char kEnableNoScriptPreviewsDescription[] =
550 "Enable disabling JavaScript on some pages on slow networks.";
551
Thanh Le2c279fbc2017-11-21 01:25:40552const char kDataReductionProxyServerAlternative1[] = "Use alt. server config 1";
553const char kDataReductionProxyServerAlternative2[] = "Use alt. server config 2";
554const char kDataReductionProxyServerAlternative3[] = "Use alt. server config 3";
555const char kDataReductionProxyServerAlternative4[] = "Use alt. server config 4";
556const char kDataReductionProxyServerAlternative5[] = "Use alt. server config 5";
557const char kDataReductionProxyServerAlternative6[] = "Use alt. server config 6";
558const char kDataReductionProxyServerAlternative7[] = "Use alt. server config 7";
559const char kDataReductionProxyServerAlternative8[] = "Use alt. server config 8";
560const char kDataReductionProxyServerAlternative9[] = "Use alt. server config 9";
561const char kDataReductionProxyServerAlternative10[] =
562 "Use alt. server config 10";
rajendrantcfa60ba2018-10-30 09:16:54563const char kEnableDataReductionProxyNetworkServiceName[] =
564 "Data reduction proxy with network service";
565const char kEnableDataReductionProxyNetworkServiceDescription[] =
566 "Enable data reduction proxy when network service is enabled";
Brett Wilsonf27ff602017-07-07 22:28:47567const char kEnableDataReductionProxyServerExperimentName[] =
568 "Use an alternative Data Saver back end configuration.";
569const char kEnableDataReductionProxyServerExperimentDescription[] =
570 "Enable a different approach to saving data by configuring the back end "
571 "server";
572
Matt Giucad4870432017-11-24 01:04:38573const char kEnableDesktopPWAsName[] = "Desktop PWAs";
574const char kEnableDesktopPWAsDescription[] =
575 "Experimental windowing and install banner treatment for Progressive Web "
576 "Apps on desktop platforms. Implies #enable-experimental-app-banners.";
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17577
Alan Cuttere50ce412019-07-12 05:26:08578extern const char kDesktopPWAsLocalUpdatingName[] =
579 "Desktop PWAs local updating";
580extern const char kDesktopPWAsLocalUpdatingDescription[] =
581 "Enable installed PWAs to update their app manifest data when the site "
582 "manifest data has changed.";
583
Alan Cutter1816c9d2019-02-11 02:20:07584const char kDesktopPWAsOmniboxInstallName[] =
585 "Desktop PWAs installable from the omnibox";
586const char kDesktopPWAsOmniboxInstallDescription[] =
587 "When on a site that passes PWA installation requirements show a button in "
588 "the omnibox for installing it.";
589
Christopher Lame66b7812018-09-26 01:49:24590const char kEnableSystemWebAppsName[] = "System Web Apps";
591const char kEnableSystemWebAppsDescription[] =
592 "Experimental system for using the Desktop PWA framework for running System"
593 "Apps (e.g Settings, Discover).";
594
David Benjamin570460e2018-10-16 06:01:29595const char kEnforceTLS13DowngradeName[] = "TLS 1.3 downgrade hardening";
596const char kEnforceTLS13DowngradeDescription[] =
597 "This option enables the TLS 1.3 downgrade hardening mechanism. This "
598 "hardens TLS 1.3 connections while remaining compatible with TLS 1.0 "
599 "through 1.2 connections. Firewalls and proxies that do not function when "
600 "this is enabled do not implement TLS 1.0 through 1.2 correctly or "
601 "securely. They must be fixed by vendors.";
602
Steven Valdez89a44ea92019-05-01 15:18:49603const char kEnableTLS13EarlyDataName[] = "TLS 1.3 Early Data";
604const char kEnableTLS13EarlyDataDescription[] =
605 "This option enables TLS 1.3 Early Data, allowing GET requests to be sent "
606 "during the handshake when resuming a connection to a compatible TLS 1.3 "
607 "server.";
608
Wenjie Shid38245192019-07-11 16:20:50609const char kWinrtSensorsImplementationName[] = "WinRT Sensor Implementation";
610const char kWinrtSensorsImplementationDescription[] =
611 "Enables usage of the Windows.Devices.Sensors WinRT APIs on Windows for "
612 "sensors";
613
Brett Wilsonf27ff602017-07-07 22:28:47614const char kEnableGenericSensorName[] = "Generic Sensor";
615const char kEnableGenericSensorDescription[] =
Mikhail Pozdnyakov73373a62017-08-24 17:31:25616 "Enables motion sensor classes based on Generic Sensor API, i.e. "
617 "Accelerometer, LinearAccelerationSensor, Gyroscope, "
618 "AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
619
620const char kEnableGenericSensorExtraClassesName[] =
621 "Generic Sensor Extra Classes";
622const char kEnableGenericSensorExtraClassesDescription[] =
623 "Enables an extra set of sensor classes based on Generic Sensor API, which "
624 "expose previously unavailable platform features, i.e. AmbientLightSensor "
625 "and Magnetometer interfaces.";
Brett Wilsonf27ff602017-07-07 22:28:47626
Vikas Soni78daa632019-01-12 01:32:52627const char kEnableGpuServiceLoggingName[] = "Enable gpu service logging";
628const char kEnableGpuServiceLoggingDescription[] =
629 "Enable printing the actual GL driver calls.";
630
Victor Hugo Vianna Silva8cc3ddf2019-05-22 15:47:35631const char kEnableHistoryFaviconsGoogleServerQueryName[] =
632 "Enable History Favicons Google Server Query";
633const char kEnableHistoryFaviconsGoogleServerQueryDescription[] =
634 "Allow retrieving favicons of non-local entries in the history WebUIs and "
635 "the recent tabs menu using a Google server instead of Sync.";
636
David Bokan911bded2018-11-27 23:23:32637const char kEnableImplicitRootScrollerName[] = "Implicit Root Scroller";
638const char kEnableImplicitRootScrollerDescription[] =
639 "Enables implicitly choosing which scroller on a page is the 'root "
640 "scroller'. i.e. The one that gets special features like URL bar movement, "
641 "overscroll glow, rotation anchoring, etc.";
642
Robert Ogdence8c9572018-10-08 23:08:48643const char kEnableLitePageServerPreviewsName[] = "Lite Page Server Previews";
644const char kEnableLitePageServerPreviewsDescription[] =
Doug Arnett9c1f87562018-12-14 00:56:39645 "Enable showing Lite Page Previews served from a Previews Server."
646 "This feature will cause Chrome to redirect eligible navigations "
Robert Ogdence8c9572018-10-08 23:08:48647 "to a Google-owned domain that serves a pre-rendered version of the "
Doug Arnett9c1f87562018-12-14 00:56:39648 "original page. Also known as Lite Page Redirect Previews.";
Robert Ogdence8c9572018-10-08 23:08:48649
Ryan Sturm5e4d4422019-02-28 01:32:29650const char kEnableURLLoaderLitePageServerPreviewsName[] =
651 "Lite Page Server Previews using URL Loader";
652const char kEnableURLLoaderLitePageServerPreviewsDescription[] =
653 "Enable using a network service URL Loader for Lite Page Server Previews. "
654 "This requires enable-lite-page-server-previews to be enabled along with "
655 "network-service.";
656
Hiroshige Hayashizaki3ee116af2019-03-05 10:11:22657const char kBuiltInModuleAllName[] = "All experimental built-in modules";
658const char kBuiltInModuleAllDescription[] =
659 "Enable all experimental built-in modules, as well as built-in module "
660 "infrastructure and import maps. The syntax and the APIs exposed are "
661 "experimental and will change over time.";
662
663const char kBuiltInModuleInfraName[] = "Built-in module infra and import maps";
664const char kBuiltInModuleInfraDescription[] =
665 "Enable built-in module infrastructure and import maps. Individual "
666 "built-in modules should be enabled by other flags. The syntax and the "
667 "APIs exposed are experimental and will change over time.";
668
669const char kBuiltInModuleKvStorageName[] = "kv-storage built-in module";
670const char kBuiltInModuleKvStorageDescription[] =
671 "Enable kv-storage built-in module, as well as built-in module "
672 "infrastructure and import maps. The syntax and the APIs exposed are "
673 "experimental and will change over time.";
Hiroshige Hayashizaki99d5821e2018-05-02 04:25:41674
Charlene Yane75ce252019-05-22 17:56:32675const char kDownloadAutoResumptionNativeName[] =
676 "Enable download auto-resumption in native";
677const char kDownloadAutoResumptionNativeDescription[] =
678 "Enables download auto-resumption in native";
679
680const char kDragToPinTabsName[] = "Drag to Modify Tab Pinnedness";
681const char kDragToPinTabsDescription[] =
682 "Allows users to drag tabs between pinned and unpinned tabs to modify the "
683 "pinned state of the tab.";
684
Mason Freedc166cf12019-06-14 19:04:26685const char kEnableCSSBackdropFilterName[] = "Enable backdrop-filter";
686const char kEnableCSSBackdropFilterDescription[] =
687 "Enable a new CSS property called backdrop-filter.";
688
Vladimir Levin43758ecc2019-05-09 18:04:03689const char kEnableDisplayLockingName[] = "Enable Display Locking";
690const char kEnableDisplayLockingDescription[] =
691 "Enable Display Locking JavaScript API. The syntax and the APIs exposed "
692 "are experimental and may change.";
693
Ian Kilpatricke68ef11a2018-07-04 03:52:10694const char kEnableLayoutNGName[] = "Enable LayoutNG";
695const char kEnableLayoutNGDescription[] =
696 "Enable Blink's next generation layout engine.";
697
Scott Littled0fd2d002018-04-13 03:37:26698const char kEnableLazyFrameLoadingName[] = "Enable lazy frame loading";
699const char kEnableLazyFrameLoadingDescription[] =
Scott Littledf79081b2019-05-29 23:03:39700 "Defers the loading of iframes marked with the attribute 'loading=lazy' "
701 "until the page is scrolled down near them.";
Scott Littled0fd2d002018-04-13 03:37:26702
rajendrant793ff512018-08-10 17:07:59703const char kEnableLazyImageLoadingName[] = "Enable lazy image loading";
704const char kEnableLazyImageLoadingDescription[] =
Scott Littledf79081b2019-05-29 23:03:39705 "Defers the loading of images marked with the attribute 'loading=lazy' "
706 "until the page is scrolled down near them.";
rajendrant793ff512018-08-10 17:07:59707
Sidney San Martín9375b892017-09-09 00:29:54708const char kEnableMacMaterialDesignDownloadShelfName[] =
709 "Enable Material Design download shelf";
710
711const char kEnableMacMaterialDesignDownloadShelfDescription[] =
712 "If enabled, the download shelf uses Material Design.";
713
Becca Hughesac86cd442019-01-09 23:49:54714const char kEnableMediaSessionServiceName[] = "Media Session Service";
715const char kEnableMediaSessionServiceDescription[] =
716 "Enables the media session mojo service and internal media session "
717 "support.";
718
Brett Wilsonf27ff602017-07-07 22:28:47719const char kEnableNavigationTracingName[] = "Enable navigation tracing";
720const char kEnableNavigationTracingDescription[] =
721 "This is to be used in conjunction with the trace-upload-url flag. "
722 "WARNING: When enabled, Chrome will record performance data for every "
723 "navigation and upload it to the URL specified by the trace-upload-url "
724 "flag. The trace may include personally identifiable information (PII) "
725 "such as the titles and URLs of websites you visit.";
726
Bernhard Bauer5533f9912017-11-06 17:56:02727const char kEnableNetworkLoggingToFileName[] = "Enable network logging to file";
728const char kEnableNetworkLoggingToFileDescription[] =
729 "Enables network logging to a file named netlog.json in the user data "
730 "directory. The file can be imported into chrome://net-internals.";
731
John Abd-El-Malek8067cc02017-12-04 23:23:20732const char kEnableNetworkServiceInProcessName[] =
733 "Runs network service in-process";
734const char kEnableNetworkServiceInProcessDescription[] =
735 "Runs the network service in the browser process.";
736
Shakti Sahu5a046f62019-03-12 19:25:34737const char kEnableNewDownloadBackendName[] = "Enable new download backend";
738const char kEnableNewDownloadBackendDescription[] =
739 "Enables the new download backend that uses offline content provider";
740
Lucas Furukawa Gadani9f57e192019-04-05 14:56:10741const char kEnablePortalsName[] = "Enable Portals.";
742const char kEnablePortalsDescription[] =
743 "Portals are an experimental web platform feature that allows embedding"
744 " and seamless transitions between pages."
745 " See https://github.com/WICG/portals and https://wicg.github.io/portals/";
746
Tetsui Ohkuboc3eb87f72018-07-20 02:22:28747const char kEnableNotificationScrollBarName[] =
748 "Enable notification list scroll bar";
749const char kEnableNotificationScrollBarDescription[] =
750 "Enable the scroll bar of the notification list in Unified System Tray.";
751
Mitsuru Otsukae8304de2018-10-29 02:14:36752const char kEnableNotificationExpansionAnimationName[] =
753 "Enable notification expansion animations";
754const char kEnableNotificationExpansionAnimationDescription[] =
755 "Enable notification animations whenever the expansion state is toggled.";
756
Takashi Toyoshima2e01e692018-11-16 03:23:27757const char kEnableOutOfBlinkCorsName[] = "Out of blink CORS";
758const char kEnableOutOfBlinkCorsDescription[] =
Yutaka Hirano98be3272017-08-07 17:55:39759 "CORS handling logic is moved out of blink.";
760
Yutaka Hirano4903cf92019-07-17 04:30:31761const char kCrossOriginEmbedderPolicyName[] = "Cross Origin Embedder Policy";
762const char kCrossOriginEmbedderPolicyDescription[] =
763 "Enable Cross Origin Embedder Policy (https://mikewest.github.io/corpp/).";
764
Chris Halle952239e2018-11-06 06:49:52765const char kExperimentalAccessibilityFeaturesName[] =
766 "Experimental accessibility features";
767const char kExperimentalAccessibilityFeaturesDescription[] =
768 "Enable additional accessibility features in the Settings page.";
769
Katie D652135c2018-11-27 18:30:13770const char kExperimentalAccessibilityAutoclickName[] =
771 "Experimental automatic click features";
772const char kExperimentalAccessibilityAutoclickDescription[] =
773 "Enable additional features for automatic clicks.";
774
Chris Hall4a4225f62019-01-18 03:07:16775const char kExperimentalAccessibilityLanguageDetectionName[] =
776 "Experimental accessibility language detection";
777const char kExperimentalAccessibilityLanguageDetectionDescription[] =
778 "Enable language detection for in-page content which is then exposed to "
779 "accessiblity technologies such as screen readers.";
780
kylechar7051c092018-02-05 20:31:39781const char kVizDisplayCompositorName[] = "Viz Display Compositor (OOP-D)";
782const char kVizDisplayCompositorDescription[] =
783 "If enabled, the display compositor runs as part of the viz service in the"
784 "GPU process.";
785
kylechar33079262019-07-05 02:51:04786const char kVizHitTestName[] = "Viz Hit-test SurfaceLayer";
Xianda Sunfa2a35922019-04-15 19:01:28787const char kVizHitTestDescription[] =
kylechar33079262019-07-05 02:51:04788 "If enabled, event targeting uses hit-test data computed from the "
789 "SurfaceLayer.";
Ria Jiang6a129b982018-03-01 18:30:40790
Rahul Arakeri61a2ad272019-03-19 22:55:08791const char kCompositorThreadedScrollbarScrollingName[] =
Rahul Arakeriac87fb12019-05-14 00:07:22792 "Compositor threaded scrollbar scrolling";
Rahul Arakeri61a2ad272019-03-19 22:55:08793const char kCompositorThreadedScrollbarScrollingDescription[] =
794 "Enables pointer-based scrollbar scrolling on the compositor thread "
795 "instead of the main thread";
796
Alexei Filippov522a5222019-03-29 03:33:18797const char kMemlogName[] = "Chrome heap profiler start mode.";
798const char kMemlogDescription[] =
799 "Starts heap profiling service that records sampled memory allocation "
800 "profile having each sample attributed with a callstack. "
801 "The sampling resolution is controlled with --memlog-sampling-rate flag. "
802 "Recorded heap dumps can be obtained at chrome://tracing "
803 "[category:memory-infra] and chrome://memory-internals. This setting "
804 "controls which processes will be profiled since their start. To profile "
805 "any given process at a later time use chrome://memory-internals page.";
806const char kMemlogModeMinimal[] = "Browser and GPU";
807const char kMemlogModeAll[] = "All processes";
808const char kMemlogModeAllRenderers[] = "All renderers";
809const char kMemlogModeRendererSampling[] = "Single renderer";
810const char kMemlogModeBrowser[] = "Browser only";
811const char kMemlogModeGpu[] = "GPU only";
Alexei Filippov2e8bfee2019-03-07 21:51:27812
Alexei Filippov522a5222019-03-29 03:33:18813const char kMemlogSamplingRateName[] =
814 "Heap profiling sampling interval (in bytes).";
815const char kMemlogSamplingRateDescription[] =
816 "Heap profiling service uses Poisson process to sample allocations. "
817 "Default value for the interval between samples is 100000 (100KB). "
818 "This results in low noise for large and/or frequent allocations "
Alexei Filippov2e8bfee2019-03-07 21:51:27819 "[size * frequency >> 100KB]. This means that aggregate numbers [e.g. "
erikchen99bfce02018-02-14 20:29:22820 "total size of malloc-ed objects] and large and/or frequent allocations "
Alexei Filippov522a5222019-03-29 03:33:18821 "can be trusted with high fidelity. "
822 "Lower intervals produce higher samples resolution, but come at a cost of "
823 "higher performance overhead.";
824const char kMemlogSamplingRate10KB[] = "10KB";
825const char kMemlogSamplingRate50KB[] = "50KB";
826const char kMemlogSamplingRate100KB[] = "100KB";
827const char kMemlogSamplingRate500KB[] = "500KB";
828const char kMemlogSamplingRate1MB[] = "1MB";
829const char kMemlogSamplingRate5MB[] = "5MB";
erikchen8bc20d82018-02-14 03:21:51830
Alexei Filippov522a5222019-03-29 03:33:18831const char kMemlogStackModeName[] = "Heap profiling stack traces type.";
832const char kMemlogStackModeDescription[] =
833 "By default heap profiling service records native stacks. "
834 "A post-processing step is required to symbolize the stacks. "
835 "'Native with thread names' adds the thread name as the first frame of "
836 "each native stack. It's also possible to record a pseudo stack using "
837 "trace events as identifiers. It's also possible to do a mix of both.";
838const char kMemlogStackModeMixed[] = "Mixed";
839const char kMemlogStackModeNative[] = "Native";
840const char kMemlogStackModeNativeWithThreadNames[] = "Native with thread names";
841const char kMemlogStackModePseudo[] = "Trace events";
Erik Chen3303fd0232018-01-11 20:29:05842
F#m59d036e2017-09-13 07:22:17843const char kEnablePixelCanvasRecordingName[] = "Enable pixel canvas recording";
844const char kEnablePixelCanvasRecordingDescription[] =
845 "Pixel canvas recording allows the compositor to raster contents aligned "
846 "with the pixel and improves text rendering. This should be enabled when a "
847 "device is using fractional scale factor.";
848
Ella Gebee81c92018-08-14 15:51:09849const char kEnableResamplingInputEventsName[] =
850 "Enable resampling input events";
851const char kEnableResamplingInputEventsDescription[] =
852 "Predicts mouse and touch inputs position at rAF time based on previous "
853 "input";
854const char kEnableResamplingScrollEventsName[] =
855 "Enable resampling scroll events";
856const char kEnableResamplingScrollEventsDescription[] =
857 "Predicts the scroll amount at vsync time based on previous input";
858
Doug Arnettaa0bf202018-08-27 19:42:11859const char kEnableResourceLoadingHintsName[] = "Enable resource loading hints";
860const char kEnableResourceLoadingHintsDescription[] =
861 "Enable using server-provided resource loading hints to provide a preview "
862 "over slow network connections.";
863
Raphael Kubo da Costab72914b2019-03-13 09:20:39864const char kEnableSensorContentSettingName[] = "Sensor content setting";
865const char kEnableSensorContentSettingDescription[] =
866 "Enable UI in content settings to control access to the sensor APIs.";
867
Mohamed Amir Yosef0178fa892018-07-23 17:43:52868const char kEnableSyncUSSBookmarksName[] = "Enable USS for bookmarks sync";
869const char kEnableSyncUSSBookmarksDescription[] =
870 "Enables the new, experimental implementation of bookmark sync";
871
Maksim Moskvitin35b09c1bf2019-06-28 17:29:48872const char kEnableSyncUSSNigoriName[] = "Enable USS for sync encryption keys";
873const char kEnableSyncUSSNigoriDescription[] =
874 "Enables the new, experimental implementation of sync encryption keys";
875
Mohamed Amir Yosef3074dfc2019-02-06 18:34:43876const char kEnableSyncUSSPasswordsName[] = "Enable USS for passwords sync";
877const char kEnableSyncUSSPasswordsDescription[] =
878 "Enables the new, experimental implementation of passwords sync";
879
Mikel Astiz38837f82018-04-24 22:23:23880const char kEnableSyncUSSSessionsName[] = "Enable USS for sessions sync";
881const char kEnableSyncUSSSessionsDescription[] =
882 "Enables the new, experimental implementation of session sync (aka tab "
883 "sync).";
884
David Bokane9370c22019-02-14 15:19:58885const char kEnableTextFragmentAnchorName[] = "Enable Text Fragment Anchor.";
886const char kEnableTextFragmentAnchorDescription[] =
887 "Enables scrolling to text specified in URL's fragment.";
888
Brett Wilsonf27ff602017-07-07 22:28:47889const char kEnableUseZoomForDsfName[] =
890 "Use Blink's zoom for device scale factor.";
891const char kEnableUseZoomForDsfDescription[] =
892 "If enabled, Blink uses its zooming mechanism to scale content for device "
893 "scale factor.";
894const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
895const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
896const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
897
Patrick Noland8ee016e2018-01-24 11:44:53898const char kEnableScrollAnchorSerializationName[] =
899 "Scroll Anchor Serialization";
900const char kEnableScrollAnchorSerializationDescription[] =
901 "Save the scroll anchor and use it to restore the scroll position when "
902 "navigating.";
903
Brad Nelson5cd500e2018-01-04 00:50:19904const char kEnableSharedArrayBufferName[] =
905 "Experimental enabled SharedArrayBuffer support in JavaScript.";
906const char kEnableSharedArrayBufferDescription[] =
907 "Enable SharedArrayBuffer support in JavaScript.";
908
Brett Wilsonf27ff602017-07-07 22:28:47909const char kEnableWasmName[] = "WebAssembly structured cloning support.";
910const char kEnableWasmDescription[] =
911 "Enable web pages to use WebAssembly structured cloning.";
912
Lei Zhang0ca70ea2018-09-07 17:51:01913const char kEnableWebAuthenticationCableSupportName[] =
Kim Paulhamus92431372018-07-20 02:25:47914 "Web Authentication caBLE support";
Lei Zhang0ca70ea2018-09-07 17:51:01915const char kEnableWebAuthenticationCableSupportDescription[] =
Kim Paulhamus92431372018-07-20 02:25:47916 "Enable the cloud-assisted pairingless BLE protocol for use with "
917 "the Web Authentication API.";
Kim Paulhamusae635a32018-06-27 07:30:54918
Clemens Hammacher0c8a15a2018-04-27 13:45:32919const char kEnableWasmBaselineName[] = "WebAssembly baseline compiler";
920const char kEnableWasmBaselineDescription[] =
921 "Enables WebAssembly baseline compilation and tier up.";
922
Bill Budged0dace172019-02-10 00:46:21923const char kEnableWasmCodeCacheName[] = "WebAssembly compiled module cache";
924const char kEnableWasmCodeCacheDescription[] =
925 "Enables caching of compiled WebAssembly modules.";
926
Clemens Hammacher082fa572019-04-25 08:22:29927const char kEnableWasmCodeGCName[] = "WebAssembly code garbage collection";
928const char kEnableWasmCodeGCDescription[] =
929 "Enables garbage collection of WebAssembly code.";
930
Deepti Gandluri11734cc42019-05-02 18:00:20931const char kEnableWasmSimdName[] = "WebAssembly SIMD support.";
932const char kEnableWasmSimdDescription[] =
933 "Enables support for the WebAssembly SIMD proposal.";
934
Ben Smith24c1e5c2018-06-20 01:09:02935const char kEnableWasmThreadsName[] = "WebAssembly threads support.";
936const char kEnableWasmThreadsDescription[] =
937 "Enables support for the WebAssembly Threads proposal. Implies "
938 "#shared-array-buffer and #enable-webassembly.";
939
Christopher Thompsonf3ba20122019-06-06 22:01:01940const char kEvDetailsInPageInfoName[] = "EV certificate details in Page Info.";
941const char kEvDetailsInPageInfoDescription[] =
942 "Shows the EV certificate details in the Page Info bubble.";
943
Brett Wilsonf27ff602017-07-07 22:28:47944const char kExpensiveBackgroundTimerThrottlingName[] =
945 "Throttle expensive background timers";
946const char kExpensiveBackgroundTimerThrottlingDescription[] =
947 "Enables intervention to limit CPU usage of background timers to 1%.";
948
Brett Wilsonf27ff602017-07-07 22:28:47949const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
950const char kExperimentalCanvasFeaturesDescription[] =
951 "Enables the use of experimental canvas features which are still in "
952 "development.";
953
954const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
955const char kExperimentalExtensionApisDescription[] =
956 "Enables experimental extension APIs. Note that the extension gallery "
957 "doesn't allow you to upload extensions that use experimental APIs.";
958
Ian Clelland37a985d2018-05-04 02:43:13959const char kExperimentalProductivityFeaturesName[] =
960 "Experimental Productivity Features";
961const char kExperimentalProductivityFeaturesDescription[] =
962 "Enable support for experimental developer productivity features, such as "
Hiroshige Hayashizaki3ee116af2019-03-05 10:11:22963 "built-in modules and policies for avoiding slow rendering.";
Ian Clelland37a985d2018-05-04 02:43:13964
Brett Wilsonf27ff602017-07-07 22:28:47965const char kExperimentalSecurityFeaturesName[] =
966 "Potentially annoying security features";
967const char kExperimentalSecurityFeaturesDescription[] =
968 "Enables several security features that will likely break one or more "
969 "pages that you visit on a daily basis. Strict mixed content checking, for "
970 "example. And locking powerful features to secure contexts. This flag will "
971 "probably annoy you.";
972
973const char kExperimentalWebPlatformFeaturesName[] =
974 "Experimental Web Platform features";
975const char kExperimentalWebPlatformFeaturesDescription[] =
976 "Enables experimental Web Platform features that are in development.";
977
978const char kExtensionContentVerificationName[] =
979 "Extension Content Verification";
980const char kExtensionContentVerificationDescription[] =
981 "This flag can be used to turn on verification that the contents of the "
982 "files on disk for extensions from the webstore match what they're "
983 "expected to be. This can be used to turn on this feature if it would not "
984 "otherwise have been turned on, but cannot be used to turn it off (because "
985 "this setting can be tampered with by malware).";
986const char kExtensionContentVerificationBootstrap[] =
987 "Bootstrap (get expected hashes, but do not enforce them)";
988const char kExtensionContentVerificationEnforce[] =
989 "Enforce (try to get hashes, and enforce them if successful)";
990const char kExtensionContentVerificationEnforceStrict[] =
991 "Enforce strict (hard fail if we can't get hashes)";
992
Peter Boströma445353a2019-03-21 02:58:15993const char kExtensionsToolbarMenuName[] = "Extensions Toolbar Menu";
994const char kExtensionsToolbarMenuDescription[] =
995 "Enable a separate toolbar button and menu for extensions";
996
Brett Wilsonf27ff602017-07-07 22:28:47997const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
998const char kExtensionsOnChromeUrlsDescription[] =
999 "Enables running extensions on chrome:// URLs, where extensions explicitly "
1000 "request this permission.";
galinapae72e152017-05-12 13:12:281001
Brett Wilsonecb80982017-07-12 20:34:511002const char kFeaturePolicyName[] = "Feature Policy";
1003const char kFeaturePolicyDescription[] =
1004 "Enables granting and removing access to features through the "
1005 "Feature-Policy HTTP header.";
vabr0215a8e2017-03-28 12:47:341006
Axel Antoine12df71182019-07-25 18:11:211007const char kFilteringScrollPredictionName[] = "Filtering scroll prediction";
1008const char kFilteringScrollPredictionDescription[] =
1009 "Enable filtering of predicted scroll events";
1010
David Bokan432978d2019-08-15 18:18:521011const char kFractionalScrollOffsetsName[] = "Fractional Scroll Offsets";
1012const char kFractionalScrollOffsetsDescription[] =
1013 "Enables fractional scroll offsets inside Blink, exposing non-integer "
1014 "offsets to web APIs.";
1015
Brett Wilsonecb80982017-07-12 20:34:511016const char kForceEffectiveConnectionTypeName[] =
1017 "Override effective connection type";
1018const char kForceEffectiveConnectionTypeDescription[] =
1019 "Overrides the effective connection type of the current connection "
Thanh Lea98f12f2017-12-18 19:35:301020 "returned by the network quality estimator. Slow 2G on Cellular returns "
1021 "Slow 2G when connected to a cellular network, and the actual estimate "
1022 "effective connection type when not on a cellular network. Previews are "
1023 "usually served on 2G networks.";
Brett Wilsonecb80982017-07-12 20:34:511024const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
1025const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
1026const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
Thanh Lea98f12f2017-12-18 19:35:301027const char kEffectiveConnectionTypeSlow2GOnCellularDescription[] =
1028 "Slow 2G On Cellular";
Brett Wilsonecb80982017-07-12 20:34:511029const char kEffectiveConnectionType2GDescription[] = "2G";
1030const char kEffectiveConnectionType3GDescription[] = "3G";
1031const char kEffectiveConnectionType4GDescription[] = "4G";
1032
Jay Harris583f48922019-05-06 05:55:241033const char kFileHandlingAPIName[] = "File Handling API";
1034const char kFileHandlingAPIDescription[] =
1035 "Enables the file handling API, allowing websites to register as file "
1036 "handlers. This depends on native-file-system";
1037
Brett Wilsonecb80982017-07-12 20:34:511038const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
1039const char kFillOnAccountSelectDescription[] =
1040 "Filling of passwords when an account is explicitly selected by the user "
1041 "rather than autofilling credentials on page load.";
1042
jdoerrie11c5f4f2019-02-04 18:29:181043const char kFillOnAccountSelectHttpName[] =
1044 "Fill passwords on account selection on HTTP origins";
1045const char kFillOnAccountSelectHttpDescription[] =
1046 "Filling of passwords when an account is explicitly selected by the user "
1047 "rather than autofilling credentials on page load on HTTP origins.";
1048
kdillon21723b4c2019-05-07 18:35:171049const char kForbidSyncXHRInPageDismissalName[] =
1050 "Forbid synchronous XHR requests in page dismissal";
1051const char kForbidSyncXHRInPageDismissalDescription[] =
1052 "Disallow synchronous XHR requests during page dismissal when the page is "
1053 "being navigated away or closed by the user.";
1054
Brett Wilsonecb80982017-07-12 20:34:511055const char kForceTextDirectionName[] = "Force text direction";
1056const char kForceTextDirectionDescription[] =
1057 "Explicitly force the per-character directionality of UI text to "
1058 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
1059 "direction of the character language.";
1060const char kForceDirectionLtr[] = "Left-to-right";
1061const char kForceDirectionRtl[] = "Right-to-left";
1062
1063const char kForceUiDirectionName[] = "Force UI direction";
1064const char kForceUiDirectionDescription[] =
1065 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
1066 "mode, overriding the default direction of the UI language.";
1067
Ionel Popescu4ba2a0932019-05-07 20:10:271068const char kFormControlsRefreshName[] = "Web Platform Controls updated UI";
1069const char kFormControlsRefreshDescription[] =
1070 "If enabled, HTML forms elements will be rendered using an updated style.";
1071
Tommy Steimel863e6cf2019-07-01 19:07:361072const char kGlobalMediaControlsName[] = "Global Media Controls";
1073const char kGlobalMediaControlsDescription[] =
1074 "Enables the Global Media Controls UI in the toolbar.";
1075
Brett Wilsonecb80982017-07-12 20:34:511076const char kGpuRasterizationName[] = "GPU rasterization";
1077const char kGpuRasterizationDescription[] =
1078 "Use GPU to rasterize web content. Requires impl-side painting.";
Brett Wilson7b44537e2017-08-18 01:38:281079const char kForceGpuRasterization[] = "Force-enabled for all layers";
Brett Wilsonecb80982017-07-12 20:34:511080
Ioana Pandele1ed7ef72018-11-21 15:22:031081const char kGooglePasswordManagerName[] = "Google Password Manager UI";
1082const char kGooglePasswordManagerDescription[] =
1083 "Enables access to the Google Password Manager UI from Chrome.";
1084
Brett Wilsonecb80982017-07-12 20:34:511085const char kGoogleProfileInfoName[] = "Google profile name and icon";
1086const char kGoogleProfileInfoDescription[] =
1087 "Enables using Google information to populate the profile name and icon in "
1088 "the avatar menu.";
1089
Gabrielle Paladoaebf7ca2019-01-16 07:07:061090const char kHandwritingGestureName[] = "Handwriting Gestures";
1091const char kHandwritingGestureDescription[] =
1092 "Enables handwriting gestures within the virtual keyboard";
1093
Tommy Steimel1aadd7b2019-01-18 19:39:421094const char kHardwareMediaKeyHandling[] = "Hardware Media Key Handling";
1095const char kHardwareMediaKeyHandlingDescription[] =
1096 "Enables using media keys to control the active media session. This "
1097 "requires MediaSessionService to be enabled too";
1098
Daniel Hosseinian7b57a422019-06-11 23:52:321099const char kHarfBuzzPDFSubsetterName[] = "HarfBuzz PDF Subsetter";
1100const char kHarfBuzzPDFSubsetterDescription[] =
1101 "Changes the PDF subsetter from sftnly to HarfBuzz.";
1102
Manu Cornet4a908de2018-04-09 04:32:271103const char kHideActiveAppsFromShelfName[] =
1104 "Hide running apps (that are not pinned) from the shelf";
1105const char kHideActiveAppsFromShelfDescription[] =
1106 "Save space in the shelf by hiding running apps (that are not pinned).";
Manu Cornete5f855b2018-03-13 03:35:251107
Ryan Landay4242dbc22018-04-04 01:47:331108const char kHorizontalTabSwitcherAndroidName[] =
1109 "Enable horizontal tab switcher";
1110const char kHorizontalTabSwitcherAndroidDescription[] =
1111 "Changes the layout of the Android tab switcher so tabs scroll "
1112 "horizontally instead of vertically.";
1113
Matt Simmons2048b2a2018-12-20 20:12:561114const char kTabSwitcherOnReturnName[] = "Enable tab switcher on return";
1115const char kTabSwitcherOnReturnDescription[] =
1116 "Enable tab switcher on return after specified time has elapsed";
1117
Brett Wilsonecb80982017-07-12 20:34:511118const char kHostedAppQuitNotificationName[] =
1119 "Quit notification for hosted apps";
1120const char kHostedAppQuitNotificationDescription[] =
1121 "Display a notification when quitting Chrome if hosted apps are currently "
1122 "running.";
1123
1124const char kHostedAppShimCreationName[] =
1125 "Creation of app shims for hosted apps on Mac";
1126const char kHostedAppShimCreationDescription[] =
1127 "Create app shims on Mac when creating a hosted app.";
1128
Joe DeBlasio20a2a7b2019-04-30 02:33:541129const char kHTTPAuthCommittedInterstitialsName[] =
1130 "Enable Committed Interstitials for HTTP Auth";
1131const char kHTTPAuthCommittedInterstitialsDescription[] =
1132 "Use committed error pages instead of transient navigation entries "
1133 "for HTTP auth interstitial pages.";
1134
Brett Wilsonecb80982017-07-12 20:34:511135const char kIconNtpName[] = "Large icons on the New Tab page";
1136const char kIconNtpDescription[] =
1137 "Enable the experimental New Tab page using large icons.";
1138
1139const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
1140const char kIgnoreGpuBlacklistDescription[] =
1141 "Overrides the built-in software rendering list and enables "
1142 "GPU-acceleration on unsupported system configurations.";
1143
Ryan Sturm8c3dbc92018-06-26 19:22:371144const char kIgnorePreviewsBlacklistName[] = "Ignore Previews Blocklist";
Thanh Le5f090efa52017-12-27 22:39:441145const char kIgnorePreviewsBlacklistDescription[] =
Ryan Sturm8c3dbc92018-06-26 19:22:371146 "Ignore decisions made by the PreviewsBlockList";
Thanh Le5f090efa52017-12-27 22:39:441147
Robert Ogden4d41c432019-05-07 00:24:251148const char kIgnoreLitePageRedirectHintsBlacklistName[] =
1149 "Ignore Lite Page Redirect Preview Optimization Hints Blacklist";
1150const char kIgnoreLitePageRedirectHintsBlacklistDescription[] =
1151 "Ignore blacklist decisions made by Optimization Hints for Lite Page "
1152 "Redirect previews";
1153
Brett Wilsonecb80982017-07-12 20:34:511154const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
1155const char kInProductHelpDemoModeChoiceDescription[] =
1156 "Selects the In-Product Help demo mode.";
1157
1158const char kJavascriptHarmonyName[] = "Experimental JavaScript";
1159const char kJavascriptHarmonyDescription[] =
1160 "Enable web pages to use experimental JavaScript features.";
1161
1162const char kJavascriptHarmonyShippingName[] =
1163 "Latest stable JavaScript features";
1164const char kJavascriptHarmonyShippingDescription[] =
1165 "Some web pages use legacy or non-standard JavaScript extensions that may "
1166 "conflict with the latest JavaScript features. This flag allows disabling "
1167 "support of those features for compatibility with such pages.";
1168
Yutaka Hiranof7f2f632017-09-06 10:40:081169const char kKeepAliveRendererForKeepaliveRequestsName[] =
1170 "Keep a renderer alive for keepalive fetch requests";
1171const char kKeepAliveRendererForKeepaliveRequestsDescription[] =
1172 "Keep a render process alive when the process has a pending fetch request "
1173 "with `keepalive' specified.";
1174
Brett Wilsonecb80982017-07-12 20:34:511175const char kLoadMediaRouterComponentExtensionName[] =
1176 "Load Media Router Component Extension";
1177const char kLoadMediaRouterComponentExtensionDescription[] =
1178 "Loads the Media Router component extension at startup.";
1179
Hazem Ashmawyf1cd7e42019-03-25 18:17:321180const char kLogJsConsoleMessagesName[] =
1181 "Log JS console messages in system logs";
1182const char kLogJsConsoleMessagesDescription[] =
1183 "Enable logging JS console messages in system logs, please note that they "
1184 "may contain PII.";
1185
Mustafa Emre Acer137dc8b2018-08-29 20:38:131186const char kLookalikeUrlNavigationSuggestionsName[] =
1187 "Navigation suggestions for lookalike URLs";
1188const char kLookalikeUrlNavigationSuggestionsDescription[] =
1189 "Enable navigation suggestions for URLs that are visually similar to "
1190 "popular domains or to domains with a site engagement score.";
1191
Brett Wilsonecb80982017-07-12 20:34:511192const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
1193const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
Brett Wilsonecb80982017-07-12 20:34:511194
spqchanb87755692018-04-05 00:46:091195const char kMediaRouterCastAllowAllIPsName[] =
1196 "Connect to Cast devices on all IP addresses";
1197const char kMediaRouterCastAllowAllIPsDescription[] =
1198 "Have the Media Router connect to Cast devices on all IP addresses, not "
Nick Harperd30507ca2018-08-16 20:24:311199 "just RFC1918/RFC4193 private addresses.";
spqchanb87755692018-04-05 00:46:091200
Ehsan Karamadebb0f672019-03-22 19:48:391201const char kMimeHandlerViewInCrossProcessFrameName[] =
1202 "MimeHandlerView in cross-process frame";
1203const char kMimeHandlerViewInCrossProcessFrameDescription[] =
1204 "Loads the MimeHandlerView (the extension viewer for certain MIME types "
1205 "such as PDF) in a cross-process frame as opposed to a BrowserPlugin.";
1206
David Roger2183afb2019-02-21 14:19:151207const char kMobileIdentityConsistencyName[] = "Mobile identity consistency";
1208const char kMobileIdentityConsistencyDescription[] =
1209 "Enables stronger identity consistency on mobile";
1210
Ella Ge1282f552019-06-24 20:06:031211const char kMouseSubframeNoImplicitCaptureName[] =
1212 "Disable mouse implicit capture for iframe";
1213const char kMouseSubframeNoImplicitCaptureDescription[] =
1214 "When enable, mouse down does not implicit capture for iframe.";
1215
Marijn Kruisselbrinkca4bb5e2019-04-22 18:19:421216const char kNativeFileSystemAPIName[] = "Native File System API";
1217const char kNativeFileSystemAPIDescription[] =
1218 "Enables the experimental Native File System API, giving websites access "
1219 "to the native file system";
Marijn Kruisselbrinkfa0e1052019-03-05 22:32:551220
Brett Wilsonecb80982017-07-12 20:34:511221const char kNewAudioRenderingMixingStrategyName[] =
1222 "New audio rendering mixing strategy";
1223const char kNewAudioRenderingMixingStrategyDescription[] =
1224 "Use the new audio rendering mixing strategy.";
1225
1226const char kNewBookmarkAppsName[] = "The new bookmark app system";
1227const char kNewBookmarkAppsDescription[] =
1228 "Enables the new system for creating bookmark apps.";
1229
Vadym Doroshenkocd4ff782018-07-24 13:41:021230const char kNewPasswordFormParsingName[] =
1231 "New password form parsing for filling passwords";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241232const char kNewPasswordFormParsingDescription[] =
Vadym Doroshenkocd4ff782018-07-24 13:41:021233 "Replaces existing form parsing for filling in password manager with a new "
1234 "version, currently under development. WARNING: when enabled, Password "
1235 "Manager might stop working";
1236
1237const char kNewPasswordFormParsingForSavingName[] =
1238 "New password form parsing for saving passwords";
1239const char kNewPasswordFormParsingForSavingDescription[] =
1240 "Replaces existing form parsing for saving in password manager with a new "
1241 "version, currently under development. WARNING: when enabled, Password "
1242 "Manager might stop working";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241243
rbpotter62fe2c92019-03-26 22:01:291244const char kNewPrintPreviewLayoutName[] = "Enable New Print Preview UI Layout";
1245const char kNewPrintPreviewLayoutDescription[] =
1246 "If enabled, Print Preview will display a new UI layout.";
1247
CJ DiMeglio7b4a199f2017-11-30 01:26:501248const char kUseSurfaceLayerForVideoName[] =
1249 "Enable the use of SurfaceLayer objects for videos.";
1250const char kUseSurfaceLayerForVideoDescription[] =
1251 "Enable compositing onto a Surface instead of a VideoLayer "
1252 "for videos.";
Brett Wilsonecb80982017-07-12 20:34:511253
1254const char kNewUsbBackendName[] = "Enable new USB backend";
1255const char kNewUsbBackendDescription[] =
1256 "Enables the new experimental USB backend for Windows.";
vabr0215a8e2017-03-28 12:47:341257
Sonny Sasaka2d200432018-03-22 17:43:161258const char kNewblueName[] = "Newblue";
1259const char kNewblueDescription[] =
1260 "Enables the use of newblue Bluetooth daemon.";
1261
Taylor Bergquist187a9f92019-08-12 22:13:151262const char kNewTabstripAnimationName[] = "New tabstrip animations";
1263const char kNewTabstripAnimationDescription[] =
1264 "New implementation of tabstrip animations.";
1265
Alex Newcomerd7b0cc42018-05-25 22:58:481266const char kNotificationIndicatorName[] = "Notification Indicators";
1267const char kNotificationIndicatorDescription[] =
1268 "Enable notification indicators, which appear on app icons when a "
1269 "notification is active. This will also enable notifications in context "
1270 "menus.";
1271
Xing Liu1919ec232019-07-22 20:38:041272const char kNotificationSchedulerDebugOptionName[] =
1273 "Notification scheduler debug options";
1274const char kNotificationSchedulerDebugOptionDescription[] =
1275 "Enable debugging mode to override certain behavior of notification "
1276 "scheduler system for easier manual testing.";
1277const char kNotificationSchedulerImmediateBackgroundTaskDescription[] =
1278 "Show scheduled notification right away.";
1279
Brett Wilsonecb80982017-07-12 20:34:511280const char kNotificationsNativeFlagName[] = "Enable native notifications.";
1281const char kNotificationsNativeFlagDescription[] =
1282 "Enable support for using the native notification toasts and notification "
1283 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:341284
Lan Wei97ee4b1f2019-07-25 21:02:391285const char kUpdateHoverAtBeginFrameName[] = "Update hover at the begin frame";
1286const char kUpdateHoverAtBeginFrameDescription[] =
1287 "Recompute hover state at BeginFrame for layout and scroll based mouse "
1288 "moves, rather than old timing-based mechanism.";
1289
Valeriya Sinevich972ac122018-09-05 07:33:191290const char kUseMultiloginEndpointName[] = "Use Multilogin endpoint.";
1291const char kUseMultiloginEndpointDescription[] =
1292 "Use Gaia OAuth multilogin for identity consistency.";
1293
Brett Wilsonecb80982017-07-12 20:34:511294const char kOfferStoreUnmaskedWalletCardsName[] =
1295 "Google Payments card saving checkbox";
1296const char kOfferStoreUnmaskedWalletCardsDescription[] =
1297 "Show the checkbox to offer local saving of a credit card downloaded from "
1298 "the server.";
1299
Tommy C. Lia6912d7d2019-04-24 21:27:461300const char kOmniboxAlternateMatchDescriptionSeparatorName[] =
1301 "Omnibox Alternate Match Description Separator";
1302const char kOmniboxAlternateMatchDescriptionSeparatorDescription[] =
1303 "Shows an alternate separator before the description of omnibox matches. "
1304 "In English, this changes the separator from '-' to '|'.";
1305
Brett Wilsonecb80982017-07-12 20:34:511306const char kOmniboxDisplayTitleForCurrentUrlName[] =
1307 "Include title for the current URL in the omnibox";
1308const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
1309 "In the event that the omnibox provides suggestions on-focus, the URL of "
1310 "the current page is provided as the first suggestion without a title. "
1311 "Enabling this flag causes the title to be displayed.";
1312
Patrick Noland9e1fc5052019-07-31 00:24:111313const char kOmniboxDisableInstantExtendedLimitName[] =
1314 "Disable the 'instant extended' limit on search suggestions";
1315const char kOmniboxDisableInstantExtendedLimitDescription[] =
1316 "Effectively doubles the max number of Google-provided search suggestions "
1317 "on Android by disabling the 'Instant Extended' check.";
Kevin Bailey38514f42019-05-28 17:48:121318const char kOmniboxGroupSuggestionsBySearchVsUrlName[] =
1319 "Omnibox Group Suggestions By Search vs URL";
1320const char kOmniboxGroupSuggestionsBySearchVsUrlDescription[] =
1321 "Group suggestions by major type, search then navigation, except for "
1322 "the default match which must be first.";
1323
manukaddd3c42019-04-09 21:20:591324const char kOmniboxLocalEntitySuggestionsName[] =
1325 "Omnibox Local Entity Suggestions";
1326const char kOmniboxLocalEntitySuggestionsDescription[] =
1327 "Enables location specific suggestions displayed with images and enhanced "
1328 "layout, similar to #omnibox-rich-entity-suggestions. Enabling this feature"
1329 "will also enable #omnibox-rich-entity-suggestions.";
1330
manuk2e55a7b2019-02-12 20:08:231331const char kOmniboxMaterialDesignWeatherIconsName[] =
1332 "Omnibox Material Design Weather Icons";
1333const char kOmniboxMaterialDesignWeatherIconsDescription[] =
1334 "Use material design weather icons in the omnibox when displaying weather "
1335 "answers.";
1336
Tomasz Wiszkowskic7fd5bed2019-02-11 17:33:231337const char kOmniboxRichEntitySuggestionsName[] =
1338 "Omnibox rich entity suggestions";
1339const char kOmniboxRichEntitySuggestionsDescription[] =
1340 "Display entity suggestions using images and an enhanced layout; showing "
manukaddd3c42019-04-09 21:20:591341 "more context and descriptive text about the entity.";
Tomasz Wiszkowskic7fd5bed2019-02-11 17:33:231342
Brandon Wylief8dd4e82019-07-11 16:39:571343const char kOmniboxSearchEngineLogoName[] = "Omnibox search engine logo";
1344const char kOmniboxSearchEngineLogoDescription[] =
1345 "Display the current default search engine's logo in the omnibox";
1346
Benoit Lizeab08362c2017-07-19 14:50:541347const char kOmniboxSpareRendererName[] =
1348 "Start spare renderer on omnibox focus";
1349const char kOmniboxSpareRendererDescription[] =
1350 "When the omnibox is focused, start an empty spare renderer. This can "
1351 "speed up the load of the navigation from the omnibox.";
1352
Tommy C. Lib5bf6152019-04-23 22:13:161353const char kOmniboxUICuesForSearchHistoryMatchesName[] =
1354 "Omnibox UI Cues to Differentiate Search History Matches";
1355const char kOmniboxUICuesForSearchHistoryMatchesDescription[] =
1356 "Shows UI cues in the omnibox to differentiate Search History matches from "
1357 "other search suggestions provided by the default search provider. This "
1358 "feature is a narrow subset of Omnibox Suggestion Transparency Options.";
1359
Tommy C. Lie4194b732018-09-28 22:21:511360const char kOmniboxUIHideSteadyStateUrlSchemeName[] =
1361 "Omnibox UI Hide Steady-State URL Scheme";
1362const char kOmniboxUIHideSteadyStateUrlSchemeDescription[] =
1363 "In the omnibox, hide the scheme from steady state displayed URLs. It is "
Tommy C. Libef94ee02018-10-17 19:56:361364 "restored during editing.";
Tommy C. Lie4194b732018-09-28 22:21:511365
Tommy C. Lib20aec72018-11-19 21:38:231366const char kOmniboxUIOneClickUnelideName[] = "Omnibox UI One Click Unelide";
1367const char kOmniboxUIOneClickUnelideDescription[] =
1368 "In the omnibox, undo all unelisions with a single click or focus action.";
1369
Tommy C. Lie4194b732018-09-28 22:21:511370const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsName[] =
1371 "Omnibox UI Hide Steady-State URL Trivial Subdomains";
1372const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsDescription[] =
1373 "In the omnibox, hide trivial subdomains from steady state displayed URLs. "
Tommy C. Libef94ee02018-10-17 19:56:361374 "Hidden portions are restored during editing.";
1375
1376const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefName[] =
1377 "Omnibox UI Hide Steady-State URL Path, Query, and Ref";
1378const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefDescription[] =
1379 "In the omnibox, hide the path, query and ref from steady state displayed "
1380 "URLs. Hidden portions are restored during editing.";
Tommy C. Lid79d4402017-12-22 22:49:121381
Brett Wilsonecb80982017-07-12 20:34:511382const char kOmniboxUIMaxAutocompleteMatchesName[] =
1383 "Omnibox UI Max Autocomplete Matches";
Brett Wilsonecb80982017-07-12 20:34:511384const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
1385 "Changes the maximum number of autocomplete matches displayed in the "
1386 "Omnibox UI.";
1387
Kevin Baileycd6889922019-05-30 17:22:551388const char kOmniboxMaxURLMatchesName[] = "Omnibox Max URL Matches";
1389const char kOmniboxMaxURLMatchesDescription[] =
1390 "The maximum number of URL matches to show, unless there are no "
1391 "replacements.";
1392
Ce Chen20af01c2019-07-02 19:16:361393const char kOmniboxOnDeviceHeadSuggestionsName[] =
1394 "Omnibox on device head suggestions";
1395const char kOmniboxOnDeviceHeadSuggestionsDescription[] =
1396 "Google head non personalized search suggestions provided by a compact on "
1397 "device model";
1398
Dan Beamc9b97fe82019-04-26 02:56:081399const char kOmniboxUIShowPlaceholderWhenCaretShowingName[] =
1400 "Omnibox UI Show Placeholder When Caret Showing";
1401const char kOmniboxUIShowPlaceholderWhenCaretShowingDescription[] =
1402 "Shows the \"Search Google or type a URL\" placeholder text in the "
1403 "omnibox when it's focused / the caret cursor is showing.";
1404
Tommy C. Liba4e66ef2019-02-12 21:33:281405const char kOmniboxUIShowSuggestionFaviconsName[] =
1406 "Omnibox UI Show Suggestion Favicons";
1407const char kOmniboxUIShowSuggestionFaviconsDescription[] =
1408 "Shows favicons instead of generic vector icons for URL suggestions in the "
1409 "Omnibox dropdown.";
1410
Justin Donnelly65c9e8b2017-10-01 05:15:011411const char kOmniboxUISwapTitleAndUrlName[] = "Omnibox UI Swap Title and URL";
1412const char kOmniboxUISwapTitleAndUrlDescription[] =
1413 "In the omnibox dropdown, shows titles before URLs when both are "
1414 "available.";
1415
Tomasz Wiszkowski947f6d0d2019-03-15 22:27:251416const char kOmniboxZeroSuggestionsOnNTPName[] =
1417 "Omnibox Zero Suggestions on New Tab Page";
1418const char kOmniboxZeroSuggestionsOnNTPDescription[] =
1419 "Offer suggestions when URL bar (omnibox) is focused.";
1420
Vadym Doroshenko6b8f64d2018-11-26 15:35:391421const char kOnlyNewPasswordFormParsingName[] =
1422 "Use only new password form parsing";
1423const char kOnlyNewPasswordFormParsingDescription[] =
1424 "The old password form parsing is disabled";
1425
Mark Lieufaa1b762019-01-08 19:37:281426const char kOnTheFlyMhtmlHashComputationName[] =
1427 "On-The-Fly MHTML Hash Computation";
1428const char kOnTheFlyMhtmlHashComputationDescription[] =
1429 "Save MHTML files to the target location and calculate their content "
1430 "digests in one step.";
1431
Adrienne Walkerc87477e2018-06-06 22:28:211432const char kOopRasterizationName[] = "Out of process rasterization";
1433const char kOopRasterizationDescription[] =
1434 "Perform Ganesh raster in the GPU Process instead of the renderer. "
1435 "Must also enable GPU rasterization";
1436
Donn Denman43baac62019-05-22 17:31:051437const char kOverlayNewLayoutName[] = "Overlay new layout";
1438const char kOverlayNewLayoutDescription[] =
1439 "Enables a new layout for the "
1440 "Overlay panels including Contextual Search and Preview Tab.";
1441
Brett Wilsonecb80982017-07-12 20:34:511442const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
1443const char kOverlayScrollbarsDescription[] =
1444 "Enable the experimental overlay scrollbars implementation. You must also "
1445 "enable threaded compositing to have the scrollbars animate.";
1446
chaopenge8aa016b2017-08-24 15:20:191447const char kOverlayScrollbarsFlashAfterAnyScrollUpdateName[] =
1448 "Flash Overlay Scrollbars After Any Scroll Update";
1449const char kOverlayScrollbarsFlashAfterAnyScrollUpdateDescription[] =
1450 "Flash Overlay Scrollbars After any scroll update happends in page. You"
1451 " must also enable Overlay Scrollbars.";
1452
chaopeng343678022017-08-24 18:45:001453const char kOverlayScrollbarsFlashWhenMouseEnterName[] =
1454 "Flash Overlay Scrollbars When Mouse Enter";
1455const char kOverlayScrollbarsFlashWhenMouseEnterDescription[] =
1456 "Flash Overlay Scrollbars When Mouse Enter a scrollable area. You must also"
1457 " enable Overlay Scrollbars.";
1458
Daniele Castagna74ddb9c2018-06-21 22:59:021459const char kOverlayStrategiesName[] = "Select HW overlay strategies";
1460const char kOverlayStrategiesDescription[] =
1461 "Select strategies used to promote quads to HW overlays.";
1462const char kOverlayStrategiesDefault[] = "Default";
1463const char kOverlayStrategiesNone[] = "None";
1464const char kOverlayStrategiesUnoccludedFullscreen[] =
1465 "Unoccluded fullscreen buffers (single-fullscreen)";
1466const char kOverlayStrategiesUnoccluded[] =
1467 "Unoccluded buffers (single-fullscreen,single-on-top)";
1468const char kOverlayStrategiesOccludedAndUnoccluded[] =
1469 "Occluded and unoccluded buffers "
1470 "(single-fullscreen,single-on-top,underlay)";
1471
Claudio Magni81326f92017-09-01 05:21:181472const char kUseNewAcceptLanguageHeaderName[] = "Use new Accept-Language header";
1473const char kUseNewAcceptLanguageHeaderDescription[] =
1474 "Adds the base language code after other corresponding language+region "
1475 "codes. This ensures that users receive content in their preferred "
1476 "language.";
1477
Brett Wilsonecb80982017-07-12 20:34:511478const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
1479const char kOverscrollHistoryNavigationDescription[] =
Mohsen Izadi88b392a2018-02-15 06:57:481480 "History navigation in response to horizontal overscroll.";
Brett Wilsonecb80982017-07-12 20:34:511481
chaopenge2b6e5f2018-05-08 16:40:451482const char kTouchpadOverscrollHistoryNavigationName[] =
1483 "Overscroll history navigation on Touchpad";
1484const char kTouchpadOverscrollHistoryNavigationDescription[] =
1485 "Allows swipe left/right from touchpad change browser navigation.";
1486
Xing Liu5400a002017-09-15 21:48:291487const char kParallelDownloadingName[] = "Parallel downloading";
1488const char kParallelDownloadingDescription[] =
Yannic Bonenbergera32f9902017-11-20 18:47:061489 "Enable parallel downloading to accelerate download speed.";
Xing Liu5400a002017-09-15 21:48:291490
Brett Wilsonecb80982017-07-12 20:34:511491const char kPassiveEventListenerDefaultName[] =
1492 "Passive Event Listener Override";
1493const char kPassiveEventListenerDefaultDescription[] =
1494 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
1495 "haven't requested otherwise) to be treated as passive. This will break "
1496 "touch/wheel behavior on some websites but is useful for demonstrating the "
1497 "potential performance benefits of adopting passive event listeners.";
1498const char kPassiveEventListenerTrue[] = "True (when unspecified)";
1499const char kPassiveEventListenerForceAllTrue[] = "Force All True";
1500
1501const char kPassiveEventListenersDueToFlingName[] =
1502 "Touch Event Listeners Passive Default During Fling";
1503const char kPassiveEventListenersDueToFlingDescription[] =
1504 "Forces touchstart, and first touchmove per scroll event listeners during "
1505 "fling to be treated as passive.";
1506
1507const char kPassiveDocumentEventListenersName[] =
1508 "Document Level Event Listeners Passive Default";
1509const char kPassiveDocumentEventListenersDescription[] =
1510 "Forces touchstart, and touchmove event listeners on document level "
1511 "targets (which haven't requested otherwise) to be treated as passive.";
1512
Sahel Sharify7400e882018-08-13 17:13:211513const char kPassiveDocumentWheelEventListenersName[] =
1514 "Document Level Wheel Event Listeners Passive Default";
1515const char kPassiveDocumentWheelEventListenersDescription[] =
1516 "Forces wheel, and mousewheel event listeners on document level targets "
1517 "(which haven't requested otherwise) to be treated as passive.";
1518
Ivana Zuzica4cf4802019-07-10 19:02:321519const char kPasswordEditingAndroidName[] = "Password editing for Android";
1520const char kPasswordEditingAndroidDescription[] =
1521 "Adds the editing option for saved passwords.";
1522
Vaclav Brozekd8a3f542017-11-16 14:21:131523const char kPasswordImportName[] = "Password import";
1524const char kPasswordImportDescription[] =
1525 "Import functionality in password settings.";
Brett Wilsonecb80982017-07-12 20:34:511526
Jan Wilken Dörriee8a6b3c2019-08-20 14:14:461527const char kPasswordLeakDetectionName[] = "Password Leak Detection";
1528const char kPasswordLeakDetectionDescription[] =
1529 "Enables the detection of leaked passwords.";
1530
Aran Gilman5e9672bed2019-08-02 19:07:491531const char kForceWebContentsDarkModeName[] = "Force Dark Mode for Web Contents";
1532const char kForceWebContentsDarkModeDescription[] =
1533 "Automatically render all web contents using a dark theme.";
1534
Mugdha Lakhani778b8952019-06-10 14:45:401535const char kPeriodicBackgroundSyncName[] = "Periodic Background Sync";
1536const char kPeriodicBackgroundSyncDescription[] =
1537 "If enabled, web apps can periodically sync content in the background.";
1538
Rouslan Solomakhinded840112018-11-02 13:27:101539const char kPerMethodCanMakePaymentQuotaName[] =
1540 "Per-method canMakePayment() quota.";
1541const char kPerMethodCanMakePaymentQuotaDescription[] =
1542 "Allow calling canMakePayment() for different payment methods, as long as "
1543 "method-specific parameters remain unchanged.";
1544
Yann Dago70afb65d2019-08-06 15:50:531545const char kPolicyAtomicGroupsEnabledName[] = "Policy Atomic Groups Enabled";
1546const char kPolicyAtomicGroupsEnabledDescription[] =
1547 "Enables the concept of policy atomic groups that makes policies of an "
1548 "atomic group that do not share the highest priority source from that group"
1549 "ignored.";
1550
Doug Arnett620ff542018-02-06 17:54:221551const char kPreviewsAllowedName[] = "Previews Allowed";
1552const char kPreviewsAllowedDescription[] =
1553 "Allows previews to be shown subject to specific preview types being "
1554 "enabled and the client experiencing specific triggering conditions. "
1555 "May be used as a kill-switch to turn off all potential preview types.";
1556
Brett Wilsonecb80982017-07-12 20:34:511557const char kPrintPdfAsImageName[] = "Print Pdf as Image";
1558const char kPrintPdfAsImageDescription[] =
1559 "If enabled, an option to print PDF files as images will be available in "
1560 "print preview.";
1561
1562const char kPrintPreviewRegisterPromosName[] =
1563 "Print Preview Registration Promos";
1564const char kPrintPreviewRegisterPromosDescription[] =
1565 "Enable registering unregistered cloud printers from print preview.";
1566
Mohsen Izadi93faac12017-07-29 04:45:151567const char kPullToRefreshName[] = "Pull-to-refresh gesture";
1568const char kPullToRefreshDescription[] =
1569 "Pull-to-refresh gesture in response to vertical overscroll.";
Mohsen Izadi8c59ba52018-04-12 18:52:011570const char kPullToRefreshEnabledTouchscreen[] = "Enabled for touchscreen only";
Mohsen Izadi93faac12017-07-29 04:45:151571
Troy Hildebrandt7228ad12018-02-23 21:18:241572const char kQueryInOmniboxName[] = "Query in Omnibox";
1573const char kQueryInOmniboxDescription[] =
1574 "Only display query terms in the omnibox when viewing a search results "
1575 "page.";
1576
Brett Wilsonecb80982017-07-12 20:34:511577const char kQuicName[] = "Experimental QUIC protocol";
1578const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1579
1580const char kReducedReferrerGranularityName[] =
1581 "Reduce default 'referer' header granularity.";
1582const char kReducedReferrerGranularityDescription[] =
1583 "If a page hasn't set an explicit referrer policy, setting this flag will "
1584 "reduce the amount of information in the 'referer' header for cross-origin "
1585 "requests.";
1586
Christian Dullweber3cc579a22018-09-11 10:54:441587const char kRewriteLevelDBOnDeletionName[] =
1588 "Rewrite LevelDB instances after full deletions";
1589const char kRewriteLevelDBOnDeletionDescription[] =
1590 "Rewrite LevelDB instances to remove traces of deleted data from disk.";
1591
Yutaka Hirano4c0f2f5d452017-11-17 04:24:351592const char kRendererSideResourceSchedulerName[] =
1593 "Renderer side ResourceScheduler";
1594const char kRendererSideResourceSchedulerDescription[] =
1595 "Migrate some ResourceScheduler functionalities to renderer";
1596
Jenna Himawana25aced2019-06-21 01:29:211597const char kReorderBookmarksName[] = "Reorder bookmarks";
1598const char kReorderBookmarksDescription[] =
1599 "Allows the user to reorder their bookmarks from their Android device. "
1600 "The bookmark ordering will be synced across devices.";
1601
David Bokan5a32e4d2019-08-14 15:37:461602const char kRequestUnbufferedDispatchName[] = "Use RequestUnbufferedDispatch";
1603const char kRequestUnbufferedDispatchDescription[] =
1604 "Calls RequestUnbufferedDispatch in the Android API to disable buffering "
1605 "of input by the OS.";
1606
Brett Wilsonecb80982017-07-12 20:34:511607const char kRequestTabletSiteName[] =
1608 "Request tablet site option in the settings menu";
1609const char kRequestTabletSiteDescription[] =
1610 "Allows the user to request tablet site. Web content is often optimized "
1611 "for tablet devices. When this option is selected the user agent string is "
1612 "changed to indicate a tablet device. Web content optimized for tablets is "
1613 "received there after for the current tab.";
1614
Kinuko Yasuda33955082018-06-19 10:14:591615const char kResourceLoadSchedulerName[] = "Enable resource load throttling";
Brett Wilsonecb80982017-07-12 20:34:511616const char kResourceLoadSchedulerDescription[] =
Kinuko Yasuda33955082018-06-19 10:14:591617 "Uses the resource load scheduler in blink to throttle resource load "
1618 "requests.";
Brett Wilsonecb80982017-07-12 20:34:511619
Dominic Farolino693fd72d2019-08-05 11:09:441620const char kPrefetchRedirectErrorName[] =
1621 "Prefetch requests use \"error\" redirect mode";
1622const char kPrefetchRedirectErrorDescription[] =
1623 "Prefetch requests will not follow redirect responses, and instead be "
1624 "logged as errors. Redirect responses are still stored in the cache.";
1625
Daniel Rubery91874e32019-01-10 22:12:341626const char kSafeBrowsingUseAPDownloadVerdictsName[] =
1627 "Request Advanced Protection verdicts when inspecting downloads";
1628const char kSafeBrowsingUseAPDownloadVerdictsDescription[] =
1629 "If enabled, download protection will request Advanced Protection "
1630 "verdicts from Safe Browsing. These will provide stronger protections "
1631 "from files Safe Browsing is unsure about.";
1632
Joe DeBlasiofb277092019-07-03 23:46:361633const char kSafetyTipName[] =
1634 "Show Safety Tip UI when visiting low-reputation websites";
1635const char kSafetyTipDescription[] =
1636 "If enabled, a Safety Tip UI may be displayed when visiting or interacting "
1637 "with a site Chrome believes may be suspicious.";
1638
Lily Chene0d3ac92019-04-22 16:55:531639const char kSameSiteByDefaultCookiesName[] = "SameSite by default cookies";
1640const char kSameSiteByDefaultCookiesDescription[] =
1641 "Treat cookies that don't specify a SameSite attribute as if they were "
1642 "SameSite=Lax. Sites must specify SameSite=None in order to enable "
1643 "third-party usage.";
1644
Brett Wilsonecb80982017-07-12 20:34:511645const char kSaveasMenuLabelExperimentName[] =
1646 "Switch 'Save as' menu labels to 'Download'";
1647const char kSaveasMenuLabelExperimentDescription[] =
1648 "Enables an experiment to switch menu labels that use 'Save as...' to "
1649 "'Download'.";
1650
Charlene Yan0ccd7f52019-04-12 23:20:591651const char kScrollableTabStripName[] = "Scrollable TabStrip";
1652const char kScrollableTabStripDescription[] =
1653 "Allows users to access tabs by scrolling when they no longer fit in the "
1654 "tabstrip.";
1655
Edward Jung7c1793af2019-06-14 17:33:561656const char kSecurityInterstitialsDarkModeName[] =
1657 "Security interstitials dark mode";
1658const char kSecurityInterstitialsDarkModeDescription[] =
1659 "Allows security intersitials to take on a dark theme when the OS is "
1660 "switched to dark mode.";
1661
Jeffrey Cohene49cc59c2018-10-23 16:27:281662const char kSendTabToSelfName[] = "Send tab to self";
1663const char kSendTabToSelfDescription[] =
Tanya Gupta035a9e202019-04-08 20:01:331664 "Allows users to receive tabs from other synced devices, in order to "
1665 "easily transition those tabs to this device. This enables the sync "
1666 "infrastructure for this feature.";
Jeffrey Cohene49cc59c2018-10-23 16:27:281667
Jeffrey Cohendacbc2a2019-05-14 16:15:491668const char kSendTabToSelfBroadcastName[] = "Send tab to self broadcast";
1669const char kSendTabToSelfBroadcastDescription[] =
1670 "Allows users to broadcast the tab they send to all of their devices "
1671 "instead of targetting only one device.";
1672
Tanya Gupta035a9e202019-04-08 20:01:331673const char kSendTabToSelfShowSendingUIName[] =
1674 "Send tab to self show sending UI";
1675const char kSendTabToSelfShowSendingUIDescription[] =
1676 "Allows users to send tabs to other synced devices by accessing the "
1677 "sending user interface. Requires Send tab to self to also be enabled";
Jeffrey Cohen9f3e6092019-03-21 21:55:011678
Travis Skare885f8ad2019-04-25 21:33:371679const char kSendTabToSelfWhenSignedInName[] =
1680 "Send tab to self: enable use when signed-in regardless of sync state";
1681const char kSendTabToSelfWhenSignedInDescription[] =
1682 "Allows use of the send-tab-to-self feature for users who are signed-in "
1683 "but not necessarily syncing. The tab-share data is thus ephemeral, "
1684 "rather than persistent sync data.";
1685
momohattfc352292018-08-29 05:12:361686const char kServiceWorkerImportedScriptUpdateCheckName[] =
1687 "Enable update check for service worker importScripts() resources";
1688const char kServiceWorkerImportedScriptUpdateCheckDescription[] =
1689 "Extend byte-for-byte update check for scripts that are imported by the "
1690 "service worker script via importScripts().";
1691
Azeem Arshad3b1ef73122018-08-30 02:04:151692const char kServiceWorkerLongRunningMessageName[] =
1693 "Service worker long running message dispatch.";
1694const char kServiceWorkerLongRunningMessageDescription[] =
1695 "Enables long running message dispatch method for service workers. "
1696 "Messages sent with this method do not timeout, allowing the service "
1697 "worker to run indefinitely.";
1698
Chris Hamiltonb9612e262019-02-12 21:12:061699const char kSessionRestorePrioritizesBackgroundUseCasesName[] =
1700 "Session restore prioritizes background use cases.";
1701const char kSessionRestorePrioritizesBackgroundUseCasesDescription[] =
1702 "When enabled session restore logic will prioritize sites that make use of "
1703 "background communication mechanisms (favicon and tab title switches, "
1704 "notifications, etc) over sites that do not.";
1705
Brett Wilsonecb80982017-07-12 20:34:511706const char kSettingsWindowName[] = "Show settings in a window";
1707const char kSettingsWindowDescription[] =
1708 "Settings will be shown in a dedicated window instead of as a browser tab.";
1709
Yasmin69a132f2019-08-07 15:30:361710const char kSharedClipboardReceiverName[] =
1711 "Enable receiver device to handle shared clipboard feature";
1712const char kSharedClipboardReceiverDescription[] =
1713 "Enables receiver device to handle shared clipboard feature by showing a "
1714 "notification to receive the clipboard to share.";
1715
1716const char kSharedClipboardUIName[] =
1717 "Enable shared clipboard feature signals to be handled";
1718const char kSharedClipboardUIDescription[] =
1719 "Enables shared clipboard feature signals to be handled by showing "
1720 "a list of user's available devices to share the clipboard.";
1721
Himanshu Jajudbcee232019-06-17 19:41:491722const char kSharingDeviceRegistrationName[] =
1723 "Enable device registration for Sharing features";
1724const char kSharingDeviceRegistrationDescription[] =
1725 "Enables device registration with Sharing infrastructure. Required to use "
1726 "cross-device Sharing features.";
1727
Himanshu Jaju8211bd9b2019-08-12 18:53:141728const char kSharingUseDeviceInfoName[] =
1729 "Enable Sharing device registration in DeviceInfo";
1730const char kSharingUseDeviceInfoDescription[] =
1731 "Enables Sharing infrastructure to register devices in DeviceInfo and "
1732 "remove sync requirement.";
1733
Manu Cornetad6536f2019-06-18 21:04:431734const char kShelfDenseClamshellName[] =
1735 "Show a smaller, denser shelf in laptop mode.";
1736const char kShelfDenseClamshellDescription[] =
1737 "Reduces the size of the shelf and its apps when in laptop mode.";
1738
Manu Corneteb3c7d32019-06-20 08:04:441739const char kShelfHotseatName[] = "Enable a modular design for the shelf.";
1740const char kShelfHotseatDescription[] =
1741 "Shows a modular design for the shelf where the apps are shown separately "
1742 "in a 'hotseat' interface when in tablet mode, and where various pieces "
1743 "are separate and behave independently.";
1744
Manu Cornetd7ef7c52018-05-01 22:08:231745const char kShelfHoverPreviewsName[] =
1746 "Show previews of running apps when hovering over the shelf.";
1747const char kShelfHoverPreviewsDescription[] =
1748 "Shows previews of the open windows for a given running app when hovering "
1749 "over the shelf.";
1750
Manu Cornetad6536f2019-06-18 21:04:431751const char kShelfScrollableName[] =
1752 "Enable a scrollable list of apps on the shelf";
1753const char kShelfScrollableDescription[] =
1754 "Shows a list of applications that is scrollable by default on tablets.";
1755
Naoki Fukino008a0022018-05-23 18:33:001756const char kShowAndroidFilesInFilesAppName[] =
1757 "Show Android files in Files app";
1758const char kShowAndroidFilesInFilesAppDescription[] =
1759 "Show Android files in Files app if Android is enabled on the device.";
1760
Brett Wilsonecb80982017-07-12 20:34:511761const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
1762const char kShowAutofillSignaturesDescription[] =
Maxim Kolosovskiye66f8cb2018-03-23 10:25:381763 "Annotates web forms with Autofill signatures as HTML attributes. Also "
1764 "marks password fields suitable for password generation.";
Brett Wilsonecb80982017-07-12 20:34:511765
1766const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
1767const char kShowAutofillTypePredictionsDescription[] =
1768 "Annotates web forms with Autofill field type predictions as placeholder "
1769 "text.";
1770
Jonathan Backer93610a82019-03-27 14:02:381771const char kSkiaRendererName[] = "Skia API for OOP-D compositing";
1772const char kSkiaRendererDescription[] =
1773 "If enabled, the display compositor will use Skia as the graphics API "
1774 "instead of OpenGL ES. Requires Viz Display Compositor (OOP-D).";
1775
Shivani Sharma2d5b4b6b2019-01-08 16:07:161776const char kHistoryManipulationIntervention[] =
1777 "History Manipulation Intervention";
1778const char kHistoryManipulationInterventionDescription[] =
1779 "If a page does a client side redirect or adds to the history without a "
1780 "user gesture, then skip it on back/forward UI.";
1781
Brett Wilsonecb80982017-07-12 20:34:511782const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1783const char kSilentDebuggerExtensionApiDescription[] =
1784 "Do not show the infobar when an extension attaches to a page via "
1785 "chrome.debugger API. This is required to debug extension background "
1786 "pages.";
1787
Christopher Thompson75ff845d2018-02-01 20:12:461788const char kSimplifyHttpsIndicatorName[] = "Simplify HTTPS indicator UI";
1789const char kSimplifyHttpsIndicatorDescription[] =
1790 "Change the UI treatment for HTTPS pages.";
1791
Lukasz Anforowiczd2e16e62019-03-28 19:06:591792const char kIsolateOriginsName[] = "Isolate additional origins";
1793const char kIsolateOriginsDescription[] =
1794 "Requires dedicated processes for an additional set of origins, "
1795 "specified as a comma-separated list.";
1796
Alan Wink7c1b2ae22019-04-03 19:18:061797const char kKidsManagementUrlClassificationName[] =
1798 "KidsMangement Url Classification";
1799const char kKidsManagementUrlClassificationDescription[] =
1800 "Uses KidsManagementService to classify URLs for Kid Accounts.";
1801
Lukasz Anforowicz738a88d2018-11-05 19:19:341802const char kSiteIsolationOptOutName[] = "Disable site isolation";
1803const char kSiteIsolationOptOutDescription[] =
1804 "Disables site isolation "
Nick Carter855bc492018-03-10 00:44:571805 "(SitePerProcess, IsolateOrigins, etc). Intended for diagnosing bugs that "
1806 "may be due to out-of-process iframes. Opt-out has no effect if site "
Lukasz Anforowicz42840422018-11-05 21:49:221807 "isolation is force-enabled using a command line switch or using an "
1808 "enterprise policy. "
1809 "Caution: this disables important mitigations for the Spectre CPU "
Nick Carter855bc492018-03-10 00:44:571810 "vulnerability affecting most computers.";
Lukasz Anforowicz738a88d2018-11-05 19:19:341811const char kSiteIsolationOptOutChoiceDefault[] = "Default";
1812const char kSiteIsolationOptOutChoiceOptOut[] = "Disabled (not recommended)";
Brett Wilsonecb80982017-07-12 20:34:511813
Brett Wilsonecb80982017-07-12 20:34:511814const char kSmoothScrollingName[] = "Smooth Scrolling";
1815const char kSmoothScrollingDescription[] =
1816 "Animate smoothly when scrolling page content.";
1817
Justin Donnelly4e448cb2017-07-07 21:32:131818const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
1819 "Enable speculative start of a service worker when a search is predicted.";
Justin Donnelly4e448cb2017-07-07 21:32:131820const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
1821 "If enabled, when the user enters text in the omnibox that looks like a "
1822 "a query, any service worker associated with the search engine the query "
1823 "will be sent to is started early.";
1824
W. James MacLeanf79c97e2019-05-02 20:35:461825extern const char kStrictOriginIsolationName[] = "Strict-Origin-Isolation";
1826extern const char kStrictOriginIsolationDescription[] =
1827 "Experimental security mode that strengthens the site isolation policy. "
1828 "Controls whether site isolation should use origins instead of scheme and "
1829 "eTLD+1.";
1830
Shubhie Panickerfaf082ed2018-01-03 04:49:151831const char kStopInBackgroundName[] = "Stop in background";
1832const char kStopInBackgroundDescription[] =
1833 "Stop scheduler task queues, in the background, "
Shubhie Panicker56c99a22018-03-21 00:22:281834 " after a grace period.";
Shubhie Panickerfaf082ed2018-01-03 04:49:151835
Shubhie Panicker56c99a22018-03-21 00:22:281836const char kStopNonTimersInBackgroundName[] =
1837 "Stop non-timer task queues background";
1838const char kStopNonTimersInBackgroundDescription[] =
1839 "Stop non-timer task queues, in the background, "
1840 "after a grace period.";
1841
Brett Wilsonecb80982017-07-12 20:34:511842const char kSuggestionsWithSubStringMatchName[] =
1843 "Substring matching for Autofill suggestions";
1844const char kSuggestionsWithSubStringMatchDescription[] =
1845 "Match Autofill suggestions based on substrings (token prefixes) rather "
1846 "than just prefixes.";
vabr0215a8e2017-03-28 12:47:341847
Marc Treib4bd95e72018-08-30 06:30:581848const char kSyncSupportSecondaryAccountName[] =
1849 "Support secondary accounts for Sync standalone transport";
1850const char kSyncSupportSecondaryAccountDescription[] =
1851 "If enabled, allows Chrome Sync to start in standalone transport mode for "
1852 "a signed-in account that has not been chosen as Chrome's primary account. "
1853 "This only has an effect if sync-standalone-transport is also enabled.";
1854
Brett Wilsonecb80982017-07-12 20:34:511855const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1856const char kSyncSandboxDescription[] =
1857 "Connects to the testing server for Chrome Sync.";
vabr0215a8e2017-03-28 12:47:341858
Joe Downing8cbbc192018-05-14 17:37:071859const char kSystemKeyboardLockName[] = "Experimental system keyboard lock";
1860const char kSystemKeyboardLockDescription[] =
1861 "Enables websites to use the keyboard.lock() API to intercept system "
1862 "keyboard shortcuts and have the events routed directly to the website "
1863 "when in fullscreen mode.";
1864
Matt Simmons1fd0c9f2019-04-15 19:08:221865const char kTabEngagementReportingName[] = "Tab Engagement Metrics";
1866const char kTabEngagementReportingDescription[] =
1867 "Tracks tab engagement and lifetime metrics.";
1868
Yusuf Ozuysal67f05a02019-02-15 19:30:521869const char kTabGridLayoutAndroidName[] = "Tab Grid Layout";
1870const char kTabGridLayoutAndroidDescription[] =
1871 "Allows users to see their tabs in a grid layout in the tab switcher.";
1872
Yusuf Ozuysal436d90b82019-03-15 22:17:581873const char kTabGroupsAndroidName[] = "Tab Groups";
1874const char kTabGroupsAndroidDescription[] =
1875 "Allows users to create groups to better organize their tabs.";
1876
Yue Zhang2834d6b2019-05-01 17:30:281877const char kTabGroupsUiImprovementsAndroidName[] = "Tab Groups UI Improvements";
1878const char kTabGroupsUiImprovementsAndroidDescription[] =
1879 "Allows users to access new features in Tab Group UI.";
1880
Wei-Yin Chen (陳威尹)102222492019-05-22 19:27:091881const char kTabToGTSAnimationAndroidName[] = "Enable Tab-to-GTS Animation";
1882const char kTabToGTSAnimationAndroidDescription[] =
1883 "Allows users to see an animation when entering or leaving the "
1884 "Grid Tab Switcher.";
1885
Taylor Bergquistbcc15462018-12-05 00:36:561886const char kTabGroupsName[] = "Tab Groups";
1887const char kTabGroupsDescription[] =
1888 "Allows users to organize tabs into visually distinct groups, e.g. to "
1889 "separate tabs associated with different tasks.";
1890
Caroline Risinge121c2b2018-12-03 20:19:291891const char kTabHoverCardsName[] = "Tab Hover Cards";
1892const char kTabHoverCardsDescription[] =
1893 "Enables a popup containing tab information to be visible when hovering "
1894 "over a tab. This will replace tooltips for tabs.";
1895
Dana Friedacaa8ef52019-02-08 02:20:351896const char kTabHoverCardImagesName[] = "Tab Hover Card Images";
1897const char kTabHoverCardImagesDescription[] =
1898 "Shows a preview image in tab hover cards, if tab hover cards are enabled.";
1899
Dana Fried07b03c62019-07-31 19:20:561900const char kTabOutlinesInLowContrastThemesName[] =
1901 "Tab Outlines in Low Contrast Themes";
1902const char kTabOutlinesInLowContrastThemesDescription[] =
1903 "Expands the range of situations in which tab outline strokes are "
1904 "displayed, improving accessiblity in dark and incognito mode.";
1905
Christian Dullweberd0d96f02017-09-13 09:22:511906const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1907const char kTabsInCbdDescription[] =
1908 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
1909
Daniele Castagna0fead93e2018-01-10 20:40:291910const char kTintGlCompositedContentName[] = "Tint GL-composited content";
1911const char kTintGlCompositedContentDescription[] =
1912 "Tint contents composited using GL with a shade of red to help debug and "
1913 "study overlay support.";
1914
Peter Kastingd77428352018-10-26 15:20:251915const char kTopChromeTouchUiName[] = "Touch UI Layout";
1916const char kTopChromeTouchUiDescription[] =
1917 "Enables touch UI layout in the browser's top chrome.";
vabr0215a8e2017-03-28 12:47:341918
Brett Wilsonecb80982017-07-12 20:34:511919const char kThreadedScrollingName[] = "Threaded scrolling";
1920const char kThreadedScrollingDescription[] =
1921 "Threaded handling of scroll-related input events. Disabling this will "
1922 "force all such scroll events to be handled on the main thread. Note that "
1923 "this can dramatically hurt scrolling performance of most websites and is "
1924 "intended for testing purposes only.";
1925
Brett Wilsonecb80982017-07-12 20:34:511926const char kTouchAdjustmentName[] = "Touch adjustment";
1927const char kTouchAdjustmentDescription[] =
1928 "Refine the position of a touch gesture in order to compensate for touches "
1929 "having poor resolution compared to a mouse.";
1930
1931const char kTouchDragDropName[] = "Touch initiated drag and drop";
1932const char kTouchDragDropDescription[] =
1933 "Touch drag and drop can be initiated through long press on a draggable "
1934 "element.";
1935
1936const char kTouchEventsName[] = "Touch Events API";
1937const char kTouchEventsDescription[] =
1938 "Force Touch Events API feature detection to always be enabled or "
1939 "disabled, or to be enabled when a touchscreen is detected on startup "
Ella Gea6a203c92017-10-26 19:09:291940 "(Automatic).";
Brett Wilsonecb80982017-07-12 20:34:511941
1942const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
1943const char kTouchSelectionStrategyDescription[] =
1944 "Controls how text selection granularity changes when touch text selection "
1945 "handles are dragged. Non-default behavior is experimental.";
1946const char kTouchSelectionStrategyCharacter[] = "Character";
1947const char kTouchSelectionStrategyDirection[] = "Direction";
1948
Jan Wilken Dörrie45ccf252019-06-25 18:07:461949const char kTouchToFillAndroidName[] = "Touch To Fill UI for Passwords";
1950const char kTouchToFillAndroidDescription[] =
1951 "Adds a Touch To Fill sheet to the keyboard accessory which will be shown "
1952 "instead of the keyboard when a password can be filled.";
1953
Brett Wilsonecb80982017-07-12 20:34:511954const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
1955const char kTraceUploadUrlDescription[] =
1956 "This is to be used in conjunction with the enable-navigation-tracing "
1957 "flag. Please select the label that best describes the recorded traces. "
1958 "This will choose the destination the traces are uploaded to. If you are "
1959 "not sure, select other. If left empty, no traces will be uploaded.";
1960const char kTraceUploadUrlChoiceOther[] = "Other";
1961const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1962const char kTraceUploadUrlChoiceQa[] = "QA";
1963const char kTraceUploadUrlChoiceTesting[] = "Testing";
1964
Anthony Vallee-Dubois265c5692018-06-01 15:57:141965const char kTranslateForceTriggerOnEnglishName[] =
1966 "Select which language model to use to trigger translate on English "
1967 "content";
1968const char kTranslateForceTriggerOnEnglishDescription[] =
1969 "Force the Translate Triggering on English pages experiment to be enabled "
1970 "with the selected language model active.";
1971
Haohao Wang5b525f722019-05-18 15:37:521972const char kTranslateBubbleUIName[] =
1973 "Select which UI to use for translate bubble";
1974const char kTranslateBubbleUIDescription[] =
1975 "Three bubble options to choose. Existing UI is selected by default";
1976
Mustafa Emre Acerb3aa36a82018-05-22 21:44:051977const char kTreatInsecureOriginAsSecureName[] =
1978 "Insecure origins treated as secure";
1979const char kTreatInsecureOriginAsSecureDescription[] =
1980 "Treat given (insecure) origins as secure origins. Multiple origins can be "
1981 "supplied as a comma-separated list. For the definition of secure "
1982 "contexts, "
1983 "see https://w3c.github.io/webappsec-secure-contexts/";
1984
Joe DeBlasio2a4fb9982019-05-06 23:44:431985const char kTreatUnsafeDownloadsAsActiveName[] =
1986 "Treat risky downloads over insecure connections as active mixed content";
1987const char kTreatUnsafeDownloadsAsActiveDescription[] =
1988 "Disallows downloads of unsafe files (files that can potentially execute "
1989 "code), where the final download origin or any origin in the redirect "
1990 "chain is insecure if the originating page is secure.";
1991
Brett Wilsonecb80982017-07-12 20:34:511992const char kTrySupportedChannelLayoutsName[] =
1993 "Causes audio output streams to check if channel layouts other than the "
1994 "default hardware layout are available.";
1995const char kTrySupportedChannelLayoutsDescription[] =
1996 "Causes audio output streams to check if channel layouts other than the "
1997 "default hardware layout are available. Turning this on will allow the OS "
1998 "to do stereo to surround expansion if supported. May expose third party "
1999 "driver bugs, use with caution.";
2000
Shawn Pickett0b470712019-08-15 00:43:452001const char kTurnOffStreamingMediaCachingName[] =
2002 "Turn off caching of streaming media to disk.";
2003const char kTurnOffStreamingMediaCachingDescription[] =
2004 "Reduces disk activity during media playback, which can result in "
2005 "power savings.";
2006
Elly Fong-Jones94fc8632019-08-14 18:23:032007const char kUnexpireFlagsM78Name[] = "Temporarily unexpire M78 flags.";
2008const char kUnexpireFlagsM78Description[] =
2009 "Temporarily unexpire flags that are expired as of M78. These flags will "
Elly Fong-Jonesd488661c2019-07-31 21:53:262010 "be removed soon.";
2011
David Roger6762a092018-01-31 15:55:072012const char kUnifiedConsentName[] = "Unified Consent";
2013const char kUnifiedConsentDescription[] =
2014 "Enables a unified management of user consent for privacy-related "
2015 "features. This includes new confirmation screens and improved settings "
2016 "pages.";
2017
François Beaufortdb160c12019-05-01 06:28:142018const char kUnsafeWebGPUName[] = "Unsafe WebGPU";
2019const char kUnsafeWebGPUDescription[] =
2020 "Enables access to the experimental WebGPU API. Warning: As GPU sanboxing "
2021 "isn't implemented yet for the WebGPU API, it is possible to read GPU data "
2022 "for other processes.";
2023
Brett Wilsonecb80982017-07-12 20:34:512024const char kUiPartialSwapName[] = "Partial swap";
2025const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
2026
Wei Li790e7a8572018-03-23 01:31:552027const char kUsePdfCompositorServiceName[] =
2028 "Use PDF compositor service for printing";
2029const char kUsePdfCompositorServiceDescription[] =
2030 "When enabled, use PDF compositor service to composite and generate PDF "
2031 "files for printing. When site isolation is enabled, disabling this will "
2032 "not stop using PDF compositor service since the service is required for "
2033 "printing out-of-process iframes correctly.";
2034
Mustaq Ahmedc646c0a2017-10-20 20:08:302035const char kUserActivationV2Name[] = "User Activation v2";
2036const char kUserActivationV2Description[] =
2037 "Enable simple user activation for APIs that are otherwise controlled by "
2038 "user gesture tokens.";
2039
Vadym Doroshenkob7f9ef22019-07-16 13:51:062040const char kUsernameFirstFlowName[] = "Username first flow";
2041const char kUsernameFirstFlowDescription[] =
2042 "Support of username saving and filling on username first flow i.e. login "
2043 "flows where a user has to type username first on one page and then "
2044 "password on another page";
2045
Zentaro Kavanagh892851f2019-05-29 15:13:312046const char kUseSearchClickForRightClickName[] =
2047 "Use Search+Click for right click";
2048const char kUseSearchClickForRightClickDescription[] =
2049 "When enabled search+click will be remapped to right click, allowing "
2050 "webpages and apps to consume alt+click. When disabled the legacy "
2051 "behavior of remapping alt+click to right click will remain unchanged.";
2052
Michael Hablich896d52662017-10-23 15:59:572053const char kV8VmFutureName[] = "Future V8 VM features";
2054const char kV8VmFutureDescription[] =
2055 "This enables upcoming and experimental V8 VM features. "
2056 "This flag does not enable experimental JavaScript features.";
2057
Brett Wilsonecb80982017-07-12 20:34:512058const char kWalletServiceUseSandboxName[] =
2059 "Use Google Payments sandbox servers";
2060const char kWalletServiceUseSandboxDescription[] =
2061 "For developers: use the sandbox service for Google Payments API calls.";
2062
Brett Wilsonecb80982017-07-12 20:34:512063const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
2064const char kWebglDraftExtensionsDescription[] =
2065 "Enabling this option allows web applications to access the WebGL "
2066 "Extensions that are still in draft status.";
2067
2068const char kWebMidiName[] = "Web MIDI API";
2069const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
2070
Danyao Wang47a0f312019-05-09 20:52:242071const char kWebPaymentsExperimentalFeaturesName[] =
2072 "Experimental Web Payments API features";
2073const char kWebPaymentsExperimentalFeaturesDescription[] =
2074 "Enable experimental Web Payments API features";
2075
Qingsi Wangec2dbf942018-11-03 05:33:042076const char kWebrtcHideLocalIpsWithMdnsName[] =
2077 "Anonymize local IPs exposed by WebRTC.";
2078const char kWebrtcHideLocalIpsWithMdnsDecription[] =
2079 "Conceal local IP addresses with mDNS hostnames.";
2080
Alex Loikob5fb1282018-08-14 10:04:402081const char kWebrtcHybridAgcName[] = "WebRTC hybrid Agc2/Agc1.";
2082const char kWebrtcHybridAgcDescription[] =
2083 "WebRTC Agc2 digital adaptation with Agc1 analog adaptation.";
2084
Brett Wilsonecb80982017-07-12 20:34:512085const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
2086const char kWebrtcHwDecodingDescription[] =
2087 "Support in WebRTC for decoding video streams using platform hardware.";
2088
2089const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
2090const char kWebrtcHwEncodingDescription[] =
2091 "Support in WebRTC for encoding video streams using platform hardware.";
2092
2093const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
2094const char kWebrtcHwH264EncodingDescription[] =
2095 "Support in WebRTC for encoding h264 video streams using platform "
2096 "hardware.";
2097
2098const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
2099const char kWebrtcHwVP8EncodingDescription[] =
2100 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
2101
Sreerenj Balachandran2a5fd0972019-02-08 22:15:202102const char kWebrtcHwVP9EncodingName[] = "WebRTC hardware vp9 video encoding";
2103const char kWebrtcHwVP9EncodingDescription[] =
2104 "Support in WebRTC for encoding vp9 video streams using platform hardware.";
2105
Niels Möller090866a2018-02-13 10:55:032106const char kWebrtcNewEncodeCpuLoadEstimatorName[] =
2107 "WebRTC new encode cpu load estimator";
2108const char kWebrtcNewEncodeCpuLoadEstimatorDescription[] =
2109 "Enable new estimator for the encoder cpu load, for evaluation and "
2110 "testing. Intended to improve accuracy when screen casting.";
2111
Elad Alon85e0d0be2018-06-26 10:38:372112const char kWebRtcRemoteEventLogName[] = "WebRTC remote-bound event logging";
2113const char kWebRtcRemoteEventLogDescription[] =
2114 "Allow collecting WebRTC event logs and uploading them to Crash. "
2115 "Please note that, even if enabled, this will still require "
2116 "a policy to be set, for it to have an effect.";
2117
Brett Wilsonecb80982017-07-12 20:34:512118const char kWebrtcSrtpAesGcmName[] =
2119 "Negotiation with GCM cipher suites for SRTP in WebRTC";
2120const char kWebrtcSrtpAesGcmDescription[] =
2121 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
2122
2123const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
2124const char kWebrtcStunOriginDescription[] =
2125 "When enabled, Stun messages generated by WebRTC will contain the Origin "
2126 "header.";
2127
Peter Boström92add81d2019-08-12 22:14:242128const char kWebUITabStripName[] = "WebUI tab strip";
2129const char kWebUITabStripDescription[] =
2130 "When enabled makes use of a WebUI-based tab strip.";
2131
Brett Wilsonecb80982017-07-12 20:34:512132const char kWebvrName[] = "WebVR";
2133const char kWebvrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012134 "Enables access to experimental Virtual Reality functionality via the "
Alex Cooperee755592019-07-17 21:42:532135 "WebVR 1.1 API. This flag is deprecated and will be removed as soon as "
2136 "Chrome 79. This feature will eventually be replaced by the WebXR "
Anna Offenwanger00e6dd052018-04-05 02:12:012137 "Device API. Warning: Enabling this will also allow WebVR content on "
2138 "insecure origins to access these powerful APIs, and may pose a security "
David Dorwin09448942019-01-11 23:37:302139 "risk. Controllers are exposed as Gamepads, and WebVR-specific attributes "
2140 "are exposed.";
Brett Wilsonecb80982017-07-12 20:34:512141
Brandon Jonese9d9b2b2017-12-11 22:20:112142const char kWebXrName[] = "WebXR Device API";
2143const char kWebXrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012144 "Enables access to experimental APIs to interact with Virtual Reality (VR) "
2145 "and Augmented Reality (AR) devices.";
2146
Piotr Bialecki2cab3f292019-08-09 17:36:472147const char kWebXrAnchorsName[] = "WebXR Anchors";
2148const char kWebXrAnchorsDescription[] =
2149 "Enables access to anchors via WebXR API.";
2150
Ian Vollick7aaccf92018-04-07 23:10:432151const char kWebXrHitTestName[] = "WebXR Hit Test";
2152const char kWebXrHitTestDescription[] =
2153 "Enables access to raycasting against estimated XR scene geometry.";
Brandon Jonese9d9b2b2017-12-11 22:20:112154
Piotr Bialeckid77fb9c2019-04-26 17:06:242155const char kWebXrPlaneDetectionName[] = "WebXR Plane Detection";
2156const char kWebXrPlaneDetectionDescription[] =
2157 "Enables access to planes detected in the user's environment.";
2158
Brett Wilsonecb80982017-07-12 20:34:512159const char kZeroCopyName[] = "Zero-copy rasterizer";
2160const char kZeroCopyDescription[] =
2161 "Raster threads write directly to GPU memory associated with tiles.";
vabr0215a8e2017-03-28 12:47:342162
Brett Wilsonff596952017-07-14 01:06:552163// Android ---------------------------------------------------------------------
2164
2165#if defined(OS_ANDROID)
2166
2167const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
2168const char kAiaFetchingDescription[] =
2169 "Enable intermediate certificate fetching when a server does not provide "
2170 "sufficient certificates to build a chain to a trusted root.";
2171
Pavel Shmakov798f4742018-11-15 21:27:382172const char kAllowRemoteContextForNotificationsName[] =
2173 "Allow using remote app context for notifications";
2174const char kAllowRemoteContextForNotificationsDescription[] =
2175 "Allow using Context#createPackageContext to work around issues with status"
2176 "bar icons on certain Android M devices.";
2177
Brett Wilsonff596952017-07-14 01:06:552178const char kAndroidAutofillAccessibilityName[] = "Autofill Accessibility";
2179const char kAndroidAutofillAccessibilityDescription[] =
2180 "Enable accessibility for autofill popup.";
2181
Khushalbb1963a2018-10-02 21:02:352182const char kAndroidSurfaceControl[] = "Use Android SurfaceControl";
2183const char kAndroidSurfaceControlDescription[] =
2184 "Use the SurfaceControl API for supporting overlays on Android";
2185
Anita Woodruffbfcd1e52018-07-16 12:00:512186const char kAppNotificationStatusMessagingName[] =
2187 "App notification status messaging";
2188const char kAppNotificationStatusMessagingDescription[] =
2189 "Enables messaging in site permissions UI informing user when "
2190 "notifications are disabled for the entire app.";
2191
Miriam Gershenson8cf1397222018-01-23 22:48:292192const char kAsyncDnsName[] = "Async DNS resolver";
2193const char kAsyncDnsDescription[] = "Enables the built-in DNS resolver.";
2194
Dan Harrington01229f82018-09-12 21:01:212195const char kAutoFetchOnNetErrorPageName[] = "AutoFetchOnNetErrorPage";
2196const char kAutoFetchOnNetErrorPageDescription[] =
2197 "When enabled, and navigation fails with an offline error, schedule a "
2198 "fetch of the page when online again.";
2199
Brett Wilsonff596952017-07-14 01:06:552200const char kAutofillAccessoryViewName[] =
2201 "Autofill suggestions as keyboard accessory view";
2202const char kAutofillAccessoryViewDescription[] =
2203 "Shows Autofill suggestions on top of the keyboard rather than in a "
2204 "dropdown.";
2205
Caitlin Fischer43edd90a2019-05-01 13:24:302206const char kAutofillUseMobileLabelDisambiguationName[] =
2207 "Autofill Uses Mobile Label Disambiguation";
2208const char kAutofillUseMobileLabelDisambiguationDescription[] =
2209 "When enabled, Autofill suggestions' labels are displayed using a "
2210 "mobile-friendly format.";
2211
Tibor Goldschwendt11b3cf22018-07-04 15:32:442212const char kBackgroundTaskComponentUpdateName[] =
2213 "Background Task Component Updates";
2214const char kBackgroundTaskComponentUpdateDescription[] =
2215 "Schedule component updates with BackgroundTaskScheduler";
2216
Michael van Ouwerkerkbda4ad82018-06-19 14:08:002217const char kCCTModuleName[] = "Chrome Custom Tabs Module";
2218const char kCCTModuleDescription[] =
2219 "Enables a dynamically loaded module in Chrome Custom Tabs, on Android.";
2220
Michael van Ouwerkerk29a7a292018-10-09 09:20:142221const char kCCTModuleCacheName[] = "Chrome Custom Tabs Module Cache";
2222const char kCCTModuleCacheDescription[] =
Michael van Ouwerkerka5df1ec2018-10-11 11:57:402223 "Enables a cache for dynamically loaded modules in Chrome Custom Tabs. "
2224 "Under mild memory pressure the cache may be retained for some time";
Michael van Ouwerkerk29a7a292018-10-09 09:20:142225
John Lin170c00b2018-11-21 15:44:252226const char kCCTModuleCustomHeaderName[] =
2227 "Chrome Custom Tabs Module Custom Header";
2228const char kCCTModuleCustomHeaderDescription[] =
2229 "Enables header customization by dynamically loaded modules in "
2230 "Chrome Custom Tabs.";
2231
Michael van Ouwerkerk0878427a2019-02-13 15:11:422232const char kCCTModuleCustomRequestHeaderName[] =
2233 "Chrome Custom Tabs Module Custom Request Header";
2234const char kCCTModuleCustomRequestHeaderDescription[] =
2235 "Enables a custom request header for URLs managed by dynamically loaded "
2236 "modules in Chrome Custom Tabs.";
2237
alihanlivdumlu12ac4772019-01-17 17:37:182238const char kCCTModuleDexLoadingName[] = "Chrome Custom Tabs Module Dex Loading";
2239const char kCCTModuleDexLoadingDescription[] =
2240 "Enables loading Chrome Custom Tabs module code from a dex file "
2241 "provided by the module.";
2242
barkerd84051482018-11-13 14:46:562243const char kCCTModulePostMessageName[] =
2244 "Chrome Custom Tabs Module postMessage API";
2245const char kCCTModulePostMessageDescription[] =
2246 "Enables the postMessage API exposed to dynamically loaded modules in "
2247 "Chrome Custom Tabs.";
2248
Anna Malova9bb4ead2019-01-18 18:01:262249const char kCCTModuleUseIntentExtrasName[] =
2250 "Chrome Custom Tabs Module Intent Extras Usage";
2251const char kCCTModuleUseIntentExtrasDescription[] =
2252 "Enables usage of Intent's extras in Chrome Custom Tabs Module";
2253
Anna Malovaf7c734a2019-03-01 13:08:452254const char kCCTTargetTranslateLanguageName[] =
2255 "Chrome Custom Tabs Target Translate Language";
2256const char kCCTTargetTranslateLanguageDescription[] =
2257 "Enables specify target language the page should be translated to "
2258 "in Chrome Custom Tabs.";
2259
Matthew Jones1abcb132018-07-09 17:59:462260const char kChromeDuetName[] = "Chrome Duet";
2261const char kChromeDuetDescription[] =
2262 "Enables Chrome Duet, split toolbar Chrome Home, on Android.";
Theresa Wellingtonb9243b22017-12-01 16:23:052263
Pedro Amaral5e345192019-05-21 21:18:472264const char kChromeDuetLabelsName[] = "Chrome Duet Labels";
2265const char kChromeDuetLabelsDescription[] =
2266 "Enables Chrome Duet (split toolbar) labels.";
2267
Sarath Singapati83aef1c2017-11-16 15:54:522268const char kClearOldBrowsingDataName[] = "Clear older browsing data";
2269const char kClearOldBrowsingDataDescription[] =
2270 "Enables clearing of browsing data which is older than a given time "
2271 "period.";
2272
Richard Knoll368596e52019-08-14 09:16:282273const char kClickToCallOpenDialerDirectlyName[] =
2274 "Open the dialer directly for Click to Call";
2275const char kClickToCallOpenDialerDirectlyDescription[] =
2276 "Enables opening the dialer directly instead of displaying a notification. "
2277 "Only available on Android P- and when the screen is on and unlocked.";
2278
Michael van Ouwerkerkd4e4a392019-07-26 14:41:132279const char kClickToCallReceiverName[] =
2280 "Enable receiver device to handle click to call feature";
2281const char kClickToCallReceiverDescription[] =
2282 "Enables receiver device to handle click to call feature by showing a "
2283 "notification to call the phone number clicked on the desktop.";
2284
Donn Denman4315f262019-03-02 02:47:412285const char kContextualSearchDefinitionsName[] = "Contextual Search definitions";
2286const char kContextualSearchDefinitionsDescription[] =
2287 "Enables tap-activated contextual definitions of words on a page to be "
2288 "presented in the caption of the Tap to Search Bar.";
2289
Donn Denman6be77d42019-05-04 15:55:422290const char kContextualSearchLongpressResolveName[] =
2291 "Contextual Search long-press Resolves";
2292const char kContextualSearchLongpressResolveDescription[] =
2293 "Enables communicating with Google servers when a long-press gesture is "
2294 "recognized under some privacy-limited conditions. The page context data "
2295 " sent to Google is potentially privacy sensitive!";
2296
Donn Denman8e58ead2017-11-04 01:44:012297const char kContextualSearchMlTapSuppressionName[] =
2298 "Contextual Search ML tap suppression";
2299const char kContextualSearchMlTapSuppressionDescription[] =
2300 "Enables tap gestures to be suppressed to improve CTR by applying machine "
Donn Denman59729812018-01-09 01:27:022301 "learning. The \"Contextual Search Ranker prediction\" flag must also be "
2302 "enabled!";
Brett Wilsonff596952017-07-14 01:06:552303
Donn Denman59729812018-01-09 01:27:022304const char kContextualSearchRankerQueryName[] =
2305 "Contextual Search Ranker prediction";
2306const char kContextualSearchRankerQueryDescription[] =
2307 "Enables prediction of tap gestures using Assist-Ranker machine learning.";
2308
Donn Denman63d169f2019-03-08 23:34:502309const char kContextualSearchSimplifiedServerName[] =
2310 "Contextual Search simplified server logic";
2311const char kContextualSearchSimplifiedServerDescription[] =
2312 "Enables simpler server-side logic for determining what data to return and "
2313 "show in the Contextual Search UI. Option to allow all cards CoCa "
2314 "returns.";
2315
Donn Denman59729812018-01-09 01:27:022316const char kContextualSearchSecondTapName[] =
2317 "Contextual Search second tap triggering";
2318const char kContextualSearchSecondTapDescription[] =
2319 "Enables triggering on a second tap gesture even when Ranker would "
2320 "normally suppress that tap.";
2321
Donn Denman75f4b052019-04-05 17:55:212322const char kContextualSearchTranslationModelName[] =
2323 "Contextual Search translation using the Chrome translate model.";
2324const char kContextualSearchTranslationModelDescription[] =
2325 "Enables triggering translation in Contextual Search according to the "
2326 "Chrome translation model semantics.";
2327
Donn Denmane9b5b7fb2018-07-24 22:19:492328const char kContextualSearchUnityIntegrationName[] =
2329 "Contextual Search integration with Unified Consent";
2330const char kContextualSearchUnityIntegrationDescription[] =
2331 "Enables integration of Tap to Search with Unified Consent.";
2332
Jordan Demeulenaere9404ba232019-07-01 12:57:162333const char kDirectActionsName[] = "Direct actions";
2334const char kDirectActionsDescription[] =
2335 "Enables direct actions (Android Q and more).";
2336
Shakti Sahu32b2ee102018-05-17 00:04:462337const char kDownloadProgressInfoBarName[] = "Enable download progress infobar";
2338const char kDownloadProgressInfoBarDescription[] =
2339 "Enables an infobar notifying users about status of current downloads.";
2340
Shakti Sahu9ec8cfd2018-07-17 13:29:292341const char kDownloadHomeV2Name[] = "Enable download home v2";
2342const char kDownloadHomeV2Description[] =
2343 "Enables the new UI for download home";
2344
Hesen Zhangf7ad6142019-03-12 23:48:312345const char kDownloadRenameName[] = "Enable download rename";
2346const char kDownloadRenameDescription[] = "Enables rename option for downloads";
2347
Fabio Tirelo918089a2018-10-22 21:24:082348const char kAutofillManualFallbackAndroidName[] =
2349 "Enable Autofill manual fallback for Addresses and Payments (Android)";
2350const char kAutofillManualFallbackAndroidDescription[] =
2351 "If enabled, adds toggle for addresses and payments bottom sheet to the "
2352 "keyboard accessory.";
2353
Fabio Tirelo315e65922018-09-05 03:35:492354const char kEnableAutofillRefreshStyleName[] =
2355 "Enable Autofill refresh style (Android)";
2356const char kEnableAutofillRefreshStyleDescription[] =
2357 "Enable modernized style for Autofill on Android";
2358
Vitalii Iarkof4ed32d2017-09-26 13:15:532359const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
Brett Wilsonff596952017-07-14 01:06:552360const char kEnableAndroidSpellcheckerDescription[] =
2361 "Enables use of the Android spellchecker.";
Brett Wilsonff596952017-07-14 01:06:552362
Lei Tianbd5a3bf2018-02-28 19:01:162363const char kEnableCommandLineOnNonRootedName[] =
2364 "Enable command line on non-rooted devices";
2365const char kEnableCommandLineOnNoRootedDescription[] =
2366 "Enable reading command line file on non-rooted devices (DANGEROUS).";
2367
Sinan Sahin3bafe272019-03-11 17:03:062368const char kEnableRevampedContextMenuName[] =
2369 "Enable the revamped context menu";
2370const char kEnableRevampedContextMenuDescription[] =
2371 "Enables a revamped context menu when a link, image, or video is long "
2372 "pressed within Chrome.";
2373
Brett Wilsonff596952017-07-14 01:06:552374const char kEnableNtpRemoteSuggestionsName[] =
2375 "Show server-side suggestions on the New Tab page";
2376const char kEnableNtpRemoteSuggestionsDescription[] =
2377 "If enabled, the list of content suggestions on the New Tab page will "
2378 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
2379 "allows to override the source used to retrieve these server-side "
2380 "suggestions.";
2381
Brett Wilsonff596952017-07-14 01:06:552382const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
2383const char kEnableOfflinePreviewsDescription[] =
2384 "Enable showing offline page previews on slow networks.";
2385
Brett Wilsonff596952017-07-14 01:06:552386const char kEnableWebNfcName[] = "WebNFC";
2387const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
2388
Donn Denman6d184582019-05-18 00:32:112389const char kEphemeralTabName[] = "An ephemeral Preview Tab in an Overlay Panel";
Donn Denmanffaeaa32018-10-12 17:37:532390const char kEphemeralTabDescription[] =
Donn Denmanb45c26a2019-02-13 01:42:212391 "Enable a 'Preview page/image' at a linked page into an overlay.";
Donn Denmanffaeaa32018-10-12 17:37:532392
Lei Zhang0a318af2018-11-14 02:19:462393const char kExploreSitesName[] = "Explore websites";
2394const char kExploreSitesDescription[] =
2395 "Enables portal from new tab page to explore websites.";
2396
Ian Wells665a2b92019-07-12 21:19:002397const char kInterestFeedNotificationsName[] = "Interest Feed Notifications";
2398const char kInterestFeedNotificationsDescription[] =
2399 "Show notifications for some suggested content from the interest feed. "
2400 "#interest-feed-content-suggestions should also be enabled.";
2401
Xing Liu7d57dd32019-01-20 02:34:182402const char kForegroundNotificationManagerName[] =
2403 "Foreground notification manager";
2404const char kForegroundNotificationManagerDescription[] =
2405 "Enable foreground notification manager to handle foreground service and "
2406 "notification.";
2407
Daniel Parke74fcf862018-03-27 18:05:452408const char kHomePageButtonName[] = "Force Enable Home Page Button";
Daniel Park990d0992018-05-18 22:12:512409const char kHomePageButtonDescription[] = "Displays a home button if enabled.";
Daniel Parke74fcf862018-03-27 18:05:452410
Yafei Duanbb7663f32018-07-17 01:33:152411const char kHomepageTileName[] =
2412 "Enable Homepage tile shown in Suggested Tiles";
2413const char kHomepageTileDescription[] =
2414 "When NTPButton is enabled, the first tile of the Suggested Tiles will be "
2415 "used for homepage. It will not have an effect when NTPButton is disabled.";
2416
Pavel Yatsuk6b1e3a072019-05-08 22:18:252417const char kIdentityDiscName[] = "Identity Disc";
2418const char kIdentityDiscDescription[] =
2419 "Enables Identity Disc, profile avatar icon button in toolbar.";
2420
Theresa920e0ed2018-03-07 18:12:442421const char kInterestFeedContentSuggestionsDescription[] =
Yafei Duanbb7663f32018-07-17 01:33:152422 "Use the interest feed to render content suggestions. Currently "
2423 "content "
Theresa920e0ed2018-03-07 18:12:442424 "suggestions are shown on the New Tab Page.";
2425const char kInterestFeedContentSuggestionsName[] =
2426 "Interest Feed Content Suggestions";
2427
Ioana Pandeled8dc2b692019-02-20 12:04:152428const char kManualPasswordGenerationAndroidName[] =
2429 "Manual password generation";
2430const char kManualPasswordGenerationAndroidDescription[] =
2431 "Whether Chrome should offer users the option to manually request to "
2432 "generate passwords on Android.";
Amirhossein Simjour97b4154f2018-02-20 03:49:592433
Dan Harrington541db9e2018-07-30 18:36:302434const char kNewNetErrorPageUIName[] = "Enable new UI for net-error page";
2435const char kNewNetErrorPageUIDescription[] =
Dan Harringtonc78e4622019-03-22 19:13:242436 "Enables showing available offline content on the net-error (Dino) page.";
Dan Harrington541db9e2018-07-30 18:36:302437
Brett Wilsonff596952017-07-14 01:06:552438const char kNewPhotoPickerName[] = "Enable new Photopicker";
2439const char kNewPhotoPickerDescription[] =
2440 "Activates the new picker for selecting photos.";
2441
2442const char kNoCreditCardAbort[] = "No Credit Card Abort";
2443const char kNoCreditCardAbortDescription[] =
2444 "Whether or not the No Credit Card Abort is enabled.";
2445
Daniel Park990d0992018-05-18 22:12:512446const char kNtpButtonName[] = "Enable NTP Button";
2447const char kNtpButtonDescription[] =
2448 "Displays a New Tab Page button in the toolbar if enabled.";
2449
Jian Liade82832018-09-06 22:31:412450const char kOfflineIndicatorAlwaysHttpProbeName[] = "Always http probe";
2451const char kOfflineIndicatorAlwaysHttpProbeDescription[] =
2452 "Always do http probe to detect network connectivity for offline indicator "
2453 "as opposed to just taking the connection state from the system."
2454 "Used for testing.";
2455
2456const char kOfflineIndicatorChoiceName[] = "Offline indicator choices";
2457const char kOfflineIndicatorChoiceDescription[] =
2458 "Show an offline indicator while offline.";
Jian Li1413ebf2018-06-14 20:46:322459
Brett Wilsonff596952017-07-14 01:06:552460const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
2461const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
2462
2463const char kOfflinePagesCtV2Name[] = "Enable Offline Pages CT V2 features.";
2464const char kOfflinePagesCtV2Description[] =
2465 "V2 features include attributing pages to the app that initiated the "
2466 "custom tabs, and being able to query for pages by page attribution.";
2467
Cathy Li7311d792018-04-05 00:34:162468const char kOfflinePagesCTSuppressNotificationsName[] =
2469 "Disable download complete notification for whitelisted CCT apps.";
2470const char kOfflinePagesCTSuppressNotificationsDescription[] =
2471 "Disable download complete notification for page downloads originating "
2472 "from a CCT app whitelisted to show their own download complete "
2473 "notification.";
2474
Candice Sy74fa7a352018-03-30 23:46:492475const char kOfflinePagesDescriptiveFailStatusName[] =
2476 "Enables descriptive failed download status text.";
2477const char kOfflinePagesDescriptiveFailStatusDescription[] =
2478 "Enables failed download status text in notifications and Downloads Home "
2479 "to state the reason the request failed if the failure is actionable.";
2480
2481const char kOfflinePagesDescriptivePendingStatusName[] =
2482 "Enables descriptive pending download status text.";
2483const char kOfflinePagesDescriptivePendingStatusDescription[] =
2484 "Enables pending download status text in notifications and Downloads Home "
2485 "to state the reason the request is pending.";
2486
2487const char kOfflinePagesInDownloadHomeOpenInCctName[] =
2488 "Enables offline pages in the downloads home to be opened in CCT.";
2489const char kOfflinePagesInDownloadHomeOpenInCctDescription[] =
2490 "When enabled offline pages launched from the Downloads Home will be "
2491 "opened in Chrome Custom Tabs (CCT) instead of regular tabs.";
2492
Carlos Knippschild09272ecd2017-12-09 03:29:362493const char kOfflinePagesLimitlessPrefetchingName[] =
2494 "Removes resource usage limits for the prefetching of offline pages.";
2495const char kOfflinePagesLimitlessPrefetchingDescription[] =
2496 "Allows the prefetching of suggested offline pages to ignore resource "
2497 "usage limits. This allows it to completely ignore data usage limitations "
2498 "and allows downloads to happen with any kind of connection.";
2499
Brett Wilsonff596952017-07-14 01:06:552500const char kOfflinePagesLoadSignalCollectingName[] =
2501 "Enables collecting load timing data for offline page snapshots.";
2502const char kOfflinePagesLoadSignalCollectingDescription[] =
2503 "Enables loading completeness data collection while writing an offline "
2504 "page. This data is collected in the snapshotted offline page to allow "
2505 "data analysis to improve deciding when to make the offline snapshot.";
2506
2507const char kOfflinePagesPrefetchingName[] =
2508 "Enables suggested offline pages to be prefetched.";
2509const char kOfflinePagesPrefetchingDescription[] =
2510 "Enables suggested offline pages to be prefetched, so useful content is "
2511 "available while offline.";
2512
Pete Williamson7845dff2017-09-20 11:06:192513const char kOfflinePagesResourceBasedSnapshotName[] =
2514 "Enables offline page snapshots to be based on percentage of page loaded.";
2515const char kOfflinePagesResourceBasedSnapshotDescription[] =
2516 "Enables offline page snapshots to use a resource percentage based "
2517 "approach for determining when the page is loaded as opposed to a time "
2518 "based approach";
2519
Collin Baker17f92a52017-07-19 21:41:252520const char kOfflinePagesRenovationsName[] = "Enables offline page renovations.";
2521const char kOfflinePagesRenovationsDescription[] =
2522 "Enables offline page renovations which correct issues with dynamic "
2523 "content that occur when offlining pages that use JavaScript.";
2524
Yafei Duan36b4b5b2018-08-07 00:40:032525const char kOfflinePagesLivePageSharingName[] =
2526 "Enables live page sharing of offline pages";
2527const char kOfflinePagesLivePageSharingDescription[] =
2528 "Enables to share current loaded page as offline page by saving as MHTML "
2529 "first.";
2530
Cathy Lie0d88762018-04-12 08:03:012531const char kOfflinePagesShowAlternateDinoPageName[] =
2532 "Enable alternate dino page with more user capabilities.";
2533const char kOfflinePagesShowAlternateDinoPageDescription[] =
2534 "Enables the dino page to show more buttons and offer existing offline "
2535 "content.";
2536
Brett Wilsonff596952017-07-14 01:06:552537const char kOffliningRecentPagesName[] =
2538 "Enable offlining of recently visited pages";
2539const char kOffliningRecentPagesDescription[] =
2540 "Enable storing recently visited pages locally for offline use. Requires "
2541 "Offline Pages to be enabled.";
2542
Andrei Chulkov1a12e6d22019-07-15 11:16:072543const char kPasswordManagerOnboardingAndroidName[] =
2544 "Password manager onboarding experience";
2545const char kPasswordManagerOnboardingAndroidDescription[] =
2546 "This flag enables showing the password manager onboarding experience.";
2547
Aaron Colwell5235f352019-07-25 20:10:242548extern const char kProcessSharingWithDefaultSiteInstancesName[] =
2549 "Process sharing with default site instances";
2550extern const char kProcessSharingWithDefaultSiteInstancesDescription[] =
2551 "When site isolation is disabled, this mode changes how sites are lumped "
2552 "in to shared processes. For sites that do not require isolation, this "
2553 "feature groups them into a single 'default' site instance (per browsing "
2554 "instance) instead of creating unique site instances for each one. This "
2555 "enables resource savings by creating fewer processes for sites that do "
2556 "not need isolation.";
2557
Andrei Chulkov1a12e6d22019-07-15 11:16:072558extern const char kProcessSharingWithStrictSiteInstancesName[] =
2559 "Process sharing with strict site instances";
2560extern const char kProcessSharingWithStrictSiteInstancesDescription[] =
2561 "When site isolation is disabled, this mode changes how sites are lumped "
2562 "in to a shared process. Process selection is usually controlled with "
2563 "site instances. With strict site isolation, each site on a page gets its "
2564 "own site instance and process. With site isolation disabled and without "
2565 "this mode, all sites that share a process are put into the same site "
2566 "instance. This mode adds a third way: site instances are strictly "
2567 "separated like strict site isolation, but process selection puts multiple "
2568 "site instances in a single process.";
2569
Matthew Jonesa88b95852017-11-08 23:13:502570const char kProgressBarThrottleName[] = "Android progress update throttling.";
2571const char kProgressBarThrottleDescription[] =
2572 "Limit the maximum progress update to make progress appear smoother.";
2573
Brett Wilsonff596952017-07-14 01:06:552574const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
2575const char kReaderModeHeuristicsDescription[] =
2576 "Determines what pages the Reader Mode infobar is shown on.";
2577const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
2578const char kReaderModeHeuristicsAdaboost[] = "Non-mobile-friendly articles";
2579const char kReaderModeHeuristicsAllArticles[] = "All articles";
2580const char kReaderModeHeuristicsAlwaysOff[] = "Never";
2581const char kReaderModeHeuristicsAlwaysOn[] = "Always";
2582
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:182583const char kReaderModeInCCTName[] = "Reader Mode in CCT";
2584const char kReaderModeInCCTDescription[] =
2585 "Open Reader Mode in Chrome Custom Tabs.";
2586
Varun Khaneja80712a82018-10-12 23:34:592587const char kSafeBrowsingUseLocalBlacklistsV2Name[] =
2588 "Use local Safe Browsing blacklists";
2589const char kSafeBrowsingUseLocalBlacklistsV2Description[] =
2590 "If enabled, maintain a copy of Safe Browsing blacklists in the browser "
2591 "process to check the Safe Browsing reputation of URLs without calling "
2592 "into GmsCore for every URL.";
2593
Matthew Jones53114262018-12-12 16:36:472594const char kSearchReadyOmniboxName[] = "Search Ready Omnibox";
2595const char kSearchReadyOmniboxDescription[] =
2596 "Clears the omnibox and adds a suggestion item to share, copy, or edit the "
2597 "URL.";
2598
Brett Wilsonff596952017-07-14 01:06:552599const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2600const char kSetMarketUrlForTestingDescription[] =
2601 "When enabled, sets the market URL for use in testing the update menu "
2602 "item.";
2603
Donn Denmane32c706c2019-04-26 22:30:112604const char kShoppingAssistName[] = "Shopping assist exploration";
2605const char kShoppingAssistDescription[] =
2606 "Show some shopping assistance when available";
2607
Alex Moshchuk07e1bb42019-03-08 04:44:082608const char kSiteIsolationForPasswordSitesName[] =
2609 "Site Isolation For Password Sites";
2610const char kSiteIsolationForPasswordSitesDescription[] =
2611 "Security mode that enables site isolation for sites based on "
2612 "password-oriented heuristics, such as a user typing in a password.";
2613
Lei Zhang0a318af2018-11-14 02:19:462614const char kStrictSiteIsolationName[] = "Strict site isolation";
2615const char kStrictSiteIsolationDescription[] =
2616 "Security mode that enables site isolation for all sites (SitePerProcess). "
2617 "In this mode, each renderer process will contain pages from at most one "
2618 "site, using out-of-process iframes when needed. "
2619 "Check chrome://process-internals to see the current isolation mode. "
2620 "Setting this flag to 'Enabled' turns on site isolation regardless of the "
2621 "default. Here, 'Disabled' is a legacy value that actually means "
2622 "'Default,' in which case site isolation may be already enabled based on "
2623 "platform, enterprise policy, or field trial. See also "
2624 "#site-isolation-trial-opt-out for how to disable site isolation for "
2625 "testing.";
2626
Lijin Shend6f35432019-08-21 02:26:592627extern const char kTabSwitcherLongpressMenuName[] =
2628 "Enable tab switcher long-press menu";
2629extern const char kTabSwitcherLongpressMenuDescription[] =
2630 "Enable showing a popup menu when the tab switcher is long-pressed, which "
2631 "displays options for 'NewTab', 'New incognito tab' and 'Close tab'.";
2632
Anthony Vallee-Dubois4623e1b2018-10-11 22:09:182633const char kTranslateAndroidManualTriggerName[] =
2634 "Enable manual translate trigger";
2635const char kTranslateAndroidManualTriggerDescription[] =
2636 "Show a menu item in the main menu that triggers page translation.";
2637
Mia Glaese57c6b192019-08-05 20:40:402638const char kStartSurfaceAndroidName[] = "Start Surface";
2639const char kStartSurfaceAndroidDescription[] =
2640 "Enable showing the start surface when launching Chrome via the "
gogerald939debf2019-07-16 17:31:482641 "launcher.";
2642
Brett Wilsonff596952017-07-14 01:06:552643const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2644const char kUpdateMenuBadgeDescription[] =
Tommy Nyquist3c02e592018-10-18 23:36:442645 "When enabled, a badge will be shown on the app menu button if the update "
2646 "type is Update Available or Unsupported OS Version.";
Brett Wilsonff596952017-07-14 01:06:552647
2648const char kUpdateMenuItemCustomSummaryDescription[] =
2649 "When this flag and the force show update menu item flag are enabled, a "
2650 "custom summary string will be displayed below the update menu item.";
2651const char kUpdateMenuItemCustomSummaryName[] =
2652 "Update menu item custom summary";
2653
Tommy Nyquist3c02e592018-10-18 23:36:442654const char kUpdateMenuTypeName[] =
2655 "Forces the update menu type to a specific type";
2656const char kUpdateMenuTypeDescription[] =
2657 "When set, forces the update type to be a specific one, which impacts "
Tommy Nyquist023d505f2019-02-16 02:18:382658 "the app menu badge and menu item for updates. For Inline Update, the "
2659 "update available flag is implied. The 'Inline Update: Success' selection "
2660 "goes through the whole inline update flow to the end with a successful "
2661 "outcome. The other 'Inline Update' options go through the same flow, but "
2662 "stop at various stages, see their error type for details.";
Tommy Nyquist3c02e592018-10-18 23:36:442663const char kUpdateMenuTypeNone[] = "None";
2664const char kUpdateMenuTypeUpdateAvailable[] = "Update Available";
2665const char kUpdateMenuTypeUnsupportedOSVersion[] = "Unsupported OS Version";
Tommy Nyquist023d505f2019-02-16 02:18:382666const char kUpdateMenuTypeInlineUpdateSuccess[] = "Inline Update: Success";
2667const char kUpdateMenuTypeInlineUpdateDialogCanceled[] =
2668 "Inline Update Error: Dialog Canceled";
2669const char kUpdateMenuTypeInlineUpdateDialogFailed[] =
2670 "Inline Update Error: Dialog Failed";
2671const char kUpdateMenuTypeInlineUpdateDownloadFailed[] =
2672 "Inline Update Error: Download Failed";
2673const char kUpdateMenuTypeInlineUpdateDownloadCanceled[] =
2674 "Inline Update Error: Download Canceled";
2675const char kUpdateMenuTypeInlineUpdateInstallFailed[] =
2676 "Inline Update Error: Install Failed";
Brett Wilsonff596952017-07-14 01:06:552677
Patrick Noland76b5c442019-07-30 01:01:392678const char kUsageStatsDescription[] =
2679 "When set, enables sharing of per-domain usage stats with the Digital "
2680 "Wellbeing app on Android, and allows Digital Wellbeing to suspend access "
2681 "to websites in order to enforce user-defined time limits.";
2682const char kUsageStatsName[] = "Share Usage Stats with Digital Wellbeing";
2683
Tommy Nyquist26ffb642019-02-20 20:31:522684const char kInlineUpdateFlowName[] = "Enable Google Play inline update flow";
2685const char kInlineUpdateFlowDescription[] =
2686 "When this flag is set, instead of taking the user to the Google Play "
2687 "Store when an update is available, the user is presented with an inline "
2688 "flow where they do not have to leave Chrome until the update is ready "
2689 "to install.";
2690
Becky Zhou65584142019-01-10 18:22:292691#if BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2692
Becky Zhoubcac628f2019-02-28 18:22:372693const char kAndroidNightModeName[] = "Android Chrome UI dark mode";
Becky Zhou65584142019-01-10 18:22:292694const char kAndroidNightModeDescription[] =
Becky Zhoubcac628f2019-02-28 18:22:372695 "If enabled, user can enable Android Chrome UI dark mode through settings.";
Becky Zhou65584142019-01-10 18:22:292696
2697#endif // BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2698
Brett Wilson7b44537e2017-08-18 01:38:282699// Non-Android -----------------------------------------------------------------
Brett Wilsonff596952017-07-14 01:06:552700
Brett Wilson7b44537e2017-08-18 01:38:282701#else // !defined(OS_ANDROID)
brettw5f9c1642017-05-14 17:12:482702
Brett Wilson7b44537e2017-08-18 01:38:282703const char kAccountConsistencyName[] =
2704 "Identity consistency between browser and cookie jar";
2705const char kAccountConsistencyDescription[] =
2706 "When enabled, the browser manages signing in and out of Google accounts.";
2707const char kAccountConsistencyChoiceMirror[] = "Mirror";
2708const char kAccountConsistencyChoiceDice[] = "Dice";
vabr0215a8e2017-03-28 12:47:342709
Monica Basta0dcdbcc2019-08-07 11:06:222710const char kForceDiceMigrationName[] = "Force the migration to Dice";
2711const char kForceDiceMigrationDescription[] =
2712 "When enabled the account reconcilor will force the migration to dice";
2713
Monica Bastac9f75902019-07-24 14:13:052714const char kShowSyncPausedReasonCookiesClearedOnExitName[] =
2715 "Show sync paused reason is the setup of cookie settings.";
2716const char kShowSyncPausedReasonCookiesClearedOnExitDescription[] =
2717 "If enabled and the user is in sync paused state because of cookie settings"
2718 " set to clear cookies on exit, we show the user a message with the reason"
2719 " in the user menu.";
2720
Reka Normana11e57fc2019-01-29 21:56:582721const char kAppManagementName[] = "Enable App Management page";
2722const char kAppManagementDescription[] =
2723 "Shows the new app management page at chrome://apps.";
2724
Takumi Fujimotod1da5b92019-06-07 00:35:482725const char kCastMediaRouteProviderName[] = "Cast Media Route Provider";
2726const char kCastMediaRouteProviderDescription[] =
2727 "Enables the native Cast Media Route Provider implementation to be used "
2728 "instead of the implementation in the Media Router component extension.";
2729
Gayane Petrosyan556e9172019-05-10 18:13:472730const char kChromeColorsName[] = "Chrome Colors menu";
2731const char kChromeColorsDescription[] =
2732 "Show Chrome Colors menu in the NTP customization menu.";
2733
Gayane Petrosyanc2ad4362019-07-30 05:43:262734const char kChromeColorsCustomColorPickerName[] =
2735 "Custom color picker for Chrome Colors menu";
2736const char kChromeColorsCustomColorPickerDescription[] =
2737 "Show custom color picker in Chrome Colors menu.";
2738
Takumi Fujimotod1da5b92019-06-07 00:35:482739const char kDialMediaRouteProviderName[] = "DIAL Media Route Provider";
2740const char kDialMediaRouteProviderDescription[] =
2741 "Enables the native DIAL Media Route Provider implementation to be used "
2742 "instead of the implementation in the Media Router component extension.";
2743
Kristi Park786fbf12019-05-11 00:47:302744const char kGridLayoutForNtpShortcutsName[] =
2745 "Enable grid layout for NTP shortcuts";
2746const char kGridLayoutForNtpShortcutsDescription[] =
2747 "Enables better animations for the shortcuts, including improved "
2748 "drag-and-drop.";
2749
Kyle Milka24687352019-04-11 21:13:082750const char kNtpCustomizationMenuV2Name[] = "NTP customization menu version 2";
2751const char kNtpCustomizationMenuV2Description[] =
2752 "Use the second version of the NTP customization menu.";
2753
Dan Beam8388f3d2019-05-11 01:51:052754extern const char kNtpDisableInitialMostVisitedFadeInName[] =
2755 "Disable NTP initial most visited fade in";
2756extern const char kNtpDisableInitialMostVisitedFadeInDescription[] =
2757 "Do now initially fade in most visited tiles on the New Tab Page";
2758
Aran Gilman766c2ad2019-04-18 00:15:412759const char kEnableReaderModeName[] = "Enable Reader Mode";
2760const char kEnableReaderModeDescription[] =
2761 "Allows viewing of simplified web pages by selecting 'Customize and "
2762 "control Chrome'>'Distill page'";
2763
Lei Zhang0a318af2018-11-14 02:19:462764const char kEnableWebAuthenticationBleSupportName[] =
2765 "Web Authentication API BLE support";
2766const char kEnableWebAuthenticationBleSupportDescription[] =
2767 "Enable support for using Web Authentication API via Bluetooth security "
2768 "keys";
Sebastien Marchandd33f7dc2018-06-22 22:07:062769
Sebastien Marchandd33f7dc2018-06-22 22:07:062770const char kEnableWebAuthenticationTestingAPIName[] =
2771 "Web Authentication Testing API";
2772const char kEnableWebAuthenticationTestingAPIDescription[] =
2773 "Enable Web Authentication Testing API support, which disconnects the API "
2774 "implementation from the real world, and allows configuring virtual "
2775 "authenticator devices for testing";
2776
Owen Min853a8162019-04-26 19:20:362777const char kEnterpriseReportingInBrowserName[] =
2778 "Enterprise cloud reporting in browser";
2779const char kEnterpriseReportingInBrowserDescription[] =
2780 "Enable the enterprise cloud reporting in browser without installing the "
2781 "reporting companion extension. This feautre requires device level cloud "
2782 "mangement.";
2783
Jeffrey Cohenf04130a42018-08-29 00:22:272784const char kHappinessTrackingSurveysForDesktopName[] =
2785 "Happiness Tracking Surveys";
2786const char kHappinessTrackingSurveysForDesktopDescription[] =
2787 "Enable showing Happiness Tracking Surveys to users on Desktop";
2788
Wei Li2946b352019-08-19 21:49:542789const char kHappinessTrackingSurveysForDesktopDemoName[] =
2790 "Happiness Tracking Surveys Demo";
2791const char kHappinessTrackingSurveysForDesktopDemoDescription[] =
2792 "Enable showing Happiness Tracking Surveys Demo to users on Desktop";
2793
Maggie Caib3e2a6c2019-03-12 05:12:542794const char kIntentPickerName[] = "Intent picker";
2795const char kIntentPickerDescription[] =
2796 "When going to a site that has URL managable by a PWA, show the intent"
2797 "picker to allow user to open the URL in the app.";
2798
Jon Flatley8c785582019-06-05 00:33:422799const char kKernelnextVMsName[] = "Enable VMs on experimental kernels.";
2800const char kKernelnextVMsDescription[] =
2801 "Enables VM support on devices running experimental kernel versions.";
2802
Takumi Fujimotod1da5b92019-06-07 00:35:482803const char kMirroringServiceName[] = "Mirroring Service";
2804const char kMirroringServiceDescription[] =
2805 "Enables the native Mirroring Service for mirroring tabs or desktop to "
2806 "Chromecast. Requires AudioServiceAudioStreams to also be enabled.";
2807
Travis Skarebcdb5ed32018-08-17 01:49:402808const char kOmniboxDriveSuggestionsName[] =
2809 "Omnibox Google Drive Document suggestions";
2810const char kOmniboxDriveSuggestionsDescriptions[] =
2811 "Display suggestions for Google Drive documents in the omnibox when Google "
2812 "is the default search engine.";
2813
Kevin Bailey9ec05532019-01-31 23:01:332814const char kOmniboxExperimentalKeywordModeName[] =
2815 "Omnibox Experimental Keyword Mode";
2816const char kOmniboxExperimentalKeywordModeDescription[] =
2817 "Enables various experimental features related to keyword mode, its "
2818 "suggestions and layout";
2819
Lei Zhang0a318af2018-11-14 02:19:462820const char kOmniboxPedalSuggestionsName[] = "Omnibox Pedal suggestions";
2821const char kOmniboxPedalSuggestionsDescription[] =
Orin Jaworski506db4d2019-02-14 20:17:142822 "Enable omnibox Pedal suggestions to accelerate actions within Chrome by "
2823 "detecting user intent and offering direct access to the end goal.";
Lei Zhang0a318af2018-11-14 02:19:462824
Orin Jaworski04c08b42018-07-11 02:39:562825const char kOmniboxReverseAnswersName[] = "Omnibox reverse answers";
2826const char kOmniboxReverseAnswersDescription[] =
manukaddd3c42019-04-09 21:20:592827 "Display answers with rows reversed (swapped); except definitions.";
Orin Jaworski04c08b42018-07-11 02:39:562828
Kevin Baileya5f17452019-02-13 01:52:032829const char kOmniboxReverseTabSwitchLogicName[] =
2830 "Omnibox reverse tab switch logic";
2831const char kOmniboxReverseTabSwitchLogicDescription[] =
2832 "Reverse the logic of suggestions that have a tab switch button: Have "
2833 "them switch by default, and have the button navigate.";
2834
Kevin Bailey7d918b92019-05-02 16:00:142835const char kOmniboxShortBookmarkSuggestionsName[] =
2836 "Omnibox short bookmark suggestions";
2837const char kOmniboxShortBookmarkSuggestionsDescription[] =
2838 "Match very short input words to beginning of words in bookmark "
2839 "suggestions.";
2840
Tommy C. Li065ddce72019-04-11 22:55:122841const char kOmniboxSuggestionTransparencyOptionsName[] =
2842 "Omnibox Suggestion Transparency Options";
2843const char kOmniboxSuggestionTransparencyOptionsDescription[] =
2844 "Improves transparency of and control over omnibox suggestions. This "
2845 "includes UI cues (like a clock icon for Search History suggestions), as "
2846 "well as user controls to delete personalized suggestions.";
2847
Kevin Bailey898669972017-11-06 15:34:492848const char kOmniboxTabSwitchSuggestionsName[] =
2849 "Omnibox tab switch suggestions";
2850const char kOmniboxTabSwitchSuggestionsDescription[] =
manukaddd3c42019-04-09 21:20:592851 "Enable suggestions for switching to open tabs within the Omnibox.";
Kevin Bailey898669972017-11-06 15:34:492852
Kevin Baileyc9cd6cd2019-06-27 02:47:532853const char kOmniboxWrapPopupPositionName[] = "Omnibox wrap pop-up position";
2854const char kOmniboxWrapPopupPositionDescription[] =
2855 "Enable wrapping the Omnibox pop-up position between top and bottom.";
2856
Sebastien Marchandd33f7dc2018-06-22 22:07:062857const char kProactiveTabFreezeAndDiscardName[] =
2858 "Proactive Tab Freeze and Discard";
2859const char kProactiveTabFreezeAndDiscardDescription[] =
2860 "Enables proactive tab freezing and discarding. This requires "
2861 "#enable-page-almost-idle.";
2862
Brett Wilson7b44537e2017-08-18 01:38:282863#if defined(GOOGLE_CHROME_BUILD)
2864
2865const char kGoogleBrandedContextMenuName[] =
2866 "Google branding in the context menu";
2867const char kGoogleBrandedContextMenuDescription[] =
2868 "Shows a Google icon next to context menu items powered by Google "
2869 "services.";
2870
2871#endif // !defined(GOOGLE_CHROME_BUILD)
2872
2873#endif // !defined(OS_ANDROID)
2874
2875// Windows ---------------------------------------------------------------------
2876
2877#if defined(OS_WIN)
2878
David Bienvenud0ddda32018-11-01 16:59:162879const char kCalculateNativeWinOcclusionName[] =
2880 "Calculate window occlusion on Windows";
2881const char kCalculateNativeWinOcclusionDescription[] =
2882 "Calculate window occlusion on Windows will be used in the future "
2883 "to throttle and potentially unload foreground tabs in occluded windows";
2884
Brett Wilson7b44537e2017-08-18 01:38:282885const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
2886const char kCloudPrintXpsDescription[] =
2887 "XPS enables advanced options for classic printers connected to the Cloud "
2888 "Print with Chrome. Printers must be re-connected after changing this "
2889 "flag.";
2890
Frank Liberato754d14f2019-01-30 23:31:172891const char kD3D11VideoDecoderName[] = "D3D11 Video Decoder";
2892const char kD3D11VideoDecoderDescription[] =
2893 "Enables D3D11VideoDecoder for hardware accelerated video decoding.";
2894
Brett Wilson7b44537e2017-08-18 01:38:282895const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
2896const char kDisablePostscriptPrintingDescription[] =
2897 "Disables PostScript generation when printing to PostScript capable "
2898 "printers, and uses EMF generation in its place.";
2899
Cliff Smolinskyaa7b4e822019-06-25 01:47:012900const char kEnableAuraTooltipsOnWindowsName[] =
2901 "Enable aura tooltips on Windows";
2902const char kEnableAuraTooltipsOnWindowsDescription[] =
2903 "Enables aura tooltips instead of the native comctl32 tooltips on Windows.";
2904
James Forshawfd0ce342018-02-14 09:55:392905const char kEnableGpuAppcontainerName[] = "Enable GPU AppContainer Lockdown.";
2906const char kEnableGpuAppcontainerDescription[] =
2907 "Enables the use of an AppContainer for the GPU sandboxed processes to "
2908 "improve security.";
2909
Brett Wilson7b44537e2017-08-18 01:38:282910const char kGdiTextPrinting[] = "GDI Text Printing";
2911const char kGdiTextPrintingDescription[] =
2912 "Use GDI to print text as simply text";
2913
Olli Etuaho122321192018-09-07 10:15:292914const char kUseAngleName[] = "Choose ANGLE graphics backend";
2915const char kUseAngleDescription[] =
2916 "Choose the graphics backend for ANGLE. D3D11 is used on most Windows "
2917 "computers by default. Using the OpenGL driver as the graphics backend may "
2918 "result in higher performance in some graphics-heavy applications, "
2919 "particularly on NVIDIA GPUs. It can increase battery and memory usage of "
2920 "video playback.";
2921
2922const char kUseAngleDefault[] = "Default";
2923const char kUseAngleGL[] = "OpenGL";
2924const char kUseAngleD3D11[] = "D3D11";
2925const char kUseAngleD3D9[] = "D3D9";
2926
Brett Wilson7b44537e2017-08-18 01:38:282927const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2928const char kUseWinrtMidiApiDescription[] =
2929 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
2930 "later).";
2931
Guillaume Jenkinsdd8060a72019-07-03 17:28:062932#if BUILDFLAG(ENABLE_SPELLCHECK)
2933const char kWinUseBrowserSpellCheckerName[] = "Use the Windows OS spellchecker";
2934const char kWinUseBrowserSpellCheckerDescription[] =
2935 "Use the Windows OS spellchecker to find spelling mistakes and provide "
2936 "spelling suggestions instead of using the Hunspell engine.";
2937#endif // BUILDFLAG(ENABLE_SPELLCHECK)
2938
Brett Wilson7b44537e2017-08-18 01:38:282939#endif // defined(OS_WIN)
2940
2941// Mac -------------------------------------------------------------------------
2942
2943#if defined(OS_MACOSX)
2944
Sidney San Martín678fd4112019-03-30 00:13:052945const char kImmersiveFullscreenName[] = "Immersive Fullscreen Toolbar";
2946const char kImmersiveFullscreenDescription[] =
2947 "Automatically hide and show the toolbar in fullscreen.";
2948
Lei Zhange065b572018-12-11 08:00:412949const char kEnableCustomMacPaperSizesName[] = "Enable custom paper sizes";
2950const char kEnableCustomMacPaperSizesDescription[] =
2951 "Allow use of custom paper sizes in Print Preview.";
2952
Lei Zhang2eca9082017-10-17 20:42:502953const char kMacTouchBarName[] = "Hardware Touch Bar";
2954const char kMacTouchBarDescription[] = "Control the use of the Touch Bar.";
Brett Wilson7b44537e2017-08-18 01:38:282955
Greg Kerrf46f31872019-08-08 20:22:442956const char kMacSyscallSandboxName[] = "Mac Syscall Filtering Sandbox";
2957const char kMacSyscallSandboxDescription[] =
2958 "Controls whether the macOS sandbox filters syscalls.";
2959
Greg Kerr32483d1c2018-12-18 02:29:142960const char kMacV2GPUSandboxName[] = "Mac V2 GPU Sandbox";
2961const char kMacV2GPUSandboxDescription[] =
2962 "Controls whether the GPU process on macOS uses the V1 or V2 sandbox.";
2963
Brett Wilson7b44537e2017-08-18 01:38:282964const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
2965const char kMacViewsTaskManagerDescription[] =
2966 "Controls whether to use the Toolkit-Views based Task Manager.";
2967
Henrik Grunellabaf7182019-04-12 09:15:192968const char kMacSystemMediaPermissionsInfoUiName[] =
2969 "System media permissions info UI";
2970const char kMacSystemMediaPermissionsInfoUiDescription[] =
2971 "In case a website is trying to use the camera/microphone, but Chrome "
2972 "itself is blocked on the system level to access these, show an icon in "
2973 "the Omnibox, which, when clicked, displays a bubble with information on "
2974 "how to toggle Chrome's system-level media permissions.";
2975
Brett Wilson7b44537e2017-08-18 01:38:282976#endif
2977
2978// Chrome OS -------------------------------------------------------------------
vabr0215a8e2017-03-28 12:47:342979
2980#if defined(OS_CHROMEOS)
2981
Brett Wilson7b44537e2017-08-18 01:38:282982const char kAcceleratedMjpegDecodeName[] =
2983 "Hardware-accelerated mjpeg decode for captured frame";
2984const char kAcceleratedMjpegDecodeDescription[] =
2985 "Enable hardware-accelerated mjpeg decode for captured frame where "
2986 "available.";
vabr0215a8e2017-03-28 12:47:342987
Reka Normana11e57fc2019-01-29 21:56:582988const char kAppServiceAshName[] = "App Service Ash";
2989const char kAppServiceAshDescription[] =
2990 "Use the App Service to provide data to the Ash UI, such as the shelf and "
2991 "app list.";
2992
Bruno Kim Medeiros Cesarb98fe1d82018-06-06 18:11:522993const char kArcAvailableForChildName[] = "Allow ARC for child accounts";
2994const char kArcAvailableForChildDescription[] =
2995 "Allow child accounts to start Android apps.";
2996
Brett Wilson7b44537e2017-08-18 01:38:282997const char kArcBootCompleted[] = "Load Android apps automatically";
2998const char kArcBootCompletedDescription[] =
2999 "Allow Android apps to start automatically after signing in.";
vabr0215a8e2017-03-28 12:47:343000
Luum Habtemariamdaa8fd22018-06-25 22:39:433001const char kArcCupsApiName[] = "ARC CUPS API";
3002const char kArcCupsApiDescription[] =
3003 "Enables support of libcups APIs from ARC";
3004
Ryo Hashimoto8f4b30ced2019-04-08 12:14:193005const char kArcCustomTabsExperimentName[] =
3006 "Enable Custom Tabs experiment for ARC";
3007const char kArcCustomTabsExperimentDescription[] =
3008 "Allow Android apps to use Custom Tabs."
3009 "This feature only works on the Canary and Dev channels.";
3010
Naoki Fukino153de8a2019-01-22 08:37:543011const char kArcDocumentsProviderName[] = "ARC DocumentsProvider integration";
3012const char kArcDocumentsProviderDescription[] =
3013 "Enables DocumentsProvider integration in Chrome OS Files app.";
3014
Satoshi Niwa8b1d5282018-10-24 04:53:033015const char kArcFilePickerExperimentName[] =
3016 "Enable file picker experiment for ARC";
3017const char kArcFilePickerExperimentDescription[] =
3018 "Enables using Chrome OS file picker in ARC.";
3019
[email protected]939ceae2019-01-29 17:00:153020const char kArcGraphicBuffersVisualizationToolName[] =
3021 "Enable ARC graphic buffers visualization tool";
3022const char kArcGraphicBuffersVisualizationToolDescription[] =
3023 "Enable ARC graphic buffers visualization tool "
3024 "(chrome://arc-graphics-tracing).";
3025
Lev Rumyantsev7a8544312017-08-18 19:26:513026const char kArcNativeBridgeExperimentName[] =
3027 "Enable native bridge experiment for ARC";
3028const char kArcNativeBridgeExperimentDescription[] =
3029 "Enables experimental native bridge feature.";
3030
Jesse Schettlerc3d0a652019-04-23 18:49:243031const char kArcPrintSpoolerExperimentName[] =
3032 "Enable print spooler experiment for ARC";
3033const char kArcPrintSpoolerExperimentDescription[] =
Jesse Schettler10204aa92019-04-26 23:37:093034 "Enables using Chrome OS print system and print preview in ARC."
3035 "This feature only works on the Canary and Dev channels.";
Jesse Schettlerc3d0a652019-04-23 18:49:243036
lgchengecd1c1a62018-01-09 02:59:463037const char kArcUsbHostName[] = "Enable ARC USB host integration";
3038const char kArcUsbHostDescription[] =
3039 "Allow Android apps to use USB host feature on ChromeOS devices.";
3040
Yusuke Sato7e790eb2019-06-06 00:21:043041const char kArcUsbStorageUIName[] = "Enable ARC USB Storage UI";
3042const char kArcUsbStorageUIDescription[] =
3043 "Enable experimental UI for controlling ARC access to USB storage devices.";
3044
Kevin Cernekeeb7f96a52017-10-25 17:40:183045const char kArcVpnName[] = "Enable ARC VPN integration";
3046const char kArcVpnDescription[] =
3047 "Allow Android VPN clients to tunnel Chrome traffic.";
3048
Qiang Xu045aff222018-05-21 23:21:013049const char kAshEnableDisplayMoveWindowAccelsName[] =
3050 "Enable shortcuts for moving window between displays.";
3051const char kAshEnableDisplayMoveWindowAccelsDescription[] =
3052 "Enable shortcuts for moving window between displays.";
3053
Sammie Quonfe640ca2019-01-30 17:54:183054const char kAshEnableOverviewRoundedCornersName[] =
3055 "Enable rounded corners in overview mode.";
3056const char kAshEnableOverviewRoundedCornersDescription[] =
3057 "Enables rounded corners on overview windows.";
3058
Qiang Xu045aff222018-05-21 23:21:013059const char kAshEnablePersistentWindowBoundsName[] =
3060 "Enable persistent window bounds in multi-displays scenario.";
3061const char kAshEnablePersistentWindowBoundsDescription[] =
3062 "Enable persistent window bounds in multi-displays scenario.";
3063
Eliot Courtneye87a9c32018-11-20 03:33:023064const char kAshEnablePipRoundedCornersName[] =
3065 "Enable Picture-in-Picture rounded corners.";
3066const char kAshEnablePipRoundedCornersDescription[] =
3067 "Enable rounded corners on the Picture-in-Picture window.";
3068
Andrew Moylan2db11cd2019-05-22 14:25:153069const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
3070const char kAshEnableUnifiedDesktopDescription[] =
3071 "Enable unified desktop mode which allows a window to span multiple "
3072 "displays.";
3073
3074extern const char kAshNotificationStackingBarRedesignName[] =
3075 "Redesigned notification stacking bar";
3076extern const char kAshNotificationStackingBarRedesignDescription[] =
3077 "Enables the redesigned notification stacking bar UI with a \"Clear all\" "
3078 "button.";
3079
Min Chen3e342562019-05-04 00:08:363080const char kAshSwapSideVolumeButtonsForOrientationName[] =
3081 "Swap side volume buttons to match screen orientation.";
3082const char kAshSwapSideVolumeButtonsForOrientationDescription[] =
3083 "Make the side volume button that's closer to the top/right always "
3084 "increase the volume and the button that's closer to the bottom/left "
3085 "always decrease the volume.";
3086
Ryan Hansberry7c6c2b22019-06-18 21:07:143087const char kBluetoothAggressiveAppearanceFilterName[] =
3088 "Aggressive Bluetooth device filtering";
3089const char kBluetoothAggressiveAppearanceFilterDescription[] =
3090 "Enables a more aggressive Bluetooth filter in the UI to hide devices that "
3091 "likely cannot be connected to.";
3092
Sean Kau5e956192017-10-06 22:25:173093const char kBulkPrintersName[] = "Bulk Printers Policy";
3094const char kBulkPrintersDescription[] = "Enables the new bulk printers policy";
3095
Christopher Lam28530012019-07-11 04:05:123096const char kCameraSystemWebAppName[] = "Camera System Web App";
3097const char kCameraSystemWebAppDescription[] =
3098 "Run the Chrome Camera App as a System Web App.";
3099
Xiaochu Liu51d03fd2017-09-08 23:51:023100const char kCrOSContainerName[] = "Chrome OS Container";
3101const char kCrOSContainerDescription[] =
3102 "Enable the use of Chrome OS Container utility.";
3103
Brett Wilson7b44537e2017-08-18 01:38:283104const char kCrosRegionsModeName[] = "Cros-regions load mode";
3105const char kCrosRegionsModeDescription[] =
3106 "This flag controls cros-regions load mode";
3107const char kCrosRegionsModeDefault[] = "Default";
3108const char kCrosRegionsModeOverride[] = "Override VPD values.";
3109const char kCrosRegionsModeHide[] = "Hide VPD values.";
vabr0215a8e2017-03-28 12:47:343110
Daniel Ng96ab0c82019-01-16 01:21:553111const char kCrostiniAppSearchName[] = "Crostini App Search";
3112const char kCrostiniAppSearchDescription[] =
3113 "Enable search and installation of Crostini apps in the launcher.";
3114
Joel Hockey42387102019-01-10 01:19:323115const char kCrostiniBackupName[] = "Crostini Backup";
3116const char kCrostiniBackupDescription[] = "Enable Crostini export and import.";
3117
Ben Wells7238dd02019-05-02 08:20:323118const char kCrostiniGpuSupportName[] = "Crostini GPU Support";
3119const char kCrostiniGpuSupportDescription[] = "Enable Crostini GPU support.";
3120
Nicholas Verne89be53b2019-03-27 23:08:323121const char kCrostiniUsbAllowUnsupportedName[] =
3122 "Crostini Usb Allow Unsupported";
3123const char kCrostiniUsbAllowUnsupportedDescription[] =
3124 "Allow mounting unsupported Usb devices in Crostini. At your own risk. "
3125 "To enable, Crostini Usb Support must also be enabled.";
3126
Josh Pratt57cea392018-10-30 02:59:063127const char kCrostiniUsbSupportName[] = "Crostini Usb Support";
3128const char kCrostiniUsbSupportDescription[] =
3129 "Enable mounting Usb devices in Crostini.";
3130
Jason Lin121f0ac2019-07-10 01:46:133131const char kCrostiniWebUIInstallerName[] = "Crostini WebUI Installer";
3132const char kCrostiniWebUIInstallerDescription[] =
3133 "Enable the new WebUI Crostini Installer.";
3134
Luum Habtemariamea93f022019-05-09 23:21:023135const char kCrosVmCupsProxyName[] = "Chrome OS CUPS Proxy";
3136const char kCrosVmCupsProxyDescription[] =
3137 "Supports printing from VMs on Chrome OS.";
3138
Josh Nohle2f82dcc2018-12-17 23:11:233139const char kCryptAuthV2EnrollmentName[] = "CryptAuth v2 Enrollment";
3140const char kCryptAuthV2EnrollmentDescription[] =
3141 "Use the CryptAuth v2 Enrollment protocol.";
3142
Jimmy Gongfa6a6ea2019-05-22 23:38:243143const char kCupsPrintersUiOverhaulName[] = "Cups Printers UI overhaul";
3144const char kCupsPrintersUiOverhaulDescription[] =
3145 "Enables the new native printing UI in settings.";
3146
Thanh Nguyena4c933442019-05-11 03:43:553147const char kDisableCancelAllTouchesName[] = "Disable CancelAllTouches()";
3148const char kDisableCancelAllTouchesDescription[] =
3149 "If enabled, a canceled touch will not force all other touches to be "
3150 "canceled.";
3151
Daniele Castagna893d822e2019-03-08 21:37:113152const char kDisableExplicitDmaFencesName[] = "Disable explicit dma-fences";
3153const char kDisableExplicitDmaFencesDescription[] =
3154 "Always rely on implicit syncrhonization between GPU and display "
3155 "controller instead of using dma-fences explcitily when available.";
3156
Sammie Quonef6b4882017-09-14 16:50:053157const char kDisableTabletAutohideTitlebarsName[] =
3158 "Disable autohide titlebars in tablet mode";
3159const char kDisableTabletAutohideTitlebarsDescription[] =
3160 "Disable tablet mode autohide titlebars functionality. The user will be "
3161 "able to see the titlebar in tablet mode.";
3162
Ahmed Fakhry4f567e692018-10-16 15:51:083163const char kDoubleTapToZoomInTabletModeName[] =
3164 "Double-tap to zoom in tablet mode";
3165const char kDoubleTapToZoomInTabletModeDescription[] =
3166 "If Enabled, double tapping in webpages while in tablet mode will zoom the "
3167 "page.";
3168
Vladislav Kuzkokov22f860ed2019-05-22 16:26:543169const char kEnableAdvancedPpdAttributesName[] =
3170 "Enables advanced PPD attributes";
3171const char kEnableAdvancedPpdAttributesDescription[] =
3172 "Enables advanced settings on CUPS printers";
3173
Andrew Moylan2db11cd2019-05-22 14:25:153174const char kEnableAppDataSearchName[] = "Enable app data search in launcher";
3175const char kEnableAppDataSearchDescription[] =
3176 "Allow launcher search to access data available through Firebase App "
3177 "Indexing";
3178
3179const char kEnableAppReinstallZeroStateName[] =
3180 "Enable Zero State App Reinstall Suggestions.";
3181const char kEnableAppReinstallZeroStateDescription[] =
3182 "Enable Zero State App Reinstall Suggestions feature in launcher, which "
3183 "will show app reinstall recommendations at end of zero state list.";
3184
Matthew Mourgoscf22b4b2019-03-06 23:46:393185const char kEnableAppGridGhostName[] = "App Grid Ghosting";
3186const char kEnableAppGridGhostDescription[] =
3187 "Enables ghosting during an item drag in launcher.";
3188
Kevin Strohbehnb65b5c42019-06-25 00:29:103189const char kEnableSearchBoxSelectionName[] = "Search Box Selection";
3190const char kEnableSearchBoxSelectionDescription[] =
3191 "Enables the ResultSelectionController in the Search Box. This alters "
3192 "perceived focus traversal.";
3193
Daniel Zhang01399072018-08-16 22:28:203194const char kEnableAppListSearchAutocompleteName[] =
3195 "App List Search Autocomplete";
3196const char kEnableAppListSearchAutocompleteDescription[] =
3197 "Allow App List search box to autocomplete queries for Google searches and "
3198 "apps.";
3199
Lei Zhang0a318af2018-11-14 02:19:463200const char kEnableArcUnifiedAudioFocusName[] =
Becca Hughes34415e82018-10-05 18:47:373201 "Enable unified audio focus on ARC";
Lei Zhang0a318af2018-11-14 02:19:463202const char kEnableArcUnifiedAudioFocusDescription[] =
Becca Hughes34415e82018-10-05 18:47:373203 "If audio focus is enabled in Chrome then this will delegate audio focus "
3204 "control in Android apps to Chrome.";
3205
Yue Liebaa9952018-12-07 21:41:263206const char kEnableAssistantAppSupportName[] = "Enable Assistant App Support";
3207const char kEnableAssistantAppSupportDescription[] =
3208 "Enable the Assistant App Support feature";
3209
Xiaohui Chenb523747b2019-03-14 23:38:323210const char kEnableAssistantLauncherIntegrationName[] =
3211 "Assistant & Launcher integration";
3212const char kEnableAssistantLauncherIntegrationDescription[] =
3213 "Combine Launcher search with the power of Assistant to provide the most "
3214 "useful answer for each query. Requires Assistant to be enabled.";
3215
lif5c5bec62019-06-26 22:56:053216const char kEnableAssistantMediaSessionIntegrationName[] =
3217 "Assistant Media Session integration";
3218const char kEnableAssistantMediaSessionIntegrationDescription[] =
3219 "Enable Assistant Media Session Integration.";
3220
Xiao Yangf59e6932019-07-19 00:18:133221const char kEnableAssistantRoutinesName[] = "Assistant Routines";
3222const char kEnableAssistantRoutinesDescription[] = "Enable Assistant Routines.";
3223
Alex Newcomere5a362c2019-05-02 19:31:353224const char kEnableBackgroundBlurName[] = "Enable background blur.";
3225const char kEnableBackgroundBlurDescription[] =
3226 "Enables background blur for the Launcher and Shelf.";
3227
Lei Zhang0ca70ea2018-09-07 17:51:013228const char kEnableChromeOsAccountManagerName[] = "Enable Account Manager";
3229const char kEnableChromeOsAccountManagerDescription[] =
Kushagra Sinha8a181fc2018-08-20 17:15:493230 "Enables the Chrome OS Account Manager";
3231
Alexander Alekseev38e1e0a2018-11-08 22:48:483232const char kEnableDiscoverAppName[] = "Enable Discover App";
3233const char kEnableDiscoverAppDescription[] =
3234 "Enable Discover App icon in launcher.";
3235
Brett Wilson7b44537e2017-08-18 01:38:283236const char kEnableEncryptionMigrationName[] =
3237 "Enable encryption migration of user data";
3238const char kEnableEncryptionMigrationDescription[] =
3239 "If enabled and the device supports ARC, the user will be asked to update "
3240 "the encryption of user data when the user signs in.";
vabr0215a8e2017-03-28 12:47:343241
Harry Cuttscfe6d934f2019-06-05 21:45:553242const char kEnableGesturePropertiesDBusServiceName[] =
3243 "Enable gesture properties D-Bus service";
3244const char kEnableGesturePropertiesDBusServiceDescription[] =
3245 "Enable a D-Bus service for accessing gesture properties, which are used "
3246 "to configure input devices.";
3247
Xiaohui Chenfb0943e2018-10-16 22:44:373248const char kEnableGoogleAssistantName[] = "Enable Google Assistant";
3249const char kEnableGoogleAssistantDescription[] =
3250 "Enable an experimental Assistant implementation that will work on all "
3251 "Chromebooks.";
3252
Xiaohui Chenf4283f32018-11-26 20:02:503253const char kEnableGoogleAssistantDspName[] =
3254 "Enable Google Assistant with hardware-based hotword";
3255const char kEnableGoogleAssistantDspDescription[] =
3256 "Enable an experimental feature that uses hardware-based hotword detection "
3257 "for Assistant. Only a limited number of devices have this type of "
3258 "hardware support.";
3259
Xiaohui Chenc3baca42018-11-30 19:29:373260const char kEnableGoogleAssistantStereoInputName[] =
3261 "Enable Google Assistant with stereo audio input";
3262const char kEnableGoogleAssistantStereoInputDescription[] =
3263 "Enable an experimental feature that uses stereo audio input for hotword "
3264 "and voice to text detection in Google Assistant.";
3265
Rob Schonberger11bb2812019-07-31 23:41:003266const char kEnableHeuristicStylusPalmRejectionName[] =
3267 "Enable Heuristic for Stylus/Palm Rejection.";
3268const char kEnableHeuristicStylusPalmRejectionDescription[] =
3269 "Enable additional heuristic palm rejection logic when interacting with "
3270 "stylus usage. Not intended for all devices.";
3271
Qiang Xu045aff222018-05-21 23:21:013272const char kEnableHomeLauncherName[] = "Enable home launcher";
3273const char kEnableHomeLauncherDescription[] =
3274 "Enable home launcher in tablet mode.";
3275
Andrew Moylan97585272019-02-19 19:01:223276const char kEnableMyFilesVolumeName[] = "Enable MyFiles as Volume";
3277const char kEnableMyFilesVolumeDescription[] =
3278 "Enables use of MyFiles as a read/write volume. This should be only "
3279 "used for testing or for trying to restore the previous Downloads content.";
3280
Danan S749399c2019-06-25 23:08:483281const char kEnableParentalControlsSettingsName[] =
3282 "Enable Parental controls settings";
3283const char kEnableParentalControlsSettingsDescription[] =
3284 "Enable Parental Control options in settings.";
3285
Vladislav Kaznacheevaa213a02018-10-29 17:54:283286const char kEnablePlayStoreSearchName[] = "Enable Play Store search";
3287const char kEnablePlayStoreSearchDescription[] =
3288 "Enable Play Store search in launcher.";
3289
Jazz Xu2e5886662018-12-14 00:38:483290const char kEnableVideoPlayerNativeControlsName[] =
3291 "Enable native controls in video player app";
3292const char kEnableVideoPlayerNativeControlsDescription[] =
3293 "Enable native controls in video player app";
3294
Ahmed Fakhry006607c2019-05-31 00:40:513295const char kEnableVirtualDesksName[] = "Enable Virtual Desks";
3296const char kEnableVirtualDesksDescription[] =
3297 "A preview of the upcoming Virtual Desks features on Chrome OS devices.";
3298
Brian Geffon134e77c52019-07-30 21:49:583299const char kTrimOnFreezeName[] = "Trim Working Set on freeze";
3300const char kTrimOnFreezeDescription[] = "Trim Working Set on all frames frozen";
3301
3302const char kTrimOnMemoryPressureName[] = "Trim Working Set on memory pressure";
3303const char kTrimOnMemoryPressureDescription[] =
3304 "Trim Working Set periodically on memory pressure";
3305
Lei Zhang0ca70ea2018-09-07 17:51:013306const char kEnableZeroStateSuggestionsName[] = "Enable Zero State Suggetions";
3307const char kEnableZeroStateSuggestionsDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013308 "Enable Zero State Suggestions feature in Launcher, which will show "
Vladislav Kaznacheevaa213a02018-10-29 17:54:283309 "suggestions when launcher search box is active with an empty query";
Sammie Quon248ccef2018-08-28 23:00:013310
Akihiro Ota3ff6f8a2019-01-18 17:43:043311const char kExperimentalAccessibilityChromeVoxLanguageSwitchingName[] =
3312 "Enable experimental ChromeVox language switching.";
3313const char kExperimentalAccessibilityChromeVoxLanguageSwitchingDescription[] =
3314 "Enable ChromeVox language switching, which changes ChromeVox's "
3315 "output language upon detection of new language.";
3316
Rose Garcia26e2ae32019-06-25 00:57:543317const char kExperimentalAccessibilitySwitchAccessName[] =
3318 "Experimental feature Switch Access";
3319const char kExperimentalAccessibilitySwitchAccessDescription[] =
3320 "Add a setting to enable the prototype of Switch Access";
3321
3322const char kExperimentalAccessibilitySwitchAccessTextName[] =
3323 "Enable enhanced Switch Access text input.";
3324const char kExperimentalAccessibilitySwitchAccessTextDescription[] =
3325 "Enable experimental or in-progress Switch Access features for improved "
3326 "text input";
3327
Alex Danilo284b4482019-04-02 09:20:173328const char kFileManagerFeedbackPanelDescription[] =
Alex Danilo4a4ddcb2019-06-05 23:39:263329 "Enable feedback panel in the Files app.";
Alex Danilo284b4482019-04-02 09:20:173330const char kFileManagerFeedbackPanelName[] = "Files App. feedback panel";
3331
Austin Tankiangf0961b12019-06-11 08:30:423332const char kFileManagerFormatDialogName[] =
3333 "Enable enhanced Files App format dialog.";
3334const char kFileManagerFormatDialogDescription[] =
3335 "Enable the enhanced external media format dialog in Files App, with "
3336 "with support for labelling and also NTFS/exFAT filesystems.";
3337
Noel Gordonf4315f42019-05-14 04:42:203338const char kFileManagerPiexWasmName[] = "Enable FilesApp piex-wasm module";
3339const char kFileManagerPiexWasmDescription[] =
3340 "Enable the FilesApp piex-wasm raw image extractor module.";
3341
Akihiro Ota000c5e8a2019-03-29 21:48:013342const char kFileManagerTouchModeName[] = "Files App. touch mode";
3343const char kFileManagerTouchModeDescription[] =
3344 "Touchscreen-specific interactions of the Files app.";
3345
Austin Tankiang4f973632019-08-12 08:33:233346const char kFilesNGName[] = "Enable Files App. NG.";
3347const char kFilesNGDescription[] =
3348 "Enable the next generation UI style of the file manager.";
3349
Akihiro Ota000c5e8a2019-03-29 21:48:013350const char kFirstRunUiTransitionsName[] =
3351 "Animated transitions in the first-run tutorial";
3352const char kFirstRunUiTransitionsDescription[] =
3353 "Transitions during first-run tutorial are animated.";
3354
Sheng-Hao Tsao874327a2019-04-30 08:13:003355const char kForceUseChromeCameraName[] =
3356 "Open Chrome camera app when clicking on camera icon";
3357const char kForceUseChromeCameraDescription[] =
3358 "Open Chrome camera app when clicking on camera icon instead of "
3359 "GoogleCamera app, regardless of whether Android runtime is enabled.";
3360
Andrew Moylan97585272019-02-19 19:01:223361const char kFsNosymfollowName[] =
3362 "Prevent symlink traversal on user-supplied filesystems.";
3363const char kFsNosymfollowDescription[] =
3364 "Causes user-supplied filesystems to be mounted with the 'nosymfollow'"
3365 " option, so the chromuimos LSM denies symlink traversal on the"
3366 " filesystem.";
3367
Jeroen Dhollander41b3bec2019-07-19 16:56:243368const char kGaiaActionButtonsName[] =
3369 "Enable action buttons on Gaia login screen";
3370const char kGaiaActionButtonsDescription[] =
3371 "Enable primary/secondary action button on Gaia login screen.";
3372
Becca Hughes71465532019-04-12 19:18:553373const char kHideArcMediaNotificationsName[] = "Hide ARC media notifications";
3374const char kHideArcMediaNotificationsDescription[] =
3375 "Hides media notifications for ARC apps. Requires "
3376 "#enable-media-session-notifications to be enabled.";
3377
Leo Zhang49c34d22019-04-02 09:57:593378const char kImeInputLogicFstName[] = "Enable FST Input Logic on IME";
3379const char kImeInputLogicFstDescription[] =
3380 "Enable FST Input Logic to replace the IME legacy input logic on NaCl";
3381
Ahmed Fakhry15d707e2019-02-22 23:54:213382const char kListAllDisplayModesName[] = "List all display modes";
3383const char kListAllDisplayModesDescription[] =
3384 "Enables listing all external displays' modes in the display settings.";
3385
Becca Hughesca82d2d2019-08-05 20:03:223386const char kLockScreenMediaControlsName[] = "Lock screen media controls";
3387const char kLockScreenMediaControlsDescription[] =
3388 "Enable media controls on the lock screen.";
3389
Megumi Hattori5a0d4182018-03-06 11:09:503390const char kLockScreenNotificationName[] = "Lock screen notification";
3391const char kLockScreenNotificationDescription[] =
3392 "Enable notifications on the lock screen.";
3393
Becca Hughes71465532019-04-12 19:18:553394const char kMediaSessionNotificationsName[] = "Media session notifications";
3395const char kMediaSessionNotificationsDescription[] =
3396 "Shows notifications for media sessions showing the currently playing "
3397 "media and providing playback controls";
3398
vabr0215a8e2017-03-28 12:47:343399const char kNetworkPortalNotificationName[] =
3400 "Notifications about captive portals";
vabr0215a8e2017-03-28 12:47:343401const char kNetworkPortalNotificationDescription[] =
3402 "If enabled, notification is displayed when device is connected to a "
3403 "network behind captive portal.";
3404
Anand K. Mistrydb5e0102018-10-04 04:24:003405const char kNewZipUnpackerName[] = "ZIP Archiver (unpacking)";
Brett Wilson7b44537e2017-08-18 01:38:283406const char kNewZipUnpackerDescription[] =
Anand K. Mistrydb5e0102018-10-04 04:24:003407 "Use the ZIP Archiver for mounting/unpacking ZIP files";
vabr0215a8e2017-03-28 12:47:343408
vabr0215a8e2017-03-28 12:47:343409const char kPrinterProviderSearchAppName[] =
3410 "Chrome Web Store Gallery app for printer drivers";
vabr0215a8e2017-03-28 12:47:343411const char kPrinterProviderSearchAppDescription[] =
3412 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:193413 "searches Chrome Web Store for extensions that support printing to a USB "
3414 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:343415
Yulun Wu502158732019-07-24 00:31:453416const char kReleaseNotesName[] = "CrOS Release Notes.";
3417const char kReleaseNotesDescription[] =
3418 "Instructs OS to show notification about CrOS ReleaseNotes on login after "
3419 "update, show webview describing new OS features.";
3420
Andrew Moylan97585272019-02-19 19:01:223421const char kSchedulerConfigurationName[] = "Scheduler Configuration";
3422const char kSchedulerConfigurationDescription[] =
3423 "Instructs the OS to use a specific scheduler configuration setting.";
Greg Kerr33cd4662019-06-17 07:03:013424const char kSchedulerConfigurationConservative[] =
3425 "Disables Hyper-Threading on relevant CPUs.";
3426const char kSchedulerConfigurationPerformance[] =
3427 "Enables Hyper-Threading on relevant CPUs.";
Andrew Moylan97585272019-02-19 19:01:223428
Alberto Herreraaecc85512019-06-13 21:14:253429const char kShowBluetoothDeviceBatteryName[] = "Show Bluetooth device battery";
3430const char kShowBluetoothDeviceBatteryDescription[] =
3431 "Enables showing the battery level of connected and supported Bluetooth "
3432 "devices in the System Tray and Settings UI.";
3433
James Cook0ba192bf2017-12-01 20:53:113434const char kShowTapsName[] = "Show taps";
3435const char kShowTapsDescription[] =
3436 "Draws a circle at each touch point, which makes touch points more obvious "
3437 "when projecting or mirroring the display. Similar to the Android OS "
3438 "developer option.";
3439
3440const char kShowTouchHudName[] = "Show HUD for touch points";
3441const char kShowTouchHudDescription[] =
3442 "Shows a trail of colored dots for the last few touch points. Pressing "
3443 "Ctrl-Alt-I shows a heads-up display view in the top-left corner. Helps "
3444 "debug hardware issues that generate spurious touch events.";
3445
Andrew Moylan60ac7c0c2019-05-28 06:52:183446const char kSmartDimModelV3Name[] = "Smart Dim updated model";
3447const char kSmartDimModelV3Description[] =
Andrew Moylan5bb68b422019-05-27 04:56:453448 "Uses an updated model for user activity prediction (Smart Dim).";
3449
Jorge Gil5a8ccde2018-07-10 01:46:213450const char kSmartTextSelectionName[] = "Smart Text Selection";
3451const char kSmartTextSelectionDescription[] =
3452 "Shows quick actions for text "
3453 "selections in the context menu.";
3454
May Lippertacea1f52019-05-29 21:19:483455const char kSplitSettingsName[] = "Split OS and browser settings";
3456const char kSplitSettingsDescription[] =
3457 "Show separate settings for the OS and browser";
3458
Bailey Berro6c989672019-04-11 19:19:203459const char kStreamlinedUsbPrinterSetupName[] =
3460 "Streamlined USB Printer Setup Flow";
3461const char kStreamlinedUsbPrinterSetupDescription[] =
3462 "Automatically sets up capable USB printers when plugged in. Shows a "
3463 "notification with the setup result.";
3464
Jon Mannc514fc92019-05-23 21:30:233465const char kSyncWifiConfigurationsName[] = "Sync Wi-Fi network configurations";
3466const char kSyncWifiConfigurationsDescription[] =
3467 "Enables the option to sync Wi-Fi network configurations with Chrome Sync.";
3468
Ahmed Mehfooz040dcdf2019-08-07 21:12:293469const char kSystemTrayPaginationName[] = "Enable system menu pagination";
3470const char kSystemTrayPaginationDescription[] =
3471 "If enabled the number of rows of feature pod buttons in the system menu "
3472 "is limited between 1-3 based on available screen space. The feature pod "
3473 "buttons can be scrolled or swiped between pages.";
3474
Brett Wilson7b44537e2017-08-18 01:38:283475const char kTetherName[] = "Instant Tethering";
3476const char kTetherDescription[] =
3477 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
3478 "phone to share its Internet connection with this device.";
stanisc14bed0b132017-05-10 17:46:373479
Brett Wilson7b44537e2017-08-18 01:38:283480const char kTouchscreenCalibrationName[] =
3481 "Enable/disable touchscreen calibration option in material design settings";
3482const char kTouchscreenCalibrationDescription[] =
3483 "If enabled, the user can calibrate the touch screen displays in "
3484 "chrome://settings/display.";
yhanadac5bff5b2017-05-18 06:37:093485
Qiang Xu045aff222018-05-21 23:21:013486const char kUiDevToolsName[] = "Enable native UI inspection";
3487const char kUiDevToolsDescription[] =
3488 "Enables inspection of native UI elements. For local inspection use "
3489 "chrome://inspect#other";
3490
Andrew Moylan97585272019-02-19 19:01:223491const char kUiShowCompositedLayerBordersName[] =
3492 "Show UI composited layer borders";
3493const char kUiShowCompositedLayerBordersDescription[] =
3494 "Show border around composited layers created by UI.";
3495const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
3496const char kUiShowCompositedLayerBordersSurface[] = "Surface";
3497const char kUiShowCompositedLayerBordersLayer[] = "Layer";
3498const char kUiShowCompositedLayerBordersAll[] = "All";
3499
3500const char kUiSlowAnimationsName[] = "Slow UI animations";
3501const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
Mattias Nissler6bb633f2019-02-13 23:41:463502
Sonny Sasaka7fecfeda2018-07-11 23:47:553503const char kUnfilteredBluetoothDevicesName[] = "Unfiltered Bluetooth devices";
3504const char kUnfilteredBluetoothDevicesDescription[] =
3505 "Shows all Bluetooth devices in UI (System Tray/Settings Page.)";
3506
Allen Webbcdc8e69d2018-09-12 20:36:003507const char kUsbguardName[] = "Block new USB devices at the lock screen.";
3508const char kUsbguardDescription[] =
3509 "Prevents newly connected USB devices from operating at the lock screen"
3510 " until Chrome OS is unlocked to protect against malicious USB devices."
3511 " Already connected USB devices will continue to function.";
3512
Andres Calderon Jaramillo43c0e8a2018-08-21 02:46:233513const char kVaapiJpegImageDecodeAccelerationName[] =
3514 "VA-API JPEG decode acceleration for images";
3515const char kVaapiJpegImageDecodeAccelerationDescription[] =
3516 "Enable or disable decode acceleration of JPEG images (as opposed to camera"
3517 " captures) using the VA-API.";
3518
Gil Dekel8f4b5642019-07-27 05:27:403519const char kVaapiWebPImageDecodeAccelerationName[] =
3520 "VA-API WebP decode acceleration for images";
3521const char kVaapiWebPImageDecodeAccelerationDescription[] =
3522 "Enable or disable decode acceleration of WebP images using the VA-API.";
3523
Brett Wilson7b44537e2017-08-18 01:38:283524const char kVirtualKeyboardName[] = "Virtual Keyboard";
3525const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
3526
Brett Wilson7b44537e2017-08-18 01:38:283527const char kWakeOnPacketsName[] = "Wake On Packets";
3528const char kWakeOnPacketsDescription[] =
3529 "Enables waking the device based on the receipt of some network packets.";
orenb21da031c2017-06-30 21:24:203530
Andrew Moylan2db11cd2019-05-22 14:25:153531// Prefer keeping this section sorted to adding new definitions down here.
Tim Song988f7092019-03-01 03:13:393532
yhanadac5bff5b2017-05-18 06:37:093533#endif // defined(OS_CHROMEOS)
3534
Joel Hockey0613a832019-06-21 02:19:123535#if defined(OS_CHROMEOS) || defined(OS_LINUX)
3536const char kTerminalSystemAppName[] = "Terminal System App";
3537const char kTerminalSystemAppDescription[] =
3538 "Enables the Terminal System App at chrome://terminal which is used for "
3539 "the Chrome OS Linux terminal.";
3540#endif // #if defined(OS_CHROMEOS) || defined(OS_LINUX)
3541
Collin Baker75a29462019-03-13 19:57:313542// All views-based platforms --------------------------------------------------
3543
3544#if defined(TOOLKIT_VIEWS)
3545
Sajad Maysamc30d6f82019-03-19 22:52:503546const char kEnableMDRoundedCornersOnDialogsName[] =
Dana Fried4e177f32019-04-11 23:46:463547 "MD corners on secondary UI";
Sajad Maysamc30d6f82019-03-19 22:52:503548const char kEnableMDRoundedCornersOnDialogsDescription[] =
Dana Fried4e177f32019-04-11 23:46:463549 "Increases corner radius on secondary UI.";
Sajad Maysamc30d6f82019-03-19 22:52:503550
Collin Baker75a29462019-03-13 19:57:313551const char kInstallableInkDropName[] = "Use InstallableInkDrop where supported";
3552const char kInstallableInkDropDescription[] =
3553 "InstallableInkDrop is part of an InkDrop refactoring effort. This enables "
3554 "the pilot implementation where available.";
3555
Collin Baker4ab8ad82019-06-06 17:02:543556const char kReopenTabInProductHelpName[] = "Reopen tab in-product help";
3557const char kReopenTabInProductHelpDescription[] =
3558 "Enable in-product help that guides a user to reopen a tab if it looks "
3559 "like they accidentally closed it.";
3560
Collin Baker75a29462019-03-13 19:57:313561#endif // defined(TOOLKIT_VIEWS)
3562
Brett Wilson7b44537e2017-08-18 01:38:283563// Random platform combinations -----------------------------------------------
3564
Jiajia Qindb252e92019-01-28 11:47:483565#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_CHROMEOS)
3566
3567const char kWebGL2ComputeContextName[] = "WebGL 2.0 Compute";
3568const char kWebGL2ComputeContextDescription[] =
3569 "Enable the use of WebGL 2.0 Compute API.";
3570
3571#endif // defined(OS_WIN) || defined(OS_LINUX) || defined(OS_CHROMEOS)
3572
lanwei83f54452018-06-21 23:51:043573#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3574
3575const char kDirectManipulationStylusName[] = "Direct Manipulation Stylus";
3576const char kDirectManipulationStylusDescription[] =
3577 "If enabled, Chrome will scroll web pages on stylus drag.";
3578
Jan Krcala80b6952019-07-04 07:42:553579const char kAnimatedAvatarButtonName[] = "Animated avatar button";
3580const char kAnimatedAvatarButtonDescription[] =
3581 "If enabled, Chrome will animate a pill with identity information around "
3582 "the avatar button on start-up and on sign-in.";
3583
Himanshu Jaju12eeb0c2019-08-12 10:23:573584const char kClickToCallContextMenuForSelectedTextName[] =
3585 "Enable click to call feature on desktop when a phone number is selected";
3586const char kClickToCallContextMenuForSelectedTextDescription[] =
3587 "Enables click to call feature to be shown in context menu when the user "
3588 "right clicks after selecting a phone number.";
3589
Michael van Ouwerkerkd4e4a392019-07-26 14:41:133590const char kClickToCallUIName[] =
3591 "Enable click to call feature signals to be handled on desktop";
3592const char kClickToCallUIDescription[] =
3593 "Enables click to call feature signals to be handled on desktop by showing "
3594 "a list of user's available devices with telephony functionality.";
3595
Thomas Tangla852e182019-08-19 17:22:343596const char kProfileMenuRevampName[] = "Profile menu revamp";
3597const char kProfileMenuRevampDescription[] =
3598 "Enables the new version of the profile menu (aka user menu).";
3599
lanwei83f54452018-06-21 23:51:043600#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3601
Henrik Grunell63f2d772018-12-06 17:25:203602#if defined(OS_MACOSX) || defined(OS_CHROMEOS)
3603
3604const char kForceEnableSystemAecName[] = "Force enable system AEC";
3605const char kForceEnableSystemAecDescription[] =
3606 "Use system echo canceller instead of WebRTC echo canceller. If there is "
3607 "no system echo canceller available, getUserMedia with echo cancellation "
3608 "enabled will fail.";
3609
3610#endif // defined(OS_MACOSX) || defined(OS_CHROMEOS)
3611
David Bienvenuc713d502019-02-07 23:46:323612#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_CHROMEOS)
3613
3614const char kWebContentsOcclusionName[] = "Enable occlusion of web contents";
3615const char kWebContentsOcclusionDescription[] =
3616 "If enabled, web contents will behave as hidden when it is occluded by "
3617 "other windows.";
3618
3619#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_CHROMEOS)
3620
Brett Wilson7b44537e2017-08-18 01:38:283621// Feature flags --------------------------------------------------------------
3622
Lei Zhang0a318af2018-11-14 02:19:463623#if defined(DCHECK_IS_CONFIGURABLE)
3624const char kDcheckIsFatalName[] = "DCHECKs are fatal";
3625const char kDcheckIsFatalDescription[] =
3626 "By default Chrome will evaluate in this build, but only log failures, "
3627 "rather than crashing. If enabled, DCHECKs will crash the calling process.";
3628#endif // defined(DCHECK_IS_CONFIGURABLE)
3629
Brett Wilson7b44537e2017-08-18 01:38:283630#if BUILDFLAG(ENABLE_VR)
3631
Alex Cooper151b596e2019-02-21 01:26:573632const char kWebXrOrientationSensorDeviceName[] = "Orientation sensors for XR";
3633const char kWebXrOrientationSensorDeviceDescription[] =
3634 "Allow use of orientation sensors for XR if present";
3635
Bill Orr103ed272018-02-14 21:23:053636#if BUILDFLAG(ENABLE_OCULUS_VR)
3637const char kOculusVRName[] = "Oculus hardware support";
3638const char kOculusVRDescription[] =
3639 "If enabled, Chrome will use Oculus devices for VR (supported only on "
3640 "Windows 10 or later).";
3641#endif // ENABLE_OCULUS_VR
3642
Bill Orr49527562017-11-22 16:58:483643#if BUILDFLAG(ENABLE_OPENVR)
3644const char kOpenVRName[] = "OpenVR hardware support";
3645const char kOpenVRDescription[] =
Bill Orr5056e692018-01-17 02:08:073646 "If enabled, Chrome will use OpenVR devices for VR (supported only on "
3647 "Windows 10 or later).";
Bill Orr49527562017-11-22 16:58:483648#endif // ENABLE_OPENVR
3649
Bill Orrd2af6bd52019-01-23 02:50:243650#if BUILDFLAG(ENABLE_WINDOWS_MR)
3651const char kWindowsMixedRealityName[] = "Windows Mixed Reality support";
3652const char kWindowsMixedRealityDescription[] =
3653 "If enabled, Chrome will use Windows Mixed Reality devices for VR"
3654 " (supported only on Windows 10 or later).";
3655#endif // ENABLE_WINDOWS_MR
3656
Patrick Tofafbf66232019-06-16 08:39:153657#if BUILDFLAG(ENABLE_OPENXR)
3658const char kOpenXRName[] = "OpenXR support";
3659const char kOpenXRDescription[] =
3660 "If enabled, Chrome will use OpenXR Backend for VR.";
3661#endif // ENABLE_OPENXR
3662
Will Cassella40837ba2019-07-01 21:32:003663#if !defined(OS_ANDROID)
Bill Orrecfb9fe2018-10-02 00:11:103664const char kXRSandboxName[] = "XR device sandboxing";
3665const char kXRSandboxDescription[] =
3666 "If enabled, Chrome will host VR APIs in a restricted process on desktop.";
Will Cassella40837ba2019-07-01 21:32:003667#endif // !defined(OS_ANDROID)
Bill Orrecfb9fe2018-10-02 00:11:103668
Brett Wilson7b44537e2017-08-18 01:38:283669#endif // ENABLE_VR
3670
Derek Schuff71d9a922019-04-24 21:36:003671#if BUILDFLAG(ENABLE_NACL)
3672const char kNaclName[] = "Native Client";
3673const char kNaclDescription[] =
3674 "Support Native Client for all web applications, even those that were not "
3675 "installed from the Chrome Web Store.";
3676#endif // ENABLE_NACL
3677
Lei Zhang802201c2018-11-14 18:16:283678#if BUILDFLAG(ENABLE_PLUGINS)
3679
dstockwellcc759202019-01-11 00:42:123680#if defined(OS_CHROMEOS)
3681const char kPdfAnnotations[] = "PDF Annotations";
Weidong Guo577fe9ac2019-01-28 19:58:103682const char kPdfAnnotationsDescription[] = "Enable annotating PDF documents.";
dstockwellcc759202019-01-11 00:42:123683#endif // defined(OS_CHROMEOS)
3684
Lei Zhang802201c2018-11-14 18:16:283685const char kPdfFormSaveName[] = "Save PDF Forms";
3686const char kPdfFormSaveDescription[] =
3687 "Enable saving PDFs with filled form data.";
3688
Lei Zhang802201c2018-11-14 18:16:283689#endif // BUILDFLAG(ENABLE_PLUGINS)
3690
Brett Wilson7b44537e2017-08-18 01:38:283691#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3692
3693const char kAutofillCreditCardUploadName[] =
3694 "Enable offering upload of Autofilled credit cards";
3695const char kAutofillCreditCardUploadDescription[] =
3696 "Enables a new option to upload credit cards to Google Payments for sync "
3697 "to all Chrome devices.";
3698
3699#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3700
Tomas Popela253a5832019-01-14 17:22:103701#if defined(WEBRTC_USE_PIPEWIRE)
3702
3703extern const char kWebrtcPipeWireCapturerName[] = "WebRTC PipeWire support";
3704extern const char kWebrtcPipeWireCapturerDescription[] =
3705 "When enabled the WebRTC will use the PipeWire multimedia server for "
3706 "capturing the desktop content on the Wayland display server.";
3707
3708#endif // #if defined(WEBRTC_USE_PIPEWIRE)
3709
Tom Anderson06f88b1e2019-06-25 00:04:083710#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
3711
3712const char kEnableDbusAndX11StatusIconsName[] =
3713 "Enable DBus and X11 status icons";
3714const char kEnableDbusAndX11StatusIconsDescription[] =
3715 "If enabled, uses Chromium's StatusNotifierItem (DBus) and system tray "
3716 "(X11) implementations of status icons. Otherwise, uses libappindicator's "
Nick Diego Yamane03d652a2019-07-01 17:33:263717 "and GTK's implementations.";
Tom Anderson06f88b1e2019-06-25 00:04:083718
3719#endif // defined(OS_LINUX) && !defined(OS_CHROMEOS)
3720
Stephen Chenneyde6e5c82019-01-21 01:56:043721const char kAvoidFlashBetweenNavigationName[] =
3722 "Enable flash avoidance between same-origin navigations";
3723const char kAvoidFlahsBetweenNavigationDescription[] =
3724 "Enables experimental flash avoidance when navigating between pages "
3725 "in the same origin. This feature is in the implementation stages and "
3726 "currently has no effect.";
3727
Brett Wilson7b44537e2017-08-18 01:38:283728// ============================================================================
3729// Don't just add flags to the end, put them in the right section in
3730// alphabetical order just like the header file.
3731// ============================================================================
3732
vabr0215a8e2017-03-28 12:47:343733} // namespace flag_descriptions