blob: 7645d3696e3bbbd2c7fb5e4707c7e6d460605d4d [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
Henrique Nakashima52d76952018-11-30 19:35:5862const char kAllowStartingServiceManagerOnlyName[] =
63 "Allow starting service manager only";
64const char kAllowStartingServiceManagerOnlyDescription[] =
65 "Allows running a lightweight service-manager-only mode, in which services "
66 "can run without the browser process.";
67
Hongchan Choi370d3af2019-05-20 20:56:5868const char kAudioWorkletRealtimeThreadName[] =
69 "Use realtime priority thread for Audio Worklet";
70const char kAudioWorkletRealtimeThreadDescription[] =
71 "Run Audio Worklet operation on a realtime priority thread for better "
72 "audio stream stability.";
73
Kyle Horimoto7854a032019-04-03 02:51:0774const char kUpdatedCellularActivationUiName[] =
75 "Updated Cellular Activation UI";
76const char kUpdatedCellularActivationUiDescription[] =
77 "Enables the updated cellular activation UI.";
78
Kyle Horimoto2d838ec2018-12-26 19:41:1679const char kUseMessagesGoogleComDomainName[] = "Use messages.google.com domain";
80const char kUseMessagesGoogleComDomainDescription[] =
81 "Use the messages.google.com domain as part of the \"Messages\" "
82 "feature under \"Connected Devices\" settings.";
83
Kyle Horimoto874554a2019-01-31 00:52:0984const char kUseMessagesStagingUrlName[] = "Use Messages staging URL";
85const char kUseMessagesStagingUrlDescription[] =
86 "Use the staging server as part of the \"Messages\" feature under "
87 "\"Connected Devices\" settings.";
88
Azeem Arshad373e1ea72019-01-23 02:16:0089const char kEnableMessagesWebPushName[] =
90 "Web push in Android Messages integration";
91const char kEnableMessagesWebPushDescription[] =
92 "Use web push for background notificatons in Chrome OS integration "
93 "with Android Messages for Web";
94
Jazz Xu32261b542019-06-13 20:11:2795const char kAndroidPictureInPictureAPIName[] =
96 "Picture-in-Picture Web API for Android";
97const char kAndroidPictureInPictureAPIDescription[] =
98 "Enable Picture-in-Picture Web API for Android";
99
Kamila472a5942018-11-26 09:48:27100const char kAndroidSiteSettingsUIRefreshName[] =
101 "Android Site Settings UI changes.";
102const char kAndroidSiteSettingsUIRefreshDescription[] =
Kamila02f7e072018-10-08 09:50:28103 "Enable the new UI "
104 "changes in Site Settings in Android.";
105
Ioana Pandelef9689a062018-06-22 15:35:51106const char kAutomaticPasswordGenerationName[] = "Automatic password generation";
107const char kAutomaticPasswordGenerationDescription[] =
108 "Allow Chrome to offer to generate passwords when it detects account "
109 "creation pages.";
110
Jinsuk Kime11e23ed2019-03-20 02:45:11111const char kDelegateOverscrollSwipesName[] =
112 "Delegate overscroll swipes to websites";
113const char kDelegateOverscrollSwipesDescription[] =
114 "Delegate overscroll swipes to websites first";
115
Jinsuk Kim00e52be2019-03-21 02:26:40116const char kDrawVerticallyEdgeToEdgeName[] =
117 "Draw contents vertically from edge to edge.";
118const char kDrawVerticallyEdgeToEdgeDescription[] =
119 "Draw contents vertically from edge to edge.";
120
Ulan Degenbaevb5466a92018-07-19 12:35:34121const char kEnableBloatedRendererDetectionName[] = "Bloated renderer detection";
122const char kEnableBloatedRendererDetectionDescription[] =
123 "Enable bloated renderer detection";
124
sebsgca14b092018-12-07 16:56:15125extern const char kAutofillAlwaysShowServerCardsInSyncTransportName[] =
126 "AlwaysShowServerCardsInSyncTransport";
127extern const char kAutofillAlwaysShowServerCardsInSyncTransportDescription[] =
128 "Always show server cards when in sync transport mode for wallet data";
129
Hui(Andy) Wufbebf91d22019-02-01 01:23:54130extern const char kAutofillAssistantChromeEntryName[] =
131 "AutofillAssistantChromeEntry";
132extern const char kAutofillAssistantChromeEntryDescription[] =
133 "Initiate autofill assistant from within Chrome.";
134
Roger McFarlane2eceba982018-05-18 01:37:11135const char kAutofillCacheQueryResponsesName[] =
136 "Cache Autofill Query Responses";
137const char kAutofillCacheQueryResponsesDescription[] =
138 "When enabled, autofill will cache the responses it receives from the "
139 "crowd-sourced field type prediction server.";
140
Jeffrey Cohen05cdafa392018-08-15 20:49:17141const char kAutofillEnableCompanyNameName[] =
142 "Enable Autofill Company Name field";
143const char kAutofillEnableCompanyNameDescription[] =
144 "When enabled, Company Name fields will be auto filled";
145
siyua9a66d1c2019-03-19 18:26:56146const char kAutofillEnableLocalCardMigrationForNonSyncUserName[] =
147 "Enable local card migration flow for non-syncing users";
148const char kAutofillEnableLocalCardMigrationForNonSyncUserDescription[] =
149 "When enabled, the local card migration flow will be enabled for users who "
150 "have signed in but not enabled Chrome Sync.";
151
siyua1d492612019-03-14 09:27:45152const char kAutofillEnableToolbarStatusChipName[] =
153 "Move Autofill omnibox icons next to the profile avatar icon";
154const char kAutofillEnableToolbarStatusChipDescription[] =
155 "When enabled, Autofill data related icon will be shown in the status "
156 "chip next to the profile avatar icon in the toolbar.";
sebsge35b762c2018-03-29 20:33:27157
Caitlin Fischer43edd90a2019-05-01 13:24:30158const char kAutofillEnforceMinRequiredFieldsForHeuristicsName[] =
159 "Autofill Enforce Min Required Fields For Heuristics";
160const char kAutofillEnforceMinRequiredFieldsForHeuristicsDescription[] =
161 "When enabled, autofill will generally require a form to have at least 3 "
162 "fields before allowing heuristic field-type prediction to occur.";
163
164const char kAutofillEnforceMinRequiredFieldsForQueryName[] =
165 "Autofill Enforce Min Required Fields For Query";
166const char kAutofillEnforceMinRequiredFieldsForQueryDescription[] =
167 "When enabled, autofill will generally require a form to have at least 3 "
168 "fields before querying the autofill server for field-type predictions.";
169
170const char kAutofillEnforceMinRequiredFieldsForUploadName[] =
171 "Autofill Enforce Min Required Fields For Upload";
172const char kAutofillEnforceMinRequiredFieldsForUploadDescription[] =
173 "When enabled, autofill will generally require a form to have at least 3 "
174 "fillable fields before uploading field-type votes for that form.";
175
Jared Saul63f598a12019-03-22 23:40:26176const char kAutofillNoLocalSaveOnUnmaskSuccessName[] =
177 "Remove the option to save local copies of unmasked server cards";
178const char kAutofillNoLocalSaveOnUnmaskSuccessDescription[] =
179 "When enabled, the server card unmask prompt will not include the checkbox "
180 "to also save the card locally on the current device upon success.";
181
Anne Lime625362e2018-08-29 03:13:25182const char kAutofillNoLocalSaveOnUploadSuccessName[] =
Jared Saul6f58ada2019-03-07 20:41:23183 "Disable saving local copy of uploaded card when credit card upload "
184 "succeeds";
Anne Lime625362e2018-08-29 03:13:25185const char kAutofillNoLocalSaveOnUploadSuccessDescription[] =
186 "When enabled, no local copy of server card will be saved when credit card "
187 "upload succeeds.";
188
Sebastien Lalancette1545950b2019-04-08 14:43:11189const char kAutofillOffNoServerDataName[] = "Autofill Off No Server Data";
190const char kAutofillOffNoServerDataDescription[] =
191 "Disables Autofill for fields with autocomplete off that have no "
192 "crowd-sourced evidence that Autofill would be helpful.";
193
Parastoo Geranmayeh0f5ebbc2019-01-21 21:01:09194const char kAutofillProfileClientValidationName[] =
195 "Autofill Validates Profiles By Client";
196const char kAutofillProfileClientValidationDescription[] =
197 "Allows autofill to validate profiles on the client side";
198
Parastoo Geranmayeh25fccec22019-01-29 18:38:13199const char kAutofillProfileServerValidationName[] =
200 "Autofill Uses Server Validation";
201const char kAutofillProfileServerValidationDescription[] =
202 "Allows autofill to use server side validation";
203
Caitlin Fischer6d609542019-05-01 21:59:21204const char kAutofillPruneSuggestionsName[] = "Autofill Prune Suggestions";
205const char kAutofillPruneSuggestionsDescription[] =
206 "Further limits the number of suggestions in the Autofill dropdown.";
207
Parastoo Geranmayeha1895c12019-04-25 16:43:38208const char kAutofillRejectCompanyBirthyearName[] =
209 "Autofill Rejects Invalid Company Names";
210const char kAutofillRejectCompanyBirthyearDescription[] =
211 "Autofill rejects using non-verified company names that are in the "
212 "format of a birthyear.";
213
Moe Ahmadid3ddfcb2018-04-20 19:51:08214const char kAutofillRestrictUnownedFieldsToFormlessCheckoutName[] =
215 "Restrict formless form extraction";
216const char kAutofillRestrictUnownedFieldsToFormlessCheckoutDescription[] =
217 "Restrict extraction of formless forms to checkout flows";
218
Roger McFarlanee193ab122018-11-22 20:55:07219const char kAutofillRichMetadataQueriesName[] =
220 "Autofill - Rich metadata queries (Canary/Dev only)";
221const char kAutofillRichMetadataQueriesDescription[] =
222 "Transmit rich form/field metadata when querying the autofill server. "
223 "This feature only works on the Canary and Dev channels.";
224
sebsg48d53acd92019-01-17 18:11:16225const char kAutofillSettingsSplitByCardTypeName[] =
226 "Autofill settings split by card type";
227const char kAutofillSettingsSplitByCardTypeDescription[] =
228 "When enabled, the cards in the payments settings will be split into two "
229 "lists based on where they are stored.";
230
Caitlin Fischer43edd90a2019-05-01 13:24:30231const char kAutofillUseImprovedLabelDisambiguationName[] =
232 "Autofill Uses Improved Label Disambiguation";
233const char kAutofillUseImprovedLabelDisambiguationDescription[] =
234 "When enabled, the Autofill dropdown's suggestions' labels are displayed "
235 "using the improved disambiguation format.";
236
Jia0175adae2019-05-15 00:21:25237const char kAutoScreenBrightnessName[] = "Auto Screen Brightness model";
238const char kAutoScreenBrightnessDescription[] =
239 "Uses Auto Screen Brightness model to adjust screen brightness based on "
240 "ambient light";
241
Brett Wilsonf27ff602017-07-07 22:28:47242const char kBrowserTaskSchedulerName[] = "Task Scheduler";
243const char kBrowserTaskSchedulerDescription[] =
244 "Enables redirection of some task posting APIs to the task scheduler.";
245
Carlos IL766fbc882018-02-16 02:34:52246const char kBundledConnectionHelpName[] = "Bundled Connection Help";
247const char kBundledConnectionHelpDescription[] =
Carlos ILaafcd73a2018-07-10 20:08:37248 "Enables or disables redirection to local help content for users who get "
249 "an interstitial after clicking the 'Learn More' link on a previous "
250 "interstitial.";
Carlos IL766fbc882018-02-16 02:34:52251
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
Yasmin71ff2672019-06-20 16:22:49265const char kClickToCallReceiverName[] =
266 "Enable receiver device to handle click to call feature";
267const char kClickToCallReceiverDescription[] =
268 "Enables receiver device to handle click to call feature by showing a "
269 "notification to call the phone number clicked on the desktop.";
270
271const char kClickToCallUIName[] =
272 "Enable click to call feature signals to be handled on desktop";
273const char kClickToCallUIDescription[] =
274 "Enables click to call feature signals to be handled on desktop by showing "
275 "a list of user's available devices with telephony functionality.";
276
Amber Won478561d2017-08-19 01:02:59277const char kClickToOpenPDFName[] = "Click to open embedded PDFs";
278const char kClickToOpenPDFDescription[] =
279 "When the PDF plugin is unavailable, show a click-to-open placeholder for "
280 "embedded PDFs.";
281
rbpotter9990eb42018-07-12 05:34:59282const char kCloudPrinterHandlerName[] = "Enable Cloud Printer Handler";
283const char kCloudPrinterHandlerDescription[] =
284 "Use the new cloud printer handler for communicating with the cloud "
285 "print server, instead of the cloud print interface in the Print "
286 "Preview WebUI.";
287
Tanja Gornakb0985dd2018-10-11 17:24:40288const char kFCMInvalidationsName[] =
289 "Enable invalidations delivery via new FCM based protocol";
290const char kFCMInvalidationsDescription[] =
291 "Use the new FCM-based protocol for deliveling invalidations";
292
Yining Wangdedf0762019-02-19 20:20:29293const char kFocusMode[] = "Focus Mode";
294const char kFocusModeDescription[] =
295 "If enabled, allows the user to switch to Focus Mode";
296
Dominik Röttschesb7d7ad02019-06-17 18:21:27297const char kFontSrcLocalMatchingName[] =
298 "Match @font-face { src: local(<name>) } names by PostScript and full font "
299 "name.";
300const char kFontSrcLocalMatchingDescription[] =
301 "Match local() src attributes in @font-face declarations precisely by "
302 "PostScript name and full font name instead of the previous behavior of "
303 "matching those unspecifically as family names.";
304
Christopher Cameronceb8727d2017-09-07 23:53:16305const char kForceColorProfileSRGB[] = "sRGB";
306const char kForceColorProfileP3[] = "Display P3 D65";
307const char kForceColorProfileColorSpin[] = "Color spin with gamma 2.4";
Sunny Sachanandani71e474a2019-06-11 02:32:03308const char kForceColorProfileSCRGBLinear[] =
309 "scRGB linear (HDR where available)";
310const char kForceColorProfileHDR10[] = "HDR10 (HDR where available)";
Christopher Cameronceb8727d2017-09-07 23:53:16311
312const char kForceColorProfileName[] = "Force color profile";
313const char kForceColorProfileDescription[] =
314 "Forces Chrome to use a specific color profile instead of the color "
315 "of the window's current monitor, as specified by the operating system.";
316
Brett Wilsonf27ff602017-07-07 22:28:47317const char kCompositedLayerBordersName[] = "Composited render layer borders";
318const char kCompositedLayerBordersDescription[] =
319 "Renders a border around composited Render Layers to help debug and study "
320 "layer compositing.";
321
Lily Chenb22952e2019-06-06 18:56:23322const char kCookieDeprecationMessagesName[] = "Cookie deprecation messages";
323const char kCookieDeprecationMessagesDescription[] =
324 "Show messages in the DevTools console about upcoming deprecations that "
325 "would affect sent/received cookies.";
326
327const char kCookiesWithoutSameSiteMustBeSecureName[] =
Lily Cheneb304c8f2019-04-25 23:37:45328 "Cookies without SameSite must be secure";
Lily Chenb22952e2019-06-06 18:56:23329const char kCookiesWithoutSameSiteMustBeSecureDescription[] =
Lily Cheneb304c8f2019-04-25 23:37:45330 "If enabled, cookies without SameSite restrictions must also be Secure. If "
331 "a cookie without SameSite restrictions is set without the Secure "
Lily Chend3bf638d2019-05-03 16:54:25332 "attribute, it will be rejected. This flag only has an effect if "
Lily Cheneb304c8f2019-04-25 23:37:45333 "\"SameSite by default cookies\" is also enabled.";
334
Brett Wilsonf27ff602017-07-07 22:28:47335const char kCreditCardAssistName[] = "Credit Card Assisted Filling";
336const char kCreditCardAssistDescription[] =
337 "Enable assisted credit card filling on certain sites.";
338
Thanh Le659cb102017-12-20 22:00:19339const char kDataSaverServerPreviewsName[] = "Data Saver Server Previews";
340const char kDataSaverServerPreviewsDescription[] =
341 "Allow the Data Reduction Proxy to serve previews.";
Brett Wilsonf27ff602017-07-07 22:28:47342
Brett Wilsonf27ff602017-07-07 22:28:47343const char kDebugPackedAppName[] = "Debugging for packed apps";
344const char kDebugPackedAppDescription[] =
345 "Enables debugging context menu options such as Inspect Element for packed "
346 "applications.";
347
Brett Wilsonf27ff602017-07-07 22:28:47348const char kDebugShortcutsName[] = "Debugging keyboard shortcuts";
349const char kDebugShortcutsDescription[] =
350 "Enables additional keyboard shortcuts that are useful for debugging Ash.";
351
352const char kDeviceDiscoveryNotificationsName[] =
353 "Device Discovery Notifications";
354const char kDeviceDiscoveryNotificationsDescription[] =
355 "Device discovery notifications on local network.";
356
357const char kDevtoolsExperimentsName[] = "Developer Tools experiments";
358const char kDevtoolsExperimentsDescription[] =
359 "Enables Developer Tools experiments. Use Settings panel in Developer "
360 "Tools to toggle individual experiments.";
361
362const char kDisableAudioForDesktopShareName[] =
363 "Disable Audio For Desktop Share";
364const char kDisableAudioForDesktopShareDescription[] =
365 "With this flag on, desktop share picker window will not let the user "
366 "choose whether to share audio.";
367
Yue Ru Suna50a80f2019-02-08 05:02:58368const char kDisableBestEffortTasksName[] = "Skip best effort tasks";
369const char kDisableBestEffortTasksDescription[] =
370 "With this flag on, tasks of the lowest priority will not be executed "
371 "until shutdown. The queue of low priority tasks can increase memory usage."
372 "Also, while it should be possible to use Chrome almost normally with this "
373 "flag, it is expected that some non-visible operations such as writing "
374 "user data to disk, cleaning caches, reporting metrics or updating "
375 "components won't be performed until shutdown.";
376
Arthur Sonzogni721f48e2018-10-31 17:10:02377const char kDisableIpcFloodingProtectionName[] =
378 "Disable IPC flooding protection";
379const char kDisableIpcFloodingProtectionDescription[] =
380 "Some javascript code can flood the inter process communication system. "
381 "This protection limits the rate (calls/seconds) at which theses function "
arthursonzogni443bd0ef2018-11-27 16:12:53382 "can be used. This flag disables the protection. This flag is deprecated "
383 "and will be removed in Chrome 76. Use the switch "
384 "--disable-ipc-flooding-protection instead.";
Arthur Sonzogni721f48e2018-10-31 17:10:02385
Chris Palmer917bc052018-03-14 19:28:31386const char kDisablePushStateThrottleName[] = "Disable pushState throttling";
387const char kDisablePushStateThrottleDescription[] =
388 "Disables throttling of history.pushState and history.replaceState method "
arthursonzogni443bd0ef2018-11-27 16:12:53389 "calls. This flag is deprecated and will be removed in Chrome 76. Use the "
390 "switch --disable-ipc-flooding-protection instead.";
Chris Palmer917bc052018-03-14 19:28:31391
Brett Wilsonf27ff602017-07-07 22:28:47392const char kDisallowDocWrittenScriptsUiName[] =
393 "Block scripts loaded via document.write";
394const char kDisallowDocWrittenScriptsUiDescription[] =
395 "Disallows fetches for third-party parser-blocking scripts inserted into "
396 "the main frame via document.write.";
397
Christopher Thompson2ffffa2c2018-05-18 23:06:37398const char kDisallowUnsafeHttpDownloadsName[] =
399 "Block unsafe downloads over insecure connections";
400const char kDisallowUnsafeHttpDownloadsNameDescription[] =
401 "Disallows downloads of unsafe files (files that can potentially execute "
402 "code), where the final download origin or any origin in the redirect "
403 "chain is insecure.";
404
Min Qin3a3945262019-05-30 01:49:00405const char kDownloadResumptionWithoutStrongValidatorsName[] =
406 "Allow download resumption without strong validators";
407const char kDownloadResumptionWithoutStrongValidatorsDescription[] =
408 "Allows download to resume instead of restarting from the begining if "
409 "strong validators are not present.";
410
Dominic Mazzoniaa4b97d2019-04-03 22:43:48411const char kEnableAccessibilityImageDescriptionsName[] =
412 "Accessibility Image Descriptions";
413const char kEnableAccessibilityImageDescriptionsDescription[] =
414 "Enables screen reader users to request computer-generated descriptions "
415 "of unlabeled images using the page context menu.";
416
Dominic Mazzoni8ac98962018-05-25 05:44:55417const char kEnableAccessibilityObjectModelName[] = "Accessibility Object Model";
418const char kEnableAccessibilityObjectModelDescription[] =
419 "Enables experimental support for Accessibility Object Model APIs "
420 "that are in development.";
421
Becca Hughesac86cd442019-01-09 23:49:54422const char kEnableAudioFocusEnforcementName[] = "Audio Focus Enforcement";
423const char kEnableAudioFocusEnforcementDescription[] =
424 "Enables enforcement of a single media session having audio focus at "
425 "any one time. Requires #enable-media-session-service to be enabled too.";
426
Sebastien Lalancette5daaf4a2019-01-11 22:09:25427const char kEnableAutocompleteDataRetentionPolicyName[] =
428 "Enable automatic cleanup of expired Autocomplete entries.";
429const char kEnableAutocompleteDataRetentionPolicyDescription[] =
430 "If enabled, will clean-up Autocomplete entries whose last use date is "
431 "older than the current retention policy. These entries will be "
432 "permanently deleted from the client on startup, and will be unlinked "
433 "from sync.";
434
Florian Uunk8c428ea2018-07-18 11:12:52435const char kEnableAutofillAccountWalletStorageName[] =
436 "Enable the account data storage for autofill";
437const char kEnableAutofillAccountWalletStorageDescription[] =
438 "Enable the ephemeral storage for account data for autofill.";
439
Shanfeng Zhang19c16562017-10-17 02:30:40440const char kEnableAutofillCreditCardAblationExperimentDisplayName[] =
441 "Credit card autofill ablation experiment.";
442const char kEnableAutofillCreditCardAblationExperimentDescription[] =
443 "If enabled, credit card autofill suggestions will not display.";
444
Manas Verma7e5b391b2019-04-09 02:08:53445const char kEnableAutofillCreditCardAuthenticationName[] =
446 "Allow using platform authenticators to retrieve server cards";
447const char kEnableAutofillCreditCardAuthenticationDescription[] =
448 "When enabled, users will be given the option to use a platform "
449 "authenticator (if available) to verify card ownership when retrieving "
450 "credit cards from Google Payments.";
451
Brett Wilsonf27ff602017-07-07 22:28:47452const char kEnableAutofillCreditCardLastUsedDateDisplayName[] =
453 "Display the last used date of a credit card in autofill.";
454const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
455 "If enabled, display the last used date of a credit card in autofill.";
456
Jared Saulbc672a072018-06-16 05:22:12457const char kEnableAutofillCreditCardUploadEditableCardholderNameName[] =
458 "Make cardholder name editable in dialog during credit card upload";
459const char kEnableAutofillCreditCardUploadEditableCardholderNameDescription[] =
460 "If enabled, in certain situations when offering credit card upload to "
461 "Google Payments, the cardholder name can be edited within the "
462 "offer-to-save dialog, which is prefilled with the name from the signed-in "
463 "Google Account.";
464
Hao Zhang1be9c262018-11-03 00:23:51465const char kEnableAutofillCreditCardUploadEditableExpirationDateName[] =
466 "Make expiration date editable in dialog during credit card upload";
467const char kEnableAutofillCreditCardUploadEditableExpirationDateDescription[] =
468 "If enabled, if a credit card's expiration date was not detected when "
469 "offering card upload to Google Payments, the offer-to-save dialog "
470 "displays an expiration date selector.";
471
siyua29899832019-06-07 19:42:12472const char kEnableAutofillCreditCardUploadFeedbackName[] =
473 "Enable feedback for credit card upload flow";
474const char kEnableAutofillCreditCardUploadFeedbackDescription[] =
475 "When enabled, if credit card upload succeeds, the avatar button will "
476 "show a highlight, otherwise the icon will be updated and if it is "
477 "clicked, the save card failure bubble will be shown.";
478
Sujie Zhu74dd439e2019-04-27 03:23:39479const char kEnableAutofillDoNotMigrateUnsupportedLocalCardsName[] =
480 "Prevents local card migration on local cards from unsupported networks";
481const char kEnableAutofillDoNotMigrateUnsupportedLocalCardsDescription[] =
482 "If enabled, local cards from unsupported networks will not be offered "
483 "local card migration.";
484
Anne Limc1d23212019-03-07 17:46:08485const char kEnableAutofillDoNotUploadSaveUnsupportedCardsName[] =
486 "Prevents upload save on cards from unsupported networks";
487const char kEnableAutofillDoNotUploadSaveUnsupportedCardsDescription[] =
488 "If enabled, cards from unsupported networks will not be offered upload "
489 "save, and will instead be offered local save.";
490
Hao Zhangd3017112019-02-01 20:13:30491const char kEnableAutofillImportNonFocusableCreditCardFormsName[] =
492 "Allow credit card import from forms that disappear after entry";
493const char kEnableAutofillImportNonFocusableCreditCardFormsDescription[] =
494 "If enabled, offers credit card save for forms that are hidden from the "
495 "page after information has been entered into them, including "
496 "accordion-style checkout flows.";
497
Hao Zhang0c4f18d2019-04-05 01:20:25498const char kEnableAutofillImportDynamicFormsName[] =
499 "Allow credit card import from dynamic forms after entry";
500const char kEnableAutofillImportDynamicFormsDescription[] =
501 "If enabled, offers credit card save for dynamic forms from the page after "
502 "information has been entered into them.";
503
Anne Lim30351782019-03-01 01:57:16504const char kEnableAutofillLocalCardMigrationUsesStrikeSystemV2Name[] =
505 "Enable limit on offering to migrate local cards repeatedly using the "
506 "updated strike system implementation";
507const char kEnableAutofillLocalCardMigrationUsesStrikeSystemV2Description[] =
508 "If enabled, uses the updated strike system implementation to prevent "
509 "offering prompts for local card migration if it has repeatedly been "
510 "ignored, declined, or failed.";
511
tmartinocd414732018-02-12 19:01:01512const char kEnableAutofillNativeDropdownViewsName[] =
513 "Display Autofill Dropdown Using Views";
514const char kEnableAutofillNativeDropdownViewsDescription[] =
515 "If enabled, the Autofill Dropdown will be built natively using Views, "
516 "rather than painted directly to a canvas.";
517
siyua172973d2018-11-21 22:23:20518const char kEnableAutofillSaveCardImprovedUserConsentName[] =
519 "Use updated UI for credit card save bubbles";
520const char kEnableAutofillSaveCardImprovedUserConsentDescription[] =
521 "If enabled, adds a [No thanks] button to credit card save bubbles and "
522 "updates their title headers.";
523
siyuaa92bc942019-05-24 20:57:33524const char kEnableAutofillSaveCreditCardUsesImprovedMessagingName[] =
525 "Enable new title and button label for credit card upload bubble";
526const char kEnableAutofillSaveCreditCardUsesImprovedMessagingDescription[] =
527 "If enabled, four variations of new messaging will be used in credit card "
528 "upload bubble.";
529
Lakshmi Kumar Dabbirua3d0805f2018-05-22 22:04:23530const char kEnableAutofillSendExperimentIdsInPaymentsRPCsName[] =
531 "Send experiment flag IDs in calls to Google Payments";
532const char kEnableAutofillSendExperimentIdsInPaymentsRPCsDescription[] =
533 "If enabled, adds the status of certain experiment variations when making "
534 "calls to Google Payments.";
535
Tarun Bansal56c92932019-04-01 17:58:36536const char kEnableSaveDataName[] = "Enables save data feature";
537const char kEnableSaveDataDescription[] =
538 "Enables save data feature. May cause user's traffic to be proxied via "
539 "Google's data reduction proxy.";
540
Ramin Halavati7dbb0722019-02-15 05:33:49541const char kEnableFilesystemInIncognitoName[] = "Filesystem API in Incognito";
542const char kEnableFilesystemInIncognitoDescription[] =
543 "Enable Filesystem API in incognito mode.";
544
Doug Arnett08b4067b2017-10-12 20:14:44545const char kEnableNoScriptPreviewsName[] = "NoScript previews";
546
547const char kEnableNoScriptPreviewsDescription[] =
548 "Enable disabling JavaScript on some pages on slow networks.";
549
Thanh Le2c279fbc2017-11-21 01:25:40550const char kDataReductionProxyServerAlternative1[] = "Use alt. server config 1";
551const char kDataReductionProxyServerAlternative2[] = "Use alt. server config 2";
552const char kDataReductionProxyServerAlternative3[] = "Use alt. server config 3";
553const char kDataReductionProxyServerAlternative4[] = "Use alt. server config 4";
554const char kDataReductionProxyServerAlternative5[] = "Use alt. server config 5";
555const char kDataReductionProxyServerAlternative6[] = "Use alt. server config 6";
556const char kDataReductionProxyServerAlternative7[] = "Use alt. server config 7";
557const char kDataReductionProxyServerAlternative8[] = "Use alt. server config 8";
558const char kDataReductionProxyServerAlternative9[] = "Use alt. server config 9";
559const char kDataReductionProxyServerAlternative10[] =
560 "Use alt. server config 10";
rajendrantcfa60ba2018-10-30 09:16:54561const char kEnableDataReductionProxyNetworkServiceName[] =
562 "Data reduction proxy with network service";
563const char kEnableDataReductionProxyNetworkServiceDescription[] =
564 "Enable data reduction proxy when network service is enabled";
Brett Wilsonf27ff602017-07-07 22:28:47565const char kEnableDataReductionProxyServerExperimentName[] =
566 "Use an alternative Data Saver back end configuration.";
567const char kEnableDataReductionProxyServerExperimentDescription[] =
568 "Enable a different approach to saving data by configuring the back end "
569 "server";
570
Matt Giucad4870432017-11-24 01:04:38571const char kEnableDesktopPWAsName[] = "Desktop PWAs";
572const char kEnableDesktopPWAsDescription[] =
573 "Experimental windowing and install banner treatment for Progressive Web "
574 "Apps on desktop platforms. Implies #enable-experimental-app-banners.";
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17575
Alan Cutter1816c9d2019-02-11 02:20:07576const char kDesktopPWAsOmniboxInstallName[] =
577 "Desktop PWAs installable from the omnibox";
578const char kDesktopPWAsOmniboxInstallDescription[] =
579 "When on a site that passes PWA installation requirements show a button in "
580 "the omnibox for installing it.";
581
Alexey Baskakov956d7982019-06-03 05:00:05582const char kDesktopPWAsUnifiedInstallName[] =
583 "Desktop PWAs Unified Installation.";
584const char kDesktopPWAsUnifiedInstallDescription[] =
585 "New unified installation process for Desktop PWAs.";
586
Christopher Lame66b7812018-09-26 01:49:24587const char kEnableSystemWebAppsName[] = "System Web Apps";
588const char kEnableSystemWebAppsDescription[] =
589 "Experimental system for using the Desktop PWA framework for running System"
590 "Apps (e.g Settings, Discover).";
591
David Benjamin570460e2018-10-16 06:01:29592const char kEnforceTLS13DowngradeName[] = "TLS 1.3 downgrade hardening";
593const char kEnforceTLS13DowngradeDescription[] =
594 "This option enables the TLS 1.3 downgrade hardening mechanism. This "
595 "hardens TLS 1.3 connections while remaining compatible with TLS 1.0 "
596 "through 1.2 connections. Firewalls and proxies that do not function when "
597 "this is enabled do not implement TLS 1.0 through 1.2 correctly or "
598 "securely. They must be fixed by vendors.";
599
Steven Valdez89a44ea92019-05-01 15:18:49600const char kEnableTLS13EarlyDataName[] = "TLS 1.3 Early Data";
601const char kEnableTLS13EarlyDataDescription[] =
602 "This option enables TLS 1.3 Early Data, allowing GET requests to be sent "
603 "during the handshake when resuming a connection to a compatible TLS 1.3 "
604 "server.";
605
Brett Wilsonf27ff602017-07-07 22:28:47606const char kEnableGenericSensorName[] = "Generic Sensor";
607const char kEnableGenericSensorDescription[] =
Mikhail Pozdnyakov73373a62017-08-24 17:31:25608 "Enables motion sensor classes based on Generic Sensor API, i.e. "
609 "Accelerometer, LinearAccelerationSensor, Gyroscope, "
610 "AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
611
612const char kEnableGenericSensorExtraClassesName[] =
613 "Generic Sensor Extra Classes";
614const char kEnableGenericSensorExtraClassesDescription[] =
615 "Enables an extra set of sensor classes based on Generic Sensor API, which "
616 "expose previously unavailable platform features, i.e. AmbientLightSensor "
617 "and Magnetometer interfaces.";
Brett Wilsonf27ff602017-07-07 22:28:47618
Vikas Soni78daa632019-01-12 01:32:52619const char kEnableGpuServiceLoggingName[] = "Enable gpu service logging";
620const char kEnableGpuServiceLoggingDescription[] =
621 "Enable printing the actual GL driver calls.";
622
Victor Hugo Vianna Silva8cc3ddf2019-05-22 15:47:35623const char kEnableHistoryFaviconsGoogleServerQueryName[] =
624 "Enable History Favicons Google Server Query";
625const char kEnableHistoryFaviconsGoogleServerQueryDescription[] =
626 "Allow retrieving favicons of non-local entries in the history WebUIs and "
627 "the recent tabs menu using a Google server instead of Sync.";
628
David Bokan911bded2018-11-27 23:23:32629const char kEnableImplicitRootScrollerName[] = "Implicit Root Scroller";
630const char kEnableImplicitRootScrollerDescription[] =
631 "Enables implicitly choosing which scroller on a page is the 'root "
632 "scroller'. i.e. The one that gets special features like URL bar movement, "
633 "overscroll glow, rotation anchoring, etc.";
634
Robert Ogdence8c9572018-10-08 23:08:48635const char kEnableLitePageServerPreviewsName[] = "Lite Page Server Previews";
636const char kEnableLitePageServerPreviewsDescription[] =
Doug Arnett9c1f87562018-12-14 00:56:39637 "Enable showing Lite Page Previews served from a Previews Server."
638 "This feature will cause Chrome to redirect eligible navigations "
Robert Ogdence8c9572018-10-08 23:08:48639 "to a Google-owned domain that serves a pre-rendered version of the "
Doug Arnett9c1f87562018-12-14 00:56:39640 "original page. Also known as Lite Page Redirect Previews.";
Robert Ogdence8c9572018-10-08 23:08:48641
Ryan Sturm5e4d4422019-02-28 01:32:29642const char kEnableURLLoaderLitePageServerPreviewsName[] =
643 "Lite Page Server Previews using URL Loader";
644const char kEnableURLLoaderLitePageServerPreviewsDescription[] =
645 "Enable using a network service URL Loader for Lite Page Server Previews. "
646 "This requires enable-lite-page-server-previews to be enabled along with "
647 "network-service.";
648
Hiroshige Hayashizaki3ee116af2019-03-05 10:11:22649const char kBuiltInModuleAllName[] = "All experimental built-in modules";
650const char kBuiltInModuleAllDescription[] =
651 "Enable all experimental built-in modules, as well as built-in module "
652 "infrastructure and import maps. The syntax and the APIs exposed are "
653 "experimental and will change over time.";
654
655const char kBuiltInModuleInfraName[] = "Built-in module infra and import maps";
656const char kBuiltInModuleInfraDescription[] =
657 "Enable built-in module infrastructure and import maps. Individual "
658 "built-in modules should be enabled by other flags. The syntax and the "
659 "APIs exposed are experimental and will change over time.";
660
661const char kBuiltInModuleKvStorageName[] = "kv-storage built-in module";
662const char kBuiltInModuleKvStorageDescription[] =
663 "Enable kv-storage built-in module, as well as built-in module "
664 "infrastructure and import maps. The syntax and the APIs exposed are "
665 "experimental and will change over time.";
Hiroshige Hayashizaki99d5821e2018-05-02 04:25:41666
Charlene Yane75ce252019-05-22 17:56:32667const char kDownloadAutoResumptionNativeName[] =
668 "Enable download auto-resumption in native";
669const char kDownloadAutoResumptionNativeDescription[] =
670 "Enables download auto-resumption in native";
671
672const char kDragToPinTabsName[] = "Drag to Modify Tab Pinnedness";
673const char kDragToPinTabsDescription[] =
674 "Allows users to drag tabs between pinned and unpinned tabs to modify the "
675 "pinned state of the tab.";
676
Philip Rogers63481332018-12-01 22:16:51677const char kEnableBlinkGenPropertyTreesName[] = "Enable BlinkGenPropertyTrees";
678const char kEnableBlinkGenPropertyTreesDescription[] =
679 "Enable a new compositing mode where Blink generates the compositor "
680 "property trees.";
681
Mason Freedc166cf12019-06-14 19:04:26682const char kEnableCSSBackdropFilterName[] = "Enable backdrop-filter";
683const char kEnableCSSBackdropFilterDescription[] =
684 "Enable a new CSS property called backdrop-filter.";
685
Vladimir Levin43758ecc2019-05-09 18:04:03686const char kEnableDisplayLockingName[] = "Enable Display Locking";
687const char kEnableDisplayLockingDescription[] =
688 "Enable Display Locking JavaScript API. The syntax and the APIs exposed "
689 "are experimental and may change.";
690
Ian Kilpatricke68ef11a2018-07-04 03:52:10691const char kEnableLayoutNGName[] = "Enable LayoutNG";
692const char kEnableLayoutNGDescription[] =
693 "Enable Blink's next generation layout engine.";
694
Scott Littled0fd2d002018-04-13 03:37:26695const char kEnableLazyFrameLoadingName[] = "Enable lazy frame loading";
696const char kEnableLazyFrameLoadingDescription[] =
Scott Littledf79081b2019-05-29 23:03:39697 "Defers the loading of iframes marked with the attribute 'loading=lazy' "
698 "until the page is scrolled down near them.";
Scott Littled0fd2d002018-04-13 03:37:26699
rajendrant793ff512018-08-10 17:07:59700const char kEnableLazyImageLoadingName[] = "Enable lazy image loading";
701const char kEnableLazyImageLoadingDescription[] =
Scott Littledf79081b2019-05-29 23:03:39702 "Defers the loading of images marked with the attribute 'loading=lazy' "
703 "until the page is scrolled down near them.";
rajendrant793ff512018-08-10 17:07:59704
Sidney San Martín9375b892017-09-09 00:29:54705const char kEnableMacMaterialDesignDownloadShelfName[] =
706 "Enable Material Design download shelf";
707
708const char kEnableMacMaterialDesignDownloadShelfDescription[] =
709 "If enabled, the download shelf uses Material Design.";
710
Becca Hughesac86cd442019-01-09 23:49:54711const char kEnableMediaSessionServiceName[] = "Media Session Service";
712const char kEnableMediaSessionServiceDescription[] =
713 "Enables the media session mojo service and internal media session "
714 "support.";
715
Brett Wilsonf27ff602017-07-07 22:28:47716const char kEnableNavigationTracingName[] = "Enable navigation tracing";
717const char kEnableNavigationTracingDescription[] =
718 "This is to be used in conjunction with the trace-upload-url flag. "
719 "WARNING: When enabled, Chrome will record performance data for every "
720 "navigation and upload it to the URL specified by the trace-upload-url "
721 "flag. The trace may include personally identifiable information (PII) "
722 "such as the titles and URLs of websites you visit.";
723
Bernhard Bauer5533f9912017-11-06 17:56:02724const char kEnableNetworkLoggingToFileName[] = "Enable network logging to file";
725const char kEnableNetworkLoggingToFileDescription[] =
726 "Enables network logging to a file named netlog.json in the user data "
727 "directory. The file can be imported into chrome://net-internals.";
728
John Abd-El-Malek8067cc02017-12-04 23:23:20729const char kEnableNetworkServiceInProcessName[] =
730 "Runs network service in-process";
731const char kEnableNetworkServiceInProcessDescription[] =
732 "Runs the network service in the browser process.";
733
Shakti Sahu5a046f62019-03-12 19:25:34734const char kEnableNewDownloadBackendName[] = "Enable new download backend";
735const char kEnableNewDownloadBackendDescription[] =
736 "Enables the new download backend that uses offline content provider";
737
Lucas Furukawa Gadani9f57e192019-04-05 14:56:10738const char kEnablePortalsName[] = "Enable Portals.";
739const char kEnablePortalsDescription[] =
740 "Portals are an experimental web platform feature that allows embedding"
741 " and seamless transitions between pages."
742 " See https://github.com/WICG/portals and https://wicg.github.io/portals/";
743
Tetsui Ohkuboc3eb87f72018-07-20 02:22:28744const char kEnableNotificationScrollBarName[] =
745 "Enable notification list scroll bar";
746const char kEnableNotificationScrollBarDescription[] =
747 "Enable the scroll bar of the notification list in Unified System Tray.";
748
Mitsuru Otsukae8304de2018-10-29 02:14:36749const char kEnableNotificationExpansionAnimationName[] =
750 "Enable notification expansion animations";
751const char kEnableNotificationExpansionAnimationDescription[] =
752 "Enable notification animations whenever the expansion state is toggled.";
753
Takashi Toyoshima2e01e692018-11-16 03:23:27754const char kEnableOutOfBlinkCorsName[] = "Out of blink CORS";
755const char kEnableOutOfBlinkCorsDescription[] =
Yutaka Hirano98be3272017-08-07 17:55:39756 "CORS handling logic is moved out of blink.";
757
Chris Halle952239e2018-11-06 06:49:52758const char kExperimentalAccessibilityFeaturesName[] =
759 "Experimental accessibility features";
760const char kExperimentalAccessibilityFeaturesDescription[] =
761 "Enable additional accessibility features in the Settings page.";
762
Katie D652135c2018-11-27 18:30:13763const char kExperimentalAccessibilityAutoclickName[] =
764 "Experimental automatic click features";
765const char kExperimentalAccessibilityAutoclickDescription[] =
766 "Enable additional features for automatic clicks.";
767
Chris Hall4a4225f62019-01-18 03:07:16768const char kExperimentalAccessibilityLanguageDetectionName[] =
769 "Experimental accessibility language detection";
770const char kExperimentalAccessibilityLanguageDetectionDescription[] =
771 "Enable language detection for in-page content which is then exposed to "
772 "accessiblity technologies such as screen readers.";
773
Anastasia Helfinsteinafecc68c2018-11-26 19:20:17774const char kExperimentalAccessibilitySwitchAccessName[] =
775 "Experimental feature Switch Access";
776const char kExperimentalAccessibilitySwitchAccessDescription[] =
777 "Add a setting to enable the prototype of Switch Access";
778
kylechar7051c092018-02-05 20:31:39779const char kVizDisplayCompositorName[] = "Viz Display Compositor (OOP-D)";
780const char kVizDisplayCompositorDescription[] =
781 "If enabled, the display compositor runs as part of the viz service in the"
782 "GPU process.";
783
Xianda Sunfa2a35922019-04-15 19:01:28784const char kVizHitTestName[] = "Viz Hit-test";
785const char kVizHitTestDescription[] =
Ria Jiang6a129b982018-03-01 18:30:40786 "If enabled, event targeting uses the new viz-assisted hit-testing logic, "
Xianda Sunfa2a35922019-04-15 19:01:28787 "with hit-test data computed from the CompositorFrame or the SurfaceLayer.";
Ria Jiang6a129b982018-03-01 18:30:40788
Rahul Arakeri61a2ad272019-03-19 22:55:08789const char kCompositorThreadedScrollbarScrollingName[] =
Rahul Arakeriac87fb12019-05-14 00:07:22790 "Compositor threaded scrollbar scrolling";
Rahul Arakeri61a2ad272019-03-19 22:55:08791const char kCompositorThreadedScrollbarScrollingDescription[] =
792 "Enables pointer-based scrollbar scrolling on the compositor thread "
793 "instead of the main thread";
794
Alexei Filippov522a5222019-03-29 03:33:18795const char kMemlogName[] = "Chrome heap profiler start mode.";
796const char kMemlogDescription[] =
797 "Starts heap profiling service that records sampled memory allocation "
798 "profile having each sample attributed with a callstack. "
799 "The sampling resolution is controlled with --memlog-sampling-rate flag. "
800 "Recorded heap dumps can be obtained at chrome://tracing "
801 "[category:memory-infra] and chrome://memory-internals. This setting "
802 "controls which processes will be profiled since their start. To profile "
803 "any given process at a later time use chrome://memory-internals page.";
804const char kMemlogModeMinimal[] = "Browser and GPU";
805const char kMemlogModeAll[] = "All processes";
806const char kMemlogModeAllRenderers[] = "All renderers";
807const char kMemlogModeRendererSampling[] = "Single renderer";
808const char kMemlogModeBrowser[] = "Browser only";
809const char kMemlogModeGpu[] = "GPU only";
Alexei Filippov2e8bfee2019-03-07 21:51:27810
Alexei Filippov522a5222019-03-29 03:33:18811const char kMemlogSamplingRateName[] =
812 "Heap profiling sampling interval (in bytes).";
813const char kMemlogSamplingRateDescription[] =
814 "Heap profiling service uses Poisson process to sample allocations. "
815 "Default value for the interval between samples is 100000 (100KB). "
816 "This results in low noise for large and/or frequent allocations "
Alexei Filippov2e8bfee2019-03-07 21:51:27817 "[size * frequency >> 100KB]. This means that aggregate numbers [e.g. "
erikchen99bfce02018-02-14 20:29:22818 "total size of malloc-ed objects] and large and/or frequent allocations "
Alexei Filippov522a5222019-03-29 03:33:18819 "can be trusted with high fidelity. "
820 "Lower intervals produce higher samples resolution, but come at a cost of "
821 "higher performance overhead.";
822const char kMemlogSamplingRate10KB[] = "10KB";
823const char kMemlogSamplingRate50KB[] = "50KB";
824const char kMemlogSamplingRate100KB[] = "100KB";
825const char kMemlogSamplingRate500KB[] = "500KB";
826const char kMemlogSamplingRate1MB[] = "1MB";
827const char kMemlogSamplingRate5MB[] = "5MB";
erikchen8bc20d82018-02-14 03:21:51828
Alexei Filippov522a5222019-03-29 03:33:18829const char kMemlogStackModeName[] = "Heap profiling stack traces type.";
830const char kMemlogStackModeDescription[] =
831 "By default heap profiling service records native stacks. "
832 "A post-processing step is required to symbolize the stacks. "
833 "'Native with thread names' adds the thread name as the first frame of "
834 "each native stack. It's also possible to record a pseudo stack using "
835 "trace events as identifiers. It's also possible to do a mix of both.";
836const char kMemlogStackModeMixed[] = "Mixed";
837const char kMemlogStackModeNative[] = "Native";
838const char kMemlogStackModeNativeWithThreadNames[] = "Native with thread names";
839const char kMemlogStackModePseudo[] = "Trace events";
Erik Chen3303fd0232018-01-11 20:29:05840
F#m59d036e2017-09-13 07:22:17841const char kEnablePixelCanvasRecordingName[] = "Enable pixel canvas recording";
842const char kEnablePixelCanvasRecordingDescription[] =
843 "Pixel canvas recording allows the compositor to raster contents aligned "
844 "with the pixel and improves text rendering. This should be enabled when a "
845 "device is using fractional scale factor.";
846
Ella Gebee81c92018-08-14 15:51:09847const char kEnableResamplingInputEventsName[] =
848 "Enable resampling input events";
849const char kEnableResamplingInputEventsDescription[] =
850 "Predicts mouse and touch inputs position at rAF time based on previous "
851 "input";
852const char kEnableResamplingScrollEventsName[] =
853 "Enable resampling scroll events";
854const char kEnableResamplingScrollEventsDescription[] =
855 "Predicts the scroll amount at vsync time based on previous input";
856
Doug Arnettaa0bf202018-08-27 19:42:11857const char kEnableResourceLoadingHintsName[] = "Enable resource loading hints";
858const char kEnableResourceLoadingHintsDescription[] =
859 "Enable using server-provided resource loading hints to provide a preview "
860 "over slow network connections.";
861
Raphael Kubo da Costab72914b2019-03-13 09:20:39862const char kEnableSensorContentSettingName[] = "Sensor content setting";
863const char kEnableSensorContentSettingDescription[] =
864 "Enable UI in content settings to control access to the sensor APIs.";
865
Mohamed Amir Yosef0178fa892018-07-23 17:43:52866const char kEnableSyncUSSBookmarksName[] = "Enable USS for bookmarks sync";
867const char kEnableSyncUSSBookmarksDescription[] =
868 "Enables the new, experimental implementation of bookmark sync";
869
Mohamed Amir Yosef3074dfc2019-02-06 18:34:43870const char kEnableSyncUSSPasswordsName[] = "Enable USS for passwords sync";
871const char kEnableSyncUSSPasswordsDescription[] =
872 "Enables the new, experimental implementation of passwords sync";
873
Mikel Astiz38837f82018-04-24 22:23:23874const char kEnableSyncUSSSessionsName[] = "Enable USS for sessions sync";
875const char kEnableSyncUSSSessionsDescription[] =
876 "Enables the new, experimental implementation of session sync (aka tab "
877 "sync).";
878
David Bokane9370c22019-02-14 15:19:58879const char kEnableTextFragmentAnchorName[] = "Enable Text Fragment Anchor.";
880const char kEnableTextFragmentAnchorDescription[] =
881 "Enables scrolling to text specified in URL's fragment.";
882
Brett Wilsonf27ff602017-07-07 22:28:47883const char kEnableUseZoomForDsfName[] =
884 "Use Blink's zoom for device scale factor.";
885const char kEnableUseZoomForDsfDescription[] =
886 "If enabled, Blink uses its zooming mechanism to scale content for device "
887 "scale factor.";
888const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
889const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
890const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
891
Patrick Noland8ee016e2018-01-24 11:44:53892const char kEnableScrollAnchorSerializationName[] =
893 "Scroll Anchor Serialization";
894const char kEnableScrollAnchorSerializationDescription[] =
895 "Save the scroll anchor and use it to restore the scroll position when "
896 "navigating.";
897
Brad Nelson5cd500e2018-01-04 00:50:19898const char kEnableSharedArrayBufferName[] =
899 "Experimental enabled SharedArrayBuffer support in JavaScript.";
900const char kEnableSharedArrayBufferDescription[] =
901 "Enable SharedArrayBuffer support in JavaScript.";
902
Brett Wilsonf27ff602017-07-07 22:28:47903const char kEnableWasmName[] = "WebAssembly structured cloning support.";
904const char kEnableWasmDescription[] =
905 "Enable web pages to use WebAssembly structured cloning.";
906
Lei Zhang0ca70ea2018-09-07 17:51:01907const char kEnableWebAuthenticationCableSupportName[] =
Kim Paulhamus92431372018-07-20 02:25:47908 "Web Authentication caBLE support";
Lei Zhang0ca70ea2018-09-07 17:51:01909const char kEnableWebAuthenticationCableSupportDescription[] =
Kim Paulhamus92431372018-07-20 02:25:47910 "Enable the cloud-assisted pairingless BLE protocol for use with "
911 "the Web Authentication API.";
Kim Paulhamusae635a32018-06-27 07:30:54912
Adam Langley64bc04232019-03-30 21:05:56913const char kEnableWebAuthenticationPINSupportName[] =
914 "Web Authentication PIN support";
915const char kEnableWebAuthenticationPINSupportDescription[] =
916 "Enable the use of PINs with the Web Authentication API and compatible "
917 "security keys.";
918
Ramin Halavatic158b182018-10-18 14:04:54919const char kEnableIncognitoWindowCounterName[] = "Incognito Window Counter";
920const char kEnableIncognitoWindowCounterDescription[] =
921 "Shows the count of Incognito windows next to the Incognito icon on the "
922 "toolbar.";
923
Clemens Hammacher0c8a15a2018-04-27 13:45:32924const char kEnableWasmBaselineName[] = "WebAssembly baseline compiler";
925const char kEnableWasmBaselineDescription[] =
926 "Enables WebAssembly baseline compilation and tier up.";
927
Bill Budged0dace172019-02-10 00:46:21928const char kEnableWasmCodeCacheName[] = "WebAssembly compiled module cache";
929const char kEnableWasmCodeCacheDescription[] =
930 "Enables caching of compiled WebAssembly modules.";
931
Clemens Hammacher082fa572019-04-25 08:22:29932const char kEnableWasmCodeGCName[] = "WebAssembly code garbage collection";
933const char kEnableWasmCodeGCDescription[] =
934 "Enables garbage collection of WebAssembly code.";
935
Deepti Gandluri11734cc42019-05-02 18:00:20936const char kEnableWasmSimdName[] = "WebAssembly SIMD support.";
937const char kEnableWasmSimdDescription[] =
938 "Enables support for the WebAssembly SIMD proposal.";
939
Ben Smith24c1e5c2018-06-20 01:09:02940const char kEnableWasmThreadsName[] = "WebAssembly threads support.";
941const char kEnableWasmThreadsDescription[] =
942 "Enables support for the WebAssembly Threads proposal. Implies "
943 "#shared-array-buffer and #enable-webassembly.";
944
Christopher Thompsonf3ba20122019-06-06 22:01:01945const char kEvDetailsInPageInfoName[] = "EV certificate details in Page Info.";
946const char kEvDetailsInPageInfoDescription[] =
947 "Shows the EV certificate details in the Page Info bubble.";
948
Brett Wilsonf27ff602017-07-07 22:28:47949const char kExpensiveBackgroundTimerThrottlingName[] =
950 "Throttle expensive background timers";
951const char kExpensiveBackgroundTimerThrottlingDescription[] =
952 "Enables intervention to limit CPU usage of background timers to 1%.";
953
Brett Wilsonf27ff602017-07-07 22:28:47954const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
955const char kExperimentalCanvasFeaturesDescription[] =
956 "Enables the use of experimental canvas features which are still in "
957 "development.";
958
959const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
960const char kExperimentalExtensionApisDescription[] =
961 "Enables experimental extension APIs. Note that the extension gallery "
962 "doesn't allow you to upload extensions that use experimental APIs.";
963
Ian Clelland37a985d2018-05-04 02:43:13964const char kExperimentalProductivityFeaturesName[] =
965 "Experimental Productivity Features";
966const char kExperimentalProductivityFeaturesDescription[] =
967 "Enable support for experimental developer productivity features, such as "
Hiroshige Hayashizaki3ee116af2019-03-05 10:11:22968 "built-in modules and policies for avoiding slow rendering.";
Ian Clelland37a985d2018-05-04 02:43:13969
Brett Wilsonf27ff602017-07-07 22:28:47970const char kExperimentalSecurityFeaturesName[] =
971 "Potentially annoying security features";
972const char kExperimentalSecurityFeaturesDescription[] =
973 "Enables several security features that will likely break one or more "
974 "pages that you visit on a daily basis. Strict mixed content checking, for "
975 "example. And locking powerful features to secure contexts. This flag will "
976 "probably annoy you.";
977
978const char kExperimentalWebPlatformFeaturesName[] =
979 "Experimental Web Platform features";
980const char kExperimentalWebPlatformFeaturesDescription[] =
981 "Enables experimental Web Platform features that are in development.";
982
983const char kExtensionContentVerificationName[] =
984 "Extension Content Verification";
985const char kExtensionContentVerificationDescription[] =
986 "This flag can be used to turn on verification that the contents of the "
987 "files on disk for extensions from the webstore match what they're "
988 "expected to be. This can be used to turn on this feature if it would not "
989 "otherwise have been turned on, but cannot be used to turn it off (because "
990 "this setting can be tampered with by malware).";
991const char kExtensionContentVerificationBootstrap[] =
992 "Bootstrap (get expected hashes, but do not enforce them)";
993const char kExtensionContentVerificationEnforce[] =
994 "Enforce (try to get hashes, and enforce them if successful)";
995const char kExtensionContentVerificationEnforceStrict[] =
996 "Enforce strict (hard fail if we can't get hashes)";
997
Peter Boströma445353a2019-03-21 02:58:15998const char kExtensionsToolbarMenuName[] = "Extensions Toolbar Menu";
999const char kExtensionsToolbarMenuDescription[] =
1000 "Enable a separate toolbar button and menu for extensions";
1001
Brett Wilsonf27ff602017-07-07 22:28:471002const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
1003const char kExtensionsOnChromeUrlsDescription[] =
1004 "Enables running extensions on chrome:// URLs, where extensions explicitly "
1005 "request this permission.";
galinapae72e152017-05-12 13:12:281006
Brett Wilsonecb80982017-07-12 20:34:511007const char kFeaturePolicyName[] = "Feature Policy";
1008const char kFeaturePolicyDescription[] =
1009 "Enables granting and removing access to features through the "
1010 "Feature-Policy HTTP header.";
vabr0215a8e2017-03-28 12:47:341011
Brett Wilsonecb80982017-07-12 20:34:511012const char kForceEffectiveConnectionTypeName[] =
1013 "Override effective connection type";
1014const char kForceEffectiveConnectionTypeDescription[] =
1015 "Overrides the effective connection type of the current connection "
Thanh Lea98f12f2017-12-18 19:35:301016 "returned by the network quality estimator. Slow 2G on Cellular returns "
1017 "Slow 2G when connected to a cellular network, and the actual estimate "
1018 "effective connection type when not on a cellular network. Previews are "
1019 "usually served on 2G networks.";
Brett Wilsonecb80982017-07-12 20:34:511020const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
1021const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
1022const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
Thanh Lea98f12f2017-12-18 19:35:301023const char kEffectiveConnectionTypeSlow2GOnCellularDescription[] =
1024 "Slow 2G On Cellular";
Brett Wilsonecb80982017-07-12 20:34:511025const char kEffectiveConnectionType2GDescription[] = "2G";
1026const char kEffectiveConnectionType3GDescription[] = "3G";
1027const char kEffectiveConnectionType4GDescription[] = "4G";
1028
Jay Harris583f48922019-05-06 05:55:241029const char kFileHandlingAPIName[] = "File Handling API";
1030const char kFileHandlingAPIDescription[] =
1031 "Enables the file handling API, allowing websites to register as file "
1032 "handlers. This depends on native-file-system";
1033
Brett Wilsonecb80982017-07-12 20:34:511034const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
1035const char kFillOnAccountSelectDescription[] =
1036 "Filling of passwords when an account is explicitly selected by the user "
1037 "rather than autofilling credentials on page load.";
1038
jdoerrie11c5f4f2019-02-04 18:29:181039const char kFillOnAccountSelectHttpName[] =
1040 "Fill passwords on account selection on HTTP origins";
1041const char kFillOnAccountSelectHttpDescription[] =
1042 "Filling of passwords when an account is explicitly selected by the user "
1043 "rather than autofilling credentials on page load on HTTP origins.";
1044
kdillon21723b4c2019-05-07 18:35:171045const char kForbidSyncXHRInPageDismissalName[] =
1046 "Forbid synchronous XHR requests in page dismissal";
1047const char kForbidSyncXHRInPageDismissalDescription[] =
1048 "Disallow synchronous XHR requests during page dismissal when the page is "
1049 "being navigated away or closed by the user.";
1050
Brett Wilsonecb80982017-07-12 20:34:511051const char kForceTextDirectionName[] = "Force text direction";
1052const char kForceTextDirectionDescription[] =
1053 "Explicitly force the per-character directionality of UI text to "
1054 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
1055 "direction of the character language.";
1056const char kForceDirectionLtr[] = "Left-to-right";
1057const char kForceDirectionRtl[] = "Right-to-left";
1058
1059const char kForceUiDirectionName[] = "Force UI direction";
1060const char kForceUiDirectionDescription[] =
1061 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
1062 "mode, overriding the default direction of the UI language.";
1063
Ionel Popescu4ba2a0932019-05-07 20:10:271064const char kFormControlsRefreshName[] = "Web Platform Controls updated UI";
1065const char kFormControlsRefreshDescription[] =
1066 "If enabled, HTML forms elements will be rendered using an updated style.";
1067
Brett Wilsonecb80982017-07-12 20:34:511068const char kGpuRasterizationName[] = "GPU rasterization";
1069const char kGpuRasterizationDescription[] =
1070 "Use GPU to rasterize web content. Requires impl-side painting.";
Brett Wilson7b44537e2017-08-18 01:38:281071const char kForceGpuRasterization[] = "Force-enabled for all layers";
Brett Wilsonecb80982017-07-12 20:34:511072
Ioana Pandele1ed7ef72018-11-21 15:22:031073const char kGooglePasswordManagerName[] = "Google Password Manager UI";
1074const char kGooglePasswordManagerDescription[] =
1075 "Enables access to the Google Password Manager UI from Chrome.";
1076
Brett Wilsonecb80982017-07-12 20:34:511077const char kGoogleProfileInfoName[] = "Google profile name and icon";
1078const char kGoogleProfileInfoDescription[] =
1079 "Enables using Google information to populate the profile name and icon in "
1080 "the avatar menu.";
1081
Takumi Fujimotofb71e332018-03-31 14:04:081082const char kViewsCastDialogName[] = "Views Cast dialog";
1083const char kViewsCastDialogDescription[] =
manukaddd3c42019-04-09 21:20:591084 "Replace the WebUI Cast dialog with a Views toolkit dialog.";
Takumi Fujimotofb71e332018-03-31 14:04:081085
Gabrielle Paladoaebf7ca2019-01-16 07:07:061086const char kHandwritingGestureName[] = "Handwriting Gestures";
1087const char kHandwritingGestureDescription[] =
1088 "Enables handwriting gestures within the virtual keyboard";
1089
Tommy Steimel1aadd7b2019-01-18 19:39:421090const char kHardwareMediaKeyHandling[] = "Hardware Media Key Handling";
1091const char kHardwareMediaKeyHandlingDescription[] =
1092 "Enables using media keys to control the active media session. This "
1093 "requires MediaSessionService to be enabled too";
1094
Daniel Hosseinian7b57a422019-06-11 23:52:321095const char kHarfBuzzPDFSubsetterName[] = "HarfBuzz PDF Subsetter";
1096const char kHarfBuzzPDFSubsetterDescription[] =
1097 "Changes the PDF subsetter from sftnly to HarfBuzz.";
1098
Manu Cornet4a908de2018-04-09 04:32:271099const char kHideActiveAppsFromShelfName[] =
1100 "Hide running apps (that are not pinned) from the shelf";
1101const char kHideActiveAppsFromShelfDescription[] =
1102 "Save space in the shelf by hiding running apps (that are not pinned).";
Manu Cornete5f855b2018-03-13 03:35:251103
Ryan Landay4242dbc22018-04-04 01:47:331104const char kHorizontalTabSwitcherAndroidName[] =
1105 "Enable horizontal tab switcher";
1106const char kHorizontalTabSwitcherAndroidDescription[] =
1107 "Changes the layout of the Android tab switcher so tabs scroll "
1108 "horizontally instead of vertically.";
1109
Matt Simmons2048b2a2018-12-20 20:12:561110const char kTabSwitcherOnReturnName[] = "Enable tab switcher on return";
1111const char kTabSwitcherOnReturnDescription[] =
1112 "Enable tab switcher on return after specified time has elapsed";
1113
Brett Wilsonecb80982017-07-12 20:34:511114const char kHostedAppQuitNotificationName[] =
1115 "Quit notification for hosted apps";
1116const char kHostedAppQuitNotificationDescription[] =
1117 "Display a notification when quitting Chrome if hosted apps are currently "
1118 "running.";
1119
1120const char kHostedAppShimCreationName[] =
1121 "Creation of app shims for hosted apps on Mac";
1122const char kHostedAppShimCreationDescription[] =
1123 "Create app shims on Mac when creating a hosted app.";
1124
Joe DeBlasio20a2a7b2019-04-30 02:33:541125const char kHTTPAuthCommittedInterstitialsName[] =
1126 "Enable Committed Interstitials for HTTP Auth";
1127const char kHTTPAuthCommittedInterstitialsDescription[] =
1128 "Use committed error pages instead of transient navigation entries "
1129 "for HTTP auth interstitial pages.";
1130
Brett Wilsonecb80982017-07-12 20:34:511131const char kIconNtpName[] = "Large icons on the New Tab page";
1132const char kIconNtpDescription[] =
1133 "Enable the experimental New Tab page using large icons.";
1134
1135const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
1136const char kIgnoreGpuBlacklistDescription[] =
1137 "Overrides the built-in software rendering list and enables "
1138 "GPU-acceleration on unsupported system configurations.";
1139
Ryan Sturm8c3dbc92018-06-26 19:22:371140const char kIgnorePreviewsBlacklistName[] = "Ignore Previews Blocklist";
Thanh Le5f090efa52017-12-27 22:39:441141const char kIgnorePreviewsBlacklistDescription[] =
Ryan Sturm8c3dbc92018-06-26 19:22:371142 "Ignore decisions made by the PreviewsBlockList";
Thanh Le5f090efa52017-12-27 22:39:441143
Robert Ogden4d41c432019-05-07 00:24:251144const char kIgnoreLitePageRedirectHintsBlacklistName[] =
1145 "Ignore Lite Page Redirect Preview Optimization Hints Blacklist";
1146const char kIgnoreLitePageRedirectHintsBlacklistDescription[] =
1147 "Ignore blacklist decisions made by Optimization Hints for Lite Page "
1148 "Redirect previews";
1149
Brett Wilsonecb80982017-07-12 20:34:511150const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
1151const char kInProductHelpDemoModeChoiceDescription[] =
1152 "Selects the In-Product Help demo mode.";
1153
1154const char kJavascriptHarmonyName[] = "Experimental JavaScript";
1155const char kJavascriptHarmonyDescription[] =
1156 "Enable web pages to use experimental JavaScript features.";
1157
1158const char kJavascriptHarmonyShippingName[] =
1159 "Latest stable JavaScript features";
1160const char kJavascriptHarmonyShippingDescription[] =
1161 "Some web pages use legacy or non-standard JavaScript extensions that may "
1162 "conflict with the latest JavaScript features. This flag allows disabling "
1163 "support of those features for compatibility with such pages.";
1164
Yutaka Hiranof7f2f632017-09-06 10:40:081165const char kKeepAliveRendererForKeepaliveRequestsName[] =
1166 "Keep a renderer alive for keepalive fetch requests";
1167const char kKeepAliveRendererForKeepaliveRequestsDescription[] =
1168 "Keep a render process alive when the process has a pending fetch request "
1169 "with `keepalive' specified.";
1170
Brett Wilsonecb80982017-07-12 20:34:511171const char kLoadMediaRouterComponentExtensionName[] =
1172 "Load Media Router Component Extension";
1173const char kLoadMediaRouterComponentExtensionDescription[] =
1174 "Loads the Media Router component extension at startup.";
1175
Hazem Ashmawyf1cd7e42019-03-25 18:17:321176const char kLogJsConsoleMessagesName[] =
1177 "Log JS console messages in system logs";
1178const char kLogJsConsoleMessagesDescription[] =
1179 "Enable logging JS console messages in system logs, please note that they "
1180 "may contain PII.";
1181
Mustafa Emre Acer137dc8b2018-08-29 20:38:131182const char kLookalikeUrlNavigationSuggestionsName[] =
1183 "Navigation suggestions for lookalike URLs";
1184const char kLookalikeUrlNavigationSuggestionsDescription[] =
1185 "Enable navigation suggestions for URLs that are visually similar to "
1186 "popular domains or to domains with a site engagement score.";
1187
Brett Wilsonecb80982017-07-12 20:34:511188const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
1189const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
Brett Wilsonecb80982017-07-12 20:34:511190
spqchanb87755692018-04-05 00:46:091191const char kMediaRouterCastAllowAllIPsName[] =
1192 "Connect to Cast devices on all IP addresses";
1193const char kMediaRouterCastAllowAllIPsDescription[] =
1194 "Have the Media Router connect to Cast devices on all IP addresses, not "
Nick Harperd30507ca2018-08-16 20:24:311195 "just RFC1918/RFC4193 private addresses.";
spqchanb87755692018-04-05 00:46:091196
Ehsan Karamadebb0f672019-03-22 19:48:391197const char kMimeHandlerViewInCrossProcessFrameName[] =
1198 "MimeHandlerView in cross-process frame";
1199const char kMimeHandlerViewInCrossProcessFrameDescription[] =
1200 "Loads the MimeHandlerView (the extension viewer for certain MIME types "
1201 "such as PDF) in a cross-process frame as opposed to a BrowserPlugin.";
1202
David Roger2183afb2019-02-21 14:19:151203const char kMobileIdentityConsistencyName[] = "Mobile identity consistency";
1204const char kMobileIdentityConsistencyDescription[] =
1205 "Enables stronger identity consistency on mobile";
1206
Marijn Kruisselbrinkca4bb5e2019-04-22 18:19:421207const char kNativeFileSystemAPIName[] = "Native File System API";
1208const char kNativeFileSystemAPIDescription[] =
1209 "Enables the experimental Native File System API, giving websites access "
1210 "to the native file system";
Marijn Kruisselbrinkfa0e1052019-03-05 22:32:551211
Brett Wilsonecb80982017-07-12 20:34:511212const char kNewAudioRenderingMixingStrategyName[] =
1213 "New audio rendering mixing strategy";
1214const char kNewAudioRenderingMixingStrategyDescription[] =
1215 "Use the new audio rendering mixing strategy.";
1216
1217const char kNewBookmarkAppsName[] = "The new bookmark app system";
1218const char kNewBookmarkAppsDescription[] =
1219 "Enables the new system for creating bookmark apps.";
1220
Vadym Doroshenkocd4ff782018-07-24 13:41:021221const char kNewPasswordFormParsingName[] =
1222 "New password form parsing for filling passwords";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241223const char kNewPasswordFormParsingDescription[] =
Vadym Doroshenkocd4ff782018-07-24 13:41:021224 "Replaces existing form parsing for filling in password manager with a new "
1225 "version, currently under development. WARNING: when enabled, Password "
1226 "Manager might stop working";
1227
1228const char kNewPasswordFormParsingForSavingName[] =
1229 "New password form parsing for saving passwords";
1230const char kNewPasswordFormParsingForSavingDescription[] =
1231 "Replaces existing form parsing for saving in password manager with a new "
1232 "version, currently under development. WARNING: when enabled, Password "
1233 "Manager might stop working";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241234
rbpotter62fe2c92019-03-26 22:01:291235const char kNewPrintPreviewLayoutName[] = "Enable New Print Preview UI Layout";
1236const char kNewPrintPreviewLayoutDescription[] =
1237 "If enabled, Print Preview will display a new UI layout.";
1238
CJ DiMeglio7b4a199f2017-11-30 01:26:501239const char kUseSurfaceLayerForVideoName[] =
1240 "Enable the use of SurfaceLayer objects for videos.";
1241const char kUseSurfaceLayerForVideoDescription[] =
1242 "Enable compositing onto a Surface instead of a VideoLayer "
1243 "for videos.";
Brett Wilsonecb80982017-07-12 20:34:511244
1245const char kNewUsbBackendName[] = "Enable new USB backend";
1246const char kNewUsbBackendDescription[] =
1247 "Enables the new experimental USB backend for Windows.";
vabr0215a8e2017-03-28 12:47:341248
Sonny Sasaka2d200432018-03-22 17:43:161249const char kNewblueName[] = "Newblue";
1250const char kNewblueDescription[] =
1251 "Enables the use of newblue Bluetooth daemon.";
1252
Peter Boström7df25c72018-12-12 06:40:191253const char kNewTabLoadingAnimation[] = "New tab-loading animation";
1254const char kNewTabLoadingAnimationDescription[] =
1255 "Enables a new look for the tab-loading animation.";
1256
Alex Newcomerd7b0cc42018-05-25 22:58:481257const char kNotificationIndicatorName[] = "Notification Indicators";
1258const char kNotificationIndicatorDescription[] =
1259 "Enable notification indicators, which appear on app icons when a "
1260 "notification is active. This will also enable notifications in context "
1261 "menus.";
1262
Brett Wilsonecb80982017-07-12 20:34:511263const char kNotificationsNativeFlagName[] = "Enable native notifications.";
1264const char kNotificationsNativeFlagDescription[] =
1265 "Enable support for using the native notification toasts and notification "
1266 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:341267
Valeriya Sinevich972ac122018-09-05 07:33:191268const char kUseMultiloginEndpointName[] = "Use Multilogin endpoint.";
1269const char kUseMultiloginEndpointDescription[] =
1270 "Use Gaia OAuth multilogin for identity consistency.";
1271
Brett Wilsonecb80982017-07-12 20:34:511272const char kOfferStoreUnmaskedWalletCardsName[] =
1273 "Google Payments card saving checkbox";
1274const char kOfferStoreUnmaskedWalletCardsDescription[] =
1275 "Show the checkbox to offer local saving of a credit card downloaded from "
1276 "the server.";
1277
Tommy C. Lia6912d7d2019-04-24 21:27:461278const char kOmniboxAlternateMatchDescriptionSeparatorName[] =
1279 "Omnibox Alternate Match Description Separator";
1280const char kOmniboxAlternateMatchDescriptionSeparatorDescription[] =
1281 "Shows an alternate separator before the description of omnibox matches. "
1282 "In English, this changes the separator from '-' to '|'.";
1283
Brett Wilsonecb80982017-07-12 20:34:511284const char kOmniboxDisplayTitleForCurrentUrlName[] =
1285 "Include title for the current URL in the omnibox";
1286const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
1287 "In the event that the omnibox provides suggestions on-focus, the URL of "
1288 "the current page is provided as the first suggestion without a title. "
1289 "Enabling this flag causes the title to be displayed.";
1290
Kevin Bailey38514f42019-05-28 17:48:121291const char kOmniboxGroupSuggestionsBySearchVsUrlName[] =
1292 "Omnibox Group Suggestions By Search vs URL";
1293const char kOmniboxGroupSuggestionsBySearchVsUrlDescription[] =
1294 "Group suggestions by major type, search then navigation, except for "
1295 "the default match which must be first.";
1296
manukaddd3c42019-04-09 21:20:591297const char kOmniboxLocalEntitySuggestionsName[] =
1298 "Omnibox Local Entity Suggestions";
1299const char kOmniboxLocalEntitySuggestionsDescription[] =
1300 "Enables location specific suggestions displayed with images and enhanced "
1301 "layout, similar to #omnibox-rich-entity-suggestions. Enabling this feature"
1302 "will also enable #omnibox-rich-entity-suggestions.";
1303
manuk2e55a7b2019-02-12 20:08:231304const char kOmniboxMaterialDesignWeatherIconsName[] =
1305 "Omnibox Material Design Weather Icons";
1306const char kOmniboxMaterialDesignWeatherIconsDescription[] =
1307 "Use material design weather icons in the omnibox when displaying weather "
1308 "answers.";
1309
Tomasz Wiszkowskic87dff12019-01-15 02:57:511310const char kOmniboxNewAnswerLayoutName[] = "Omnibox new answer layout";
1311const char kOmniboxNewAnswerLayoutDescription[] =
1312 "Modernize omnibox answers using an enhanced layout with larger icons.";
1313
Tomasz Wiszkowskic7fd5bed2019-02-11 17:33:231314const char kOmniboxRichEntitySuggestionsName[] =
1315 "Omnibox rich entity suggestions";
1316const char kOmniboxRichEntitySuggestionsDescription[] =
1317 "Display entity suggestions using images and an enhanced layout; showing "
manukaddd3c42019-04-09 21:20:591318 "more context and descriptive text about the entity.";
Tomasz Wiszkowskic7fd5bed2019-02-11 17:33:231319
Benoit Lizeab08362c2017-07-19 14:50:541320const char kOmniboxSpareRendererName[] =
1321 "Start spare renderer on omnibox focus";
1322const char kOmniboxSpareRendererDescription[] =
1323 "When the omnibox is focused, start an empty spare renderer. This can "
1324 "speed up the load of the navigation from the omnibox.";
1325
Tommy C. Lib5bf6152019-04-23 22:13:161326const char kOmniboxUICuesForSearchHistoryMatchesName[] =
1327 "Omnibox UI Cues to Differentiate Search History Matches";
1328const char kOmniboxUICuesForSearchHistoryMatchesDescription[] =
1329 "Shows UI cues in the omnibox to differentiate Search History matches from "
1330 "other search suggestions provided by the default search provider. This "
1331 "feature is a narrow subset of Omnibox Suggestion Transparency Options.";
1332
Tommy C. Lie4194b732018-09-28 22:21:511333const char kOmniboxUIHideSteadyStateUrlSchemeName[] =
1334 "Omnibox UI Hide Steady-State URL Scheme";
1335const char kOmniboxUIHideSteadyStateUrlSchemeDescription[] =
1336 "In the omnibox, hide the scheme from steady state displayed URLs. It is "
Tommy C. Libef94ee02018-10-17 19:56:361337 "restored during editing.";
Tommy C. Lie4194b732018-09-28 22:21:511338
Tommy C. Lib20aec72018-11-19 21:38:231339const char kOmniboxUIOneClickUnelideName[] = "Omnibox UI One Click Unelide";
1340const char kOmniboxUIOneClickUnelideDescription[] =
1341 "In the omnibox, undo all unelisions with a single click or focus action.";
1342
Tommy C. Lie4194b732018-09-28 22:21:511343const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsName[] =
1344 "Omnibox UI Hide Steady-State URL Trivial Subdomains";
1345const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsDescription[] =
1346 "In the omnibox, hide trivial subdomains from steady state displayed URLs. "
Tommy C. Libef94ee02018-10-17 19:56:361347 "Hidden portions are restored during editing.";
1348
1349const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefName[] =
1350 "Omnibox UI Hide Steady-State URL Path, Query, and Ref";
1351const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefDescription[] =
1352 "In the omnibox, hide the path, query and ref from steady state displayed "
1353 "URLs. Hidden portions are restored during editing.";
Tommy C. Lid79d4402017-12-22 22:49:121354
Brett Wilsonecb80982017-07-12 20:34:511355const char kOmniboxUIMaxAutocompleteMatchesName[] =
1356 "Omnibox UI Max Autocomplete Matches";
Brett Wilsonecb80982017-07-12 20:34:511357const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
1358 "Changes the maximum number of autocomplete matches displayed in the "
1359 "Omnibox UI.";
1360
Kevin Baileycd6889922019-05-30 17:22:551361const char kOmniboxMaxURLMatchesName[] = "Omnibox Max URL Matches";
1362const char kOmniboxMaxURLMatchesDescription[] =
1363 "The maximum number of URL matches to show, unless there are no "
1364 "replacements.";
1365
Dan Beamc9b97fe82019-04-26 02:56:081366const char kOmniboxUIShowPlaceholderWhenCaretShowingName[] =
1367 "Omnibox UI Show Placeholder When Caret Showing";
1368const char kOmniboxUIShowPlaceholderWhenCaretShowingDescription[] =
1369 "Shows the \"Search Google or type a URL\" placeholder text in the "
1370 "omnibox when it's focused / the caret cursor is showing.";
1371
Tommy C. Liba4e66ef2019-02-12 21:33:281372const char kOmniboxUIShowSuggestionFaviconsName[] =
1373 "Omnibox UI Show Suggestion Favicons";
1374const char kOmniboxUIShowSuggestionFaviconsDescription[] =
1375 "Shows favicons instead of generic vector icons for URL suggestions in the "
1376 "Omnibox dropdown.";
1377
Justin Donnelly65c9e8b2017-10-01 05:15:011378const char kOmniboxUISwapTitleAndUrlName[] = "Omnibox UI Swap Title and URL";
1379const char kOmniboxUISwapTitleAndUrlDescription[] =
1380 "In the omnibox dropdown, shows titles before URLs when both are "
1381 "available.";
1382
Tommy C. Lia737d3e82019-02-13 23:06:141383const char kOmniboxUIVerticalMarginName[] = "Omnibox UI Vertical Margin";
1384const char kOmniboxUIVerticalMarginDescription[] =
1385 "Changes the vertical margin in the Omnibox UI.";
1386
Tommy C. Lidf3064a2019-05-01 17:29:431387const char kOmniboxUIVerticalMarginLimitToNonTouchOnlyName[] =
1388 "Omnibox UI Vertical Margin - Limit to Non-Touch Only";
1389const char kOmniboxUIVerticalMarginLimitToNonTouchOnlyDescription[] =
1390 "Limits the vertical margin UI experiment to non-touch devices only. Has "
1391 "no effect if the Omnibox Vertical Margin experiment is not enabled.";
1392
Tomasz Wiszkowski947f6d0d2019-03-15 22:27:251393const char kOmniboxZeroSuggestionsOnNTPName[] =
1394 "Omnibox Zero Suggestions on New Tab Page";
1395const char kOmniboxZeroSuggestionsOnNTPDescription[] =
1396 "Offer suggestions when URL bar (omnibox) is focused.";
1397
Vadym Doroshenko6b8f64d2018-11-26 15:35:391398const char kOnlyNewPasswordFormParsingName[] =
1399 "Use only new password form parsing";
1400const char kOnlyNewPasswordFormParsingDescription[] =
1401 "The old password form parsing is disabled";
1402
Mark Lieufaa1b762019-01-08 19:37:281403const char kOnTheFlyMhtmlHashComputationName[] =
1404 "On-The-Fly MHTML Hash Computation";
1405const char kOnTheFlyMhtmlHashComputationDescription[] =
1406 "Save MHTML files to the target location and calculate their content "
1407 "digests in one step.";
1408
Adrienne Walkerc87477e2018-06-06 22:28:211409const char kOopRasterizationName[] = "Out of process rasterization";
1410const char kOopRasterizationDescription[] =
1411 "Perform Ganesh raster in the GPU Process instead of the renderer. "
1412 "Must also enable GPU rasterization";
1413
Donn Denman43baac62019-05-22 17:31:051414const char kOverlayNewLayoutName[] = "Overlay new layout";
1415const char kOverlayNewLayoutDescription[] =
1416 "Enables a new layout for the "
1417 "Overlay panels including Contextual Search and Preview Tab.";
1418
Brett Wilsonecb80982017-07-12 20:34:511419const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
1420const char kOverlayScrollbarsDescription[] =
1421 "Enable the experimental overlay scrollbars implementation. You must also "
1422 "enable threaded compositing to have the scrollbars animate.";
1423
chaopenge8aa016b2017-08-24 15:20:191424const char kOverlayScrollbarsFlashAfterAnyScrollUpdateName[] =
1425 "Flash Overlay Scrollbars After Any Scroll Update";
1426const char kOverlayScrollbarsFlashAfterAnyScrollUpdateDescription[] =
1427 "Flash Overlay Scrollbars After any scroll update happends in page. You"
1428 " must also enable Overlay Scrollbars.";
1429
chaopeng343678022017-08-24 18:45:001430const char kOverlayScrollbarsFlashWhenMouseEnterName[] =
1431 "Flash Overlay Scrollbars When Mouse Enter";
1432const char kOverlayScrollbarsFlashWhenMouseEnterDescription[] =
1433 "Flash Overlay Scrollbars When Mouse Enter a scrollable area. You must also"
1434 " enable Overlay Scrollbars.";
1435
Daniele Castagna74ddb9c2018-06-21 22:59:021436const char kOverlayStrategiesName[] = "Select HW overlay strategies";
1437const char kOverlayStrategiesDescription[] =
1438 "Select strategies used to promote quads to HW overlays.";
1439const char kOverlayStrategiesDefault[] = "Default";
1440const char kOverlayStrategiesNone[] = "None";
1441const char kOverlayStrategiesUnoccludedFullscreen[] =
1442 "Unoccluded fullscreen buffers (single-fullscreen)";
1443const char kOverlayStrategiesUnoccluded[] =
1444 "Unoccluded buffers (single-fullscreen,single-on-top)";
1445const char kOverlayStrategiesOccludedAndUnoccluded[] =
1446 "Occluded and unoccluded buffers "
1447 "(single-fullscreen,single-on-top,underlay)";
1448
Claudio Magni81326f92017-09-01 05:21:181449const char kUseNewAcceptLanguageHeaderName[] = "Use new Accept-Language header";
1450const char kUseNewAcceptLanguageHeaderDescription[] =
1451 "Adds the base language code after other corresponding language+region "
1452 "codes. This ensures that users receive content in their preferred "
1453 "language.";
1454
Brett Wilsonecb80982017-07-12 20:34:511455const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
1456const char kOverscrollHistoryNavigationDescription[] =
Mohsen Izadi88b392a2018-02-15 06:57:481457 "History navigation in response to horizontal overscroll.";
Brett Wilsonecb80982017-07-12 20:34:511458
chaopenge2b6e5f2018-05-08 16:40:451459const char kTouchpadOverscrollHistoryNavigationName[] =
1460 "Overscroll history navigation on Touchpad";
1461const char kTouchpadOverscrollHistoryNavigationDescription[] =
1462 "Allows swipe left/right from touchpad change browser navigation.";
1463
Xing Liu5400a002017-09-15 21:48:291464const char kParallelDownloadingName[] = "Parallel downloading";
1465const char kParallelDownloadingDescription[] =
Yannic Bonenbergera32f9902017-11-20 18:47:061466 "Enable parallel downloading to accelerate download speed.";
Xing Liu5400a002017-09-15 21:48:291467
Brett Wilsonecb80982017-07-12 20:34:511468const char kPassiveEventListenerDefaultName[] =
1469 "Passive Event Listener Override";
1470const char kPassiveEventListenerDefaultDescription[] =
1471 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
1472 "haven't requested otherwise) to be treated as passive. This will break "
1473 "touch/wheel behavior on some websites but is useful for demonstrating the "
1474 "potential performance benefits of adopting passive event listeners.";
1475const char kPassiveEventListenerTrue[] = "True (when unspecified)";
1476const char kPassiveEventListenerForceAllTrue[] = "Force All True";
1477
1478const char kPassiveEventListenersDueToFlingName[] =
1479 "Touch Event Listeners Passive Default During Fling";
1480const char kPassiveEventListenersDueToFlingDescription[] =
1481 "Forces touchstart, and first touchmove per scroll event listeners during "
1482 "fling to be treated as passive.";
1483
1484const char kPassiveDocumentEventListenersName[] =
1485 "Document Level Event Listeners Passive Default";
1486const char kPassiveDocumentEventListenersDescription[] =
1487 "Forces touchstart, and touchmove event listeners on document level "
1488 "targets (which haven't requested otherwise) to be treated as passive.";
1489
Sahel Sharify7400e882018-08-13 17:13:211490const char kPassiveDocumentWheelEventListenersName[] =
1491 "Document Level Wheel Event Listeners Passive Default";
1492const char kPassiveDocumentWheelEventListenersDescription[] =
1493 "Forces wheel, and mousewheel event listeners on document level targets "
1494 "(which haven't requested otherwise) to be treated as passive.";
1495
Vaclav Brozekd8a3f542017-11-16 14:21:131496const char kPasswordImportName[] = "Password import";
1497const char kPasswordImportDescription[] =
1498 "Import functionality in password settings.";
Brett Wilsonecb80982017-07-12 20:34:511499
Friedrich Horschige6c27742018-04-23 17:13:411500const char kPasswordsKeyboardAccessoryName[] =
1501 "Add password-related functions to keyboard accessory";
1502const char kPasswordsKeyboardAccessoryDescription[] =
1503 "Adds password generation button and toggle for the passwords bottom sheet "
1504 "to the keyboard accessory. Replaces password generation popups.";
1505
Christos Froussios6e060c42018-07-31 16:17:191506const char kPasswordsMigrateLinuxToLoginDBName[] =
1507 "Migrate passwords to \"Login Data\"";
1508const char kPasswordsMigrateLinuxToLoginDBDescription[] =
Christos Froussiose34c38a2018-09-04 14:27:591509 "Performs a one-off irreversible migration of passwords from the "
Christos Froussios6e060c42018-07-31 16:17:191510 "gnome-keyring or kwallet into the profile directory.";
1511
Mugdha Lakhani778b8952019-06-10 14:45:401512const char kPeriodicBackgroundSyncName[] = "Periodic Background Sync";
1513const char kPeriodicBackgroundSyncDescription[] =
1514 "If enabled, web apps can periodically sync content in the background.";
1515
Rouslan Solomakhinded840112018-11-02 13:27:101516const char kPerMethodCanMakePaymentQuotaName[] =
1517 "Per-method canMakePayment() quota.";
1518const char kPerMethodCanMakePaymentQuotaDescription[] =
1519 "Allow calling canMakePayment() for different payment methods, as long as "
1520 "method-specific parameters remain unchanged.";
1521
Doug Arnett620ff542018-02-06 17:54:221522const char kPreviewsAllowedName[] = "Previews Allowed";
1523const char kPreviewsAllowedDescription[] =
1524 "Allows previews to be shown subject to specific preview types being "
1525 "enabled and the client experiencing specific triggering conditions. "
1526 "May be used as a kill-switch to turn off all potential preview types.";
1527
Brett Wilsonecb80982017-07-12 20:34:511528const char kPrintPdfAsImageName[] = "Print Pdf as Image";
1529const char kPrintPdfAsImageDescription[] =
1530 "If enabled, an option to print PDF files as images will be available in "
1531 "print preview.";
1532
1533const char kPrintPreviewRegisterPromosName[] =
1534 "Print Preview Registration Promos";
1535const char kPrintPreviewRegisterPromosDescription[] =
1536 "Enable registering unregistered cloud printers from print preview.";
1537
Mohsen Izadi93faac12017-07-29 04:45:151538const char kPullToRefreshName[] = "Pull-to-refresh gesture";
1539const char kPullToRefreshDescription[] =
1540 "Pull-to-refresh gesture in response to vertical overscroll.";
Mohsen Izadi8c59ba52018-04-12 18:52:011541const char kPullToRefreshEnabledTouchscreen[] = "Enabled for touchscreen only";
Mohsen Izadi93faac12017-07-29 04:45:151542
Troy Hildebrandt7228ad12018-02-23 21:18:241543const char kQueryInOmniboxName[] = "Query in Omnibox";
1544const char kQueryInOmniboxDescription[] =
1545 "Only display query terms in the omnibox when viewing a search results "
1546 "page.";
1547
Brett Wilsonecb80982017-07-12 20:34:511548const char kQuicName[] = "Experimental QUIC protocol";
1549const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1550
1551const char kReducedReferrerGranularityName[] =
1552 "Reduce default 'referer' header granularity.";
1553const char kReducedReferrerGranularityDescription[] =
1554 "If a page hasn't set an explicit referrer policy, setting this flag will "
1555 "reduce the amount of information in the 'referer' header for cross-origin "
1556 "requests.";
1557
Christian Dullweber3cc579a22018-09-11 10:54:441558const char kRewriteLevelDBOnDeletionName[] =
1559 "Rewrite LevelDB instances after full deletions";
1560const char kRewriteLevelDBOnDeletionDescription[] =
1561 "Rewrite LevelDB instances to remove traces of deleted data from disk.";
1562
Yutaka Hirano4c0f2f5d452017-11-17 04:24:351563const char kRendererSideResourceSchedulerName[] =
1564 "Renderer side ResourceScheduler";
1565const char kRendererSideResourceSchedulerDescription[] =
1566 "Migrate some ResourceScheduler functionalities to renderer";
1567
Jenna Himawana25aced2019-06-21 01:29:211568const char kReorderBookmarksName[] = "Reorder bookmarks";
1569const char kReorderBookmarksDescription[] =
1570 "Allows the user to reorder their bookmarks from their Android device. "
1571 "The bookmark ordering will be synced across devices.";
1572
Brett Wilsonecb80982017-07-12 20:34:511573const char kRequestTabletSiteName[] =
1574 "Request tablet site option in the settings menu";
1575const char kRequestTabletSiteDescription[] =
1576 "Allows the user to request tablet site. Web content is often optimized "
1577 "for tablet devices. When this option is selected the user agent string is "
1578 "changed to indicate a tablet device. Web content optimized for tablets is "
1579 "received there after for the current tab.";
1580
Kinuko Yasuda33955082018-06-19 10:14:591581const char kResourceLoadSchedulerName[] = "Enable resource load throttling";
Brett Wilsonecb80982017-07-12 20:34:511582const char kResourceLoadSchedulerDescription[] =
Kinuko Yasuda33955082018-06-19 10:14:591583 "Uses the resource load scheduler in blink to throttle resource load "
1584 "requests.";
Brett Wilsonecb80982017-07-12 20:34:511585
Daniel Rubery91874e32019-01-10 22:12:341586const char kSafeBrowsingUseAPDownloadVerdictsName[] =
1587 "Request Advanced Protection verdicts when inspecting downloads";
1588const char kSafeBrowsingUseAPDownloadVerdictsDescription[] =
1589 "If enabled, download protection will request Advanced Protection "
1590 "verdicts from Safe Browsing. These will provide stronger protections "
1591 "from files Safe Browsing is unsure about.";
1592
Lily Chene0d3ac92019-04-22 16:55:531593const char kSameSiteByDefaultCookiesName[] = "SameSite by default cookies";
1594const char kSameSiteByDefaultCookiesDescription[] =
1595 "Treat cookies that don't specify a SameSite attribute as if they were "
1596 "SameSite=Lax. Sites must specify SameSite=None in order to enable "
1597 "third-party usage.";
1598
Brett Wilsonecb80982017-07-12 20:34:511599const char kSaveasMenuLabelExperimentName[] =
1600 "Switch 'Save as' menu labels to 'Download'";
1601const char kSaveasMenuLabelExperimentDescription[] =
1602 "Enables an experiment to switch menu labels that use 'Save as...' to "
1603 "'Download'.";
1604
Charlene Yan0ccd7f52019-04-12 23:20:591605const char kScrollableTabStripName[] = "Scrollable TabStrip";
1606const char kScrollableTabStripDescription[] =
1607 "Allows users to access tabs by scrolling when they no longer fit in the "
1608 "tabstrip.";
1609
Edward Jung7c1793af2019-06-14 17:33:561610const char kSecurityInterstitialsDarkModeName[] =
1611 "Security interstitials dark mode";
1612const char kSecurityInterstitialsDarkModeDescription[] =
1613 "Allows security intersitials to take on a dark theme when the OS is "
1614 "switched to dark mode.";
1615
Jeffrey Cohene49cc59c2018-10-23 16:27:281616const char kSendTabToSelfName[] = "Send tab to self";
1617const char kSendTabToSelfDescription[] =
Tanya Gupta035a9e202019-04-08 20:01:331618 "Allows users to receive tabs from other synced devices, in order to "
1619 "easily transition those tabs to this device. This enables the sync "
1620 "infrastructure for this feature.";
Jeffrey Cohene49cc59c2018-10-23 16:27:281621
Jeffrey Cohendacbc2a2019-05-14 16:15:491622const char kSendTabToSelfBroadcastName[] = "Send tab to self broadcast";
1623const char kSendTabToSelfBroadcastDescription[] =
1624 "Allows users to broadcast the tab they send to all of their devices "
1625 "instead of targetting only one device.";
1626
1627const char kSendTabToSelfHistoryName[] = "Send tab to self history";
1628const char kSendTabToSelfHistoryDescription[] =
1629 "Allows users to view tabs that were sent to other synced devices by "
1630 "accessing these tabs through a landing page either in history or in "
1631 "recent tabs. Requires Send tab to self to also be enabled";
1632
Tanya Gupta035a9e202019-04-08 20:01:331633const char kSendTabToSelfShowSendingUIName[] =
1634 "Send tab to self show sending UI";
1635const char kSendTabToSelfShowSendingUIDescription[] =
1636 "Allows users to send tabs to other synced devices by accessing the "
1637 "sending user interface. Requires Send tab to self to also be enabled";
Jeffrey Cohen9f3e6092019-03-21 21:55:011638
Travis Skare885f8ad2019-04-25 21:33:371639const char kSendTabToSelfWhenSignedInName[] =
1640 "Send tab to self: enable use when signed-in regardless of sync state";
1641const char kSendTabToSelfWhenSignedInDescription[] =
1642 "Allows use of the send-tab-to-self feature for users who are signed-in "
1643 "but not necessarily syncing. The tab-share data is thus ephemeral, "
1644 "rather than persistent sync data.";
1645
momohattfc352292018-08-29 05:12:361646const char kServiceWorkerImportedScriptUpdateCheckName[] =
1647 "Enable update check for service worker importScripts() resources";
1648const char kServiceWorkerImportedScriptUpdateCheckDescription[] =
1649 "Extend byte-for-byte update check for scripts that are imported by the "
1650 "service worker script via importScripts().";
1651
Azeem Arshad3b1ef73122018-08-30 02:04:151652const char kServiceWorkerLongRunningMessageName[] =
1653 "Service worker long running message dispatch.";
1654const char kServiceWorkerLongRunningMessageDescription[] =
1655 "Enables long running message dispatch method for service workers. "
1656 "Messages sent with this method do not timeout, allowing the service "
1657 "worker to run indefinitely.";
1658
Chris Hamiltonb9612e262019-02-12 21:12:061659const char kSessionRestorePrioritizesBackgroundUseCasesName[] =
1660 "Session restore prioritizes background use cases.";
1661const char kSessionRestorePrioritizesBackgroundUseCasesDescription[] =
1662 "When enabled session restore logic will prioritize sites that make use of "
1663 "background communication mechanisms (favicon and tab title switches, "
1664 "notifications, etc) over sites that do not.";
1665
Brett Wilsonecb80982017-07-12 20:34:511666const char kSettingsWindowName[] = "Show settings in a window";
1667const char kSettingsWindowDescription[] =
1668 "Settings will be shown in a dedicated window instead of as a browser tab.";
1669
Himanshu Jajudbcee232019-06-17 19:41:491670const char kSharingDeviceRegistrationName[] =
1671 "Enable device registration for Sharing features";
1672const char kSharingDeviceRegistrationDescription[] =
1673 "Enables device registration with Sharing infrastructure. Required to use "
1674 "cross-device Sharing features.";
1675
Manu Cornetad6536f2019-06-18 21:04:431676const char kShelfDenseClamshellName[] =
1677 "Show a smaller, denser shelf in laptop mode.";
1678const char kShelfDenseClamshellDescription[] =
1679 "Reduces the size of the shelf and its apps when in laptop mode.";
1680
Manu Corneteb3c7d32019-06-20 08:04:441681const char kShelfHotseatName[] = "Enable a modular design for the shelf.";
1682const char kShelfHotseatDescription[] =
1683 "Shows a modular design for the shelf where the apps are shown separately "
1684 "in a 'hotseat' interface when in tablet mode, and where various pieces "
1685 "are separate and behave independently.";
1686
Manu Cornetd7ef7c52018-05-01 22:08:231687const char kShelfHoverPreviewsName[] =
1688 "Show previews of running apps when hovering over the shelf.";
1689const char kShelfHoverPreviewsDescription[] =
1690 "Shows previews of the open windows for a given running app when hovering "
1691 "over the shelf.";
1692
Manu Cornetad6536f2019-06-18 21:04:431693const char kShelfScrollableName[] =
1694 "Enable a scrollable list of apps on the shelf";
1695const char kShelfScrollableDescription[] =
1696 "Shows a list of applications that is scrollable by default on tablets.";
1697
Naoki Fukino008a0022018-05-23 18:33:001698const char kShowAndroidFilesInFilesAppName[] =
1699 "Show Android files in Files app";
1700const char kShowAndroidFilesInFilesAppDescription[] =
1701 "Show Android files in Files app if Android is enabled on the device.";
1702
Brett Wilsonecb80982017-07-12 20:34:511703const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
1704const char kShowAutofillSignaturesDescription[] =
Maxim Kolosovskiye66f8cb2018-03-23 10:25:381705 "Annotates web forms with Autofill signatures as HTML attributes. Also "
1706 "marks password fields suitable for password generation.";
Brett Wilsonecb80982017-07-12 20:34:511707
1708const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
1709const char kShowAutofillTypePredictionsDescription[] =
1710 "Annotates web forms with Autofill field type predictions as placeholder "
1711 "text.";
1712
Jonathan Backer93610a82019-03-27 14:02:381713const char kSkiaRendererName[] = "Skia API for OOP-D compositing";
1714const char kSkiaRendererDescription[] =
1715 "If enabled, the display compositor will use Skia as the graphics API "
1716 "instead of OpenGL ES. Requires Viz Display Compositor (OOP-D).";
1717
Shivani Sharma2d5b4b6b2019-01-08 16:07:161718const char kHistoryManipulationIntervention[] =
1719 "History Manipulation Intervention";
1720const char kHistoryManipulationInterventionDescription[] =
1721 "If a page does a client side redirect or adds to the history without a "
1722 "user gesture, then skip it on back/forward UI.";
1723
Brett Wilsonecb80982017-07-12 20:34:511724const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1725const char kSilentDebuggerExtensionApiDescription[] =
1726 "Do not show the infobar when an extension attaches to a page via "
1727 "chrome.debugger API. This is required to debug extension background "
1728 "pages.";
1729
Christopher Thompson75ff845d2018-02-01 20:12:461730const char kSimplifyHttpsIndicatorName[] = "Simplify HTTPS indicator UI";
1731const char kSimplifyHttpsIndicatorDescription[] =
1732 "Change the UI treatment for HTTPS pages.";
1733
Lukasz Anforowiczd2e16e62019-03-28 19:06:591734const char kIsolateOriginsName[] = "Isolate additional origins";
1735const char kIsolateOriginsDescription[] =
1736 "Requires dedicated processes for an additional set of origins, "
1737 "specified as a comma-separated list.";
1738
Alan Wink7c1b2ae22019-04-03 19:18:061739const char kKidsManagementUrlClassificationName[] =
1740 "KidsMangement Url Classification";
1741const char kKidsManagementUrlClassificationDescription[] =
1742 "Uses KidsManagementService to classify URLs for Kid Accounts.";
1743
Lukasz Anforowicz738a88d2018-11-05 19:19:341744const char kSiteIsolationOptOutName[] = "Disable site isolation";
1745const char kSiteIsolationOptOutDescription[] =
1746 "Disables site isolation "
Nick Carter855bc492018-03-10 00:44:571747 "(SitePerProcess, IsolateOrigins, etc). Intended for diagnosing bugs that "
1748 "may be due to out-of-process iframes. Opt-out has no effect if site "
Lukasz Anforowicz42840422018-11-05 21:49:221749 "isolation is force-enabled using a command line switch or using an "
1750 "enterprise policy. "
1751 "Caution: this disables important mitigations for the Spectre CPU "
Nick Carter855bc492018-03-10 00:44:571752 "vulnerability affecting most computers.";
Lukasz Anforowicz738a88d2018-11-05 19:19:341753const char kSiteIsolationOptOutChoiceDefault[] = "Default";
1754const char kSiteIsolationOptOutChoiceOptOut[] = "Disabled (not recommended)";
Brett Wilsonecb80982017-07-12 20:34:511755
Pattideade7972018-04-27 02:59:401756const char kSiteSettings[] = "Site settings";
Brett Wilsonecb80982017-07-12 20:34:511757const char kSiteSettingsDescription[] =
Pattideade7972018-04-27 02:59:401758 "Add the All Sites list to Site Settings.";
Brett Wilsonecb80982017-07-12 20:34:511759
Brett Wilsonecb80982017-07-12 20:34:511760const char kSmoothScrollingName[] = "Smooth Scrolling";
1761const char kSmoothScrollingDescription[] =
1762 "Animate smoothly when scrolling page content.";
1763
Justin Donnelly4e448cb2017-07-07 21:32:131764const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
1765 "Enable speculative start of a service worker when a search is predicted.";
Justin Donnelly4e448cb2017-07-07 21:32:131766const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
1767 "If enabled, when the user enters text in the omnibox that looks like a "
1768 "a query, any service worker associated with the search engine the query "
1769 "will be sent to is started early.";
1770
W. James MacLeanf79c97e2019-05-02 20:35:461771extern const char kStrictOriginIsolationName[] = "Strict-Origin-Isolation";
1772extern const char kStrictOriginIsolationDescription[] =
1773 "Experimental security mode that strengthens the site isolation policy. "
1774 "Controls whether site isolation should use origins instead of scheme and "
1775 "eTLD+1.";
1776
Shubhie Panickerfaf082ed2018-01-03 04:49:151777const char kStopInBackgroundName[] = "Stop in background";
1778const char kStopInBackgroundDescription[] =
1779 "Stop scheduler task queues, in the background, "
Shubhie Panicker56c99a22018-03-21 00:22:281780 " after a grace period.";
Shubhie Panickerfaf082ed2018-01-03 04:49:151781
Shubhie Panicker56c99a22018-03-21 00:22:281782const char kStopNonTimersInBackgroundName[] =
1783 "Stop non-timer task queues background";
1784const char kStopNonTimersInBackgroundDescription[] =
1785 "Stop non-timer task queues, in the background, "
1786 "after a grace period.";
1787
Brett Wilsonecb80982017-07-12 20:34:511788const char kSuggestionsWithSubStringMatchName[] =
1789 "Substring matching for Autofill suggestions";
1790const char kSuggestionsWithSubStringMatchDescription[] =
1791 "Match Autofill suggestions based on substrings (token prefixes) rather "
1792 "than just prefixes.";
vabr0215a8e2017-03-28 12:47:341793
Marc Treib4bd95e72018-08-30 06:30:581794const char kSyncSupportSecondaryAccountName[] =
1795 "Support secondary accounts for Sync standalone transport";
1796const char kSyncSupportSecondaryAccountDescription[] =
1797 "If enabled, allows Chrome Sync to start in standalone transport mode for "
1798 "a signed-in account that has not been chosen as Chrome's primary account. "
1799 "This only has an effect if sync-standalone-transport is also enabled.";
1800
Jan Krcal1e883642019-03-06 16:53:451801const char kSyncUSSAutofillWalletMetadataName[] =
1802 "Enable USS for autofill wallet metadata";
1803const char kSyncUSSAutofillWalletMetadataDescription[] =
1804 "Enables the new implementation of autofill walet metadata sync";
1805
Brett Wilsonecb80982017-07-12 20:34:511806const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1807const char kSyncSandboxDescription[] =
1808 "Connects to the testing server for Chrome Sync.";
vabr0215a8e2017-03-28 12:47:341809
Joe Downing8cbbc192018-05-14 17:37:071810const char kSystemKeyboardLockName[] = "Experimental system keyboard lock";
1811const char kSystemKeyboardLockDescription[] =
1812 "Enables websites to use the keyboard.lock() API to intercept system "
1813 "keyboard shortcuts and have the events routed directly to the website "
1814 "when in fullscreen mode.";
1815
Matt Simmons1fd0c9f2019-04-15 19:08:221816const char kTabEngagementReportingName[] = "Tab Engagement Metrics";
1817const char kTabEngagementReportingDescription[] =
1818 "Tracks tab engagement and lifetime metrics.";
1819
Yusuf Ozuysal67f05a02019-02-15 19:30:521820const char kTabGridLayoutAndroidName[] = "Tab Grid Layout";
1821const char kTabGridLayoutAndroidDescription[] =
1822 "Allows users to see their tabs in a grid layout in the tab switcher.";
1823
Yusuf Ozuysal436d90b82019-03-15 22:17:581824const char kTabGroupsAndroidName[] = "Tab Groups";
1825const char kTabGroupsAndroidDescription[] =
1826 "Allows users to create groups to better organize their tabs.";
1827
Yue Zhang2834d6b2019-05-01 17:30:281828const char kTabGroupsUiImprovementsAndroidName[] = "Tab Groups UI Improvements";
1829const char kTabGroupsUiImprovementsAndroidDescription[] =
1830 "Allows users to access new features in Tab Group UI.";
1831
Wei-Yin Chen (陳威尹)102222492019-05-22 19:27:091832const char kTabToGTSAnimationAndroidName[] = "Enable Tab-to-GTS Animation";
1833const char kTabToGTSAnimationAndroidDescription[] =
1834 "Allows users to see an animation when entering or leaving the "
1835 "Grid Tab Switcher.";
1836
Taylor Bergquistbcc15462018-12-05 00:36:561837const char kTabGroupsName[] = "Tab Groups";
1838const char kTabGroupsDescription[] =
1839 "Allows users to organize tabs into visually distinct groups, e.g. to "
1840 "separate tabs associated with different tasks.";
1841
Caroline Risinge121c2b2018-12-03 20:19:291842const char kTabHoverCardsName[] = "Tab Hover Cards";
1843const char kTabHoverCardsDescription[] =
1844 "Enables a popup containing tab information to be visible when hovering "
1845 "over a tab. This will replace tooltips for tabs.";
1846
Dana Friedacaa8ef52019-02-08 02:20:351847const char kTabHoverCardImagesName[] = "Tab Hover Card Images";
1848const char kTabHoverCardImagesDescription[] =
1849 "Shows a preview image in tab hover cards, if tab hover cards are enabled.";
1850
Christian Dullweberd0d96f02017-09-13 09:22:511851const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1852const char kTabsInCbdDescription[] =
1853 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
1854
Daniele Castagna0fead93e2018-01-10 20:40:291855const char kTintGlCompositedContentName[] = "Tint GL-composited content";
1856const char kTintGlCompositedContentDescription[] =
1857 "Tint contents composited using GL with a shade of red to help debug and "
1858 "study overlay support.";
1859
Peter Kastingd77428352018-10-26 15:20:251860const char kTopChromeTouchUiName[] = "Touch UI Layout";
1861const char kTopChromeTouchUiDescription[] =
1862 "Enables touch UI layout in the browser's top chrome.";
vabr0215a8e2017-03-28 12:47:341863
Brett Wilsonecb80982017-07-12 20:34:511864const char kThreadedScrollingName[] = "Threaded scrolling";
1865const char kThreadedScrollingDescription[] =
1866 "Threaded handling of scroll-related input events. Disabling this will "
1867 "force all such scroll events to be handled on the main thread. Note that "
1868 "this can dramatically hurt scrolling performance of most websites and is "
1869 "intended for testing purposes only.";
1870
Brett Wilsonecb80982017-07-12 20:34:511871const char kTouchAdjustmentName[] = "Touch adjustment";
1872const char kTouchAdjustmentDescription[] =
1873 "Refine the position of a touch gesture in order to compensate for touches "
1874 "having poor resolution compared to a mouse.";
1875
1876const char kTouchDragDropName[] = "Touch initiated drag and drop";
1877const char kTouchDragDropDescription[] =
1878 "Touch drag and drop can be initiated through long press on a draggable "
1879 "element.";
1880
1881const char kTouchEventsName[] = "Touch Events API";
1882const char kTouchEventsDescription[] =
1883 "Force Touch Events API feature detection to always be enabled or "
1884 "disabled, or to be enabled when a touchscreen is detected on startup "
Ella Gea6a203c92017-10-26 19:09:291885 "(Automatic).";
Brett Wilsonecb80982017-07-12 20:34:511886
1887const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
1888const char kTouchSelectionStrategyDescription[] =
1889 "Controls how text selection granularity changes when touch text selection "
1890 "handles are dragged. Non-default behavior is experimental.";
1891const char kTouchSelectionStrategyCharacter[] = "Character";
1892const char kTouchSelectionStrategyDirection[] = "Direction";
1893
1894const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
1895const char kTraceUploadUrlDescription[] =
1896 "This is to be used in conjunction with the enable-navigation-tracing "
1897 "flag. Please select the label that best describes the recorded traces. "
1898 "This will choose the destination the traces are uploaded to. If you are "
1899 "not sure, select other. If left empty, no traces will be uploaded.";
1900const char kTraceUploadUrlChoiceOther[] = "Other";
1901const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1902const char kTraceUploadUrlChoiceQa[] = "QA";
1903const char kTraceUploadUrlChoiceTesting[] = "Testing";
1904
Anthony Vallee-Dubois265c5692018-06-01 15:57:141905const char kTranslateForceTriggerOnEnglishName[] =
1906 "Select which language model to use to trigger translate on English "
1907 "content";
1908const char kTranslateForceTriggerOnEnglishDescription[] =
1909 "Force the Translate Triggering on English pages experiment to be enabled "
1910 "with the selected language model active.";
1911
Haohao Wang5b525f722019-05-18 15:37:521912const char kTranslateBubbleUIName[] =
1913 "Select which UI to use for translate bubble";
1914const char kTranslateBubbleUIDescription[] =
1915 "Three bubble options to choose. Existing UI is selected by default";
1916
Mustafa Emre Acerb3aa36a82018-05-22 21:44:051917const char kTreatInsecureOriginAsSecureName[] =
1918 "Insecure origins treated as secure";
1919const char kTreatInsecureOriginAsSecureDescription[] =
1920 "Treat given (insecure) origins as secure origins. Multiple origins can be "
1921 "supplied as a comma-separated list. For the definition of secure "
1922 "contexts, "
1923 "see https://w3c.github.io/webappsec-secure-contexts/";
1924
Joe DeBlasio2a4fb9982019-05-06 23:44:431925const char kTreatUnsafeDownloadsAsActiveName[] =
1926 "Treat risky downloads over insecure connections as active mixed content";
1927const char kTreatUnsafeDownloadsAsActiveDescription[] =
1928 "Disallows downloads of unsafe files (files that can potentially execute "
1929 "code), where the final download origin or any origin in the redirect "
1930 "chain is insecure if the originating page is secure.";
1931
Brett Wilsonecb80982017-07-12 20:34:511932const char kTrySupportedChannelLayoutsName[] =
1933 "Causes audio output streams to check if channel layouts other than the "
1934 "default hardware layout are available.";
1935const char kTrySupportedChannelLayoutsDescription[] =
1936 "Causes audio output streams to check if channel layouts other than the "
1937 "default hardware layout are available. Turning this on will allow the OS "
1938 "to do stereo to surround expansion if supported. May expose third party "
1939 "driver bugs, use with caution.";
1940
David Roger6762a092018-01-31 15:55:071941const char kUnifiedConsentName[] = "Unified Consent";
1942const char kUnifiedConsentDescription[] =
1943 "Enables a unified management of user consent for privacy-related "
1944 "features. This includes new confirmation screens and improved settings "
1945 "pages.";
1946
François Beaufortdb160c12019-05-01 06:28:141947const char kUnsafeWebGPUName[] = "Unsafe WebGPU";
1948const char kUnsafeWebGPUDescription[] =
1949 "Enables access to the experimental WebGPU API. Warning: As GPU sanboxing "
1950 "isn't implemented yet for the WebGPU API, it is possible to read GPU data "
1951 "for other processes.";
1952
Brett Wilsonecb80982017-07-12 20:34:511953const char kUiPartialSwapName[] = "Partial swap";
1954const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
1955
Wei Li790e7a8572018-03-23 01:31:551956const char kUsePdfCompositorServiceName[] =
1957 "Use PDF compositor service for printing";
1958const char kUsePdfCompositorServiceDescription[] =
1959 "When enabled, use PDF compositor service to composite and generate PDF "
1960 "files for printing. When site isolation is enabled, disabling this will "
1961 "not stop using PDF compositor service since the service is required for "
1962 "printing out-of-process iframes correctly.";
1963
Mustaq Ahmedc646c0a2017-10-20 20:08:301964const char kUserActivationV2Name[] = "User Activation v2";
1965const char kUserActivationV2Description[] =
1966 "Enable simple user activation for APIs that are otherwise controlled by "
1967 "user gesture tokens.";
1968
Zentaro Kavanagh892851f2019-05-29 15:13:311969const char kUseSearchClickForRightClickName[] =
1970 "Use Search+Click for right click";
1971const char kUseSearchClickForRightClickDescription[] =
1972 "When enabled search+click will be remapped to right click, allowing "
1973 "webpages and apps to consume alt+click. When disabled the legacy "
1974 "behavior of remapping alt+click to right click will remain unchanged.";
1975
Michael Hablich896d52662017-10-23 15:59:571976const char kV8VmFutureName[] = "Future V8 VM features";
1977const char kV8VmFutureDescription[] =
1978 "This enables upcoming and experimental V8 VM features. "
1979 "This flag does not enable experimental JavaScript features.";
1980
Brett Wilsonecb80982017-07-12 20:34:511981const char kWalletServiceUseSandboxName[] =
1982 "Use Google Payments sandbox servers";
1983const char kWalletServiceUseSandboxDescription[] =
1984 "For developers: use the sandbox service for Google Payments API calls.";
1985
Brett Wilsonecb80982017-07-12 20:34:511986const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
1987const char kWebglDraftExtensionsDescription[] =
1988 "Enabling this option allows web applications to access the WebGL "
1989 "Extensions that are still in draft status.";
1990
1991const char kWebMidiName[] = "Web MIDI API";
1992const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
1993
Danyao Wang47a0f312019-05-09 20:52:241994const char kWebPaymentsExperimentalFeaturesName[] =
1995 "Experimental Web Payments API features";
1996const char kWebPaymentsExperimentalFeaturesDescription[] =
1997 "Enable experimental Web Payments API features";
1998
Qingsi Wangec2dbf942018-11-03 05:33:041999const char kWebrtcHideLocalIpsWithMdnsName[] =
2000 "Anonymize local IPs exposed by WebRTC.";
2001const char kWebrtcHideLocalIpsWithMdnsDecription[] =
2002 "Conceal local IP addresses with mDNS hostnames.";
2003
Alex Loikob5fb1282018-08-14 10:04:402004const char kWebrtcHybridAgcName[] = "WebRTC hybrid Agc2/Agc1.";
2005const char kWebrtcHybridAgcDescription[] =
2006 "WebRTC Agc2 digital adaptation with Agc1 analog adaptation.";
2007
Brett Wilsonecb80982017-07-12 20:34:512008const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
2009const char kWebrtcHwDecodingDescription[] =
2010 "Support in WebRTC for decoding video streams using platform hardware.";
2011
2012const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
2013const char kWebrtcHwEncodingDescription[] =
2014 "Support in WebRTC for encoding video streams using platform hardware.";
2015
2016const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
2017const char kWebrtcHwH264EncodingDescription[] =
2018 "Support in WebRTC for encoding h264 video streams using platform "
2019 "hardware.";
2020
2021const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
2022const char kWebrtcHwVP8EncodingDescription[] =
2023 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
2024
Sreerenj Balachandran2a5fd0972019-02-08 22:15:202025const char kWebrtcHwVP9EncodingName[] = "WebRTC hardware vp9 video encoding";
2026const char kWebrtcHwVP9EncodingDescription[] =
2027 "Support in WebRTC for encoding vp9 video streams using platform hardware.";
2028
Niels Möller090866a2018-02-13 10:55:032029const char kWebrtcNewEncodeCpuLoadEstimatorName[] =
2030 "WebRTC new encode cpu load estimator";
2031const char kWebrtcNewEncodeCpuLoadEstimatorDescription[] =
2032 "Enable new estimator for the encoder cpu load, for evaluation and "
2033 "testing. Intended to improve accuracy when screen casting.";
2034
Elad Alon85e0d0be2018-06-26 10:38:372035const char kWebRtcRemoteEventLogName[] = "WebRTC remote-bound event logging";
2036const char kWebRtcRemoteEventLogDescription[] =
2037 "Allow collecting WebRTC event logs and uploading them to Crash. "
2038 "Please note that, even if enabled, this will still require "
2039 "a policy to be set, for it to have an effect.";
2040
Brett Wilsonecb80982017-07-12 20:34:512041const char kWebrtcSrtpAesGcmName[] =
2042 "Negotiation with GCM cipher suites for SRTP in WebRTC";
2043const char kWebrtcSrtpAesGcmDescription[] =
2044 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
2045
2046const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
2047const char kWebrtcStunOriginDescription[] =
2048 "When enabled, Stun messages generated by WebRTC will contain the Origin "
2049 "header.";
2050
2051const char kWebvrName[] = "WebVR";
2052const char kWebvrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012053 "Enables access to experimental Virtual Reality functionality via the "
2054 "WebVR 1.1 API. This feature will eventually be replaced by the WebXR "
2055 "Device API. Warning: Enabling this will also allow WebVR content on "
2056 "insecure origins to access these powerful APIs, and may pose a security "
David Dorwin09448942019-01-11 23:37:302057 "risk. Controllers are exposed as Gamepads, and WebVR-specific attributes "
2058 "are exposed.";
Brett Wilsonecb80982017-07-12 20:34:512059
Brandon Jonese9d9b2b2017-12-11 22:20:112060const char kWebXrName[] = "WebXR Device API";
2061const char kWebXrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012062 "Enables access to experimental APIs to interact with Virtual Reality (VR) "
2063 "and Augmented Reality (AR) devices.";
2064
Ian Vollick7aaccf92018-04-07 23:10:432065const char kWebXrHitTestName[] = "WebXR Hit Test";
2066const char kWebXrHitTestDescription[] =
2067 "Enables access to raycasting against estimated XR scene geometry.";
Brandon Jonese9d9b2b2017-12-11 22:20:112068
Piotr Bialeckid77fb9c2019-04-26 17:06:242069const char kWebXrPlaneDetectionName[] = "WebXR Plane Detection";
2070const char kWebXrPlaneDetectionDescription[] =
2071 "Enables access to planes detected in the user's environment.";
2072
Brett Wilsonecb80982017-07-12 20:34:512073const char kZeroCopyName[] = "Zero-copy rasterizer";
2074const char kZeroCopyDescription[] =
2075 "Raster threads write directly to GPU memory associated with tiles.";
vabr0215a8e2017-03-28 12:47:342076
Brett Wilsonff596952017-07-14 01:06:552077// Android ---------------------------------------------------------------------
2078
2079#if defined(OS_ANDROID)
2080
2081const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
2082const char kAiaFetchingDescription[] =
2083 "Enable intermediate certificate fetching when a server does not provide "
2084 "sufficient certificates to build a chain to a trusted root.";
2085
Pavel Shmakov798f4742018-11-15 21:27:382086const char kAllowRemoteContextForNotificationsName[] =
2087 "Allow using remote app context for notifications";
2088const char kAllowRemoteContextForNotificationsDescription[] =
2089 "Allow using Context#createPackageContext to work around issues with status"
2090 "bar icons on certain Android M devices.";
2091
Brett Wilsonff596952017-07-14 01:06:552092const char kAndroidAutofillAccessibilityName[] = "Autofill Accessibility";
2093const char kAndroidAutofillAccessibilityDescription[] =
2094 "Enable accessibility for autofill popup.";
2095
Khushalbb1963a2018-10-02 21:02:352096const char kAndroidSurfaceControl[] = "Use Android SurfaceControl";
2097const char kAndroidSurfaceControlDescription[] =
2098 "Use the SurfaceControl API for supporting overlays on Android";
2099
Becky Zhoubbfbde32019-02-20 17:07:592100const char kAndroidWebContentsDarkMode[] = "Android web contents dark mode";
2101const char kAndroidWebContentsDarkModeDescription[] =
2102 "Enable dark mode on web contents in Android";
2103
Anita Woodruffbfcd1e52018-07-16 12:00:512104const char kAppNotificationStatusMessagingName[] =
2105 "App notification status messaging";
2106const char kAppNotificationStatusMessagingDescription[] =
2107 "Enables messaging in site permissions UI informing user when "
2108 "notifications are disabled for the entire app.";
2109
Miriam Gershenson8cf1397222018-01-23 22:48:292110const char kAsyncDnsName[] = "Async DNS resolver";
2111const char kAsyncDnsDescription[] = "Enables the built-in DNS resolver.";
2112
Dan Harrington01229f82018-09-12 21:01:212113const char kAutoFetchOnNetErrorPageName[] = "AutoFetchOnNetErrorPage";
2114const char kAutoFetchOnNetErrorPageDescription[] =
2115 "When enabled, and navigation fails with an offline error, schedule a "
2116 "fetch of the page when online again.";
2117
Brett Wilsonff596952017-07-14 01:06:552118const char kAutofillAccessoryViewName[] =
2119 "Autofill suggestions as keyboard accessory view";
2120const char kAutofillAccessoryViewDescription[] =
2121 "Shows Autofill suggestions on top of the keyboard rather than in a "
2122 "dropdown.";
2123
Caitlin Fischer43edd90a2019-05-01 13:24:302124const char kAutofillUseMobileLabelDisambiguationName[] =
2125 "Autofill Uses Mobile Label Disambiguation";
2126const char kAutofillUseMobileLabelDisambiguationDescription[] =
2127 "When enabled, Autofill suggestions' labels are displayed using a "
2128 "mobile-friendly format.";
2129
Tibor Goldschwendt11b3cf22018-07-04 15:32:442130const char kBackgroundTaskComponentUpdateName[] =
2131 "Background Task Component Updates";
2132const char kBackgroundTaskComponentUpdateDescription[] =
2133 "Schedule component updates with BackgroundTaskScheduler";
2134
Michael van Ouwerkerkbda4ad82018-06-19 14:08:002135const char kCCTModuleName[] = "Chrome Custom Tabs Module";
2136const char kCCTModuleDescription[] =
2137 "Enables a dynamically loaded module in Chrome Custom Tabs, on Android.";
2138
Michael van Ouwerkerk29a7a292018-10-09 09:20:142139const char kCCTModuleCacheName[] = "Chrome Custom Tabs Module Cache";
2140const char kCCTModuleCacheDescription[] =
Michael van Ouwerkerka5df1ec2018-10-11 11:57:402141 "Enables a cache for dynamically loaded modules in Chrome Custom Tabs. "
2142 "Under mild memory pressure the cache may be retained for some time";
Michael van Ouwerkerk29a7a292018-10-09 09:20:142143
John Lin170c00b2018-11-21 15:44:252144const char kCCTModuleCustomHeaderName[] =
2145 "Chrome Custom Tabs Module Custom Header";
2146const char kCCTModuleCustomHeaderDescription[] =
2147 "Enables header customization by dynamically loaded modules in "
2148 "Chrome Custom Tabs.";
2149
Michael van Ouwerkerk0878427a2019-02-13 15:11:422150const char kCCTModuleCustomRequestHeaderName[] =
2151 "Chrome Custom Tabs Module Custom Request Header";
2152const char kCCTModuleCustomRequestHeaderDescription[] =
2153 "Enables a custom request header for URLs managed by dynamically loaded "
2154 "modules in Chrome Custom Tabs.";
2155
alihanlivdumlu12ac4772019-01-17 17:37:182156const char kCCTModuleDexLoadingName[] = "Chrome Custom Tabs Module Dex Loading";
2157const char kCCTModuleDexLoadingDescription[] =
2158 "Enables loading Chrome Custom Tabs module code from a dex file "
2159 "provided by the module.";
2160
barkerd84051482018-11-13 14:46:562161const char kCCTModulePostMessageName[] =
2162 "Chrome Custom Tabs Module postMessage API";
2163const char kCCTModulePostMessageDescription[] =
2164 "Enables the postMessage API exposed to dynamically loaded modules in "
2165 "Chrome Custom Tabs.";
2166
Anna Malova9bb4ead2019-01-18 18:01:262167const char kCCTModuleUseIntentExtrasName[] =
2168 "Chrome Custom Tabs Module Intent Extras Usage";
2169const char kCCTModuleUseIntentExtrasDescription[] =
2170 "Enables usage of Intent's extras in Chrome Custom Tabs Module";
2171
Anna Malovaf7c734a2019-03-01 13:08:452172const char kCCTTargetTranslateLanguageName[] =
2173 "Chrome Custom Tabs Target Translate Language";
2174const char kCCTTargetTranslateLanguageDescription[] =
2175 "Enables specify target language the page should be translated to "
2176 "in Chrome Custom Tabs.";
2177
Matthew Jones1abcb132018-07-09 17:59:462178const char kChromeDuetName[] = "Chrome Duet";
2179const char kChromeDuetDescription[] =
2180 "Enables Chrome Duet, split toolbar Chrome Home, on Android.";
Theresa Wellingtonb9243b22017-12-01 16:23:052181
Pedro Amaral5e345192019-05-21 21:18:472182const char kChromeDuetLabelsName[] = "Chrome Duet Labels";
2183const char kChromeDuetLabelsDescription[] =
2184 "Enables Chrome Duet (split toolbar) labels.";
2185
Sarath Singapati83aef1c2017-11-16 15:54:522186const char kClearOldBrowsingDataName[] = "Clear older browsing data";
2187const char kClearOldBrowsingDataDescription[] =
2188 "Enables clearing of browsing data which is older than a given time "
2189 "period.";
2190
Donn Denman4315f262019-03-02 02:47:412191const char kContextualSearchDefinitionsName[] = "Contextual Search definitions";
2192const char kContextualSearchDefinitionsDescription[] =
2193 "Enables tap-activated contextual definitions of words on a page to be "
2194 "presented in the caption of the Tap to Search Bar.";
2195
Donn Denman6be77d42019-05-04 15:55:422196const char kContextualSearchLongpressResolveName[] =
2197 "Contextual Search long-press Resolves";
2198const char kContextualSearchLongpressResolveDescription[] =
2199 "Enables communicating with Google servers when a long-press gesture is "
2200 "recognized under some privacy-limited conditions. The page context data "
2201 " sent to Google is potentially privacy sensitive!";
2202
Donn Denman8e58ead2017-11-04 01:44:012203const char kContextualSearchMlTapSuppressionName[] =
2204 "Contextual Search ML tap suppression";
2205const char kContextualSearchMlTapSuppressionDescription[] =
2206 "Enables tap gestures to be suppressed to improve CTR by applying machine "
Donn Denman59729812018-01-09 01:27:022207 "learning. The \"Contextual Search Ranker prediction\" flag must also be "
2208 "enabled!";
Brett Wilsonff596952017-07-14 01:06:552209
Donn Denman59729812018-01-09 01:27:022210const char kContextualSearchRankerQueryName[] =
2211 "Contextual Search Ranker prediction";
2212const char kContextualSearchRankerQueryDescription[] =
2213 "Enables prediction of tap gestures using Assist-Ranker machine learning.";
2214
Donn Denman63d169f2019-03-08 23:34:502215const char kContextualSearchSimplifiedServerName[] =
2216 "Contextual Search simplified server logic";
2217const char kContextualSearchSimplifiedServerDescription[] =
2218 "Enables simpler server-side logic for determining what data to return and "
2219 "show in the Contextual Search UI. Option to allow all cards CoCa "
2220 "returns.";
2221
Donn Denman59729812018-01-09 01:27:022222const char kContextualSearchSecondTapName[] =
2223 "Contextual Search second tap triggering";
2224const char kContextualSearchSecondTapDescription[] =
2225 "Enables triggering on a second tap gesture even when Ranker would "
2226 "normally suppress that tap.";
2227
Donn Denman75f4b052019-04-05 17:55:212228const char kContextualSearchTranslationModelName[] =
2229 "Contextual Search translation using the Chrome translate model.";
2230const char kContextualSearchTranslationModelDescription[] =
2231 "Enables triggering translation in Contextual Search according to the "
2232 "Chrome translation model semantics.";
2233
Donn Denmane9b5b7fb2018-07-24 22:19:492234const char kContextualSearchUnityIntegrationName[] =
2235 "Contextual Search integration with Unified Consent";
2236const char kContextualSearchUnityIntegrationDescription[] =
2237 "Enables integration of Tap to Search with Unified Consent.";
2238
Shakti Sahu32b2ee102018-05-17 00:04:462239const char kDownloadProgressInfoBarName[] = "Enable download progress infobar";
2240const char kDownloadProgressInfoBarDescription[] =
2241 "Enables an infobar notifying users about status of current downloads.";
2242
Shakti Sahu9ec8cfd2018-07-17 13:29:292243const char kDownloadHomeV2Name[] = "Enable download home v2";
2244const char kDownloadHomeV2Description[] =
2245 "Enables the new UI for download home";
2246
Hesen Zhangf7ad6142019-03-12 23:48:312247const char kDownloadRenameName[] = "Enable download rename";
2248const char kDownloadRenameDescription[] = "Enables rename option for downloads";
2249
Fabio Tirelo918089a2018-10-22 21:24:082250const char kAutofillManualFallbackAndroidName[] =
2251 "Enable Autofill manual fallback for Addresses and Payments (Android)";
2252const char kAutofillManualFallbackAndroidDescription[] =
2253 "If enabled, adds toggle for addresses and payments bottom sheet to the "
2254 "keyboard accessory.";
2255
Fabio Tirelo315e65922018-09-05 03:35:492256const char kEnableAutofillRefreshStyleName[] =
2257 "Enable Autofill refresh style (Android)";
2258const char kEnableAutofillRefreshStyleDescription[] =
2259 "Enable modernized style for Autofill on Android";
2260
Vitalii Iarkof4ed32d2017-09-26 13:15:532261const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
Brett Wilsonff596952017-07-14 01:06:552262const char kEnableAndroidSpellcheckerDescription[] =
2263 "Enables use of the Android spellchecker.";
Brett Wilsonff596952017-07-14 01:06:552264
Lei Tianbd5a3bf2018-02-28 19:01:162265const char kEnableCommandLineOnNonRootedName[] =
2266 "Enable command line on non-rooted devices";
2267const char kEnableCommandLineOnNoRootedDescription[] =
2268 "Enable reading command line file on non-rooted devices (DANGEROUS).";
2269
Brett Wilsonff596952017-07-14 01:06:552270const char kEnableCustomContextMenuName[] = "Enable custom context menu";
2271const char kEnableCustomContextMenuDescription[] =
2272 "Enables a new context menu when a link, image, or video is pressed within "
2273 "Chrome.";
2274
Sinan Sahin3bafe272019-03-11 17:03:062275const char kEnableRevampedContextMenuName[] =
2276 "Enable the revamped context menu";
2277const char kEnableRevampedContextMenuDescription[] =
2278 "Enables a revamped context menu when a link, image, or video is long "
2279 "pressed within Chrome.";
2280
Brett Wilsonff596952017-07-14 01:06:552281const char kEnableNtpRemoteSuggestionsName[] =
2282 "Show server-side suggestions on the New Tab page";
2283const char kEnableNtpRemoteSuggestionsDescription[] =
2284 "If enabled, the list of content suggestions on the New Tab page will "
2285 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
2286 "allows to override the source used to retrieve these server-side "
2287 "suggestions.";
2288
Brett Wilsonff596952017-07-14 01:06:552289const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
2290const char kEnableOfflinePreviewsDescription[] =
2291 "Enable showing offline page previews on slow networks.";
2292
Brett Wilsonff596952017-07-14 01:06:552293const char kEnableWebNfcName[] = "WebNFC";
2294const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
2295
Donn Denman6d184582019-05-18 00:32:112296const char kEphemeralTabName[] = "An ephemeral Preview Tab in an Overlay Panel";
Donn Denmanffaeaa32018-10-12 17:37:532297const char kEphemeralTabDescription[] =
Donn Denmanb45c26a2019-02-13 01:42:212298 "Enable a 'Preview page/image' at a linked page into an overlay.";
Donn Denmanffaeaa32018-10-12 17:37:532299
Lei Zhang0a318af2018-11-14 02:19:462300const char kExploreSitesName[] = "Explore websites";
2301const char kExploreSitesDescription[] =
2302 "Enables portal from new tab page to explore websites.";
2303
Xing Liu7d57dd32019-01-20 02:34:182304const char kForegroundNotificationManagerName[] =
2305 "Foreground notification manager";
2306const char kForegroundNotificationManagerDescription[] =
2307 "Enable foreground notification manager to handle foreground service and "
2308 "notification.";
2309
Daniel Parke74fcf862018-03-27 18:05:452310const char kHomePageButtonName[] = "Force Enable Home Page Button";
Daniel Park990d0992018-05-18 22:12:512311const char kHomePageButtonDescription[] = "Displays a home button if enabled.";
Daniel Parke74fcf862018-03-27 18:05:452312
Yafei Duanbb7663f32018-07-17 01:33:152313const char kHomepageTileName[] =
2314 "Enable Homepage tile shown in Suggested Tiles";
2315const char kHomepageTileDescription[] =
2316 "When NTPButton is enabled, the first tile of the Suggested Tiles will be "
2317 "used for homepage. It will not have an effect when NTPButton is disabled.";
2318
Pavel Yatsuk6b1e3a072019-05-08 22:18:252319const char kIdentityDiscName[] = "Identity Disc";
2320const char kIdentityDiscDescription[] =
2321 "Enables Identity Disc, profile avatar icon button in toolbar.";
2322
Theresa920e0ed2018-03-07 18:12:442323const char kInterestFeedContentSuggestionsDescription[] =
Yafei Duanbb7663f32018-07-17 01:33:152324 "Use the interest feed to render content suggestions. Currently "
2325 "content "
Theresa920e0ed2018-03-07 18:12:442326 "suggestions are shown on the New Tab Page.";
2327const char kInterestFeedContentSuggestionsName[] =
2328 "Interest Feed Content Suggestions";
2329
Ioana Pandeled8dc2b692019-02-20 12:04:152330const char kManualPasswordGenerationAndroidName[] =
2331 "Manual password generation";
2332const char kManualPasswordGenerationAndroidDescription[] =
2333 "Whether Chrome should offer users the option to manually request to "
2334 "generate passwords on Android.";
Amirhossein Simjour97b4154f2018-02-20 03:49:592335
Dan Harrington541db9e2018-07-30 18:36:302336const char kNewNetErrorPageUIName[] = "Enable new UI for net-error page";
2337const char kNewNetErrorPageUIDescription[] =
Dan Harringtonc78e4622019-03-22 19:13:242338 "Enables showing available offline content on the net-error (Dino) page.";
Dan Harrington541db9e2018-07-30 18:36:302339
Brett Wilsonff596952017-07-14 01:06:552340const char kNewPhotoPickerName[] = "Enable new Photopicker";
2341const char kNewPhotoPickerDescription[] =
2342 "Activates the new picker for selecting photos.";
2343
2344const char kNoCreditCardAbort[] = "No Credit Card Abort";
2345const char kNoCreditCardAbortDescription[] =
2346 "Whether or not the No Credit Card Abort is enabled.";
2347
Daniel Park990d0992018-05-18 22:12:512348const char kNtpButtonName[] = "Enable NTP Button";
2349const char kNtpButtonDescription[] =
2350 "Displays a New Tab Page button in the toolbar if enabled.";
2351
Jian Liade82832018-09-06 22:31:412352const char kOfflineIndicatorAlwaysHttpProbeName[] = "Always http probe";
2353const char kOfflineIndicatorAlwaysHttpProbeDescription[] =
2354 "Always do http probe to detect network connectivity for offline indicator "
2355 "as opposed to just taking the connection state from the system."
2356 "Used for testing.";
2357
2358const char kOfflineIndicatorChoiceName[] = "Offline indicator choices";
2359const char kOfflineIndicatorChoiceDescription[] =
2360 "Show an offline indicator while offline.";
Jian Li1413ebf2018-06-14 20:46:322361
Brett Wilsonff596952017-07-14 01:06:552362const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
2363const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
2364
2365const char kOfflinePagesCtV2Name[] = "Enable Offline Pages CT V2 features.";
2366const char kOfflinePagesCtV2Description[] =
2367 "V2 features include attributing pages to the app that initiated the "
2368 "custom tabs, and being able to query for pages by page attribution.";
2369
Cathy Li7311d792018-04-05 00:34:162370const char kOfflinePagesCTSuppressNotificationsName[] =
2371 "Disable download complete notification for whitelisted CCT apps.";
2372const char kOfflinePagesCTSuppressNotificationsDescription[] =
2373 "Disable download complete notification for page downloads originating "
2374 "from a CCT app whitelisted to show their own download complete "
2375 "notification.";
2376
Candice Sy74fa7a352018-03-30 23:46:492377const char kOfflinePagesDescriptiveFailStatusName[] =
2378 "Enables descriptive failed download status text.";
2379const char kOfflinePagesDescriptiveFailStatusDescription[] =
2380 "Enables failed download status text in notifications and Downloads Home "
2381 "to state the reason the request failed if the failure is actionable.";
2382
2383const char kOfflinePagesDescriptivePendingStatusName[] =
2384 "Enables descriptive pending download status text.";
2385const char kOfflinePagesDescriptivePendingStatusDescription[] =
2386 "Enables pending download status text in notifications and Downloads Home "
2387 "to state the reason the request is pending.";
2388
2389const char kOfflinePagesInDownloadHomeOpenInCctName[] =
2390 "Enables offline pages in the downloads home to be opened in CCT.";
2391const char kOfflinePagesInDownloadHomeOpenInCctDescription[] =
2392 "When enabled offline pages launched from the Downloads Home will be "
2393 "opened in Chrome Custom Tabs (CCT) instead of regular tabs.";
2394
Carlos Knippschild09272ecd2017-12-09 03:29:362395const char kOfflinePagesLimitlessPrefetchingName[] =
2396 "Removes resource usage limits for the prefetching of offline pages.";
2397const char kOfflinePagesLimitlessPrefetchingDescription[] =
2398 "Allows the prefetching of suggested offline pages to ignore resource "
2399 "usage limits. This allows it to completely ignore data usage limitations "
2400 "and allows downloads to happen with any kind of connection.";
2401
Brett Wilsonff596952017-07-14 01:06:552402const char kOfflinePagesLoadSignalCollectingName[] =
2403 "Enables collecting load timing data for offline page snapshots.";
2404const char kOfflinePagesLoadSignalCollectingDescription[] =
2405 "Enables loading completeness data collection while writing an offline "
2406 "page. This data is collected in the snapshotted offline page to allow "
2407 "data analysis to improve deciding when to make the offline snapshot.";
2408
2409const char kOfflinePagesPrefetchingName[] =
2410 "Enables suggested offline pages to be prefetched.";
2411const char kOfflinePagesPrefetchingDescription[] =
2412 "Enables suggested offline pages to be prefetched, so useful content is "
2413 "available while offline.";
2414
Pete Williamson7845dff2017-09-20 11:06:192415const char kOfflinePagesResourceBasedSnapshotName[] =
2416 "Enables offline page snapshots to be based on percentage of page loaded.";
2417const char kOfflinePagesResourceBasedSnapshotDescription[] =
2418 "Enables offline page snapshots to use a resource percentage based "
2419 "approach for determining when the page is loaded as opposed to a time "
2420 "based approach";
2421
Collin Baker17f92a52017-07-19 21:41:252422const char kOfflinePagesRenovationsName[] = "Enables offline page renovations.";
2423const char kOfflinePagesRenovationsDescription[] =
2424 "Enables offline page renovations which correct issues with dynamic "
2425 "content that occur when offlining pages that use JavaScript.";
2426
Yafei Duan36b4b5b2018-08-07 00:40:032427const char kOfflinePagesLivePageSharingName[] =
2428 "Enables live page sharing of offline pages";
2429const char kOfflinePagesLivePageSharingDescription[] =
2430 "Enables to share current loaded page as offline page by saving as MHTML "
2431 "first.";
2432
Cathy Lie0d88762018-04-12 08:03:012433const char kOfflinePagesShowAlternateDinoPageName[] =
2434 "Enable alternate dino page with more user capabilities.";
2435const char kOfflinePagesShowAlternateDinoPageDescription[] =
2436 "Enables the dino page to show more buttons and offer existing offline "
2437 "content.";
2438
Brett Wilsonff596952017-07-14 01:06:552439const char kOffliningRecentPagesName[] =
2440 "Enable offlining of recently visited pages";
2441const char kOffliningRecentPagesDescription[] =
2442 "Enable storing recently visited pages locally for offline use. Requires "
2443 "Offline Pages to be enabled.";
2444
Matthew Jonesa88b95852017-11-08 23:13:502445const char kProgressBarThrottleName[] = "Android progress update throttling.";
2446const char kProgressBarThrottleDescription[] =
2447 "Limit the maximum progress update to make progress appear smoother.";
2448
Brett Wilsonff596952017-07-14 01:06:552449const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
2450const char kReaderModeHeuristicsDescription[] =
2451 "Determines what pages the Reader Mode infobar is shown on.";
2452const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
2453const char kReaderModeHeuristicsAdaboost[] = "Non-mobile-friendly articles";
2454const char kReaderModeHeuristicsAllArticles[] = "All articles";
2455const char kReaderModeHeuristicsAlwaysOff[] = "Never";
2456const char kReaderModeHeuristicsAlwaysOn[] = "Always";
2457
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:182458const char kReaderModeInCCTName[] = "Reader Mode in CCT";
2459const char kReaderModeInCCTDescription[] =
2460 "Open Reader Mode in Chrome Custom Tabs.";
2461
Varun Khaneja80712a82018-10-12 23:34:592462const char kSafeBrowsingUseLocalBlacklistsV2Name[] =
2463 "Use local Safe Browsing blacklists";
2464const char kSafeBrowsingUseLocalBlacklistsV2Description[] =
2465 "If enabled, maintain a copy of Safe Browsing blacklists in the browser "
2466 "process to check the Safe Browsing reputation of URLs without calling "
2467 "into GmsCore for every URL.";
2468
Matthew Jones53114262018-12-12 16:36:472469const char kSearchReadyOmniboxName[] = "Search Ready Omnibox";
2470const char kSearchReadyOmniboxDescription[] =
2471 "Clears the omnibox and adds a suggestion item to share, copy, or edit the "
2472 "URL.";
2473
Brett Wilsonff596952017-07-14 01:06:552474const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2475const char kSetMarketUrlForTestingDescription[] =
2476 "When enabled, sets the market URL for use in testing the update menu "
2477 "item.";
2478
Donn Denmane32c706c2019-04-26 22:30:112479const char kShoppingAssistName[] = "Shopping assist exploration";
2480const char kShoppingAssistDescription[] =
2481 "Show some shopping assistance when available";
2482
Alex Moshchuk07e1bb42019-03-08 04:44:082483const char kSiteIsolationForPasswordSitesName[] =
2484 "Site Isolation For Password Sites";
2485const char kSiteIsolationForPasswordSitesDescription[] =
2486 "Security mode that enables site isolation for sites based on "
2487 "password-oriented heuristics, such as a user typing in a password.";
2488
Lei Zhang0a318af2018-11-14 02:19:462489const char kStrictSiteIsolationName[] = "Strict site isolation";
2490const char kStrictSiteIsolationDescription[] =
2491 "Security mode that enables site isolation for all sites (SitePerProcess). "
2492 "In this mode, each renderer process will contain pages from at most one "
2493 "site, using out-of-process iframes when needed. "
2494 "Check chrome://process-internals to see the current isolation mode. "
2495 "Setting this flag to 'Enabled' turns on site isolation regardless of the "
2496 "default. Here, 'Disabled' is a legacy value that actually means "
2497 "'Default,' in which case site isolation may be already enabled based on "
2498 "platform, enterprise policy, or field trial. See also "
2499 "#site-isolation-trial-opt-out for how to disable site isolation for "
2500 "testing.";
2501
Nate Chapinc710f622019-04-26 19:25:292502extern const char kProcessSharingWithStrictSiteInstancesName[] =
2503 "Process sharing with strict site instances";
2504extern const char kProcessSharingWithStrictSiteInstancesDescription[] =
2505 "When site isolation is disabled, this mode changes how sites are lumped "
2506 "in to a shared process. Process selection is usually controlled with "
2507 "site instances. With strict site isolation, each site on a page gets its "
2508 "own site instance and process. With site isolation disabled and without "
2509 "this mode, all sites that share a process are put into the same site "
2510 "instance. This mode adds a third way: site instances are strictly "
2511 "separated like strict site isolation, but process selection puts multiple "
2512 "site instances in a single process.";
2513
Anthony Vallee-Dubois4623e1b2018-10-11 22:09:182514const char kTranslateAndroidManualTriggerName[] =
2515 "Enable manual translate trigger";
2516const char kTranslateAndroidManualTriggerDescription[] =
2517 "Show a menu item in the main menu that triggers page translation.";
2518
Brett Wilsonff596952017-07-14 01:06:552519const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2520const char kUpdateMenuBadgeDescription[] =
Tommy Nyquist3c02e592018-10-18 23:36:442521 "When enabled, a badge will be shown on the app menu button if the update "
2522 "type is Update Available or Unsupported OS Version.";
Brett Wilsonff596952017-07-14 01:06:552523
2524const char kUpdateMenuItemCustomSummaryDescription[] =
2525 "When this flag and the force show update menu item flag are enabled, a "
2526 "custom summary string will be displayed below the update menu item.";
2527const char kUpdateMenuItemCustomSummaryName[] =
2528 "Update menu item custom summary";
2529
Tommy Nyquist3c02e592018-10-18 23:36:442530const char kUpdateMenuTypeName[] =
2531 "Forces the update menu type to a specific type";
2532const char kUpdateMenuTypeDescription[] =
2533 "When set, forces the update type to be a specific one, which impacts "
Tommy Nyquist023d505f2019-02-16 02:18:382534 "the app menu badge and menu item for updates. For Inline Update, the "
2535 "update available flag is implied. The 'Inline Update: Success' selection "
2536 "goes through the whole inline update flow to the end with a successful "
2537 "outcome. The other 'Inline Update' options go through the same flow, but "
2538 "stop at various stages, see their error type for details.";
Tommy Nyquist3c02e592018-10-18 23:36:442539const char kUpdateMenuTypeNone[] = "None";
2540const char kUpdateMenuTypeUpdateAvailable[] = "Update Available";
2541const char kUpdateMenuTypeUnsupportedOSVersion[] = "Unsupported OS Version";
Tommy Nyquist023d505f2019-02-16 02:18:382542const char kUpdateMenuTypeInlineUpdateSuccess[] = "Inline Update: Success";
2543const char kUpdateMenuTypeInlineUpdateDialogCanceled[] =
2544 "Inline Update Error: Dialog Canceled";
2545const char kUpdateMenuTypeInlineUpdateDialogFailed[] =
2546 "Inline Update Error: Dialog Failed";
2547const char kUpdateMenuTypeInlineUpdateDownloadFailed[] =
2548 "Inline Update Error: Download Failed";
2549const char kUpdateMenuTypeInlineUpdateDownloadCanceled[] =
2550 "Inline Update Error: Download Canceled";
2551const char kUpdateMenuTypeInlineUpdateInstallFailed[] =
2552 "Inline Update Error: Install Failed";
Brett Wilsonff596952017-07-14 01:06:552553
Tommy Nyquist26ffb642019-02-20 20:31:522554const char kInlineUpdateFlowName[] = "Enable Google Play inline update flow";
2555const char kInlineUpdateFlowDescription[] =
2556 "When this flag is set, instead of taking the user to the Google Play "
2557 "Store when an update is available, the user is presented with an inline "
2558 "flow where they do not have to leave Chrome until the update is ready "
2559 "to install.";
2560
Becky Zhou65584142019-01-10 18:22:292561#if BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2562
Becky Zhoubcac628f2019-02-28 18:22:372563const char kAndroidNightModeName[] = "Android Chrome UI dark mode";
Becky Zhou65584142019-01-10 18:22:292564const char kAndroidNightModeDescription[] =
Becky Zhoubcac628f2019-02-28 18:22:372565 "If enabled, user can enable Android Chrome UI dark mode through settings.";
Becky Zhou65584142019-01-10 18:22:292566
2567#endif // BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2568
Brett Wilson7b44537e2017-08-18 01:38:282569// Non-Android -----------------------------------------------------------------
Brett Wilsonff596952017-07-14 01:06:552570
Brett Wilson7b44537e2017-08-18 01:38:282571#else // !defined(OS_ANDROID)
brettw5f9c1642017-05-14 17:12:482572
Brett Wilson7b44537e2017-08-18 01:38:282573const char kAccountConsistencyName[] =
2574 "Identity consistency between browser and cookie jar";
2575const char kAccountConsistencyDescription[] =
2576 "When enabled, the browser manages signing in and out of Google accounts.";
2577const char kAccountConsistencyChoiceMirror[] = "Mirror";
2578const char kAccountConsistencyChoiceDice[] = "Dice";
vabr0215a8e2017-03-28 12:47:342579
Reka Normana11e57fc2019-01-29 21:56:582580const char kAppManagementName[] = "Enable App Management page";
2581const char kAppManagementDescription[] =
2582 "Shows the new app management page at chrome://apps.";
2583
Takumi Fujimotod1da5b92019-06-07 00:35:482584const char kCastMediaRouteProviderName[] = "Cast Media Route Provider";
2585const char kCastMediaRouteProviderDescription[] =
2586 "Enables the native Cast Media Route Provider implementation to be used "
2587 "instead of the implementation in the Media Router component extension.";
2588
Gayane Petrosyan556e9172019-05-10 18:13:472589const char kChromeColorsName[] = "Chrome Colors menu";
2590const char kChromeColorsDescription[] =
2591 "Show Chrome Colors menu in the NTP customization menu.";
2592
Takumi Fujimotod1da5b92019-06-07 00:35:482593const char kDialMediaRouteProviderName[] = "DIAL Media Route Provider";
2594const char kDialMediaRouteProviderDescription[] =
2595 "Enables the native DIAL Media Route Provider implementation to be used "
2596 "instead of the implementation in the Media Router component extension.";
2597
Kristi Park786fbf12019-05-11 00:47:302598const char kGridLayoutForNtpShortcutsName[] =
2599 "Enable grid layout for NTP shortcuts";
2600const char kGridLayoutForNtpShortcutsDescription[] =
2601 "Enables better animations for the shortcuts, including improved "
2602 "drag-and-drop.";
2603
Kristi Parkc9b9d6592019-02-12 22:30:382604const char kRemoveNtpFakeboxName[] = "Remove fakebox from the NTP";
2605const char kRemoveNtpFakeboxDescription[] =
2606 "Do not show the fakebox on the New Tab page.";
2607
Kyle Milka24687352019-04-11 21:13:082608const char kNtpCustomizationMenuV2Name[] = "NTP customization menu version 2";
2609const char kNtpCustomizationMenuV2Description[] =
2610 "Use the second version of the NTP customization menu.";
2611
Dan Beam8388f3d2019-05-11 01:51:052612extern const char kNtpDisableInitialMostVisitedFadeInName[] =
2613 "Disable NTP initial most visited fade in";
2614extern const char kNtpDisableInitialMostVisitedFadeInDescription[] =
2615 "Do now initially fade in most visited tiles on the New Tab Page";
2616
Aran Gilman766c2ad2019-04-18 00:15:412617const char kEnableReaderModeName[] = "Enable Reader Mode";
2618const char kEnableReaderModeDescription[] =
2619 "Allows viewing of simplified web pages by selecting 'Customize and "
2620 "control Chrome'>'Distill page'";
2621
Lei Zhang0a318af2018-11-14 02:19:462622const char kEnableWebAuthenticationBleSupportName[] =
2623 "Web Authentication API BLE support";
2624const char kEnableWebAuthenticationBleSupportDescription[] =
2625 "Enable support for using Web Authentication API via Bluetooth security "
2626 "keys";
Sebastien Marchandd33f7dc2018-06-22 22:07:062627
Sebastien Marchandd33f7dc2018-06-22 22:07:062628const char kEnableWebAuthenticationTestingAPIName[] =
2629 "Web Authentication Testing API";
2630const char kEnableWebAuthenticationTestingAPIDescription[] =
2631 "Enable Web Authentication Testing API support, which disconnects the API "
2632 "implementation from the real world, and allows configuring virtual "
2633 "authenticator devices for testing";
2634
Owen Min853a8162019-04-26 19:20:362635const char kEnterpriseReportingInBrowserName[] =
2636 "Enterprise cloud reporting in browser";
2637const char kEnterpriseReportingInBrowserDescription[] =
2638 "Enable the enterprise cloud reporting in browser without installing the "
2639 "reporting companion extension. This feautre requires device level cloud "
2640 "mangement.";
2641
Jeffrey Cohenf04130a42018-08-29 00:22:272642const char kHappinessTrackingSurveysForDesktopName[] =
2643 "Happiness Tracking Surveys";
2644const char kHappinessTrackingSurveysForDesktopDescription[] =
2645 "Enable showing Happiness Tracking Surveys to users on Desktop";
2646
Maggie Caib3e2a6c2019-03-12 05:12:542647const char kIntentPickerName[] = "Intent picker";
2648const char kIntentPickerDescription[] =
2649 "When going to a site that has URL managable by a PWA, show the intent"
2650 "picker to allow user to open the URL in the app.";
2651
Jon Flatley8c785582019-06-05 00:33:422652const char kKernelnextVMsName[] = "Enable VMs on experimental kernels.";
2653const char kKernelnextVMsDescription[] =
2654 "Enables VM support on devices running experimental kernel versions.";
2655
Takumi Fujimotod1da5b92019-06-07 00:35:482656const char kMirroringServiceName[] = "Mirroring Service";
2657const char kMirroringServiceDescription[] =
2658 "Enables the native Mirroring Service for mirroring tabs or desktop to "
2659 "Chromecast. Requires AudioServiceAudioStreams to also be enabled.";
2660
Travis Skarebcdb5ed32018-08-17 01:49:402661const char kOmniboxDriveSuggestionsName[] =
2662 "Omnibox Google Drive Document suggestions";
2663const char kOmniboxDriveSuggestionsDescriptions[] =
2664 "Display suggestions for Google Drive documents in the omnibox when Google "
2665 "is the default search engine.";
2666
Travis Skare13ad69c2019-03-06 21:01:022667const char kOmniboxDeduplicateDriveUrlsName[] =
2668 "Deduplicate Google Drive suggestions in the Omnibox";
2669const char kOmniboxDeduplicateDriveUrlsDescription[] =
2670 "Present at most one result for the same Drive document across bookmarks, "
2671 "history, document, etc. suggestions.";
2672
Kevin Bailey9ec05532019-01-31 23:01:332673const char kOmniboxExperimentalKeywordModeName[] =
2674 "Omnibox Experimental Keyword Mode";
2675const char kOmniboxExperimentalKeywordModeDescription[] =
2676 "Enables various experimental features related to keyword mode, its "
2677 "suggestions and layout";
2678
Lei Zhang0a318af2018-11-14 02:19:462679const char kOmniboxPedalSuggestionsName[] = "Omnibox Pedal suggestions";
2680const char kOmniboxPedalSuggestionsDescription[] =
Orin Jaworski506db4d2019-02-14 20:17:142681 "Enable omnibox Pedal suggestions to accelerate actions within Chrome by "
2682 "detecting user intent and offering direct access to the end goal.";
Lei Zhang0a318af2018-11-14 02:19:462683
Orin Jaworski04c08b42018-07-11 02:39:562684const char kOmniboxReverseAnswersName[] = "Omnibox reverse answers";
2685const char kOmniboxReverseAnswersDescription[] =
manukaddd3c42019-04-09 21:20:592686 "Display answers with rows reversed (swapped); except definitions.";
Orin Jaworski04c08b42018-07-11 02:39:562687
Kevin Baileya5f17452019-02-13 01:52:032688const char kOmniboxReverseTabSwitchLogicName[] =
2689 "Omnibox reverse tab switch logic";
2690const char kOmniboxReverseTabSwitchLogicDescription[] =
2691 "Reverse the logic of suggestions that have a tab switch button: Have "
2692 "them switch by default, and have the button navigate.";
2693
Kevin Bailey7d918b92019-05-02 16:00:142694const char kOmniboxShortBookmarkSuggestionsName[] =
2695 "Omnibox short bookmark suggestions";
2696const char kOmniboxShortBookmarkSuggestionsDescription[] =
2697 "Match very short input words to beginning of words in bookmark "
2698 "suggestions.";
2699
Tommy C. Li065ddce72019-04-11 22:55:122700const char kOmniboxSuggestionTransparencyOptionsName[] =
2701 "Omnibox Suggestion Transparency Options";
2702const char kOmniboxSuggestionTransparencyOptionsDescription[] =
2703 "Improves transparency of and control over omnibox suggestions. This "
2704 "includes UI cues (like a clock icon for Search History suggestions), as "
2705 "well as user controls to delete personalized suggestions.";
2706
Kevin Bailey898669972017-11-06 15:34:492707const char kOmniboxTabSwitchSuggestionsName[] =
2708 "Omnibox tab switch suggestions";
2709const char kOmniboxTabSwitchSuggestionsDescription[] =
manukaddd3c42019-04-09 21:20:592710 "Enable suggestions for switching to open tabs within the Omnibox.";
Kevin Bailey898669972017-11-06 15:34:492711
Sebastien Marchandd33f7dc2018-06-22 22:07:062712const char kProactiveTabFreezeAndDiscardName[] =
2713 "Proactive Tab Freeze and Discard";
2714const char kProactiveTabFreezeAndDiscardDescription[] =
2715 "Enables proactive tab freezing and discarding. This requires "
2716 "#enable-page-almost-idle.";
2717
Brett Wilson7b44537e2017-08-18 01:38:282718#if defined(GOOGLE_CHROME_BUILD)
2719
2720const char kGoogleBrandedContextMenuName[] =
2721 "Google branding in the context menu";
2722const char kGoogleBrandedContextMenuDescription[] =
2723 "Shows a Google icon next to context menu items powered by Google "
2724 "services.";
2725
2726#endif // !defined(GOOGLE_CHROME_BUILD)
2727
2728#endif // !defined(OS_ANDROID)
2729
2730// Windows ---------------------------------------------------------------------
2731
2732#if defined(OS_WIN)
2733
David Bienvenud0ddda32018-11-01 16:59:162734const char kCalculateNativeWinOcclusionName[] =
2735 "Calculate window occlusion on Windows";
2736const char kCalculateNativeWinOcclusionDescription[] =
2737 "Calculate window occlusion on Windows will be used in the future "
2738 "to throttle and potentially unload foreground tabs in occluded windows";
2739
Brett Wilson7b44537e2017-08-18 01:38:282740const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
2741const char kCloudPrintXpsDescription[] =
2742 "XPS enables advanced options for classic printers connected to the Cloud "
2743 "Print with Chrome. Printers must be re-connected after changing this "
2744 "flag.";
2745
Frank Liberato754d14f2019-01-30 23:31:172746const char kD3D11VideoDecoderName[] = "D3D11 Video Decoder";
2747const char kD3D11VideoDecoderDescription[] =
2748 "Enables D3D11VideoDecoder for hardware accelerated video decoding.";
2749
Brett Wilson7b44537e2017-08-18 01:38:282750const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
2751const char kDisablePostscriptPrintingDescription[] =
2752 "Disables PostScript generation when printing to PostScript capable "
2753 "printers, and uses EMF generation in its place.";
2754
2755const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
2756const char kEnableAppcontainerDescription[] =
2757 "Enables the use of an AppContainer on sandboxed processes to improve "
2758 "security.";
2759
James Forshawfd0ce342018-02-14 09:55:392760const char kEnableGpuAppcontainerName[] = "Enable GPU AppContainer Lockdown.";
2761const char kEnableGpuAppcontainerDescription[] =
2762 "Enables the use of an AppContainer for the GPU sandboxed processes to "
2763 "improve security.";
2764
Brett Wilson7b44537e2017-08-18 01:38:282765const char kGdiTextPrinting[] = "GDI Text Printing";
2766const char kGdiTextPrintingDescription[] =
2767 "Use GDI to print text as simply text";
2768
Olli Etuaho122321192018-09-07 10:15:292769const char kUseAngleName[] = "Choose ANGLE graphics backend";
2770const char kUseAngleDescription[] =
2771 "Choose the graphics backend for ANGLE. D3D11 is used on most Windows "
2772 "computers by default. Using the OpenGL driver as the graphics backend may "
2773 "result in higher performance in some graphics-heavy applications, "
2774 "particularly on NVIDIA GPUs. It can increase battery and memory usage of "
2775 "video playback.";
2776
2777const char kUseAngleDefault[] = "Default";
2778const char kUseAngleGL[] = "OpenGL";
2779const char kUseAngleD3D11[] = "D3D11";
2780const char kUseAngleD3D9[] = "D3D9";
2781
Brett Wilson7b44537e2017-08-18 01:38:282782const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2783const char kUseWinrtMidiApiDescription[] =
2784 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
2785 "later).";
2786
Brett Wilson7b44537e2017-08-18 01:38:282787#endif // defined(OS_WIN)
2788
2789// Mac -------------------------------------------------------------------------
2790
2791#if defined(OS_MACOSX)
2792
Sidney San Martín678fd4112019-03-30 00:13:052793const char kImmersiveFullscreenName[] = "Immersive Fullscreen Toolbar";
2794const char kImmersiveFullscreenDescription[] =
2795 "Automatically hide and show the toolbar in fullscreen.";
2796
Lei Zhange065b572018-12-11 08:00:412797const char kEnableCustomMacPaperSizesName[] = "Enable custom paper sizes";
2798const char kEnableCustomMacPaperSizesDescription[] =
2799 "Allow use of custom paper sizes in Print Preview.";
2800
Lei Zhang2eca9082017-10-17 20:42:502801const char kMacTouchBarName[] = "Hardware Touch Bar";
2802const char kMacTouchBarDescription[] = "Control the use of the Touch Bar.";
Brett Wilson7b44537e2017-08-18 01:38:282803
Greg Kerr32483d1c2018-12-18 02:29:142804const char kMacV2GPUSandboxName[] = "Mac V2 GPU Sandbox";
2805const char kMacV2GPUSandboxDescription[] =
2806 "Controls whether the GPU process on macOS uses the V1 or V2 sandbox.";
2807
Brett Wilson7b44537e2017-08-18 01:38:282808const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
2809const char kMacViewsTaskManagerDescription[] =
2810 "Controls whether to use the Toolkit-Views based Task Manager.";
2811
Henrik Grunellabaf7182019-04-12 09:15:192812const char kMacSystemMediaPermissionsInfoUiName[] =
2813 "System media permissions info UI";
2814const char kMacSystemMediaPermissionsInfoUiDescription[] =
2815 "In case a website is trying to use the camera/microphone, but Chrome "
2816 "itself is blocked on the system level to access these, show an icon in "
2817 "the Omnibox, which, when clicked, displays a bubble with information on "
2818 "how to toggle Chrome's system-level media permissions.";
2819
Brett Wilson7b44537e2017-08-18 01:38:282820#endif
2821
2822// Chrome OS -------------------------------------------------------------------
vabr0215a8e2017-03-28 12:47:342823
2824#if defined(OS_CHROMEOS)
2825
Brett Wilson7b44537e2017-08-18 01:38:282826const char kAcceleratedMjpegDecodeName[] =
2827 "Hardware-accelerated mjpeg decode for captured frame";
2828const char kAcceleratedMjpegDecodeDescription[] =
2829 "Enable hardware-accelerated mjpeg decode for captured frame where "
2830 "available.";
vabr0215a8e2017-03-28 12:47:342831
Reka Normana11e57fc2019-01-29 21:56:582832const char kAppServiceAshName[] = "App Service Ash";
2833const char kAppServiceAshDescription[] =
2834 "Use the App Service to provide data to the Ash UI, such as the shelf and "
2835 "app list.";
2836
Bruno Kim Medeiros Cesarb98fe1d82018-06-06 18:11:522837const char kArcAvailableForChildName[] = "Allow ARC for child accounts";
2838const char kArcAvailableForChildDescription[] =
2839 "Allow child accounts to start Android apps.";
2840
Brett Wilson7b44537e2017-08-18 01:38:282841const char kArcBootCompleted[] = "Load Android apps automatically";
2842const char kArcBootCompletedDescription[] =
2843 "Allow Android apps to start automatically after signing in.";
vabr0215a8e2017-03-28 12:47:342844
Luum Habtemariamdaa8fd22018-06-25 22:39:432845const char kArcCupsApiName[] = "ARC CUPS API";
2846const char kArcCupsApiDescription[] =
2847 "Enables support of libcups APIs from ARC";
2848
Ryo Hashimoto8f4b30ced2019-04-08 12:14:192849const char kArcCustomTabsExperimentName[] =
2850 "Enable Custom Tabs experiment for ARC";
2851const char kArcCustomTabsExperimentDescription[] =
2852 "Allow Android apps to use Custom Tabs."
2853 "This feature only works on the Canary and Dev channels.";
2854
Naoki Fukino153de8a2019-01-22 08:37:542855const char kArcDocumentsProviderName[] = "ARC DocumentsProvider integration";
2856const char kArcDocumentsProviderDescription[] =
2857 "Enables DocumentsProvider integration in Chrome OS Files app.";
2858
Satoshi Niwa8b1d5282018-10-24 04:53:032859const char kArcFilePickerExperimentName[] =
2860 "Enable file picker experiment for ARC";
2861const char kArcFilePickerExperimentDescription[] =
2862 "Enables using Chrome OS file picker in ARC.";
2863
[email protected]939ceae2019-01-29 17:00:152864const char kArcGraphicBuffersVisualizationToolName[] =
2865 "Enable ARC graphic buffers visualization tool";
2866const char kArcGraphicBuffersVisualizationToolDescription[] =
2867 "Enable ARC graphic buffers visualization tool "
2868 "(chrome://arc-graphics-tracing).";
2869
Lev Rumyantsev7a8544312017-08-18 19:26:512870const char kArcNativeBridgeExperimentName[] =
2871 "Enable native bridge experiment for ARC";
2872const char kArcNativeBridgeExperimentDescription[] =
2873 "Enables experimental native bridge feature.";
2874
Jesse Schettlerc3d0a652019-04-23 18:49:242875const char kArcPrintSpoolerExperimentName[] =
2876 "Enable print spooler experiment for ARC";
2877const char kArcPrintSpoolerExperimentDescription[] =
Jesse Schettler10204aa92019-04-26 23:37:092878 "Enables using Chrome OS print system and print preview in ARC."
2879 "This feature only works on the Canary and Dev channels.";
Jesse Schettlerc3d0a652019-04-23 18:49:242880
lgchengecd1c1a62018-01-09 02:59:462881const char kArcUsbHostName[] = "Enable ARC USB host integration";
2882const char kArcUsbHostDescription[] =
2883 "Allow Android apps to use USB host feature on ChromeOS devices.";
2884
Yusuke Sato7e790eb2019-06-06 00:21:042885const char kArcUsbStorageUIName[] = "Enable ARC USB Storage UI";
2886const char kArcUsbStorageUIDescription[] =
2887 "Enable experimental UI for controlling ARC access to USB storage devices.";
2888
Kevin Cernekeeb7f96a52017-10-25 17:40:182889const char kArcVpnName[] = "Enable ARC VPN integration";
2890const char kArcVpnDescription[] =
2891 "Allow Android VPN clients to tunnel Chrome traffic.";
2892
Qiang Xu045aff222018-05-21 23:21:012893const char kAshEnableDisplayMoveWindowAccelsName[] =
2894 "Enable shortcuts for moving window between displays.";
2895const char kAshEnableDisplayMoveWindowAccelsDescription[] =
2896 "Enable shortcuts for moving window between displays.";
2897
Sammie Quonfe640ca2019-01-30 17:54:182898const char kAshEnableOverviewRoundedCornersName[] =
2899 "Enable rounded corners in overview mode.";
2900const char kAshEnableOverviewRoundedCornersDescription[] =
2901 "Enables rounded corners on overview windows.";
2902
Qiang Xu045aff222018-05-21 23:21:012903const char kAshEnablePersistentWindowBoundsName[] =
2904 "Enable persistent window bounds in multi-displays scenario.";
2905const char kAshEnablePersistentWindowBoundsDescription[] =
2906 "Enable persistent window bounds in multi-displays scenario.";
2907
Eliot Courtneye87a9c32018-11-20 03:33:022908const char kAshEnablePipRoundedCornersName[] =
2909 "Enable Picture-in-Picture rounded corners.";
2910const char kAshEnablePipRoundedCornersDescription[] =
2911 "Enable rounded corners on the Picture-in-Picture window.";
2912
Andrew Moylan2db11cd2019-05-22 14:25:152913const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
2914const char kAshEnableUnifiedDesktopDescription[] =
2915 "Enable unified desktop mode which allows a window to span multiple "
2916 "displays.";
2917
2918extern const char kAshNotificationStackingBarRedesignName[] =
2919 "Redesigned notification stacking bar";
2920extern const char kAshNotificationStackingBarRedesignDescription[] =
2921 "Enables the redesigned notification stacking bar UI with a \"Clear all\" "
2922 "button.";
2923
Min Chen3e342562019-05-04 00:08:362924const char kAshSwapSideVolumeButtonsForOrientationName[] =
2925 "Swap side volume buttons to match screen orientation.";
2926const char kAshSwapSideVolumeButtonsForOrientationDescription[] =
2927 "Make the side volume button that's closer to the top/right always "
2928 "increase the volume and the button that's closer to the bottom/left "
2929 "always decrease the volume.";
2930
Ryan Hansberry7c6c2b22019-06-18 21:07:142931const char kBluetoothAggressiveAppearanceFilterName[] =
2932 "Aggressive Bluetooth device filtering";
2933const char kBluetoothAggressiveAppearanceFilterDescription[] =
2934 "Enables a more aggressive Bluetooth filter in the UI to hide devices that "
2935 "likely cannot be connected to.";
2936
Sean Kau5e956192017-10-06 22:25:172937const char kBulkPrintersName[] = "Bulk Printers Policy";
2938const char kBulkPrintersDescription[] = "Enables the new bulk printers policy";
2939
Xiaochu Liu51d03fd2017-09-08 23:51:022940const char kCrOSContainerName[] = "Chrome OS Container";
2941const char kCrOSContainerDescription[] =
2942 "Enable the use of Chrome OS Container utility.";
2943
Brett Wilson7b44537e2017-08-18 01:38:282944const char kCrosRegionsModeName[] = "Cros-regions load mode";
2945const char kCrosRegionsModeDescription[] =
2946 "This flag controls cros-regions load mode";
2947const char kCrosRegionsModeDefault[] = "Default";
2948const char kCrosRegionsModeOverride[] = "Override VPD values.";
2949const char kCrosRegionsModeHide[] = "Hide VPD values.";
vabr0215a8e2017-03-28 12:47:342950
Daniel Ng96ab0c82019-01-16 01:21:552951const char kCrostiniAppSearchName[] = "Crostini App Search";
2952const char kCrostiniAppSearchDescription[] =
2953 "Enable search and installation of Crostini apps in the launcher.";
2954
Joel Hockey42387102019-01-10 01:19:322955const char kCrostiniBackupName[] = "Crostini Backup";
2956const char kCrostiniBackupDescription[] = "Enable Crostini export and import.";
2957
Ben Wells7238dd02019-05-02 08:20:322958const char kCrostiniGpuSupportName[] = "Crostini GPU Support";
2959const char kCrostiniGpuSupportDescription[] = "Enable Crostini GPU support.";
2960
Nicholas Verne89be53b2019-03-27 23:08:322961const char kCrostiniUsbAllowUnsupportedName[] =
2962 "Crostini Usb Allow Unsupported";
2963const char kCrostiniUsbAllowUnsupportedDescription[] =
2964 "Allow mounting unsupported Usb devices in Crostini. At your own risk. "
2965 "To enable, Crostini Usb Support must also be enabled.";
2966
Josh Pratt57cea392018-10-30 02:59:062967const char kCrostiniUsbSupportName[] = "Crostini Usb Support";
2968const char kCrostiniUsbSupportDescription[] =
2969 "Enable mounting Usb devices in Crostini.";
2970
Luum Habtemariamea93f022019-05-09 23:21:022971const char kCrosVmCupsProxyName[] = "Chrome OS CUPS Proxy";
2972const char kCrosVmCupsProxyDescription[] =
2973 "Supports printing from VMs on Chrome OS.";
2974
Josh Nohle2f82dcc2018-12-17 23:11:232975const char kCryptAuthV2EnrollmentName[] = "CryptAuth v2 Enrollment";
2976const char kCryptAuthV2EnrollmentDescription[] =
2977 "Use the CryptAuth v2 Enrollment protocol.";
2978
Jimmy Gongfa6a6ea2019-05-22 23:38:242979const char kCupsPrintersUiOverhaulName[] = "Cups Printers UI overhaul";
2980const char kCupsPrintersUiOverhaulDescription[] =
2981 "Enables the new native printing UI in settings.";
2982
Thanh Nguyena4c933442019-05-11 03:43:552983const char kDisableCancelAllTouchesName[] = "Disable CancelAllTouches()";
2984const char kDisableCancelAllTouchesDescription[] =
2985 "If enabled, a canceled touch will not force all other touches to be "
2986 "canceled.";
2987
Daniele Castagna893d822e2019-03-08 21:37:112988const char kDisableExplicitDmaFencesName[] = "Disable explicit dma-fences";
2989const char kDisableExplicitDmaFencesDescription[] =
2990 "Always rely on implicit syncrhonization between GPU and display "
2991 "controller instead of using dma-fences explcitily when available.";
2992
Sammie Quonef6b4882017-09-14 16:50:052993const char kDisableTabletAutohideTitlebarsName[] =
2994 "Disable autohide titlebars in tablet mode";
2995const char kDisableTabletAutohideTitlebarsDescription[] =
2996 "Disable tablet mode autohide titlebars functionality. The user will be "
2997 "able to see the titlebar in tablet mode.";
2998
Ahmed Fakhry4f567e692018-10-16 15:51:082999const char kDoubleTapToZoomInTabletModeName[] =
3000 "Double-tap to zoom in tablet mode";
3001const char kDoubleTapToZoomInTabletModeDescription[] =
3002 "If Enabled, double tapping in webpages while in tablet mode will zoom the "
3003 "page.";
3004
Vladislav Kuzkokov22f860ed2019-05-22 16:26:543005const char kEnableAdvancedPpdAttributesName[] =
3006 "Enables advanced PPD attributes";
3007const char kEnableAdvancedPpdAttributesDescription[] =
3008 "Enables advanced settings on CUPS printers";
3009
Andrew Moylan2db11cd2019-05-22 14:25:153010const char kEnableAppDataSearchName[] = "Enable app data search in launcher";
3011const char kEnableAppDataSearchDescription[] =
3012 "Allow launcher search to access data available through Firebase App "
3013 "Indexing";
3014
3015const char kEnableAppReinstallZeroStateName[] =
3016 "Enable Zero State App Reinstall Suggestions.";
3017const char kEnableAppReinstallZeroStateDescription[] =
3018 "Enable Zero State App Reinstall Suggestions feature in launcher, which "
3019 "will show app reinstall recommendations at end of zero state list.";
3020
Matthew Mourgoscf22b4b2019-03-06 23:46:393021const char kEnableAppGridGhostName[] = "App Grid Ghosting";
3022const char kEnableAppGridGhostDescription[] =
3023 "Enables ghosting during an item drag in launcher.";
3024
Daniel Zhang01399072018-08-16 22:28:203025const char kEnableAppListSearchAutocompleteName[] =
3026 "App List Search Autocomplete";
3027const char kEnableAppListSearchAutocompleteDescription[] =
3028 "Allow App List search box to autocomplete queries for Google searches and "
3029 "apps.";
3030
Lei Zhang0a318af2018-11-14 02:19:463031const char kEnableArcUnifiedAudioFocusName[] =
Becca Hughes34415e82018-10-05 18:47:373032 "Enable unified audio focus on ARC";
Lei Zhang0a318af2018-11-14 02:19:463033const char kEnableArcUnifiedAudioFocusDescription[] =
Becca Hughes34415e82018-10-05 18:47:373034 "If audio focus is enabled in Chrome then this will delegate audio focus "
3035 "control in Android apps to Chrome.";
3036
Yue Liebaa9952018-12-07 21:41:263037const char kEnableAssistantAppSupportName[] = "Enable Assistant App Support";
3038const char kEnableAssistantAppSupportDescription[] =
3039 "Enable the Assistant App Support feature";
3040
Meilin Wangb57f92f2019-04-19 04:27:103041const char kEnableAssistantKeyRemappingName[] =
3042 "Enable Assistant Key Remapping";
3043const char kEnableAssistantKeyRemappingDescription[] =
3044 "Allow Assistant key remapping in the keyboard settings.";
3045
Xiaohui Chenb523747b2019-03-14 23:38:323046const char kEnableAssistantLauncherIntegrationName[] =
3047 "Assistant & Launcher integration";
3048const char kEnableAssistantLauncherIntegrationDescription[] =
3049 "Combine Launcher search with the power of Assistant to provide the most "
3050 "useful answer for each query. Requires Assistant to be enabled.";
3051
3052const char kEnableAssistantVoiceMatchName[] = "Enable Assistant Voice Match";
3053const char kEnableAssistantVoiceMatchDescription[] =
3054 "Enable the Assistant Voice Match feature";
3055
Alex Newcomere5a362c2019-05-02 19:31:353056const char kEnableBackgroundBlurName[] = "Enable background blur.";
3057const char kEnableBackgroundBlurDescription[] =
3058 "Enables background blur for the Launcher and Shelf.";
3059
Lei Zhang0ca70ea2018-09-07 17:51:013060const char kEnableChromeOsAccountManagerName[] = "Enable Account Manager";
3061const char kEnableChromeOsAccountManagerDescription[] =
Kushagra Sinha8a181fc2018-08-20 17:15:493062 "Enables the Chrome OS Account Manager";
3063
Alexander Alekseev38e1e0a2018-11-08 22:48:483064const char kEnableDiscoverAppName[] = "Enable Discover App";
3065const char kEnableDiscoverAppDescription[] =
3066 "Enable Discover App icon in launcher.";
3067
Brett Wilson7b44537e2017-08-18 01:38:283068const char kEnableEncryptionMigrationName[] =
3069 "Enable encryption migration of user data";
3070const char kEnableEncryptionMigrationDescription[] =
3071 "If enabled and the device supports ARC, the user will be asked to update "
3072 "the encryption of user data when the user signs in.";
vabr0215a8e2017-03-28 12:47:343073
Harry Cuttscfe6d934f2019-06-05 21:45:553074const char kEnableGesturePropertiesDBusServiceName[] =
3075 "Enable gesture properties D-Bus service";
3076const char kEnableGesturePropertiesDBusServiceDescription[] =
3077 "Enable a D-Bus service for accessing gesture properties, which are used "
3078 "to configure input devices.";
3079
Xiaohui Chenfb0943e2018-10-16 22:44:373080const char kEnableGoogleAssistantName[] = "Enable Google Assistant";
3081const char kEnableGoogleAssistantDescription[] =
3082 "Enable an experimental Assistant implementation that will work on all "
3083 "Chromebooks.";
3084
Xiaohui Chenf4283f32018-11-26 20:02:503085const char kEnableGoogleAssistantDspName[] =
3086 "Enable Google Assistant with hardware-based hotword";
3087const char kEnableGoogleAssistantDspDescription[] =
3088 "Enable an experimental feature that uses hardware-based hotword detection "
3089 "for Assistant. Only a limited number of devices have this type of "
3090 "hardware support.";
3091
Xiaohui Chenc3baca42018-11-30 19:29:373092const char kEnableGoogleAssistantStereoInputName[] =
3093 "Enable Google Assistant with stereo audio input";
3094const char kEnableGoogleAssistantStereoInputDescription[] =
3095 "Enable an experimental feature that uses stereo audio input for hotword "
3096 "and voice to text detection in Google Assistant.";
3097
Qiang Xu045aff222018-05-21 23:21:013098const char kEnableHomeLauncherName[] = "Enable home launcher";
3099const char kEnableHomeLauncherDescription[] =
3100 "Enable home launcher in tablet mode.";
3101
Andrew Moylan97585272019-02-19 19:01:223102const char kEnableMyFilesVolumeName[] = "Enable MyFiles as Volume";
3103const char kEnableMyFilesVolumeDescription[] =
3104 "Enables use of MyFiles as a read/write volume. This should be only "
3105 "used for testing or for trying to restore the previous Downloads content.";
3106
Vladislav Kaznacheevaa213a02018-10-29 17:54:283107const char kEnablePlayStoreSearchName[] = "Enable Play Store search";
3108const char kEnablePlayStoreSearchDescription[] =
3109 "Enable Play Store search in launcher.";
3110
Jazz Xu2e5886662018-12-14 00:38:483111const char kEnableVideoPlayerNativeControlsName[] =
3112 "Enable native controls in video player app";
3113const char kEnableVideoPlayerNativeControlsDescription[] =
3114 "Enable native controls in video player app";
3115
Ahmed Fakhry006607c2019-05-31 00:40:513116const char kEnableVirtualDesksName[] = "Enable Virtual Desks";
3117const char kEnableVirtualDesksDescription[] =
3118 "A preview of the upcoming Virtual Desks features on Chrome OS devices.";
3119
Lei Zhang0ca70ea2018-09-07 17:51:013120const char kEnableZeroStateSuggestionsName[] = "Enable Zero State Suggetions";
3121const char kEnableZeroStateSuggestionsDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013122 "Enable Zero State Suggestions feature in Launcher, which will show "
Vladislav Kaznacheevaa213a02018-10-29 17:54:283123 "suggestions when launcher search box is active with an empty query";
Sammie Quon248ccef2018-08-28 23:00:013124
Akihiro Ota3ff6f8a2019-01-18 17:43:043125const char kExperimentalAccessibilityChromeVoxLanguageSwitchingName[] =
3126 "Enable experimental ChromeVox language switching.";
3127const char kExperimentalAccessibilityChromeVoxLanguageSwitchingDescription[] =
3128 "Enable ChromeVox language switching, which changes ChromeVox's "
3129 "output language upon detection of new language.";
3130
Akihiro Ota000c5e8a2019-03-29 21:48:013131const char kExperimentalAccessibilityChromeVoxRichTextIndicationName[] =
3132 "Enable experimental ChromeVox rich text indication.";
3133const char kExperimentalAccessibilityChromeVoxRichTextIndicationDescription[] =
3134 "Enable ChromeVox rich text indication, which automatically notifies the "
3135 "user of text styling.";
3136
Alex Danilo284b4482019-04-02 09:20:173137const char kFileManagerFeedbackPanelDescription[] =
Alex Danilo4a4ddcb2019-06-05 23:39:263138 "Enable feedback panel in the Files app.";
Alex Danilo284b4482019-04-02 09:20:173139const char kFileManagerFeedbackPanelName[] = "Files App. feedback panel";
3140
Austin Tankiangf0961b12019-06-11 08:30:423141const char kFileManagerFormatDialogName[] =
3142 "Enable enhanced Files App format dialog.";
3143const char kFileManagerFormatDialogDescription[] =
3144 "Enable the enhanced external media format dialog in Files App, with "
3145 "with support for labelling and also NTFS/exFAT filesystems.";
3146
Noel Gordonf4315f42019-05-14 04:42:203147const char kFileManagerPiexWasmName[] = "Enable FilesApp piex-wasm module";
3148const char kFileManagerPiexWasmDescription[] =
3149 "Enable the FilesApp piex-wasm raw image extractor module.";
3150
Akihiro Ota000c5e8a2019-03-29 21:48:013151const char kFileManagerTouchModeName[] = "Files App. touch mode";
3152const char kFileManagerTouchModeDescription[] =
3153 "Touchscreen-specific interactions of the Files app.";
3154
3155const char kFirstRunUiTransitionsName[] =
3156 "Animated transitions in the first-run tutorial";
3157const char kFirstRunUiTransitionsDescription[] =
3158 "Transitions during first-run tutorial are animated.";
3159
Sheng-Hao Tsao874327a2019-04-30 08:13:003160const char kForceUseChromeCameraName[] =
3161 "Open Chrome camera app when clicking on camera icon";
3162const char kForceUseChromeCameraDescription[] =
3163 "Open Chrome camera app when clicking on camera icon instead of "
3164 "GoogleCamera app, regardless of whether Android runtime is enabled.";
3165
Andrew Moylan97585272019-02-19 19:01:223166const char kFsNosymfollowName[] =
3167 "Prevent symlink traversal on user-supplied filesystems.";
3168const char kFsNosymfollowDescription[] =
3169 "Causes user-supplied filesystems to be mounted with the 'nosymfollow'"
3170 " option, so the chromuimos LSM denies symlink traversal on the"
3171 " filesystem.";
3172
Becca Hughes71465532019-04-12 19:18:553173const char kHideArcMediaNotificationsName[] = "Hide ARC media notifications";
3174const char kHideArcMediaNotificationsDescription[] =
3175 "Hides media notifications for ARC apps. Requires "
3176 "#enable-media-session-notifications to be enabled.";
3177
Leo Zhang49c34d22019-04-02 09:57:593178const char kImeInputLogicFstName[] = "Enable FST Input Logic on IME";
3179const char kImeInputLogicFstDescription[] =
3180 "Enable FST Input Logic to replace the IME legacy input logic on NaCl";
3181
Ahmed Fakhry15d707e2019-02-22 23:54:213182const char kListAllDisplayModesName[] = "List all display modes";
3183const char kListAllDisplayModesDescription[] =
3184 "Enables listing all external displays' modes in the display settings.";
3185
Megumi Hattori5a0d4182018-03-06 11:09:503186const char kLockScreenNotificationName[] = "Lock screen notification";
3187const char kLockScreenNotificationDescription[] =
3188 "Enable notifications on the lock screen.";
3189
Becca Hughes71465532019-04-12 19:18:553190const char kMediaSessionNotificationsName[] = "Media session notifications";
3191const char kMediaSessionNotificationsDescription[] =
3192 "Shows notifications for media sessions showing the currently playing "
3193 "media and providing playback controls";
3194
vabr0215a8e2017-03-28 12:47:343195const char kNetworkPortalNotificationName[] =
3196 "Notifications about captive portals";
vabr0215a8e2017-03-28 12:47:343197const char kNetworkPortalNotificationDescription[] =
3198 "If enabled, notification is displayed when device is connected to a "
3199 "network behind captive portal.";
3200
Anand K. Mistrydb5e0102018-10-04 04:24:003201const char kNewZipUnpackerName[] = "ZIP Archiver (unpacking)";
Brett Wilson7b44537e2017-08-18 01:38:283202const char kNewZipUnpackerDescription[] =
Anand K. Mistrydb5e0102018-10-04 04:24:003203 "Use the ZIP Archiver for mounting/unpacking ZIP files";
vabr0215a8e2017-03-28 12:47:343204
vabr0215a8e2017-03-28 12:47:343205const char kPrinterProviderSearchAppName[] =
3206 "Chrome Web Store Gallery app for printer drivers";
vabr0215a8e2017-03-28 12:47:343207const char kPrinterProviderSearchAppDescription[] =
3208 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:193209 "searches Chrome Web Store for extensions that support printing to a USB "
3210 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:343211
Andrew Moylan97585272019-02-19 19:01:223212const char kSchedulerConfigurationName[] = "Scheduler Configuration";
3213const char kSchedulerConfigurationDescription[] =
3214 "Instructs the OS to use a specific scheduler configuration setting.";
Greg Kerr33cd4662019-06-17 07:03:013215const char kSchedulerConfigurationConservative[] =
3216 "Disables Hyper-Threading on relevant CPUs.";
3217const char kSchedulerConfigurationPerformance[] =
3218 "Enables Hyper-Threading on relevant CPUs.";
Andrew Moylan97585272019-02-19 19:01:223219
Alberto Herreraaecc85512019-06-13 21:14:253220const char kShowBluetoothDeviceBatteryName[] = "Show Bluetooth device battery";
3221const char kShowBluetoothDeviceBatteryDescription[] =
3222 "Enables showing the battery level of connected and supported Bluetooth "
3223 "devices in the System Tray and Settings UI.";
3224
James Cook0ba192bf2017-12-01 20:53:113225const char kShowTapsName[] = "Show taps";
3226const char kShowTapsDescription[] =
3227 "Draws a circle at each touch point, which makes touch points more obvious "
3228 "when projecting or mirroring the display. Similar to the Android OS "
3229 "developer option.";
3230
3231const char kShowTouchHudName[] = "Show HUD for touch points";
3232const char kShowTouchHudDescription[] =
3233 "Shows a trail of colored dots for the last few touch points. Pressing "
3234 "Ctrl-Alt-I shows a heads-up display view in the top-left corner. Helps "
3235 "debug hardware issues that generate spurious touch events.";
3236
Andrew Moylan60ac7c0c2019-05-28 06:52:183237const char kSmartDimModelV3Name[] = "Smart Dim updated model";
3238const char kSmartDimModelV3Description[] =
Andrew Moylan5bb68b422019-05-27 04:56:453239 "Uses an updated model for user activity prediction (Smart Dim).";
3240
Jorge Gil5a8ccde2018-07-10 01:46:213241const char kSmartTextSelectionName[] = "Smart Text Selection";
3242const char kSmartTextSelectionDescription[] =
3243 "Shows quick actions for text "
3244 "selections in the context menu.";
3245
May Lippertacea1f52019-05-29 21:19:483246const char kSplitSettingsName[] = "Split OS and browser settings";
3247const char kSplitSettingsDescription[] =
3248 "Show separate settings for the OS and browser";
3249
Bailey Berro6c989672019-04-11 19:19:203250const char kStreamlinedUsbPrinterSetupName[] =
3251 "Streamlined USB Printer Setup Flow";
3252const char kStreamlinedUsbPrinterSetupDescription[] =
3253 "Automatically sets up capable USB printers when plugged in. Shows a "
3254 "notification with the setup result.";
3255
Jon Mannc514fc92019-05-23 21:30:233256const char kSyncWifiConfigurationsName[] = "Sync Wi-Fi network configurations";
3257const char kSyncWifiConfigurationsDescription[] =
3258 "Enables the option to sync Wi-Fi network configurations with Chrome Sync.";
3259
Brett Wilson7b44537e2017-08-18 01:38:283260const char kTetherName[] = "Instant Tethering";
3261const char kTetherDescription[] =
3262 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
3263 "phone to share its Internet connection with this device.";
stanisc14bed0b132017-05-10 17:46:373264
Brett Wilson7b44537e2017-08-18 01:38:283265const char kTouchscreenCalibrationName[] =
3266 "Enable/disable touchscreen calibration option in material design settings";
3267const char kTouchscreenCalibrationDescription[] =
3268 "If enabled, the user can calibrate the touch screen displays in "
3269 "chrome://settings/display.";
yhanadac5bff5b2017-05-18 06:37:093270
Qiang Xu045aff222018-05-21 23:21:013271const char kUiDevToolsName[] = "Enable native UI inspection";
3272const char kUiDevToolsDescription[] =
3273 "Enables inspection of native UI elements. For local inspection use "
3274 "chrome://inspect#other";
3275
Andrew Moylan97585272019-02-19 19:01:223276const char kUiShowCompositedLayerBordersName[] =
3277 "Show UI composited layer borders";
3278const char kUiShowCompositedLayerBordersDescription[] =
3279 "Show border around composited layers created by UI.";
3280const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
3281const char kUiShowCompositedLayerBordersSurface[] = "Surface";
3282const char kUiShowCompositedLayerBordersLayer[] = "Layer";
3283const char kUiShowCompositedLayerBordersAll[] = "All";
3284
3285const char kUiSlowAnimationsName[] = "Slow UI animations";
3286const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
Mattias Nissler6bb633f2019-02-13 23:41:463287
Sonny Sasaka7fecfeda2018-07-11 23:47:553288const char kUnfilteredBluetoothDevicesName[] = "Unfiltered Bluetooth devices";
3289const char kUnfilteredBluetoothDevicesDescription[] =
3290 "Shows all Bluetooth devices in UI (System Tray/Settings Page.)";
3291
Allen Webbcdc8e69d2018-09-12 20:36:003292const char kUsbguardName[] = "Block new USB devices at the lock screen.";
3293const char kUsbguardDescription[] =
3294 "Prevents newly connected USB devices from operating at the lock screen"
3295 " until Chrome OS is unlocked to protect against malicious USB devices."
3296 " Already connected USB devices will continue to function.";
3297
Andres Calderon Jaramillo43c0e8a2018-08-21 02:46:233298const char kVaapiJpegImageDecodeAccelerationName[] =
3299 "VA-API JPEG decode acceleration for images";
3300const char kVaapiJpegImageDecodeAccelerationDescription[] =
3301 "Enable or disable decode acceleration of JPEG images (as opposed to camera"
3302 " captures) using the VA-API.";
3303
Brett Wilson7b44537e2017-08-18 01:38:283304const char kVirtualKeyboardName[] = "Virtual Keyboard";
3305const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
3306
Brett Wilson7b44537e2017-08-18 01:38:283307const char kWakeOnPacketsName[] = "Wake On Packets";
3308const char kWakeOnPacketsDescription[] =
3309 "Enables waking the device based on the receipt of some network packets.";
orenb21da031c2017-06-30 21:24:203310
Andrew Moylan2db11cd2019-05-22 14:25:153311// Prefer keeping this section sorted to adding new definitions down here.
Tim Song988f7092019-03-01 03:13:393312
yhanadac5bff5b2017-05-18 06:37:093313#endif // defined(OS_CHROMEOS)
3314
Collin Baker75a29462019-03-13 19:57:313315// All views-based platforms --------------------------------------------------
3316
3317#if defined(TOOLKIT_VIEWS)
3318
Sajad Maysamc30d6f82019-03-19 22:52:503319const char kEnableMDRoundedCornersOnDialogsName[] =
Dana Fried4e177f32019-04-11 23:46:463320 "MD corners on secondary UI";
Sajad Maysamc30d6f82019-03-19 22:52:503321const char kEnableMDRoundedCornersOnDialogsDescription[] =
Dana Fried4e177f32019-04-11 23:46:463322 "Increases corner radius on secondary UI.";
Sajad Maysamc30d6f82019-03-19 22:52:503323
Collin Baker75a29462019-03-13 19:57:313324const char kInstallableInkDropName[] = "Use InstallableInkDrop where supported";
3325const char kInstallableInkDropDescription[] =
3326 "InstallableInkDrop is part of an InkDrop refactoring effort. This enables "
3327 "the pilot implementation where available.";
3328
Collin Baker4ab8ad82019-06-06 17:02:543329const char kReopenTabInProductHelpName[] = "Reopen tab in-product help";
3330const char kReopenTabInProductHelpDescription[] =
3331 "Enable in-product help that guides a user to reopen a tab if it looks "
3332 "like they accidentally closed it.";
3333
Collin Baker75a29462019-03-13 19:57:313334#endif // defined(TOOLKIT_VIEWS)
3335
Brett Wilson7b44537e2017-08-18 01:38:283336// Random platform combinations -----------------------------------------------
3337
Jiajia Qindb252e92019-01-28 11:47:483338#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_CHROMEOS)
3339
3340const char kWebGL2ComputeContextName[] = "WebGL 2.0 Compute";
3341const char kWebGL2ComputeContextDescription[] =
3342 "Enable the use of WebGL 2.0 Compute API.";
3343
3344#endif // defined(OS_WIN) || defined(OS_LINUX) || defined(OS_CHROMEOS)
3345
lanwei83f54452018-06-21 23:51:043346#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3347
3348const char kDirectManipulationStylusName[] = "Direct Manipulation Stylus";
3349const char kDirectManipulationStylusDescription[] =
3350 "If enabled, Chrome will scroll web pages on stylus drag.";
3351
3352#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3353
Henrik Grunell63f2d772018-12-06 17:25:203354#if defined(OS_MACOSX) || defined(OS_CHROMEOS)
3355
3356const char kForceEnableSystemAecName[] = "Force enable system AEC";
3357const char kForceEnableSystemAecDescription[] =
3358 "Use system echo canceller instead of WebRTC echo canceller. If there is "
3359 "no system echo canceller available, getUserMedia with echo cancellation "
3360 "enabled will fail.";
3361
3362#endif // defined(OS_MACOSX) || defined(OS_CHROMEOS)
3363
David Bienvenuc713d502019-02-07 23:46:323364#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_CHROMEOS)
3365
3366const char kWebContentsOcclusionName[] = "Enable occlusion of web contents";
3367const char kWebContentsOcclusionDescription[] =
3368 "If enabled, web contents will behave as hidden when it is occluded by "
3369 "other windows.";
3370
3371#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_CHROMEOS)
3372
Brett Wilson7b44537e2017-08-18 01:38:283373// Feature flags --------------------------------------------------------------
3374
Lei Zhang0a318af2018-11-14 02:19:463375#if defined(DCHECK_IS_CONFIGURABLE)
3376const char kDcheckIsFatalName[] = "DCHECKs are fatal";
3377const char kDcheckIsFatalDescription[] =
3378 "By default Chrome will evaluate in this build, but only log failures, "
3379 "rather than crashing. If enabled, DCHECKs will crash the calling process.";
3380#endif // defined(DCHECK_IS_CONFIGURABLE)
3381
Brett Wilson7b44537e2017-08-18 01:38:283382#if BUILDFLAG(ENABLE_VR)
3383
Alex Cooper151b596e2019-02-21 01:26:573384const char kWebXrOrientationSensorDeviceName[] = "Orientation sensors for XR";
3385const char kWebXrOrientationSensorDeviceDescription[] =
3386 "Allow use of orientation sensors for XR if present";
3387
Bill Orr103ed272018-02-14 21:23:053388#if BUILDFLAG(ENABLE_OCULUS_VR)
3389const char kOculusVRName[] = "Oculus hardware support";
3390const char kOculusVRDescription[] =
3391 "If enabled, Chrome will use Oculus devices for VR (supported only on "
3392 "Windows 10 or later).";
3393#endif // ENABLE_OCULUS_VR
3394
Bill Orr49527562017-11-22 16:58:483395#if BUILDFLAG(ENABLE_OPENVR)
3396const char kOpenVRName[] = "OpenVR hardware support";
3397const char kOpenVRDescription[] =
Bill Orr5056e692018-01-17 02:08:073398 "If enabled, Chrome will use OpenVR devices for VR (supported only on "
3399 "Windows 10 or later).";
Bill Orr49527562017-11-22 16:58:483400#endif // ENABLE_OPENVR
3401
Bill Orrd2af6bd52019-01-23 02:50:243402#if BUILDFLAG(ENABLE_WINDOWS_MR)
3403const char kWindowsMixedRealityName[] = "Windows Mixed Reality support";
3404const char kWindowsMixedRealityDescription[] =
3405 "If enabled, Chrome will use Windows Mixed Reality devices for VR"
3406 " (supported only on Windows 10 or later).";
3407#endif // ENABLE_WINDOWS_MR
3408
Patrick Tofafbf66232019-06-16 08:39:153409#if BUILDFLAG(ENABLE_OPENXR)
3410const char kOpenXRName[] = "OpenXR support";
3411const char kOpenXRDescription[] =
3412 "If enabled, Chrome will use OpenXR Backend for VR.";
3413#endif // ENABLE_OPENXR
3414
Bill Orrecfb9fe2018-10-02 00:11:103415#if BUILDFLAG(ENABLE_ISOLATED_XR_SERVICE)
3416const char kXRSandboxName[] = "XR device sandboxing";
3417const char kXRSandboxDescription[] =
3418 "If enabled, Chrome will host VR APIs in a restricted process on desktop.";
3419#endif // ENABLE_ISOLATED_XR_SERVICE
3420
Brett Wilson7b44537e2017-08-18 01:38:283421#endif // ENABLE_VR
3422
Derek Schuff71d9a922019-04-24 21:36:003423#if BUILDFLAG(ENABLE_NACL)
3424const char kNaclName[] = "Native Client";
3425const char kNaclDescription[] =
3426 "Support Native Client for all web applications, even those that were not "
3427 "installed from the Chrome Web Store.";
3428#endif // ENABLE_NACL
3429
Lei Zhang802201c2018-11-14 18:16:283430#if BUILDFLAG(ENABLE_PLUGINS)
3431
dstockwellcc759202019-01-11 00:42:123432#if defined(OS_CHROMEOS)
3433const char kPdfAnnotations[] = "PDF Annotations";
Weidong Guo577fe9ac2019-01-28 19:58:103434const char kPdfAnnotationsDescription[] = "Enable annotating PDF documents.";
dstockwellcc759202019-01-11 00:42:123435#endif // defined(OS_CHROMEOS)
3436
Lei Zhang802201c2018-11-14 18:16:283437const char kPdfFormSaveName[] = "Save PDF Forms";
3438const char kPdfFormSaveDescription[] =
3439 "Enable saving PDFs with filled form data.";
3440
3441const char kPdfIsolationName[] = "PDF Isolation";
3442const char kPdfIsolationDescription[] =
3443 "Render PDF files from different origins in different plugin processes.";
3444
3445#endif // BUILDFLAG(ENABLE_PLUGINS)
3446
Brett Wilson7b44537e2017-08-18 01:38:283447#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3448
3449const char kAutofillCreditCardUploadName[] =
3450 "Enable offering upload of Autofilled credit cards";
3451const char kAutofillCreditCardUploadDescription[] =
3452 "Enables a new option to upload credit cards to Google Payments for sync "
3453 "to all Chrome devices.";
3454
3455#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3456
Tomas Popela253a5832019-01-14 17:22:103457#if defined(WEBRTC_USE_PIPEWIRE)
3458
3459extern const char kWebrtcPipeWireCapturerName[] = "WebRTC PipeWire support";
3460extern const char kWebrtcPipeWireCapturerDescription[] =
3461 "When enabled the WebRTC will use the PipeWire multimedia server for "
3462 "capturing the desktop content on the Wayland display server.";
3463
3464#endif // #if defined(WEBRTC_USE_PIPEWIRE)
3465
Stephen Chenneyde6e5c82019-01-21 01:56:043466const char kAvoidFlashBetweenNavigationName[] =
3467 "Enable flash avoidance between same-origin navigations";
3468const char kAvoidFlahsBetweenNavigationDescription[] =
3469 "Enables experimental flash avoidance when navigating between pages "
3470 "in the same origin. This feature is in the implementation stages and "
3471 "currently has no effect.";
3472
Brett Wilson7b44537e2017-08-18 01:38:283473// ============================================================================
3474// Don't just add flags to the end, put them in the right section in
3475// alphabetical order just like the header file.
3476// ============================================================================
3477
vabr0215a8e2017-03-28 12:47:343478} // namespace flag_descriptions