blob: 81cce7e879a10e46ee9c37db66f73852389d8112 [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
Jeremy Klein586b4ccc2018-06-09 21:05:4846const char kAndroidMessagesIntegrationName[] = "Android Messages integration";
47const char kAndroidMessagesIntegrationDescription[] =
48 "Enables Chrome OS integration with Android messages.";
49
Jeremy Klein8d8f9b2e2018-09-13 21:48:5750const char kAndroidMessagesProdEndpointName[] =
51 "Use Android Messages prod endpoint";
52const char kAndroidMessagesProdEndpointDescription[] =
53 "For Android Messages integration, point to the prod endpoint instead of "
54 "sandbox.";
55
Kamila02f7e072018-10-08 09:50:2856const char kAndroidSiteSettingsUIName[] = "Android Site Settings UI changes.";
57const char kAndroidSiteSettingsUIDescription[] =
58 "Enable the new UI "
59 "changes in Site Settings in Android.";
60
Brett Wilsonf27ff602017-07-07 22:28:4761const char kAppBannersName[] = "App Banners";
62const char kAppBannersDescription[] =
63 "Enable the display of Progressive Web App banners, which prompt a user to "
64 "add a web app to their shelf, or other platform-specific equivalent.";
65
Ioana Pandelef9689a062018-06-22 15:35:5166const char kAutomaticPasswordGenerationName[] = "Automatic password generation";
67const char kAutomaticPasswordGenerationDescription[] =
68 "Allow Chrome to offer to generate passwords when it detects account "
69 "creation pages.";
70
Michael Lippautz6081dfa2018-10-18 13:10:1471const char kEnableBlinkHeapUnifiedGarbageCollectionName[] =
72 "Blink Heap Unified Garbage Collection";
73const char kEnableBlinkHeapUnifiedGarbageCollectionDescription[] =
74 "Enable unified garbage collection in Blink";
75
Ulan Degenbaevb5466a92018-07-19 12:35:3476const char kEnableBloatedRendererDetectionName[] = "Bloated renderer detection";
77const char kEnableBloatedRendererDetectionDescription[] =
78 "Enable bloated renderer detection";
79
Khushalba202212017-07-12 19:53:4980const char kAsyncImageDecodingName[] = "AsyncImageDecoding";
81const char kAsyncImageDecodingDescription[] =
82 "Enables asynchronous decoding of images from raster for web content";
83
Roger McFarlane2eceba982018-05-18 01:37:1184const char kAutofillCacheQueryResponsesName[] =
85 "Cache Autofill Query Responses";
86const char kAutofillCacheQueryResponsesDescription[] =
87 "When enabled, autofill will cache the responses it receives from the "
88 "crowd-sourced field type prediction server.";
89
Jeffrey Cohen05cdafa392018-08-15 20:49:1790const char kAutofillEnableCompanyNameName[] =
91 "Enable Autofill Company Name field";
92const char kAutofillEnableCompanyNameDescription[] =
93 "When enabled, Company Name fields will be auto filled";
94
sebsge35b762c2018-03-29 20:33:2795const char kAutofillDynamicFormsName[] = "Autofill Dynamic Forms";
96const char kAutofillDynamicFormsDescription[] =
97 "Allows autofill to fill dynamically changing forms";
98
Anne Lime625362e2018-08-29 03:13:2599const char kAutofillNoLocalSaveOnUploadSuccessName[] =
100 "Disable locally saving card when credit card upload succeeds";
101const char kAutofillNoLocalSaveOnUploadSuccessDescription[] =
102 "When enabled, no local copy of server card will be saved when credit card "
103 "upload succeeds.";
104
Parastoo Geranmayeh2dcd14f92018-06-01 17:08:39105const char kAutofillPrefilledFieldsName[] = "Autofill Prefilled Fields";
106const char kAutofillPrefilledFieldsDescription[] =
107 "Allows autofill to fill fields previously filled by the website";
108
Lei Zhang0ca70ea2018-09-07 17:51:01109const char kAutofillPreviewStyleExperimentName[] =
Fabio Tirelo9b423c7b2018-08-15 14:32:18110 "Autofill Preview Style Experiment";
Lei Zhang0ca70ea2018-09-07 17:51:01111const char kAutofillPreviewStyleExperimentDescription[] =
Fabio Tirelo9b423c7b2018-08-15 14:32:18112 "Allows experimentation with the Autofill field preview's style.";
113
Parastoo Geranmayeh071d725c2018-06-26 17:35:22114const char kAutofillRationalizeRepeatedServerPredictionsName[] =
115 "Autofill Rationalization of Repeated Server Field Type Predictions";
116const char kAutofillRationalizeRepeatedServerPredictionsDescription[] =
117 "Allows autofill to rationalize repeated server field type predictions.";
118
Roger McFarlane1a37d7b2018-04-20 22:45:19119const char kAutofillEnforceMinRequiredFieldsForHeuristicsName[] =
120 "Autofill Enforce Min Required Fields For Heuristics";
121const char kAutofillEnforceMinRequiredFieldsForHeuristicsDescription[] =
122 "When enabled, autofill will generally require a form to have at least 3 "
123 "fields before allowing heuristic field-type prediction to occur.";
124
125const char kAutofillEnforceMinRequiredFieldsForQueryName[] =
126 "Autofill Enforce Min Required Fields For Query";
127const char kAutofillEnforceMinRequiredFieldsForQueryDescription[] =
128 "When enabled, autofill will generally require a form to have at least 3 "
129 "fields before querying the autofill server for field-type predictions.";
130
131const char kAutofillEnforceMinRequiredFieldsForUploadName[] =
132 "Autofill Enforce Min Required Fields For Upload";
133const char kAutofillEnforceMinRequiredFieldsForUploadDescription[] =
134 "When enabled, autofill will generally require a form to have at least 3 "
135 "fillable fields before uploading field-type votes for that form.";
136
Moe Ahmadid3ddfcb2018-04-20 19:51:08137const char kAutofillRestrictUnownedFieldsToFormlessCheckoutName[] =
138 "Restrict formless form extraction";
139const char kAutofillRestrictUnownedFieldsToFormlessCheckoutDescription[] =
140 "Restrict extraction of formless forms to checkout flows";
141
Brett Wilsonf27ff602017-07-07 22:28:47142const char kAutoplayPolicyName[] = "Autoplay policy";
143const char kAutoplayPolicyDescription[] =
144 "Policy used when deciding if audio or video is allowed to autoplay.";
145
146const char kAutoplayPolicyUserGestureRequiredForCrossOrigin[] =
147 "User gesture is required for cross-origin iframes.";
148const char kAutoplayPolicyNoUserGestureRequired[] =
149 "No user gesture is required.";
150const char kAutoplayPolicyUserGestureRequired[] = "User gesture is required.";
151const char kAutoplayPolicyDocumentUserActivation[] =
152 "Document user activation is required.";
153
Lei Zhang0ca70ea2018-09-07 17:51:01154const char kAv1DecoderName[] = "Enable AV1 video decoding.";
155const char kAv1DecoderDescription[] =
Johanne0cc6902017-11-16 00:23:50156 "Allow decoding of files with the AV1 video codec.";
157
Maya Lekova4bbfdb7f2018-10-16 08:15:03158const char kAwaitOptimizationName[] = "Await optimization";
159const char kAwaitOptimizationDescription[] =
160 "Enables await taking 1 tick on the microtask queue.";
161
Brett Wilsonf27ff602017-07-07 22:28:47162const char kBleAdvertisingInExtensionsName[] = "BLE Advertising in Chrome Apps";
163const char kBleAdvertisingInExtensionsDescription[] =
164 "Enables BLE Advertising in Chrome Apps. BLE Advertising might interfere "
165 "with regular use of Bluetooth Low Energy features.";
166
Charles Harrisond629cc62017-10-05 01:39:54167const char kBlockTabUndersName[] = "Block tab-unders";
168const char kBlockTabUndersDescription[] =
169 "Blocks tab-unders in Chrome with some native UI to allow the user to "
170 "proceed.";
171
Brett Wilsonf27ff602017-07-07 22:28:47172const char kBrowserTaskSchedulerName[] = "Task Scheduler";
173const char kBrowserTaskSchedulerDescription[] =
174 "Enables redirection of some task posting APIs to the task scheduler.";
175
Carlos IL766fbc882018-02-16 02:34:52176const char kBundledConnectionHelpName[] = "Bundled Connection Help";
177const char kBundledConnectionHelpDescription[] =
Carlos ILaafcd73a2018-07-10 20:08:37178 "Enables or disables redirection to local help content for users who get "
179 "an interstitial after clicking the 'Learn More' link on a previous "
180 "interstitial.";
Carlos IL766fbc882018-02-16 02:34:52181
Brett Wilsonf27ff602017-07-07 22:28:47182const char kBypassAppBannerEngagementChecksName[] =
183 "Bypass user engagement checks";
184const char kBypassAppBannerEngagementChecksDescription[] =
185 "Bypasses user engagement checks for displaying app banners, such as "
186 "requiring that users have visited the site before and that the banner "
187 "hasn't been shown recently. This allows developers to test that other "
188 "eligibility requirements for showing app banners, such as having a "
189 "manifest, are met.";
190
Miguel Casas454d9cf2018-06-28 16:25:00191const char kCanvas2DImageChromiumName[] = "Canvas 2D Image Chromium";
192const char kCanvas2DImageChromiumDescription[] =
193 "Allows for using CHROMIUM_image GLES2 extension for HTML Canvas Contexts";
194
Brett Wilsonf27ff602017-07-07 22:28:47195const char kCastStreamingHwEncodingName[] =
196 "Cast Streaming hardware video encoding";
197const char kCastStreamingHwEncodingDescription[] =
198 "This option enables support in Cast Streaming for encoding video streams "
199 "using platform hardware.";
200
Amber Won478561d2017-08-19 01:02:59201const char kClickToOpenPDFName[] = "Click to open embedded PDFs";
202const char kClickToOpenPDFDescription[] =
203 "When the PDF plugin is unavailable, show a click-to-open placeholder for "
204 "embedded PDFs.";
205
Gary Kacmarcikfb69b212017-11-14 03:41:08206const char kClipboardContentSettingName[] = "Clipboard content setting";
207const char kClipboardContentSettingDescription[] =
208 "Enables a site-wide permission in the UI which controls access to the "
209 "asynchronous clipboard web API";
210
Brett Wilsonf27ff602017-07-07 22:28:47211const char kCloudImportName[] = "Cloud Import";
212const char kCloudImportDescription[] = "Allows the cloud-import feature.";
213
rbpotter9990eb42018-07-12 05:34:59214const char kCloudPrinterHandlerName[] = "Enable Cloud Printer Handler";
215const char kCloudPrinterHandlerDescription[] =
216 "Use the new cloud printer handler for communicating with the cloud "
217 "print server, instead of the cloud print interface in the Print "
218 "Preview WebUI.";
219
Tanja Gornakb0985dd2018-10-11 17:24:40220const char kFCMInvalidationsName[] =
221 "Enable invalidations delivery via new FCM based protocol";
222const char kFCMInvalidationsDescription[] =
223 "Use the new FCM-based protocol for deliveling invalidations";
224
Christopher Cameronceb8727d2017-09-07 23:53:16225const char kForceColorProfileSRGB[] = "sRGB";
226const char kForceColorProfileP3[] = "Display P3 D65";
227const char kForceColorProfileColorSpin[] = "Color spin with gamma 2.4";
228const char kForceColorProfileHdr[] = "scRGB linear (HDR where available)";
229
230const char kForceColorProfileName[] = "Force color profile";
231const char kForceColorProfileDescription[] =
232 "Forces Chrome to use a specific color profile instead of the color "
233 "of the window's current monitor, as specified by the operating system.";
234
Brett Wilsonf27ff602017-07-07 22:28:47235const char kCompositedLayerBordersName[] = "Composited render layer borders";
236const char kCompositedLayerBordersDescription[] =
237 "Renders a border around composited Render Layers to help debug and study "
238 "layer compositing.";
239
Theresac34db2d2018-06-28 00:03:11240const char kContextualSuggestionsButtonName[] = "Contextual Suggestions Button";
241const char kContextualSuggestionsButtonDescription[] =
242 "If enabled, shows a button to trigger contextual suggestions.";
243
Theresae308b9e2018-10-10 15:57:40244const char kContextualSuggestionsIPHReverseScrollName[] =
245 "Contextual Suggestions IPH Reverse Scroll";
246const char kContextualSuggestionsIPHReverseScrollDescription[] =
247 "Require a reverse scroll before showing in-product help for contextual "
248 "suggestions.";
249
Theresa0f2947b92018-07-02 21:27:58250const char kContextualSuggestionsOptOutName[] =
251 "Contextual Suggestions Opt-out";
252const char kContextualSuggestionsOptOutDescription[] =
253 "If enabled, allows the user to opt out of contextual suggestions.";
254
Brett Wilsonf27ff602017-07-07 22:28:47255const char kCreditCardAssistName[] = "Credit Card Assisted Filling";
256const char kCreditCardAssistDescription[] =
257 "Enable assisted credit card filling on certain sites.";
258
259const char kCrossProcessGuestViewIsolationName[] =
260 "Cross process frames for guests";
261const char kCrossProcessGuestViewIsolationDescription[] =
262 "Highly experimental where guests such as <webview> are implemented on "
263 "the out-of-process iframe infrastructure.";
264
Thanh Le659cb102017-12-20 22:00:19265const char kDataSaverServerPreviewsName[] = "Data Saver Server Previews";
266const char kDataSaverServerPreviewsDescription[] =
267 "Allow the Data Reduction Proxy to serve previews.";
Brett Wilsonf27ff602017-07-07 22:28:47268
269const char kDatasaverPromptName[] = "Cellular Data Saver Prompt";
270const char kDatasaverPromptDescription[] =
271 "Enables a prompt, which appears when a cellular network connection is "
272 "detected, to take the user to the Data Saver extension page on Chrome Web "
273 "Store.";
274const char kDatasaverPromptDemoMode[] = "Demo mode";
275
Wez54dc71b2018-04-17 00:42:34276#if DCHECK_IS_CONFIGURABLE
277const char kDcheckIsFatalName[] = "DCHECKs are fatal";
278const char kDcheckIsFatalDescription[] =
279 "By default Chrome will evaluate in this build, but only log failures, "
280 "rather than crashing. If enabled, DCHECKs will crash the calling process.";
281#endif // DCHECK_IS_CONFIGURABLE
282
Brett Wilsonf27ff602017-07-07 22:28:47283const char kDebugPackedAppName[] = "Debugging for packed apps";
284const char kDebugPackedAppDescription[] =
285 "Enables debugging context menu options such as Inspect Element for packed "
286 "applications.";
287
288const char kDefaultTileHeightName[] = "Default tile height";
289const char kDefaultTileHeightDescription[] = "Specify the default tile height.";
290const char kDefaultTileHeightShort[] = "128";
291const char kDefaultTileHeightTall[] = "256";
292const char kDefaultTileHeightGrande[] = "512";
293const char kDefaultTileHeightVenti[] = "1024";
294
295const char kDefaultTileWidthName[] = "Default tile width";
296const char kDefaultTileWidthDescription[] = "Specify the default tile width.";
297const char kDefaultTileWidthShort[] = "128";
298const char kDefaultTileWidthTall[] = "256";
299const char kDefaultTileWidthGrande[] = "512";
300const char kDefaultTileWidthVenti[] = "1024";
301
302const char kDebugShortcutsName[] = "Debugging keyboard shortcuts";
303const char kDebugShortcutsDescription[] =
304 "Enables additional keyboard shortcuts that are useful for debugging Ash.";
305
306const char kDeviceDiscoveryNotificationsName[] =
307 "Device Discovery Notifications";
308const char kDeviceDiscoveryNotificationsDescription[] =
309 "Device discovery notifications on local network.";
310
311const char kDevtoolsExperimentsName[] = "Developer Tools experiments";
312const char kDevtoolsExperimentsDescription[] =
313 "Enables Developer Tools experiments. Use Settings panel in Developer "
314 "Tools to toggle individual experiments.";
315
316const char kDisableAudioForDesktopShareName[] =
317 "Disable Audio For Desktop Share";
318const char kDisableAudioForDesktopShareDescription[] =
319 "With this flag on, desktop share picker window will not let the user "
320 "choose whether to share audio.";
321
Arthur Sonzogni721f48e2018-10-31 17:10:02322const char kDisableIpcFloodingProtectionName[] =
323 "Disable IPC flooding protection";
324const char kDisableIpcFloodingProtectionDescription[] =
325 "Some javascript code can flood the inter process communication system. "
326 "This protection limits the rate (calls/seconds) at which theses function "
327 "can be used. This flag disables the protection.";
328
Chris Palmer917bc052018-03-14 19:28:31329const char kDisablePushStateThrottleName[] = "Disable pushState throttling";
330const char kDisablePushStateThrottleDescription[] =
331 "Disables throttling of history.pushState and history.replaceState method "
332 "calls.";
333
Brett Wilsonf27ff602017-07-07 22:28:47334const char kDisableTabForDesktopShareName[] =
335 "Disable Desktop Share with tab source";
336const char kDisableTabForDesktopShareDescription[] =
337 "This flag controls whether users can choose a tab for desktop share.";
338
339const char kDisallowDocWrittenScriptsUiName[] =
340 "Block scripts loaded via document.write";
341const char kDisallowDocWrittenScriptsUiDescription[] =
342 "Disallows fetches for third-party parser-blocking scripts inserted into "
343 "the main frame via document.write.";
344
Christopher Thompson2ffffa2c2018-05-18 23:06:37345const char kDisallowUnsafeHttpDownloadsName[] =
346 "Block unsafe downloads over insecure connections";
347const char kDisallowUnsafeHttpDownloadsNameDescription[] =
348 "Disallows downloads of unsafe files (files that can potentially execute "
349 "code), where the final download origin or any origin in the redirect "
350 "chain is insecure.";
351
Brett Wilsonf27ff602017-07-07 22:28:47352const char kDriveSearchInChromeLauncherName[] =
353 "Drive Search in Chrome App Launcher";
354const char kDriveSearchInChromeLauncherDescription[] =
355 "Files from Drive will show up when searching the Chrome App Launcher.";
356
Brett Wilsonf27ff602017-07-07 22:28:47357const char kEmbeddedExtensionOptionsName[] = "Embedded extension options";
358const char kEmbeddedExtensionOptionsDescription[] =
359 "Display extension options as an embedded element in chrome://extensions "
360 "rather than opening a new tab.";
361
Dominic Mazzoni8ac98962018-05-25 05:44:55362const char kEnableAccessibilityObjectModelName[] = "Accessibility Object Model";
363const char kEnableAccessibilityObjectModelDescription[] =
364 "Enables experimental support for Accessibility Object Model APIs "
365 "that are in development.";
366
Anthony Vallee-Dubois968ae4d2018-03-15 16:56:36367const char kEnableWebPaymentsSingleAppUiSkipName[] =
368 "Enable Web Payments single app UI skip";
369const char kEnableWebPaymentsSingleAppUiSkipDescription[] =
370 "Enable Web Payments to skip showing its UI if the developer specifies a "
371 "single app.";
372
Florian Uunk8c428ea2018-07-18 11:12:52373const char kEnableAutofillAccountWalletStorageName[] =
374 "Enable the account data storage for autofill";
375const char kEnableAutofillAccountWalletStorageDescription[] =
376 "Enable the ephemeral storage for account data for autofill.";
377
Shanfeng Zhang19c16562017-10-17 02:30:40378const char kEnableAutofillCreditCardAblationExperimentDisplayName[] =
379 "Credit card autofill ablation experiment.";
380const char kEnableAutofillCreditCardAblationExperimentDescription[] =
381 "If enabled, credit card autofill suggestions will not display.";
382
Brett Wilsonf27ff602017-07-07 22:28:47383const char kEnableAutofillCreditCardLastUsedDateDisplayName[] =
384 "Display the last used date of a credit card in autofill.";
385const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
386 "If enabled, display the last used date of a credit card in autofill.";
387
Sujie Zhu2cf0e5c2018-07-17 18:00:27388const char kEnableAutofillCreditCardLocalCardMigrationName[] =
389 "Enable migrating local cards to Google Pay";
390const char kEnableAutofillCreditCardLocalCardMigrationDescription[] =
391 "If enabled, prompt migration of locally-saved credit cards to Google Pay.";
392
Jared Saulbc672a072018-06-16 05:22:12393const char kEnableAutofillCreditCardUploadEditableCardholderNameName[] =
394 "Make cardholder name editable in dialog during credit card upload";
395const char kEnableAutofillCreditCardUploadEditableCardholderNameDescription[] =
396 "If enabled, in certain situations when offering credit card upload to "
397 "Google Payments, the cardholder name can be edited within the "
398 "offer-to-save dialog, which is prefilled with the name from the signed-in "
399 "Google Account.";
400
Hao Zhang1be9c262018-11-03 00:23:51401const char kEnableAutofillCreditCardUploadEditableExpirationDateName[] =
402 "Make expiration date editable in dialog during credit card upload";
403const char kEnableAutofillCreditCardUploadEditableExpirationDateDescription[] =
404 "If enabled, if a credit card's expiration date was not detected when "
405 "offering card upload to Google Payments, the offer-to-save dialog "
406 "displays an expiration date selector.";
407
Lakshmi Kumar Dabbiru51f1c202018-03-29 22:23:37408const char kEnableAutofillCreditCardUploadGooglePayOnAndroidBrandingName[] =
409 "Enable Google Pay branding when offering credit card upload on Android";
410const char
411 kEnableAutofillCreditCardUploadGooglePayOnAndroidBrandingDescription[] =
412 "If enabled, shows the Google Pay logo and a shorter header message "
413 "when credit card upload to Google Payments is offered on Android.";
414
siyua9a4a8872018-10-05 03:46:56415const char kEnableAutofillLocalCardMigrationShowFeedbackName[] =
416 "Show the upload results dialog after local card migration";
417const char kEnableAutofillLocalCardMigrationShowFeedbackDescription[] =
418 "If enabled, the local card migration offer dialog will remain pending "
419 "after the user clicks the save button. Once migration is finished, "
420 "the dialog will be updated with the results of each card.";
421
tmartinocd414732018-02-12 19:01:01422const char kEnableAutofillNativeDropdownViewsName[] =
423 "Display Autofill Dropdown Using Views";
424const char kEnableAutofillNativeDropdownViewsDescription[] =
425 "If enabled, the Autofill Dropdown will be built natively using Views, "
426 "rather than painted directly to a canvas.";
427
Fabio Tirelo87552e02018-07-06 15:43:21428const char kEnableAutofillSaveCardDialogUnlabeledExpirationDateName[] =
429 "Show unlabeled expiration dates on the save card dialog";
430const char kEnableAutofillSaveCardDialogUnlabeledExpirationDateDescription[] =
431 "If enabled, expiration dates on the save card dialog (both local and "
432 "upstream) are shown without an 'Exp:' label.";
433
Manas Verma99541e52018-08-03 20:37:23434const char kEnableAutofillSaveCardSignInAfterLocalSaveName[] =
435 "Show Sign-In/Sync promo after saving a card locally";
436const char kEnableAutofillSaveCardSignInAfterLocalSaveDescription[] =
437 "If enabled, shows a sign in prompt to the user after the user "
438 "saves a card locally. This also introduces a Manage Cards bubble "
439 "which you can access from the card icon after saving a card.";
440
Jared Saul8a0c1e92018-10-10 18:22:47441const char kEnableAutofillSaveCreditCardUsesStrikeSystemName[] =
442 "Enable limit on offering to save the same credit card repeatedly";
443const char kEnableAutofillSaveCreditCardUsesStrikeSystemDescription[] =
444 "If enabled, prevents popping up the credit card offer-to-save prompt if "
445 "it has repeatedly been ignored, declined, or failed.";
446
Lakshmi Kumar Dabbirua3d0805f2018-05-22 22:04:23447const char kEnableAutofillSendExperimentIdsInPaymentsRPCsName[] =
448 "Send experiment flag IDs in calls to Google Payments";
449const char kEnableAutofillSendExperimentIdsInPaymentsRPCsDescription[] =
450 "If enabled, adds the status of certain experiment variations when making "
451 "calls to Google Payments.";
452
Becca Hughes4d896c42018-05-29 16:58:51453const char kEnableAutoplayIgnoreWebAudioName[] =
454 "Autoplay ignores WebAudio playbacks";
455const char kEnableAutoplayIgnoreWebAudioDescription[] =
456 "If enabled, autoplay restrictions will be ignored for WebAudio.";
457
Becca Hughesc62f6a1d2018-08-16 15:59:47458const char kEnableAutoplayUnifiedSoundSettingsName[] =
459 "Autoplay unified sound settings UI";
460const char kEnableAutoplayUnifiedSoundSettingsDescription[] =
461 "If enabled, shows the new unified autoplay sound settings UI.";
462
Brett Wilsonf27ff602017-07-07 22:28:47463const char kEnableBrotliName[] = "Brotli Content-Encoding.";
464const char kEnableBrotliDescription[] =
465 "Enable Brotli Content-Encoding support.";
466
Qiang Xu0f602fe62017-12-22 01:31:20467const char kEnableCaptivePortalRandomUrl[] = "Captive Portal url Randomization";
468const char kEnableCaptivePortalRandomUrlDescription[] =
469 "Enable Captive Portal URL randomization.";
470
Eriko Kurimoto36975992018-08-09 07:15:13471const char kEnableChromevoxDeveloperOptionName[] =
472 "Enable Chromevox developer option";
473const char kEnableChromevoxDeveloperOptionDescription[] =
474 "This option provides tools for developing in chromevox.";
475
sclittle50e4bb92017-07-08 02:23:03476const char kEnableClientLoFiName[] = "Client-side Lo-Fi previews";
477
478const char kEnableClientLoFiDescription[] =
479 "Enable showing low fidelity images on some pages on slow networks.";
480
Patrick Noland8bc57472018-06-19 21:09:54481const char kEnableCSSFragmentIdentifiersName[] =
482 "Enable CSS Fragment Identifiers";
483const char kEnableCSSFragmentIdentifiersDescription[] =
484 "Enable support for specifying a target element using a css selector in "
485 "the fragment identifier.";
486
David Reveman87b4b692018-03-09 21:22:22487const char kEnableCursorMotionBlurName[] = "Enable Cursor Motion Blur";
488const char kEnableCursorMotionBlurDescription[] =
489 "Enable motion blur effect for the cursor.";
490
Doug Arnett08b4067b2017-10-12 20:14:44491const char kEnableNoScriptPreviewsName[] = "NoScript previews";
492
493const char kEnableNoScriptPreviewsDescription[] =
494 "Enable disabling JavaScript on some pages on slow networks.";
495
Thanh Le2c279fbc2017-11-21 01:25:40496const char kDataReductionProxyServerAlternative1[] = "Use alt. server config 1";
497const char kDataReductionProxyServerAlternative2[] = "Use alt. server config 2";
498const char kDataReductionProxyServerAlternative3[] = "Use alt. server config 3";
499const char kDataReductionProxyServerAlternative4[] = "Use alt. server config 4";
500const char kDataReductionProxyServerAlternative5[] = "Use alt. server config 5";
501const char kDataReductionProxyServerAlternative6[] = "Use alt. server config 6";
502const char kDataReductionProxyServerAlternative7[] = "Use alt. server config 7";
503const char kDataReductionProxyServerAlternative8[] = "Use alt. server config 8";
504const char kDataReductionProxyServerAlternative9[] = "Use alt. server config 9";
505const char kDataReductionProxyServerAlternative10[] =
506 "Use alt. server config 10";
rajendrantcfa60ba2018-10-30 09:16:54507const char kEnableDataReductionProxyNetworkServiceName[] =
508 "Data reduction proxy with network service";
509const char kEnableDataReductionProxyNetworkServiceDescription[] =
510 "Enable data reduction proxy when network service is enabled";
Brett Wilsonf27ff602017-07-07 22:28:47511const char kEnableDataReductionProxyServerExperimentName[] =
512 "Use an alternative Data Saver back end configuration.";
513const char kEnableDataReductionProxyServerExperimentDescription[] =
514 "Enable a different approach to saving data by configuring the back end "
515 "server";
516
517const char kEnableDataReductionProxySavingsPromoName[] =
518 "Data Saver 1 MB Savings Promo";
519const char kEnableDataReductionProxySavingsPromoDescription[] =
520 "Enable a Data Saver promo for 1 MB of savings. If Data Saver has already "
521 "saved 1 MB of data, then the promo will not be shown. Data Saver must be "
522 "enabled for the promo to be shown.";
523
Matt Giucad4870432017-11-24 01:04:38524const char kEnableDesktopPWAsName[] = "Desktop PWAs";
525const char kEnableDesktopPWAsDescription[] =
526 "Experimental windowing and install banner treatment for Progressive Web "
527 "Apps on desktop platforms. Implies #enable-experimental-app-banners.";
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17528
Giovanni Ortuño Urquidi40c8e792018-02-28 04:18:59529const char kEnableDesktopPWAsLinkCapturingName[] =
530 "Desktop PWAs Link Capturing";
531const char kEnableDesktopPWAsLinkCapturingDescription[] =
532 "Experimentally enable link capturing for Desktop PWAs. Navigations to "
533 "URLs that are in-scope of Desktop PWAs will open in a window. Requires "
534 "#enable-desktop-pwas.";
535
Jay Harris52511a02018-11-02 01:00:28536const char kDesktopPWAsCustomTabUIName[] = "Desktop PWAs Custom Tab UI";
537const char kDesktopPWAsCustomTabUIDescription[] =
538 "Browsing out-of-scope links in a desktop PWA will use the custom tab UI "
539 "for displaying the page title and origin instead of the location bar.";
540
Jay Harrisee7a7bc62018-10-09 01:47:49541const char kDesktopPWAsStayInWindowName[] =
542 "Desktop PWAs out-of-scope links open in the app window";
543const char kDesktopPWAsStayInWindowDescription[] =
Jay Harris52511a02018-11-02 01:00:28544 "Links to sites in a different scope will open inside the PWA window as "
545 "opposed to in the browser.";
Jay Harrisee7a7bc62018-10-09 01:47:49546
Christopher Lame66b7812018-09-26 01:49:24547const char kEnableSystemWebAppsName[] = "System Web Apps";
548const char kEnableSystemWebAppsDescription[] =
549 "Experimental system for using the Desktop PWA framework for running System"
550 "Apps (e.g Settings, Discover).";
551
Ahmed Fakhry0037de02018-01-29 19:58:31552const char kEnableDockedMagnifierName[] = "Docked Magnifier";
553const char kEnableDockedMagnifierDescription[] =
554 "Enables the Docked Magnifier (a.k.a. picture-in-picture magnifier).";
555
Ramya Nagarajan5b41d8d2018-04-02 19:53:02556const char kEnableEmojiContextMenuName[] = "Emoji Context Menu";
557const char kEnableEmojiContextMenuDescription[] =
Mathieu Perreault608546ee2018-05-09 00:35:09558 "Enables the Emoji picker item in context menus for editable text areas, if"
559 " supported by the operating system.";
Ramya Nagarajan5b41d8d2018-04-02 19:53:02560
David Benjamin570460e2018-10-16 06:01:29561const char kEnforceTLS13DowngradeName[] = "TLS 1.3 downgrade hardening";
562const char kEnforceTLS13DowngradeDescription[] =
563 "This option enables the TLS 1.3 downgrade hardening mechanism. This "
564 "hardens TLS 1.3 connections while remaining compatible with TLS 1.0 "
565 "through 1.2 connections. Firewalls and proxies that do not function when "
566 "this is enabled do not implement TLS 1.0 through 1.2 correctly or "
567 "securely. They must be fixed by vendors.";
568
Brett Wilsonf27ff602017-07-07 22:28:47569const char kEnableEnumeratingAudioDevicesName[] =
570 "Experimentally enable enumerating audio devices.";
571const char kEnableEnumeratingAudioDevicesDescription[] =
572 "Experimentally enable the use of enumerating audio devices.";
573
574const char kEnableGenericSensorName[] = "Generic Sensor";
575const char kEnableGenericSensorDescription[] =
Mikhail Pozdnyakov73373a62017-08-24 17:31:25576 "Enables motion sensor classes based on Generic Sensor API, i.e. "
577 "Accelerometer, LinearAccelerationSensor, Gyroscope, "
578 "AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
579
580const char kEnableGenericSensorExtraClassesName[] =
581 "Generic Sensor Extra Classes";
582const char kEnableGenericSensorExtraClassesDescription[] =
583 "Enables an extra set of sensor classes based on Generic Sensor API, which "
584 "expose previously unavailable platform features, i.e. AmbientLightSensor "
585 "and Magnetometer interfaces.";
Brett Wilsonf27ff602017-07-07 22:28:47586
Brett Wilsonf27ff602017-07-07 22:28:47587const char kEnableHDRName[] = "HDR mode";
588const char kEnableHDRDescription[] =
589 "Enables HDR support on compatible displays.";
590
Ryan Sturm6a850902018-06-09 02:27:34591const char kEnableHeavyPageCappingName[] = "Heavy Page Capping";
592const char kEnableHeavyPageCappingDescription[] =
Ryan Sturm1550abeb2018-06-18 20:05:09593 "Enable showing an InfoBar on data heavy pages that allows the user to "
Ryan Sturma2cd49f2018-06-20 17:09:25594 "pause sub-resource request loading on the page. Using the 'Low' option "
Ryan Sturm2a2f11e2018-07-17 23:01:01595 "will reduce the triggering threshold to 1MB. Data saver must be enabled "
596 "in order to see the InfoBar.";
Ryan Sturm6a850902018-06-09 02:27:34597
Robert Ogden5a63b242018-09-17 21:38:57598const char kEnablePreviewsAndroidOmniboxUIName[] =
599 "Previews Android Omnibox UI";
600const char kEnablePreviewsAndroidOmniboxUIDescription[] =
601 "Enable showing the Previews UI in the Omnibox on Android instead of an "
602 "InfoBar. This has no effect on other platforms.";
603
Robert Ogdence8c9572018-10-08 23:08:48604const char kEnableLitePageServerPreviewsName[] = "Lite Page Server Previews";
605const char kEnableLitePageServerPreviewsDescription[] =
606 "Enable showing Lite Page Previews served from the Chrome Data Proxy "
607 "service. This feature will cause Chrome to redirect eligible navigations "
608 "to a Google-owned domain that serves a pre-rendered version of the "
609 "original page.";
610
Brett Wilsonf27ff602017-07-07 22:28:47611const char kEnableHttpFormWarningName[] =
612 "Show in-form warnings for sensitive fields when the top-level page is not "
Eric Lawrenceed8fccf2017-09-08 21:27:15613 "HTTPS";
Brett Wilsonf27ff602017-07-07 22:28:47614const char kEnableHttpFormWarningDescription[] =
615 "Attaches a warning UI to any password or credit card fields detected when "
616 "the top-level page is not HTTPS";
617
Hiroshige Hayashizaki99d5821e2018-05-02 04:25:41618const char kLayeredAPIName[] = "Experimental layered APIs";
619const char kLayeredAPIDescription[] =
620 "Enable layered API infrastructure, as well as several experimental "
621 "layered APIs. The syntax and the APIs exposed are experimental and will "
622 "change over time.";
623
Ian Kilpatricke68ef11a2018-07-04 03:52:10624const char kEnableLayoutNGName[] = "Enable LayoutNG";
625const char kEnableLayoutNGDescription[] =
626 "Enable Blink's next generation layout engine.";
627
Scott Littled0fd2d002018-04-13 03:37:26628const char kEnableLazyFrameLoadingName[] = "Enable lazy frame loading";
629const char kEnableLazyFrameLoadingDescription[] =
630 "Defers the loading of certain cross-origin frames until the page is "
631 "scrolled down near them.";
632
rajendrant793ff512018-08-10 17:07:59633const char kEnableLazyImageLoadingName[] = "Enable lazy image loading";
634const char kEnableLazyImageLoadingDescription[] =
635 "Defers the loading of images until the page is scrolled down near them.";
636
Sidney San Martín9375b892017-09-09 00:29:54637const char kEnableMacMaterialDesignDownloadShelfName[] =
638 "Enable Material Design download shelf";
639
640const char kEnableMacMaterialDesignDownloadShelfDescription[] =
641 "If enabled, the download shelf uses Material Design.";
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
dpapaded8349472017-10-25 03:21:27676const char kEnableNewPrintPreview[] = "Enable new Print Preview UI";
677const char kEnableNewPrintPreviewDescription[] =
rbpotter29690042018-06-18 19:28:37678 "If enabled, Print Preview will display a newer UI. This feature is "
679 "activated if either this flag or #upcoming-ui-features is enabled.";
dpapaded8349472017-10-25 03:21:27680
Ahmed Fakhry2fd8fc82017-07-28 16:31:12681const char kEnableNightLightName[] = "Enable Night Light";
682const char kEnableNightLightDescription[] =
683 "Enable the Night Light feature which controls the color temperature of "
684 "the screen.";
685
Tetsui Ohkuboc3eb87f72018-07-20 02:22:28686const char kEnableNotificationScrollBarName[] =
687 "Enable notification list scroll bar";
688const char kEnableNotificationScrollBarDescription[] =
689 "Enable the scroll bar of the notification list in Unified System Tray.";
690
Mitsuru Otsukae8304de2018-10-29 02:14:36691const char kEnableNotificationExpansionAnimationName[] =
692 "Enable notification expansion animations";
693const char kEnableNotificationExpansionAnimationDescription[] =
694 "Enable notification animations whenever the expansion state is toggled.";
695
xlou8b56f672018-02-09 23:34:30696const char kEnableNupPrintingName[] = "Enable N-up printing";
697const char kEnableNupPrintingDescription[] =
698 "Enable N-up printing in the print preview panel.";
699
Sophie Chang117a3b22017-10-24 22:25:36700const char kEnableOptimizationHintsName[] = "Optimization Hints";
701const char kEnableOptimizationHintsDescription[] =
Sophie Chang5454ce82018-07-16 17:44:50702 "Enable the Optimization Hints feature which incorporates server hints "
Sophie Chang117a3b22017-10-24 22:25:36703 "into decisions for what optimizations to perform on some pages on slow "
704 "networks.";
705
Yutaka Hirano98be3272017-08-07 17:55:39706const char kEnableOutOfBlinkCORSName[] = "Out of blink CORS";
707const char kEnableOutOfBlinkCORSDescription[] =
708 "CORS handling logic is moved out of blink.";
709
Sammie Quon0fbf0782018-05-01 22:11:08710const char kEnableOverviewSwipeToCloseName[] =
711 "Enable overview swipe to close.";
712const char kEnableOverviewSwipeToCloseDescription[] =
713 "Enables closing of items in overview mode by dragging or flinging "
714 "vertically.";
715
kylechar7051c092018-02-05 20:31:39716const char kVizDisplayCompositorName[] = "Viz Display Compositor (OOP-D)";
717const char kVizDisplayCompositorDescription[] =
718 "If enabled, the display compositor runs as part of the viz service in the"
719 "GPU process.";
720
Ria Jiang6a129b982018-03-01 18:30:40721const char kVizHitTestDrawQuadName[] = "Viz Hit-test Draw-quad version";
722const char kVizHitTestDrawQuadDescription[] =
723 "If enabled, event targeting uses the new viz-assisted hit-testing logic, "
724 "with hit-test data computed from the CompositorFrame.";
725
Erik Chen49bbfa22017-08-18 08:49:56726const char kEnableOutOfProcessHeapProfilingName[] =
Albert J. Wong174174762018-01-18 23:50:23727 "Out of process heap profiling start mode.";
Erik Chen49bbfa22017-08-18 08:49:56728const char kEnableOutOfProcessHeapProfilingDescription[] =
729 "Creates a profiling service that records stacktraces for all live, "
erikchen94aca892018-01-18 00:21:19730 "malloced objects. Heap dumps can be obtained at chrome://tracing "
731 "[category:memory-infra] and chrome://memory-internals. This setting "
732 "controls which processes are profiled. As long as this setting is not "
733 "disabled, users can start profiling any given process in "
734 "chrome://memory-internals.";
735const char kEnableOutOfProcessHeapProfilingModeMinimal[] = "Browser and GPU";
736const char kEnableOutOfProcessHeapProfilingModeAll[] = "All processes";
737const char kEnableOutOfProcessHeapProfilingModeAllRenderers[] = "All renderers";
738const char kEnableOutOfProcessHeapProfilingModeBrowser[] = "Only browser";
739const char kEnableOutOfProcessHeapProfilingModeGpu[] = "Only GPU.";
erikchen0a5dd692017-12-12 00:53:10740const char kEnableOutOfProcessHeapProfilingModeManual[] =
erikchen94aca892018-01-18 00:21:19741 "None by default. Visit chrome://memory-internals to choose which "
742 "processes to profile.";
Albert J. Wongbd5bd902017-11-09 19:56:15743const char kEnableOutOfProcessHeapProfilingModeRendererSampling[] =
744 "Profile a random sampling of renderer processes, ensuring only one is "
745 "ever profiled at a time.";
erikchen94aca892018-01-18 00:21:19746
Erik Chen8bb76b52017-12-06 19:06:25747const char kOutOfProcessHeapProfilingKeepSmallAllocations[] =
erikchen94aca892018-01-18 00:21:19748 "Emit small allocations in memlog heap dumps.";
Erik Chen8bb76b52017-12-06 19:06:25749const char kOutOfProcessHeapProfilingKeepSmallAllocationsDescription[] =
750 "By default, small allocations are pruned from the heap dump. This reduces "
751 "the size of the compressed trace by 100x. If pruning is disabled, the "
752 "chrome://tracing UI may be unable to take or load the trace. Save the "
753 "trace directly using chrome://memory-internals, and use other mechanisms "
754 "[e.g. diff_heap_profiler.py] to examine the trace. Note that "
755 "automatically uploaded traces will always be pruned. This only affects "
756 "manually taken memory-infra traces.";
Erik Chen49bbfa22017-08-18 08:49:56757
erikchen8bc20d82018-02-14 03:21:51758const char kOutOfProcessHeapProfilingSampling[] = "Sample memlog allocations";
759const char kOutOfProcessHeapProfilingSamplingDescription[] =
760 "Use a poisson process to sample allocations. Defaults to a sample rate of "
erikchen99bfce02018-02-14 20:29:22761 "10000. This results in low noise for large and/or frequent allocations ["
762 "[size * frequency >> 10000]. This means that aggregate numbers [e.g. "
763 "total size of malloc-ed objects] and large and/or frequent allocations "
764 "can be trusted with high fidelity.";
erikchen8bc20d82018-02-14 03:21:51765
Erik Chen3303fd0232018-01-11 20:29:05766const char kOOPHPStackModeName[] =
767 "The type of stack to record for memlog heap dumps";
768const char kOOPHPStackModeDescription[] =
erikchen94aca892018-01-18 00:21:19769 "By default, memlog heap dumps record native stacks, which requires a "
770 "post-processing step to symbolize. Requires a custom build with frame "
erikchen011ad3f2018-01-26 17:54:55771 "pointers to work on Android. Native with thread names will add the thread "
772 "name as the first frame of each native stack. It's also possible to "
773 "record a pseudo stack using trace events as identifiers. It's also "
774 "possible to do a mix of both.";
erikchen94aca892018-01-18 00:21:19775const char kOOPHPStackModeMixed[] = "Mixed";
776const char kOOPHPStackModeNative[] = "Native";
erikchen011ad3f2018-01-26 17:54:55777const char kOOPHPStackModeNativeWithThreadNames[] = "Native with thread names";
erikchen94aca892018-01-18 00:21:19778const char kOOPHPStackModePseudo[] = "Trace events";
Erik Chen3303fd0232018-01-11 20:29:05779
François Beaufort2e75f492018-02-08 20:44:46780const char kEnablePictureInPictureName[] = "Enable Picture-in-Picture.";
Brett Wilsonf27ff602017-07-07 22:28:47781const char kEnablePictureInPictureDescription[] =
François Beaufort2e75f492018-02-08 20:44:46782 "Enable the Picture-in-Picture feature for videos.";
Brett Wilsonf27ff602017-07-07 22:28:47783
F#m59d036e2017-09-13 07:22:17784const char kEnablePixelCanvasRecordingName[] = "Enable pixel canvas recording";
785const char kEnablePixelCanvasRecordingDescription[] =
786 "Pixel canvas recording allows the compositor to raster contents aligned "
787 "with the pixel and improves text rendering. This should be enabled when a "
788 "device is using fractional scale factor.";
789
Ella Gebee81c92018-08-14 15:51:09790const char kEnableResamplingInputEventsName[] =
791 "Enable resampling input events";
792const char kEnableResamplingInputEventsDescription[] =
793 "Predicts mouse and touch inputs position at rAF time based on previous "
794 "input";
795const char kEnableResamplingScrollEventsName[] =
796 "Enable resampling scroll events";
797const char kEnableResamplingScrollEventsDescription[] =
798 "Predicts the scroll amount at vsync time based on previous input";
799
Doug Arnettaa0bf202018-08-27 19:42:11800const char kEnableResourceLoadingHintsName[] = "Enable resource loading hints";
801const char kEnableResourceLoadingHintsDescription[] =
802 "Enable using server-provided resource loading hints to provide a preview "
803 "over slow network connections.";
804
Lei Zhang0ca70ea2018-09-07 17:51:01805const char kEnableSyncUserConsentSeparateTypeName[] =
vitaliiid36191b2018-06-11 07:40:49806 "Enable separate sync type for consents";
Lei Zhang0ca70ea2018-09-07 17:51:01807const char kEnableSyncUserConsentSeparateTypeDescription[] =
vitaliiid36191b2018-06-11 07:40:49808 "Emit user consents as a separate sync type instead of user events.";
809
Mohamed Amir Yosef0178fa892018-07-23 17:43:52810const char kEnableSyncUSSBookmarksName[] = "Enable USS for bookmarks sync";
811const char kEnableSyncUSSBookmarksDescription[] =
812 "Enables the new, experimental implementation of bookmark sync";
813
Mikel Astiz38837f82018-04-24 22:23:23814const char kEnableSyncUSSSessionsName[] = "Enable USS for sessions sync";
815const char kEnableSyncUSSSessionsDescription[] =
816 "Enables the new, experimental implementation of session sync (aka tab "
817 "sync).";
818
Brett Wilsonf27ff602017-07-07 22:28:47819const char kEnableUseZoomForDsfName[] =
820 "Use Blink's zoom for device scale factor.";
821const char kEnableUseZoomForDsfDescription[] =
822 "If enabled, Blink uses its zooming mechanism to scale content for device "
823 "scale factor.";
824const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
825const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
826const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
827
Patrick Noland8ee016e2018-01-24 11:44:53828const char kEnableScrollAnchorSerializationName[] =
829 "Scroll Anchor Serialization";
830const char kEnableScrollAnchorSerializationDescription[] =
831 "Save the scroll anchor and use it to restore the scroll position when "
832 "navigating.";
833
Brad Nelson5cd500e2018-01-04 00:50:19834const char kEnableSharedArrayBufferName[] =
835 "Experimental enabled SharedArrayBuffer support in JavaScript.";
836const char kEnableSharedArrayBufferDescription[] =
837 "Enable SharedArrayBuffer support in JavaScript.";
838
Brett Wilsonf27ff602017-07-07 22:28:47839const char kEnableWasmName[] = "WebAssembly structured cloning support.";
840const char kEnableWasmDescription[] =
841 "Enable web pages to use WebAssembly structured cloning.";
842
Kim Paulhamusae635a32018-06-27 07:30:54843const char kEnableWebAuthenticationAPIName[] = "Web Authentication API";
844const char kEnableWebAuthenticationAPIDescription[] =
Kim Paulhamus92431372018-07-20 02:25:47845 "Enable Web Authentication API support.";
846
Lei Zhang0ca70ea2018-09-07 17:51:01847const char kEnableWebAuthenticationCableSupportName[] =
Kim Paulhamus92431372018-07-20 02:25:47848 "Web Authentication caBLE support";
Lei Zhang0ca70ea2018-09-07 17:51:01849const char kEnableWebAuthenticationCableSupportDescription[] =
Kim Paulhamus92431372018-07-20 02:25:47850 "Enable the cloud-assisted pairingless BLE protocol for use with "
851 "the Web Authentication API.";
Kim Paulhamusae635a32018-06-27 07:30:54852
Brett Wilsonf27ff602017-07-07 22:28:47853const char kEnableImageCaptureAPIName[] = "Image Capture API";
854const char kEnableImageCaptureAPIDescription[] =
855 "Enables the Web Platform Image Capture API: takePhoto(), "
856 "getPhotoCapabilities(), etc.";
857
Ramin Halavatic158b182018-10-18 14:04:54858const char kEnableIncognitoWindowCounterName[] = "Incognito Window Counter";
859const char kEnableIncognitoWindowCounterDescription[] =
860 "Shows the count of Incognito windows next to the Incognito icon on the "
861 "toolbar.";
862
Brett Wilsonf27ff602017-07-07 22:28:47863const char kEnableZeroSuggestRedirectToChromeName[] =
864 "Experimental contextual omnibox suggestion";
865const char kEnableZeroSuggestRedirectToChromeDescription[] =
866 "Change omnibox contextual suggestions to an experimental source. Note "
867 "that this is not an on/off switch for contextual omnibox and it only "
868 "applies to suggestions provided before the user starts typing a URL or a "
869 "search query (i.e. zero suggest).";
870
Clemens Hammacher0c8a15a2018-04-27 13:45:32871const char kEnableWasmBaselineName[] = "WebAssembly baseline compiler";
872const char kEnableWasmBaselineDescription[] =
873 "Enables WebAssembly baseline compilation and tier up.";
874
Ben Smith24c1e5c2018-06-20 01:09:02875const char kEnableWasmThreadsName[] = "WebAssembly threads support.";
876const char kEnableWasmThreadsDescription[] =
877 "Enables support for the WebAssembly Threads proposal. Implies "
878 "#shared-array-buffer and #enable-webassembly.";
879
Brett Wilsonf27ff602017-07-07 22:28:47880const char kExpensiveBackgroundTimerThrottlingName[] =
881 "Throttle expensive background timers";
882const char kExpensiveBackgroundTimerThrottlingDescription[] =
883 "Enables intervention to limit CPU usage of background timers to 1%.";
884
885const char kExperimentalAppBannersName[] = "Experimental app banners";
886const char kExperimentalAppBannersDescription[] =
Matt Giucad4870432017-11-24 01:04:38887 "Enables a new experimental app banner flow and UI. Implies "
888 "#enable-app-banners.";
Brett Wilsonf27ff602017-07-07 22:28:47889
890const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
891const char kExperimentalCanvasFeaturesDescription[] =
892 "Enables the use of experimental canvas features which are still in "
893 "development.";
894
Nicholas Verneccd8259802018-02-22 01:22:04895const char kExperimentalCrostiniUIName[] = "Experimental Crostini";
896const char kExperimentalCrostiniUIDescription[] =
897 "Enables in-development Crostini features.";
898
Brett Wilsonf27ff602017-07-07 22:28:47899const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
900const char kExperimentalExtensionApisDescription[] =
901 "Enables experimental extension APIs. Note that the extension gallery "
902 "doesn't allow you to upload extensions that use experimental APIs.";
903
904const char kExperimentalFullscreenExitUIName[] =
905 "Experimental fullscreen exit UI";
906const char kExperimentalFullscreenExitUIDescription[] =
907 "Displays experimental UI to allow mouse and touch input methods to exit "
908 "fullscreen mode.";
909
Ian Clelland37a985d2018-05-04 02:43:13910const char kExperimentalProductivityFeaturesName[] =
911 "Experimental Productivity Features";
912const char kExperimentalProductivityFeaturesDescription[] =
913 "Enable support for experimental developer productivity features, such as "
914 "Layered APIs and policies for avoiding slow rendering.";
915
Brett Wilsonf27ff602017-07-07 22:28:47916const char kExperimentalSecurityFeaturesName[] =
917 "Potentially annoying security features";
918const char kExperimentalSecurityFeaturesDescription[] =
919 "Enables several security features that will likely break one or more "
920 "pages that you visit on a daily basis. Strict mixed content checking, for "
921 "example. And locking powerful features to secure contexts. This flag will "
922 "probably annoy you.";
923
924const char kExperimentalWebPlatformFeaturesName[] =
925 "Experimental Web Platform features";
926const char kExperimentalWebPlatformFeaturesDescription[] =
927 "Enables experimental Web Platform features that are in development.";
928
929const char kExtensionContentVerificationName[] =
930 "Extension Content Verification";
931const char kExtensionContentVerificationDescription[] =
932 "This flag can be used to turn on verification that the contents of the "
933 "files on disk for extensions from the webstore match what they're "
934 "expected to be. This can be used to turn on this feature if it would not "
935 "otherwise have been turned on, but cannot be used to turn it off (because "
936 "this setting can be tampered with by malware).";
937const char kExtensionContentVerificationBootstrap[] =
938 "Bootstrap (get expected hashes, but do not enforce them)";
939const char kExtensionContentVerificationEnforce[] =
940 "Enforce (try to get hashes, and enforce them if successful)";
941const char kExtensionContentVerificationEnforceStrict[] =
942 "Enforce strict (hard fail if we can't get hashes)";
943
944const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
945const char kExtensionsOnChromeUrlsDescription[] =
946 "Enables running extensions on chrome:// URLs, where extensions explicitly "
947 "request this permission.";
galinapae72e152017-05-12 13:12:28948
Brett Wilsonecb80982017-07-12 20:34:51949const char kFastUnloadName[] = "Fast tab/window close";
950const char kFastUnloadDescription[] =
951 "Enables fast tab/window closing - runs a tab's onunload js handler "
952 "independently of the GUI.";
vabr0215a8e2017-03-28 12:47:34953
Brett Wilsonecb80982017-07-12 20:34:51954const char kFeaturePolicyName[] = "Feature Policy";
955const char kFeaturePolicyDescription[] =
956 "Enables granting and removing access to features through the "
957 "Feature-Policy HTTP header.";
vabr0215a8e2017-03-28 12:47:34958
Brett Wilsonecb80982017-07-12 20:34:51959const char kFontCacheScalingName[] = "FontCache scaling";
960const char kFontCacheScalingDescription[] =
961 "Reuse a cached font in the renderer to serve different sizes of font for "
962 "faster layout.";
963
964const char kForceEffectiveConnectionTypeName[] =
965 "Override effective connection type";
966const char kForceEffectiveConnectionTypeDescription[] =
967 "Overrides the effective connection type of the current connection "
Thanh Lea98f12f2017-12-18 19:35:30968 "returned by the network quality estimator. Slow 2G on Cellular returns "
969 "Slow 2G when connected to a cellular network, and the actual estimate "
970 "effective connection type when not on a cellular network. Previews are "
971 "usually served on 2G networks.";
Brett Wilsonecb80982017-07-12 20:34:51972const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
973const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
974const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
Thanh Lea98f12f2017-12-18 19:35:30975const char kEffectiveConnectionTypeSlow2GOnCellularDescription[] =
976 "Slow 2G On Cellular";
Brett Wilsonecb80982017-07-12 20:34:51977const char kEffectiveConnectionType2GDescription[] = "2G";
978const char kEffectiveConnectionType3GDescription[] = "3G";
979const char kEffectiveConnectionType4GDescription[] = "4G";
980
981const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
982const char kFillOnAccountSelectDescription[] =
983 "Filling of passwords when an account is explicitly selected by the user "
984 "rather than autofilling credentials on page load.";
985
Brett Wilsonecb80982017-07-12 20:34:51986const char kForceTextDirectionName[] = "Force text direction";
987const char kForceTextDirectionDescription[] =
988 "Explicitly force the per-character directionality of UI text to "
989 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
990 "direction of the character language.";
991const char kForceDirectionLtr[] = "Left-to-right";
992const char kForceDirectionRtl[] = "Right-to-left";
993
994const char kForceUiDirectionName[] = "Force UI direction";
995const char kForceUiDirectionDescription[] =
996 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
997 "mode, overriding the default direction of the UI language.";
998
999const char kFramebustingName[] =
1000 "Framebusting requires same-origin or a user gesture";
1001const char kFramebustingDescription[] =
1002 "Don't permit an iframe to navigate the top level browsing context unless "
1003 "they are same-origin or the iframe is processing a user gesture.";
1004
1005const char kGamepadExtensionsName[] = "Gamepad Extensions";
1006const char kGamepadExtensionsDescription[] =
Anna Offenwanger06dc6062018-04-12 07:56:221007 "Enables experimental extensions to the Gamepad APIs.";
Matt Reynolds043469f2018-05-01 22:56:581008const char kGamepadVibrationName[] = "Gamepad Vibration";
1009const char kGamepadVibrationDescription[] =
1010 "Enables haptic vibration effects on supported gamepads.";
Brett Wilsonecb80982017-07-12 20:34:511011
Brett Wilsonecb80982017-07-12 20:34:511012const char kGpuRasterizationMsaaSampleCountName[] =
1013 "GPU rasterization MSAA sample count.";
1014const char kGpuRasterizationMsaaSampleCountDescription[] =
1015 "Specify the number of MSAA samples for GPU rasterization.";
1016const char kGpuRasterizationMsaaSampleCountZero[] = "0";
1017const char kGpuRasterizationMsaaSampleCountTwo[] = "2";
1018const char kGpuRasterizationMsaaSampleCountFour[] = "4";
1019const char kGpuRasterizationMsaaSampleCountEight[] = "8";
1020const char kGpuRasterizationMsaaSampleCountSixteen[] = "16";
1021
1022const char kGpuRasterizationName[] = "GPU rasterization";
1023const char kGpuRasterizationDescription[] =
1024 "Use GPU to rasterize web content. Requires impl-side painting.";
Brett Wilson7b44537e2017-08-18 01:38:281025const char kForceGpuRasterization[] = "Force-enabled for all layers";
Brett Wilsonecb80982017-07-12 20:34:511026
1027const char kGoogleProfileInfoName[] = "Google profile name and icon";
1028const char kGoogleProfileInfoDescription[] =
1029 "Enables using Google information to populate the profile name and icon in "
1030 "the avatar menu.";
1031
Takumi Fujimotofb71e332018-03-31 14:04:081032const char kViewsCastDialogName[] = "Views Cast dialog";
1033const char kViewsCastDialogDescription[] =
Takumi Fujimoto541e5e22018-05-30 00:46:311034 "Replace the WebUI Cast dialog with a Views toolkit dialog. This requires "
Takumi Fujimoto28351acc2018-05-31 17:19:531035 "#views-browser-windows on Mac. This feature is activated if either this "
Robert Liao3ecf97c2018-06-05 01:24:541036 "flag or #upcoming-ui-features is enabled";
Takumi Fujimotofb71e332018-03-31 14:04:081037
Manu Cornet4a908de2018-04-09 04:32:271038const char kHideActiveAppsFromShelfName[] =
1039 "Hide running apps (that are not pinned) from the shelf";
1040const char kHideActiveAppsFromShelfDescription[] =
1041 "Save space in the shelf by hiding running apps (that are not pinned).";
Manu Cornete5f855b2018-03-13 03:35:251042
Brett Wilsonecb80982017-07-12 20:34:511043const char kHistoryRequiresUserGestureName[] =
1044 "New history entries require a user gesture.";
1045const char kHistoryRequiresUserGestureDescription[] =
1046 "Require a user gesture to add a history entry.";
1047const char kHyperlinkAuditingName[] = "Hyperlink auditing";
1048const char kHyperlinkAuditingDescription[] = "Sends hyperlink auditing pings.";
1049
Ryan Landay4242dbc22018-04-04 01:47:331050const char kHorizontalTabSwitcherAndroidName[] =
1051 "Enable horizontal tab switcher";
1052const char kHorizontalTabSwitcherAndroidDescription[] =
1053 "Changes the layout of the Android tab switcher so tabs scroll "
1054 "horizontally instead of vertically.";
1055
Brett Wilsonecb80982017-07-12 20:34:511056const char kHostedAppQuitNotificationName[] =
1057 "Quit notification for hosted apps";
1058const char kHostedAppQuitNotificationDescription[] =
1059 "Display a notification when quitting Chrome if hosted apps are currently "
1060 "running.";
1061
1062const char kHostedAppShimCreationName[] =
1063 "Creation of app shims for hosted apps on Mac";
1064const char kHostedAppShimCreationDescription[] =
1065 "Create app shims on Mac when creating a hosted app.";
1066
Ana-Cosmina Popescuda3bcbe2017-09-22 18:24:481067const char kHtmlBasedUsernameDetectorName[] = "HTML-based username detector";
1068const char kHtmlBasedUsernameDetectorDescription[] =
1069 "Use HTML-based username detector for the password manager.";
1070
Brett Wilsonecb80982017-07-12 20:34:511071const char kIconNtpName[] = "Large icons on the New Tab page";
1072const char kIconNtpDescription[] =
1073 "Enable the experimental New Tab page using large icons.";
1074
1075const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
1076const char kIgnoreGpuBlacklistDescription[] =
1077 "Overrides the built-in software rendering list and enables "
1078 "GPU-acceleration on unsupported system configurations.";
1079
Ryan Sturm8c3dbc92018-06-26 19:22:371080const char kIgnorePreviewsBlacklistName[] = "Ignore Previews Blocklist";
Thanh Le5f090efa52017-12-27 22:39:441081const char kIgnorePreviewsBlacklistDescription[] =
Ryan Sturm8c3dbc92018-06-26 19:22:371082 "Ignore decisions made by the PreviewsBlockList";
Thanh Le5f090efa52017-12-27 22:39:441083
Claudio Magni61c210922017-12-28 00:29:511084const char kImprovedLanguageSettingsName[] = "Improved Language Settings";
1085const char kImprovedLanguageSettingsDescription[] =
1086 "Set of changes for Language Settings. These changes are intended to fix "
1087 "the major bugs related to Language Settings.";
1088
Brett Wilsonecb80982017-07-12 20:34:511089const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
1090const char kInProductHelpDemoModeChoiceDescription[] =
1091 "Selects the In-Product Help demo mode.";
1092
1093const char kJavascriptHarmonyName[] = "Experimental JavaScript";
1094const char kJavascriptHarmonyDescription[] =
1095 "Enable web pages to use experimental JavaScript features.";
1096
1097const char kJavascriptHarmonyShippingName[] =
1098 "Latest stable JavaScript features";
1099const char kJavascriptHarmonyShippingDescription[] =
1100 "Some web pages use legacy or non-standard JavaScript extensions that may "
1101 "conflict with the latest JavaScript features. This flag allows disabling "
1102 "support of those features for compatibility with such pages.";
1103
gogeraldfd7675d2018-06-19 22:57:351104const char kJustInTimeServiceWorkerPaymentAppName[] =
1105 "Just-in-time service worker payment app";
1106const char kJustInTimeServiceWorkerPaymentAppDescription[] =
1107 "Allow crawling just-in-time service worker payment app when there is no "
1108 "installed service worker payment app for a payment request.";
1109
Yutaka Hiranof7f2f632017-09-06 10:40:081110const char kKeepAliveRendererForKeepaliveRequestsName[] =
1111 "Keep a renderer alive for keepalive fetch requests";
1112const char kKeepAliveRendererForKeepaliveRequestsDescription[] =
1113 "Keep a render process alive when the process has a pending fetch request "
1114 "with `keepalive' specified.";
1115
Joe Downing095fd6d2018-02-01 18:40:361116const char kKeyboardLockApiName[] = "Experimental keyboard lock API.";
1117const char kKeyboardLockApiDescription[] =
1118 "Enables websites to use the new keyboard{Lock|Unlock} API to intercept "
1119 "specific key events and have them routed directly to the webpage when in "
1120 "fullscreen mode. Implies #experimental-keyboard-lock-ui.";
1121
Brett Wilsonecb80982017-07-12 20:34:511122const char kLcdTextName[] = "LCD text antialiasing";
1123const char kLcdTextDescription[] =
1124 "If disabled, text is rendered with grayscale antialiasing instead of LCD "
1125 "(subpixel) when doing accelerated compositing.";
1126
Matt Giucac399982f2017-10-06 07:51:291127const char kLeftToRightUrlsName[] =
1128 "Render bidirectional URLs from left to right";
1129const char kLeftToRightUrlsDescription[] =
1130 "An experimental Bidi URL rendering algorithm where the URL components are "
1131 "always shown in order from left to right, regardless of any RTL "
1132 "characters. (The contents of each component are still rendered with the "
1133 "normal Bidi algorithm.)";
1134
Brett Wilsonecb80982017-07-12 20:34:511135const char kLoadMediaRouterComponentExtensionName[] =
1136 "Load Media Router Component Extension";
1137const char kLoadMediaRouterComponentExtensionDescription[] =
1138 "Loads the Media Router component extension at startup.";
1139
Mustafa Emre Acer137dc8b2018-08-29 20:38:131140const char kLookalikeUrlNavigationSuggestionsName[] =
1141 "Navigation suggestions for lookalike URLs";
1142const char kLookalikeUrlNavigationSuggestionsDescription[] =
1143 "Enable navigation suggestions for URLs that are visually similar to "
1144 "popular domains or to domains with a site engagement score.";
1145
Brett Wilsonecb80982017-07-12 20:34:511146const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
1147const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
Brett Wilsonecb80982017-07-12 20:34:511148
Lei Zhang2eca9082017-10-17 20:42:501149const char kMaterialDesignIncognitoNTPName[] = "Material Design Incognito NTP.";
1150const char kMaterialDesignIncognitoNTPDescription[] =
Brett Wilsonecb80982017-07-12 20:34:511151 "If enabled, the Incognito New Tab page uses the new material design with "
1152 "a better readable text.";
1153
spqchanb87755692018-04-05 00:46:091154const char kMediaRouterCastAllowAllIPsName[] =
1155 "Connect to Cast devices on all IP addresses";
1156const char kMediaRouterCastAllowAllIPsDescription[] =
1157 "Have the Media Router connect to Cast devices on all IP addresses, not "
Nick Harperd30507ca2018-08-16 20:24:311158 "just RFC1918/RFC4193 private addresses.";
spqchanb87755692018-04-05 00:46:091159
Brett Wilsonecb80982017-07-12 20:34:511160const char kMemoryCoordinatorName[] = "Memory coordinator";
1161const char kMemoryCoordinatorDescription[] =
1162 "Enable memory coordinator instead of memory pressure listeners.";
1163
1164const char kMessageCenterNewStyleNotificationName[] = "New style notification";
1165const char kMessageCenterNewStyleNotificationDescription[] =
1166 "Enables the experiment style of material-design notification";
1167
Brett Wilsonecb80982017-07-12 20:34:511168const char kMhtmlGeneratorOptionName[] = "MHTML Generation Option";
1169const char kMhtmlGeneratorOptionDescription[] =
1170 "Provides experimental options for MHTML file generator.";
1171const char kMhtmlSkipNostoreMain[] = "Skips no-store main frame.";
1172const char kMhtmlSkipNostoreAll[] = "Skips all no-store resources.";
1173
Brett Wilsonecb80982017-07-12 20:34:511174const char kNewAudioRenderingMixingStrategyName[] =
1175 "New audio rendering mixing strategy";
1176const char kNewAudioRenderingMixingStrategyDescription[] =
1177 "Use the new audio rendering mixing strategy.";
1178
1179const char kNewBookmarkAppsName[] = "The new bookmark app system";
1180const char kNewBookmarkAppsDescription[] =
1181 "Enables the new system for creating bookmark apps.";
1182
Vadym Doroshenkocd4ff782018-07-24 13:41:021183const char kNewPasswordFormParsingName[] =
1184 "New password form parsing for filling passwords";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241185const char kNewPasswordFormParsingDescription[] =
Vadym Doroshenkocd4ff782018-07-24 13:41:021186 "Replaces existing form parsing for filling in password manager with a new "
1187 "version, currently under development. WARNING: when enabled, Password "
1188 "Manager might stop working";
1189
1190const char kNewPasswordFormParsingForSavingName[] =
1191 "New password form parsing for saving passwords";
1192const char kNewPasswordFormParsingForSavingDescription[] =
1193 "Replaces existing form parsing for saving in password manager with a new "
1194 "version, currently under development. WARNING: when enabled, Password "
1195 "Manager might stop working";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241196
Brett Wilsonecb80982017-07-12 20:34:511197const char kNewRemotePlaybackPipelineName[] =
1198 "Enable the new remote playback pipeline.";
1199const char kNewRemotePlaybackPipelineDescription[] =
1200 "Enable the new pipeline for playing media element remotely via "
1201 "RemotePlayback API or native controls.";
CJ DiMeglio7b4a199f2017-11-30 01:26:501202const char kUseSurfaceLayerForVideoName[] =
1203 "Enable the use of SurfaceLayer objects for videos.";
1204const char kUseSurfaceLayerForVideoDescription[] =
1205 "Enable compositing onto a Surface instead of a VideoLayer "
1206 "for videos.";
Brett Wilsonecb80982017-07-12 20:34:511207
1208const char kNewUsbBackendName[] = "Enable new USB backend";
1209const char kNewUsbBackendDescription[] =
1210 "Enables the new experimental USB backend for Windows.";
vabr0215a8e2017-03-28 12:47:341211
Sonny Sasaka2d200432018-03-22 17:43:161212const char kNewblueName[] = "Newblue";
1213const char kNewblueDescription[] =
1214 "Enables the use of newblue Bluetooth daemon.";
1215
Peter Kasting63097912018-06-30 02:09:031216const char kNewTabButtonPosition[] = "New tab button position";
1217const char kNewTabButtonPositionDescription[] =
1218 "Controls placement of the new tab button within the tabstrip.";
1219const char kNewTabButtonPositionOppositeCaption[] = "Opposite caption buttons";
1220const char kNewTabButtonPositionLeading[] = "Leading";
1221const char kNewTabButtonPositionAfterTabs[] = "After tabs";
1222const char kNewTabButtonPositionTrailing[] = "Trailing";
1223
Egor Pasko6fed3822018-05-30 10:33:141224const char kNostatePrefetchName[] = "NoState Prefetch";
vabr0215a8e2017-03-28 12:47:341225const char kNostatePrefetchDescription[] =
Egor Pasko6fed3822018-05-30 10:33:141226 R"*(If enabled, pre-downloads resources to improve page load speed.)*";
vabr0215a8e2017-03-28 12:47:341227
Alex Newcomerd7b0cc42018-05-25 22:58:481228const char kNotificationIndicatorName[] = "Notification Indicators";
1229const char kNotificationIndicatorDescription[] =
1230 "Enable notification indicators, which appear on app icons when a "
1231 "notification is active. This will also enable notifications in context "
1232 "menus.";
1233
Brett Wilsonecb80982017-07-12 20:34:511234const char kNotificationsNativeFlagName[] = "Enable native notifications.";
1235const char kNotificationsNativeFlagDescription[] =
1236 "Enable support for using the native notification toasts and notification "
1237 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:341238
Valeriya Sinevich972ac122018-09-05 07:33:191239const char kUseMultiloginEndpointName[] = "Use Multilogin endpoint.";
1240const char kUseMultiloginEndpointDescription[] =
1241 "Use Gaia OAuth multilogin for identity consistency.";
1242
Zentaro Kavanaghbad511c2017-10-18 22:29:001243#if defined(OS_POSIX)
1244const char kNtlmV2EnabledName[] = "Enable NTLMv2 Authentication";
1245const char kNtlmV2EnabledDescription[] =
1246 "Enable NTLMv2 HTTP Authentication. This disables NTLMv1 support.";
1247#endif
1248
Ramya Nagarajane9f16b82018-05-03 01:05:341249const char kNtpBackgroundsName[] = "New Tab Page Background Selection";
1250const char kNtpBackgroundsDescription[] =
kristipark037abce12018-07-13 19:49:301251 "Allow selection of a custom background image on the New Tab Page. "
1252 "Implicitly enables 'ntp-ui-md'.";
Ramya Nagarajane9f16b82018-05-03 01:05:341253
kristipark037abce12018-07-13 19:49:301254const char kNtpCustomLinksName[] = "New Tab Page Custom Links";
1255const char kNtpCustomLinksDescription[] =
1256 "Enable customization of shortcuts on the New Tab Page and replaces Most "
1257 "Visited. Implicitly enables 'ntp-ui-md' and 'ntp-icons'.";
1258
1259const char kNtpIconsName[] = "New Tab Page Material Design Icons";
Ramya Nagarajane9f16b82018-05-03 01:05:341260const char kNtpIconsDescription[] =
kristipark037abce12018-07-13 19:49:301261 "Show Material Design icons on the New Tab Page, instead of Most Visited "
1262 "tiles. Implicitly enables 'ntp-ui-md'.";
Ramya Nagarajane9f16b82018-05-03 01:05:341263
Kyle Milkad1420ce2018-10-05 18:33:411264const char kNtpUIMdName[] = "New Tab Page Material Design UI";
1265const char kNtpUIMdDescription[] =
1266 "Updates the New Tab Page with Material Design elements.";
1267
Brett Wilsonecb80982017-07-12 20:34:511268const char kNumRasterThreadsName[] = "Number of raster threads";
1269const char kNumRasterThreadsDescription[] =
1270 "Specify the number of raster threads.";
1271const char kNumRasterThreadsOne[] = "1";
1272const char kNumRasterThreadsTwo[] = "2";
1273const char kNumRasterThreadsThree[] = "3";
1274const char kNumRasterThreadsFour[] = "4";
1275
1276const char kOfferStoreUnmaskedWalletCardsName[] =
1277 "Google Payments card saving checkbox";
1278const char kOfferStoreUnmaskedWalletCardsDescription[] =
1279 "Show the checkbox to offer local saving of a credit card downloaded from "
1280 "the server.";
1281
1282const char kOfflineAutoReloadName[] = "Offline Auto-Reload Mode";
1283const char kOfflineAutoReloadDescription[] =
1284 "Pages that fail to load while the browser is offline will be "
1285 "auto-reloaded when the browser is online again.";
1286
1287const char kOfflineAutoReloadVisibleOnlyName[] =
1288 "Only Auto-Reload Visible Tabs";
1289const char kOfflineAutoReloadVisibleOnlyDescription[] =
1290 "Pages that fail to load while the browser is offline will only be "
1291 "auto-reloaded if their tab is visible.";
1292
Brett Wilsonecb80982017-07-12 20:34:511293const char kOmniboxDisplayTitleForCurrentUrlName[] =
1294 "Include title for the current URL in the omnibox";
1295const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
1296 "In the event that the omnibox provides suggestions on-focus, the URL of "
1297 "the current page is provided as the first suggestion without a title. "
1298 "Enabling this flag causes the title to be displayed.";
1299
Benoit Lizeab08362c2017-07-19 14:50:541300const char kOmniboxSpareRendererName[] =
1301 "Start spare renderer on omnibox focus";
1302const char kOmniboxSpareRendererDescription[] =
1303 "When the omnibox is focused, start an empty spare renderer. This can "
1304 "speed up the load of the navigation from the omnibox.";
1305
Tommy C. Li8875a442017-08-23 00:10:591306const char kOmniboxUIElideSuggestionUrlAfterHostName[] =
1307 "Omnibox UI Elide Suggestion URL After Host";
1308const char kOmniboxUIElideSuggestionUrlAfterHostDescription[] =
1309 "Elides the path, query, and ref of suggested URLs in the Omnibox "
1310 "dropdown.";
1311
Tommy C. Lie4194b732018-09-28 22:21:511312const char kOmniboxUIHideSteadyStateUrlSchemeName[] =
1313 "Omnibox UI Hide Steady-State URL Scheme";
1314const char kOmniboxUIHideSteadyStateUrlSchemeDescription[] =
1315 "In the omnibox, hide the scheme from steady state displayed URLs. It is "
Tommy C. Libef94ee02018-10-17 19:56:361316 "restored during editing.";
Tommy C. Lie4194b732018-09-28 22:21:511317
1318const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsName[] =
1319 "Omnibox UI Hide Steady-State URL Trivial Subdomains";
1320const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsDescription[] =
1321 "In the omnibox, hide trivial subdomains from steady state displayed URLs. "
Tommy C. Libef94ee02018-10-17 19:56:361322 "Hidden portions are restored during editing.";
1323
1324const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefName[] =
1325 "Omnibox UI Hide Steady-State URL Path, Query, and Ref";
1326const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefDescription[] =
1327 "In the omnibox, hide the path, query and ref from steady state displayed "
1328 "URLs. Hidden portions are restored during editing.";
Tommy C. Lid79d4402017-12-22 22:49:121329
Tommy C. Licc5e53022018-07-27 16:30:351330const char kOmniboxUIJogTextfieldOnPopupName[] =
1331 "Omnibox UI Jog Textfield on Popup";
1332const char kOmniboxUIJogTextfieldOnPopupDescription[] =
1333 "In the Omnibox, jog the textfield to align with the dropdown suggestions "
1334 "text when the popup is opened. When this feature is disabled, the "
1335 "textfield is always aligned with the suggestions text, and a separator "
1336 "fills the gap. If Material Refresh is disabled, this has no effect.";
1337
Brett Wilsonecb80982017-07-12 20:34:511338const char kOmniboxUIMaxAutocompleteMatchesName[] =
1339 "Omnibox UI Max Autocomplete Matches";
1340
1341const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
1342 "Changes the maximum number of autocomplete matches displayed in the "
1343 "Omnibox UI.";
1344
Justin Donnelly65c9e8b2017-10-01 05:15:011345const char kOmniboxUIShowSuggestionFaviconsName[] =
1346 "Omnibox UI Show Suggestion Favicons";
1347const char kOmniboxUIShowSuggestionFaviconsDescription[] =
1348 "Shows favicons instead of generic vector icons for URL suggestions in the "
1349 "Omnibox dropdown.";
1350
1351const char kOmniboxUISwapTitleAndUrlName[] = "Omnibox UI Swap Title and URL";
1352const char kOmniboxUISwapTitleAndUrlDescription[] =
1353 "In the omnibox dropdown, shows titles before URLs when both are "
1354 "available.";
1355
Troy Hildebrandtb32637ca2018-02-21 23:25:091356const char kOmniboxVoiceSearchAlwaysVisibleName[] =
1357 "Omnibox Voice Search Always Visible";
1358const char kOmniboxVoiceSearchAlwaysVisibleDescription[] =
1359 "Always displays voice search icon in focused omnibox as long as voice "
1360 "search is possible";
1361
Adrienne Walkerc87477e2018-06-06 22:28:211362const char kOopRasterizationName[] = "Out of process rasterization";
1363const char kOopRasterizationDescription[] =
1364 "Perform Ganesh raster in the GPU Process instead of the renderer. "
1365 "Must also enable GPU rasterization";
1366
Brett Wilsonecb80982017-07-12 20:34:511367const char kOriginTrialsName[] = "Origin Trials";
1368const char kOriginTrialsDescription[] =
1369 "Enables origin trials for controlling access to feature/API experiments.";
1370
Becca Hughes930d8cd2017-10-02 11:09:121371const char kOverflowIconsForMediaControlsName[] =
1372 "Icons on Media Controls Overflow Menu";
1373const char kOverflowIconsForMediaControlsDescription[] =
1374 "Displays icons on the overflow menu of the native media controls";
1375
Brett Wilsonecb80982017-07-12 20:34:511376const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
1377const char kOverlayScrollbarsDescription[] =
1378 "Enable the experimental overlay scrollbars implementation. You must also "
1379 "enable threaded compositing to have the scrollbars animate.";
1380
chaopenge8aa016b2017-08-24 15:20:191381const char kOverlayScrollbarsFlashAfterAnyScrollUpdateName[] =
1382 "Flash Overlay Scrollbars After Any Scroll Update";
1383const char kOverlayScrollbarsFlashAfterAnyScrollUpdateDescription[] =
1384 "Flash Overlay Scrollbars After any scroll update happends in page. You"
1385 " must also enable Overlay Scrollbars.";
1386
chaopeng343678022017-08-24 18:45:001387const char kOverlayScrollbarsFlashWhenMouseEnterName[] =
1388 "Flash Overlay Scrollbars When Mouse Enter";
1389const char kOverlayScrollbarsFlashWhenMouseEnterDescription[] =
1390 "Flash Overlay Scrollbars When Mouse Enter a scrollable area. You must also"
1391 " enable Overlay Scrollbars.";
1392
Daniele Castagna74ddb9c2018-06-21 22:59:021393const char kOverlayStrategiesName[] = "Select HW overlay strategies";
1394const char kOverlayStrategiesDescription[] =
1395 "Select strategies used to promote quads to HW overlays.";
1396const char kOverlayStrategiesDefault[] = "Default";
1397const char kOverlayStrategiesNone[] = "None";
1398const char kOverlayStrategiesUnoccludedFullscreen[] =
1399 "Unoccluded fullscreen buffers (single-fullscreen)";
1400const char kOverlayStrategiesUnoccluded[] =
1401 "Unoccluded buffers (single-fullscreen,single-on-top)";
1402const char kOverlayStrategiesOccludedAndUnoccluded[] =
1403 "Occluded and unoccluded buffers "
1404 "(single-fullscreen,single-on-top,underlay)";
1405
Claudio Magni81326f92017-09-01 05:21:181406const char kUseNewAcceptLanguageHeaderName[] = "Use new Accept-Language header";
1407const char kUseNewAcceptLanguageHeaderDescription[] =
1408 "Adds the base language code after other corresponding language+region "
1409 "codes. This ensures that users receive content in their preferred "
1410 "language.";
1411
Brett Wilsonecb80982017-07-12 20:34:511412const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
1413const char kOverscrollHistoryNavigationDescription[] =
Mohsen Izadi88b392a2018-02-15 06:57:481414 "History navigation in response to horizontal overscroll.";
Brett Wilsonecb80982017-07-12 20:34:511415
1416const char kOverscrollStartThresholdName[] = "Overscroll start threshold";
1417const char kOverscrollStartThresholdDescription[] =
1418 "Changes overscroll start threshold relative to the default value.";
1419const char kOverscrollStartThreshold133Percent[] = "133%";
1420const char kOverscrollStartThreshold166Percent[] = "166%";
1421const char kOverscrollStartThreshold200Percent[] = "200%";
1422
chaopenge2b6e5f2018-05-08 16:40:451423const char kTouchpadOverscrollHistoryNavigationName[] =
1424 "Overscroll history navigation on Touchpad";
1425const char kTouchpadOverscrollHistoryNavigationDescription[] =
1426 "Allows swipe left/right from touchpad change browser navigation.";
1427
Xing Liu5400a002017-09-15 21:48:291428const char kParallelDownloadingName[] = "Parallel downloading";
1429const char kParallelDownloadingDescription[] =
Yannic Bonenbergera32f9902017-11-20 18:47:061430 "Enable parallel downloading to accelerate download speed.";
Xing Liu5400a002017-09-15 21:48:291431
Brett Wilsonecb80982017-07-12 20:34:511432const char kPassiveEventListenerDefaultName[] =
1433 "Passive Event Listener Override";
1434const char kPassiveEventListenerDefaultDescription[] =
1435 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
1436 "haven't requested otherwise) to be treated as passive. This will break "
1437 "touch/wheel behavior on some websites but is useful for demonstrating the "
1438 "potential performance benefits of adopting passive event listeners.";
1439const char kPassiveEventListenerTrue[] = "True (when unspecified)";
1440const char kPassiveEventListenerForceAllTrue[] = "Force All True";
1441
1442const char kPassiveEventListenersDueToFlingName[] =
1443 "Touch Event Listeners Passive Default During Fling";
1444const char kPassiveEventListenersDueToFlingDescription[] =
1445 "Forces touchstart, and first touchmove per scroll event listeners during "
1446 "fling to be treated as passive.";
1447
1448const char kPassiveDocumentEventListenersName[] =
1449 "Document Level Event Listeners Passive Default";
1450const char kPassiveDocumentEventListenersDescription[] =
1451 "Forces touchstart, and touchmove event listeners on document level "
1452 "targets (which haven't requested otherwise) to be treated as passive.";
1453
Sahel Sharify7400e882018-08-13 17:13:211454const char kPassiveDocumentWheelEventListenersName[] =
1455 "Document Level Wheel Event Listeners Passive Default";
1456const char kPassiveDocumentWheelEventListenersDescription[] =
1457 "Forces wheel, and mousewheel event listeners on document level targets "
1458 "(which haven't requested otherwise) to be treated as passive.";
1459
Vaclav Brozekd8a3f542017-11-16 14:21:131460const char kPasswordImportName[] = "Password import";
1461const char kPasswordImportDescription[] =
1462 "Import functionality in password settings.";
Brett Wilsonecb80982017-07-12 20:34:511463
Friedrich Horschig03c91982018-01-25 14:21:281464const char kPasswordSearchMobileName[] = "Password search";
1465const char kPasswordSearchMobileDescription[] =
1466 "Search functionality in password settings.";
1467
Friedrich Horschige6c27742018-04-23 17:13:411468const char kPasswordsKeyboardAccessoryName[] =
1469 "Add password-related functions to keyboard accessory";
1470const char kPasswordsKeyboardAccessoryDescription[] =
1471 "Adds password generation button and toggle for the passwords bottom sheet "
1472 "to the keyboard accessory. Replaces password generation popups.";
1473
Christos Froussios6e060c42018-07-31 16:17:191474const char kPasswordsMigrateLinuxToLoginDBName[] =
1475 "Migrate passwords to \"Login Data\"";
1476const char kPasswordsMigrateLinuxToLoginDBDescription[] =
Christos Froussiose34c38a2018-09-04 14:27:591477 "Performs a one-off irreversible migration of passwords from the "
Christos Froussios6e060c42018-07-31 16:17:191478 "gnome-keyring or kwallet into the profile directory.";
1479
Tom Sepez92a2cd242018-03-13 19:23:091480const char kPdfIsolationName[] = "PDF Isolation";
1481const char kPdfIsolationDescription[] =
1482 "Render PDF files from different origins in different plugin processes.";
1483
Rouslan Solomakhinded840112018-11-02 13:27:101484const char kPerMethodCanMakePaymentQuotaName[] =
1485 "Per-method canMakePayment() quota.";
1486const char kPerMethodCanMakePaymentQuotaDescription[] =
1487 "Allow calling canMakePayment() for different payment methods, as long as "
1488 "method-specific parameters remain unchanged.";
1489
Brett Wilsonecb80982017-07-12 20:34:511490const char kPinchScaleName[] = "Pinch scale";
1491const char kPinchScaleDescription[] =
1492 "Enables experimental support for scale using pinch.";
1493
Doug Arnett620ff542018-02-06 17:54:221494const char kPreviewsAllowedName[] = "Previews Allowed";
1495const char kPreviewsAllowedDescription[] =
1496 "Allows previews to be shown subject to specific preview types being "
1497 "enabled and the client experiencing specific triggering conditions. "
1498 "May be used as a kill-switch to turn off all potential preview types.";
1499
Brett Wilsonecb80982017-07-12 20:34:511500const char kPrintPdfAsImageName[] = "Print Pdf as Image";
1501const char kPrintPdfAsImageDescription[] =
1502 "If enabled, an option to print PDF files as images will be available in "
1503 "print preview.";
1504
1505const char kPrintPreviewRegisterPromosName[] =
1506 "Print Preview Registration Promos";
1507const char kPrintPreviewRegisterPromosDescription[] =
1508 "Enable registering unregistered cloud printers from print preview.";
1509
1510const char kProtectSyncCredentialName[] = "Autofill sync credential";
1511const char kProtectSyncCredentialDescription[] =
1512 "How the password manager handles autofill for the sync credential.";
1513
1514const char kProtectSyncCredentialOnReauthName[] =
1515 "Autofill sync credential only for transactional reauth pages";
1516const char kProtectSyncCredentialOnReauthDescription[] =
1517 "How the password manager handles autofill for the sync credential only "
1518 "for transactional reauth pages.";
1519
Mohsen Izadi93faac12017-07-29 04:45:151520const char kPullToRefreshName[] = "Pull-to-refresh gesture";
1521const char kPullToRefreshDescription[] =
1522 "Pull-to-refresh gesture in response to vertical overscroll.";
Mohsen Izadi8c59ba52018-04-12 18:52:011523const char kPullToRefreshEnabledTouchscreen[] = "Enabled for touchscreen only";
Mohsen Izadi93faac12017-07-29 04:45:151524
Troy Hildebrandt7228ad12018-02-23 21:18:241525const char kQueryInOmniboxName[] = "Query in Omnibox";
1526const char kQueryInOmniboxDescription[] =
1527 "Only display query terms in the omnibox when viewing a search results "
1528 "page.";
1529
Brett Wilsonecb80982017-07-12 20:34:511530const char kQuicName[] = "Experimental QUIC protocol";
1531const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1532
Emily Starke8878d52018-05-11 21:27:261533const char kRecurrentInterstitialName[] =
1534 "Show a message when the same SSL error recurs";
1535const char kRecurrentInterstitialDescription[] =
1536 "Enable a special message on the SSL certificate error page when the same "
1537 "SSL error occurs repeatedly.";
1538
Brett Wilsonecb80982017-07-12 20:34:511539const char kReducedReferrerGranularityName[] =
1540 "Reduce default 'referer' header granularity.";
1541const char kReducedReferrerGranularityDescription[] =
1542 "If a page hasn't set an explicit referrer policy, setting this flag will "
1543 "reduce the amount of information in the 'referer' header for cross-origin "
1544 "requests.";
1545
Lei Zhang0ca70ea2018-09-07 17:51:011546const char kRegionalLocalesAsDisplayUIName[] =
Claudio Magnie0a80bb2018-01-31 02:52:581547 "Allow regional locales as display UI";
Lei Zhang0ca70ea2018-09-07 17:51:011548const char kRegionalLocalesAsDisplayUIDescription[] =
Claudio Magnie0a80bb2018-01-31 02:52:581549 "This flag allows regional locales to be selected as display UI by the "
1550 "user in Language Settings. The actual locale of the system is derived "
1551 "from the user selection based on some simple fallback logic.";
1552
Christian Dullweber1af31e62018-02-22 11:49:481553const char kRemoveNavigationHistoryName[] =
Christian Dullweberb13ffda2018-02-23 11:42:141554 "Remove navigation entry on history deletion";
Christian Dullweber1af31e62018-02-22 11:49:481555const char kRemoveNavigationHistoryDescription[] =
1556 "Remove a navigation entry when the corresponding history entry has been "
1557 "deleted.";
1558
Christian Dullweber3cc579a22018-09-11 10:54:441559const char kRewriteLevelDBOnDeletionName[] =
1560 "Rewrite LevelDB instances after full deletions";
1561const char kRewriteLevelDBOnDeletionDescription[] =
1562 "Rewrite LevelDB instances to remove traces of deleted data from disk.";
1563
Yutaka Hirano4c0f2f5d452017-11-17 04:24:351564const char kRendererSideResourceSchedulerName[] =
1565 "Renderer side ResourceScheduler";
1566const char kRendererSideResourceSchedulerDescription[] =
1567 "Migrate some ResourceScheduler functionalities to renderer";
1568
Brett Wilsonecb80982017-07-12 20:34:511569const char kRequestTabletSiteName[] =
1570 "Request tablet site option in the settings menu";
1571const char kRequestTabletSiteDescription[] =
1572 "Allows the user to request tablet site. Web content is often optimized "
1573 "for tablet devices. When this option is selected the user agent string is "
1574 "changed to indicate a tablet device. Web content optimized for tablets is "
1575 "received there after for the current tab.";
1576
1577const char kResetAppListInstallStateName[] =
1578 "Reset the App Launcher install state on every restart.";
1579const char kResetAppListInstallStateDescription[] =
1580 "Reset the App Launcher install state on every restart. While this flag is "
1581 "set, Chrome will forget the launcher has been installed each time it "
1582 "starts. This is used for testing the App Launcher install flow.";
1583
Kinuko Yasuda33955082018-06-19 10:14:591584const char kResourceLoadSchedulerName[] = "Enable resource load throttling";
Brett Wilsonecb80982017-07-12 20:34:511585const char kResourceLoadSchedulerDescription[] =
Kinuko Yasuda33955082018-06-19 10:14:591586 "Uses the resource load scheduler in blink to throttle resource load "
1587 "requests.";
Brett Wilsonecb80982017-07-12 20:34:511588
Brett Wilsonecb80982017-07-12 20:34:511589const char kSafeSearchUrlReportingName[] = "SafeSearch URLs reporting.";
1590const char kSafeSearchUrlReportingDescription[] =
1591 "If enabled, inappropriate URLs can be reported back to SafeSearch.";
1592
Alexei Filippov98772752018-01-27 08:26:521593const char kSamplingHeapProfilerName[] = "Native memory sampling profiler.";
1594const char kSamplingHeapProfilerDescription[] =
1595 "Enables native memory sampling profiler with specified rate in KiB. "
1596 "If sampling rate is not provided the default value of 128 KiB is used.";
1597
Brett Wilsonecb80982017-07-12 20:34:511598const char kSaveasMenuLabelExperimentName[] =
1599 "Switch 'Save as' menu labels to 'Download'";
1600const char kSaveasMenuLabelExperimentDescription[] =
1601 "Enables an experiment to switch menu labels that use 'Save as...' to "
1602 "'Download'.";
1603
1604const char kSavePageAsMhtmlName[] = "Save Page as MHTML";
1605const char kSavePageAsMhtmlDescription[] =
1606 "Enables saving pages as MHTML: a single text file containing HTML and all "
1607 "sub-resources.";
1608
Nate Chapin9638e7102017-09-20 22:11:011609const char kSavePreviousDocumentResourcesName[] =
1610 "Save Previous Document Resources";
1611const char kSavePreviousDocumentResourcesDescription[] =
1612 "Saves an old document's cached resources until the specified point in the "
1613 "next document's lifecycle.";
1614const char kSavePreviousDocumentResourcesNever[] =
1615 "Don't explicitly save resources";
1616const char kSavePreviousDocumentResourcesUntilOnDOMContentLoaded[] =
1617 "Save resources until onDOMContentLoaded completes";
1618const char kSavePreviousDocumentResourcesUntilOnLoad[] =
1619 "Save resources until onload completes";
1620
Jeffrey Cohene49cc59c2018-10-23 16:27:281621const char kSendTabToSelfName[] = "Send tab to self";
1622const char kSendTabToSelfDescription[] =
1623 "Allows users to push tabs from Android devices to other synced "
1624 "devices, in order to easily transition those tabs to the new device ";
1625
gogeraldd5061b592017-09-06 23:39:551626const char kServiceWorkerPaymentAppsName[] = "Service Worker payment apps";
1627const char kServiceWorkerPaymentAppsDescription[] =
1628 "Enable Service Worker applications to integrate as payment apps";
1629
momohattfc352292018-08-29 05:12:361630const char kServiceWorkerImportedScriptUpdateCheckName[] =
1631 "Enable update check for service worker importScripts() resources";
1632const char kServiceWorkerImportedScriptUpdateCheckDescription[] =
1633 "Extend byte-for-byte update check for scripts that are imported by the "
1634 "service worker script via importScripts().";
1635
Lei Zhang0ca70ea2018-09-07 17:51:011636const char kServiceWorkerServicificationName[] = "Servicified service workers";
1637const char kServiceWorkerServicificationDescription[] =
Makoto Shimazu22078cc2018-02-21 03:01:441638 "Enable the servicified service workers. A servicified service worker can "
1639 "have direct connection from its clients, so that fetch events can be "
1640 "dispatched through the connection without hopping to the browser process.";
Makoto Shimazud9f333c2017-08-08 07:23:171641
Azeem Arshad3b1ef73122018-08-30 02:04:151642const char kServiceWorkerLongRunningMessageName[] =
1643 "Service worker long running message dispatch.";
1644const char kServiceWorkerLongRunningMessageDescription[] =
1645 "Enables long running message dispatch method for service workers. "
1646 "Messages sent with this method do not timeout, allowing the service "
1647 "worker to run indefinitely.";
1648
Brett Wilsonecb80982017-07-12 20:34:511649const char kSettingsWindowName[] = "Show settings in a window";
1650const char kSettingsWindowDescription[] =
1651 "Settings will be shown in a dedicated window instead of as a browser tab.";
1652
Manu Cornetd7ef7c52018-05-01 22:08:231653const char kShelfHoverPreviewsName[] =
1654 "Show previews of running apps when hovering over the shelf.";
1655const char kShelfHoverPreviewsDescription[] =
1656 "Shows previews of the open windows for a given running app when hovering "
1657 "over the shelf.";
1658
Naoki Fukino008a0022018-05-23 18:33:001659const char kShowAndroidFilesInFilesAppName[] =
1660 "Show Android files in Files app";
1661const char kShowAndroidFilesInFilesAppDescription[] =
1662 "Show Android files in Files app if Android is enabled on the device.";
1663
Brett Wilsonecb80982017-07-12 20:34:511664const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
1665const char kShowAutofillSignaturesDescription[] =
Maxim Kolosovskiye66f8cb2018-03-23 10:25:381666 "Annotates web forms with Autofill signatures as HTML attributes. Also "
1667 "marks password fields suitable for password generation.";
Brett Wilsonecb80982017-07-12 20:34:511668
1669const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
1670const char kShowAutofillTypePredictionsDescription[] =
1671 "Annotates web forms with Autofill field type predictions as placeholder "
1672 "text.";
1673
1674const char kShowOverdrawFeedbackName[] = "Show overdraw feedback";
1675const char kShowOverdrawFeedbackDescription[] =
1676 "Visualize overdraw by color-coding elements based on if they have other "
1677 "elements drawn underneath.";
1678
Carlos IL89128732018-04-03 17:00:251679const char kSupervisedUserCommittedInterstitialsName[] =
1680 "Enable Supervised User Committed Interstitials";
1681const char kSupervisedUserCommittedInterstitialsDescription[] =
1682 "Use committed error pages instead of transient navigation entries for "
1683 "supervised user interstitials";
1684
yiyixbdfa9a0b2017-10-23 22:21:471685const char kEnableDrawOcclusionName[] = "Enable draw occlusion";
1686const char kEnableDrawOcclusionDescription[] =
1687 "Enable the system to use draw occlusion to skip draw quads when they are "
1688 "not shown on the screen.";
1689
Brett Wilsonecb80982017-07-12 20:34:511690const char kShowSavedCopyName[] = "Show Saved Copy Button";
1691const char kShowSavedCopyDescription[] =
1692 "When a page fails to load, if a stale copy of the page exists in the "
1693 "browser cache, a button will be presented to allow the user to load that "
1694 "stale copy. The primary enabling choice puts the button in the most "
1695 "salient position on the error page; the secondary enabling choice puts it "
1696 "secondary to the reload button.";
1697const char kEnableShowSavedCopyPrimary[] = "Enable: Primary";
1698const char kEnableShowSavedCopySecondary[] = "Enable: Secondary";
1699const char kDisableShowSavedCopy[] = "Disable";
1700
Brett Wilsonecb80982017-07-12 20:34:511701const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1702const char kSilentDebuggerExtensionApiDescription[] =
1703 "Do not show the infobar when an extension attaches to a page via "
1704 "chrome.debugger API. This is required to debug extension background "
1705 "pages.";
1706
Tsuyoshi Horo53895ba92018-03-14 04:06:481707const char kSignedHTTPExchangeName[] = "Signed HTTP Exchange";
1708const char kSignedHTTPExchangeDescription[] =
1709 "Enables Origin-Signed HTTP Exchanges support which is still in "
1710 "development. Warning: Enabling this may pose a security risk.";
1711
Brett Wilsonecb80982017-07-12 20:34:511712const char kSimpleCacheBackendName[] = "Simple Cache for HTTP";
1713const char kSimpleCacheBackendDescription[] =
1714 "The Simple Cache for HTTP is a new cache. It relies on the filesystem for "
1715 "disk space allocation.";
1716
Christopher Thompson75ff845d2018-02-01 20:12:461717const char kSimplifyHttpsIndicatorName[] = "Simplify HTTPS indicator UI";
1718const char kSimplifyHttpsIndicatorDescription[] =
1719 "Change the UI treatment for HTTPS pages.";
1720
Brett Wilsonecb80982017-07-12 20:34:511721const char kSingleClickAutofillName[] = "Single-click autofill";
1722const char kSingleClickAutofillDescription[] =
1723 "Make autofill suggestions on initial mouse click on a form element.";
1724
Bret Sepulveda4f891da2018-07-16 19:10:301725const char kSingleTabMode[] = "Single-tab mode";
1726const char kSingleTabModeDescription[] =
1727 "Windows with a single tab receive a special, minimal visual treatment.";
1728
Lukasz Anforowicz42840422018-11-05 21:49:221729#if defined(OS_ANDROID)
Nick Carter855bc492018-03-10 00:44:571730const char kStrictSiteIsolationName[] = "Strict site isolation";
1731const char kStrictSiteIsolationDescription[] =
Charlie Reisf44fe292018-08-31 18:38:471732 "Security mode that enables site isolation for all sites (SitePerProcess). "
1733 "In this mode, each renderer process will contain pages from at most one "
Lukasz Anforowicz42840422018-11-05 21:49:221734 "site, using out-of-process iframes when needed. "
1735 "Check chrome://process-internals to see the current isolation mode. "
Charlie Reisf44fe292018-08-31 18:38:471736 "Setting this flag to 'Enabled' turns on site isolation regardless of the "
1737 "default. Here, 'Disabled' is a legacy value that actually means "
1738 "'Default,' in which case site isolation may be already enabled based on "
1739 "platform, enterprise policy, or field trial. See also "
Charlie Reis30e39032018-09-04 18:58:181740 "#site-isolation-trial-opt-out for how to disable site isolation for "
Charlie Reisf44fe292018-08-31 18:38:471741 "testing.";
Lukasz Anforowicz42840422018-11-05 21:49:221742#endif
Nick Carter855bc492018-03-10 00:44:571743
Lukasz Anforowicz738a88d2018-11-05 19:19:341744const char kSiteIsolationOptOutName[] = "Disable site isolation";
1745const char kSiteIsolationOptOutDescription[] =
1746 "Disables site isolation "
Nick Carter855bc492018-03-10 00:44:571747 "(SitePerProcess, IsolateOrigins, etc). Intended for diagnosing bugs that "
1748 "may be due to out-of-process iframes. Opt-out has no effect if site "
Lukasz Anforowicz42840422018-11-05 21:49:221749 "isolation is force-enabled using a command line switch or using an "
1750 "enterprise policy. "
1751 "Caution: this disables important mitigations for the Spectre CPU "
Nick Carter855bc492018-03-10 00:44:571752 "vulnerability affecting most computers.";
Lukasz Anforowicz738a88d2018-11-05 19:19:341753const char kSiteIsolationOptOutChoiceDefault[] = "Default";
1754const char kSiteIsolationOptOutChoiceOptOut[] = "Disabled (not recommended)";
Brett Wilsonecb80982017-07-12 20:34:511755
Pattideade7972018-04-27 02:59:401756const char kSiteSettings[] = "Site settings";
Brett Wilsonecb80982017-07-12 20:34:511757const char kSiteSettingsDescription[] =
Pattideade7972018-04-27 02:59:401758 "Add the All Sites list to Site Settings.";
Brett Wilsonecb80982017-07-12 20:34:511759
Brett Wilsonecb80982017-07-12 20:34:511760const char kSmoothScrollingName[] = "Smooth Scrolling";
1761const char kSmoothScrollingDescription[] =
1762 "Animate smoothly when scrolling page content.";
1763
1764const char kSoftwareRasterizerName[] = "3D software rasterizer";
1765const char kSoftwareRasterizerDescription[] =
1766 "Fall back to a 3D software rasterizer when the GPU cannot be used.";
1767
Wei-Yin Chen (陳威尹)deff0802018-01-19 06:29:201768const char kSoleIntegrationName[] = "Sole integration";
1769const char kSoleIntegrationDescription[] =
1770 "Enable Sole integration for browser customization. You must restart "
1771 "the browser twice for changes to take effect.";
1772
Tommy Steimel77704be2017-08-28 22:14:401773const char kSoundContentSettingName[] = "Sound content setting";
1774const char kSoundContentSettingDescription[] =
1775 "Enable site-wide muting in content settings and tab strip context menu.";
1776
Justin Donnelly4e448cb2017-07-07 21:32:131777const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
1778 "Enable speculative start of a service worker when a search is predicted.";
Justin Donnelly4e448cb2017-07-07 21:32:131779const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
1780 "If enabled, when the user enters text in the omnibox that looks like a "
1781 "a query, any service worker associated with the search engine the query "
1782 "will be sent to is started early.";
1783
Brett Wilsonecb80982017-07-12 20:34:511784const char kSpellingFeedbackFieldTrialName[] = "Spelling Feedback Field Trial";
1785const char kSpellingFeedbackFieldTrialDescription[] =
1786 "Enable the field trial for sending user feedback to spelling service.";
horo201d49492017-05-19 05:31:401787
Carlos ILe5fa0a12018-08-03 16:08:321788const char kSSLCommittedInterstitialsName[] = "Committed Interstitials";
1789const char kSSLCommittedInterstitialsDescription[] =
1790 "Use committed error pages instead of transient navigation entries "
1791 "for SSL interstitial error pages (i.e. certificate errors).";
1792
Shubhie Panickerfaf082ed2018-01-03 04:49:151793const char kStopInBackgroundName[] = "Stop in background";
1794const char kStopInBackgroundDescription[] =
1795 "Stop scheduler task queues, in the background, "
Shubhie Panicker56c99a22018-03-21 00:22:281796 " after a grace period.";
Shubhie Panickerfaf082ed2018-01-03 04:49:151797
Shubhie Panicker56c99a22018-03-21 00:22:281798const char kStopNonTimersInBackgroundName[] =
1799 "Stop non-timer task queues background";
1800const char kStopNonTimersInBackgroundDescription[] =
1801 "Stop non-timer task queues, in the background, "
1802 "after a grace period.";
1803
Brett Wilsonecb80982017-07-12 20:34:511804const char kSuggestionsWithSubStringMatchName[] =
1805 "Substring matching for Autofill suggestions";
1806const char kSuggestionsWithSubStringMatchDescription[] =
1807 "Match Autofill suggestions based on substrings (token prefixes) rather "
1808 "than just prefixes.";
vabr0215a8e2017-03-28 12:47:341809
Marc Treibf65fb002018-08-03 11:17:161810const char kSyncStandaloneTransportName[] = "Allow Sync standalone transport";
1811const char kSyncStandaloneTransportDescription[] =
1812 "If enabled, allows Chrome Sync to start in standalone transport mode. In "
1813 "this mode, the Sync machinery can start without user opt-in, but only a "
1814 "subset of data types are supported.";
1815
Marc Treib4bd95e72018-08-30 06:30:581816const char kSyncSupportSecondaryAccountName[] =
1817 "Support secondary accounts for Sync standalone transport";
1818const char kSyncSupportSecondaryAccountDescription[] =
1819 "If enabled, allows Chrome Sync to start in standalone transport mode for "
1820 "a signed-in account that has not been chosen as Chrome's primary account. "
1821 "This only has an effect if sync-standalone-transport is also enabled.";
1822
Jan Krcal2ff23f7c2018-09-04 16:16:131823const char kSyncUSSAutofillProfileName[] = "Enable USS for autofill profile";
1824const char kSyncUSSAutofillProfileDescription[] =
1825 "Enables the new implementation of autofill profile sync";
1826
Jan Krcale3641b92018-08-10 17:53:311827const char kSyncUSSAutofillWalletDataName[] =
1828 "Enable USS for autofill wallet data";
1829const char kSyncUSSAutofillWalletDataDescription[] =
1830 "Enables the new implementation of autofill walet data sync";
1831
Brett Wilsonecb80982017-07-12 20:34:511832const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1833const char kSyncSandboxDescription[] =
1834 "Connects to the testing server for Chrome Sync.";
vabr0215a8e2017-03-28 12:47:341835
Joe Downing8cbbc192018-05-14 17:37:071836const char kSystemKeyboardLockName[] = "Experimental system keyboard lock";
1837const char kSystemKeyboardLockDescription[] =
1838 "Enables websites to use the keyboard.lock() API to intercept system "
1839 "keyboard shortcuts and have the events routed directly to the website "
1840 "when in fullscreen mode.";
1841
Christian Dullweberd0d96f02017-09-13 09:22:511842const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1843const char kTabsInCbdDescription[] =
1844 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
1845
Becky Zhou99c22802017-10-19 05:09:271846const char kTabModalJsDialogName[] = "Auto-dismissing JavaScript Dialogs";
1847const char kTabModalJsDialogDescription[] =
1848 "If enabled, the JavaScript dialog will be auto dismissable when switching"
1849 " tab.";
1850
Brett Wilsonecb80982017-07-12 20:34:511851const char kTcpFastOpenName[] = "TCP Fast Open";
1852const char kTcpFastOpenDescription[] =
1853 "Enable the option to send extra authentication information in the initial "
1854 "SYN packet for a previously connected client, allowing faster data send "
1855 "start.";
vabr0215a8e2017-03-28 12:47:341856
Daniele Castagna0fead93e2018-01-10 20:40:291857const char kTintGlCompositedContentName[] = "Tint GL-composited content";
1858const char kTintGlCompositedContentDescription[] =
1859 "Tint contents composited using GL with a shade of red to help debug and "
1860 "study overlay support.";
1861
Peter Kastingd77428352018-10-26 15:20:251862const char kTopChromeTouchUiName[] = "Touch UI Layout";
1863const char kTopChromeTouchUiDescription[] =
1864 "Enables touch UI layout in the browser's top chrome.";
vabr0215a8e2017-03-28 12:47:341865
Brett Wilsonecb80982017-07-12 20:34:511866const char kThreadedScrollingName[] = "Threaded scrolling";
1867const char kThreadedScrollingDescription[] =
1868 "Threaded handling of scroll-related input events. Disabling this will "
1869 "force all such scroll events to be handled on the main thread. Note that "
1870 "this can dramatically hurt scrolling performance of most websites and is "
1871 "intended for testing purposes only.";
1872
Steven Valdez4584b2482017-07-14 01:11:571873const char kTLS13VariantName[] = "TLS 1.3";
1874const char kTLS13VariantDescription[] = "Sets the TLS 1.3 variant used.";
1875const char kTLS13VariantDisabled[] = "Disabled";
Steven Valdez57d88652017-10-05 21:05:111876const char kTLS13VariantDeprecated[] = "Disabled (Deprecated Setting)";
Steven Valdez781157b2018-01-11 13:32:041877const char kTLS13VariantDraft23[] = "Enabled (Draft 23)";
Steven Valdezf27cb7f2018-08-21 18:34:331878const char kTLS13VariantFinal[] = "Enabled (Final)";
Steven Valdez4584b2482017-07-14 01:11:571879
Dominick Ng8896b1cd2017-10-17 23:24:361880const char kTopSitesFromSiteEngagementName[] = "Top Sites from Site Engagement";
1881const char kTopSitesFromSiteEngagementDescription[] =
1882 "Enable Top Sites on the New Tab Page to be sourced and sorted using site "
1883 "engagement.";
1884
Brett Wilsonecb80982017-07-12 20:34:511885const char kTouchAdjustmentName[] = "Touch adjustment";
1886const char kTouchAdjustmentDescription[] =
1887 "Refine the position of a touch gesture in order to compensate for touches "
1888 "having poor resolution compared to a mouse.";
1889
Alex Newcomerb3d3c972018-05-03 14:59:401890const char kTouchableAppContextMenuName[] = "Touchable App Context Menu";
1891const char kTouchableAppContextMenuDescription[] =
1892 "Enable the touchable app context menu, which enlarges app context menus "
1893 "in the Launcher and Shelf to make room for new features.";
1894
Brett Wilsonecb80982017-07-12 20:34:511895const char kTouchDragDropName[] = "Touch initiated drag and drop";
1896const char kTouchDragDropDescription[] =
1897 "Touch drag and drop can be initiated through long press on a draggable "
1898 "element.";
1899
1900const char kTouchEventsName[] = "Touch Events API";
1901const char kTouchEventsDescription[] =
1902 "Force Touch Events API feature detection to always be enabled or "
1903 "disabled, or to be enabled when a touchscreen is detected on startup "
Ella Gea6a203c92017-10-26 19:09:291904 "(Automatic).";
Brett Wilsonecb80982017-07-12 20:34:511905
1906const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
1907const char kTouchSelectionStrategyDescription[] =
1908 "Controls how text selection granularity changes when touch text selection "
1909 "handles are dragged. Non-default behavior is experimental.";
1910const char kTouchSelectionStrategyCharacter[] = "Character";
1911const char kTouchSelectionStrategyDirection[] = "Direction";
1912
1913const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
1914const char kTraceUploadUrlDescription[] =
1915 "This is to be used in conjunction with the enable-navigation-tracing "
1916 "flag. Please select the label that best describes the recorded traces. "
1917 "This will choose the destination the traces are uploaded to. If you are "
1918 "not sure, select other. If left empty, no traces will be uploaded.";
1919const char kTraceUploadUrlChoiceOther[] = "Other";
1920const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1921const char kTraceUploadUrlChoiceQa[] = "QA";
1922const char kTraceUploadUrlChoiceTesting[] = "Testing";
1923
Anthony Vallee-Duboisc0a027d72018-08-30 17:11:561924const char kTranslateExplicitLanguageAskName[] =
1925 "Explicitly ask for language preferences";
1926const char kTranslateExplicitLanguageAskDescription[] =
1927 "Explicitly ask the user which languages they can read on Chrome startup, "
1928 "on the first run that doesn't already have a promo.";
1929
Anthony Vallee-Dubois265c5692018-06-01 15:57:141930const char kTranslateForceTriggerOnEnglishName[] =
1931 "Select which language model to use to trigger translate on English "
1932 "content";
1933const char kTranslateForceTriggerOnEnglishDescription[] =
1934 "Force the Translate Triggering on English pages experiment to be enabled "
1935 "with the selected language model active.";
1936
Philippe Hamel7fdaa452017-09-29 17:22:491937const char kTranslateRankerEnforcementName[] =
1938 "Enforce TranslateRanker decisions";
1939const char kTranslateRankerEnforcementDescription[] =
1940 "Improved Translate UI triggering logic. TranslateRanker decides whether "
1941 "or not Translate UI should be triggered in a given context.";
1942
Nicolas Ouellet-payeur9e5ff3d2018-06-20 16:07:161943const char kTranslateUIName[] = "Enable Translate";
1944const char kTranslateUIDescription[] =
1945 "Enable the Translate popup when visiting webpages in other languages.";
1946
Mustafa Emre Acerb3aa36a82018-05-22 21:44:051947const char kTreatInsecureOriginAsSecureName[] =
1948 "Insecure origins treated as secure";
1949const char kTreatInsecureOriginAsSecureDescription[] =
1950 "Treat given (insecure) origins as secure origins. Multiple origins can be "
1951 "supplied as a comma-separated list. For the definition of secure "
1952 "contexts, "
1953 "see https://w3c.github.io/webappsec-secure-contexts/";
1954
Brett Wilsonecb80982017-07-12 20:34:511955const char kTrySupportedChannelLayoutsName[] =
1956 "Causes audio output streams to check if channel layouts other than the "
1957 "default hardware layout are available.";
1958const char kTrySupportedChannelLayoutsDescription[] =
1959 "Causes audio output streams to check if channel layouts other than the "
1960 "default hardware layout are available. Turning this on will allow the OS "
1961 "to do stereo to surround expansion if supported. May expose third party "
1962 "driver bugs, use with caution.";
1963
David Roger6762a092018-01-31 15:55:071964const char kUnifiedConsentName[] = "Unified Consent";
1965const char kUnifiedConsentDescription[] =
1966 "Enables a unified management of user consent for privacy-related "
1967 "features. This includes new confirmation screens and improved settings "
1968 "pages.";
1969
Jérôme Lebelfe1b2e02018-08-03 12:26:201970const char kForceUnifiedConsentBumpName[] = "Force Unified Consent Bump";
1971const char kForceUnifiedConsentBumpDescription[] =
1972 "Force the unified consent bump UI to be shown on every start-up. This "
1973 "flag is for debug purpose, to test the UI.";
1974
Brett Wilsonecb80982017-07-12 20:34:511975const char kUiPartialSwapName[] = "Partial swap";
1976const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
1977
Chris Pickel3a227ae62017-08-24 10:47:261978const char kUseDdljsonApiName[] = "Use new ddljson API for Doodles";
1979const char kUseDdljsonApiDescription[] =
1980 "Enables the new ddljson API to fetch Doodles for the NTP.";
1981
Becca Hughes59c05b42017-11-03 13:11:581982const char kUseModernMediaControlsName[] = "New Media Controls";
1983const char kUseModernMediaControlsDescription[] =
1984 "Enables the new style native media controls.";
1985
Wei Li790e7a8572018-03-23 01:31:551986const char kUsePdfCompositorServiceName[] =
1987 "Use PDF compositor service for printing";
1988const char kUsePdfCompositorServiceDescription[] =
1989 "When enabled, use PDF compositor service to composite and generate PDF "
1990 "files for printing. When site isolation is enabled, disabling this will "
1991 "not stop using PDF compositor service since the service is required for "
1992 "printing out-of-process iframes correctly.";
1993
Mustaq Ahmedc646c0a2017-10-20 20:08:301994const char kUserActivationV2Name[] = "User Activation v2";
1995const char kUserActivationV2Description[] =
1996 "Enable simple user activation for APIs that are otherwise controlled by "
1997 "user gesture tokens.";
1998
Brett Wilsonecb80982017-07-12 20:34:511999const char kUserConsentForExtensionScriptsName[] =
2000 "User consent for extension scripts";
2001const char kUserConsentForExtensionScriptsDescription[] =
2002 "Require user consent for an extension running a script on the page, if "
2003 "the extension requested permission to run on all urls.";
2004
2005const char kUseSuggestionsEvenIfFewFeatureName[] =
2006 "Disable minimum for server-side tile suggestions on NTP.";
2007const char kUseSuggestionsEvenIfFewFeatureDescription[] =
2008 "Request server-side suggestions even if there are only very few of them "
2009 "and use them for tiles on the New Tab Page.";
2010
2011const char kV8CacheOptionsName[] = "V8 caching mode.";
2012const char kV8CacheOptionsDescription[] =
2013 "Caching mode for the V8 JavaScript engine.";
Brett Wilsonecb80982017-07-12 20:34:512014const char kV8CacheOptionsCode[] = "Cache V8 compiler data.";
2015
Hitoshi Yoshida3e5db562017-09-11 02:31:082016const char kV8ContextSnapshotName[] = "Use a snapshot to create V8 contexts.";
2017const char kV8ContextSnapshotDescription[] =
2018 "Sets to use a snapshot to create V8 contexts in frame creation.";
2019
Michael Hablich896d52662017-10-23 15:59:572020const char kV8VmFutureName[] = "Future V8 VM features";
2021const char kV8VmFutureDescription[] =
2022 "This enables upcoming and experimental V8 VM features. "
2023 "This flag does not enable experimental JavaScript features.";
2024
Hannes Payer1130d5672018-06-05 07:37:312025const char kV8OrinocoName[] = "V8 Orinoco garbage collection features";
2026const char kV8OrinocoDescription[] =
2027 "This enables the V8 Orinoco garbage collection features.";
2028
Brett Wilsonecb80982017-07-12 20:34:512029const char kVideoFullscreenOrientationLockName[] =
2030 "Lock screen orientation when playing a video fullscreen.";
2031const char kVideoFullscreenOrientationLockDescription[] =
2032 "Lock the screen orientation of the device to match video orientation when "
2033 "a video goes fullscreen. Only on phones.";
2034
2035const char kVideoRotateToFullscreenName[] =
2036 "Rotate-to-fullscreen gesture for videos.";
2037const char kVideoRotateToFullscreenDescription[] =
2038 "Enter/exit fullscreen when device is rotated to/from the orientation of "
2039 "the video. Only on phones.";
2040
2041const char kWalletServiceUseSandboxName[] =
2042 "Use Google Payments sandbox servers";
2043const char kWalletServiceUseSandboxDescription[] =
2044 "For developers: use the sandbox service for Google Payments API calls.";
2045
Brett Wilsonecb80982017-07-12 20:34:512046const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
2047const char kWebglDraftExtensionsDescription[] =
2048 "Enabling this option allows web applications to access the WebGL "
2049 "Extensions that are still in draft status.";
2050
2051const char kWebMidiName[] = "Web MIDI API";
2052const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
2053
2054const char kWebPaymentsName[] = "Web Payments";
2055const char kWebPaymentsDescription[] =
2056 "Enable Web Payments API integration, a JavaScript API for merchants.";
2057
Mathieu Perreault51339b82017-07-20 17:06:052058const char kWebPaymentsModifiersName[] = "Enable web payment modifiers";
2059const char kWebPaymentsModifiersDescription[] =
2060 "If the website provides modifiers in the payment request, show the custom "
2061 "total for each payment instrument, update the shopping cart when "
2062 "instruments are switched, and send modified payment method specific data "
2063 "to the payment app.";
2064
Brett Wilsonecb80982017-07-12 20:34:512065const char kWebrtcEchoCanceller3Name[] = "WebRTC Echo Canceller 3.";
2066const char kWebrtcEchoCanceller3Description[] =
2067 "Experimental WebRTC echo canceller (AEC3).";
2068
Qingsi Wangec2dbf942018-11-03 05:33:042069const char kWebrtcHideLocalIpsWithMdnsName[] =
2070 "Anonymize local IPs exposed by WebRTC.";
2071const char kWebrtcHideLocalIpsWithMdnsDecription[] =
2072 "Conceal local IP addresses with mDNS hostnames.";
2073
Alex Loikob5fb1282018-08-14 10:04:402074const char kWebrtcHybridAgcName[] = "WebRTC hybrid Agc2/Agc1.";
2075const char kWebrtcHybridAgcDescription[] =
2076 "WebRTC Agc2 digital adaptation with Agc1 analog adaptation.";
2077
Brett Wilsonecb80982017-07-12 20:34:512078const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
2079const char kWebrtcHwDecodingDescription[] =
2080 "Support in WebRTC for decoding video streams using platform hardware.";
2081
2082const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
2083const char kWebrtcHwEncodingDescription[] =
2084 "Support in WebRTC for encoding video streams using platform hardware.";
2085
2086const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
2087const char kWebrtcHwH264EncodingDescription[] =
2088 "Support in WebRTC for encoding h264 video streams using platform "
2089 "hardware.";
2090
2091const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
2092const char kWebrtcHwVP8EncodingDescription[] =
2093 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
2094
Niels Möller090866a2018-02-13 10:55:032095const char kWebrtcNewEncodeCpuLoadEstimatorName[] =
2096 "WebRTC new encode cpu load estimator";
2097const char kWebrtcNewEncodeCpuLoadEstimatorDescription[] =
2098 "Enable new estimator for the encoder cpu load, for evaluation and "
2099 "testing. Intended to improve accuracy when screen casting.";
2100
Elad Alon85e0d0be2018-06-26 10:38:372101const char kWebRtcRemoteEventLogName[] = "WebRTC remote-bound event logging";
2102const char kWebRtcRemoteEventLogDescription[] =
2103 "Allow collecting WebRTC event logs and uploading them to Crash. "
2104 "Please note that, even if enabled, this will still require "
2105 "a policy to be set, for it to have an effect.";
2106
Brett Wilsonecb80982017-07-12 20:34:512107const char kWebrtcSrtpAesGcmName[] =
2108 "Negotiation with GCM cipher suites for SRTP in WebRTC";
2109const char kWebrtcSrtpAesGcmDescription[] =
2110 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
2111
Joachim Bauch4a41d7512017-08-23 14:24:232112const char kWebrtcSrtpEncryptedHeadersName[] =
2113 "Negotiation with encrypted header extensions for SRTP in WebRTC";
2114const char kWebrtcSrtpEncryptedHeadersDescription[] =
2115 "When enabled, WebRTC will try to negotiate encrypted header extensions "
2116 "for SRTP.";
2117
Brett Wilsonecb80982017-07-12 20:34:512118const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
2119const char kWebrtcStunOriginDescription[] =
2120 "When enabled, Stun messages generated by WebRTC will contain the Origin "
2121 "header.";
2122
Adam Riceed63fc02018-06-20 05:57:462123const char kWebSocketHandshakeReuseConnectionName[] =
2124 "Enable WebSocket connection reuse for authentication";
2125const char kWebSocketHandshakeReuseConnectionDescription[] =
2126 "Permits the WebSocket handshake to keep the connection open after an "
2127 "authentication failure. The connection may be used for further requests "
2128 "to send credentials. This is sometimes needed for Windows authentication.";
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 "
Anna Offenwanger06dc6062018-04-12 07:56:222136 "risk. Controllers are exposed as Gamepads.";
Brett Wilsonecb80982017-07-12 20:34:512137
Brandon Jonese9d9b2b2017-12-11 22:20:112138const char kWebXrName[] = "WebXR Device API";
2139const char kWebXrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012140 "Enables access to experimental APIs to interact with Virtual Reality (VR) "
2141 "and Augmented Reality (AR) devices.";
2142
2143const char kWebXrGamepadSupportName[] = "WebXR Gamepad Support";
2144const char kWebXrGamepadSupportDescription[] =
2145 "Expose VR controllers as Gamepads for use with the WebXR Device API. Each "
Anna Offenwanger06dc6062018-04-12 07:56:222146 "XRInputSource will have a corresponding Gamepad instance. Requires that "
2147 "WebXR Device API is also enabled.";
Ian Vollick7aaccf92018-04-07 23:10:432148
2149const char kWebXrHitTestName[] = "WebXR Hit Test";
2150const char kWebXrHitTestDescription[] =
2151 "Enables access to raycasting against estimated XR scene geometry.";
Brandon Jonese9d9b2b2017-12-11 22:20:112152
Anna Maria57ecf7592018-01-12 03:10:402153const char kWebXrOrientationSensorDeviceName[] =
2154 "WebXR orientation sensor device";
2155const char kWebXrOrientationSensorDeviceDescription[] =
2156 "When no VR platform device is available, expose a non-presenting device "
2157 "based on the device's orientation sensors, if available.";
2158
Brett Wilsonecb80982017-07-12 20:34:512159const char kWifiCredentialSyncName[] = "WiFi credential sync";
2160const char kWifiCredentialSyncDescription[] =
2161 "Enables synchronizing WiFi network settings across devices. When enabled, "
2162 "the WiFi credential datatype is registered with Chrome Sync, and WiFi "
2163 "credentials are synchronized subject to user preferences. (See also, "
2164 "chrome://settings/syncSetup.)";
2165
2166const char kZeroCopyName[] = "Zero-copy rasterizer";
2167const char kZeroCopyDescription[] =
2168 "Raster threads write directly to GPU memory associated with tiles.";
vabr0215a8e2017-03-28 12:47:342169
Brett Wilsonff596952017-07-14 01:06:552170// Android ---------------------------------------------------------------------
2171
2172#if defined(OS_ANDROID)
2173
2174const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
2175const char kAiaFetchingDescription[] =
2176 "Enable intermediate certificate fetching when a server does not provide "
2177 "sufficient certificates to build a chain to a trusted root.";
2178
2179const char kAccessibilityTabSwitcherName[] = "Accessibility Tab Switcher";
2180const char kAccessibilityTabSwitcherDescription[] =
2181 "Enable the accessibility tab switcher for Android.";
2182
2183const 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
Matthew Jones1abcb132018-07-09 17:59:462235const char kChromeDuetName[] = "Chrome Duet";
2236const char kChromeDuetDescription[] =
2237 "Enables Chrome Duet, split toolbar Chrome Home, on Android.";
Theresa Wellingtonb9243b22017-12-01 16:23:052238
Megan Jablonskic61eb1b82017-10-02 18:03:062239const char kChromeMemexName[] = "Chrome Memex";
2240const char kChromeMemexDescription[] =
2241 "Enables Chrome Memex homepage on Android. Restricted to opted-in "
2242 "Googlers.";
2243
Sarath Singapati83aef1c2017-11-16 15:54:522244const char kClearOldBrowsingDataName[] = "Clear older browsing data";
2245const char kClearOldBrowsingDataDescription[] =
2246 "Enables clearing of browsing data which is older than a given time "
2247 "period.";
2248
Brett Wilsonff596952017-07-14 01:06:552249const char kContentSuggestionsCategoryOrderName[] =
2250 "Default content suggestions category order (e.g. on NTP)";
2251const char kContentSuggestionsCategoryOrderDescription[] =
2252 "Set default order of content suggestion categories (e.g. on the NTP).";
2253
2254const char kContentSuggestionsCategoryRankerName[] =
2255 "Content suggestions category ranker (e.g. on NTP)";
2256const char kContentSuggestionsCategoryRankerDescription[] =
2257 "Set category ranker to order categories of content suggestions (e.g. on "
2258 "the NTP).";
2259
Vitalii Iarkof52ff802017-09-14 12:34:242260const char kContentSuggestionsDebugLogName[] = "Content suggestions debug log";
2261const char kContentSuggestionsDebugLogDescription[] =
2262 "Enable content suggestions debug log accessible through "
2263 "snippets-internals.";
2264
Donn Denman8e58ead2017-11-04 01:44:012265const char kContextualSearchMlTapSuppressionName[] =
2266 "Contextual Search ML tap suppression";
2267const char kContextualSearchMlTapSuppressionDescription[] =
2268 "Enables tap gestures to be suppressed to improve CTR by applying machine "
Donn Denman59729812018-01-09 01:27:022269 "learning. The \"Contextual Search Ranker prediction\" flag must also be "
2270 "enabled!";
Brett Wilsonff596952017-07-14 01:06:552271
2272const char kContextualSearchName[] = "Contextual Search";
2273const char kContextualSearchDescription[] =
2274 "Whether or not Contextual Search is enabled.";
2275
Donn Denman59729812018-01-09 01:27:022276const char kContextualSearchRankerQueryName[] =
2277 "Contextual Search Ranker prediction";
2278const char kContextualSearchRankerQueryDescription[] =
2279 "Enables prediction of tap gestures using Assist-Ranker machine learning.";
2280
2281const char kContextualSearchSecondTapName[] =
2282 "Contextual Search second tap triggering";
2283const char kContextualSearchSecondTapDescription[] =
2284 "Enables triggering on a second tap gesture even when Ranker would "
2285 "normally suppress that tap.";
2286
Donn Denmane9b5b7fb2018-07-24 22:19:492287const char kContextualSearchUnityIntegrationName[] =
2288 "Contextual Search integration with Unified Consent";
2289const char kContextualSearchUnityIntegrationDescription[] =
2290 "Enables integration of Tap to Search with Unified Consent.";
2291
Cathy Li2fb32bf82018-06-06 18:55:402292const char kExploreSitesName[] = "Explore websites";
2293const char kExploreSitesDescription[] =
2294 "Enables portal from new tab page to explore websites.";
2295
Dmitry Skiba9c3efa72017-07-20 22:01:142296const char kDontPrefetchLibrariesName[] = "Don't Prefetch Libraries";
2297const char kDontPrefetchLibrariesDescription[] =
2298 "Don't prefetch libraries after loading.";
2299
Joy Ming189b0cc2017-12-08 19:42:432300const char kDownloadsLocationChangeName[] = "Enable downloads location change";
2301const char kDownloadsLocationChangeDescription[] =
2302 "Enable changing default downloads storage location on Android.";
2303
Shakti Sahu32b2ee102018-05-17 00:04:462304const char kDownloadProgressInfoBarName[] = "Enable download progress infobar";
2305const char kDownloadProgressInfoBarDescription[] =
2306 "Enables an infobar notifying users about status of current downloads.";
2307
Shakti Sahu9ec8cfd2018-07-17 13:29:292308const char kDownloadHomeV2Name[] = "Enable download home v2";
2309const char kDownloadHomeV2Description[] =
2310 "Enables the new UI for download home";
2311
Brett Wilsonff596952017-07-14 01:06:552312const char kEnableAndroidPayIntegrationV1Name[] = "Enable Android Pay v1";
2313const char kEnableAndroidPayIntegrationV1Description[] =
2314 "Enable integration with Android Pay using the first version of the API";
2315
2316const char kEnableAndroidPayIntegrationV2Name[] = "Enable Android Pay v2";
2317const char kEnableAndroidPayIntegrationV2Description[] =
2318 "Enable integration with Android Pay using the second version of the API";
2319
Fabio Tirelo918089a2018-10-22 21:24:082320const char kAutofillManualFallbackAndroidName[] =
2321 "Enable Autofill manual fallback for Addresses and Payments (Android)";
2322const char kAutofillManualFallbackAndroidDescription[] =
2323 "If enabled, adds toggle for addresses and payments bottom sheet to the "
2324 "keyboard accessory.";
2325
Fabio Tirelo315e65922018-09-05 03:35:492326const char kEnableAutofillRefreshStyleName[] =
2327 "Enable Autofill refresh style (Android)";
2328const char kEnableAutofillRefreshStyleDescription[] =
2329 "Enable modernized style for Autofill on Android";
2330
Vitalii Iarkof4ed32d2017-09-26 13:15:532331const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
Brett Wilsonff596952017-07-14 01:06:552332const char kEnableAndroidSpellcheckerDescription[] =
2333 "Enables use of the Android spellchecker.";
Brett Wilsonff596952017-07-14 01:06:552334
Lei Tianbd5a3bf2018-02-28 19:01:162335const char kEnableCommandLineOnNonRootedName[] =
2336 "Enable command line on non-rooted devices";
2337const char kEnableCommandLineOnNoRootedDescription[] =
2338 "Enable reading command line file on non-rooted devices (DANGEROUS).";
2339
Vitalii Iarkof4ed32d2017-09-26 13:15:532340const char kEnableContentSuggestionsNewFaviconServerName[] =
2341 "Get favicons for content suggestions from a new server.";
2342const char kEnableContentSuggestionsNewFaviconServerDescription[] =
2343 "If enabled, the content suggestions (on the NTP) will get favicons from a "
2344 "new favicon server.";
Brett Wilsonff596952017-07-14 01:06:552345
Vitalii Iarkof4ed32d2017-09-26 13:15:532346const char kEnableContentSuggestionsThumbnailDominantColorName[] =
2347 "Use content suggestions thumbnail dominant color.";
2348const char kEnableContentSuggestionsThumbnailDominantColorDescription[] =
2349 "Use content suggestions thumbnail dominant color as a placeholder before "
2350 "the real thumbnail is fetched (requires Chrome Home).";
2351
Brett Wilsonff596952017-07-14 01:06:552352const char kEnableCustomContextMenuName[] = "Enable custom context menu";
2353const char kEnableCustomContextMenuDescription[] =
2354 "Enables a new context menu when a link, image, or video is pressed within "
2355 "Chrome.";
2356
2357const char kEnableCustomFeedbackUiName[] = "Enable Custom Feedback UI";
2358const char kEnableCustomFeedbackUiDescription[] =
2359 "Enables a custom feedback UI when submitting feedback through Google "
2360 "Feedback. Works with Google Play Services v10.2+";
2361
2362const char kEnableDataReductionProxyMainMenuName[] =
Theresa Wellington141e4af2017-10-23 20:28:472363 "Enable Data Saver main menu item";
Brett Wilsonff596952017-07-14 01:06:552364const char kEnableDataReductionProxyMainMenuDescription[] =
Theresa Wellington141e4af2017-10-23 20:28:472365 "Enables the Data Saver menu item in the main menu";
Brett Wilsonff596952017-07-14 01:06:552366
Becca Hughes6d73bac542018-06-18 20:38:502367const char kEnableMediaControlsExpandGestureName[] =
2368 "Enable Media Controls Expand Gesture";
2369const char kEnableMediaControlsExpandGestureDescription[] =
2370 "Enables a gesture to be used on the media controls to extend the video "
2371 "into the Display Cutout area.";
2372
Brett Wilsonff596952017-07-14 01:06:552373const char kEnableOmniboxClipboardProviderName[] =
2374 "Omnibox clipboard URL suggestions";
2375const char kEnableOmniboxClipboardProviderDescription[] =
2376 "Provide a suggestion of the URL stored in the clipboard (if any) upon "
2377 "focus in the omnibox.";
2378
Brett Wilsonff596952017-07-14 01:06:552379const char kEnableNtpAssetDownloadSuggestionsName[] =
2380 "Show asset downloads on the New Tab page";
2381const char kEnableNtpAssetDownloadSuggestionsDescription[] =
2382 "If enabled, the list of content suggestions on the New Tab page will "
2383 "contain assets (e.g. books, pictures, audio) that the user downloaded for "
2384 "later use.";
2385
2386const char kEnableNtpBookmarkSuggestionsName[] =
2387 "Show recently visited bookmarks on the New Tab page";
2388const char kEnableNtpBookmarkSuggestionsDescription[] =
2389 "If enabled, the list of content suggestions on the New Tab page will "
2390 "contain recently visited bookmarks.";
2391
Brett Wilsonff596952017-07-14 01:06:552392const char kEnableNtpOfflinePageDownloadSuggestionsName[] =
2393 "Show offline page downloads on the New Tab page";
2394const char kEnableNtpOfflinePageDownloadSuggestionsDescription[] =
2395 "If enabled, the list of content suggestions on the New Tab page will "
2396 "contain pages that the user downloaded for later use.";
2397
2398const char kEnableNtpRemoteSuggestionsName[] =
2399 "Show server-side suggestions on the New Tab page";
2400const char kEnableNtpRemoteSuggestionsDescription[] =
2401 "If enabled, the list of content suggestions on the New Tab page will "
2402 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
2403 "allows to override the source used to retrieve these server-side "
2404 "suggestions.";
2405
2406const char kEnableNtpSnippetsVisibilityName[] =
2407 "Make New Tab Page Snippets more visible.";
2408const char kEnableNtpSnippetsVisibilityDescription[] =
2409 "If enabled, the NTP snippets will become more discoverable with a larger "
2410 "portion of the first card above the fold.";
2411
2412const char kEnableNtpSuggestionsNotificationsName[] =
2413 "Notify about new content suggestions available at the New Tab page";
2414const char kEnableNtpSuggestionsNotificationsDescription[] =
2415 "If enabled, notifications will inform about new content suggestions on "
2416 "the New Tab page.";
2417
Brett Wilsonff596952017-07-14 01:06:552418const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
2419const char kEnableOfflinePreviewsDescription[] =
2420 "Enable showing offline page previews on slow networks.";
2421
2422const char kEnableOskOverscrollName[] = "Enable OSK Overscroll";
2423const char kEnableOskOverscrollDescription[] =
2424 "Enable OSK overscroll support. With this flag on, the OSK will only "
2425 "resize the visual viewport.";
2426
2427const char kEnableSpecialLocaleName[] =
2428 "Enable custom logic for special locales.";
2429const char kEnableSpecialLocaleDescription[] =
2430 "Enable custom logic for special locales. In this mode, Chrome might "
2431 "behave differently in some locales.";
2432
Brett Wilsonff596952017-07-14 01:06:552433const char kEnableWebNfcName[] = "WebNFC";
2434const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
2435
gogeraldf3cbb422017-07-26 14:37:122436const char kEnableWebPaymentsMethodSectionOrderV2Name[] =
2437 "Enable Web Payments method section order V2.";
2438const char kEnableWebPaymentsMethodSectionOrderV2Description[] =
2439 "Enable this option to display payment method section above address "
2440 "section instead of below it.";
2441
Donn Denmanffaeaa32018-10-12 17:37:532442const char kEphemeralTabName[] = "An Ephemeral Tab in an Overlay Panel";
2443const char kEphemeralTabDescription[] =
2444 "Enable a 'sneak peek' at a linked page in an overlay.";
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 Khaneja80712a82018-10-12 23:34:592664const char kSafeBrowsingUseLocalBlacklistsV2Name[] =
2665 "Use local Safe Browsing blacklists";
2666const char kSafeBrowsingUseLocalBlacklistsV2Description[] =
2667 "If enabled, maintain a copy of Safe Browsing blacklists in the browser "
2668 "process to check the Safe Browsing reputation of URLs without calling "
2669 "into GmsCore for every URL.";
2670
Brett Wilsonff596952017-07-14 01:06:552671const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2672const char kSetMarketUrlForTestingDescription[] =
2673 "When enabled, sets the market URL for use in testing the update menu "
2674 "item.";
2675
2676const char kSpannableInlineAutocompleteName[] = "Spannable inline autocomplete";
2677const char kSpannableInlineAutocompleteDescription[] =
2678 "A new type of inline autocomplete for the omnibox that works with "
2679 "keyboards that compose text.";
2680
Theresaeea05a12018-05-09 21:01:592681const char kSimplifiedNtpName[] = "Simplified NTP";
2682const char kSimplifiedNtpDescription[] = "Show a simplified New Tab Page.";
2683
2684const char kSiteExplorationUiName[] = "Site Exploration UI";
2685const char kSiteExplorationUiDescription[] =
2686 "Show site suggestions in the Exploration UI";
2687
Anthony Vallee-Dubois4623e1b2018-10-11 22:09:182688const char kTranslateAndroidManualTriggerName[] =
2689 "Enable manual translate trigger";
2690const char kTranslateAndroidManualTriggerDescription[] =
2691 "Show a menu item in the main menu that triggers page translation.";
2692
Brett Wilsonff596952017-07-14 01:06:552693const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2694const char kUpdateMenuBadgeDescription[] =
Tommy Nyquist3c02e592018-10-18 23:36:442695 "When enabled, a badge will be shown on the app menu button if the update "
2696 "type is Update Available or Unsupported OS Version.";
Brett Wilsonff596952017-07-14 01:06:552697
2698const char kUpdateMenuItemCustomSummaryDescription[] =
2699 "When this flag and the force show update menu item flag are enabled, a "
2700 "custom summary string will be displayed below the update menu item.";
2701const char kUpdateMenuItemCustomSummaryName[] =
2702 "Update menu item custom summary";
2703
Tommy Nyquist3c02e592018-10-18 23:36:442704const char kUpdateMenuTypeName[] =
2705 "Forces the update menu type to a specific type";
2706const char kUpdateMenuTypeDescription[] =
2707 "When set, forces the update type to be a specific one, which impacts "
2708 "the app menu badge and menu item for updates.";
2709const char kUpdateMenuTypeNone[] = "None";
2710const char kUpdateMenuTypeUpdateAvailable[] = "Update Available";
2711const char kUpdateMenuTypeUnsupportedOSVersion[] = "Unsupported OS Version";
Brett Wilsonff596952017-07-14 01:06:552712
Tibor Goldschwendt4cdea8d2018-05-10 15:46:462713const char kVrBrowsingTabsViewName[] = "VR browsing tabs view";
2714const char kVrBrowsingTabsViewDescription[] =
2715 "Enable tab overview (tab switcher) in VR.";
2716
Marc Treib93af46a2017-08-23 13:30:002717const char kThirdPartyDoodlesName[] =
2718 "Enable Doodles for third-party search engines";
2719const char kThirdPartyDoodlesDescription[] =
2720 "Enables fetching and displaying Doodles on the NTP for third-party search "
2721 "engines.";
2722
Klaus Weidneraaf697f2018-01-18 20:07:362723const char kWebXrRenderPathName[] = "WebXR presentation render path";
2724const char kWebXrRenderPathDescription[] =
2725 "Render path to use for WebXR presentation (including WebVR)";
2726const char kWebXrRenderPathChoiceClientWaitDescription[] =
2727 "ClientWait (Baseline)";
2728const char kWebXrRenderPathChoiceGpuFenceDescription[] =
2729 "GpuFence (Android N+)";
Klaus Weidnerd25dff42018-04-12 06:56:072730const char kWebXrRenderPathChoiceSharedBufferDescription[] =
2731 "SharedBuffer (Android O+)";
Klaus Weidneraaf697f2018-01-18 20:07:362732
Brett Wilson7b44537e2017-08-18 01:38:282733// Non-Android -----------------------------------------------------------------
Brett Wilsonff596952017-07-14 01:06:552734
Brett Wilson7b44537e2017-08-18 01:38:282735#else // !defined(OS_ANDROID)
brettw5f9c1642017-05-14 17:12:482736
Brett Wilson7b44537e2017-08-18 01:38:282737const char kAccountConsistencyName[] =
2738 "Identity consistency between browser and cookie jar";
2739const char kAccountConsistencyDescription[] =
2740 "When enabled, the browser manages signing in and out of Google accounts.";
2741const char kAccountConsistencyChoiceMirror[] = "Mirror";
2742const char kAccountConsistencyChoiceDice[] = "Dice";
vabr0215a8e2017-03-28 12:47:342743
Tommy Martino3fa3df52018-08-20 21:45:442744const char kAutofillDropdownLayoutName[] =
2745 "Autofill Dropdown Layout Experiment";
2746const char kAutofillDropdownLayoutDescription[] =
2747 "Alternate visual designs for the Autofill dropdown.";
2748
Fabio Tirelo3773dea2018-09-11 15:21:522749const char kAutofillPrimaryInfoStyleExperimentName[] =
2750 "Autofill experiment with primary info style";
2751const char kAutofillPrimaryInfoStyleExperimentDescription[] =
2752 "Allow experimentation with different typefaces for primary info on the "
2753 "Autofill dropdown (addresses and payment methods)";
2754
Chris Pickel3a227ae62017-08-24 10:47:262755const char kDoodlesOnLocalNtpName[] = "Enable doodles on the local NTP";
2756const char kDoodlesOnLocalNtpDescription[] =
2757 "Show doodles on the local New Tab page if Google is the default search "
2758 "engine.";
2759
mlamouriff56c092017-05-11 15:31:392760const char kEnableAudioFocusName[] = "Manage audio focus across tabs";
mlamouriff56c092017-05-11 15:31:392761const char kEnableAudioFocusDescription[] =
vabr0215a8e2017-03-28 12:47:342762 "Manage audio focus across tabs to improve the audio mixing.";
mlamouriff56c092017-05-11 15:31:392763const char kEnableAudioFocusDisabled[] = "Disabled";
mlamouriff56c092017-05-11 15:31:392764const char kEnableAudioFocusEnabled[] = "Enabled";
mlamouriff56c092017-05-11 15:31:392765const char kEnableAudioFocusEnabledDuckFlash[] =
vabr0215a8e2017-03-28 12:47:342766 "Enabled (Flash lowers volume when interrupted by other sound, "
2767 "experimental)";
Becca Hughes87b17ae2018-10-04 00:35:422768const char kEnableAudioFocusEnabledNoEnforce[] =
2769 "Enabled (without enforcement of a single active media session)";
vabr0215a8e2017-03-28 12:47:342770
Sebastien Marchandd33f7dc2018-06-22 22:07:062771const char kInfiniteSessionRestoreName[] = "Infinite Session Restore";
2772const char kInfiniteSessionRestoreDescription[] =
2773 "Reduces the number of tabs being loaded simultaneously during session "
2774 "restore, to improve responsiveness of the foreground tab. This requires "
2775 "#enable-page-almost-idle.";
2776
Sebastien Marchandd33f7dc2018-06-22 22:07:062777const char kEnableWebAuthenticationCtap2SupportName[] =
2778 "Enable Web Authentication API support for CTAP2 security keys";
2779const char kEnableWebAuthenticationCtap2SupportDescription[] =
Kim Paulhamus92431372018-07-20 02:25:472780 "Enable CTAP2 security keys for the Web Authentication API.";
Sebastien Marchandd33f7dc2018-06-22 22:07:062781
2782const char kEnableWebAuthenticationTestingAPIName[] =
2783 "Web Authentication Testing API";
2784const char kEnableWebAuthenticationTestingAPIDescription[] =
2785 "Enable Web Authentication Testing API support, which disconnects the API "
2786 "implementation from the real world, and allows configuring virtual "
2787 "authenticator devices for testing";
2788
Jeffrey Cohenf04130a42018-08-29 00:22:272789const char kHappinessTrackingSurveysForDesktopName[] =
2790 "Happiness Tracking Surveys";
2791const char kHappinessTrackingSurveysForDesktopDescription[] =
2792 "Enable showing Happiness Tracking Surveys to users on Desktop";
2793
Dave Schuyler598a4a42018-01-04 02:15:102794const char kOmniboxRichEntitySuggestionsName[] =
2795 "Omnibox rich entity suggestions";
2796const char kOmniboxRichEntitySuggestionsDescription[] =
2797 "Display entity suggestions using images and an enhanced layout; showing "
Justin Donnellye7926092018-06-18 14:57:212798 "more context and descriptive text about the entity. Has no effect unless "
2799 "either the #upcoming-ui-features flag is Enabled or the #top-chrome-md "
2800 "flag is set to Refresh or Touchable Refresh.";
Dave Schuyler598a4a42018-01-04 02:15:102801
Travis Skarebcdb5ed32018-08-17 01:49:402802const char kOmniboxDriveSuggestionsName[] =
2803 "Omnibox Google Drive Document suggestions";
2804const char kOmniboxDriveSuggestionsDescriptions[] =
2805 "Display suggestions for Google Drive documents in the omnibox when Google "
2806 "is the default search engine.";
2807
Dave Schuyler616273d2018-04-19 03:12:522808const char kOmniboxNewAnswerLayoutName[] = "Omnibox new answer layout";
2809const char kOmniboxNewAnswerLayoutDescription[] =
Justin Donnellye7926092018-06-18 14:57:212810 "Display answers using an enhanced layout with larger images. Has no "
2811 "effect unless either the #upcoming-ui-features flag is Enabled or the "
2812 "#top-chrome-md flag is set to Refresh or Touchable Refresh.";
Dave Schuyler616273d2018-04-19 03:12:522813
Orin Jaworski04c08b42018-07-11 02:39:562814const char kOmniboxReverseAnswersName[] = "Omnibox reverse answers";
2815const char kOmniboxReverseAnswersDescription[] =
2816 "Display answers with rows reversed (swapped); except definitions. Has no "
2817 "effect unless either the #upcoming-ui-features flag is Enabled or the "
2818 "#top-chrome-md flag is set to Refresh or Touchable Refresh.";
2819
Kevin Bailey898669972017-11-06 15:34:492820const char kOmniboxTabSwitchSuggestionsName[] =
2821 "Omnibox tab switch suggestions";
2822const char kOmniboxTabSwitchSuggestionsDescription[] =
Justin Donnellye7926092018-06-18 14:57:212823 "Enable suggestions for switching to open tabs within the Omnibox. "
2824 "Has no effect unless either the #upcoming-ui-features flag is Enabled or "
2825 "the #top-chrome-md flag is set to Refresh or Touchable Refresh.";
Kevin Bailey898669972017-11-06 15:34:492826
Orin Jaworskiae2df652018-09-26 01:11:062827const char kOmniboxPedalSuggestionsName[] = "Omnibox Pedal suggestions";
2828const char kOmniboxPedalSuggestionsDescription[] =
2829 "Enable omnibox Pedal suggestions using either a side button in suggestion "
2830 "or a dedicated suggestion item beneath the triggering line item. Omnibox "
2831 "Pedals accelerate actions within Chrome by detecting user intent and "
2832 "offering direct access to the end goal.";
2833
krbcc621412017-06-01 19:40:282834const char kOmniboxTailSuggestionsName[] = "Omnibox tail suggestions";
2835const char kOmniboxTailSuggestionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192836 "Enable receiving tail suggestions, a type of search suggestion based on "
2837 "the last few words in the query, for the Omnibox.";
vabr0215a8e2017-03-28 12:47:342838
Sebastien Marchandd33f7dc2018-06-22 22:07:062839const char kPageAlmostIdleName[] = "Page Almost Idle";
2840const char kPageAlmostIdleDescription[] =
2841 "Make session restore use a definition of loading that waits for CPU and "
2842 "network quiescence.";
2843
2844const char kProactiveTabFreezeAndDiscardName[] =
2845 "Proactive Tab Freeze and Discard";
2846const char kProactiveTabFreezeAndDiscardDescription[] =
2847 "Enables proactive tab freezing and discarding. This requires "
2848 "#enable-page-almost-idle.";
2849
Nicolas Ouellet-payeur82eb65b2018-11-05 16:49:272850const char kShowManagedUiName[] = "Show managed UI for managed users";
2851const char kShowManagedUiDescription[] =
2852 "Enabled/disable showing enterprise users a 'Managed by your organization' "
2853 "message in the app menu and on some chrome:// pages.";
2854
Sebastien Marchandd33f7dc2018-06-22 22:07:062855const char kSiteCharacteristicsDatabaseName[] = "Site Characteristics database";
2856const char kSiteCharacteristicsDatabaseDescription[] =
2857 "Records usage of some features in a database while a tab is in background "
2858 "(title/favicon update, audio playback or usage of non-persistent "
2859 "notifications).";
2860
Brett Wilson7b44537e2017-08-18 01:38:282861const char kUseGoogleLocalNtpName[] = "Enable using the Google local NTP";
2862const char kUseGoogleLocalNtpDescription[] =
2863 "Use the local New Tab page if Google is the default search engine.";
spqchan064a8112017-04-18 16:46:322864
Brett Wilson7b44537e2017-08-18 01:38:282865#if defined(GOOGLE_CHROME_BUILD)
2866
2867const char kGoogleBrandedContextMenuName[] =
2868 "Google branding in the context menu";
2869const char kGoogleBrandedContextMenuDescription[] =
2870 "Shows a Google icon next to context menu items powered by Google "
2871 "services.";
2872
2873#endif // !defined(GOOGLE_CHROME_BUILD)
2874
2875#endif // !defined(OS_ANDROID)
2876
2877// Windows ---------------------------------------------------------------------
2878
2879#if defined(OS_WIN)
2880
David Bienvenud0ddda32018-11-01 16:59:162881const char kCalculateNativeWinOcclusionName[] =
2882 "Calculate window occlusion on Windows";
2883const char kCalculateNativeWinOcclusionDescription[] =
2884 "Calculate window occlusion on Windows will be used in the future "
2885 "to throttle and potentially unload foreground tabs in occluded windows";
2886
Brett Wilson7b44537e2017-08-18 01:38:282887const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
2888const char kCloudPrintXpsDescription[] =
2889 "XPS enables advanced options for classic printers connected to the Cloud "
2890 "Print with Chrome. Printers must be re-connected after changing this "
2891 "flag.";
2892
2893const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
2894const char kDisablePostscriptPrintingDescription[] =
2895 "Disables PostScript generation when printing to PostScript capable "
2896 "printers, and uses EMF generation in its place.";
2897
2898const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
2899const char kEnableAppcontainerDescription[] =
2900 "Enables the use of an AppContainer on sandboxed processes to improve "
2901 "security.";
2902
James Forshawfd0ce342018-02-14 09:55:392903const char kEnableGpuAppcontainerName[] = "Enable GPU AppContainer Lockdown.";
2904const char kEnableGpuAppcontainerDescription[] =
2905 "Enables the use of an AppContainer for the GPU sandboxed processes to "
2906 "improve security.";
2907
Brett Wilson7b44537e2017-08-18 01:38:282908const char kGdiTextPrinting[] = "GDI Text Printing";
2909const char kGdiTextPrintingDescription[] =
2910 "Use GDI to print text as simply text";
2911
Henrik Grunell67e56ef2018-04-10 14:04:092912const char kIncreaseInputAudioBufferSize[] = "Increase input audio buffer size";
2913const char kIncreaseInputAudioBufferSizeDescription[] =
2914 "Increases the input audio endpoint buffer to 100 ms.";
2915
Brett Wilson7b44537e2017-08-18 01:38:282916const char kTraceExportEventsToEtwName[] =
2917 "Enable exporting of tracing events to ETW.";
2918const char kTraceExportEventsToEtwDesription[] =
2919 "If enabled, trace events will be exported to the Event Tracing for "
2920 "Windows (ETW) and can then be captured by tools such as UIForETW or "
2921 "Xperf.";
2922
Olli Etuaho122321192018-09-07 10:15:292923const char kUseAngleName[] = "Choose ANGLE graphics backend";
2924const char kUseAngleDescription[] =
2925 "Choose the graphics backend for ANGLE. D3D11 is used on most Windows "
2926 "computers by default. Using the OpenGL driver as the graphics backend may "
2927 "result in higher performance in some graphics-heavy applications, "
2928 "particularly on NVIDIA GPUs. It can increase battery and memory usage of "
2929 "video playback.";
2930
2931const char kUseAngleDefault[] = "Default";
2932const char kUseAngleGL[] = "OpenGL";
2933const char kUseAngleD3D11[] = "D3D11";
2934const char kUseAngleD3D9[] = "D3D9";
2935
Brett Wilson7b44537e2017-08-18 01:38:282936const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2937const char kUseWinrtMidiApiDescription[] =
2938 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
2939 "later).";
2940
2941const char kWindows10CustomTitlebarName[] = "Custom-drawn Windows 10 Titlebar";
2942const char kWindows10CustomTitlebarDescription[] =
2943 "If enabled, Chrome will draw the titlebar and caption buttons instead of "
2944 "deferring to Windows.";
2945
2946#endif // defined(OS_WIN)
2947
2948// Mac -------------------------------------------------------------------------
2949
2950#if defined(OS_MACOSX)
2951
Brett Wilson7b44537e2017-08-18 01:38:282952const char kFullscreenToolbarRevealName[] =
2953 "Enables the toolbar in fullscreen to reveal itself.";
2954const char kFullscreenToolbarRevealDescription[] =
2955 "Reveal the toolbar in fullscreen for a short period when the tab strip "
2956 "has changed.";
2957
2958const char kContentFullscreenName[] = "Improved Content Fullscreen";
2959const char kContentFullscreenDescription[] =
2960 "Fullscreen content window detaches from main browser window and goes to "
2961 "a new space without moving or changing the original browser window.";
2962
Martin Kreichgauer1ca416d2018-07-11 00:43:192963const char kEnableWebAuthenticationTouchIdName[] =
2964 "Web Authentication API Touch ID support";
2965const char kEnableWebAuthenticationTouchIdDescription[] =
2966 "Enables a built-in Touch ID authenticator for the Web Authentication API.";
2967
Brett Wilson7b44537e2017-08-18 01:38:282968const char kHostedAppsInWindowsName[] =
2969 "Allow hosted apps to be opened in windows";
2970const char kHostedAppsInWindowsDescription[] =
2971 "Allows hosted apps to be opened in windows instead of being limited to "
2972 "tabs.";
2973
Christopher Cameron57dee5a42018-09-25 01:20:082974const char kCreateAppWindowsInAppShimProcessName[] =
2975 "Create native windows in the app process";
2976const char kCreateAppWindowsInAppShimProcessDescription[] =
2977 "Create native windows the app shim process, instead of of the browser "
2978 "process.";
2979
Lei Zhang2eca9082017-10-17 20:42:502980const char kMacRTLName[] = "Enable RTL";
2981const char kMacRTLDescription[] = "Mirrors the UI for RTL language users";
Brett Wilson7b44537e2017-08-18 01:38:282982
Lei Zhang2eca9082017-10-17 20:42:502983const char kMacTouchBarName[] = "Hardware Touch Bar";
2984const char kMacTouchBarDescription[] = "Control the use of the Touch Bar.";
Brett Wilson7b44537e2017-08-18 01:38:282985
Greg Kerraea59272018-10-12 16:44:312986const char kMacV2SandboxName[] = "Mac V2 Sandbox";
2987const char kMacV2SandboxDescription[] =
2988 "Eliminates the unsandboxed warmup phase and sandboxes processes for their "
2989 "entire life cycle.";
2990
Brett Wilson7b44537e2017-08-18 01:38:282991const char kMacViewsNativeAppWindowsName[] = "Toolkit-Views App Windows.";
2992const char kMacViewsNativeAppWindowsDescription[] =
2993 "Controls whether to use Toolkit-Views based Chrome App windows.";
2994
2995const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
2996const char kMacViewsTaskManagerDescription[] =
2997 "Controls whether to use the Toolkit-Views based Task Manager.";
2998
2999const char kTabDetachingInFullscreenName[] =
3000 "Allow tab detaching in fullscreen";
3001const char kTabDetachingInFullscreenDescription[] =
3002 "Allow tabs to detach from the tabstrip when in fullscreen mode on Mac.";
3003
3004const char kTabStripKeyboardFocusName[] = "Tab Strip Keyboard Focus";
3005const char kTabStripKeyboardFocusDescription[] =
3006 "Enable keyboard focus for the tabs in the tab strip.";
3007
Tessa Nijssen4db9799e2018-08-06 21:04:383008const char kTextSuggestionsTouchBarName[] = "Text Suggestions Touch Bar";
3009const char kTextSuggestionsTouchBarDescription[] =
3010 "Enable text suggestions touch bar for textfields.";
3011
Brett Wilson7b44537e2017-08-18 01:38:283012#endif
3013
3014// Chrome OS -------------------------------------------------------------------
vabr0215a8e2017-03-28 12:47:343015
3016#if defined(OS_CHROMEOS)
3017
Brett Wilson7b44537e2017-08-18 01:38:283018const char kAcceleratedMjpegDecodeName[] =
3019 "Hardware-accelerated mjpeg decode for captured frame";
3020const char kAcceleratedMjpegDecodeDescription[] =
3021 "Enable hardware-accelerated mjpeg decode for captured frame where "
3022 "available.";
vabr0215a8e2017-03-28 12:47:343023
Brett Wilson7b44537e2017-08-18 01:38:283024const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click";
3025const char kAllowTouchpadThreeFingerClickDescription[] =
3026 "Enables touchpad three-finger-click as middle button.";
vabr0215a8e2017-03-28 12:47:343027
Bruno Kim Medeiros Cesarb98fe1d82018-06-06 18:11:523028const char kArcAvailableForChildName[] = "Allow ARC for child accounts";
3029const char kArcAvailableForChildDescription[] =
3030 "Allow child accounts to start Android apps.";
3031
Brett Wilson7b44537e2017-08-18 01:38:283032const char kArcBootCompleted[] = "Load Android apps automatically";
3033const char kArcBootCompletedDescription[] =
3034 "Allow Android apps to start automatically after signing in.";
vabr0215a8e2017-03-28 12:47:343035
Luum Habtemariamdaa8fd22018-06-25 22:39:433036const char kArcCupsApiName[] = "ARC CUPS API";
3037const char kArcCupsApiDescription[] =
3038 "Enables support of libcups APIs from ARC";
3039
Satoshi Niwa8b1d5282018-10-24 04:53:033040const char kArcFilePickerExperimentName[] =
3041 "Enable file picker experiment for ARC";
3042const char kArcFilePickerExperimentDescription[] =
3043 "Enables using Chrome OS file picker in ARC.";
3044
Yuichiro Hanada0b63f062018-07-12 02:18:333045const char kArcInputMethodName[] = "Enable ARC input methods.";
3046const char kArcInputMethodDescription[] = "Enable ARC input methods.";
3047
Lev Rumyantsev7a8544312017-08-18 19:26:513048const char kArcNativeBridgeExperimentName[] =
3049 "Enable native bridge experiment for ARC";
3050const char kArcNativeBridgeExperimentDescription[] =
3051 "Enables experimental native bridge feature.";
3052
lgchengecd1c1a62018-01-09 02:59:463053const char kArcUsbHostName[] = "Enable ARC USB host integration";
3054const char kArcUsbHostDescription[] =
3055 "Allow Android apps to use USB host feature on ChromeOS devices.";
3056
Kevin Cernekeeb7f96a52017-10-25 17:40:183057const char kArcVpnName[] = "Enable ARC VPN integration";
3058const char kArcVpnDescription[] =
3059 "Allow Android VPN clients to tunnel Chrome traffic.";
3060
Qiang Xu045aff222018-05-21 23:21:013061const char kAshDisableLoginDimAndBlurName[] =
3062 "Disable dimming and blur on login screen.";
3063const char kAshDisableLoginDimAndBlurDescription[] =
3064 "Disable dimming and blur on login screen.";
3065
3066const char kAshDisableSmoothScreenRotationName[] =
3067 "Disable smooth rotation animations.";
3068const char kAshDisableSmoothScreenRotationDescription[] =
3069 "Disable smooth rotation animations.";
3070
3071const char kAshEnableDisplayMoveWindowAccelsName[] =
3072 "Enable shortcuts for moving window between displays.";
3073const char kAshEnableDisplayMoveWindowAccelsDescription[] =
3074 "Enable shortcuts for moving window between displays.";
3075
3076const char kAshEnableKeyboardShortcutViewerName[] =
3077 "Enable keyboard shortcut viewer.";
3078const char kAshEnableKeyboardShortcutViewerDescription[] =
3079 "Enable keyboard shortcut viewer.";
3080
3081const char kAshEnableMirroredScreenName[] = "Enable mirrored screen mode.";
3082const char kAshEnableMirroredScreenDescription[] =
3083 "Enable the mirrored screen mode. This mode flips the screen image "
3084 "horizontally.";
3085
Qiang Xu045aff222018-05-21 23:21:013086const char kAshEnablePersistentWindowBoundsName[] =
3087 "Enable persistent window bounds in multi-displays scenario.";
3088const char kAshEnablePersistentWindowBoundsDescription[] =
3089 "Enable persistent window bounds in multi-displays scenario.";
3090
3091const char kAshEnableTrilinearFilteringName[] = "Enable trilinear filtering.";
3092const char kAshEnableTrilinearFilteringDescription[] =
3093 "Enable trilinear filtering.";
3094
Brett Wilson7b44537e2017-08-18 01:38:283095const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
3096const char kAshEnableUnifiedDesktopDescription[] =
3097 "Enable unified desktop mode which allows a window to span multiple "
3098 "displays.";
vabr0215a8e2017-03-28 12:47:343099
Mike Wassermanfcc47e42018-06-14 21:24:423100const char kAshKeyboardShortcutViewerAppName[] =
3101 "Keyboard Shortcut Viewer mojo app";
3102const char kAshKeyboardShortcutViewerAppDescription[] =
3103 "Use an out-of-process mojo app to show the Keyboard Shortcut Viewer.";
3104
Qiang Xu045aff222018-05-21 23:21:013105const char kAshShelfColorName[] = "Shelf color in Chrome OS system UI";
3106const char kAshShelfColorDescription[] =
3107 "Enables/disables the shelf color to be a derived from the wallpaper. The "
3108 "--ash-shelf-color-scheme flag defines how that color is derived.";
3109
3110const char kAshShelfColorScheme[] = "Shelf color scheme in Chrome OS System UI";
3111const char kAshShelfColorSchemeDescription[] =
3112 "Specify how the color is derived from the wallpaper. This flag is only "
3113 "used when the --ash-shelf-color flag is enabled. Defaults to Dark & Muted";
3114const char kAshShelfColorSchemeLightVibrant[] = "Light & Vibrant";
3115const char kAshShelfColorSchemeNormalVibrant[] = "Normal & Vibrant";
3116const char kAshShelfColorSchemeDarkVibrant[] = "Dark & Vibrant";
3117const char kAshShelfColorSchemeLightMuted[] = "Light & Muted";
3118const char kAshShelfColorSchemeNormalMuted[] = "Normal & Muted";
3119const char kAshShelfColorSchemeDarkMuted[] = "Dark & Muted";
3120
Sean Kau5e956192017-10-06 22:25:173121const char kBulkPrintersName[] = "Bulk Printers Policy";
3122const char kBulkPrintersDescription[] = "Enables the new bulk printers policy";
3123
Brett Wilson7b44537e2017-08-18 01:38:283124const char kCaptivePortalBypassProxyName[] =
3125 "Bypass proxy for Captive Portal Authorization";
3126const char kCaptivePortalBypassProxyDescription[] =
3127 "If proxy is configured, it usually prevents from authorization on "
3128 "different captive portals. This enables opening captive portal "
3129 "authorization dialog in a separate window, which ignores proxy settings.";
vabr0215a8e2017-03-28 12:47:343130
Yuki Awanob51d3252018-07-11 23:45:553131const char kChromeVoxArcSupportName[] = "ChromeVox ARC support";
3132const char kChromeVoxArcSupportDescription[] =
3133 "Use ChromeVox screen reader features in ARC";
3134
Brett Wilson7b44537e2017-08-18 01:38:283135const char kCrOSComponentName[] = "Chrome OS Component";
3136const char kCrOSComponentDescription[] =
Xiaochu Liu4c1b75d2017-12-18 23:52:083137 "Disable the use of componentized escpr CUPS filter.";
vabr0215a8e2017-03-28 12:47:343138
Xiaochu Liu51d03fd2017-09-08 23:51:023139const char kCrOSContainerName[] = "Chrome OS Container";
3140const char kCrOSContainerDescription[] =
3141 "Enable the use of Chrome OS Container utility.";
3142
Brett Wilson7b44537e2017-08-18 01:38:283143const char kCrosRegionsModeName[] = "Cros-regions load mode";
3144const char kCrosRegionsModeDescription[] =
3145 "This flag controls cros-regions load mode";
3146const char kCrosRegionsModeDefault[] = "Default";
3147const char kCrosRegionsModeOverride[] = "Override VPD values.";
3148const char kCrosRegionsModeHide[] = "Hide VPD values.";
vabr0215a8e2017-03-28 12:47:343149
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
Daniele Castagnac4aeb572018-10-23 16:23:573158const char kDisableExplicitDmaFencesName[] = "Disable explicit dma-fences";
3159const char kDisableExplicitDmaFencesDescription[] =
3160 "Always rely on implicit syncrhonization between GPU and display "
3161 "controller instead of using dma-fences explcitily when available.";
3162
Jacob Dufault2becbc482017-08-25 00:36:353163const char kDisableLockScreenAppsName[] = "Disable lock screen note taking";
3164const char kDisableLockScreenAppsDescription[] =
3165 "Disable new-note action handler apps on the lock screen. The user will "
3166 "not be able to launch the preferred note-taking action from the lock "
3167 "screen, provided that the app supports lock screen note taking.";
3168
Qiang Xu045aff222018-05-21 23:21:013169const char kDisableSystemTimezoneAutomaticDetectionName[] =
3170 "SystemTimezoneAutomaticDetection policy support";
3171const char kDisableSystemTimezoneAutomaticDetectionDescription[] =
3172 "Disable system timezone automatic detection device policy.";
3173
Sammie Quonef6b4882017-09-14 16:50:053174const char kDisableTabletAutohideTitlebarsName[] =
3175 "Disable autohide titlebars in tablet mode";
3176const char kDisableTabletAutohideTitlebarsDescription[] =
3177 "Disable tablet mode autohide titlebars functionality. The user will be "
3178 "able to see the titlebar in tablet mode.";
3179
Xiaoqian Dai24b33eb2018-04-10 21:01:573180const char kDisableTabletSplitViewName[] = "Disable split view in Tablet mode";
3181const char kDisableTabletSplitViewDescription[] =
3182 "Disable split view for Chrome OS tablet mode.";
3183
Ahmed Fakhry4f567e692018-10-16 15:51:083184const char kDoubleTapToZoomInTabletModeName[] =
3185 "Double-tap to zoom in tablet mode";
3186const char kDoubleTapToZoomInTabletModeDescription[] =
3187 "If Enabled, double tapping in webpages while in tablet mode will zoom the "
3188 "page.";
3189
Daniel Zhang01399072018-08-16 22:28:203190const char kEnableAppListSearchAutocompleteName[] =
3191 "App List Search Autocomplete";
3192const char kEnableAppListSearchAutocompleteDescription[] =
3193 "Allow App List search box to autocomplete queries for Google searches and "
3194 "apps.";
3195
Qiang Xu53d1a5832018-05-24 18:44:193196const char kEnableAppShortcutSearchName[] =
3197 "Enable app shortcut search in launcher";
3198const char kEnableAppShortcutSearchDescription[] =
3199 "Enables app shortcut search in launcher";
3200
Vladislav Kaznacheevaa213a02018-10-29 17:54:283201const char kEnableAppDataSearchName[] = "Enable app data search in launcher";
3202const char kEnableAppDataSearchDescription[] =
3203 "Allow launcher search to access data available through Firebase App "
3204 "Indexing";
3205
Weidong Guo00d0b2b2018-06-07 00:39:303206const char kEnableAppsGridGapFeatureName[] =
3207 "Enable apps grid gap feature in launcher.";
3208const char kEnableAppsGridGapFeatureDescription[] =
3209 "Enables gaps at the end of each page and enables dragging an item to an "
3210 "empty page in launcher.";
3211
Becca Hughes34415e82018-10-05 18:47:373212extern const char kEnableArcUnifiedAudioFocusName[] =
3213 "Enable unified audio focus on ARC";
3214extern const char kEnableArcUnifiedAudioFocusDescription[] =
3215 "If audio focus is enabled in Chrome then this will delegate audio focus "
3216 "control in Android apps to Chrome.";
3217
Lei Zhang2eca9082017-10-17 20:42:503218const char kEnableBackgroundBlurName[] = "Enable background blur.";
3219const char kEnableBackgroundBlurDescription[] =
Wenzhao Zang50fb0b22017-11-07 01:38:423220 "Enables background blur for the Peeking Launcher and Tab Switcher.";
Alex Newcomer43cb7f12017-07-28 17:37:393221
Lei Zhang0ca70ea2018-09-07 17:51:013222const char kEnableChromeOsAccountManagerName[] = "Enable Account Manager";
3223const char kEnableChromeOsAccountManagerDescription[] =
Kushagra Sinha8a181fc2018-08-20 17:15:493224 "Enables the Chrome OS Account Manager";
3225
Lei Zhang0ca70ea2018-09-07 17:51:013226const char kEnableContinueReadingName[] = "Enable continue reading";
3227const char kEnableContinueReadingDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013228 "Enable continue reading feature in Launcher, which allows users to "
3229 "seamlessly continue reading a web page when they switch devices from "
3230 "phones or tablets to Chromebooks.";
3231
Min Chenc2ec7282018-06-29 21:38:463232const char kEnableDragAppsInTabletModeName[] =
3233 "Enable dragging apps in tablet mode";
3234const char kEnableDragAppsInTabletModeDescription[] =
3235 "If enabled, swiping down from the top of the screen when an app is opened "
3236 "in tablet mode can drag the app.";
3237
Xiaoqian Dai82d99192018-05-25 18:51:353238const char kEnableDragTabsInTabletModeName[] =
3239 "Enable dragging tabs in tablet mode";
3240const char kEnableDragTabsInTabletModeDescription[] =
3241 "Allows the user to drag the tabs out of a browser window in tablet mode.";
3242
Sam McNally201fbf94e2018-07-04 03:15:203243const char kEnableDriveFsName[] = "Enable DriveFS";
3244const char kEnableDriveFsDescription[] =
3245 "Enables use of the new DriveFS-based Drive sync client.";
3246
Brett Wilson7b44537e2017-08-18 01:38:283247const char kEnableEhvInputName[] =
3248 "Emoji, handwriting and voice input on opt-in IME menu";
3249const char kEnableEhvInputDescription[] =
3250 "Enable access to emoji, handwriting and voice input form opt-in IME menu.";
vabr0215a8e2017-03-28 12:47:343251
Brett Wilson7b44537e2017-08-18 01:38:283252const char kEnableEncryptionMigrationName[] =
3253 "Enable encryption migration of user data";
3254const char kEnableEncryptionMigrationDescription[] =
3255 "If enabled and the device supports ARC, the user will be asked to update "
3256 "the encryption of user data when the user signs in.";
vabr0215a8e2017-03-28 12:47:343257
Blake O'Hare9e9317b22017-10-24 02:49:353258const char kEnableFloatingVirtualKeyboardName[] =
3259 "Enable floating virtual keyboard";
3260const char kEnableFloatingVirtualKeyboardDescription[] =
3261 "If enabled, the keyboard will use floating behavior by default.";
3262
Qiang Xu045aff222018-05-21 23:21:013263const char kEnableFullscreenHandwritingVirtualKeyboardName[] =
3264 "Enable full screen handwriting virtual keyboard";
3265const char kEnableFullscreenHandwritingVirtualKeyboardDescription[] =
3266 "If enabled, the handwriting virtual keyboard will allow user to write "
3267 "anywhere on the screen";
3268
Xiaohui Chenfb0943e2018-10-16 22:44:373269const char kEnableGoogleAssistantName[] = "Enable Google Assistant";
3270const char kEnableGoogleAssistantDescription[] =
3271 "Enable an experimental Assistant implementation that will work on all "
3272 "Chromebooks.";
3273
Qiang Xu045aff222018-05-21 23:21:013274const char kEnableHomeLauncherName[] = "Enable home launcher";
3275const char kEnableHomeLauncherDescription[] =
3276 "Enable home launcher in tablet mode.";
3277
Lei Zhang0ca70ea2018-09-07 17:51:013278const char kEnableHomeLauncherGesturesName[] = "Enable home launcher gestures";
3279const char kEnableHomeLauncherGesturesDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013280 "Enables using gestures to hide or show the home launcher.";
3281
Brett Wilson7b44537e2017-08-18 01:38:283282const char kEnableImeMenuName[] = "Enable opt-in IME menu";
3283const char kEnableImeMenuDescription[] =
3284 "Enable access to the new IME menu in the Language Settings page.";
vabr0215a8e2017-03-28 12:47:343285
Becca Hughes3d63a91d2018-10-17 19:30:393286const char kEnableMediaSessionAshMediaKeysName[] =
3287 "Enable media session media key handling";
3288const char kEnableMediaSessionAshMediaKeysDescription[] =
3289 "Enable the media session service to handle media keys. This requires "
3290 "the audio focus flag to be enabled too.";
3291
Weidong Guo45836d1b2018-06-27 23:51:163292const char kEnableNewStyleLauncherName[] = "Enable new style launcher.";
3293const char kEnableNewStyleLauncherDescription[] =
3294 "Enables new style UI such as suggestion chips, resizable apps grid, etc. "
3295 "in app launcher.";
3296
Sammie Quon248ccef2018-08-28 23:00:013297const char kEnableOobeRecommendAppsScreenName[] =
3298 "Enable OOBE Recommend Apps Screen";
3299const char kEnableOobeRecommendAppsScreenDescription[] =
3300 "Enable the Recommend Apps Screen in OOBE which allows user to install apps"
3301 "from other devices";
3302
Qiang Xu045aff222018-05-21 23:21:013303const char kEnablePerUserTimezoneName[] = "Per-user time zone preferences.";
3304const char kEnablePerUserTimezoneDescription[] =
3305 "Chrome OS system timezone preference is stored and handled for each user "
3306 "individually.";
3307
Vladislav Kaznacheevaa213a02018-10-29 17:54:283308const char kEnablePlayStoreSearchName[] = "Enable Play Store search";
3309const char kEnablePlayStoreSearchDescription[] =
3310 "Enable Play Store search in launcher.";
3311
Qiang Xu045aff222018-05-21 23:21:013312const char kEnableSettingsShortcutSearchName[] =
3313 "Enable Settings shortcut search";
3314const char kEnableSettingsShortcutSearchDescription[] =
3315 "Enable Settings shortcut search in launcher.";
3316
Darren Shen3e49c63d2018-03-28 04:45:503317const char kEnableStylusVirtualKeyboardName[] =
3318 "Enable stylus virtual keyboard";
3319const char kEnableStylusVirtualKeyboardDescription[] =
3320 "If enabled, tapping with a stylus will show the handwriting virtual "
3321 "keyboard.";
3322
Jordy Greenblatt2f23df22018-02-22 19:49:193323const char kEnableUnifiedMultiDeviceSettingsName[] =
3324 "Enable unified MultiDevice settings";
3325const char kEnableUnifiedMultiDeviceSettingsDescription[] =
3326 "If enabled, the Chrome OS Settings UI will include a menu for the unified "
3327 "MultiDevice settings.";
3328
3329const char kEnableUnifiedMultiDeviceSetupName[] =
3330 "Enable unified MultiDevice setup";
3331const char kEnableUnifiedMultiDeviceSetupDescription[] =
3332 "Enable the device to setup all MultiDevice services in a single workflow.";
3333
Darren Shen11c770f312018-06-13 07:36:393334const char kEnableVirtualKeyboardMdUiName[] =
3335 "Enable Material Design virtual keyboard";
3336const char kEnableVirtualKeyboardMdUiDescription[] =
3337 "If enabled, loads the Material Design UI for the virtual keyboard.";
3338
Darren Shen0b4e5802018-07-10 03:12:263339const char kEnableVirtualKeyboardUkmName[] = "Enable UKM for virtual keyboard";
3340const char kEnableVirtualKeyboardUkmDescription[] =
3341 "Enables UKM for virtual keyboard";
3342
Lei Zhang0ca70ea2018-09-07 17:51:013343const char kEnableZeroStateSuggestionsName[] = "Enable Zero State Suggetions";
3344const char kEnableZeroStateSuggestionsDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013345 "Enable Zero State Suggestions feature in Launcher, which will show "
Vladislav Kaznacheevaa213a02018-10-29 17:54:283346 "suggestions when launcher search box is active with an empty query";
Sammie Quon248ccef2018-08-28 23:00:013347
Brett Wilson7b44537e2017-08-18 01:38:283348const char kEolNotificationName[] = "Disable Device End of Life notification.";
3349const char kEolNotificationDescription[] =
3350 "Disable Notifcation when Device is End of Life.";
3351
3352const char kExperimentalAccessibilityFeaturesName[] =
3353 "Experimental accessibility features";
3354const char kExperimentalAccessibilityFeaturesDescription[] =
3355 "Enable additional accessibility features in the Settings page.";
3356
Brett Wilson7b44537e2017-08-18 01:38:283357const char kFileManagerTouchModeName[] = "Files App. touch mode";
3358const char kFileManagerTouchModeDescription[] =
3359 "Touchscreen-specific interactions of the Files app.";
3360
3361const char kFirstRunUiTransitionsName[] =
3362 "Animated transitions in the first-run tutorial";
3363const char kFirstRunUiTransitionsDescription[] =
3364 "Transitions during first-run tutorial are animated.";
3365
Brett Wilson7b44537e2017-08-18 01:38:283366const char kForceEnableStylusToolsName[] = "Force enable stylus features";
3367const char kForceEnableStylusToolsDescription[] =
3368 "Forces display of the stylus tools menu in the shelf and the stylus "
3369 "section in settings, even if there is no attached stylus device.";
3370
3371const char kGestureEditingName[] = "Gesture editing for the virtual keyboard.";
3372const char kGestureEditingDescription[] =
3373 "Enable/Disable gesture editing option in the settings page for the "
3374 "virtual keyboard.";
3375
3376const char kGestureTypingName[] = "Gesture typing for the virtual keyboard.";
3377const char kGestureTypingDescription[] =
3378 "Enable/Disable gesture typing option in the settings page for the virtual "
3379 "keyboard.";
3380
3381const char kInputViewName[] = "Input views";
3382const char kInputViewDescription[] =
3383 "Enable IME extensions to supply custom views for user input such as "
3384 "virtual keyboards.";
3385
Megumi Hattori5a0d4182018-03-06 11:09:503386const char kLockScreenNotificationName[] = "Lock screen notification";
3387const char kLockScreenNotificationDescription[] =
3388 "Enable notifications on the lock screen.";
3389
Qiang Xu045aff222018-05-21 23:21:013390const char kMaterialDesignInkDropAnimationSpeedName[] =
3391 "Material design ink drop animation speed";
3392const char kMaterialDesignInkDropAnimationSpeedDescription[] =
3393 "Sets the speed of the experimental visual feedback animations for "
3394 "material design.";
3395const char kMaterialDesignInkDropAnimationFast[] = "Fast";
3396const char kMaterialDesignInkDropAnimationSlow[] = "Slow";
3397
Brett Wilson7b44537e2017-08-18 01:38:283398const char kMemoryPressureThresholdName[] =
3399 "Memory discard strategy for advanced pressure handling";
3400const char kMemoryPressureThresholdDescription[] =
3401 "Memory discarding strategy to use";
3402const char kConservativeThresholds[] =
3403 "Conservative memory pressure release strategy";
3404const char kAggressiveCacheDiscardThresholds[] =
3405 "Aggressive cache release strategy";
3406const char kAggressiveTabDiscardThresholds[] =
3407 "Aggressive tab release strategy";
3408const char kAggressiveThresholds[] =
3409 "Aggressive tab and cache release strategy";
3410
3411const char kMtpWriteSupportName[] = "MTP write support";
3412const char kMtpWriteSupportDescription[] =
3413 "MTP write support in File System API (and file manager). In-place editing "
3414 "operations are not supported.";
3415
Kyle Horimoto027590fb2018-02-13 22:19:483416const char kMultiDeviceApiName[] = "Enables the MultiDevice API";
3417const char kMultiDeviceApiDescription[] =
3418 "Enable Mojo-based API which provides synced device metadata and the "
3419 "ability to connect to other devices associated the logged-in Google "
3420 "account.";
3421
vabr0215a8e2017-03-28 12:47:343422const char kNetworkPortalNotificationName[] =
3423 "Notifications about captive portals";
vabr0215a8e2017-03-28 12:47:343424const char kNetworkPortalNotificationDescription[] =
3425 "If enabled, notification is displayed when device is connected to a "
3426 "network behind captive portal.";
3427
Brett Wilson7b44537e2017-08-18 01:38:283428const char kNewKoreanImeName[] = "New Korean IME";
3429const char kNewKoreanImeDescription[] =
3430 "New Korean IME, which is based on Google Input Tools' HMM engine.";
vabr0215a8e2017-03-28 12:47:343431
Anand K. Mistrydb5e0102018-10-04 04:24:003432const char kNewZipUnpackerName[] = "ZIP Archiver (unpacking)";
Brett Wilson7b44537e2017-08-18 01:38:283433const char kNewZipUnpackerDescription[] =
Anand K. Mistrydb5e0102018-10-04 04:24:003434 "Use the ZIP Archiver for mounting/unpacking ZIP files";
vabr0215a8e2017-03-28 12:47:343435
Qiang Xu045aff222018-05-21 23:21:013436const char kOfficeEditingComponentAppName[] =
3437 "Office Editing for Docs, Sheets & Slides";
3438const char kOfficeEditingComponentAppDescription[] =
3439 "Office Editing for Docs, Sheets & Slides for testing purposes.";
3440
Brett Wilson7b44537e2017-08-18 01:38:283441const char kPhysicalKeyboardAutocorrectName[] = "Physical keyboard autocorrect";
3442const char kPhysicalKeyboardAutocorrectDescription[] =
3443 "Enable physical keyboard autocorrect for US keyboard, which can provide "
3444 "suggestions as typing on physical keyboard.";
vabr0215a8e2017-03-28 12:47:343445
3446const char kPrinterProviderSearchAppName[] =
3447 "Chrome Web Store Gallery app for printer drivers";
vabr0215a8e2017-03-28 12:47:343448const char kPrinterProviderSearchAppDescription[] =
3449 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:193450 "searches Chrome Web Store for extensions that support printing to a USB "
3451 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:343452
Brett Wilson7b44537e2017-08-18 01:38:283453const char kQuickUnlockPinName[] = "Quick Unlock (PIN)";
3454const char kQuickUnlockPinDescription[] =
3455 "Enabling PIN quick unlock allows you to use a PIN to unlock your ChromeOS "
3456 "device on the lock screen after you have signed into your device.";
3457const char kQuickUnlockPinSignin[] = "Enable PIN when logging in.";
3458const char kQuickUnlockPinSigninDescription[] =
3459 "Enabling PIN allows you to use a PIN to sign in and unlock your ChromeOS "
3460 "device. After changing this flag PIN needs to be set up again.";
3461const char kQuickUnlockFingerprint[] = "Quick Unlock (Fingerprint)";
3462const char kQuickUnlockFingerprintDescription[] =
3463 "Enabling fingerprint quick unlock allows you to setup and use a "
3464 "fingerprint to unlock your Chromebook on the lock screen after you have "
3465 "signed into your device.";
vabr0215a8e2017-03-28 12:47:343466
James Cook0ba192bf2017-12-01 20:53:113467const char kShowTapsName[] = "Show taps";
3468const char kShowTapsDescription[] =
3469 "Draws a circle at each touch point, which makes touch points more obvious "
3470 "when projecting or mirroring the display. Similar to the Android OS "
3471 "developer option.";
3472
3473const char kShowTouchHudName[] = "Show HUD for touch points";
3474const char kShowTouchHudDescription[] =
3475 "Shows a trail of colored dots for the last few touch points. Pressing "
3476 "Ctrl-Alt-I shows a heads-up display view in the top-left corner. Helps "
3477 "debug hardware issues that generate spurious touch events.";
3478
James Cook28d7c482018-09-07 21:00:543479const char kSingleProcessMashName[] =
3480 "In-process window service (SingleProcessMash)";
3481const char kSingleProcessMashDescription[] =
3482 "Runs the system UI (ash) as a mojo service, but inside the browser "
3483 "process. The browser uses the mojo window service (ws) APIs.";
3484
Ahmed Fakhry58e6ef542018-09-04 18:05:383485const char kSlideTopChromeWithPageScrollsName[] =
3486 "Slide top-chrome with page scrolls";
3487const char kSlideTopChromeWithPageScrollsDescription[] =
3488 "If enabled, page scrolls in tablet mode will also scroll the top-chrome"
3489 " UI.";
3490
Jorge Gil5a8ccde2018-07-10 01:46:213491const char kSmartTextSelectionName[] = "Smart Text Selection";
3492const char kSmartTextSelectionDescription[] =
3493 "Shows quick actions for text "
3494 "selections in the context menu.";
3495
Chung-Sheng Wu468b0b32017-09-01 14:41:573496const char kSysInternalsName[] = "Enable Sys-Internals";
3497const char kSysInternalsDescription[] =
3498 "If enabled, user can monitor system information at "
3499 "chrome://sys-internals.";
3500
Brett Wilson7b44537e2017-08-18 01:38:283501const char kTetherName[] = "Instant Tethering";
3502const char kTetherDescription[] =
3503 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
3504 "phone to share its Internet connection with this device.";
stanisc14bed0b132017-05-10 17:46:373505
Brett Wilson7b44537e2017-08-18 01:38:283506const char kTouchscreenCalibrationName[] =
3507 "Enable/disable touchscreen calibration option in material design settings";
3508const char kTouchscreenCalibrationDescription[] =
3509 "If enabled, the user can calibrate the touch screen displays in "
3510 "chrome://settings/display.";
yhanadac5bff5b2017-05-18 06:37:093511
Qiang Xu045aff222018-05-21 23:21:013512const char kUiDevToolsName[] = "Enable native UI inspection";
3513const char kUiDevToolsDescription[] =
3514 "Enables inspection of native UI elements. For local inspection use "
3515 "chrome://inspect#other";
3516
3517const char kUiShowCompositedLayerBordersName[] =
3518 "Show UI composited layer borders";
3519const char kUiShowCompositedLayerBordersDescription[] =
3520 "Show border around composited layers created by UI.";
3521const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
3522const char kUiShowCompositedLayerBordersSurface[] = "Surface";
3523const char kUiShowCompositedLayerBordersLayer[] = "Layer";
3524const char kUiShowCompositedLayerBordersAll[] = "All";
3525
3526const char kUiSlowAnimationsName[] = "Slow UI animations";
3527const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
3528
Mitsuru Oshima63d3f2a2017-08-23 00:12:113529// Force UI Mode
3530const char kUiModeName[] = "Force Ui Mode";
3531const char kUiModeDescription[] =
3532 R"*(This flag can be used to force a certain mode on to a chromebook, )*"
3533 R"*(despite its current orientation. "Tablet" means that the )*"
3534 R"*(chromebook will act as if it were in tablet mode. "Clamshell" )*"
3535 R"*(means that the chromebook will act as if it were in clamshell )*"
3536 R"*(mode . "Auto" means that the chromebook will alternate between )*"
3537 R"*(the two, based on its orientation.)*";
Min Chenfd25cd22018-11-06 01:50:513538const char kUiModeTablet[] = "Tablet";
Mitsuru Oshima63d3f2a2017-08-23 00:12:113539const char kUiModeClamshell[] = "Clamshell";
3540const char kUiModeAuto[] = "Auto (default)";
3541
Sonny Sasaka7fecfeda2018-07-11 23:47:553542const char kUnfilteredBluetoothDevicesName[] = "Unfiltered Bluetooth devices";
3543const char kUnfilteredBluetoothDevicesDescription[] =
3544 "Shows all Bluetooth devices in UI (System Tray/Settings Page.)";
3545
Allen Webbcdc8e69d2018-09-12 20:36:003546const char kUsbguardName[] = "Block new USB devices at the lock screen.";
3547const char kUsbguardDescription[] =
3548 "Prevents newly connected USB devices from operating at the lock screen"
3549 " until Chrome OS is unlocked to protect against malicious USB devices."
3550 " Already connected USB devices will continue to function.";
3551
Micah Morton79a7b522018-09-27 15:15:303552const char kShillSandboxingName[] =
3553 "Run shill, the ChromeOS network manager, in a sandbox.";
3554const char kShillSandboxingDescription[] =
3555 "Causes shill to be run as user/group 'shill', instead of 'root'.";
3556
James Cooka1bcfa9a2018-01-30 00:18:403557const char kUseMashName[] = "Out-of-process system UI (mash)";
3558const char kUseMashDescription[] =
3559 "Runs the mojo UI service (mus) and the ash window manager and system UI "
3560 "in a separate process.";
Brett Wilson7b44537e2017-08-18 01:38:283561
Miguel Casas-Sanchez8ba32f92017-11-07 05:03:343562// TODO(mcasas): remove after https://crbug.com/771345.
3563const char kUseMonitorColorSpaceName[] = "Use monitor color space";
3564const char kUseMonitorColorSpaceDescription[] =
3565 "Enables Chrome to use the color space information provided by the monitor"
3566 " instead of the default sRGB color space.";
3567
Andres Calderon Jaramillo43c0e8a2018-08-21 02:46:233568const char kVaapiJpegImageDecodeAccelerationName[] =
3569 "VA-API JPEG decode acceleration for images";
3570const char kVaapiJpegImageDecodeAccelerationDescription[] =
3571 "Enable or disable decode acceleration of JPEG images (as opposed to camera"
3572 " captures) using the VA-API.";
3573
Brett Wilson7b44537e2017-08-18 01:38:283574const char kVideoPlayerChromecastSupportName[] =
3575 "Experimental Chromecast support for Video Player";
3576const char kVideoPlayerChromecastSupportDescription[] =
3577 "This option enables experimental Chromecast support for Video Player app "
3578 "on ChromeOS.";
3579
3580const char kVirtualKeyboardName[] = "Virtual Keyboard";
3581const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
3582
3583const char kVirtualKeyboardOverscrollName[] = "Virtual Keyboard Overscroll";
3584const char kVirtualKeyboardOverscrollDescription[] =
3585 "Enables virtual keyboard overscroll support.";
3586
3587const char kVoiceInputName[] = "Voice input on virtual keyboard";
3588const char kVoiceInputDescription[] =
3589 "Enables voice input on virtual keyboard.";
3590
3591const char kWakeOnPacketsName[] = "Wake On Packets";
3592const char kWakeOnPacketsDescription[] =
3593 "Enables waking the device based on the receipt of some network packets.";
orenb21da031c2017-06-30 21:24:203594
yhanadac5bff5b2017-05-18 06:37:093595#endif // defined(OS_CHROMEOS)
3596
Brett Wilson7b44537e2017-08-18 01:38:283597// Random platform combinations -----------------------------------------------
3598
3599#if defined(OS_WIN) || defined(OS_LINUX)
3600
3601const char kEnableInputImeApiName[] = "Enable Input IME API";
3602const char kEnableInputImeApiDescription[] =
3603 "Enable the use of chrome.input.ime API.";
3604
3605#endif // defined(OS_WIN) || defined(OS_LINUX)
3606
3607#if defined(OS_WIN) || defined(OS_MACOSX)
3608
3609const char kAutomaticTabDiscardingName[] = "Automatic tab discarding";
3610const char kAutomaticTabDiscardingDescription[] =
3611 "If enabled, tabs get automatically discarded from memory when the system "
3612 "memory is low. Discarded tabs are still visible on the tab strip and get "
3613 "reloaded when clicked on. Info about discarded tabs can be found at "
3614 "chrome://discards.";
3615
3616#endif // defined(OS_WIN) || defined(OS_MACOSX)
3617
lanwei83f54452018-06-21 23:51:043618#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3619
3620const char kDirectManipulationStylusName[] = "Direct Manipulation Stylus";
3621const char kDirectManipulationStylusDescription[] =
3622 "If enabled, Chrome will scroll web pages on stylus drag.";
3623
3624#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3625
Justin Donnelly110e40c2018-06-01 21:48:433626const char kExperimentalUiName[] = "Use all upcoming UI features";
3627const char kExperimentalUiDescription[] = "Use all upcoming UI features.";
Elly Fong-Jonesdfaf8532018-05-29 18:20:483628
Brett Wilson7b44537e2017-08-18 01:38:283629// Feature flags --------------------------------------------------------------
3630
3631#if BUILDFLAG(ENABLE_VR)
3632
David Dorwin5a496c32017-11-17 01:45:053633const char kWebVrVsyncAlignName[] = "WebVR VSync-aligned timing";
3634const char kWebVrVsyncAlignDescription[] =
3635 "Align WebVR application rendering with VSync for smoother animations.";
3636
Bill Orr103ed272018-02-14 21:23:053637#if BUILDFLAG(ENABLE_OCULUS_VR)
3638const char kOculusVRName[] = "Oculus hardware support";
3639const char kOculusVRDescription[] =
3640 "If enabled, Chrome will use Oculus devices for VR (supported only on "
3641 "Windows 10 or later).";
3642#endif // ENABLE_OCULUS_VR
3643
Bill Orr49527562017-11-22 16:58:483644#if BUILDFLAG(ENABLE_OPENVR)
3645const char kOpenVRName[] = "OpenVR hardware support";
3646const char kOpenVRDescription[] =
Bill Orr5056e692018-01-17 02:08:073647 "If enabled, Chrome will use OpenVR devices for VR (supported only on "
3648 "Windows 10 or later).";
Bill Orr49527562017-11-22 16:58:483649#endif // ENABLE_OPENVR
3650
Bill Orrecfb9fe2018-10-02 00:11:103651#if BUILDFLAG(ENABLE_ISOLATED_XR_SERVICE)
3652const char kXRSandboxName[] = "XR device sandboxing";
3653const char kXRSandboxDescription[] =
3654 "If enabled, Chrome will host VR APIs in a restricted process on desktop.";
3655#endif // ENABLE_ISOLATED_XR_SERVICE
3656
Brett Wilson7b44537e2017-08-18 01:38:283657#endif // ENABLE_VR
3658
Nico Weberaf3b00b2017-09-11 17:58:173659#if BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:283660
3661const char kNaclDebugMaskName[] =
3662 "Restrict Native Client GDB-based debugging by pattern";
3663const char kNaclDebugMaskDescription[] =
3664 "Restricts Native Client application GDB-based debugging by URL of "
3665 "manifest file. Native Client GDB-based debugging must be enabled for this "
3666 "option to work.";
3667const char kNaclDebugMaskChoiceDebugAll[] = "Debug everything.";
3668const char kNaclDebugMaskChoiceExcludeUtilsPnacl[] =
3669 "Debug everything except secure shell and the PNaCl translator.";
3670const char kNaclDebugMaskChoiceIncludeDebug[] =
3671 "Debug only if manifest URL ends with debug.nmf.";
3672
3673const char kNaclDebugName[] = "Native Client GDB-based debugging";
3674const char kNaclDebugDescription[] =
3675 "Enable GDB debug stub. This will stop a Native Client application on "
3676 "startup and wait for nacl-gdb (from the NaCl SDK) to attach to it.";
3677
3678const char kNaclName[] = "Native Client";
3679const char kNaclDescription[] =
3680 "Support Native Client for all web applications, even those that were not "
3681 "installed from the Chrome Web Store.";
3682
3683const char kPnaclSubzeroName[] = "Force PNaCl Subzero";
3684const char kPnaclSubzeroDescription[] =
3685 "Force the use of PNaCl's fast Subzero translator for all pexe files.";
3686
Nico Weberaf3b00b2017-09-11 17:58:173687#endif // BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:283688
Brett Wilson7b44537e2017-08-18 01:38:283689const char kWebrtcH264WithOpenh264FfmpegName[] =
3690 "WebRTC H.264 software video encoder/decoder";
3691const char kWebrtcH264WithOpenh264FfmpegDescription[] =
3692 "When enabled, an H.264 software video encoder/decoder pair is included. "
3693 "If a hardware encoder/decoder is also available it may be used instead of "
3694 "this encoder/decoder.";
3695
Henrik Boström386afc6d62018-10-08 07:47:153696const char kWebrtcUnifiedPlanByDefaultName[] =
3697 "WebRTC: Use Unified Plan SDP Semantics by default";
3698const char kWebrtcUnifiedPlanByDefaultDescription[] =
3699 "RTCPeerConnections generate and expect the standards compliant SDP format "
3700 "called \"Unified Plan\", unless \"Plan B\" is explicitly specified by "
3701 "passing {sdpSemantics:'plan-b'} to the RTCPeerConnection constructor. "
3702 "RTCRtpTransceiver support is also enabled in Unified Plan.";
3703
Brett Wilson7b44537e2017-08-18 01:38:283704#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3705
3706const char kAutofillCreditCardUploadName[] =
3707 "Enable offering upload of Autofilled credit cards";
3708const char kAutofillCreditCardUploadDescription[] =
3709 "Enables a new option to upload credit cards to Google Payments for sync "
3710 "to all Chrome devices.";
3711
3712#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3713
Becca Hughesdc96e842018-05-04 22:48:283714#if defined(OS_ANDROID)
3715
3716const char kDisplayCutoutAPIName[] =
3717 "Enable support for the Display Cutout API";
3718const char kDisplayCutoutAPIDescription[] =
3719 "Enables developers to support devices that have a display cutout.";
3720
3721#endif // defined(OS_ANDROID)
3722
Brett Wilson7b44537e2017-08-18 01:38:283723// ============================================================================
3724// Don't just add flags to the end, put them in the right section in
3725// alphabetical order just like the header file.
3726// ============================================================================
3727
vabr0215a8e2017-03-28 12:47:343728} // namespace flag_descriptions