blob: 8d6dd75bec9f2f97e7d35b1f0a6391454ab0005e [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
21const char kAffiliationBasedMatchingName[] =
22 "Affiliation based matching in password manager";
23const char kAffiliationBasedMatchingDescription[] =
24 "Allow credentials stored for Android applications to be filled into "
25 "corresponding websites.";
26
27const char kAllowInsecureLocalhostName[] =
28 "Allow invalid certificates for resources loaded from localhost.";
29const char kAllowInsecureLocalhostDescription[] =
30 "Allows requests to localhost over HTTPS even when an invalid certificate "
31 "is presented.";
32
33const char kAllowNaclSocketApiName[] = "NaCl Socket API.";
34const char kAllowNaclSocketApiDescription[] =
35 "Allows applications to use NaCl Socket API. Use only to test NaCl "
36 "plugins.";
37
Kunihiko Sakamoto4d407982018-07-10 04:56:2938const char kAllowSignedHTTPExchangeCertsWithoutExtensionName[] =
39 "Allow Signed HTTP Exchange certificates without extension";
40const char kAllowSignedHTTPExchangeCertsWithoutExtensionDescription[] =
41 "Accepts Origin-Signed HTTP Exchanges to be signed with certificates "
42 "that do not have CanSignHttpExchangesDraft extension. Requires "
43 "#enable-signed-http-exchange. Warning: Enabling this may pose a security "
44 "risk.";
45
Henrique Nakashima52d76952018-11-30 19:35:5846const char kAllowStartingServiceManagerOnlyName[] =
47 "Allow starting service manager only";
48const char kAllowStartingServiceManagerOnlyDescription[] =
49 "Allows running a lightweight service-manager-only mode, in which services "
50 "can run without the browser process.";
51
Jeremy Klein586b4ccc2018-06-09 21:05:4852const char kAndroidMessagesIntegrationName[] = "Android Messages integration";
53const char kAndroidMessagesIntegrationDescription[] =
54 "Enables Chrome OS integration with Android messages.";
55
Kyle Horimoto2d838ec2018-12-26 19:41:1656const char kUseMessagesGoogleComDomainName[] = "Use messages.google.com domain";
57const char kUseMessagesGoogleComDomainDescription[] =
58 "Use the messages.google.com domain as part of the \"Messages\" "
59 "feature under \"Connected Devices\" settings.";
60
Kamila472a5942018-11-26 09:48:2761const char kAndroidSiteSettingsUIRefreshName[] =
62 "Android Site Settings UI changes.";
63const char kAndroidSiteSettingsUIRefreshDescription[] =
Kamila02f7e072018-10-08 09:50:2864 "Enable the new UI "
65 "changes in Site Settings in Android.";
66
Brett Wilsonf27ff602017-07-07 22:28:4767const char kAppBannersName[] = "App Banners";
68const char kAppBannersDescription[] =
69 "Enable the display of Progressive Web App banners, which prompt a user to "
70 "add a web app to their shelf, or other platform-specific equivalent.";
71
Ioana Pandelef9689a062018-06-22 15:35:5172const char kAutomaticPasswordGenerationName[] = "Automatic password generation";
73const char kAutomaticPasswordGenerationDescription[] =
74 "Allow Chrome to offer to generate passwords when it detects account "
75 "creation pages.";
76
Michael Lippautz6081dfa2018-10-18 13:10:1477const char kEnableBlinkHeapUnifiedGarbageCollectionName[] =
78 "Blink Heap Unified Garbage Collection";
79const char kEnableBlinkHeapUnifiedGarbageCollectionDescription[] =
80 "Enable unified garbage collection in Blink";
81
Ulan Degenbaevb5466a92018-07-19 12:35:3482const char kEnableBloatedRendererDetectionName[] = "Bloated renderer detection";
83const char kEnableBloatedRendererDetectionDescription[] =
84 "Enable bloated renderer detection";
85
Khushalba202212017-07-12 19:53:4986const char kAsyncImageDecodingName[] = "AsyncImageDecoding";
87const char kAsyncImageDecodingDescription[] =
88 "Enables asynchronous decoding of images from raster for web content";
89
sebsgca14b092018-12-07 16:56:1590extern const char kAutofillAlwaysShowServerCardsInSyncTransportName[] =
91 "AlwaysShowServerCardsInSyncTransport";
92extern const char kAutofillAlwaysShowServerCardsInSyncTransportDescription[] =
93 "Always show server cards when in sync transport mode for wallet data";
94
Roger McFarlane2eceba982018-05-18 01:37:1195const char kAutofillCacheQueryResponsesName[] =
96 "Cache Autofill Query Responses";
97const char kAutofillCacheQueryResponsesDescription[] =
98 "When enabled, autofill will cache the responses it receives from the "
99 "crowd-sourced field type prediction server.";
100
Jeffrey Cohen05cdafa392018-08-15 20:49:17101const char kAutofillEnableCompanyNameName[] =
102 "Enable Autofill Company Name field";
103const char kAutofillEnableCompanyNameDescription[] =
104 "When enabled, Company Name fields will be auto filled";
105
sebsge35b762c2018-03-29 20:33:27106const char kAutofillDynamicFormsName[] = "Autofill Dynamic Forms";
107const char kAutofillDynamicFormsDescription[] =
108 "Allows autofill to fill dynamically changing forms";
109
Anne Lime625362e2018-08-29 03:13:25110const char kAutofillNoLocalSaveOnUploadSuccessName[] =
111 "Disable locally saving card when credit card upload succeeds";
112const char kAutofillNoLocalSaveOnUploadSuccessDescription[] =
113 "When enabled, no local copy of server card will be saved when credit card "
114 "upload succeeds.";
115
Parastoo Geranmayeh2dcd14f92018-06-01 17:08:39116const char kAutofillPrefilledFieldsName[] = "Autofill Prefilled Fields";
117const char kAutofillPrefilledFieldsDescription[] =
118 "Allows autofill to fill fields previously filled by the website";
119
Lei Zhang0ca70ea2018-09-07 17:51:01120const char kAutofillPreviewStyleExperimentName[] =
Fabio Tirelo9b423c7b2018-08-15 14:32:18121 "Autofill Preview Style Experiment";
Lei Zhang0ca70ea2018-09-07 17:51:01122const char kAutofillPreviewStyleExperimentDescription[] =
Fabio Tirelo9b423c7b2018-08-15 14:32:18123 "Allows experimentation with the Autofill field preview's style.";
124
Roger McFarlane1a37d7b2018-04-20 22:45:19125const char kAutofillEnforceMinRequiredFieldsForHeuristicsName[] =
126 "Autofill Enforce Min Required Fields For Heuristics";
127const char kAutofillEnforceMinRequiredFieldsForHeuristicsDescription[] =
128 "When enabled, autofill will generally require a form to have at least 3 "
129 "fields before allowing heuristic field-type prediction to occur.";
130
131const char kAutofillEnforceMinRequiredFieldsForQueryName[] =
132 "Autofill Enforce Min Required Fields For Query";
133const char kAutofillEnforceMinRequiredFieldsForQueryDescription[] =
134 "When enabled, autofill will generally require a form to have at least 3 "
135 "fields before querying the autofill server for field-type predictions.";
136
137const char kAutofillEnforceMinRequiredFieldsForUploadName[] =
138 "Autofill Enforce Min Required Fields For Upload";
139const char kAutofillEnforceMinRequiredFieldsForUploadDescription[] =
140 "When enabled, autofill will generally require a form to have at least 3 "
141 "fillable fields before uploading field-type votes for that form.";
142
Moe Ahmadid3ddfcb2018-04-20 19:51:08143const char kAutofillRestrictUnownedFieldsToFormlessCheckoutName[] =
144 "Restrict formless form extraction";
145const char kAutofillRestrictUnownedFieldsToFormlessCheckoutDescription[] =
146 "Restrict extraction of formless forms to checkout flows";
147
Roger McFarlanee193ab122018-11-22 20:55:07148const char kAutofillRichMetadataQueriesName[] =
149 "Autofill - Rich metadata queries (Canary/Dev only)";
150const char kAutofillRichMetadataQueriesDescription[] =
151 "Transmit rich form/field metadata when querying the autofill server. "
152 "This feature only works on the Canary and Dev channels.";
153
Brett Wilsonf27ff602017-07-07 22:28:47154const char kAutoplayPolicyName[] = "Autoplay policy";
155const char kAutoplayPolicyDescription[] =
156 "Policy used when deciding if audio or video is allowed to autoplay.";
157
158const char kAutoplayPolicyUserGestureRequiredForCrossOrigin[] =
159 "User gesture is required for cross-origin iframes.";
160const char kAutoplayPolicyNoUserGestureRequired[] =
161 "No user gesture is required.";
162const char kAutoplayPolicyUserGestureRequired[] = "User gesture is required.";
163const char kAutoplayPolicyDocumentUserActivation[] =
164 "Document user activation is required.";
165
Maya Lekova4bbfdb7f2018-10-16 08:15:03166const char kAwaitOptimizationName[] = "Await optimization";
167const char kAwaitOptimizationDescription[] =
168 "Enables await taking 1 tick on the microtask queue.";
169
Brett Wilsonf27ff602017-07-07 22:28:47170const char kBleAdvertisingInExtensionsName[] = "BLE Advertising in Chrome Apps";
171const char kBleAdvertisingInExtensionsDescription[] =
172 "Enables BLE Advertising in Chrome Apps. BLE Advertising might interfere "
173 "with regular use of Bluetooth Low Energy features.";
174
Charles Harrisond629cc62017-10-05 01:39:54175const char kBlockTabUndersName[] = "Block tab-unders";
176const char kBlockTabUndersDescription[] =
177 "Blocks tab-unders in Chrome with some native UI to allow the user to "
178 "proceed.";
179
Brett Wilsonf27ff602017-07-07 22:28:47180const char kBrowserTaskSchedulerName[] = "Task Scheduler";
181const char kBrowserTaskSchedulerDescription[] =
182 "Enables redirection of some task posting APIs to the task scheduler.";
183
Carlos IL766fbc882018-02-16 02:34:52184const char kBundledConnectionHelpName[] = "Bundled Connection Help";
185const char kBundledConnectionHelpDescription[] =
Carlos ILaafcd73a2018-07-10 20:08:37186 "Enables or disables redirection to local help content for users who get "
187 "an interstitial after clicking the 'Learn More' link on a previous "
188 "interstitial.";
Carlos IL766fbc882018-02-16 02:34:52189
Brett Wilsonf27ff602017-07-07 22:28:47190const char kBypassAppBannerEngagementChecksName[] =
191 "Bypass user engagement checks";
192const char kBypassAppBannerEngagementChecksDescription[] =
193 "Bypasses user engagement checks for displaying app banners, such as "
194 "requiring that users have visited the site before and that the banner "
195 "hasn't been shown recently. This allows developers to test that other "
196 "eligibility requirements for showing app banners, such as having a "
197 "manifest, are met.";
198
Miguel Casas454d9cf2018-06-28 16:25:00199const char kCanvas2DImageChromiumName[] = "Canvas 2D Image Chromium";
200const char kCanvas2DImageChromiumDescription[] =
201 "Allows for using CHROMIUM_image GLES2 extension for HTML Canvas Contexts";
202
Brett Wilsonf27ff602017-07-07 22:28:47203const char kCastStreamingHwEncodingName[] =
204 "Cast Streaming hardware video encoding";
205const char kCastStreamingHwEncodingDescription[] =
206 "This option enables support in Cast Streaming for encoding video streams "
207 "using platform hardware.";
208
Amber Won478561d2017-08-19 01:02:59209const char kClickToOpenPDFName[] = "Click to open embedded PDFs";
210const char kClickToOpenPDFDescription[] =
211 "When the PDF plugin is unavailable, show a click-to-open placeholder for "
212 "embedded PDFs.";
213
Gary Kacmarcikfb69b212017-11-14 03:41:08214const char kClipboardContentSettingName[] = "Clipboard content setting";
215const char kClipboardContentSettingDescription[] =
216 "Enables a site-wide permission in the UI which controls access to the "
217 "asynchronous clipboard web API";
218
Brett Wilsonf27ff602017-07-07 22:28:47219const char kCloudImportName[] = "Cloud Import";
220const char kCloudImportDescription[] = "Allows the cloud-import feature.";
221
rbpotter9990eb42018-07-12 05:34:59222const char kCloudPrinterHandlerName[] = "Enable Cloud Printer Handler";
223const char kCloudPrinterHandlerDescription[] =
224 "Use the new cloud printer handler for communicating with the cloud "
225 "print server, instead of the cloud print interface in the Print "
226 "Preview WebUI.";
227
Tanja Gornakb0985dd2018-10-11 17:24:40228const char kFCMInvalidationsName[] =
229 "Enable invalidations delivery via new FCM based protocol";
230const char kFCMInvalidationsDescription[] =
231 "Use the new FCM-based protocol for deliveling invalidations";
232
Christopher Cameronceb8727d2017-09-07 23:53:16233const char kForceColorProfileSRGB[] = "sRGB";
234const char kForceColorProfileP3[] = "Display P3 D65";
235const char kForceColorProfileColorSpin[] = "Color spin with gamma 2.4";
236const char kForceColorProfileHdr[] = "scRGB linear (HDR where available)";
237
238const char kForceColorProfileName[] = "Force color profile";
239const char kForceColorProfileDescription[] =
240 "Forces Chrome to use a specific color profile instead of the color "
241 "of the window's current monitor, as specified by the operating system.";
242
Brett Wilsonf27ff602017-07-07 22:28:47243const char kCompositedLayerBordersName[] = "Composited render layer borders";
244const char kCompositedLayerBordersDescription[] =
245 "Renders a border around composited Render Layers to help debug and study "
246 "layer compositing.";
247
Theresac34db2d2018-06-28 00:03:11248const char kContextualSuggestionsButtonName[] = "Contextual Suggestions Button";
249const char kContextualSuggestionsButtonDescription[] =
250 "If enabled, shows a button to trigger contextual suggestions.";
251
Theresae308b9e2018-10-10 15:57:40252const char kContextualSuggestionsIPHReverseScrollName[] =
253 "Contextual Suggestions IPH Reverse Scroll";
254const char kContextualSuggestionsIPHReverseScrollDescription[] =
255 "Require a reverse scroll before showing in-product help for contextual "
256 "suggestions.";
257
Theresa0f2947b92018-07-02 21:27:58258const char kContextualSuggestionsOptOutName[] =
259 "Contextual Suggestions Opt-out";
260const char kContextualSuggestionsOptOutDescription[] =
261 "If enabled, allows the user to opt out of contextual suggestions.";
262
Brett Wilsonf27ff602017-07-07 22:28:47263const char kCreditCardAssistName[] = "Credit Card Assisted Filling";
264const char kCreditCardAssistDescription[] =
265 "Enable assisted credit card filling on certain sites.";
266
Thanh Le659cb102017-12-20 22:00:19267const char kDataSaverServerPreviewsName[] = "Data Saver Server Previews";
268const char kDataSaverServerPreviewsDescription[] =
269 "Allow the Data Reduction Proxy to serve previews.";
Brett Wilsonf27ff602017-07-07 22:28:47270
Brett Wilsonf27ff602017-07-07 22:28:47271const char kDebugPackedAppName[] = "Debugging for packed apps";
272const char kDebugPackedAppDescription[] =
273 "Enables debugging context menu options such as Inspect Element for packed "
274 "applications.";
275
Brett Wilsonf27ff602017-07-07 22:28:47276const char kDebugShortcutsName[] = "Debugging keyboard shortcuts";
277const char kDebugShortcutsDescription[] =
278 "Enables additional keyboard shortcuts that are useful for debugging Ash.";
279
280const char kDeviceDiscoveryNotificationsName[] =
281 "Device Discovery Notifications";
282const char kDeviceDiscoveryNotificationsDescription[] =
283 "Device discovery notifications on local network.";
284
285const char kDevtoolsExperimentsName[] = "Developer Tools experiments";
286const char kDevtoolsExperimentsDescription[] =
287 "Enables Developer Tools experiments. Use Settings panel in Developer "
288 "Tools to toggle individual experiments.";
289
290const char kDisableAudioForDesktopShareName[] =
291 "Disable Audio For Desktop Share";
292const char kDisableAudioForDesktopShareDescription[] =
293 "With this flag on, desktop share picker window will not let the user "
294 "choose whether to share audio.";
295
Arthur Sonzogni721f48e2018-10-31 17:10:02296const char kDisableIpcFloodingProtectionName[] =
297 "Disable IPC flooding protection";
298const char kDisableIpcFloodingProtectionDescription[] =
299 "Some javascript code can flood the inter process communication system. "
300 "This protection limits the rate (calls/seconds) at which theses function "
arthursonzogni443bd0ef2018-11-27 16:12:53301 "can be used. This flag disables the protection. This flag is deprecated "
302 "and will be removed in Chrome 76. Use the switch "
303 "--disable-ipc-flooding-protection instead.";
Arthur Sonzogni721f48e2018-10-31 17:10:02304
Chris Palmer917bc052018-03-14 19:28:31305const char kDisablePushStateThrottleName[] = "Disable pushState throttling";
306const char kDisablePushStateThrottleDescription[] =
307 "Disables throttling of history.pushState and history.replaceState method "
arthursonzogni443bd0ef2018-11-27 16:12:53308 "calls. This flag is deprecated and will be removed in Chrome 76. Use the "
309 "switch --disable-ipc-flooding-protection instead.";
Chris Palmer917bc052018-03-14 19:28:31310
Brett Wilsonf27ff602017-07-07 22:28:47311const char kDisableTabForDesktopShareName[] =
312 "Disable Desktop Share with tab source";
313const char kDisableTabForDesktopShareDescription[] =
314 "This flag controls whether users can choose a tab for desktop share.";
315
316const char kDisallowDocWrittenScriptsUiName[] =
317 "Block scripts loaded via document.write";
318const char kDisallowDocWrittenScriptsUiDescription[] =
319 "Disallows fetches for third-party parser-blocking scripts inserted into "
320 "the main frame via document.write.";
321
Christopher Thompson2ffffa2c2018-05-18 23:06:37322const char kDisallowUnsafeHttpDownloadsName[] =
323 "Block unsafe downloads over insecure connections";
324const char kDisallowUnsafeHttpDownloadsNameDescription[] =
325 "Disallows downloads of unsafe files (files that can potentially execute "
326 "code), where the final download origin or any origin in the redirect "
327 "chain is insecure.";
328
Brett Wilsonf27ff602017-07-07 22:28:47329const char kDriveSearchInChromeLauncherName[] =
330 "Drive Search in Chrome App Launcher";
331const char kDriveSearchInChromeLauncherDescription[] =
332 "Files from Drive will show up when searching the Chrome App Launcher.";
333
Brett Wilsonf27ff602017-07-07 22:28:47334const char kEmbeddedExtensionOptionsName[] = "Embedded extension options";
335const char kEmbeddedExtensionOptionsDescription[] =
336 "Display extension options as an embedded element in chrome://extensions "
337 "rather than opening a new tab.";
338
Dominic Mazzoni8ac98962018-05-25 05:44:55339const char kEnableAccessibilityObjectModelName[] = "Accessibility Object Model";
340const char kEnableAccessibilityObjectModelDescription[] =
341 "Enables experimental support for Accessibility Object Model APIs "
342 "that are in development.";
343
Becca Hughesac86cd442019-01-09 23:49:54344const char kEnableAudioFocusEnforcementName[] = "Audio Focus Enforcement";
345const char kEnableAudioFocusEnforcementDescription[] =
346 "Enables enforcement of a single media session having audio focus at "
347 "any one time. Requires #enable-media-session-service to be enabled too.";
348
Anthony Vallee-Dubois968ae4d2018-03-15 16:56:36349const char kEnableWebPaymentsSingleAppUiSkipName[] =
350 "Enable Web Payments single app UI skip";
351const char kEnableWebPaymentsSingleAppUiSkipDescription[] =
352 "Enable Web Payments to skip showing its UI if the developer specifies a "
353 "single app.";
354
Sebastien Lalancette5daaf4a2019-01-11 22:09:25355const char kEnableAutocompleteDataRetentionPolicyName[] =
356 "Enable automatic cleanup of expired Autocomplete entries.";
357const char kEnableAutocompleteDataRetentionPolicyDescription[] =
358 "If enabled, will clean-up Autocomplete entries whose last use date is "
359 "older than the current retention policy. These entries will be "
360 "permanently deleted from the client on startup, and will be unlinked "
361 "from sync.";
362
Florian Uunk8c428ea2018-07-18 11:12:52363const char kEnableAutofillAccountWalletStorageName[] =
364 "Enable the account data storage for autofill";
365const char kEnableAutofillAccountWalletStorageDescription[] =
366 "Enable the ephemeral storage for account data for autofill.";
367
Shanfeng Zhang19c16562017-10-17 02:30:40368const char kEnableAutofillCreditCardAblationExperimentDisplayName[] =
369 "Credit card autofill ablation experiment.";
370const char kEnableAutofillCreditCardAblationExperimentDescription[] =
371 "If enabled, credit card autofill suggestions will not display.";
372
Brett Wilsonf27ff602017-07-07 22:28:47373const char kEnableAutofillCreditCardLastUsedDateDisplayName[] =
374 "Display the last used date of a credit card in autofill.";
375const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
376 "If enabled, display the last used date of a credit card in autofill.";
377
Sujie Zhu2cf0e5c2018-07-17 18:00:27378const char kEnableAutofillCreditCardLocalCardMigrationName[] =
379 "Enable migrating local cards to Google Pay";
380const char kEnableAutofillCreditCardLocalCardMigrationDescription[] =
381 "If enabled, prompt migration of locally-saved credit cards to Google Pay.";
382
Jared Saulbc672a072018-06-16 05:22:12383const char kEnableAutofillCreditCardUploadEditableCardholderNameName[] =
384 "Make cardholder name editable in dialog during credit card upload";
385const char kEnableAutofillCreditCardUploadEditableCardholderNameDescription[] =
386 "If enabled, in certain situations when offering credit card upload to "
387 "Google Payments, the cardholder name can be edited within the "
388 "offer-to-save dialog, which is prefilled with the name from the signed-in "
389 "Google Account.";
390
Hao Zhang1be9c262018-11-03 00:23:51391const char kEnableAutofillCreditCardUploadEditableExpirationDateName[] =
392 "Make expiration date editable in dialog during credit card upload";
393const char kEnableAutofillCreditCardUploadEditableExpirationDateDescription[] =
394 "If enabled, if a credit card's expiration date was not detected when "
395 "offering card upload to Google Payments, the offer-to-save dialog "
396 "displays an expiration date selector.";
397
siyua9a4a8872018-10-05 03:46:56398const char kEnableAutofillLocalCardMigrationShowFeedbackName[] =
399 "Show the upload results dialog after local card migration";
400const char kEnableAutofillLocalCardMigrationShowFeedbackDescription[] =
401 "If enabled, the local card migration offer dialog will remain pending "
402 "after the user clicks the save button. Once migration is finished, "
403 "the dialog will be updated with the results of each card.";
404
tmartinocd414732018-02-12 19:01:01405const char kEnableAutofillNativeDropdownViewsName[] =
406 "Display Autofill Dropdown Using Views";
407const char kEnableAutofillNativeDropdownViewsDescription[] =
408 "If enabled, the Autofill Dropdown will be built natively using Views, "
409 "rather than painted directly to a canvas.";
410
Fabio Tirelo87552e02018-07-06 15:43:21411const char kEnableAutofillSaveCardDialogUnlabeledExpirationDateName[] =
412 "Show unlabeled expiration dates on the save card dialog";
413const char kEnableAutofillSaveCardDialogUnlabeledExpirationDateDescription[] =
414 "If enabled, expiration dates on the save card dialog (both local and "
415 "upstream) are shown without an 'Exp:' label.";
416
siyua172973d2018-11-21 22:23:20417const char kEnableAutofillSaveCardImprovedUserConsentName[] =
418 "Use updated UI for credit card save bubbles";
419const char kEnableAutofillSaveCardImprovedUserConsentDescription[] =
420 "If enabled, adds a [No thanks] button to credit card save bubbles and "
421 "updates their title headers.";
422
Manas Verma99541e52018-08-03 20:37:23423const char kEnableAutofillSaveCardSignInAfterLocalSaveName[] =
424 "Show Sign-In/Sync promo after saving a card locally";
425const char kEnableAutofillSaveCardSignInAfterLocalSaveDescription[] =
426 "If enabled, shows a sign in prompt to the user after the user "
427 "saves a card locally. This also introduces a Manage Cards bubble "
428 "which you can access from the card icon after saving a card.";
429
Jared Saul8a0c1e92018-10-10 18:22:47430const char kEnableAutofillSaveCreditCardUsesStrikeSystemName[] =
431 "Enable limit on offering to save the same credit card repeatedly";
432const char kEnableAutofillSaveCreditCardUsesStrikeSystemDescription[] =
433 "If enabled, prevents popping up the credit card offer-to-save prompt if "
434 "it has repeatedly been ignored, declined, or failed.";
435
Anne Lim9d8f66a2019-01-07 23:49:21436const char kEnableAutofillSaveCreditCardUsesStrikeSystemV2Name[] =
437 "Enable limit on offering to save the same credit card repeatedly using the"
438 "updated strike system implementation";
439const char kEnableAutofillSaveCreditCardUsesStrikeSystemV2Description[] =
440 "If enabled, uses the updated strike system implementation to prevent"
441 "popping up the credit card offer-to-save prompt if it has repeatedly been"
442 "ignored, declined, or failed.";
443
Lakshmi Kumar Dabbirua3d0805f2018-05-22 22:04:23444const char kEnableAutofillSendExperimentIdsInPaymentsRPCsName[] =
445 "Send experiment flag IDs in calls to Google Payments";
446const char kEnableAutofillSendExperimentIdsInPaymentsRPCsDescription[] =
447 "If enabled, adds the status of certain experiment variations when making "
448 "calls to Google Payments.";
449
Becca Hughes4d896c42018-05-29 16:58:51450const char kEnableAutoplayIgnoreWebAudioName[] =
451 "Autoplay ignores WebAudio playbacks";
452const char kEnableAutoplayIgnoreWebAudioDescription[] =
453 "If enabled, autoplay restrictions will be ignored for WebAudio.";
454
Becca Hughesc62f6a1d2018-08-16 15:59:47455const char kEnableAutoplayUnifiedSoundSettingsName[] =
456 "Autoplay unified sound settings UI";
457const char kEnableAutoplayUnifiedSoundSettingsDescription[] =
458 "If enabled, shows the new unified autoplay sound settings UI.";
459
Brett Wilsonf27ff602017-07-07 22:28:47460const char kEnableBrotliName[] = "Brotli Content-Encoding.";
461const char kEnableBrotliDescription[] =
462 "Enable Brotli Content-Encoding support.";
463
Qiang Xu0f602fe62017-12-22 01:31:20464const char kEnableCaptivePortalRandomUrl[] = "Captive Portal url Randomization";
465const char kEnableCaptivePortalRandomUrlDescription[] =
466 "Enable Captive Portal URL randomization.";
467
sclittle50e4bb92017-07-08 02:23:03468const char kEnableClientLoFiName[] = "Client-side Lo-Fi previews";
469
470const char kEnableClientLoFiDescription[] =
471 "Enable showing low fidelity images on some pages on slow networks.";
472
Patrick Noland8bc57472018-06-19 21:09:54473const char kEnableCSSFragmentIdentifiersName[] =
474 "Enable CSS Fragment Identifiers";
475const char kEnableCSSFragmentIdentifiersDescription[] =
476 "Enable support for specifying a target element using a css selector in "
477 "the fragment identifier.";
478
David Reveman87b4b692018-03-09 21:22:22479const char kEnableCursorMotionBlurName[] = "Enable Cursor Motion Blur";
480const char kEnableCursorMotionBlurDescription[] =
481 "Enable motion blur effect for the cursor.";
482
Doug Arnett08b4067b2017-10-12 20:14:44483const char kEnableNoScriptPreviewsName[] = "NoScript previews";
484
485const char kEnableNoScriptPreviewsDescription[] =
486 "Enable disabling JavaScript on some pages on slow networks.";
487
Thanh Le2c279fbc2017-11-21 01:25:40488const char kDataReductionProxyServerAlternative1[] = "Use alt. server config 1";
489const char kDataReductionProxyServerAlternative2[] = "Use alt. server config 2";
490const char kDataReductionProxyServerAlternative3[] = "Use alt. server config 3";
491const char kDataReductionProxyServerAlternative4[] = "Use alt. server config 4";
492const char kDataReductionProxyServerAlternative5[] = "Use alt. server config 5";
493const char kDataReductionProxyServerAlternative6[] = "Use alt. server config 6";
494const char kDataReductionProxyServerAlternative7[] = "Use alt. server config 7";
495const char kDataReductionProxyServerAlternative8[] = "Use alt. server config 8";
496const char kDataReductionProxyServerAlternative9[] = "Use alt. server config 9";
497const char kDataReductionProxyServerAlternative10[] =
498 "Use alt. server config 10";
rajendrantcfa60ba2018-10-30 09:16:54499const char kEnableDataReductionProxyNetworkServiceName[] =
500 "Data reduction proxy with network service";
501const char kEnableDataReductionProxyNetworkServiceDescription[] =
502 "Enable data reduction proxy when network service is enabled";
Brett Wilsonf27ff602017-07-07 22:28:47503const char kEnableDataReductionProxyServerExperimentName[] =
504 "Use an alternative Data Saver back end configuration.";
505const char kEnableDataReductionProxyServerExperimentDescription[] =
506 "Enable a different approach to saving data by configuring the back end "
507 "server";
508
509const char kEnableDataReductionProxySavingsPromoName[] =
510 "Data Saver 1 MB Savings Promo";
511const char kEnableDataReductionProxySavingsPromoDescription[] =
512 "Enable a Data Saver promo for 1 MB of savings. If Data Saver has already "
513 "saved 1 MB of data, then the promo will not be shown. Data Saver must be "
514 "enabled for the promo to be shown.";
515
Matt Giucad4870432017-11-24 01:04:38516const char kEnableDesktopPWAsName[] = "Desktop PWAs";
517const char kEnableDesktopPWAsDescription[] =
518 "Experimental windowing and install banner treatment for Progressive Web "
519 "Apps on desktop platforms. Implies #enable-experimental-app-banners.";
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17520
Giovanni Ortuño Urquidi40c8e792018-02-28 04:18:59521const char kEnableDesktopPWAsLinkCapturingName[] =
522 "Desktop PWAs Link Capturing";
523const char kEnableDesktopPWAsLinkCapturingDescription[] =
524 "Experimentally enable link capturing for Desktop PWAs. Navigations to "
525 "URLs that are in-scope of Desktop PWAs will open in a window. Requires "
526 "#enable-desktop-pwas.";
527
Jay Harris52511a02018-11-02 01:00:28528const char kDesktopPWAsCustomTabUIName[] = "Desktop PWAs Custom Tab UI";
529const char kDesktopPWAsCustomTabUIDescription[] =
530 "Browsing out-of-scope links in a desktop PWA will use the custom tab UI "
531 "for displaying the page title and origin instead of the location bar.";
532
Jay Harrisee7a7bc62018-10-09 01:47:49533const char kDesktopPWAsStayInWindowName[] =
534 "Desktop PWAs out-of-scope links open in the app window";
535const char kDesktopPWAsStayInWindowDescription[] =
Jay Harris52511a02018-11-02 01:00:28536 "Links to sites in a different scope will open inside the PWA window as "
537 "opposed to in the browser.";
Jay Harrisee7a7bc62018-10-09 01:47:49538
Christopher Lame66b7812018-09-26 01:49:24539const char kEnableSystemWebAppsName[] = "System Web Apps";
540const char kEnableSystemWebAppsDescription[] =
541 "Experimental system for using the Desktop PWA framework for running System"
542 "Apps (e.g Settings, Discover).";
543
Ahmed Fakhry0037de02018-01-29 19:58:31544const char kEnableDockedMagnifierName[] = "Docked Magnifier";
545const char kEnableDockedMagnifierDescription[] =
546 "Enables the Docked Magnifier (a.k.a. picture-in-picture magnifier).";
547
David Benjamin570460e2018-10-16 06:01:29548const char kEnforceTLS13DowngradeName[] = "TLS 1.3 downgrade hardening";
549const char kEnforceTLS13DowngradeDescription[] =
550 "This option enables the TLS 1.3 downgrade hardening mechanism. This "
551 "hardens TLS 1.3 connections while remaining compatible with TLS 1.0 "
552 "through 1.2 connections. Firewalls and proxies that do not function when "
553 "this is enabled do not implement TLS 1.0 through 1.2 correctly or "
554 "securely. They must be fixed by vendors.";
555
Brett Wilsonf27ff602017-07-07 22:28:47556const char kEnableEnumeratingAudioDevicesName[] =
557 "Experimentally enable enumerating audio devices.";
558const char kEnableEnumeratingAudioDevicesDescription[] =
559 "Experimentally enable the use of enumerating audio devices.";
560
561const char kEnableGenericSensorName[] = "Generic Sensor";
562const char kEnableGenericSensorDescription[] =
Mikhail Pozdnyakov73373a62017-08-24 17:31:25563 "Enables motion sensor classes based on Generic Sensor API, i.e. "
564 "Accelerometer, LinearAccelerationSensor, Gyroscope, "
565 "AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
566
567const char kEnableGenericSensorExtraClassesName[] =
568 "Generic Sensor Extra Classes";
569const char kEnableGenericSensorExtraClassesDescription[] =
570 "Enables an extra set of sensor classes based on Generic Sensor API, which "
571 "expose previously unavailable platform features, i.e. AmbientLightSensor "
572 "and Magnetometer interfaces.";
Brett Wilsonf27ff602017-07-07 22:28:47573
Vikas Soni78daa632019-01-12 01:32:52574const char kEnableGpuServiceLoggingName[] = "Enable gpu service logging";
575const char kEnableGpuServiceLoggingDescription[] =
576 "Enable printing the actual GL driver calls.";
577
Brett Wilsonf27ff602017-07-07 22:28:47578const char kEnableHDRName[] = "HDR mode";
579const char kEnableHDRDescription[] =
580 "Enables HDR support on compatible displays.";
581
Ryan Sturm6a850902018-06-09 02:27:34582const char kEnableHeavyPageCappingName[] = "Heavy Page Capping";
583const char kEnableHeavyPageCappingDescription[] =
Ryan Sturm1550abeb2018-06-18 20:05:09584 "Enable showing an InfoBar on data heavy pages that allows the user to "
Ryan Sturma2cd49f2018-06-20 17:09:25585 "pause sub-resource request loading on the page. Using the 'Low' option "
Ryan Sturm2a2f11e2018-07-17 23:01:01586 "will reduce the triggering threshold to 1MB. Data saver must be enabled "
587 "in order to see the InfoBar.";
Ryan Sturm6a850902018-06-09 02:27:34588
David Bokan911bded2018-11-27 23:23:32589const char kEnableImplicitRootScrollerName[] = "Implicit Root Scroller";
590const char kEnableImplicitRootScrollerDescription[] =
591 "Enables implicitly choosing which scroller on a page is the 'root "
592 "scroller'. i.e. The one that gets special features like URL bar movement, "
593 "overscroll glow, rotation anchoring, etc.";
594
Robert Ogden5a63b242018-09-17 21:38:57595const char kEnablePreviewsAndroidOmniboxUIName[] =
596 "Previews Android Omnibox UI";
597const char kEnablePreviewsAndroidOmniboxUIDescription[] =
598 "Enable showing the Previews UI in the Omnibox on Android instead of an "
599 "InfoBar. This has no effect on other platforms.";
600
Robert Ogdence8c9572018-10-08 23:08:48601const char kEnableLitePageServerPreviewsName[] = "Lite Page Server Previews";
602const char kEnableLitePageServerPreviewsDescription[] =
Doug Arnett9c1f87562018-12-14 00:56:39603 "Enable showing Lite Page Previews served from a Previews Server."
604 "This feature will cause Chrome to redirect eligible navigations "
Robert Ogdence8c9572018-10-08 23:08:48605 "to a Google-owned domain that serves a pre-rendered version of the "
Doug Arnett9c1f87562018-12-14 00:56:39606 "original page. Also known as Lite Page Redirect Previews.";
Robert Ogdence8c9572018-10-08 23:08:48607
Hiroshige Hayashizaki99d5821e2018-05-02 04:25:41608const char kLayeredAPIName[] = "Experimental layered APIs";
609const char kLayeredAPIDescription[] =
610 "Enable layered API infrastructure, as well as several experimental "
611 "layered APIs. The syntax and the APIs exposed are experimental and will "
612 "change over time.";
613
Philip Rogers63481332018-12-01 22:16:51614const char kEnableBlinkGenPropertyTreesName[] = "Enable BlinkGenPropertyTrees";
615const char kEnableBlinkGenPropertyTreesDescription[] =
616 "Enable a new compositing mode where Blink generates the compositor "
617 "property trees.";
618
Ian Kilpatricke68ef11a2018-07-04 03:52:10619const char kEnableLayoutNGName[] = "Enable LayoutNG";
620const char kEnableLayoutNGDescription[] =
621 "Enable Blink's next generation layout engine.";
622
Scott Littled0fd2d002018-04-13 03:37:26623const char kEnableLazyFrameLoadingName[] = "Enable lazy frame loading";
624const char kEnableLazyFrameLoadingDescription[] =
625 "Defers the loading of certain cross-origin frames until the page is "
626 "scrolled down near them.";
627
rajendrant793ff512018-08-10 17:07:59628const char kEnableLazyImageLoadingName[] = "Enable lazy image loading";
629const char kEnableLazyImageLoadingDescription[] =
630 "Defers the loading of images until the page is scrolled down near them.";
631
Sidney San Martín9375b892017-09-09 00:29:54632const char kEnableMacMaterialDesignDownloadShelfName[] =
633 "Enable Material Design download shelf";
634
635const char kEnableMacMaterialDesignDownloadShelfDescription[] =
636 "If enabled, the download shelf uses Material Design.";
637
Becca Hughesac86cd442019-01-09 23:49:54638const char kEnableMediaSessionServiceName[] = "Media Session Service";
639const char kEnableMediaSessionServiceDescription[] =
640 "Enables the media session mojo service and internal media session "
641 "support.";
642
Anton Urusov47cd4932017-09-19 14:41:41643const char kEnablePolicyToolName[] = "Enable policy management page";
644const char kEnablePolicyToolDescription[] =
645 "If enabled, the chrome://policy-tool URL loads a page for managing "
646 "policies.";
647
Weidong Guof1e5a892018-01-06 02:26:39648const char kDisableMultiMirroringName[] =
Weidong Guo7dfd1482017-11-08 05:56:28649 "Display mirroring across multiple displays.";
Weidong Guof1e5a892018-01-06 02:26:39650const char kDisableMultiMirroringDescription[] =
651 "Disable Display mirroring across multiple displays.";
Weidong Guo7dfd1482017-11-08 05:56:28652
Brett Wilsonf27ff602017-07-07 22:28:47653const char kEnableNavigationTracingName[] = "Enable navigation tracing";
654const char kEnableNavigationTracingDescription[] =
655 "This is to be used in conjunction with the trace-upload-url flag. "
656 "WARNING: When enabled, Chrome will record performance data for every "
657 "navigation and upload it to the URL specified by the trace-upload-url "
658 "flag. The trace may include personally identifiable information (PII) "
659 "such as the titles and URLs of websites you visit.";
660
Bernhard Bauer5533f9912017-11-06 17:56:02661const char kEnableNetworkLoggingToFileName[] = "Enable network logging to file";
662const char kEnableNetworkLoggingToFileDescription[] =
663 "Enables network logging to a file named netlog.json in the user data "
664 "directory. The file can be imported into chrome://net-internals.";
665
Brett Wilsonf27ff602017-07-07 22:28:47666const char kEnableNetworkServiceName[] = "Enable network service";
667const char kEnableNetworkServiceDescription[] =
668 "Enables the network service, which makes network requests through a "
John Abd-El-Malek225b04d2018-09-07 22:41:40669 "separate process.";
Brett Wilsonf27ff602017-07-07 22:28:47670
John Abd-El-Malek8067cc02017-12-04 23:23:20671const char kEnableNetworkServiceInProcessName[] =
672 "Runs network service in-process";
673const char kEnableNetworkServiceInProcessDescription[] =
674 "Runs the network service in the browser process.";
675
Ahmed Fakhry2fd8fc82017-07-28 16:31:12676const char kEnableNightLightName[] = "Enable Night Light";
677const char kEnableNightLightDescription[] =
678 "Enable the Night Light feature which controls the color temperature of "
679 "the screen.";
680
Tetsui Ohkuboc3eb87f72018-07-20 02:22:28681const char kEnableNotificationScrollBarName[] =
682 "Enable notification list scroll bar";
683const char kEnableNotificationScrollBarDescription[] =
684 "Enable the scroll bar of the notification list in Unified System Tray.";
685
Mitsuru Otsukae8304de2018-10-29 02:14:36686const char kEnableNotificationExpansionAnimationName[] =
687 "Enable notification expansion animations";
688const char kEnableNotificationExpansionAnimationDescription[] =
689 "Enable notification animations whenever the expansion state is toggled.";
690
xlou8b56f672018-02-09 23:34:30691const char kEnableNupPrintingName[] = "Enable N-up printing";
692const char kEnableNupPrintingDescription[] =
693 "Enable N-up printing in the print preview panel.";
694
Sophie Chang117a3b22017-10-24 22:25:36695const char kEnableOptimizationHintsName[] = "Optimization Hints";
696const char kEnableOptimizationHintsDescription[] =
Sophie Chang5454ce82018-07-16 17:44:50697 "Enable the Optimization Hints feature which incorporates server hints "
Sophie Chang117a3b22017-10-24 22:25:36698 "into decisions for what optimizations to perform on some pages on slow "
699 "networks.";
700
Takashi Toyoshima2e01e692018-11-16 03:23:27701const char kEnableOutOfBlinkCorsName[] = "Out of blink CORS";
702const char kEnableOutOfBlinkCorsDescription[] =
Yutaka Hirano98be3272017-08-07 17:55:39703 "CORS handling logic is moved out of blink.";
704
Chris Halle952239e2018-11-06 06:49:52705const char kExperimentalAccessibilityFeaturesName[] =
706 "Experimental accessibility features";
707const char kExperimentalAccessibilityFeaturesDescription[] =
708 "Enable additional accessibility features in the Settings page.";
709
Katie D652135c2018-11-27 18:30:13710const char kExperimentalAccessibilityAutoclickName[] =
711 "Experimental automatic click features";
712const char kExperimentalAccessibilityAutoclickDescription[] =
713 "Enable additional features for automatic clicks.";
714
Katie D0c31c5062019-01-02 18:12:35715const char kExperimentalAccessibilityLabelsName[] =
716 "Experimental accessibility image label features";
717const char kExperimentalAccessibilityLabelsDescription[] =
718 "Enable additional features for image labels for accessibility.";
719
Anastasia Helfinsteinafecc68c2018-11-26 19:20:17720const char kExperimentalAccessibilitySwitchAccessName[] =
721 "Experimental feature Switch Access";
722const char kExperimentalAccessibilitySwitchAccessDescription[] =
723 "Add a setting to enable the prototype of Switch Access";
724
kylechar7051c092018-02-05 20:31:39725const char kVizDisplayCompositorName[] = "Viz Display Compositor (OOP-D)";
726const char kVizDisplayCompositorDescription[] =
727 "If enabled, the display compositor runs as part of the viz service in the"
728 "GPU process.";
729
Ria Jiang6a129b982018-03-01 18:30:40730const char kVizHitTestDrawQuadName[] = "Viz Hit-test Draw-quad version";
731const char kVizHitTestDrawQuadDescription[] =
732 "If enabled, event targeting uses the new viz-assisted hit-testing logic, "
733 "with hit-test data computed from the CompositorFrame.";
734
Erik Chen49bbfa22017-08-18 08:49:56735const char kEnableOutOfProcessHeapProfilingName[] =
Albert J. Wong174174762018-01-18 23:50:23736 "Out of process heap profiling start mode.";
Erik Chen49bbfa22017-08-18 08:49:56737const char kEnableOutOfProcessHeapProfilingDescription[] =
738 "Creates a profiling service that records stacktraces for all live, "
erikchen94aca892018-01-18 00:21:19739 "malloced objects. Heap dumps can be obtained at chrome://tracing "
740 "[category:memory-infra] and chrome://memory-internals. This setting "
741 "controls which processes are profiled. As long as this setting is not "
742 "disabled, users can start profiling any given process in "
743 "chrome://memory-internals.";
744const char kEnableOutOfProcessHeapProfilingModeMinimal[] = "Browser and GPU";
745const char kEnableOutOfProcessHeapProfilingModeAll[] = "All processes";
746const char kEnableOutOfProcessHeapProfilingModeAllRenderers[] = "All renderers";
747const char kEnableOutOfProcessHeapProfilingModeBrowser[] = "Only browser";
748const char kEnableOutOfProcessHeapProfilingModeGpu[] = "Only GPU.";
erikchen0a5dd692017-12-12 00:53:10749const char kEnableOutOfProcessHeapProfilingModeManual[] =
erikchen94aca892018-01-18 00:21:19750 "None by default. Visit chrome://memory-internals to choose which "
751 "processes to profile.";
Albert J. Wongbd5bd902017-11-09 19:56:15752const char kEnableOutOfProcessHeapProfilingModeRendererSampling[] =
753 "Profile a random sampling of renderer processes, ensuring only one is "
754 "ever profiled at a time.";
erikchen94aca892018-01-18 00:21:19755
Erik Chen8bb76b52017-12-06 19:06:25756const char kOutOfProcessHeapProfilingKeepSmallAllocations[] =
erikchen94aca892018-01-18 00:21:19757 "Emit small allocations in memlog heap dumps.";
Erik Chen8bb76b52017-12-06 19:06:25758const char kOutOfProcessHeapProfilingKeepSmallAllocationsDescription[] =
759 "By default, small allocations are pruned from the heap dump. This reduces "
760 "the size of the compressed trace by 100x. If pruning is disabled, the "
761 "chrome://tracing UI may be unable to take or load the trace. Save the "
762 "trace directly using chrome://memory-internals, and use other mechanisms "
763 "[e.g. diff_heap_profiler.py] to examine the trace. Note that "
764 "automatically uploaded traces will always be pruned. This only affects "
765 "manually taken memory-infra traces.";
Erik Chen49bbfa22017-08-18 08:49:56766
erikchen8bc20d82018-02-14 03:21:51767const char kOutOfProcessHeapProfilingSampling[] = "Sample memlog allocations";
768const char kOutOfProcessHeapProfilingSamplingDescription[] =
769 "Use a poisson process to sample allocations. Defaults to a sample rate of "
erikchen99bfce02018-02-14 20:29:22770 "10000. This results in low noise for large and/or frequent allocations ["
771 "[size * frequency >> 10000]. This means that aggregate numbers [e.g. "
772 "total size of malloc-ed objects] and large and/or frequent allocations "
773 "can be trusted with high fidelity.";
erikchen8bc20d82018-02-14 03:21:51774
Erik Chen3303fd0232018-01-11 20:29:05775const char kOOPHPStackModeName[] =
776 "The type of stack to record for memlog heap dumps";
777const char kOOPHPStackModeDescription[] =
erikchen94aca892018-01-18 00:21:19778 "By default, memlog heap dumps record native stacks, which requires a "
779 "post-processing step to symbolize. Requires a custom build with frame "
erikchen011ad3f2018-01-26 17:54:55780 "pointers to work on Android. Native with thread names will add the thread "
781 "name as the first frame of each native stack. It's also possible to "
782 "record a pseudo stack using trace events as identifiers. It's also "
783 "possible to do a mix of both.";
erikchen94aca892018-01-18 00:21:19784const char kOOPHPStackModeMixed[] = "Mixed";
785const char kOOPHPStackModeNative[] = "Native";
erikchen011ad3f2018-01-26 17:54:55786const char kOOPHPStackModeNativeWithThreadNames[] = "Native with thread names";
erikchen94aca892018-01-18 00:21:19787const char kOOPHPStackModePseudo[] = "Trace events";
Erik Chen3303fd0232018-01-11 20:29:05788
François Beaufort2e75f492018-02-08 20:44:46789const char kEnablePictureInPictureName[] = "Enable Picture-in-Picture.";
Brett Wilsonf27ff602017-07-07 22:28:47790const char kEnablePictureInPictureDescription[] =
François Beaufort106802c2018-12-18 17:46:13791 "Show Picture-in-Picture in browser context menu and video native "
792 "controls. The #enable-surfaces-for-videos flag must be enabled as well "
793 "to use it.";
Brett Wilsonf27ff602017-07-07 22:28:47794
F#m59d036e2017-09-13 07:22:17795const char kEnablePixelCanvasRecordingName[] = "Enable pixel canvas recording";
796const char kEnablePixelCanvasRecordingDescription[] =
797 "Pixel canvas recording allows the compositor to raster contents aligned "
798 "with the pixel and improves text rendering. This should be enabled when a "
799 "device is using fractional scale factor.";
800
Ella Gebee81c92018-08-14 15:51:09801const char kEnableResamplingInputEventsName[] =
802 "Enable resampling input events";
803const char kEnableResamplingInputEventsDescription[] =
804 "Predicts mouse and touch inputs position at rAF time based on previous "
805 "input";
806const char kEnableResamplingScrollEventsName[] =
807 "Enable resampling scroll events";
808const char kEnableResamplingScrollEventsDescription[] =
809 "Predicts the scroll amount at vsync time based on previous input";
810
Doug Arnettaa0bf202018-08-27 19:42:11811const char kEnableResourceLoadingHintsName[] = "Enable resource loading hints";
812const char kEnableResourceLoadingHintsDescription[] =
813 "Enable using server-provided resource loading hints to provide a preview "
814 "over slow network connections.";
815
Mikel Astizb4786aa2018-11-09 22:12:09816const char kEnableSyncPseudoUSSAppListName[] =
817 "Enable pseudo-USS for APP_LIST sync.";
818const char kEnableSyncPseudoUSSAppListDescription[] =
819 "Enable new USS-based codepath for sync datatype APP_LIST.";
820
821const char kEnableSyncPseudoUSSAppsName[] = "Enable pseudo-USS for APPS sync.";
822const char kEnableSyncPseudoUSSAppsDescription[] =
823 "Enable new USS-based codepath for sync datatype APPS.";
824
825const char kEnableSyncPseudoUSSDictionaryName[] =
826 "Enable pseudo-USS for DICTIONARY sync.";
827const char kEnableSyncPseudoUSSDictionaryDescription[] =
828 "Enable new USS-based codepath for sync datatype DICTIONARY.";
829
830const char kEnableSyncPseudoUSSExtensionSettingsName[] =
831 "Enable pseudo-USS for EXTENSION_SETTINGS and APP_SETTINGS sync.";
832const char kEnableSyncPseudoUSSExtensionSettingsDescription[] =
833 "Enable new USS-based codepath for sync datatypes EXTENSION_SETTINGS and "
834 "APP_SETTINGS.";
835
836const char kEnableSyncPseudoUSSExtensionsName[] =
837 "Enable pseudo-USS for EXTENSIONS sync.";
838const char kEnableSyncPseudoUSSExtensionsDescription[] =
839 "Enable new USS-based codepath for sync datatype EXTENSIONS.";
840
841const char kEnableSyncPseudoUSSFaviconsName[] =
842 "Enable pseudo-USS for favicon sync.";
843const char kEnableSyncPseudoUSSFaviconsDescription[] =
844 "Enable new USS-based codepath for sync datatypes FAVICON_IMAGES and "
845 "FAVICON_TRACKING.";
846
847const char kEnableSyncPseudoUSSHistoryDeleteDirectivesName[] =
848 "Enable pseudo-USS for HISTORY_DELETE_DIRECTIVES sync.";
849const char kEnableSyncPseudoUSSHistoryDeleteDirectivesDescription[] =
850 "Enable new USS-based codepath for sync datatype "
851 "HISTORY_DELETE_DIRECTIVES.";
852
853const char kEnableSyncPseudoUSSPasswordsName[] =
854 "Enable pseudo-USS for PASSWORDS sync.";
855const char kEnableSyncPseudoUSSPasswordsDescription[] =
856 "Enable new USS-based codepath for sync datatype PASSWORDS (pseudo-USS).";
857
858const char kEnableSyncPseudoUSSPreferencesName[] =
859 "Enable pseudo-USS for PREFERENCES sync.";
860const char kEnableSyncPseudoUSSPreferencesDescription[] =
861 "Enable new USS-based codepath for sync datatype PREFERENCES.";
862
863const char kEnableSyncPseudoUSSPriorityPreferencesName[] =
864 "Enable pseudo-USS for PRIORITY_PREFERENCES sync.";
865const char kEnableSyncPseudoUSSPriorityPreferencesDescription[] =
866 "Enable new USS-based codepath for sync datatype PRIORITY_PREFERENCES.";
867
868const char kEnableSyncPseudoUSSSearchEnginesName[] =
869 "Enable pseudo-USS for SEARCH_ENGINES sync.";
870const char kEnableSyncPseudoUSSSearchEnginesDescription[] =
871 "Enable new USS-based codepath for sync datatype SEARCH_ENGINES.";
872
873const char kEnableSyncPseudoUSSSupervisedUsersName[] =
874 "Enable pseudo-USS for supervised users sync.";
875const char kEnableSyncPseudoUSSSupervisedUsersDescription[] =
876 "Enable new USS-based codepath for sync datatypes SUPERVISED_USER_SETTINGS "
877 "and SUPERVISED_USER_WHITELISTS.";
878
879const char kEnableSyncPseudoUSSThemesName[] =
880 "Enable pseudo-USS for THEMES sync.";
881const char kEnableSyncPseudoUSSThemesDescription[] =
882 "Enable new USS-based codepath for sync datatype THEMES.";
883
Mohamed Amir Yosef0178fa892018-07-23 17:43:52884const char kEnableSyncUSSBookmarksName[] = "Enable USS for bookmarks sync";
885const char kEnableSyncUSSBookmarksDescription[] =
886 "Enables the new, experimental implementation of bookmark sync";
887
Mikel Astiz38837f82018-04-24 22:23:23888const char kEnableSyncUSSSessionsName[] = "Enable USS for sessions sync";
889const char kEnableSyncUSSSessionsDescription[] =
890 "Enables the new, experimental implementation of session sync (aka tab "
891 "sync).";
892
Brett Wilsonf27ff602017-07-07 22:28:47893const char kEnableUseZoomForDsfName[] =
894 "Use Blink's zoom for device scale factor.";
895const char kEnableUseZoomForDsfDescription[] =
896 "If enabled, Blink uses its zooming mechanism to scale content for device "
897 "scale factor.";
898const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
899const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
900const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
901
Patrick Noland8ee016e2018-01-24 11:44:53902const char kEnableScrollAnchorSerializationName[] =
903 "Scroll Anchor Serialization";
904const char kEnableScrollAnchorSerializationDescription[] =
905 "Save the scroll anchor and use it to restore the scroll position when "
906 "navigating.";
907
Brad Nelson5cd500e2018-01-04 00:50:19908const char kEnableSharedArrayBufferName[] =
909 "Experimental enabled SharedArrayBuffer support in JavaScript.";
910const char kEnableSharedArrayBufferDescription[] =
911 "Enable SharedArrayBuffer support in JavaScript.";
912
Brett Wilsonf27ff602017-07-07 22:28:47913const char kEnableWasmName[] = "WebAssembly structured cloning support.";
914const char kEnableWasmDescription[] =
915 "Enable web pages to use WebAssembly structured cloning.";
916
Kim Paulhamusae635a32018-06-27 07:30:54917const char kEnableWebAuthenticationAPIName[] = "Web Authentication API";
918const char kEnableWebAuthenticationAPIDescription[] =
Kim Paulhamus92431372018-07-20 02:25:47919 "Enable Web Authentication API support.";
920
Lei Zhang0ca70ea2018-09-07 17:51:01921const char kEnableWebAuthenticationCableSupportName[] =
Kim Paulhamus92431372018-07-20 02:25:47922 "Web Authentication caBLE support";
Lei Zhang0ca70ea2018-09-07 17:51:01923const char kEnableWebAuthenticationCableSupportDescription[] =
Kim Paulhamus92431372018-07-20 02:25:47924 "Enable the cloud-assisted pairingless BLE protocol for use with "
925 "the Web Authentication API.";
Kim Paulhamusae635a32018-06-27 07:30:54926
Brett Wilsonf27ff602017-07-07 22:28:47927const char kEnableImageCaptureAPIName[] = "Image Capture API";
928const char kEnableImageCaptureAPIDescription[] =
929 "Enables the Web Platform Image Capture API: takePhoto(), "
930 "getPhotoCapabilities(), etc.";
931
Ramin Halavatic158b182018-10-18 14:04:54932const char kEnableIncognitoWindowCounterName[] = "Incognito Window Counter";
933const char kEnableIncognitoWindowCounterDescription[] =
934 "Shows the count of Incognito windows next to the Incognito icon on the "
935 "toolbar.";
936
Brett Wilsonf27ff602017-07-07 22:28:47937const char kEnableZeroSuggestRedirectToChromeName[] =
938 "Experimental contextual omnibox suggestion";
939const char kEnableZeroSuggestRedirectToChromeDescription[] =
940 "Change omnibox contextual suggestions to an experimental source. Note "
941 "that this is not an on/off switch for contextual omnibox and it only "
942 "applies to suggestions provided before the user starts typing a URL or a "
943 "search query (i.e. zero suggest).";
944
Clemens Hammacher0c8a15a2018-04-27 13:45:32945const char kEnableWasmBaselineName[] = "WebAssembly baseline compiler";
946const char kEnableWasmBaselineDescription[] =
947 "Enables WebAssembly baseline compilation and tier up.";
948
Ben Smith24c1e5c2018-06-20 01:09:02949const char kEnableWasmThreadsName[] = "WebAssembly threads support.";
950const char kEnableWasmThreadsDescription[] =
951 "Enables support for the WebAssembly Threads proposal. Implies "
952 "#shared-array-buffer and #enable-webassembly.";
953
Brett Wilsonf27ff602017-07-07 22:28:47954const char kExpensiveBackgroundTimerThrottlingName[] =
955 "Throttle expensive background timers";
956const char kExpensiveBackgroundTimerThrottlingDescription[] =
957 "Enables intervention to limit CPU usage of background timers to 1%.";
958
959const char kExperimentalAppBannersName[] = "Experimental app banners";
960const char kExperimentalAppBannersDescription[] =
Matt Giucad4870432017-11-24 01:04:38961 "Enables a new experimental app banner flow and UI. Implies "
962 "#enable-app-banners.";
Brett Wilsonf27ff602017-07-07 22:28:47963
964const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
965const char kExperimentalCanvasFeaturesDescription[] =
966 "Enables the use of experimental canvas features which are still in "
967 "development.";
968
Nicholas Verneccd8259802018-02-22 01:22:04969const char kExperimentalCrostiniUIName[] = "Experimental Crostini";
970const char kExperimentalCrostiniUIDescription[] =
971 "Enables in-development Crostini features.";
972
Brett Wilsonf27ff602017-07-07 22:28:47973const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
974const char kExperimentalExtensionApisDescription[] =
975 "Enables experimental extension APIs. Note that the extension gallery "
976 "doesn't allow you to upload extensions that use experimental APIs.";
977
Ian Clelland37a985d2018-05-04 02:43:13978const char kExperimentalProductivityFeaturesName[] =
979 "Experimental Productivity Features";
980const char kExperimentalProductivityFeaturesDescription[] =
981 "Enable support for experimental developer productivity features, such as "
982 "Layered APIs and policies for avoiding slow rendering.";
983
Brett Wilsonf27ff602017-07-07 22:28:47984const char kExperimentalSecurityFeaturesName[] =
985 "Potentially annoying security features";
986const char kExperimentalSecurityFeaturesDescription[] =
987 "Enables several security features that will likely break one or more "
988 "pages that you visit on a daily basis. Strict mixed content checking, for "
989 "example. And locking powerful features to secure contexts. This flag will "
990 "probably annoy you.";
991
992const char kExperimentalWebPlatformFeaturesName[] =
993 "Experimental Web Platform features";
994const char kExperimentalWebPlatformFeaturesDescription[] =
995 "Enables experimental Web Platform features that are in development.";
996
997const char kExtensionContentVerificationName[] =
998 "Extension Content Verification";
999const char kExtensionContentVerificationDescription[] =
1000 "This flag can be used to turn on verification that the contents of the "
1001 "files on disk for extensions from the webstore match what they're "
1002 "expected to be. This can be used to turn on this feature if it would not "
1003 "otherwise have been turned on, but cannot be used to turn it off (because "
1004 "this setting can be tampered with by malware).";
1005const char kExtensionContentVerificationBootstrap[] =
1006 "Bootstrap (get expected hashes, but do not enforce them)";
1007const char kExtensionContentVerificationEnforce[] =
1008 "Enforce (try to get hashes, and enforce them if successful)";
1009const char kExtensionContentVerificationEnforceStrict[] =
1010 "Enforce strict (hard fail if we can't get hashes)";
1011
1012const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
1013const char kExtensionsOnChromeUrlsDescription[] =
1014 "Enables running extensions on chrome:// URLs, where extensions explicitly "
1015 "request this permission.";
galinapae72e152017-05-12 13:12:281016
Brett Wilsonecb80982017-07-12 20:34:511017const char kFastUnloadName[] = "Fast tab/window close";
1018const char kFastUnloadDescription[] =
1019 "Enables fast tab/window closing - runs a tab's onunload js handler "
1020 "independently of the GUI.";
vabr0215a8e2017-03-28 12:47:341021
Brett Wilsonecb80982017-07-12 20:34:511022const char kFeaturePolicyName[] = "Feature Policy";
1023const char kFeaturePolicyDescription[] =
1024 "Enables granting and removing access to features through the "
1025 "Feature-Policy HTTP header.";
vabr0215a8e2017-03-28 12:47:341026
Brett Wilsonecb80982017-07-12 20:34:511027const char kFontCacheScalingName[] = "FontCache scaling";
1028const char kFontCacheScalingDescription[] =
1029 "Reuse a cached font in the renderer to serve different sizes of font for "
1030 "faster layout.";
1031
1032const char kForceEffectiveConnectionTypeName[] =
1033 "Override effective connection type";
1034const char kForceEffectiveConnectionTypeDescription[] =
1035 "Overrides the effective connection type of the current connection "
Thanh Lea98f12f2017-12-18 19:35:301036 "returned by the network quality estimator. Slow 2G on Cellular returns "
1037 "Slow 2G when connected to a cellular network, and the actual estimate "
1038 "effective connection type when not on a cellular network. Previews are "
1039 "usually served on 2G networks.";
Brett Wilsonecb80982017-07-12 20:34:511040const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
1041const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
1042const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
Thanh Lea98f12f2017-12-18 19:35:301043const char kEffectiveConnectionTypeSlow2GOnCellularDescription[] =
1044 "Slow 2G On Cellular";
Brett Wilsonecb80982017-07-12 20:34:511045const char kEffectiveConnectionType2GDescription[] = "2G";
1046const char kEffectiveConnectionType3GDescription[] = "3G";
1047const char kEffectiveConnectionType4GDescription[] = "4G";
1048
1049const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
1050const char kFillOnAccountSelectDescription[] =
1051 "Filling of passwords when an account is explicitly selected by the user "
1052 "rather than autofilling credentials on page load.";
1053
Brett Wilsonecb80982017-07-12 20:34:511054const char kForceTextDirectionName[] = "Force text direction";
1055const char kForceTextDirectionDescription[] =
1056 "Explicitly force the per-character directionality of UI text to "
1057 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
1058 "direction of the character language.";
1059const char kForceDirectionLtr[] = "Left-to-right";
1060const char kForceDirectionRtl[] = "Right-to-left";
1061
1062const char kForceUiDirectionName[] = "Force UI direction";
1063const char kForceUiDirectionDescription[] =
1064 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
1065 "mode, overriding the default direction of the UI language.";
1066
1067const char kFramebustingName[] =
1068 "Framebusting requires same-origin or a user gesture";
1069const char kFramebustingDescription[] =
1070 "Don't permit an iframe to navigate the top level browsing context unless "
1071 "they are same-origin or the iframe is processing a user gesture.";
1072
Matt Reynolds043469f2018-05-01 22:56:581073const char kGamepadVibrationName[] = "Gamepad Vibration";
1074const char kGamepadVibrationDescription[] =
1075 "Enables haptic vibration effects on supported gamepads.";
Brett Wilsonecb80982017-07-12 20:34:511076
Brett Wilsonecb80982017-07-12 20:34:511077const char kGpuRasterizationName[] = "GPU rasterization";
1078const char kGpuRasterizationDescription[] =
1079 "Use GPU to rasterize web content. Requires impl-side painting.";
Brett Wilson7b44537e2017-08-18 01:38:281080const char kForceGpuRasterization[] = "Force-enabled for all layers";
Brett Wilsonecb80982017-07-12 20:34:511081
Ioana Pandele1ed7ef72018-11-21 15:22:031082const char kGooglePasswordManagerName[] = "Google Password Manager UI";
1083const char kGooglePasswordManagerDescription[] =
1084 "Enables access to the Google Password Manager UI from Chrome.";
1085
Brett Wilsonecb80982017-07-12 20:34:511086const char kGoogleProfileInfoName[] = "Google profile name and icon";
1087const char kGoogleProfileInfoDescription[] =
1088 "Enables using Google information to populate the profile name and icon in "
1089 "the avatar menu.";
1090
Takumi Fujimotofb71e332018-03-31 14:04:081091const char kViewsCastDialogName[] = "Views Cast dialog";
1092const char kViewsCastDialogDescription[] =
Takumi Fujimoto541e5e22018-05-30 00:46:311093 "Replace the WebUI Cast dialog with a Views toolkit dialog. This requires "
Takumi Fujimoto28351acc2018-05-31 17:19:531094 "#views-browser-windows on Mac. This feature is activated if either this "
Robert Liao3ecf97c2018-06-05 01:24:541095 "flag or #upcoming-ui-features is enabled";
Takumi Fujimotofb71e332018-03-31 14:04:081096
Gabrielle Paladoaebf7ca2019-01-16 07:07:061097const char kHandwritingGestureName[] = "Handwriting Gestures";
1098const char kHandwritingGestureDescription[] =
1099 "Enables handwriting gestures within the virtual keyboard";
1100
Manu Cornet4a908de2018-04-09 04:32:271101const char kHideActiveAppsFromShelfName[] =
1102 "Hide running apps (that are not pinned) from the shelf";
1103const char kHideActiveAppsFromShelfDescription[] =
1104 "Save space in the shelf by hiding running apps (that are not pinned).";
Manu Cornete5f855b2018-03-13 03:35:251105
Brett Wilsonecb80982017-07-12 20:34:511106const char kHistoryRequiresUserGestureName[] =
1107 "New history entries require a user gesture.";
1108const char kHistoryRequiresUserGestureDescription[] =
1109 "Require a user gesture to add a history entry.";
1110const char kHyperlinkAuditingName[] = "Hyperlink auditing";
1111const char kHyperlinkAuditingDescription[] = "Sends hyperlink auditing pings.";
1112
Ryan Landay4242dbc22018-04-04 01:47:331113const char kHorizontalTabSwitcherAndroidName[] =
1114 "Enable horizontal tab switcher";
1115const char kHorizontalTabSwitcherAndroidDescription[] =
1116 "Changes the layout of the Android tab switcher so tabs scroll "
1117 "horizontally instead of vertically.";
1118
Matt Simmons2048b2a2018-12-20 20:12:561119const char kTabSwitcherOnReturnName[] = "Enable tab switcher on return";
1120const char kTabSwitcherOnReturnDescription[] =
1121 "Enable tab switcher on return after specified time has elapsed";
1122
Brett Wilsonecb80982017-07-12 20:34:511123const char kHostedAppQuitNotificationName[] =
1124 "Quit notification for hosted apps";
1125const char kHostedAppQuitNotificationDescription[] =
1126 "Display a notification when quitting Chrome if hosted apps are currently "
1127 "running.";
1128
1129const char kHostedAppShimCreationName[] =
1130 "Creation of app shims for hosted apps on Mac";
1131const char kHostedAppShimCreationDescription[] =
1132 "Create app shims on Mac when creating a hosted app.";
1133
Ana-Cosmina Popescuda3bcbe2017-09-22 18:24:481134const char kHtmlBasedUsernameDetectorName[] = "HTML-based username detector";
1135const char kHtmlBasedUsernameDetectorDescription[] =
1136 "Use HTML-based username detector for the password manager.";
1137
Brett Wilsonecb80982017-07-12 20:34:511138const char kIconNtpName[] = "Large icons on the New Tab page";
1139const char kIconNtpDescription[] =
1140 "Enable the experimental New Tab page using large icons.";
1141
1142const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
1143const char kIgnoreGpuBlacklistDescription[] =
1144 "Overrides the built-in software rendering list and enables "
1145 "GPU-acceleration on unsupported system configurations.";
1146
Ryan Sturm8c3dbc92018-06-26 19:22:371147const char kIgnorePreviewsBlacklistName[] = "Ignore Previews Blocklist";
Thanh Le5f090efa52017-12-27 22:39:441148const char kIgnorePreviewsBlacklistDescription[] =
Ryan Sturm8c3dbc92018-06-26 19:22:371149 "Ignore decisions made by the PreviewsBlockList";
Thanh Le5f090efa52017-12-27 22:39:441150
Alexandre Frechetted3e1b542018-12-13 14:40:501151const char kImprovedGeoLanguageDataName[] = "Improved Geo-language Data";
1152const char kImprovedGeoLanguageDataDescription[] =
1153 "Makes the GeoLanguageModel use higher quality, more refined ULP "
1154 "geo-language data.";
1155
Brett Wilsonecb80982017-07-12 20:34:511156const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
1157const char kInProductHelpDemoModeChoiceDescription[] =
1158 "Selects the In-Product Help demo mode.";
1159
1160const char kJavascriptHarmonyName[] = "Experimental JavaScript";
1161const char kJavascriptHarmonyDescription[] =
1162 "Enable web pages to use experimental JavaScript features.";
1163
1164const char kJavascriptHarmonyShippingName[] =
1165 "Latest stable JavaScript features";
1166const char kJavascriptHarmonyShippingDescription[] =
1167 "Some web pages use legacy or non-standard JavaScript extensions that may "
1168 "conflict with the latest JavaScript features. This flag allows disabling "
1169 "support of those features for compatibility with such pages.";
1170
gogeraldfd7675d2018-06-19 22:57:351171const char kJustInTimeServiceWorkerPaymentAppName[] =
1172 "Just-in-time service worker payment app";
1173const char kJustInTimeServiceWorkerPaymentAppDescription[] =
1174 "Allow crawling just-in-time service worker payment app when there is no "
1175 "installed service worker payment app for a payment request.";
1176
Yutaka Hiranof7f2f632017-09-06 10:40:081177const char kKeepAliveRendererForKeepaliveRequestsName[] =
1178 "Keep a renderer alive for keepalive fetch requests";
1179const char kKeepAliveRendererForKeepaliveRequestsDescription[] =
1180 "Keep a render process alive when the process has a pending fetch request "
1181 "with `keepalive' specified.";
1182
Joe Downing095fd6d2018-02-01 18:40:361183const char kKeyboardLockApiName[] = "Experimental keyboard lock API.";
1184const char kKeyboardLockApiDescription[] =
1185 "Enables websites to use the new keyboard{Lock|Unlock} API to intercept "
1186 "specific key events and have them routed directly to the webpage when in "
1187 "fullscreen mode. Implies #experimental-keyboard-lock-ui.";
1188
Brett Wilsonecb80982017-07-12 20:34:511189const char kLcdTextName[] = "LCD text antialiasing";
1190const char kLcdTextDescription[] =
1191 "If disabled, text is rendered with grayscale antialiasing instead of LCD "
1192 "(subpixel) when doing accelerated compositing.";
1193
Matt Giucac399982f2017-10-06 07:51:291194const char kLeftToRightUrlsName[] =
1195 "Render bidirectional URLs from left to right";
1196const char kLeftToRightUrlsDescription[] =
1197 "An experimental Bidi URL rendering algorithm where the URL components are "
1198 "always shown in order from left to right, regardless of any RTL "
1199 "characters. (The contents of each component are still rendered with the "
1200 "normal Bidi algorithm.)";
1201
Brett Wilsonecb80982017-07-12 20:34:511202const char kLoadMediaRouterComponentExtensionName[] =
1203 "Load Media Router Component Extension";
1204const char kLoadMediaRouterComponentExtensionDescription[] =
1205 "Loads the Media Router component extension at startup.";
1206
Mustafa Emre Acer137dc8b2018-08-29 20:38:131207const char kLookalikeUrlNavigationSuggestionsName[] =
1208 "Navigation suggestions for lookalike URLs";
1209const char kLookalikeUrlNavigationSuggestionsDescription[] =
1210 "Enable navigation suggestions for URLs that are visually similar to "
1211 "popular domains or to domains with a site engagement score.";
1212
Brett Wilsonecb80982017-07-12 20:34:511213const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
1214const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
Brett Wilsonecb80982017-07-12 20:34:511215
Lei Zhang2eca9082017-10-17 20:42:501216const char kMaterialDesignIncognitoNTPName[] = "Material Design Incognito NTP.";
1217const char kMaterialDesignIncognitoNTPDescription[] =
Brett Wilsonecb80982017-07-12 20:34:511218 "If enabled, the Incognito New Tab page uses the new material design with "
1219 "a better readable text.";
1220
spqchanb87755692018-04-05 00:46:091221const char kMediaRouterCastAllowAllIPsName[] =
1222 "Connect to Cast devices on all IP addresses";
1223const char kMediaRouterCastAllowAllIPsDescription[] =
1224 "Have the Media Router connect to Cast devices on all IP addresses, not "
Nick Harperd30507ca2018-08-16 20:24:311225 "just RFC1918/RFC4193 private addresses.";
spqchanb87755692018-04-05 00:46:091226
Brett Wilsonecb80982017-07-12 20:34:511227const char kMemoryCoordinatorName[] = "Memory coordinator";
1228const char kMemoryCoordinatorDescription[] =
1229 "Enable memory coordinator instead of memory pressure listeners.";
1230
1231const char kMessageCenterNewStyleNotificationName[] = "New style notification";
1232const char kMessageCenterNewStyleNotificationDescription[] =
1233 "Enables the experiment style of material-design notification";
1234
Brett Wilsonecb80982017-07-12 20:34:511235const char kMhtmlGeneratorOptionName[] = "MHTML Generation Option";
1236const char kMhtmlGeneratorOptionDescription[] =
1237 "Provides experimental options for MHTML file generator.";
1238const char kMhtmlSkipNostoreMain[] = "Skips no-store main frame.";
1239const char kMhtmlSkipNostoreAll[] = "Skips all no-store resources.";
1240
Brett Wilsonecb80982017-07-12 20:34:511241const char kNewAudioRenderingMixingStrategyName[] =
1242 "New audio rendering mixing strategy";
1243const char kNewAudioRenderingMixingStrategyDescription[] =
1244 "Use the new audio rendering mixing strategy.";
1245
1246const char kNewBookmarkAppsName[] = "The new bookmark app system";
1247const char kNewBookmarkAppsDescription[] =
1248 "Enables the new system for creating bookmark apps.";
1249
Vadym Doroshenkocd4ff782018-07-24 13:41:021250const char kNewPasswordFormParsingName[] =
1251 "New password form parsing for filling passwords";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241252const char kNewPasswordFormParsingDescription[] =
Vadym Doroshenkocd4ff782018-07-24 13:41:021253 "Replaces existing form parsing for filling in password manager with a new "
1254 "version, currently under development. WARNING: when enabled, Password "
1255 "Manager might stop working";
1256
1257const char kNewPasswordFormParsingForSavingName[] =
1258 "New password form parsing for saving passwords";
1259const char kNewPasswordFormParsingForSavingDescription[] =
1260 "Replaces existing form parsing for saving in password manager with a new "
1261 "version, currently under development. WARNING: when enabled, Password "
1262 "Manager might stop working";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241263
Brett Wilsonecb80982017-07-12 20:34:511264const char kNewRemotePlaybackPipelineName[] =
1265 "Enable the new remote playback pipeline.";
1266const char kNewRemotePlaybackPipelineDescription[] =
1267 "Enable the new pipeline for playing media element remotely via "
1268 "RemotePlayback API or native controls.";
CJ DiMeglio7b4a199f2017-11-30 01:26:501269const char kUseSurfaceLayerForVideoName[] =
1270 "Enable the use of SurfaceLayer objects for videos.";
1271const char kUseSurfaceLayerForVideoDescription[] =
1272 "Enable compositing onto a Surface instead of a VideoLayer "
1273 "for videos.";
Brett Wilsonecb80982017-07-12 20:34:511274
1275const char kNewUsbBackendName[] = "Enable new USB backend";
1276const char kNewUsbBackendDescription[] =
1277 "Enables the new experimental USB backend for Windows.";
vabr0215a8e2017-03-28 12:47:341278
Sonny Sasaka2d200432018-03-22 17:43:161279const char kNewblueName[] = "Newblue";
1280const char kNewblueDescription[] =
1281 "Enables the use of newblue Bluetooth daemon.";
1282
Peter Boström7df25c72018-12-12 06:40:191283const char kNewTabLoadingAnimation[] = "New tab-loading animation";
1284const char kNewTabLoadingAnimationDescription[] =
1285 "Enables a new look for the tab-loading animation.";
1286
Peter Kasting63097912018-06-30 02:09:031287const char kNewTabButtonPosition[] = "New tab button position";
1288const char kNewTabButtonPositionDescription[] =
1289 "Controls placement of the new tab button within the tabstrip.";
1290const char kNewTabButtonPositionOppositeCaption[] = "Opposite caption buttons";
1291const char kNewTabButtonPositionLeading[] = "Leading";
1292const char kNewTabButtonPositionAfterTabs[] = "After tabs";
1293const char kNewTabButtonPositionTrailing[] = "Trailing";
1294
Egor Pasko6fed3822018-05-30 10:33:141295const char kNostatePrefetchName[] = "NoState Prefetch";
vabr0215a8e2017-03-28 12:47:341296const char kNostatePrefetchDescription[] =
Egor Pasko6fed3822018-05-30 10:33:141297 R"*(If enabled, pre-downloads resources to improve page load speed.)*";
vabr0215a8e2017-03-28 12:47:341298
Alex Newcomerd7b0cc42018-05-25 22:58:481299const char kNotificationIndicatorName[] = "Notification Indicators";
1300const char kNotificationIndicatorDescription[] =
1301 "Enable notification indicators, which appear on app icons when a "
1302 "notification is active. This will also enable notifications in context "
1303 "menus.";
1304
Brett Wilsonecb80982017-07-12 20:34:511305const char kNotificationsNativeFlagName[] = "Enable native notifications.";
1306const char kNotificationsNativeFlagDescription[] =
1307 "Enable support for using the native notification toasts and notification "
1308 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:341309
Valeriya Sinevich972ac122018-09-05 07:33:191310const char kUseMultiloginEndpointName[] = "Use Multilogin endpoint.";
1311const char kUseMultiloginEndpointDescription[] =
1312 "Use Gaia OAuth multilogin for identity consistency.";
1313
Zentaro Kavanaghbad511c2017-10-18 22:29:001314#if defined(OS_POSIX)
1315const char kNtlmV2EnabledName[] = "Enable NTLMv2 Authentication";
1316const char kNtlmV2EnabledDescription[] =
1317 "Enable NTLMv2 HTTP Authentication. This disables NTLMv1 support.";
1318#endif
1319
Brett Wilsonecb80982017-07-12 20:34:511320const char kNumRasterThreadsName[] = "Number of raster threads";
1321const char kNumRasterThreadsDescription[] =
1322 "Specify the number of raster threads.";
1323const char kNumRasterThreadsOne[] = "1";
1324const char kNumRasterThreadsTwo[] = "2";
1325const char kNumRasterThreadsThree[] = "3";
1326const char kNumRasterThreadsFour[] = "4";
1327
1328const char kOfferStoreUnmaskedWalletCardsName[] =
1329 "Google Payments card saving checkbox";
1330const char kOfferStoreUnmaskedWalletCardsDescription[] =
1331 "Show the checkbox to offer local saving of a credit card downloaded from "
1332 "the server.";
1333
1334const char kOfflineAutoReloadName[] = "Offline Auto-Reload Mode";
1335const char kOfflineAutoReloadDescription[] =
1336 "Pages that fail to load while the browser is offline will be "
1337 "auto-reloaded when the browser is online again.";
1338
1339const char kOfflineAutoReloadVisibleOnlyName[] =
1340 "Only Auto-Reload Visible Tabs";
1341const char kOfflineAutoReloadVisibleOnlyDescription[] =
1342 "Pages that fail to load while the browser is offline will only be "
1343 "auto-reloaded if their tab is visible.";
1344
Brett Wilsonecb80982017-07-12 20:34:511345const char kOmniboxDisplayTitleForCurrentUrlName[] =
1346 "Include title for the current URL in the omnibox";
1347const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
1348 "In the event that the omnibox provides suggestions on-focus, the URL of "
1349 "the current page is provided as the first suggestion without a title. "
1350 "Enabling this flag causes the title to be displayed.";
1351
Tomasz Wiszkowskic87dff12019-01-15 02:57:511352const char kOmniboxNewAnswerLayoutName[] = "Omnibox new answer layout";
1353const char kOmniboxNewAnswerLayoutDescription[] =
1354 "Modernize omnibox answers using an enhanced layout with larger icons.";
1355
Benoit Lizeab08362c2017-07-19 14:50:541356const char kOmniboxSpareRendererName[] =
1357 "Start spare renderer on omnibox focus";
1358const char kOmniboxSpareRendererDescription[] =
1359 "When the omnibox is focused, start an empty spare renderer. This can "
1360 "speed up the load of the navigation from the omnibox.";
1361
Tommy C. Lie4194b732018-09-28 22:21:511362const char kOmniboxUIHideSteadyStateUrlSchemeName[] =
1363 "Omnibox UI Hide Steady-State URL Scheme";
1364const char kOmniboxUIHideSteadyStateUrlSchemeDescription[] =
1365 "In the omnibox, hide the scheme from steady state displayed URLs. It is "
Tommy C. Libef94ee02018-10-17 19:56:361366 "restored during editing.";
Tommy C. Lie4194b732018-09-28 22:21:511367
Tommy C. Lib20aec72018-11-19 21:38:231368const char kOmniboxUIOneClickUnelideName[] = "Omnibox UI One Click Unelide";
1369const char kOmniboxUIOneClickUnelideDescription[] =
1370 "In the omnibox, undo all unelisions with a single click or focus action.";
1371
Tommy C. Lie4194b732018-09-28 22:21:511372const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsName[] =
1373 "Omnibox UI Hide Steady-State URL Trivial Subdomains";
1374const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsDescription[] =
1375 "In the omnibox, hide trivial subdomains from steady state displayed URLs. "
Tommy C. Libef94ee02018-10-17 19:56:361376 "Hidden portions are restored during editing.";
1377
1378const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefName[] =
1379 "Omnibox UI Hide Steady-State URL Path, Query, and Ref";
1380const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefDescription[] =
1381 "In the omnibox, hide the path, query and ref from steady state displayed "
1382 "URLs. Hidden portions are restored during editing.";
Tommy C. Lid79d4402017-12-22 22:49:121383
Brett Wilsonecb80982017-07-12 20:34:511384const char kOmniboxUIMaxAutocompleteMatchesName[] =
1385 "Omnibox UI Max Autocomplete Matches";
1386
1387const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
1388 "Changes the maximum number of autocomplete matches displayed in the "
1389 "Omnibox UI.";
1390
Justin Donnelly65c9e8b2017-10-01 05:15:011391const char kOmniboxUISwapTitleAndUrlName[] = "Omnibox UI Swap Title and URL";
1392const char kOmniboxUISwapTitleAndUrlDescription[] =
1393 "In the omnibox dropdown, shows titles before URLs when both are "
1394 "available.";
1395
Troy Hildebrandtb32637ca2018-02-21 23:25:091396const char kOmniboxVoiceSearchAlwaysVisibleName[] =
1397 "Omnibox Voice Search Always Visible";
1398const char kOmniboxVoiceSearchAlwaysVisibleDescription[] =
1399 "Always displays voice search icon in focused omnibox as long as voice "
1400 "search is possible";
1401
Vadym Doroshenko6b8f64d2018-11-26 15:35:391402const char kOnlyNewPasswordFormParsingName[] =
1403 "Use only new password form parsing";
1404const char kOnlyNewPasswordFormParsingDescription[] =
1405 "The old password form parsing is disabled";
1406
Mark Lieufaa1b762019-01-08 19:37:281407const char kOnTheFlyMhtmlHashComputationName[] =
1408 "On-The-Fly MHTML Hash Computation";
1409const char kOnTheFlyMhtmlHashComputationDescription[] =
1410 "Save MHTML files to the target location and calculate their content "
1411 "digests in one step.";
1412
Adrienne Walkerc87477e2018-06-06 22:28:211413const char kOopRasterizationName[] = "Out of process rasterization";
1414const char kOopRasterizationDescription[] =
1415 "Perform Ganesh raster in the GPU Process instead of the renderer. "
1416 "Must also enable GPU rasterization";
1417
Brett Wilsonecb80982017-07-12 20:34:511418const char kOriginTrialsName[] = "Origin Trials";
1419const char kOriginTrialsDescription[] =
1420 "Enables origin trials for controlling access to feature/API experiments.";
1421
Becca Hughes930d8cd2017-10-02 11:09:121422const char kOverflowIconsForMediaControlsName[] =
1423 "Icons on Media Controls Overflow Menu";
1424const char kOverflowIconsForMediaControlsDescription[] =
1425 "Displays icons on the overflow menu of the native media controls";
1426
Brett Wilsonecb80982017-07-12 20:34:511427const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
1428const char kOverlayScrollbarsDescription[] =
1429 "Enable the experimental overlay scrollbars implementation. You must also "
1430 "enable threaded compositing to have the scrollbars animate.";
1431
chaopenge8aa016b2017-08-24 15:20:191432const char kOverlayScrollbarsFlashAfterAnyScrollUpdateName[] =
1433 "Flash Overlay Scrollbars After Any Scroll Update";
1434const char kOverlayScrollbarsFlashAfterAnyScrollUpdateDescription[] =
1435 "Flash Overlay Scrollbars After any scroll update happends in page. You"
1436 " must also enable Overlay Scrollbars.";
1437
chaopeng343678022017-08-24 18:45:001438const char kOverlayScrollbarsFlashWhenMouseEnterName[] =
1439 "Flash Overlay Scrollbars When Mouse Enter";
1440const char kOverlayScrollbarsFlashWhenMouseEnterDescription[] =
1441 "Flash Overlay Scrollbars When Mouse Enter a scrollable area. You must also"
1442 " enable Overlay Scrollbars.";
1443
Daniele Castagna74ddb9c2018-06-21 22:59:021444const char kOverlayStrategiesName[] = "Select HW overlay strategies";
1445const char kOverlayStrategiesDescription[] =
1446 "Select strategies used to promote quads to HW overlays.";
1447const char kOverlayStrategiesDefault[] = "Default";
1448const char kOverlayStrategiesNone[] = "None";
1449const char kOverlayStrategiesUnoccludedFullscreen[] =
1450 "Unoccluded fullscreen buffers (single-fullscreen)";
1451const char kOverlayStrategiesUnoccluded[] =
1452 "Unoccluded buffers (single-fullscreen,single-on-top)";
1453const char kOverlayStrategiesOccludedAndUnoccluded[] =
1454 "Occluded and unoccluded buffers "
1455 "(single-fullscreen,single-on-top,underlay)";
1456
Claudio Magni81326f92017-09-01 05:21:181457const char kUseNewAcceptLanguageHeaderName[] = "Use new Accept-Language header";
1458const char kUseNewAcceptLanguageHeaderDescription[] =
1459 "Adds the base language code after other corresponding language+region "
1460 "codes. This ensures that users receive content in their preferred "
1461 "language.";
1462
Brett Wilsonecb80982017-07-12 20:34:511463const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
1464const char kOverscrollHistoryNavigationDescription[] =
Mohsen Izadi88b392a2018-02-15 06:57:481465 "History navigation in response to horizontal overscroll.";
Brett Wilsonecb80982017-07-12 20:34:511466
1467const char kOverscrollStartThresholdName[] = "Overscroll start threshold";
1468const char kOverscrollStartThresholdDescription[] =
1469 "Changes overscroll start threshold relative to the default value.";
1470const char kOverscrollStartThreshold133Percent[] = "133%";
1471const char kOverscrollStartThreshold166Percent[] = "166%";
1472const char kOverscrollStartThreshold200Percent[] = "200%";
1473
chaopenge2b6e5f2018-05-08 16:40:451474const char kTouchpadOverscrollHistoryNavigationName[] =
1475 "Overscroll history navigation on Touchpad";
1476const char kTouchpadOverscrollHistoryNavigationDescription[] =
1477 "Allows swipe left/right from touchpad change browser navigation.";
1478
Xing Liu5400a002017-09-15 21:48:291479const char kParallelDownloadingName[] = "Parallel downloading";
1480const char kParallelDownloadingDescription[] =
Yannic Bonenbergera32f9902017-11-20 18:47:061481 "Enable parallel downloading to accelerate download speed.";
Xing Liu5400a002017-09-15 21:48:291482
Brett Wilsonecb80982017-07-12 20:34:511483const char kPassiveEventListenerDefaultName[] =
1484 "Passive Event Listener Override";
1485const char kPassiveEventListenerDefaultDescription[] =
1486 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
1487 "haven't requested otherwise) to be treated as passive. This will break "
1488 "touch/wheel behavior on some websites but is useful for demonstrating the "
1489 "potential performance benefits of adopting passive event listeners.";
1490const char kPassiveEventListenerTrue[] = "True (when unspecified)";
1491const char kPassiveEventListenerForceAllTrue[] = "Force All True";
1492
1493const char kPassiveEventListenersDueToFlingName[] =
1494 "Touch Event Listeners Passive Default During Fling";
1495const char kPassiveEventListenersDueToFlingDescription[] =
1496 "Forces touchstart, and first touchmove per scroll event listeners during "
1497 "fling to be treated as passive.";
1498
1499const char kPassiveDocumentEventListenersName[] =
1500 "Document Level Event Listeners Passive Default";
1501const char kPassiveDocumentEventListenersDescription[] =
1502 "Forces touchstart, and touchmove event listeners on document level "
1503 "targets (which haven't requested otherwise) to be treated as passive.";
1504
Sahel Sharify7400e882018-08-13 17:13:211505const char kPassiveDocumentWheelEventListenersName[] =
1506 "Document Level Wheel Event Listeners Passive Default";
1507const char kPassiveDocumentWheelEventListenersDescription[] =
1508 "Forces wheel, and mousewheel event listeners on document level targets "
1509 "(which haven't requested otherwise) to be treated as passive.";
1510
Vaclav Brozekd8a3f542017-11-16 14:21:131511const char kPasswordImportName[] = "Password import";
1512const char kPasswordImportDescription[] =
1513 "Import functionality in password settings.";
Brett Wilsonecb80982017-07-12 20:34:511514
Friedrich Horschige6c27742018-04-23 17:13:411515const char kPasswordsKeyboardAccessoryName[] =
1516 "Add password-related functions to keyboard accessory";
1517const char kPasswordsKeyboardAccessoryDescription[] =
1518 "Adds password generation button and toggle for the passwords bottom sheet "
1519 "to the keyboard accessory. Replaces password generation popups.";
1520
Christos Froussios6e060c42018-07-31 16:17:191521const char kPasswordsMigrateLinuxToLoginDBName[] =
1522 "Migrate passwords to \"Login Data\"";
1523const char kPasswordsMigrateLinuxToLoginDBDescription[] =
Christos Froussiose34c38a2018-09-04 14:27:591524 "Performs a one-off irreversible migration of passwords from the "
Christos Froussios6e060c42018-07-31 16:17:191525 "gnome-keyring or kwallet into the profile directory.";
1526
Rouslan Solomakhinded840112018-11-02 13:27:101527const char kPerMethodCanMakePaymentQuotaName[] =
1528 "Per-method canMakePayment() quota.";
1529const char kPerMethodCanMakePaymentQuotaDescription[] =
1530 "Allow calling canMakePayment() for different payment methods, as long as "
1531 "method-specific parameters remain unchanged.";
1532
Brett Wilsonecb80982017-07-12 20:34:511533const char kPinchScaleName[] = "Pinch scale";
1534const char kPinchScaleDescription[] =
1535 "Enables experimental support for scale using pinch.";
1536
Doug Arnett620ff542018-02-06 17:54:221537const char kPreviewsAllowedName[] = "Previews Allowed";
1538const char kPreviewsAllowedDescription[] =
1539 "Allows previews to be shown subject to specific preview types being "
1540 "enabled and the client experiencing specific triggering conditions. "
1541 "May be used as a kill-switch to turn off all potential preview types.";
1542
Brett Wilsonecb80982017-07-12 20:34:511543const char kPrintPdfAsImageName[] = "Print Pdf as Image";
1544const char kPrintPdfAsImageDescription[] =
1545 "If enabled, an option to print PDF files as images will be available in "
1546 "print preview.";
1547
1548const char kPrintPreviewRegisterPromosName[] =
1549 "Print Preview Registration Promos";
1550const char kPrintPreviewRegisterPromosDescription[] =
1551 "Enable registering unregistered cloud printers from print preview.";
1552
1553const char kProtectSyncCredentialName[] = "Autofill sync credential";
1554const char kProtectSyncCredentialDescription[] =
1555 "How the password manager handles autofill for the sync credential.";
1556
1557const char kProtectSyncCredentialOnReauthName[] =
1558 "Autofill sync credential only for transactional reauth pages";
1559const char kProtectSyncCredentialOnReauthDescription[] =
1560 "How the password manager handles autofill for the sync credential only "
1561 "for transactional reauth pages.";
1562
Mohsen Izadi93faac12017-07-29 04:45:151563const char kPullToRefreshName[] = "Pull-to-refresh gesture";
1564const char kPullToRefreshDescription[] =
1565 "Pull-to-refresh gesture in response to vertical overscroll.";
Mohsen Izadi8c59ba52018-04-12 18:52:011566const char kPullToRefreshEnabledTouchscreen[] = "Enabled for touchscreen only";
Mohsen Izadi93faac12017-07-29 04:45:151567
Troy Hildebrandt7228ad12018-02-23 21:18:241568const char kQueryInOmniboxName[] = "Query in Omnibox";
1569const char kQueryInOmniboxDescription[] =
1570 "Only display query terms in the omnibox when viewing a search results "
1571 "page.";
1572
Brett Wilsonecb80982017-07-12 20:34:511573const char kQuicName[] = "Experimental QUIC protocol";
1574const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1575
Emily Starke8878d52018-05-11 21:27:261576const char kRecurrentInterstitialName[] =
1577 "Show a message when the same SSL error recurs";
1578const char kRecurrentInterstitialDescription[] =
1579 "Enable a special message on the SSL certificate error page when the same "
1580 "SSL error occurs repeatedly.";
1581
Brett Wilsonecb80982017-07-12 20:34:511582const char kReducedReferrerGranularityName[] =
1583 "Reduce default 'referer' header granularity.";
1584const char kReducedReferrerGranularityDescription[] =
1585 "If a page hasn't set an explicit referrer policy, setting this flag will "
1586 "reduce the amount of information in the 'referer' header for cross-origin "
1587 "requests.";
1588
Lei Zhang0ca70ea2018-09-07 17:51:011589const char kRegionalLocalesAsDisplayUIName[] =
Claudio Magnie0a80bb2018-01-31 02:52:581590 "Allow regional locales as display UI";
Lei Zhang0ca70ea2018-09-07 17:51:011591const char kRegionalLocalesAsDisplayUIDescription[] =
Claudio Magnie0a80bb2018-01-31 02:52:581592 "This flag allows regional locales to be selected as display UI by the "
1593 "user in Language Settings. The actual locale of the system is derived "
1594 "from the user selection based on some simple fallback logic.";
1595
Christian Dullweber3cc579a22018-09-11 10:54:441596const char kRewriteLevelDBOnDeletionName[] =
1597 "Rewrite LevelDB instances after full deletions";
1598const char kRewriteLevelDBOnDeletionDescription[] =
1599 "Rewrite LevelDB instances to remove traces of deleted data from disk.";
1600
Yutaka Hirano4c0f2f5d452017-11-17 04:24:351601const char kRendererSideResourceSchedulerName[] =
1602 "Renderer side ResourceScheduler";
1603const char kRendererSideResourceSchedulerDescription[] =
1604 "Migrate some ResourceScheduler functionalities to renderer";
1605
Brett Wilsonecb80982017-07-12 20:34:511606const char kRequestTabletSiteName[] =
1607 "Request tablet site option in the settings menu";
1608const char kRequestTabletSiteDescription[] =
1609 "Allows the user to request tablet site. Web content is often optimized "
1610 "for tablet devices. When this option is selected the user agent string is "
1611 "changed to indicate a tablet device. Web content optimized for tablets is "
1612 "received there after for the current tab.";
1613
1614const char kResetAppListInstallStateName[] =
1615 "Reset the App Launcher install state on every restart.";
1616const char kResetAppListInstallStateDescription[] =
1617 "Reset the App Launcher install state on every restart. While this flag is "
1618 "set, Chrome will forget the launcher has been installed each time it "
1619 "starts. This is used for testing the App Launcher install flow.";
1620
Kinuko Yasuda33955082018-06-19 10:14:591621const char kResourceLoadSchedulerName[] = "Enable resource load throttling";
Brett Wilsonecb80982017-07-12 20:34:511622const char kResourceLoadSchedulerDescription[] =
Kinuko Yasuda33955082018-06-19 10:14:591623 "Uses the resource load scheduler in blink to throttle resource load "
1624 "requests.";
Brett Wilsonecb80982017-07-12 20:34:511625
Daniel Rubery91874e32019-01-10 22:12:341626const char kSafeBrowsingUseAPDownloadVerdictsName[] =
1627 "Request Advanced Protection verdicts when inspecting downloads";
1628const char kSafeBrowsingUseAPDownloadVerdictsDescription[] =
1629 "If enabled, download protection will request Advanced Protection "
1630 "verdicts from Safe Browsing. These will provide stronger protections "
1631 "from files Safe Browsing is unsure about.";
1632
Brett Wilsonecb80982017-07-12 20:34:511633const char kSafeSearchUrlReportingName[] = "SafeSearch URLs reporting.";
1634const char kSafeSearchUrlReportingDescription[] =
1635 "If enabled, inappropriate URLs can be reported back to SafeSearch.";
1636
Alexei Filippov98772752018-01-27 08:26:521637const char kSamplingHeapProfilerName[] = "Native memory sampling profiler.";
1638const char kSamplingHeapProfilerDescription[] =
1639 "Enables native memory sampling profiler with specified rate in KiB. "
1640 "If sampling rate is not provided the default value of 128 KiB is used.";
1641
Brett Wilsonecb80982017-07-12 20:34:511642const char kSaveasMenuLabelExperimentName[] =
1643 "Switch 'Save as' menu labels to 'Download'";
1644const char kSaveasMenuLabelExperimentDescription[] =
1645 "Enables an experiment to switch menu labels that use 'Save as...' to "
1646 "'Download'.";
1647
1648const char kSavePageAsMhtmlName[] = "Save Page as MHTML";
1649const char kSavePageAsMhtmlDescription[] =
1650 "Enables saving pages as MHTML: a single text file containing HTML and all "
1651 "sub-resources.";
1652
Jeffrey Cohene49cc59c2018-10-23 16:27:281653const char kSendTabToSelfName[] = "Send tab to self";
1654const char kSendTabToSelfDescription[] =
1655 "Allows users to push tabs from Android devices to other synced "
1656 "devices, in order to easily transition those tabs to the new device ";
1657
gogeraldd5061b592017-09-06 23:39:551658const char kServiceWorkerPaymentAppsName[] = "Service Worker payment apps";
1659const char kServiceWorkerPaymentAppsDescription[] =
1660 "Enable Service Worker applications to integrate as payment apps";
1661
momohattfc352292018-08-29 05:12:361662const char kServiceWorkerImportedScriptUpdateCheckName[] =
1663 "Enable update check for service worker importScripts() resources";
1664const char kServiceWorkerImportedScriptUpdateCheckDescription[] =
1665 "Extend byte-for-byte update check for scripts that are imported by the "
1666 "service worker script via importScripts().";
1667
Lei Zhang0ca70ea2018-09-07 17:51:011668const char kServiceWorkerServicificationName[] = "Servicified service workers";
1669const char kServiceWorkerServicificationDescription[] =
Makoto Shimazu22078cc2018-02-21 03:01:441670 "Enable the servicified service workers. A servicified service worker can "
1671 "have direct connection from its clients, so that fetch events can be "
1672 "dispatched through the connection without hopping to the browser process.";
Makoto Shimazud9f333c2017-08-08 07:23:171673
Azeem Arshad3b1ef73122018-08-30 02:04:151674const char kServiceWorkerLongRunningMessageName[] =
1675 "Service worker long running message dispatch.";
1676const char kServiceWorkerLongRunningMessageDescription[] =
1677 "Enables long running message dispatch method for service workers. "
1678 "Messages sent with this method do not timeout, allowing the service "
1679 "worker to run indefinitely.";
1680
Brett Wilsonecb80982017-07-12 20:34:511681const char kSettingsWindowName[] = "Show settings in a window";
1682const char kSettingsWindowDescription[] =
1683 "Settings will be shown in a dedicated window instead of as a browser tab.";
1684
Manu Cornetd7ef7c52018-05-01 22:08:231685const char kShelfHoverPreviewsName[] =
1686 "Show previews of running apps when hovering over the shelf.";
1687const char kShelfHoverPreviewsDescription[] =
1688 "Shows previews of the open windows for a given running app when hovering "
1689 "over the shelf.";
1690
Naoki Fukino008a0022018-05-23 18:33:001691const char kShowAndroidFilesInFilesAppName[] =
1692 "Show Android files in Files app";
1693const char kShowAndroidFilesInFilesAppDescription[] =
1694 "Show Android files in Files app if Android is enabled on the device.";
1695
Brett Wilsonecb80982017-07-12 20:34:511696const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
1697const char kShowAutofillSignaturesDescription[] =
Maxim Kolosovskiye66f8cb2018-03-23 10:25:381698 "Annotates web forms with Autofill signatures as HTML attributes. Also "
1699 "marks password fields suitable for password generation.";
Brett Wilsonecb80982017-07-12 20:34:511700
1701const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
1702const char kShowAutofillTypePredictionsDescription[] =
1703 "Annotates web forms with Autofill field type predictions as placeholder "
1704 "text.";
1705
1706const char kShowOverdrawFeedbackName[] = "Show overdraw feedback";
1707const char kShowOverdrawFeedbackDescription[] =
1708 "Visualize overdraw by color-coding elements based on if they have other "
1709 "elements drawn underneath.";
1710
Shivani Sharma2d5b4b6b2019-01-08 16:07:161711const char kHistoryManipulationIntervention[] =
1712 "History Manipulation Intervention";
1713const char kHistoryManipulationInterventionDescription[] =
1714 "If a page does a client side redirect or adds to the history without a "
1715 "user gesture, then skip it on back/forward UI.";
1716
Carlos IL89128732018-04-03 17:00:251717const char kSupervisedUserCommittedInterstitialsName[] =
1718 "Enable Supervised User Committed Interstitials";
1719const char kSupervisedUserCommittedInterstitialsDescription[] =
1720 "Use committed error pages instead of transient navigation entries for "
1721 "supervised user interstitials";
1722
yiyixbdfa9a0b2017-10-23 22:21:471723const char kEnableDrawOcclusionName[] = "Enable draw occlusion";
1724const char kEnableDrawOcclusionDescription[] =
1725 "Enable the system to use draw occlusion to skip draw quads when they are "
1726 "not shown on the screen.";
1727
Brett Wilsonecb80982017-07-12 20:34:511728const char kShowSavedCopyName[] = "Show Saved Copy Button";
1729const char kShowSavedCopyDescription[] =
1730 "When a page fails to load, if a stale copy of the page exists in the "
1731 "browser cache, a button will be presented to allow the user to load that "
1732 "stale copy. The primary enabling choice puts the button in the most "
1733 "salient position on the error page; the secondary enabling choice puts it "
1734 "secondary to the reload button.";
1735const char kEnableShowSavedCopyPrimary[] = "Enable: Primary";
1736const char kEnableShowSavedCopySecondary[] = "Enable: Secondary";
1737const char kDisableShowSavedCopy[] = "Disable";
1738
Brett Wilsonecb80982017-07-12 20:34:511739const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1740const char kSilentDebuggerExtensionApiDescription[] =
1741 "Do not show the infobar when an extension attaches to a page via "
1742 "chrome.debugger API. This is required to debug extension background "
1743 "pages.";
1744
Tsuyoshi Horo53895ba92018-03-14 04:06:481745const char kSignedHTTPExchangeName[] = "Signed HTTP Exchange";
1746const char kSignedHTTPExchangeDescription[] =
1747 "Enables Origin-Signed HTTP Exchanges support which is still in "
1748 "development. Warning: Enabling this may pose a security risk.";
1749
Christopher Thompson75ff845d2018-02-01 20:12:461750const char kSimplifyHttpsIndicatorName[] = "Simplify HTTPS indicator UI";
1751const char kSimplifyHttpsIndicatorDescription[] =
1752 "Change the UI treatment for HTTPS pages.";
1753
Bret Sepulveda4f891da2018-07-16 19:10:301754const char kSingleTabMode[] = "Single-tab mode";
1755const char kSingleTabModeDescription[] =
1756 "Windows with a single tab receive a special, minimal visual treatment.";
1757
Lukasz Anforowicz738a88d2018-11-05 19:19:341758const char kSiteIsolationOptOutName[] = "Disable site isolation";
1759const char kSiteIsolationOptOutDescription[] =
1760 "Disables site isolation "
Nick Carter855bc492018-03-10 00:44:571761 "(SitePerProcess, IsolateOrigins, etc). Intended for diagnosing bugs that "
1762 "may be due to out-of-process iframes. Opt-out has no effect if site "
Lukasz Anforowicz42840422018-11-05 21:49:221763 "isolation is force-enabled using a command line switch or using an "
1764 "enterprise policy. "
1765 "Caution: this disables important mitigations for the Spectre CPU "
Nick Carter855bc492018-03-10 00:44:571766 "vulnerability affecting most computers.";
Lukasz Anforowicz738a88d2018-11-05 19:19:341767const char kSiteIsolationOptOutChoiceDefault[] = "Default";
1768const char kSiteIsolationOptOutChoiceOptOut[] = "Disabled (not recommended)";
Brett Wilsonecb80982017-07-12 20:34:511769
Pattideade7972018-04-27 02:59:401770const char kSiteSettings[] = "Site settings";
Brett Wilsonecb80982017-07-12 20:34:511771const char kSiteSettingsDescription[] =
Pattideade7972018-04-27 02:59:401772 "Add the All Sites list to Site Settings.";
Brett Wilsonecb80982017-07-12 20:34:511773
Brett Wilsonecb80982017-07-12 20:34:511774const char kSmoothScrollingName[] = "Smooth Scrolling";
1775const char kSmoothScrollingDescription[] =
1776 "Animate smoothly when scrolling page content.";
1777
1778const char kSoftwareRasterizerName[] = "3D software rasterizer";
1779const char kSoftwareRasterizerDescription[] =
1780 "Fall back to a 3D software rasterizer when the GPU cannot be used.";
1781
Wei-Yin Chen (陳威尹)deff0802018-01-19 06:29:201782const char kSoleIntegrationName[] = "Sole integration";
1783const char kSoleIntegrationDescription[] =
1784 "Enable Sole integration for browser customization. You must restart "
1785 "the browser twice for changes to take effect.";
1786
Tommy Steimel77704be2017-08-28 22:14:401787const char kSoundContentSettingName[] = "Sound content setting";
1788const char kSoundContentSettingDescription[] =
1789 "Enable site-wide muting in content settings and tab strip context menu.";
1790
Justin Donnelly4e448cb2017-07-07 21:32:131791const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
1792 "Enable speculative start of a service worker when a search is predicted.";
Justin Donnelly4e448cb2017-07-07 21:32:131793const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
1794 "If enabled, when the user enters text in the omnibox that looks like a "
1795 "a query, any service worker associated with the search engine the query "
1796 "will be sent to is started early.";
1797
Brett Wilsonecb80982017-07-12 20:34:511798const char kSpellingFeedbackFieldTrialName[] = "Spelling Feedback Field Trial";
1799const char kSpellingFeedbackFieldTrialDescription[] =
1800 "Enable the field trial for sending user feedback to spelling service.";
horo201d49492017-05-19 05:31:401801
Carlos ILe5fa0a12018-08-03 16:08:321802const char kSSLCommittedInterstitialsName[] = "Committed Interstitials";
1803const char kSSLCommittedInterstitialsDescription[] =
1804 "Use committed error pages instead of transient navigation entries "
1805 "for SSL interstitial error pages (i.e. certificate errors).";
1806
Shubhie Panickerfaf082ed2018-01-03 04:49:151807const char kStopInBackgroundName[] = "Stop in background";
1808const char kStopInBackgroundDescription[] =
1809 "Stop scheduler task queues, in the background, "
Shubhie Panicker56c99a22018-03-21 00:22:281810 " after a grace period.";
Shubhie Panickerfaf082ed2018-01-03 04:49:151811
Shubhie Panicker56c99a22018-03-21 00:22:281812const char kStopNonTimersInBackgroundName[] =
1813 "Stop non-timer task queues background";
1814const char kStopNonTimersInBackgroundDescription[] =
1815 "Stop non-timer task queues, in the background, "
1816 "after a grace period.";
1817
Brett Wilsonecb80982017-07-12 20:34:511818const char kSuggestionsWithSubStringMatchName[] =
1819 "Substring matching for Autofill suggestions";
1820const char kSuggestionsWithSubStringMatchDescription[] =
1821 "Match Autofill suggestions based on substrings (token prefixes) rather "
1822 "than just prefixes.";
vabr0215a8e2017-03-28 12:47:341823
Marc Treibf65fb002018-08-03 11:17:161824const char kSyncStandaloneTransportName[] = "Allow Sync standalone transport";
1825const char kSyncStandaloneTransportDescription[] =
1826 "If enabled, allows Chrome Sync to start in standalone transport mode. In "
1827 "this mode, the Sync machinery can start without user opt-in, but only a "
1828 "subset of data types are supported.";
1829
Marc Treib4bd95e72018-08-30 06:30:581830const char kSyncSupportSecondaryAccountName[] =
1831 "Support secondary accounts for Sync standalone transport";
1832const char kSyncSupportSecondaryAccountDescription[] =
1833 "If enabled, allows Chrome Sync to start in standalone transport mode for "
1834 "a signed-in account that has not been chosen as Chrome's primary account. "
1835 "This only has an effect if sync-standalone-transport is also enabled.";
1836
Jan Krcal2ff23f7c2018-09-04 16:16:131837const char kSyncUSSAutofillProfileName[] = "Enable USS for autofill profile";
1838const char kSyncUSSAutofillProfileDescription[] =
1839 "Enables the new implementation of autofill profile sync";
1840
Jan Krcale3641b92018-08-10 17:53:311841const char kSyncUSSAutofillWalletDataName[] =
1842 "Enable USS for autofill wallet data";
1843const char kSyncUSSAutofillWalletDataDescription[] =
1844 "Enables the new implementation of autofill walet data sync";
1845
Brett Wilsonecb80982017-07-12 20:34:511846const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1847const char kSyncSandboxDescription[] =
1848 "Connects to the testing server for Chrome Sync.";
vabr0215a8e2017-03-28 12:47:341849
Joe Downing8cbbc192018-05-14 17:37:071850const char kSystemKeyboardLockName[] = "Experimental system keyboard lock";
1851const char kSystemKeyboardLockDescription[] =
1852 "Enables websites to use the keyboard.lock() API to intercept system "
1853 "keyboard shortcuts and have the events routed directly to the website "
1854 "when in fullscreen mode.";
1855
Taylor Bergquistbcc15462018-12-05 00:36:561856const char kTabGroupsName[] = "Tab Groups";
1857const char kTabGroupsDescription[] =
1858 "Allows users to organize tabs into visually distinct groups, e.g. to "
1859 "separate tabs associated with different tasks.";
1860
Caroline Risinge121c2b2018-12-03 20:19:291861const char kTabHoverCardsName[] = "Tab Hover Cards";
1862const char kTabHoverCardsDescription[] =
1863 "Enables a popup containing tab information to be visible when hovering "
1864 "over a tab. This will replace tooltips for tabs.";
1865
Christian Dullweberd0d96f02017-09-13 09:22:511866const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1867const char kTabsInCbdDescription[] =
1868 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
1869
Daniele Castagna0fead93e2018-01-10 20:40:291870const char kTintGlCompositedContentName[] = "Tint GL-composited content";
1871const char kTintGlCompositedContentDescription[] =
1872 "Tint contents composited using GL with a shade of red to help debug and "
1873 "study overlay support.";
1874
Peter Kastingd77428352018-10-26 15:20:251875const char kTopChromeTouchUiName[] = "Touch UI Layout";
1876const char kTopChromeTouchUiDescription[] =
1877 "Enables touch UI layout in the browser's top chrome.";
vabr0215a8e2017-03-28 12:47:341878
Brett Wilsonecb80982017-07-12 20:34:511879const char kThreadedScrollingName[] = "Threaded scrolling";
1880const char kThreadedScrollingDescription[] =
1881 "Threaded handling of scroll-related input events. Disabling this will "
1882 "force all such scroll events to be handled on the main thread. Note that "
1883 "this can dramatically hurt scrolling performance of most websites and is "
1884 "intended for testing purposes only.";
1885
Dominick Ng8896b1cd2017-10-17 23:24:361886const char kTopSitesFromSiteEngagementName[] = "Top Sites from Site Engagement";
1887const char kTopSitesFromSiteEngagementDescription[] =
1888 "Enable Top Sites on the New Tab Page to be sourced and sorted using site "
1889 "engagement.";
1890
Brett Wilsonecb80982017-07-12 20:34:511891const char kTouchAdjustmentName[] = "Touch adjustment";
1892const char kTouchAdjustmentDescription[] =
1893 "Refine the position of a touch gesture in order to compensate for touches "
1894 "having poor resolution compared to a mouse.";
1895
1896const char kTouchDragDropName[] = "Touch initiated drag and drop";
1897const char kTouchDragDropDescription[] =
1898 "Touch drag and drop can be initiated through long press on a draggable "
1899 "element.";
1900
1901const char kTouchEventsName[] = "Touch Events API";
1902const char kTouchEventsDescription[] =
1903 "Force Touch Events API feature detection to always be enabled or "
1904 "disabled, or to be enabled when a touchscreen is detected on startup "
Ella Gea6a203c92017-10-26 19:09:291905 "(Automatic).";
Brett Wilsonecb80982017-07-12 20:34:511906
1907const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
1908const char kTouchSelectionStrategyDescription[] =
1909 "Controls how text selection granularity changes when touch text selection "
1910 "handles are dragged. Non-default behavior is experimental.";
1911const char kTouchSelectionStrategyCharacter[] = "Character";
1912const char kTouchSelectionStrategyDirection[] = "Direction";
1913
1914const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
1915const char kTraceUploadUrlDescription[] =
1916 "This is to be used in conjunction with the enable-navigation-tracing "
1917 "flag. Please select the label that best describes the recorded traces. "
1918 "This will choose the destination the traces are uploaded to. If you are "
1919 "not sure, select other. If left empty, no traces will be uploaded.";
1920const char kTraceUploadUrlChoiceOther[] = "Other";
1921const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1922const char kTraceUploadUrlChoiceQa[] = "QA";
1923const char kTraceUploadUrlChoiceTesting[] = "Testing";
1924
Anthony Vallee-Duboisc0a027d72018-08-30 17:11:561925const char kTranslateExplicitLanguageAskName[] =
1926 "Explicitly ask for language preferences";
1927const char kTranslateExplicitLanguageAskDescription[] =
1928 "Explicitly ask the user which languages they can read on Chrome startup, "
1929 "on the first run that doesn't already have a promo.";
1930
Anthony Vallee-Dubois265c5692018-06-01 15:57:141931const char kTranslateForceTriggerOnEnglishName[] =
1932 "Select which language model to use to trigger translate on English "
1933 "content";
1934const char kTranslateForceTriggerOnEnglishDescription[] =
1935 "Force the Translate Triggering on English pages experiment to be enabled "
1936 "with the selected language model active.";
1937
Philippe Hamel7fdaa452017-09-29 17:22:491938const char kTranslateRankerEnforcementName[] =
1939 "Enforce TranslateRanker decisions";
1940const char kTranslateRankerEnforcementDescription[] =
1941 "Improved Translate UI triggering logic. TranslateRanker decides whether "
1942 "or not Translate UI should be triggered in a given context.";
1943
Nicolas Ouellet-payeur9e5ff3d2018-06-20 16:07:161944const char kTranslateUIName[] = "Enable Translate";
1945const char kTranslateUIDescription[] =
1946 "Enable the Translate popup when visiting webpages in other languages.";
1947
Mustafa Emre Acerb3aa36a82018-05-22 21:44:051948const char kTreatInsecureOriginAsSecureName[] =
1949 "Insecure origins treated as secure";
1950const char kTreatInsecureOriginAsSecureDescription[] =
1951 "Treat given (insecure) origins as secure origins. Multiple origins can be "
1952 "supplied as a comma-separated list. For the definition of secure "
1953 "contexts, "
1954 "see https://w3c.github.io/webappsec-secure-contexts/";
1955
Brett Wilsonecb80982017-07-12 20:34:511956const char kTrySupportedChannelLayoutsName[] =
1957 "Causes audio output streams to check if channel layouts other than the "
1958 "default hardware layout are available.";
1959const char kTrySupportedChannelLayoutsDescription[] =
1960 "Causes audio output streams to check if channel layouts other than the "
1961 "default hardware layout are available. Turning this on will allow the OS "
1962 "to do stereo to surround expansion if supported. May expose third party "
1963 "driver bugs, use with caution.";
1964
David Roger6762a092018-01-31 15:55:071965const char kUnifiedConsentName[] = "Unified Consent";
1966const char kUnifiedConsentDescription[] =
1967 "Enables a unified management of user consent for privacy-related "
1968 "features. This includes new confirmation screens and improved settings "
1969 "pages.";
1970
Brett Wilsonecb80982017-07-12 20:34:511971const char kUiPartialSwapName[] = "Partial swap";
1972const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
1973
Chris Pickel3a227ae62017-08-24 10:47:261974const char kUseDdljsonApiName[] = "Use new ddljson API for Doodles";
1975const char kUseDdljsonApiDescription[] =
1976 "Enables the new ddljson API to fetch Doodles for the NTP.";
1977
Becca Hughes59c05b42017-11-03 13:11:581978const char kUseModernMediaControlsName[] = "New Media Controls";
1979const char kUseModernMediaControlsDescription[] =
1980 "Enables the new style native media controls.";
1981
Wei Li790e7a8572018-03-23 01:31:551982const char kUsePdfCompositorServiceName[] =
1983 "Use PDF compositor service for printing";
1984const char kUsePdfCompositorServiceDescription[] =
1985 "When enabled, use PDF compositor service to composite and generate PDF "
1986 "files for printing. When site isolation is enabled, disabling this will "
1987 "not stop using PDF compositor service since the service is required for "
1988 "printing out-of-process iframes correctly.";
1989
Mustaq Ahmedc646c0a2017-10-20 20:08:301990const char kUserActivationV2Name[] = "User Activation v2";
1991const char kUserActivationV2Description[] =
1992 "Enable simple user activation for APIs that are otherwise controlled by "
1993 "user gesture tokens.";
1994
Brett Wilsonecb80982017-07-12 20:34:511995const char kUserConsentForExtensionScriptsName[] =
1996 "User consent for extension scripts";
1997const char kUserConsentForExtensionScriptsDescription[] =
1998 "Require user consent for an extension running a script on the page, if "
1999 "the extension requested permission to run on all urls.";
2000
2001const char kUseSuggestionsEvenIfFewFeatureName[] =
2002 "Disable minimum for server-side tile suggestions on NTP.";
2003const char kUseSuggestionsEvenIfFewFeatureDescription[] =
2004 "Request server-side suggestions even if there are only very few of them "
2005 "and use them for tiles on the New Tab Page.";
2006
2007const char kV8CacheOptionsName[] = "V8 caching mode.";
2008const char kV8CacheOptionsDescription[] =
2009 "Caching mode for the V8 JavaScript engine.";
Brett Wilsonecb80982017-07-12 20:34:512010const char kV8CacheOptionsCode[] = "Cache V8 compiler data.";
2011
Michael Hablich896d52662017-10-23 15:59:572012const char kV8VmFutureName[] = "Future V8 VM features";
2013const char kV8VmFutureDescription[] =
2014 "This enables upcoming and experimental V8 VM features. "
2015 "This flag does not enable experimental JavaScript features.";
2016
Hannes Payer1130d5672018-06-05 07:37:312017const char kV8OrinocoName[] = "V8 Orinoco garbage collection features";
2018const char kV8OrinocoDescription[] =
2019 "This enables the V8 Orinoco garbage collection features.";
2020
Brett Wilsonecb80982017-07-12 20:34:512021const char kVideoFullscreenOrientationLockName[] =
2022 "Lock screen orientation when playing a video fullscreen.";
2023const char kVideoFullscreenOrientationLockDescription[] =
2024 "Lock the screen orientation of the device to match video orientation when "
2025 "a video goes fullscreen. Only on phones.";
2026
2027const char kVideoRotateToFullscreenName[] =
2028 "Rotate-to-fullscreen gesture for videos.";
2029const char kVideoRotateToFullscreenDescription[] =
2030 "Enter/exit fullscreen when device is rotated to/from the orientation of "
2031 "the video. Only on phones.";
2032
2033const char kWalletServiceUseSandboxName[] =
2034 "Use Google Payments sandbox servers";
2035const char kWalletServiceUseSandboxDescription[] =
2036 "For developers: use the sandbox service for Google Payments API calls.";
2037
Brett Wilsonecb80982017-07-12 20:34:512038const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
2039const char kWebglDraftExtensionsDescription[] =
2040 "Enabling this option allows web applications to access the WebGL "
2041 "Extensions that are still in draft status.";
2042
2043const char kWebMidiName[] = "Web MIDI API";
2044const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
2045
2046const char kWebPaymentsName[] = "Web Payments";
2047const char kWebPaymentsDescription[] =
2048 "Enable Web Payments API integration, a JavaScript API for merchants.";
2049
Mathieu Perreault51339b82017-07-20 17:06:052050const char kWebPaymentsModifiersName[] = "Enable web payment modifiers";
2051const char kWebPaymentsModifiersDescription[] =
2052 "If the website provides modifiers in the payment request, show the custom "
2053 "total for each payment instrument, update the shopping cart when "
2054 "instruments are switched, and send modified payment method specific data "
2055 "to the payment app.";
2056
Brett Wilsonecb80982017-07-12 20:34:512057const char kWebrtcEchoCanceller3Name[] = "WebRTC Echo Canceller 3.";
2058const char kWebrtcEchoCanceller3Description[] =
2059 "Experimental WebRTC echo canceller (AEC3).";
2060
Lei Zhang0a318af2018-11-14 02:19:462061const char kWebrtcH264WithOpenh264FfmpegName[] =
2062 "WebRTC H.264 software video encoder/decoder";
2063const char kWebrtcH264WithOpenh264FfmpegDescription[] =
2064 "When enabled, an H.264 software video encoder/decoder pair is included. "
2065 "If a hardware encoder/decoder is also available it may be used instead of "
2066 "this encoder/decoder.";
2067
Qingsi Wangec2dbf942018-11-03 05:33:042068const char kWebrtcHideLocalIpsWithMdnsName[] =
2069 "Anonymize local IPs exposed by WebRTC.";
2070const char kWebrtcHideLocalIpsWithMdnsDecription[] =
2071 "Conceal local IP addresses with mDNS hostnames.";
2072
Alex Loikob5fb1282018-08-14 10:04:402073const char kWebrtcHybridAgcName[] = "WebRTC hybrid Agc2/Agc1.";
2074const char kWebrtcHybridAgcDescription[] =
2075 "WebRTC Agc2 digital adaptation with Agc1 analog adaptation.";
2076
Brett Wilsonecb80982017-07-12 20:34:512077const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
2078const char kWebrtcHwDecodingDescription[] =
2079 "Support in WebRTC for decoding video streams using platform hardware.";
2080
2081const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
2082const char kWebrtcHwEncodingDescription[] =
2083 "Support in WebRTC for encoding video streams using platform hardware.";
2084
2085const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
2086const char kWebrtcHwH264EncodingDescription[] =
2087 "Support in WebRTC for encoding h264 video streams using platform "
2088 "hardware.";
2089
2090const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
2091const char kWebrtcHwVP8EncodingDescription[] =
2092 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
2093
Niels Möller090866a2018-02-13 10:55:032094const char kWebrtcNewEncodeCpuLoadEstimatorName[] =
2095 "WebRTC new encode cpu load estimator";
2096const char kWebrtcNewEncodeCpuLoadEstimatorDescription[] =
2097 "Enable new estimator for the encoder cpu load, for evaluation and "
2098 "testing. Intended to improve accuracy when screen casting.";
2099
Elad Alon85e0d0be2018-06-26 10:38:372100const char kWebRtcRemoteEventLogName[] = "WebRTC remote-bound event logging";
2101const char kWebRtcRemoteEventLogDescription[] =
2102 "Allow collecting WebRTC event logs and uploading them to Crash. "
2103 "Please note that, even if enabled, this will still require "
2104 "a policy to be set, for it to have an effect.";
2105
Brett Wilsonecb80982017-07-12 20:34:512106const char kWebrtcSrtpAesGcmName[] =
2107 "Negotiation with GCM cipher suites for SRTP in WebRTC";
2108const char kWebrtcSrtpAesGcmDescription[] =
2109 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
2110
Joachim Bauch4a41d7512017-08-23 14:24:232111const char kWebrtcSrtpEncryptedHeadersName[] =
2112 "Negotiation with encrypted header extensions for SRTP in WebRTC";
2113const char kWebrtcSrtpEncryptedHeadersDescription[] =
2114 "When enabled, WebRTC will try to negotiate encrypted header extensions "
2115 "for SRTP.";
2116
Brett Wilsonecb80982017-07-12 20:34:512117const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
2118const char kWebrtcStunOriginDescription[] =
2119 "When enabled, Stun messages generated by WebRTC will contain the Origin "
2120 "header.";
2121
Lei Zhang0a318af2018-11-14 02:19:462122const char kWebrtcUnifiedPlanByDefaultName[] =
2123 "WebRTC: Use Unified Plan SDP Semantics by default";
2124const char kWebrtcUnifiedPlanByDefaultDescription[] =
2125 "RTCPeerConnections generate and expect the standards compliant SDP format "
2126 "called \"Unified Plan\", unless \"Plan B\" is explicitly specified by "
2127 "passing {sdpSemantics:'plan-b'} to the RTCPeerConnection constructor. "
2128 "RTCRtpTransceiver support is also enabled in Unified Plan.";
2129
Brett Wilsonecb80982017-07-12 20:34:512130const char kWebvrName[] = "WebVR";
2131const char kWebvrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012132 "Enables access to experimental Virtual Reality functionality via the "
2133 "WebVR 1.1 API. This feature will eventually be replaced by the WebXR "
2134 "Device API. Warning: Enabling this will also allow WebVR content on "
2135 "insecure origins to access these powerful APIs, and may pose a security "
David Dorwin09448942019-01-11 23:37:302136 "risk. Controllers are exposed as Gamepads, and WebVR-specific attributes "
2137 "are exposed.";
Brett Wilsonecb80982017-07-12 20:34:512138
Brandon Jonese9d9b2b2017-12-11 22:20:112139const char kWebXrName[] = "WebXR Device API";
2140const char kWebXrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012141 "Enables access to experimental APIs to interact with Virtual Reality (VR) "
2142 "and Augmented Reality (AR) devices.";
2143
2144const char kWebXrGamepadSupportName[] = "WebXR Gamepad Support";
2145const char kWebXrGamepadSupportDescription[] =
2146 "Expose VR controllers as Gamepads for use with the WebXR Device API. Each "
Anna Offenwanger06dc6062018-04-12 07:56:222147 "XRInputSource will have a corresponding Gamepad instance. Requires that "
2148 "WebXR Device API is also enabled.";
Ian Vollick7aaccf92018-04-07 23:10:432149
2150const char kWebXrHitTestName[] = "WebXR Hit Test";
2151const char kWebXrHitTestDescription[] =
2152 "Enables access to raycasting against estimated XR scene geometry.";
Brandon Jonese9d9b2b2017-12-11 22:20:112153
Anna Maria57ecf7592018-01-12 03:10:402154const char kWebXrOrientationSensorDeviceName[] =
2155 "WebXR orientation sensor device";
2156const char kWebXrOrientationSensorDeviceDescription[] =
2157 "When no VR platform device is available, expose a non-presenting device "
2158 "based on the device's orientation sensors, if available.";
2159
Brett Wilsonecb80982017-07-12 20:34:512160const char kZeroCopyName[] = "Zero-copy rasterizer";
2161const char kZeroCopyDescription[] =
2162 "Raster threads write directly to GPU memory associated with tiles.";
vabr0215a8e2017-03-28 12:47:342163
Brett Wilsonff596952017-07-14 01:06:552164// Android ---------------------------------------------------------------------
2165
2166#if defined(OS_ANDROID)
2167
2168const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
2169const char kAiaFetchingDescription[] =
2170 "Enable intermediate certificate fetching when a server does not provide "
2171 "sufficient certificates to build a chain to a trusted root.";
2172
2173const char kAccessibilityTabSwitcherName[] = "Accessibility Tab Switcher";
2174const char kAccessibilityTabSwitcherDescription[] =
2175 "Enable the accessibility tab switcher for Android.";
2176
Pavel Shmakov798f4742018-11-15 21:27:382177const char kAllowRemoteContextForNotificationsName[] =
2178 "Allow using remote app context for notifications";
2179const char kAllowRemoteContextForNotificationsDescription[] =
2180 "Allow using Context#createPackageContext to work around issues with status"
2181 "bar icons on certain Android M devices.";
2182
Brett Wilsonff596952017-07-14 01:06:552183const char kAndroidAutofillAccessibilityName[] = "Autofill Accessibility";
2184const char kAndroidAutofillAccessibilityDescription[] =
2185 "Enable accessibility for autofill popup.";
2186
Khushalbb1963a2018-10-02 21:02:352187const char kAndroidSurfaceControl[] = "Use Android SurfaceControl";
2188const char kAndroidSurfaceControlDescription[] =
2189 "Use the SurfaceControl API for supporting overlays on Android";
2190
Anita Woodruffbfcd1e52018-07-16 12:00:512191const char kAppNotificationStatusMessagingName[] =
2192 "App notification status messaging";
2193const char kAppNotificationStatusMessagingDescription[] =
2194 "Enables messaging in site permissions UI informing user when "
2195 "notifications are disabled for the entire app.";
2196
Brett Wilsonff596952017-07-14 01:06:552197const char kAndroidPaymentAppsName[] = "Android payment apps";
2198const char kAndroidPaymentAppsDescription[] =
2199 "Enable third party Android apps to integrate as payment apps";
2200
Miriam Gershenson8cf1397222018-01-23 22:48:292201const char kAsyncDnsName[] = "Async DNS resolver";
2202const char kAsyncDnsDescription[] = "Enables the built-in DNS resolver.";
2203
Dan Harrington01229f82018-09-12 21:01:212204const char kAutoFetchOnNetErrorPageName[] = "AutoFetchOnNetErrorPage";
2205const char kAutoFetchOnNetErrorPageDescription[] =
2206 "When enabled, and navigation fails with an offline error, schedule a "
2207 "fetch of the page when online again.";
2208
Brett Wilsonff596952017-07-14 01:06:552209const char kAutofillAccessoryViewName[] =
2210 "Autofill suggestions as keyboard accessory view";
2211const char kAutofillAccessoryViewDescription[] =
2212 "Shows Autofill suggestions on top of the keyboard rather than in a "
2213 "dropdown.";
2214
2215const char kBackgroundLoaderForDownloadsName[] =
2216 "Enables background downloading of pages.";
2217const char kBackgroundLoaderForDownloadsDescription[] =
2218 "Enables downloading pages in the background in case page is not yet "
2219 "loaded in current tab.";
2220
Tibor Goldschwendt11b3cf22018-07-04 15:32:442221const char kBackgroundTaskComponentUpdateName[] =
2222 "Background Task Component Updates";
2223const char kBackgroundTaskComponentUpdateDescription[] =
2224 "Schedule component updates with BackgroundTaskScheduler";
2225
Michael van Ouwerkerkbda4ad82018-06-19 14:08:002226const char kCCTModuleName[] = "Chrome Custom Tabs Module";
2227const char kCCTModuleDescription[] =
2228 "Enables a dynamically loaded module in Chrome Custom Tabs, on Android.";
2229
Michael van Ouwerkerk29a7a292018-10-09 09:20:142230const char kCCTModuleCacheName[] = "Chrome Custom Tabs Module Cache";
2231const char kCCTModuleCacheDescription[] =
Michael van Ouwerkerka5df1ec2018-10-11 11:57:402232 "Enables a cache for dynamically loaded modules in Chrome Custom Tabs. "
2233 "Under mild memory pressure the cache may be retained for some time";
Michael van Ouwerkerk29a7a292018-10-09 09:20:142234
John Lin170c00b2018-11-21 15:44:252235const char kCCTModuleCustomHeaderName[] =
2236 "Chrome Custom Tabs Module Custom Header";
2237const char kCCTModuleCustomHeaderDescription[] =
2238 "Enables header customization by dynamically loaded modules in "
2239 "Chrome Custom Tabs.";
2240
barkerd84051482018-11-13 14:46:562241const char kCCTModulePostMessageName[] =
2242 "Chrome Custom Tabs Module postMessage API";
2243const char kCCTModulePostMessageDescription[] =
2244 "Enables the postMessage API exposed to dynamically loaded modules in "
2245 "Chrome Custom Tabs.";
2246
Matthew Jones1abcb132018-07-09 17:59:462247const char kChromeDuetName[] = "Chrome Duet";
2248const char kChromeDuetDescription[] =
2249 "Enables Chrome Duet, split toolbar Chrome Home, on Android.";
Theresa Wellingtonb9243b22017-12-01 16:23:052250
Sarath Singapati83aef1c2017-11-16 15:54:522251const char kClearOldBrowsingDataName[] = "Clear older browsing data";
2252const char kClearOldBrowsingDataDescription[] =
2253 "Enables clearing of browsing data which is older than a given time "
2254 "period.";
2255
Brett Wilsonff596952017-07-14 01:06:552256const char kContentSuggestionsCategoryOrderName[] =
2257 "Default content suggestions category order (e.g. on NTP)";
2258const char kContentSuggestionsCategoryOrderDescription[] =
2259 "Set default order of content suggestion categories (e.g. on the NTP).";
2260
2261const char kContentSuggestionsCategoryRankerName[] =
2262 "Content suggestions category ranker (e.g. on NTP)";
2263const char kContentSuggestionsCategoryRankerDescription[] =
2264 "Set category ranker to order categories of content suggestions (e.g. on "
2265 "the NTP).";
2266
Vitalii Iarkof52ff802017-09-14 12:34:242267const char kContentSuggestionsDebugLogName[] = "Content suggestions debug log";
2268const char kContentSuggestionsDebugLogDescription[] =
2269 "Enable content suggestions debug log accessible through "
2270 "snippets-internals.";
2271
Donn Denman8e58ead2017-11-04 01:44:012272const char kContextualSearchMlTapSuppressionName[] =
2273 "Contextual Search ML tap suppression";
2274const char kContextualSearchMlTapSuppressionDescription[] =
2275 "Enables tap gestures to be suppressed to improve CTR by applying machine "
Donn Denman59729812018-01-09 01:27:022276 "learning. The \"Contextual Search Ranker prediction\" flag must also be "
2277 "enabled!";
Brett Wilsonff596952017-07-14 01:06:552278
2279const char kContextualSearchName[] = "Contextual Search";
2280const char kContextualSearchDescription[] =
2281 "Whether or not Contextual Search is enabled.";
2282
Donn Denman59729812018-01-09 01:27:022283const char kContextualSearchRankerQueryName[] =
2284 "Contextual Search Ranker prediction";
2285const char kContextualSearchRankerQueryDescription[] =
2286 "Enables prediction of tap gestures using Assist-Ranker machine learning.";
2287
2288const char kContextualSearchSecondTapName[] =
2289 "Contextual Search second tap triggering";
2290const char kContextualSearchSecondTapDescription[] =
2291 "Enables triggering on a second tap gesture even when Ranker would "
2292 "normally suppress that tap.";
2293
Donn Denmane9b5b7fb2018-07-24 22:19:492294const char kContextualSearchUnityIntegrationName[] =
2295 "Contextual Search integration with Unified Consent";
2296const char kContextualSearchUnityIntegrationDescription[] =
2297 "Enables integration of Tap to Search with Unified Consent.";
2298
Lei Zhang0a318af2018-11-14 02:19:462299const char kDisplayCutoutAPIName[] =
2300 "Enable support for the Display Cutout API";
2301const char kDisplayCutoutAPIDescription[] =
2302 "Enables developers to support devices that have a display cutout.";
Cathy Li2fb32bf82018-06-06 18:55:402303
Dmitry Skiba9c3efa72017-07-20 22:01:142304const char kDontPrefetchLibrariesName[] = "Don't Prefetch Libraries";
2305const char kDontPrefetchLibrariesDescription[] =
2306 "Don't prefetch libraries after loading.";
2307
Joy Ming189b0cc2017-12-08 19:42:432308const char kDownloadsLocationChangeName[] = "Enable downloads location change";
2309const char kDownloadsLocationChangeDescription[] =
2310 "Enable changing default downloads storage location on Android.";
2311
Shakti Sahu32b2ee102018-05-17 00:04:462312const char kDownloadProgressInfoBarName[] = "Enable download progress infobar";
2313const char kDownloadProgressInfoBarDescription[] =
2314 "Enables an infobar notifying users about status of current downloads.";
2315
Shakti Sahu9ec8cfd2018-07-17 13:29:292316const char kDownloadHomeV2Name[] = "Enable download home v2";
2317const char kDownloadHomeV2Description[] =
2318 "Enables the new UI for download home";
2319
Brett Wilsonff596952017-07-14 01:06:552320const char kEnableAndroidPayIntegrationV1Name[] = "Enable Android Pay v1";
2321const char kEnableAndroidPayIntegrationV1Description[] =
2322 "Enable integration with Android Pay using the first version of the API";
2323
2324const char kEnableAndroidPayIntegrationV2Name[] = "Enable Android Pay v2";
2325const char kEnableAndroidPayIntegrationV2Description[] =
2326 "Enable integration with Android Pay using the second version of the API";
2327
Fabio Tirelo918089a2018-10-22 21:24:082328const char kAutofillManualFallbackAndroidName[] =
2329 "Enable Autofill manual fallback for Addresses and Payments (Android)";
2330const char kAutofillManualFallbackAndroidDescription[] =
2331 "If enabled, adds toggle for addresses and payments bottom sheet to the "
2332 "keyboard accessory.";
2333
Fabio Tirelo315e65922018-09-05 03:35:492334const char kEnableAutofillRefreshStyleName[] =
2335 "Enable Autofill refresh style (Android)";
2336const char kEnableAutofillRefreshStyleDescription[] =
2337 "Enable modernized style for Autofill on Android";
2338
Vitalii Iarkof4ed32d2017-09-26 13:15:532339const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
Brett Wilsonff596952017-07-14 01:06:552340const char kEnableAndroidSpellcheckerDescription[] =
2341 "Enables use of the Android spellchecker.";
Brett Wilsonff596952017-07-14 01:06:552342
Lei Tianbd5a3bf2018-02-28 19:01:162343const char kEnableCommandLineOnNonRootedName[] =
2344 "Enable command line on non-rooted devices";
2345const char kEnableCommandLineOnNoRootedDescription[] =
2346 "Enable reading command line file on non-rooted devices (DANGEROUS).";
2347
Vitalii Iarkof4ed32d2017-09-26 13:15:532348const char kEnableContentSuggestionsNewFaviconServerName[] =
2349 "Get favicons for content suggestions from a new server.";
2350const char kEnableContentSuggestionsNewFaviconServerDescription[] =
2351 "If enabled, the content suggestions (on the NTP) will get favicons from a "
2352 "new favicon server.";
Brett Wilsonff596952017-07-14 01:06:552353
Vitalii Iarkof4ed32d2017-09-26 13:15:532354const char kEnableContentSuggestionsThumbnailDominantColorName[] =
2355 "Use content suggestions thumbnail dominant color.";
2356const char kEnableContentSuggestionsThumbnailDominantColorDescription[] =
2357 "Use content suggestions thumbnail dominant color as a placeholder before "
2358 "the real thumbnail is fetched (requires Chrome Home).";
2359
Brett Wilsonff596952017-07-14 01:06:552360const char kEnableCustomContextMenuName[] = "Enable custom context menu";
2361const char kEnableCustomContextMenuDescription[] =
2362 "Enables a new context menu when a link, image, or video is pressed within "
2363 "Chrome.";
2364
Becca Hughes6d73bac542018-06-18 20:38:502365const char kEnableMediaControlsExpandGestureName[] =
2366 "Enable Media Controls Expand Gesture";
2367const char kEnableMediaControlsExpandGestureDescription[] =
2368 "Enables a gesture to be used on the media controls to extend the video "
2369 "into the Display Cutout area.";
2370
Brett Wilsonff596952017-07-14 01:06:552371const char kEnableOmniboxClipboardProviderName[] =
2372 "Omnibox clipboard URL suggestions";
2373const char kEnableOmniboxClipboardProviderDescription[] =
2374 "Provide a suggestion of the URL stored in the clipboard (if any) upon "
2375 "focus in the omnibox.";
2376
Brett Wilsonff596952017-07-14 01:06:552377const char kEnableNtpAssetDownloadSuggestionsName[] =
2378 "Show asset downloads on the New Tab page";
2379const char kEnableNtpAssetDownloadSuggestionsDescription[] =
2380 "If enabled, the list of content suggestions on the New Tab page will "
2381 "contain assets (e.g. books, pictures, audio) that the user downloaded for "
2382 "later use.";
2383
2384const char kEnableNtpBookmarkSuggestionsName[] =
2385 "Show recently visited bookmarks on the New Tab page";
2386const char kEnableNtpBookmarkSuggestionsDescription[] =
2387 "If enabled, the list of content suggestions on the New Tab page will "
2388 "contain recently visited bookmarks.";
2389
Brett Wilsonff596952017-07-14 01:06:552390const char kEnableNtpOfflinePageDownloadSuggestionsName[] =
2391 "Show offline page downloads on the New Tab page";
2392const char kEnableNtpOfflinePageDownloadSuggestionsDescription[] =
2393 "If enabled, the list of content suggestions on the New Tab page will "
2394 "contain pages that the user downloaded for later use.";
2395
2396const char kEnableNtpRemoteSuggestionsName[] =
2397 "Show server-side suggestions on the New Tab page";
2398const char kEnableNtpRemoteSuggestionsDescription[] =
2399 "If enabled, the list of content suggestions on the New Tab page will "
2400 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
2401 "allows to override the source used to retrieve these server-side "
2402 "suggestions.";
2403
2404const char kEnableNtpSnippetsVisibilityName[] =
2405 "Make New Tab Page Snippets more visible.";
2406const char kEnableNtpSnippetsVisibilityDescription[] =
2407 "If enabled, the NTP snippets will become more discoverable with a larger "
2408 "portion of the first card above the fold.";
2409
2410const char kEnableNtpSuggestionsNotificationsName[] =
2411 "Notify about new content suggestions available at the New Tab page";
2412const char kEnableNtpSuggestionsNotificationsDescription[] =
2413 "If enabled, notifications will inform about new content suggestions on "
2414 "the New Tab page.";
2415
Brett Wilsonff596952017-07-14 01:06:552416const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
2417const char kEnableOfflinePreviewsDescription[] =
2418 "Enable showing offline page previews on slow networks.";
2419
2420const char kEnableOskOverscrollName[] = "Enable OSK Overscroll";
2421const char kEnableOskOverscrollDescription[] =
2422 "Enable OSK overscroll support. With this flag on, the OSK will only "
2423 "resize the visual viewport.";
2424
Brett Wilsonff596952017-07-14 01:06:552425const char kEnableWebNfcName[] = "WebNFC";
2426const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
2427
gogeraldf3cbb422017-07-26 14:37:122428const char kEnableWebPaymentsMethodSectionOrderV2Name[] =
2429 "Enable Web Payments method section order V2.";
2430const char kEnableWebPaymentsMethodSectionOrderV2Description[] =
2431 "Enable this option to display payment method section above address "
2432 "section instead of below it.";
2433
Donn Denmanffaeaa32018-10-12 17:37:532434const char kEphemeralTabName[] = "An Ephemeral Tab in an Overlay Panel";
2435const char kEphemeralTabDescription[] =
2436 "Enable a 'sneak peek' at a linked page in an overlay.";
2437
Lei Zhang0a318af2018-11-14 02:19:462438const char kExploreSitesName[] = "Explore websites";
2439const char kExploreSitesDescription[] =
2440 "Enables portal from new tab page to explore websites.";
2441
Jinsuk Kim459ee142018-11-28 06:27:312442const char kGestureNavigationName[] = "History navigation with gesture";
2443const char kGestureNavigationDescription[] =
2444 "Enable history navigation with horizontal gesture.";
2445
Raymes Khoury582b43132017-12-12 23:54:302446const char kGrantNotificationsToDSEName[] =
2447 "Grant notifications to the Default Search Engine";
2448const char kGrantNotificationsToDSENameDescription[] =
2449 "Automatically grant the notifications permission to the Default Search "
2450 "Engine";
2451
Daniel Parke74fcf862018-03-27 18:05:452452const char kHomePageButtonName[] = "Force Enable Home Page Button";
Daniel Park990d0992018-05-18 22:12:512453const char kHomePageButtonDescription[] = "Displays a home button if enabled.";
Daniel Parke74fcf862018-03-27 18:05:452454
Yafei Duanbb7663f32018-07-17 01:33:152455const char kHomepageTileName[] =
2456 "Enable Homepage tile shown in Suggested Tiles";
2457const char kHomepageTileDescription[] =
2458 "When NTPButton is enabled, the first tile of the Suggested Tiles will be "
2459 "used for homepage. It will not have an effect when NTPButton is disabled.";
2460
Jian Li4b252642018-07-23 19:49:072461const char kIncognitoStringsName[] = "Alternate incognito strings";
2462const char kIncognitoStringsDescription[] =
2463 "Show alternate incognito strings if enabled.";
2464
Theresa920e0ed2018-03-07 18:12:442465const char kInterestFeedContentSuggestionsDescription[] =
Yafei Duanbb7663f32018-07-17 01:33:152466 "Use the interest feed to render content suggestions. Currently "
2467 "content "
Theresa920e0ed2018-03-07 18:12:442468 "suggestions are shown on the New Tab Page.";
2469const char kInterestFeedContentSuggestionsName[] =
2470 "Interest Feed Content Suggestions";
2471
Brett Wilsonff596952017-07-14 01:06:552472const char kKeepPrefetchedContentSuggestionsName[] =
2473 "Keep prefetched content suggestions";
2474const char kKeepPrefetchedContentSuggestionsDescription[] =
2475 "If enabled, some of prefetched content suggestions are not replaced by "
2476 "the new fetched suggestions.";
2477
Leo Zhang051b75482017-12-20 03:28:302478const char kLanguagesPreferenceName[] = "Language Settings";
2479const char kLanguagesPreferenceDescription[] =
2480 "Enable this option for Language Settings feature on Android.";
2481
Brett Wilsonff596952017-07-14 01:06:552482const char kLsdPermissionPromptName[] =
2483 "Location Settings Dialog Permission Prompt";
2484const char kLsdPermissionPromptDescription[] =
2485 "Whether to use the Google Play Services Location Settings Dialog "
2486 "permission dialog.";
2487
Amirhossein Simjour97b4154f2018-02-20 03:49:592488const char kModalPermissionDialogViewName[] = "Modal Permission Dialog";
2489const char kModalPermissionDialogViewDescription[] =
2490 "Enable this option to use ModalDialogManager for permission Dialogs.";
2491
Brett Wilsonff596952017-07-14 01:06:552492const char kMediaScreenCaptureName[] = "Experimental ScreenCapture.";
2493const char kMediaScreenCaptureDescription[] =
2494 "Enable this option for experimental ScreenCapture feature on Android.";
2495
2496const char kModalPermissionPromptsName[] = "Modal Permission Prompts";
2497const char kModalPermissionPromptsDescription[] =
2498 "Whether to use permission dialogs in place of permission infobars.";
2499
Finnur Thorarinssonc1488fc62018-07-09 19:21:572500const char kNewContactsPickerName[] = "Enable new contacts picker";
2501const char kNewContactsPickerDescription[] =
2502 "Activates the new picker for selecting contacts.";
2503
Dan Harrington541db9e2018-07-30 18:36:302504const char kNewNetErrorPageUIName[] = "Enable new UI for net-error page";
2505const char kNewNetErrorPageUIDescription[] =
2506 "Selects which new UI experience to show on the net-error (Dino) page";
2507
Brett Wilsonff596952017-07-14 01:06:552508const char kNewPhotoPickerName[] = "Enable new Photopicker";
2509const char kNewPhotoPickerDescription[] =
2510 "Activates the new picker for selecting photos.";
2511
2512const char kNoCreditCardAbort[] = "No Credit Card Abort";
2513const char kNoCreditCardAbortDescription[] =
2514 "Whether or not the No Credit Card Abort is enabled.";
2515
Daniel Park990d0992018-05-18 22:12:512516const char kNtpButtonName[] = "Enable NTP Button";
2517const char kNtpButtonDescription[] =
2518 "Displays a New Tab Page button in the toolbar if enabled.";
2519
Brett Wilsonff596952017-07-14 01:06:552520const char kOfflineBookmarksName[] = "Enable offline bookmarks";
2521const char kOfflineBookmarksDescription[] =
2522 "Enable saving bookmarked pages for offline viewing.";
2523
Jian Liade82832018-09-06 22:31:412524const char kOfflineIndicatorAlwaysHttpProbeName[] = "Always http probe";
2525const char kOfflineIndicatorAlwaysHttpProbeDescription[] =
2526 "Always do http probe to detect network connectivity for offline indicator "
2527 "as opposed to just taking the connection state from the system."
2528 "Used for testing.";
2529
2530const char kOfflineIndicatorChoiceName[] = "Offline indicator choices";
2531const char kOfflineIndicatorChoiceDescription[] =
2532 "Show an offline indicator while offline.";
Jian Li1413ebf2018-06-14 20:46:322533
Brett Wilsonff596952017-07-14 01:06:552534const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
2535const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
2536
2537const char kOfflinePagesCtV2Name[] = "Enable Offline Pages CT V2 features.";
2538const char kOfflinePagesCtV2Description[] =
2539 "V2 features include attributing pages to the app that initiated the "
2540 "custom tabs, and being able to query for pages by page attribution.";
2541
Cathy Li7311d792018-04-05 00:34:162542const char kOfflinePagesCTSuppressNotificationsName[] =
2543 "Disable download complete notification for whitelisted CCT apps.";
2544const char kOfflinePagesCTSuppressNotificationsDescription[] =
2545 "Disable download complete notification for page downloads originating "
2546 "from a CCT app whitelisted to show their own download complete "
2547 "notification.";
2548
Candice Sy74fa7a352018-03-30 23:46:492549const char kOfflinePagesDescriptiveFailStatusName[] =
2550 "Enables descriptive failed download status text.";
2551const char kOfflinePagesDescriptiveFailStatusDescription[] =
2552 "Enables failed download status text in notifications and Downloads Home "
2553 "to state the reason the request failed if the failure is actionable.";
2554
2555const char kOfflinePagesDescriptivePendingStatusName[] =
2556 "Enables descriptive pending download status text.";
2557const char kOfflinePagesDescriptivePendingStatusDescription[] =
2558 "Enables pending download status text in notifications and Downloads Home "
2559 "to state the reason the request is pending.";
2560
2561const char kOfflinePagesInDownloadHomeOpenInCctName[] =
2562 "Enables offline pages in the downloads home to be opened in CCT.";
2563const char kOfflinePagesInDownloadHomeOpenInCctDescription[] =
2564 "When enabled offline pages launched from the Downloads Home will be "
2565 "opened in Chrome Custom Tabs (CCT) instead of regular tabs.";
2566
Carlos Knippschild09272ecd2017-12-09 03:29:362567const char kOfflinePagesLimitlessPrefetchingName[] =
2568 "Removes resource usage limits for the prefetching of offline pages.";
2569const char kOfflinePagesLimitlessPrefetchingDescription[] =
2570 "Allows the prefetching of suggested offline pages to ignore resource "
2571 "usage limits. This allows it to completely ignore data usage limitations "
2572 "and allows downloads to happen with any kind of connection.";
2573
Brett Wilsonff596952017-07-14 01:06:552574const char kOfflinePagesLoadSignalCollectingName[] =
2575 "Enables collecting load timing data for offline page snapshots.";
2576const char kOfflinePagesLoadSignalCollectingDescription[] =
2577 "Enables loading completeness data collection while writing an offline "
2578 "page. This data is collected in the snapshotted offline page to allow "
2579 "data analysis to improve deciding when to make the offline snapshot.";
2580
2581const char kOfflinePagesPrefetchingName[] =
2582 "Enables suggested offline pages to be prefetched.";
2583const char kOfflinePagesPrefetchingDescription[] =
2584 "Enables suggested offline pages to be prefetched, so useful content is "
2585 "available while offline.";
2586
Pete Williamson7845dff2017-09-20 11:06:192587const char kOfflinePagesResourceBasedSnapshotName[] =
2588 "Enables offline page snapshots to be based on percentage of page loaded.";
2589const char kOfflinePagesResourceBasedSnapshotDescription[] =
2590 "Enables offline page snapshots to use a resource percentage based "
2591 "approach for determining when the page is loaded as opposed to a time "
2592 "based approach";
2593
Collin Baker17f92a52017-07-19 21:41:252594const char kOfflinePagesRenovationsName[] = "Enables offline page renovations.";
2595const char kOfflinePagesRenovationsDescription[] =
2596 "Enables offline page renovations which correct issues with dynamic "
2597 "content that occur when offlining pages that use JavaScript.";
2598
Brett Wilsonff596952017-07-14 01:06:552599const char kOfflinePagesSharingName[] = "Enables offline pages to be shared.";
2600const char kOfflinePagesSharingDescription[] =
2601 "Enables the saved offline pages to be shared via other applications.";
2602
Yafei Duan36b4b5b2018-08-07 00:40:032603const char kOfflinePagesLivePageSharingName[] =
2604 "Enables live page sharing of offline pages";
2605const char kOfflinePagesLivePageSharingDescription[] =
2606 "Enables to share current loaded page as offline page by saving as MHTML "
2607 "first.";
2608
Cathy Lie0d88762018-04-12 08:03:012609const char kOfflinePagesShowAlternateDinoPageName[] =
2610 "Enable alternate dino page with more user capabilities.";
2611const char kOfflinePagesShowAlternateDinoPageDescription[] =
2612 "Enables the dino page to show more buttons and offer existing offline "
2613 "content.";
2614
Brett Wilsonff596952017-07-14 01:06:552615const char kOfflinePagesSvelteConcurrentLoadingName[] =
2616 "Enables concurrent background loading on svelte.";
2617const char kOfflinePagesSvelteConcurrentLoadingDescription[] =
2618 "Enables concurrent background loading (or downloading) of pages on "
2619 "Android svelte (512MB RAM) devices. Otherwise, background loading will "
2620 "happen when the svelte device is idle.";
2621
2622const char kOffliningRecentPagesName[] =
2623 "Enable offlining of recently visited pages";
2624const char kOffliningRecentPagesDescription[] =
2625 "Enable storing recently visited pages locally for offline use. Requires "
2626 "Offline Pages to be enabled.";
2627
Lei Zhang2eca9082017-10-17 20:42:502628const char kPayWithGoogleV1Name[] = "Pay with Google v1";
2629const char kPayWithGoogleV1Description[] =
Brett Wilsonff596952017-07-14 01:06:552630 "Enable Pay with Google integration into Web Payments with API version "
2631 "'1'.";
2632
Matthew Jonesa88b95852017-11-08 23:13:502633const char kProgressBarThrottleName[] = "Android progress update throttling.";
2634const char kProgressBarThrottleDescription[] =
2635 "Limit the maximum progress update to make progress appear smoother.";
2636
Brett Wilsonff596952017-07-14 01:06:552637const char kPullToRefreshEffectName[] = "The pull-to-refresh effect";
2638const char kPullToRefreshEffectDescription[] =
2639 "Page reloads triggered by vertically overscrolling content.";
2640
Piotr Swigon7c296ef2017-08-29 04:32:002641const char kPwaImprovedSplashScreenName[] =
2642 "Improved Splash Screen for standalone PWAs";
2643const char kPwaImprovedSplashScreenDescription[] =
2644 "Enables the Improved Splash Screen UX for standalone PWAs based on new "
2645 "Web App Manifest attributes";
Piotr Swigon9f630b32017-07-26 09:42:492646const char kPwaPersistentNotificationName[] =
2647 "Persistent notification in standalone PWA";
2648const char kPwaPersistentNotificationDescription[] =
2649 "Enables a persistent Android notification for standalone PWAs";
2650
Brett Wilsonff596952017-07-14 01:06:552651const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
2652const char kReaderModeHeuristicsDescription[] =
2653 "Determines what pages the Reader Mode infobar is shown on.";
2654const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
2655const char kReaderModeHeuristicsAdaboost[] = "Non-mobile-friendly articles";
2656const char kReaderModeHeuristicsAllArticles[] = "All articles";
2657const char kReaderModeHeuristicsAlwaysOff[] = "Never";
2658const char kReaderModeHeuristicsAlwaysOn[] = "Always";
2659
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:182660const char kReaderModeInCCTName[] = "Reader Mode in CCT";
2661const char kReaderModeInCCTDescription[] =
2662 "Open Reader Mode in Chrome Custom Tabs.";
2663
Varun Khaneja2a8229f2019-01-12 00:57:262664const char kSafeBrowsingTelemetryForApkDownloadsName[] =
2665 "Send some telemetry for APK downloads for extended reporting users";
2666const char kSafeBrowsingTelemetryForApkDownloadsDescription[] =
2667 "If enabled, sends some information about the source and hash of the "
2668 "contents of any APK files downloaded by a user who has opted into Safe "
2669 "Browsing Extended Reporting already.";
2670
Varun Khaneja80712a82018-10-12 23:34:592671const char kSafeBrowsingUseLocalBlacklistsV2Name[] =
2672 "Use local Safe Browsing blacklists";
2673const char kSafeBrowsingUseLocalBlacklistsV2Description[] =
2674 "If enabled, maintain a copy of Safe Browsing blacklists in the browser "
2675 "process to check the Safe Browsing reputation of URLs without calling "
2676 "into GmsCore for every URL.";
2677
Matthew Jones53114262018-12-12 16:36:472678const char kSearchReadyOmniboxName[] = "Search Ready Omnibox";
2679const char kSearchReadyOmniboxDescription[] =
2680 "Clears the omnibox and adds a suggestion item to share, copy, or edit the "
2681 "URL.";
2682
Brett Wilsonff596952017-07-14 01:06:552683const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2684const char kSetMarketUrlForTestingDescription[] =
2685 "When enabled, sets the market URL for use in testing the update menu "
2686 "item.";
2687
2688const char kSpannableInlineAutocompleteName[] = "Spannable inline autocomplete";
2689const char kSpannableInlineAutocompleteDescription[] =
2690 "A new type of inline autocomplete for the omnibox that works with "
2691 "keyboards that compose text.";
2692
Theresaeea05a12018-05-09 21:01:592693const char kSiteExplorationUiName[] = "Site Exploration UI";
2694const char kSiteExplorationUiDescription[] =
2695 "Show site suggestions in the Exploration UI";
2696
Lei Zhang0a318af2018-11-14 02:19:462697const char kStrictSiteIsolationName[] = "Strict site isolation";
2698const char kStrictSiteIsolationDescription[] =
2699 "Security mode that enables site isolation for all sites (SitePerProcess). "
2700 "In this mode, each renderer process will contain pages from at most one "
2701 "site, using out-of-process iframes when needed. "
2702 "Check chrome://process-internals to see the current isolation mode. "
2703 "Setting this flag to 'Enabled' turns on site isolation regardless of the "
2704 "default. Here, 'Disabled' is a legacy value that actually means "
2705 "'Default,' in which case site isolation may be already enabled based on "
2706 "platform, enterprise policy, or field trial. See also "
2707 "#site-isolation-trial-opt-out for how to disable site isolation for "
2708 "testing.";
2709
Anthony Vallee-Dubois4623e1b2018-10-11 22:09:182710const char kTranslateAndroidManualTriggerName[] =
2711 "Enable manual translate trigger";
2712const char kTranslateAndroidManualTriggerDescription[] =
2713 "Show a menu item in the main menu that triggers page translation.";
2714
Brett Wilsonff596952017-07-14 01:06:552715const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2716const char kUpdateMenuBadgeDescription[] =
Tommy Nyquist3c02e592018-10-18 23:36:442717 "When enabled, a badge will be shown on the app menu button if the update "
2718 "type is Update Available or Unsupported OS Version.";
Brett Wilsonff596952017-07-14 01:06:552719
2720const char kUpdateMenuItemCustomSummaryDescription[] =
2721 "When this flag and the force show update menu item flag are enabled, a "
2722 "custom summary string will be displayed below the update menu item.";
2723const char kUpdateMenuItemCustomSummaryName[] =
2724 "Update menu item custom summary";
2725
Tommy Nyquist3c02e592018-10-18 23:36:442726const char kUpdateMenuTypeName[] =
2727 "Forces the update menu type to a specific type";
2728const char kUpdateMenuTypeDescription[] =
2729 "When set, forces the update type to be a specific one, which impacts "
2730 "the app menu badge and menu item for updates.";
2731const char kUpdateMenuTypeNone[] = "None";
2732const char kUpdateMenuTypeUpdateAvailable[] = "Update Available";
2733const char kUpdateMenuTypeUnsupportedOSVersion[] = "Unsupported OS Version";
Brett Wilsonff596952017-07-14 01:06:552734
Marc Treib93af46a2017-08-23 13:30:002735const char kThirdPartyDoodlesName[] =
2736 "Enable Doodles for third-party search engines";
2737const char kThirdPartyDoodlesDescription[] =
2738 "Enables fetching and displaying Doodles on the NTP for third-party search "
2739 "engines.";
2740
Klaus Weidneraaf697f2018-01-18 20:07:362741const char kWebXrRenderPathName[] = "WebXR presentation render path";
2742const char kWebXrRenderPathDescription[] =
2743 "Render path to use for WebXR presentation (including WebVR)";
2744const char kWebXrRenderPathChoiceClientWaitDescription[] =
2745 "ClientWait (Baseline)";
2746const char kWebXrRenderPathChoiceGpuFenceDescription[] =
2747 "GpuFence (Android N+)";
Klaus Weidnerd25dff42018-04-12 06:56:072748const char kWebXrRenderPathChoiceSharedBufferDescription[] =
2749 "SharedBuffer (Android O+)";
Klaus Weidneraaf697f2018-01-18 20:07:362750
Becky Zhou65584142019-01-10 18:22:292751#if BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2752
2753const char kAndroidNightModeName[] = "Enable night mode based on user settings";
2754const char kAndroidNightModeDescription[] =
2755 "If enabled, user can enable night mode through settings.";
2756
2757#endif // BUILDFLAG(ENABLE_ANDROID_NIGHT_MODE)
2758
Brett Wilson7b44537e2017-08-18 01:38:282759// Non-Android -----------------------------------------------------------------
Brett Wilsonff596952017-07-14 01:06:552760
Brett Wilson7b44537e2017-08-18 01:38:282761#else // !defined(OS_ANDROID)
brettw5f9c1642017-05-14 17:12:482762
Brett Wilson7b44537e2017-08-18 01:38:282763const char kAccountConsistencyName[] =
2764 "Identity consistency between browser and cookie jar";
2765const char kAccountConsistencyDescription[] =
2766 "When enabled, the browser manages signing in and out of Google accounts.";
2767const char kAccountConsistencyChoiceMirror[] = "Mirror";
2768const char kAccountConsistencyChoiceDice[] = "Dice";
vabr0215a8e2017-03-28 12:47:342769
Tommy Martino3fa3df52018-08-20 21:45:442770const char kAutofillDropdownLayoutName[] =
2771 "Autofill Dropdown Layout Experiment";
2772const char kAutofillDropdownLayoutDescription[] =
2773 "Alternate visual designs for the Autofill dropdown.";
2774
Fabio Tirelo3773dea2018-09-11 15:21:522775const char kAutofillPrimaryInfoStyleExperimentName[] =
2776 "Autofill experiment with primary info style";
2777const char kAutofillPrimaryInfoStyleExperimentDescription[] =
2778 "Allow experimentation with different typefaces for primary info on the "
2779 "Autofill dropdown (addresses and payment methods)";
2780
Chris Pickel3a227ae62017-08-24 10:47:262781const char kDoodlesOnLocalNtpName[] = "Enable doodles on the local NTP";
2782const char kDoodlesOnLocalNtpDescription[] =
2783 "Show doodles on the local New Tab page if Google is the default search "
2784 "engine.";
2785
Kyle Milkaedb39f52018-11-21 19:53:072786const char kSearchSuggestionsOnLocalNtpName[] =
2787 "Enable search suggestions on the local NTP";
2788const char kSearchSuggestionsOnLocalNtpDescription[] =
2789 "Show search suggestions on the local New Tab page if Google is the "
2790 "default search engine.";
2791
2792const char kPromosOnLocalNtpName[] = "Enable promos on the local NTP";
2793const char kPromosOnLocalNtpDescription[] =
2794 "Show promos on the local New Tab page if Google is the "
2795 "default search engine.";
2796
Lei Zhang0a318af2018-11-14 02:19:462797const char kEnableWebAuthenticationBleSupportName[] =
2798 "Web Authentication API BLE support";
2799const char kEnableWebAuthenticationBleSupportDescription[] =
2800 "Enable support for using Web Authentication API via Bluetooth security "
2801 "keys";
Sebastien Marchandd33f7dc2018-06-22 22:07:062802
Sebastien Marchandd33f7dc2018-06-22 22:07:062803const char kEnableWebAuthenticationCtap2SupportName[] =
2804 "Enable Web Authentication API support for CTAP2 security keys";
2805const char kEnableWebAuthenticationCtap2SupportDescription[] =
Kim Paulhamus92431372018-07-20 02:25:472806 "Enable CTAP2 security keys for the Web Authentication API.";
Sebastien Marchandd33f7dc2018-06-22 22:07:062807
2808const char kEnableWebAuthenticationTestingAPIName[] =
2809 "Web Authentication Testing API";
2810const char kEnableWebAuthenticationTestingAPIDescription[] =
2811 "Enable Web Authentication Testing API support, which disconnects the API "
2812 "implementation from the real world, and allows configuring virtual "
2813 "authenticator devices for testing";
2814
Jeffrey Cohenf04130a42018-08-29 00:22:272815const char kHappinessTrackingSurveysForDesktopName[] =
2816 "Happiness Tracking Surveys";
2817const char kHappinessTrackingSurveysForDesktopDescription[] =
2818 "Enable showing Happiness Tracking Surveys to users on Desktop";
2819
Lei Zhang0a318af2018-11-14 02:19:462820const char kInfiniteSessionRestoreName[] = "Infinite Session Restore";
2821const char kInfiniteSessionRestoreDescription[] =
2822 "Reduces the number of tabs being loaded simultaneously during session "
2823 "restore, to improve responsiveness of the foreground tab. This requires "
2824 "#enable-page-almost-idle.";
Dave Schuyler598a4a42018-01-04 02:15:102825
Travis Skarebcdb5ed32018-08-17 01:49:402826const char kOmniboxDriveSuggestionsName[] =
2827 "Omnibox Google Drive Document suggestions";
2828const char kOmniboxDriveSuggestionsDescriptions[] =
2829 "Display suggestions for Google Drive documents in the omnibox when Google "
2830 "is the default search engine.";
2831
Lei Zhang0a318af2018-11-14 02:19:462832const char kOmniboxPedalSuggestionsName[] = "Omnibox Pedal suggestions";
2833const char kOmniboxPedalSuggestionsDescription[] =
2834 "Enable omnibox Pedal suggestions using either a side button in suggestion "
2835 "or a dedicated suggestion item beneath the triggering line item. Omnibox "
2836 "Pedals accelerate actions within Chrome by detecting user intent and "
2837 "offering direct access to the end goal.";
2838
Orin Jaworski04c08b42018-07-11 02:39:562839const char kOmniboxReverseAnswersName[] = "Omnibox reverse answers";
2840const char kOmniboxReverseAnswersDescription[] =
2841 "Display answers with rows reversed (swapped); except definitions. Has no "
2842 "effect unless either the #upcoming-ui-features flag is Enabled or the "
2843 "#top-chrome-md flag is set to Refresh or Touchable Refresh.";
2844
Lei Zhang0a318af2018-11-14 02:19:462845const char kOmniboxRichEntitySuggestionsName[] =
2846 "Omnibox rich entity suggestions";
2847const char kOmniboxRichEntitySuggestionsDescription[] =
2848 "Display entity suggestions using images and an enhanced layout; showing "
2849 "more context and descriptive text about the entity. Has no effect unless "
2850 "either the #upcoming-ui-features flag is Enabled or the #top-chrome-md "
2851 "flag is set to Refresh or Touchable Refresh.";
2852
Kevin Bailey898669972017-11-06 15:34:492853const char kOmniboxTabSwitchSuggestionsName[] =
2854 "Omnibox tab switch suggestions";
2855const char kOmniboxTabSwitchSuggestionsDescription[] =
Justin Donnellye7926092018-06-18 14:57:212856 "Enable suggestions for switching to open tabs within the Omnibox. "
2857 "Has no effect unless either the #upcoming-ui-features flag is Enabled or "
2858 "the #top-chrome-md flag is set to Refresh or Touchable Refresh.";
Kevin Bailey898669972017-11-06 15:34:492859
krbcc621412017-06-01 19:40:282860const char kOmniboxTailSuggestionsName[] = "Omnibox tail suggestions";
2861const char kOmniboxTailSuggestionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192862 "Enable receiving tail suggestions, a type of search suggestion based on "
2863 "the last few words in the query, for the Omnibox.";
vabr0215a8e2017-03-28 12:47:342864
Sebastien Marchandd33f7dc2018-06-22 22:07:062865const char kPageAlmostIdleName[] = "Page Almost Idle";
2866const char kPageAlmostIdleDescription[] =
2867 "Make session restore use a definition of loading that waits for CPU and "
2868 "network quiescence.";
2869
2870const char kProactiveTabFreezeAndDiscardName[] =
2871 "Proactive Tab Freeze and Discard";
2872const char kProactiveTabFreezeAndDiscardDescription[] =
2873 "Enables proactive tab freezing and discarding. This requires "
2874 "#enable-page-almost-idle.";
2875
Nicolas Ouellet-payeur82eb65b2018-11-05 16:49:272876const char kShowManagedUiName[] = "Show managed UI for managed users";
2877const char kShowManagedUiDescription[] =
2878 "Enabled/disable showing enterprise users a 'Managed by your organization' "
2879 "message in the app menu and on some chrome:// pages.";
2880
Sebastien Marchandd33f7dc2018-06-22 22:07:062881const char kSiteCharacteristicsDatabaseName[] = "Site Characteristics database";
2882const char kSiteCharacteristicsDatabaseDescription[] =
2883 "Records usage of some features in a database while a tab is in background "
2884 "(title/favicon update, audio playback or usage of non-persistent "
2885 "notifications).";
2886
Brett Wilson7b44537e2017-08-18 01:38:282887const char kUseGoogleLocalNtpName[] = "Enable using the Google local NTP";
2888const char kUseGoogleLocalNtpDescription[] =
2889 "Use the local New Tab page if Google is the default search engine.";
spqchan064a8112017-04-18 16:46:322890
Brett Wilson7b44537e2017-08-18 01:38:282891#if defined(GOOGLE_CHROME_BUILD)
2892
2893const char kGoogleBrandedContextMenuName[] =
2894 "Google branding in the context menu";
2895const char kGoogleBrandedContextMenuDescription[] =
2896 "Shows a Google icon next to context menu items powered by Google "
2897 "services.";
2898
2899#endif // !defined(GOOGLE_CHROME_BUILD)
2900
2901#endif // !defined(OS_ANDROID)
2902
2903// Windows ---------------------------------------------------------------------
2904
2905#if defined(OS_WIN)
2906
David Bienvenud0ddda32018-11-01 16:59:162907const char kCalculateNativeWinOcclusionName[] =
2908 "Calculate window occlusion on Windows";
2909const char kCalculateNativeWinOcclusionDescription[] =
2910 "Calculate window occlusion on Windows will be used in the future "
2911 "to throttle and potentially unload foreground tabs in occluded windows";
2912
Brett Wilson7b44537e2017-08-18 01:38:282913const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
2914const char kCloudPrintXpsDescription[] =
2915 "XPS enables advanced options for classic printers connected to the Cloud "
2916 "Print with Chrome. Printers must be re-connected after changing this "
2917 "flag.";
2918
2919const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
2920const char kDisablePostscriptPrintingDescription[] =
2921 "Disables PostScript generation when printing to PostScript capable "
2922 "printers, and uses EMF generation in its place.";
2923
2924const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
2925const char kEnableAppcontainerDescription[] =
2926 "Enables the use of an AppContainer on sandboxed processes to improve "
2927 "security.";
2928
James Forshawfd0ce342018-02-14 09:55:392929const char kEnableGpuAppcontainerName[] = "Enable GPU AppContainer Lockdown.";
2930const char kEnableGpuAppcontainerDescription[] =
2931 "Enables the use of an AppContainer for the GPU sandboxed processes to "
2932 "improve security.";
2933
Brett Wilson7b44537e2017-08-18 01:38:282934const char kGdiTextPrinting[] = "GDI Text Printing";
2935const char kGdiTextPrintingDescription[] =
2936 "Use GDI to print text as simply text";
2937
Brett Wilson7b44537e2017-08-18 01:38:282938const char kTraceExportEventsToEtwName[] =
2939 "Enable exporting of tracing events to ETW.";
2940const char kTraceExportEventsToEtwDesription[] =
2941 "If enabled, trace events will be exported to the Event Tracing for "
2942 "Windows (ETW) and can then be captured by tools such as UIForETW or "
2943 "Xperf.";
2944
Olli Etuaho122321192018-09-07 10:15:292945const char kUseAngleName[] = "Choose ANGLE graphics backend";
2946const char kUseAngleDescription[] =
2947 "Choose the graphics backend for ANGLE. D3D11 is used on most Windows "
2948 "computers by default. Using the OpenGL driver as the graphics backend may "
2949 "result in higher performance in some graphics-heavy applications, "
2950 "particularly on NVIDIA GPUs. It can increase battery and memory usage of "
2951 "video playback.";
2952
2953const char kUseAngleDefault[] = "Default";
2954const char kUseAngleGL[] = "OpenGL";
2955const char kUseAngleD3D11[] = "D3D11";
2956const char kUseAngleD3D9[] = "D3D9";
2957
Brett Wilson7b44537e2017-08-18 01:38:282958const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2959const char kUseWinrtMidiApiDescription[] =
2960 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
2961 "later).";
2962
2963const char kWindows10CustomTitlebarName[] = "Custom-drawn Windows 10 Titlebar";
2964const char kWindows10CustomTitlebarDescription[] =
2965 "If enabled, Chrome will draw the titlebar and caption buttons instead of "
2966 "deferring to Windows.";
2967
2968#endif // defined(OS_WIN)
2969
2970// Mac -------------------------------------------------------------------------
2971
2972#if defined(OS_MACOSX)
2973
Brett Wilson7b44537e2017-08-18 01:38:282974const char kContentFullscreenName[] = "Improved Content Fullscreen";
2975const char kContentFullscreenDescription[] =
2976 "Fullscreen content window detaches from main browser window and goes to "
2977 "a new space without moving or changing the original browser window.";
2978
Martin Kreichgauer1ca416d2018-07-11 00:43:192979const char kEnableWebAuthenticationTouchIdName[] =
2980 "Web Authentication API Touch ID support";
2981const char kEnableWebAuthenticationTouchIdDescription[] =
2982 "Enables a built-in Touch ID authenticator for the Web Authentication API.";
2983
Brett Wilson7b44537e2017-08-18 01:38:282984const char kHostedAppsInWindowsName[] =
2985 "Allow hosted apps to be opened in windows";
2986const char kHostedAppsInWindowsDescription[] =
2987 "Allows hosted apps to be opened in windows instead of being limited to "
2988 "tabs.";
2989
Christopher Cameron57dee5a42018-09-25 01:20:082990const char kCreateAppWindowsInAppShimProcessName[] =
2991 "Create native windows in the app process";
2992const char kCreateAppWindowsInAppShimProcessDescription[] =
2993 "Create native windows the app shim process, instead of of the browser "
2994 "process.";
2995
Lei Zhange065b572018-12-11 08:00:412996const char kEnableCustomMacPaperSizesName[] = "Enable custom paper sizes";
2997const char kEnableCustomMacPaperSizesDescription[] =
2998 "Allow use of custom paper sizes in Print Preview.";
2999
Lei Zhang2eca9082017-10-17 20:42:503000const char kMacTouchBarName[] = "Hardware Touch Bar";
3001const char kMacTouchBarDescription[] = "Control the use of the Touch Bar.";
Brett Wilson7b44537e2017-08-18 01:38:283002
Greg Kerr32483d1c2018-12-18 02:29:143003const char kMacV2GPUSandboxName[] = "Mac V2 GPU Sandbox";
3004const char kMacV2GPUSandboxDescription[] =
3005 "Controls whether the GPU process on macOS uses the V1 or V2 sandbox.";
3006
Brett Wilson7b44537e2017-08-18 01:38:283007const char kMacViewsNativeAppWindowsName[] = "Toolkit-Views App Windows.";
3008const char kMacViewsNativeAppWindowsDescription[] =
3009 "Controls whether to use Toolkit-Views based Chrome App windows.";
3010
3011const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
3012const char kMacViewsTaskManagerDescription[] =
3013 "Controls whether to use the Toolkit-Views based Task Manager.";
3014
Tessa Nijssen4db9799e2018-08-06 21:04:383015const char kTextSuggestionsTouchBarName[] = "Text Suggestions Touch Bar";
3016const char kTextSuggestionsTouchBarDescription[] =
3017 "Enable text suggestions touch bar for textfields.";
3018
Brett Wilson7b44537e2017-08-18 01:38:283019#endif
3020
3021// Chrome OS -------------------------------------------------------------------
vabr0215a8e2017-03-28 12:47:343022
3023#if defined(OS_CHROMEOS)
3024
Brett Wilson7b44537e2017-08-18 01:38:283025const char kAcceleratedMjpegDecodeName[] =
3026 "Hardware-accelerated mjpeg decode for captured frame";
3027const char kAcceleratedMjpegDecodeDescription[] =
3028 "Enable hardware-accelerated mjpeg decode for captured frame where "
3029 "available.";
vabr0215a8e2017-03-28 12:47:343030
Brett Wilson7b44537e2017-08-18 01:38:283031const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click";
3032const char kAllowTouchpadThreeFingerClickDescription[] =
3033 "Enables touchpad three-finger-click as middle button.";
vabr0215a8e2017-03-28 12:47:343034
Bruno Kim Medeiros Cesarb98fe1d82018-06-06 18:11:523035const char kArcAvailableForChildName[] = "Allow ARC for child accounts";
3036const char kArcAvailableForChildDescription[] =
3037 "Allow child accounts to start Android apps.";
3038
Brett Wilson7b44537e2017-08-18 01:38:283039const char kArcBootCompleted[] = "Load Android apps automatically";
3040const char kArcBootCompletedDescription[] =
3041 "Allow Android apps to start automatically after signing in.";
vabr0215a8e2017-03-28 12:47:343042
Luum Habtemariamdaa8fd22018-06-25 22:39:433043const char kArcCupsApiName[] = "ARC CUPS API";
3044const char kArcCupsApiDescription[] =
3045 "Enables support of libcups APIs from ARC";
3046
Satoshi Niwa8b1d5282018-10-24 04:53:033047const char kArcFilePickerExperimentName[] =
3048 "Enable file picker experiment for ARC";
3049const char kArcFilePickerExperimentDescription[] =
3050 "Enables using Chrome OS file picker in ARC.";
3051
Yuichiro Hanada0b63f062018-07-12 02:18:333052const char kArcInputMethodName[] = "Enable ARC input methods.";
3053const char kArcInputMethodDescription[] = "Enable ARC input methods.";
3054
Lev Rumyantsev7a8544312017-08-18 19:26:513055const char kArcNativeBridgeExperimentName[] =
3056 "Enable native bridge experiment for ARC";
3057const char kArcNativeBridgeExperimentDescription[] =
3058 "Enables experimental native bridge feature.";
3059
lgchengecd1c1a62018-01-09 02:59:463060const char kArcUsbHostName[] = "Enable ARC USB host integration";
3061const char kArcUsbHostDescription[] =
3062 "Allow Android apps to use USB host feature on ChromeOS devices.";
3063
Kevin Cernekeeb7f96a52017-10-25 17:40:183064const char kArcVpnName[] = "Enable ARC VPN integration";
3065const char kArcVpnDescription[] =
3066 "Allow Android VPN clients to tunnel Chrome traffic.";
3067
Qiang Xu045aff222018-05-21 23:21:013068const char kAshDisableLoginDimAndBlurName[] =
3069 "Disable dimming and blur on login screen.";
3070const char kAshDisableLoginDimAndBlurDescription[] =
3071 "Disable dimming and blur on login screen.";
3072
Qiang Xu045aff222018-05-21 23:21:013073const char kAshEnableDisplayMoveWindowAccelsName[] =
3074 "Enable shortcuts for moving window between displays.";
3075const char kAshEnableDisplayMoveWindowAccelsDescription[] =
3076 "Enable shortcuts for moving window between displays.";
3077
Qiang Xu045aff222018-05-21 23:21:013078const char kAshEnableMirroredScreenName[] = "Enable mirrored screen mode.";
3079const char kAshEnableMirroredScreenDescription[] =
3080 "Enable the mirrored screen mode. This mode flips the screen image "
3081 "horizontally.";
3082
Qiang Xu045aff222018-05-21 23:21:013083const char kAshEnablePersistentWindowBoundsName[] =
3084 "Enable persistent window bounds in multi-displays scenario.";
3085const char kAshEnablePersistentWindowBoundsDescription[] =
3086 "Enable persistent window bounds in multi-displays scenario.";
3087
Eliot Courtneye87a9c32018-11-20 03:33:023088const char kAshEnablePipRoundedCornersName[] =
3089 "Enable Picture-in-Picture rounded corners.";
3090const char kAshEnablePipRoundedCornersDescription[] =
3091 "Enable rounded corners on the Picture-in-Picture window.";
3092
Qiang Xu045aff222018-05-21 23:21:013093const char kAshEnableTrilinearFilteringName[] = "Enable trilinear filtering.";
3094const char kAshEnableTrilinearFilteringDescription[] =
3095 "Enable trilinear filtering.";
3096
Brett Wilson7b44537e2017-08-18 01:38:283097const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
3098const char kAshEnableUnifiedDesktopDescription[] =
3099 "Enable unified desktop mode which allows a window to span multiple "
3100 "displays.";
vabr0215a8e2017-03-28 12:47:343101
Qiang Xu045aff222018-05-21 23:21:013102const char kAshShelfColorName[] = "Shelf color in Chrome OS system UI";
3103const char kAshShelfColorDescription[] =
3104 "Enables/disables the shelf color to be a derived from the wallpaper. The "
3105 "--ash-shelf-color-scheme flag defines how that color is derived.";
3106
3107const char kAshShelfColorScheme[] = "Shelf color scheme in Chrome OS System UI";
3108const char kAshShelfColorSchemeDescription[] =
3109 "Specify how the color is derived from the wallpaper. This flag is only "
3110 "used when the --ash-shelf-color flag is enabled. Defaults to Dark & Muted";
3111const char kAshShelfColorSchemeLightVibrant[] = "Light & Vibrant";
3112const char kAshShelfColorSchemeNormalVibrant[] = "Normal & Vibrant";
3113const char kAshShelfColorSchemeDarkVibrant[] = "Dark & Vibrant";
3114const char kAshShelfColorSchemeLightMuted[] = "Light & Muted";
3115const char kAshShelfColorSchemeNormalMuted[] = "Normal & Muted";
3116const char kAshShelfColorSchemeDarkMuted[] = "Dark & Muted";
3117
Sean Kau5e956192017-10-06 22:25:173118const char kBulkPrintersName[] = "Bulk Printers Policy";
3119const char kBulkPrintersDescription[] = "Enables the new bulk printers policy";
3120
Brett Wilson7b44537e2017-08-18 01:38:283121const char kCaptivePortalBypassProxyName[] =
3122 "Bypass proxy for Captive Portal Authorization";
3123const char kCaptivePortalBypassProxyDescription[] =
3124 "If proxy is configured, it usually prevents from authorization on "
3125 "different captive portals. This enables opening captive portal "
3126 "authorization dialog in a separate window, which ignores proxy settings.";
vabr0215a8e2017-03-28 12:47:343127
Brett Wilson7b44537e2017-08-18 01:38:283128const char kCrOSComponentName[] = "Chrome OS Component";
3129const char kCrOSComponentDescription[] =
Xiaochu Liu4c1b75d2017-12-18 23:52:083130 "Disable the use of componentized escpr CUPS filter.";
vabr0215a8e2017-03-28 12:47:343131
Xiaochu Liu51d03fd2017-09-08 23:51:023132const char kCrOSContainerName[] = "Chrome OS Container";
3133const char kCrOSContainerDescription[] =
3134 "Enable the use of Chrome OS Container utility.";
3135
Brett Wilson7b44537e2017-08-18 01:38:283136const char kCrosRegionsModeName[] = "Cros-regions load mode";
3137const char kCrosRegionsModeDescription[] =
3138 "This flag controls cros-regions load mode";
3139const char kCrosRegionsModeDefault[] = "Default";
3140const char kCrosRegionsModeOverride[] = "Override VPD values.";
3141const char kCrosRegionsModeHide[] = "Hide VPD values.";
vabr0215a8e2017-03-28 12:47:343142
Daniel Ng96ab0c82019-01-16 01:21:553143const char kCrostiniAppSearchName[] = "Crostini App Search";
3144const char kCrostiniAppSearchDescription[] =
3145 "Enable search and installation of Crostini apps in the launcher.";
3146
Joel Hockey42387102019-01-10 01:19:323147const char kCrostiniBackupName[] = "Crostini Backup";
3148const char kCrostiniBackupDescription[] = "Enable Crostini export and import.";
3149
Joel Hockeyad5b9762018-09-01 12:06:083150const char kCrostiniFilesName[] = "Crostini Files";
3151const char kCrostiniFilesDescription[] =
3152 "Enable Crostini file sharing in Files app.";
3153
Josh Pratt57cea392018-10-30 02:59:063154const char kCrostiniUsbSupportName[] = "Crostini Usb Support";
3155const char kCrostiniUsbSupportDescription[] =
3156 "Enable mounting Usb devices in Crostini.";
3157
Josh Nohle2f82dcc2018-12-17 23:11:233158const char kCryptAuthV2EnrollmentName[] = "CryptAuth v2 Enrollment";
3159const char kCryptAuthV2EnrollmentDescription[] =
3160 "Use the CryptAuth v2 Enrollment protocol.";
3161
Daniele Castagnac4aeb572018-10-23 16:23:573162const char kDisableExplicitDmaFencesName[] = "Disable explicit dma-fences";
3163const char kDisableExplicitDmaFencesDescription[] =
3164 "Always rely on implicit syncrhonization between GPU and display "
3165 "controller instead of using dma-fences explcitily when available.";
3166
Qiang Xu045aff222018-05-21 23:21:013167const char kDisableSystemTimezoneAutomaticDetectionName[] =
3168 "SystemTimezoneAutomaticDetection policy support";
3169const char kDisableSystemTimezoneAutomaticDetectionDescription[] =
3170 "Disable system timezone automatic detection device policy.";
3171
Sammie Quonef6b4882017-09-14 16:50:053172const char kDisableTabletAutohideTitlebarsName[] =
3173 "Disable autohide titlebars in tablet mode";
3174const char kDisableTabletAutohideTitlebarsDescription[] =
3175 "Disable tablet mode autohide titlebars functionality. The user will be "
3176 "able to see the titlebar in tablet mode.";
3177
Xiaoqian Dai24b33eb2018-04-10 21:01:573178const char kDisableTabletSplitViewName[] = "Disable split view in Tablet mode";
3179const char kDisableTabletSplitViewDescription[] =
3180 "Disable split view for Chrome OS tablet mode.";
3181
Ahmed Fakhry4f567e692018-10-16 15:51:083182const char kDoubleTapToZoomInTabletModeName[] =
3183 "Double-tap to zoom in tablet mode";
3184const char kDoubleTapToZoomInTabletModeDescription[] =
3185 "If Enabled, double tapping in webpages while in tablet mode will zoom the "
3186 "page.";
3187
Daniel Zhang01399072018-08-16 22:28:203188const char kEnableAppListSearchAutocompleteName[] =
3189 "App List Search Autocomplete";
3190const char kEnableAppListSearchAutocompleteDescription[] =
3191 "Allow App List search box to autocomplete queries for Google searches and "
3192 "apps.";
3193
Qiang Xu53d1a5832018-05-24 18:44:193194const char kEnableAppShortcutSearchName[] =
3195 "Enable app shortcut search in launcher";
3196const char kEnableAppShortcutSearchDescription[] =
3197 "Enables app shortcut search in launcher";
3198
Vladislav Kaznacheevaa213a02018-10-29 17:54:283199const char kEnableAppDataSearchName[] = "Enable app data search in launcher";
3200const char kEnableAppDataSearchDescription[] =
3201 "Allow launcher search to access data available through Firebase App "
3202 "Indexing";
3203
Weidong Guo00d0b2b2018-06-07 00:39:303204const char kEnableAppsGridGapFeatureName[] =
3205 "Enable apps grid gap feature in launcher.";
3206const char kEnableAppsGridGapFeatureDescription[] =
3207 "Enables gaps at the end of each page and enables dragging an item to an "
3208 "empty page in launcher.";
3209
Lei Zhang0a318af2018-11-14 02:19:463210const char kEnableArcUnifiedAudioFocusName[] =
Becca Hughes34415e82018-10-05 18:47:373211 "Enable unified audio focus on ARC";
Lei Zhang0a318af2018-11-14 02:19:463212const char kEnableArcUnifiedAudioFocusDescription[] =
Becca Hughes34415e82018-10-05 18:47:373213 "If audio focus is enabled in Chrome then this will delegate audio focus "
3214 "control in Android apps to Chrome.";
3215
Yue Li958f9dd2018-11-15 00:56:593216const char kEnableAssistantVoiceMatchName[] = "Enable Assistant Voice Match";
3217const char kEnableAssistantVoiceMatchDescription[] =
3218 "Enable the Assistant Voice Match feature";
3219
Yue Liebaa9952018-12-07 21:41:263220const char kEnableAssistantAppSupportName[] = "Enable Assistant App Support";
3221const char kEnableAssistantAppSupportDescription[] =
3222 "Enable the Assistant App Support feature";
3223
Lei Zhang2eca9082017-10-17 20:42:503224const char kEnableBackgroundBlurName[] = "Enable background blur.";
3225const char kEnableBackgroundBlurDescription[] =
Wenzhao Zang50fb0b22017-11-07 01:38:423226 "Enables background blur for the Peeking Launcher and Tab Switcher.";
Alex Newcomer43cb7f12017-07-28 17:37:393227
Lei Zhang0ca70ea2018-09-07 17:51:013228const char kEnableChromeOsAccountManagerName[] = "Enable Account Manager";
3229const char kEnableChromeOsAccountManagerDescription[] =
Kushagra Sinha8a181fc2018-08-20 17:15:493230 "Enables the Chrome OS Account Manager";
3231
Alexander Alekseev38e1e0a2018-11-08 22:48:483232const char kEnableDiscoverAppName[] = "Enable Discover App";
3233const char kEnableDiscoverAppDescription[] =
3234 "Enable Discover App icon in launcher.";
3235
Min Chenc2ec7282018-06-29 21:38:463236const char kEnableDragAppsInTabletModeName[] =
3237 "Enable dragging apps in tablet mode";
3238const char kEnableDragAppsInTabletModeDescription[] =
3239 "If enabled, swiping down from the top of the screen when an app is opened "
3240 "in tablet mode can drag the app.";
3241
Xiaoqian Dai82d99192018-05-25 18:51:353242const char kEnableDragTabsInTabletModeName[] =
3243 "Enable dragging tabs in tablet mode";
3244const char kEnableDragTabsInTabletModeDescription[] =
3245 "Allows the user to drag the tabs out of a browser window in tablet mode.";
3246
Sam McNally201fbf94e2018-07-04 03:15:203247const char kEnableDriveFsName[] = "Enable DriveFS";
3248const char kEnableDriveFsDescription[] =
3249 "Enables use of the new DriveFS-based Drive sync client.";
3250
Luciano Pacheco20c48bd42018-11-07 00:57:083251const char kEnableMyFilesVolumeName[] = "Enable MyFiles as Volume";
3252const char kEnableMyFilesVolumeDescription[] =
Luciano Pacheco7fe772fe2018-11-07 02:31:453253 "Enables use of MyFiles as a read/write volume. This should be only "
3254 "used for testing or for trying to restore the previous Downloads content.";
Luciano Pacheco20c48bd42018-11-07 00:57:083255
Brett Wilson7b44537e2017-08-18 01:38:283256const char kEnableEhvInputName[] =
3257 "Emoji, handwriting and voice input on opt-in IME menu";
3258const char kEnableEhvInputDescription[] =
3259 "Enable access to emoji, handwriting and voice input form opt-in IME menu.";
vabr0215a8e2017-03-28 12:47:343260
Brett Wilson7b44537e2017-08-18 01:38:283261const char kEnableEncryptionMigrationName[] =
3262 "Enable encryption migration of user data";
3263const char kEnableEncryptionMigrationDescription[] =
3264 "If enabled and the device supports ARC, the user will be asked to update "
3265 "the encryption of user data when the user signs in.";
vabr0215a8e2017-03-28 12:47:343266
Qiang Xu045aff222018-05-21 23:21:013267const char kEnableFullscreenHandwritingVirtualKeyboardName[] =
3268 "Enable full screen handwriting virtual keyboard";
3269const char kEnableFullscreenHandwritingVirtualKeyboardDescription[] =
3270 "If enabled, the handwriting virtual keyboard will allow user to write "
3271 "anywhere on the screen";
3272
Xiaohui Chenfb0943e2018-10-16 22:44:373273const char kEnableGoogleAssistantName[] = "Enable Google Assistant";
3274const char kEnableGoogleAssistantDescription[] =
3275 "Enable an experimental Assistant implementation that will work on all "
3276 "Chromebooks.";
3277
Xiaohui Chenf4283f32018-11-26 20:02:503278const char kEnableGoogleAssistantDspName[] =
3279 "Enable Google Assistant with hardware-based hotword";
3280const char kEnableGoogleAssistantDspDescription[] =
3281 "Enable an experimental feature that uses hardware-based hotword detection "
3282 "for Assistant. Only a limited number of devices have this type of "
3283 "hardware support.";
3284
Xiaohui Chenc3baca42018-11-30 19:29:373285const char kEnableGoogleAssistantStereoInputName[] =
3286 "Enable Google Assistant with stereo audio input";
3287const char kEnableGoogleAssistantStereoInputDescription[] =
3288 "Enable an experimental feature that uses stereo audio input for hotword "
3289 "and voice to text detection in Google Assistant.";
3290
Qiang Xu045aff222018-05-21 23:21:013291const char kEnableHomeLauncherName[] = "Enable home launcher";
3292const char kEnableHomeLauncherDescription[] =
3293 "Enable home launcher in tablet mode.";
3294
Lei Zhang0ca70ea2018-09-07 17:51:013295const char kEnableHomeLauncherGesturesName[] = "Enable home launcher gestures";
3296const char kEnableHomeLauncherGesturesDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013297 "Enables using gestures to hide or show the home launcher.";
3298
Brett Wilson7b44537e2017-08-18 01:38:283299const char kEnableImeMenuName[] = "Enable opt-in IME menu";
3300const char kEnableImeMenuDescription[] =
3301 "Enable access to the new IME menu in the Language Settings page.";
vabr0215a8e2017-03-28 12:47:343302
Becca Hughes3d63a91d2018-10-17 19:30:393303const char kEnableMediaSessionAshMediaKeysName[] =
3304 "Enable media session media key handling";
3305const char kEnableMediaSessionAshMediaKeysDescription[] =
3306 "Enable the media session service to handle media keys. This requires "
3307 "the audio focus flag to be enabled too.";
3308
Sammie Quon248ccef2018-08-28 23:00:013309const char kEnableOobeRecommendAppsScreenName[] =
3310 "Enable OOBE Recommend Apps Screen";
3311const char kEnableOobeRecommendAppsScreenDescription[] =
3312 "Enable the Recommend Apps Screen in OOBE which allows user to install apps"
3313 "from other devices";
3314
Qiang Xu045aff222018-05-21 23:21:013315const char kEnablePerUserTimezoneName[] = "Per-user time zone preferences.";
3316const char kEnablePerUserTimezoneDescription[] =
3317 "Chrome OS system timezone preference is stored and handled for each user "
3318 "individually.";
3319
Vladislav Kaznacheevaa213a02018-10-29 17:54:283320const char kEnablePlayStoreSearchName[] = "Enable Play Store search";
3321const char kEnablePlayStoreSearchDescription[] =
3322 "Enable Play Store search in launcher.";
3323
Qiang Xu045aff222018-05-21 23:21:013324const char kEnableSettingsShortcutSearchName[] =
3325 "Enable Settings shortcut search";
3326const char kEnableSettingsShortcutSearchDescription[] =
3327 "Enable Settings shortcut search in launcher.";
3328
Darren Shen3e49c63d2018-03-28 04:45:503329const char kEnableStylusVirtualKeyboardName[] =
3330 "Enable stylus virtual keyboard";
3331const char kEnableStylusVirtualKeyboardDescription[] =
3332 "If enabled, tapping with a stylus will show the handwriting virtual "
3333 "keyboard.";
3334
Jazz Xu2e5886662018-12-14 00:38:483335const char kEnableVideoPlayerNativeControlsName[] =
3336 "Enable native controls in video player app";
3337const char kEnableVideoPlayerNativeControlsDescription[] =
3338 "Enable native controls in video player app";
3339
Darren Shen0b4e5802018-07-10 03:12:263340const char kEnableVirtualKeyboardUkmName[] = "Enable UKM for virtual keyboard";
3341const char kEnableVirtualKeyboardUkmDescription[] =
3342 "Enables UKM for virtual keyboard";
3343
Lei Zhang0ca70ea2018-09-07 17:51:013344const char kEnableZeroStateSuggestionsName[] = "Enable Zero State Suggetions";
3345const char kEnableZeroStateSuggestionsDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013346 "Enable Zero State Suggestions feature in Launcher, which will show "
Vladislav Kaznacheevaa213a02018-10-29 17:54:283347 "suggestions when launcher search box is active with an empty query";
Sammie Quon248ccef2018-08-28 23:00:013348
Brett Wilson7b44537e2017-08-18 01:38:283349const char kEolNotificationName[] = "Disable Device End of Life notification.";
3350const char kEolNotificationDescription[] =
3351 "Disable Notifcation when Device is End of Life.";
3352
Brett Wilson7b44537e2017-08-18 01:38:283353const char kFileManagerTouchModeName[] = "Files App. touch mode";
3354const char kFileManagerTouchModeDescription[] =
3355 "Touchscreen-specific interactions of the Files app.";
3356
3357const char kFirstRunUiTransitionsName[] =
3358 "Animated transitions in the first-run tutorial";
3359const char kFirstRunUiTransitionsDescription[] =
3360 "Transitions during first-run tutorial are animated.";
3361
Brett Wilson7b44537e2017-08-18 01:38:283362const char kForceEnableStylusToolsName[] = "Force enable stylus features";
3363const char kForceEnableStylusToolsDescription[] =
3364 "Forces display of the stylus tools menu in the shelf and the stylus "
3365 "section in settings, even if there is no attached stylus device.";
3366
3367const char kGestureEditingName[] = "Gesture editing for the virtual keyboard.";
3368const char kGestureEditingDescription[] =
3369 "Enable/Disable gesture editing option in the settings page for the "
3370 "virtual keyboard.";
3371
3372const char kGestureTypingName[] = "Gesture typing for the virtual keyboard.";
3373const char kGestureTypingDescription[] =
3374 "Enable/Disable gesture typing option in the settings page for the virtual "
3375 "keyboard.";
3376
3377const char kInputViewName[] = "Input views";
3378const char kInputViewDescription[] =
3379 "Enable IME extensions to supply custom views for user input such as "
3380 "virtual keyboards.";
3381
Leo Zhang3cc77542018-11-07 00:58:083382const char kImeServiceName[] = "Enable IME service";
3383const char kImeServiceDescription[] =
3384 "Enable IME service to provide the IME functionality instead of NaCl";
3385
Megumi Hattori5a0d4182018-03-06 11:09:503386const char kLockScreenNotificationName[] = "Lock screen notification";
3387const char kLockScreenNotificationDescription[] =
3388 "Enable notifications on the lock screen.";
3389
Mohsen Izadi06a16f72018-11-29 02:29:223390const char kMashOopVizName[] = "Out-of-process viz for mash";
3391const char kMashOopVizDescription[] =
3392 "Runs viz in a separate process when mash is enabled (otherwise viz would "
3393 "run in ash process)";
3394
Qiang Xu045aff222018-05-21 23:21:013395const char kMaterialDesignInkDropAnimationSpeedName[] =
3396 "Material design ink drop animation speed";
3397const char kMaterialDesignInkDropAnimationSpeedDescription[] =
3398 "Sets the speed of the experimental visual feedback animations for "
3399 "material design.";
3400const char kMaterialDesignInkDropAnimationFast[] = "Fast";
3401const char kMaterialDesignInkDropAnimationSlow[] = "Slow";
3402
Brett Wilson7b44537e2017-08-18 01:38:283403const char kMemoryPressureThresholdName[] =
3404 "Memory discard strategy for advanced pressure handling";
3405const char kMemoryPressureThresholdDescription[] =
3406 "Memory discarding strategy to use";
3407const char kConservativeThresholds[] =
3408 "Conservative memory pressure release strategy";
3409const char kAggressiveCacheDiscardThresholds[] =
3410 "Aggressive cache release strategy";
3411const char kAggressiveTabDiscardThresholds[] =
3412 "Aggressive tab release strategy";
3413const char kAggressiveThresholds[] =
3414 "Aggressive tab and cache release strategy";
3415
3416const char kMtpWriteSupportName[] = "MTP write support";
3417const char kMtpWriteSupportDescription[] =
3418 "MTP write support in File System API (and file manager). In-place editing "
3419 "operations are not supported.";
3420
vabr0215a8e2017-03-28 12:47:343421const char kNetworkPortalNotificationName[] =
3422 "Notifications about captive portals";
vabr0215a8e2017-03-28 12:47:343423const char kNetworkPortalNotificationDescription[] =
3424 "If enabled, notification is displayed when device is connected to a "
3425 "network behind captive portal.";
3426
Brett Wilson7b44537e2017-08-18 01:38:283427const char kNewKoreanImeName[] = "New Korean IME";
3428const char kNewKoreanImeDescription[] =
3429 "New Korean IME, which is based on Google Input Tools' HMM engine.";
vabr0215a8e2017-03-28 12:47:343430
Anand K. Mistrydb5e0102018-10-04 04:24:003431const char kNewZipUnpackerName[] = "ZIP Archiver (unpacking)";
Brett Wilson7b44537e2017-08-18 01:38:283432const char kNewZipUnpackerDescription[] =
Anand K. Mistrydb5e0102018-10-04 04:24:003433 "Use the ZIP Archiver for mounting/unpacking ZIP files";
vabr0215a8e2017-03-28 12:47:343434
Qiang Xu045aff222018-05-21 23:21:013435const char kOfficeEditingComponentAppName[] =
3436 "Office Editing for Docs, Sheets & Slides";
3437const char kOfficeEditingComponentAppDescription[] =
3438 "Office Editing for Docs, Sheets & Slides for testing purposes.";
3439
Brett Wilson7b44537e2017-08-18 01:38:283440const char kPhysicalKeyboardAutocorrectName[] = "Physical keyboard autocorrect";
3441const char kPhysicalKeyboardAutocorrectDescription[] =
3442 "Enable physical keyboard autocorrect for US keyboard, which can provide "
3443 "suggestions as typing on physical keyboard.";
vabr0215a8e2017-03-28 12:47:343444
3445const char kPrinterProviderSearchAppName[] =
3446 "Chrome Web Store Gallery app for printer drivers";
vabr0215a8e2017-03-28 12:47:343447const char kPrinterProviderSearchAppDescription[] =
3448 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:193449 "searches Chrome Web Store for extensions that support printing to a USB "
3450 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:343451
Brett Wilson7b44537e2017-08-18 01:38:283452const char kQuickUnlockPinName[] = "Quick Unlock (PIN)";
3453const char kQuickUnlockPinDescription[] =
3454 "Enabling PIN quick unlock allows you to use a PIN to unlock your ChromeOS "
3455 "device on the lock screen after you have signed into your device.";
3456const char kQuickUnlockPinSignin[] = "Enable PIN when logging in.";
3457const char kQuickUnlockPinSigninDescription[] =
3458 "Enabling PIN allows you to use a PIN to sign in and unlock your ChromeOS "
3459 "device. After changing this flag PIN needs to be set up again.";
3460const char kQuickUnlockFingerprint[] = "Quick Unlock (Fingerprint)";
3461const char kQuickUnlockFingerprintDescription[] =
3462 "Enabling fingerprint quick unlock allows you to setup and use a "
3463 "fingerprint to unlock your Chromebook on the lock screen after you have "
3464 "signed into your device.";
vabr0215a8e2017-03-28 12:47:343465
James Cook0ba192bf2017-12-01 20:53:113466const char kShowTapsName[] = "Show taps";
3467const char kShowTapsDescription[] =
3468 "Draws a circle at each touch point, which makes touch points more obvious "
3469 "when projecting or mirroring the display. Similar to the Android OS "
3470 "developer option.";
3471
3472const char kShowTouchHudName[] = "Show HUD for touch points";
3473const char kShowTouchHudDescription[] =
3474 "Shows a trail of colored dots for the last few touch points. Pressing "
3475 "Ctrl-Alt-I shows a heads-up display view in the top-left corner. Helps "
3476 "debug hardware issues that generate spurious touch events.";
3477
James Cook28d7c482018-09-07 21:00:543478const char kSingleProcessMashName[] =
3479 "In-process window service (SingleProcessMash)";
3480const char kSingleProcessMashDescription[] =
3481 "Runs the system UI (ash) as a mojo service, but inside the browser "
3482 "process. The browser uses the mojo window service (ws) APIs.";
3483
Ahmed Fakhry58e6ef542018-09-04 18:05:383484const char kSlideTopChromeWithPageScrollsName[] =
3485 "Slide top-chrome with page scrolls";
3486const char kSlideTopChromeWithPageScrollsDescription[] =
3487 "If enabled, page scrolls in tablet mode will also scroll the top-chrome"
3488 " UI.";
3489
Jorge Gil5a8ccde2018-07-10 01:46:213490const char kSmartTextSelectionName[] = "Smart Text Selection";
3491const char kSmartTextSelectionDescription[] =
3492 "Shows quick actions for text "
3493 "selections in the context menu.";
3494
Chung-Sheng Wu468b0b32017-09-01 14:41:573495const char kSysInternalsName[] = "Enable Sys-Internals";
3496const char kSysInternalsDescription[] =
3497 "If enabled, user can monitor system information at "
3498 "chrome://sys-internals.";
3499
Brett Wilson7b44537e2017-08-18 01:38:283500const char kTetherName[] = "Instant Tethering";
3501const char kTetherDescription[] =
3502 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
3503 "phone to share its Internet connection with this device.";
stanisc14bed0b132017-05-10 17:46:373504
Brett Wilson7b44537e2017-08-18 01:38:283505const char kTouchscreenCalibrationName[] =
3506 "Enable/disable touchscreen calibration option in material design settings";
3507const char kTouchscreenCalibrationDescription[] =
3508 "If enabled, the user can calibrate the touch screen displays in "
3509 "chrome://settings/display.";
yhanadac5bff5b2017-05-18 06:37:093510
Qiang Xu045aff222018-05-21 23:21:013511const char kUiDevToolsName[] = "Enable native UI inspection";
3512const char kUiDevToolsDescription[] =
3513 "Enables inspection of native UI elements. For local inspection use "
3514 "chrome://inspect#other";
3515
3516const char kUiShowCompositedLayerBordersName[] =
3517 "Show UI composited layer borders";
3518const char kUiShowCompositedLayerBordersDescription[] =
3519 "Show border around composited layers created by UI.";
3520const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
3521const char kUiShowCompositedLayerBordersSurface[] = "Surface";
3522const char kUiShowCompositedLayerBordersLayer[] = "Layer";
3523const char kUiShowCompositedLayerBordersAll[] = "All";
3524
3525const char kUiSlowAnimationsName[] = "Slow UI animations";
3526const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
3527
Mitsuru Oshima63d3f2a2017-08-23 00:12:113528// Force UI Mode
3529const char kUiModeName[] = "Force Ui Mode";
3530const char kUiModeDescription[] =
3531 R"*(This flag can be used to force a certain mode on to a chromebook, )*"
3532 R"*(despite its current orientation. "Tablet" means that the )*"
3533 R"*(chromebook will act as if it were in tablet mode. "Clamshell" )*"
3534 R"*(means that the chromebook will act as if it were in clamshell )*"
3535 R"*(mode . "Auto" means that the chromebook will alternate between )*"
3536 R"*(the two, based on its orientation.)*";
Min Chenfd25cd22018-11-06 01:50:513537const char kUiModeTablet[] = "Tablet";
Mitsuru Oshima63d3f2a2017-08-23 00:12:113538const char kUiModeClamshell[] = "Clamshell";
3539const char kUiModeAuto[] = "Auto (default)";
3540
Sonny Sasaka7fecfeda2018-07-11 23:47:553541const char kUnfilteredBluetoothDevicesName[] = "Unfiltered Bluetooth devices";
3542const char kUnfilteredBluetoothDevicesDescription[] =
3543 "Shows all Bluetooth devices in UI (System Tray/Settings Page.)";
3544
Allen Webbcdc8e69d2018-09-12 20:36:003545const char kUsbguardName[] = "Block new USB devices at the lock screen.";
3546const char kUsbguardDescription[] =
3547 "Prevents newly connected USB devices from operating at the lock screen"
3548 " until Chrome OS is unlocked to protect against malicious USB devices."
3549 " Already connected USB devices will continue to function.";
3550
Micah Morton79a7b522018-09-27 15:15:303551const char kShillSandboxingName[] =
3552 "Run shill, the ChromeOS network manager, in a sandbox.";
3553const char kShillSandboxingDescription[] =
3554 "Causes shill to be run as user/group 'shill', instead of 'root'.";
3555
Micah Morton02d3aba2018-11-20 01:51:453556const char kFsNosymfollowName[] =
3557 "Prevent symlink traversal on user-supplied filesystems.";
3558const char kFsNosymfollowDescription[] =
3559 "Causes user-supplied filesystems to be mounted with the 'nosymfollow'"
3560 " option, so the chromuimos LSM denies symlink traversal on the"
3561 " filesystem.";
3562
James Cooka1bcfa9a2018-01-30 00:18:403563const char kUseMashName[] = "Out-of-process system UI (mash)";
3564const char kUseMashDescription[] =
3565 "Runs the mojo UI service (mus) and the ash window manager and system UI "
3566 "in a separate process.";
Brett Wilson7b44537e2017-08-18 01:38:283567
Miguel Casas-Sanchez8ba32f92017-11-07 05:03:343568// TODO(mcasas): remove after https://crbug.com/771345.
3569const char kUseMonitorColorSpaceName[] = "Use monitor color space";
3570const char kUseMonitorColorSpaceDescription[] =
3571 "Enables Chrome to use the color space information provided by the monitor"
3572 " instead of the default sRGB color space.";
3573
Andres Calderon Jaramillo43c0e8a2018-08-21 02:46:233574const char kVaapiJpegImageDecodeAccelerationName[] =
3575 "VA-API JPEG decode acceleration for images";
3576const char kVaapiJpegImageDecodeAccelerationDescription[] =
3577 "Enable or disable decode acceleration of JPEG images (as opposed to camera"
3578 " captures) using the VA-API.";
3579
Brett Wilson7b44537e2017-08-18 01:38:283580const char kVideoPlayerChromecastSupportName[] =
3581 "Experimental Chromecast support for Video Player";
3582const char kVideoPlayerChromecastSupportDescription[] =
3583 "This option enables experimental Chromecast support for Video Player app "
3584 "on ChromeOS.";
3585
3586const char kVirtualKeyboardName[] = "Virtual Keyboard";
3587const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
3588
3589const char kVirtualKeyboardOverscrollName[] = "Virtual Keyboard Overscroll";
3590const char kVirtualKeyboardOverscrollDescription[] =
3591 "Enables virtual keyboard overscroll support.";
3592
3593const char kVoiceInputName[] = "Voice input on virtual keyboard";
3594const char kVoiceInputDescription[] =
3595 "Enables voice input on virtual keyboard.";
3596
3597const char kWakeOnPacketsName[] = "Wake On Packets";
3598const char kWakeOnPacketsDescription[] =
3599 "Enables waking the device based on the receipt of some network packets.";
orenb21da031c2017-06-30 21:24:203600
yhanadac5bff5b2017-05-18 06:37:093601#endif // defined(OS_CHROMEOS)
3602
Brett Wilson7b44537e2017-08-18 01:38:283603// Random platform combinations -----------------------------------------------
3604
3605#if defined(OS_WIN) || defined(OS_LINUX)
3606
3607const char kEnableInputImeApiName[] = "Enable Input IME API";
3608const char kEnableInputImeApiDescription[] =
3609 "Enable the use of chrome.input.ime API.";
3610
3611#endif // defined(OS_WIN) || defined(OS_LINUX)
3612
3613#if defined(OS_WIN) || defined(OS_MACOSX)
3614
3615const char kAutomaticTabDiscardingName[] = "Automatic tab discarding";
3616const char kAutomaticTabDiscardingDescription[] =
3617 "If enabled, tabs get automatically discarded from memory when the system "
3618 "memory is low. Discarded tabs are still visible on the tab strip and get "
3619 "reloaded when clicked on. Info about discarded tabs can be found at "
3620 "chrome://discards.";
3621
3622#endif // defined(OS_WIN) || defined(OS_MACOSX)
3623
lanwei83f54452018-06-21 23:51:043624#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3625
3626const char kDirectManipulationStylusName[] = "Direct Manipulation Stylus";
3627const char kDirectManipulationStylusDescription[] =
3628 "If enabled, Chrome will scroll web pages on stylus drag.";
3629
3630#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3631
Henrik Grunell63f2d772018-12-06 17:25:203632#if defined(OS_MACOSX) || defined(OS_CHROMEOS)
3633
3634const char kForceEnableSystemAecName[] = "Force enable system AEC";
3635const char kForceEnableSystemAecDescription[] =
3636 "Use system echo canceller instead of WebRTC echo canceller. If there is "
3637 "no system echo canceller available, getUserMedia with echo cancellation "
3638 "enabled will fail.";
3639
3640#endif // defined(OS_MACOSX) || defined(OS_CHROMEOS)
3641
Justin Donnelly110e40c2018-06-01 21:48:433642const char kExperimentalUiName[] = "Use all upcoming UI features";
3643const char kExperimentalUiDescription[] = "Use all upcoming UI features.";
Elly Fong-Jonesdfaf8532018-05-29 18:20:483644
Brett Wilson7b44537e2017-08-18 01:38:283645// Feature flags --------------------------------------------------------------
3646
Lei Zhang0a318af2018-11-14 02:19:463647#if defined(DCHECK_IS_CONFIGURABLE)
3648const char kDcheckIsFatalName[] = "DCHECKs are fatal";
3649const char kDcheckIsFatalDescription[] =
3650 "By default Chrome will evaluate in this build, but only log failures, "
3651 "rather than crashing. If enabled, DCHECKs will crash the calling process.";
3652#endif // defined(DCHECK_IS_CONFIGURABLE)
3653
Brett Wilson7b44537e2017-08-18 01:38:283654#if BUILDFLAG(ENABLE_VR)
3655
David Dorwin5a496c32017-11-17 01:45:053656const char kWebVrVsyncAlignName[] = "WebVR VSync-aligned timing";
3657const char kWebVrVsyncAlignDescription[] =
3658 "Align WebVR application rendering with VSync for smoother animations.";
3659
Bill Orr103ed272018-02-14 21:23:053660#if BUILDFLAG(ENABLE_OCULUS_VR)
3661const char kOculusVRName[] = "Oculus hardware support";
3662const char kOculusVRDescription[] =
3663 "If enabled, Chrome will use Oculus devices for VR (supported only on "
3664 "Windows 10 or later).";
3665#endif // ENABLE_OCULUS_VR
3666
Bill Orr49527562017-11-22 16:58:483667#if BUILDFLAG(ENABLE_OPENVR)
3668const char kOpenVRName[] = "OpenVR hardware support";
3669const char kOpenVRDescription[] =
Bill Orr5056e692018-01-17 02:08:073670 "If enabled, Chrome will use OpenVR devices for VR (supported only on "
3671 "Windows 10 or later).";
Bill Orr49527562017-11-22 16:58:483672#endif // ENABLE_OPENVR
3673
Bill Orrecfb9fe2018-10-02 00:11:103674#if BUILDFLAG(ENABLE_ISOLATED_XR_SERVICE)
3675const char kXRSandboxName[] = "XR device sandboxing";
3676const char kXRSandboxDescription[] =
3677 "If enabled, Chrome will host VR APIs in a restricted process on desktop.";
3678#endif // ENABLE_ISOLATED_XR_SERVICE
3679
Brett Wilson7b44537e2017-08-18 01:38:283680#endif // ENABLE_VR
3681
Nico Weberaf3b00b2017-09-11 17:58:173682#if BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:283683
3684const char kNaclDebugMaskName[] =
3685 "Restrict Native Client GDB-based debugging by pattern";
3686const char kNaclDebugMaskDescription[] =
3687 "Restricts Native Client application GDB-based debugging by URL of "
3688 "manifest file. Native Client GDB-based debugging must be enabled for this "
3689 "option to work.";
3690const char kNaclDebugMaskChoiceDebugAll[] = "Debug everything.";
3691const char kNaclDebugMaskChoiceExcludeUtilsPnacl[] =
3692 "Debug everything except secure shell and the PNaCl translator.";
3693const char kNaclDebugMaskChoiceIncludeDebug[] =
3694 "Debug only if manifest URL ends with debug.nmf.";
3695
3696const char kNaclDebugName[] = "Native Client GDB-based debugging";
3697const char kNaclDebugDescription[] =
3698 "Enable GDB debug stub. This will stop a Native Client application on "
3699 "startup and wait for nacl-gdb (from the NaCl SDK) to attach to it.";
3700
3701const char kNaclName[] = "Native Client";
3702const char kNaclDescription[] =
3703 "Support Native Client for all web applications, even those that were not "
3704 "installed from the Chrome Web Store.";
3705
3706const char kPnaclSubzeroName[] = "Force PNaCl Subzero";
3707const char kPnaclSubzeroDescription[] =
3708 "Force the use of PNaCl's fast Subzero translator for all pexe files.";
3709
Nico Weberaf3b00b2017-09-11 17:58:173710#endif // BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:283711
Lei Zhang802201c2018-11-14 18:16:283712#if BUILDFLAG(ENABLE_PLUGINS)
3713
dstockwellcc759202019-01-11 00:42:123714#if defined(OS_CHROMEOS)
3715const char kPdfAnnotations[] = "PDF Annotations";
3716const char kPdfAnnotationsDescription[] =
3717 "Enable annotating PDF documents.";
3718#endif // defined(OS_CHROMEOS)
3719
Lei Zhang802201c2018-11-14 18:16:283720const char kPdfFormSaveName[] = "Save PDF Forms";
3721const char kPdfFormSaveDescription[] =
3722 "Enable saving PDFs with filled form data.";
3723
3724const char kPdfIsolationName[] = "PDF Isolation";
3725const char kPdfIsolationDescription[] =
3726 "Render PDF files from different origins in different plugin processes.";
3727
3728#endif // BUILDFLAG(ENABLE_PLUGINS)
3729
Brett Wilson7b44537e2017-08-18 01:38:283730#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3731
3732const char kAutofillCreditCardUploadName[] =
3733 "Enable offering upload of Autofilled credit cards";
3734const char kAutofillCreditCardUploadDescription[] =
3735 "Enables a new option to upload credit cards to Google Payments for sync "
3736 "to all Chrome devices.";
3737
3738#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3739
Collin Baker0a45d6a2018-12-20 19:21:503740#if BUILDFLAG(ENABLE_DESKTOP_IN_PRODUCT_HELP)
3741
3742const char kReopenTabInProductHelpName[] = "Reopen tab in-product help";
3743const char kReopenTabInProductHelpDescription[] =
3744 "Enable in-product help that guides a user to reopen a tab if it looks "
3745 "like they accidentally closed it.";
3746
3747#endif // BUILDFLAG(ENABLE_DESKTOP_IN_PRODUCT_HELP)
3748
Tomas Popela253a5832019-01-14 17:22:103749#if defined(WEBRTC_USE_PIPEWIRE)
3750
3751extern const char kWebrtcPipeWireCapturerName[] = "WebRTC PipeWire support";
3752extern const char kWebrtcPipeWireCapturerDescription[] =
3753 "When enabled the WebRTC will use the PipeWire multimedia server for "
3754 "capturing the desktop content on the Wayland display server.";
3755
3756#endif // #if defined(WEBRTC_USE_PIPEWIRE)
3757
Brett Wilson7b44537e2017-08-18 01:38:283758// ============================================================================
3759// Don't just add flags to the end, put them in the right section in
3760// alphabetical order just like the header file.
3761// ============================================================================
3762
vabr0215a8e2017-03-28 12:47:343763} // namespace flag_descriptions