blob: 38a979a7148704cb486f2bbee54382bf2dd198f6 [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
Tetsui Ohkubo2852b952018-02-23 04:12:0180const char kSystemTrayUnifiedName[] = "New system menu";
81const char kSystemTrayUnifiedDescription[] =
Tetsui Ohkubof860b8e2018-02-16 03:50:5582 "Enable the experimental system menu.";
83
Khushalba202212017-07-12 19:53:4984const char kAsyncImageDecodingName[] = "AsyncImageDecoding";
85const char kAsyncImageDecodingDescription[] =
86 "Enables asynchronous decoding of images from raster for web content";
87
Roger McFarlane2eceba982018-05-18 01:37:1188const char kAutofillCacheQueryResponsesName[] =
89 "Cache Autofill Query Responses";
90const char kAutofillCacheQueryResponsesDescription[] =
91 "When enabled, autofill will cache the responses it receives from the "
92 "crowd-sourced field type prediction server.";
93
Jeffrey Cohen05cdafa392018-08-15 20:49:1794const char kAutofillEnableCompanyNameName[] =
95 "Enable Autofill Company Name field";
96const char kAutofillEnableCompanyNameDescription[] =
97 "When enabled, Company Name fields will be auto filled";
98
sebsge35b762c2018-03-29 20:33:2799const char kAutofillDynamicFormsName[] = "Autofill Dynamic Forms";
100const char kAutofillDynamicFormsDescription[] =
101 "Allows autofill to fill dynamically changing forms";
102
Anne Lime625362e2018-08-29 03:13:25103const char kAutofillNoLocalSaveOnUploadSuccessName[] =
104 "Disable locally saving card when credit card upload succeeds";
105const char kAutofillNoLocalSaveOnUploadSuccessDescription[] =
106 "When enabled, no local copy of server card will be saved when credit card "
107 "upload succeeds.";
108
Parastoo Geranmayeh2dcd14f92018-06-01 17:08:39109const char kAutofillPrefilledFieldsName[] = "Autofill Prefilled Fields";
110const char kAutofillPrefilledFieldsDescription[] =
111 "Allows autofill to fill fields previously filled by the website";
112
Lei Zhang0ca70ea2018-09-07 17:51:01113const char kAutofillPreviewStyleExperimentName[] =
Fabio Tirelo9b423c7b2018-08-15 14:32:18114 "Autofill Preview Style Experiment";
Lei Zhang0ca70ea2018-09-07 17:51:01115const char kAutofillPreviewStyleExperimentDescription[] =
Fabio Tirelo9b423c7b2018-08-15 14:32:18116 "Allows experimentation with the Autofill field preview's style.";
117
Parastoo Geranmayeh071d725c2018-06-26 17:35:22118const char kAutofillRationalizeRepeatedServerPredictionsName[] =
119 "Autofill Rationalization of Repeated Server Field Type Predictions";
120const char kAutofillRationalizeRepeatedServerPredictionsDescription[] =
121 "Allows autofill to rationalize repeated server field type predictions.";
122
Roger McFarlane1a37d7b2018-04-20 22:45:19123const char kAutofillEnforceMinRequiredFieldsForHeuristicsName[] =
124 "Autofill Enforce Min Required Fields For Heuristics";
125const char kAutofillEnforceMinRequiredFieldsForHeuristicsDescription[] =
126 "When enabled, autofill will generally require a form to have at least 3 "
127 "fields before allowing heuristic field-type prediction to occur.";
128
129const char kAutofillEnforceMinRequiredFieldsForQueryName[] =
130 "Autofill Enforce Min Required Fields For Query";
131const char kAutofillEnforceMinRequiredFieldsForQueryDescription[] =
132 "When enabled, autofill will generally require a form to have at least 3 "
133 "fields before querying the autofill server for field-type predictions.";
134
135const char kAutofillEnforceMinRequiredFieldsForUploadName[] =
136 "Autofill Enforce Min Required Fields For Upload";
137const char kAutofillEnforceMinRequiredFieldsForUploadDescription[] =
138 "When enabled, autofill will generally require a form to have at least 3 "
139 "fillable fields before uploading field-type votes for that form.";
140
Moe Ahmadid3ddfcb2018-04-20 19:51:08141const char kAutofillRestrictUnownedFieldsToFormlessCheckoutName[] =
142 "Restrict formless form extraction";
143const char kAutofillRestrictUnownedFieldsToFormlessCheckoutDescription[] =
144 "Restrict extraction of formless forms to checkout flows";
145
Brett Wilsonf27ff602017-07-07 22:28:47146const char kAutoplayPolicyName[] = "Autoplay policy";
147const char kAutoplayPolicyDescription[] =
148 "Policy used when deciding if audio or video is allowed to autoplay.";
149
150const char kAutoplayPolicyUserGestureRequiredForCrossOrigin[] =
151 "User gesture is required for cross-origin iframes.";
152const char kAutoplayPolicyNoUserGestureRequired[] =
153 "No user gesture is required.";
154const char kAutoplayPolicyUserGestureRequired[] = "User gesture is required.";
155const char kAutoplayPolicyDocumentUserActivation[] =
156 "Document user activation is required.";
157
Lei Zhang0ca70ea2018-09-07 17:51:01158const char kAv1DecoderName[] = "Enable AV1 video decoding.";
159const char kAv1DecoderDescription[] =
Johanne0cc6902017-11-16 00:23:50160 "Allow decoding of files with the AV1 video codec.";
161
Maya Lekova4bbfdb7f2018-10-16 08:15:03162const char kAwaitOptimizationName[] = "Await optimization";
163const char kAwaitOptimizationDescription[] =
164 "Enables await taking 1 tick on the microtask queue.";
165
Brett Wilsonf27ff602017-07-07 22:28:47166const char kBleAdvertisingInExtensionsName[] = "BLE Advertising in Chrome Apps";
167const char kBleAdvertisingInExtensionsDescription[] =
168 "Enables BLE Advertising in Chrome Apps. BLE Advertising might interfere "
169 "with regular use of Bluetooth Low Energy features.";
170
Charles Harrisond629cc62017-10-05 01:39:54171const char kBlockTabUndersName[] = "Block tab-unders";
172const char kBlockTabUndersDescription[] =
173 "Blocks tab-unders in Chrome with some native UI to allow the user to "
174 "proceed.";
175
Brett Wilsonf27ff602017-07-07 22:28:47176const char kBrowserTaskSchedulerName[] = "Task Scheduler";
177const char kBrowserTaskSchedulerDescription[] =
178 "Enables redirection of some task posting APIs to the task scheduler.";
179
Carlos IL766fbc882018-02-16 02:34:52180const char kBundledConnectionHelpName[] = "Bundled Connection Help";
181const char kBundledConnectionHelpDescription[] =
Carlos ILaafcd73a2018-07-10 20:08:37182 "Enables or disables redirection to local help content for users who get "
183 "an interstitial after clicking the 'Learn More' link on a previous "
184 "interstitial.";
Carlos IL766fbc882018-02-16 02:34:52185
Brett Wilsonf27ff602017-07-07 22:28:47186const char kBypassAppBannerEngagementChecksName[] =
187 "Bypass user engagement checks";
188const char kBypassAppBannerEngagementChecksDescription[] =
189 "Bypasses user engagement checks for displaying app banners, such as "
190 "requiring that users have visited the site before and that the banner "
191 "hasn't been shown recently. This allows developers to test that other "
192 "eligibility requirements for showing app banners, such as having a "
193 "manifest, are met.";
194
Miguel Casas454d9cf2018-06-28 16:25:00195const char kCanvas2DImageChromiumName[] = "Canvas 2D Image Chromium";
196const char kCanvas2DImageChromiumDescription[] =
197 "Allows for using CHROMIUM_image GLES2 extension for HTML Canvas Contexts";
198
Brett Wilsonf27ff602017-07-07 22:28:47199const char kCastStreamingHwEncodingName[] =
200 "Cast Streaming hardware video encoding";
201const char kCastStreamingHwEncodingDescription[] =
202 "This option enables support in Cast Streaming for encoding video streams "
203 "using platform hardware.";
204
Amber Won478561d2017-08-19 01:02:59205const char kClickToOpenPDFName[] = "Click to open embedded PDFs";
206const char kClickToOpenPDFDescription[] =
207 "When the PDF plugin is unavailable, show a click-to-open placeholder for "
208 "embedded PDFs.";
209
Gary Kacmarcikfb69b212017-11-14 03:41:08210const char kClipboardContentSettingName[] = "Clipboard content setting";
211const char kClipboardContentSettingDescription[] =
212 "Enables a site-wide permission in the UI which controls access to the "
213 "asynchronous clipboard web API";
214
Brett Wilsonf27ff602017-07-07 22:28:47215const char kCloudImportName[] = "Cloud Import";
216const char kCloudImportDescription[] = "Allows the cloud-import feature.";
217
rbpotter9990eb42018-07-12 05:34:59218const char kCloudPrinterHandlerName[] = "Enable Cloud Printer Handler";
219const char kCloudPrinterHandlerDescription[] =
220 "Use the new cloud printer handler for communicating with the cloud "
221 "print server, instead of the cloud print interface in the Print "
222 "Preview WebUI.";
223
Tanja Gornakb0985dd2018-10-11 17:24:40224const char kFCMInvalidationsName[] =
225 "Enable invalidations delivery via new FCM based protocol";
226const char kFCMInvalidationsDescription[] =
227 "Use the new FCM-based protocol for deliveling invalidations";
228
Christopher Cameronceb8727d2017-09-07 23:53:16229const char kForceColorProfileSRGB[] = "sRGB";
230const char kForceColorProfileP3[] = "Display P3 D65";
231const char kForceColorProfileColorSpin[] = "Color spin with gamma 2.4";
232const char kForceColorProfileHdr[] = "scRGB linear (HDR where available)";
233
234const char kForceColorProfileName[] = "Force color profile";
235const char kForceColorProfileDescription[] =
236 "Forces Chrome to use a specific color profile instead of the color "
237 "of the window's current monitor, as specified by the operating system.";
238
Brett Wilsonf27ff602017-07-07 22:28:47239const char kCompositedLayerBordersName[] = "Composited render layer borders";
240const char kCompositedLayerBordersDescription[] =
241 "Renders a border around composited Render Layers to help debug and study "
242 "layer compositing.";
243
Theresacd5aaec2018-08-27 20:32:13244const char kContextualSuggestionsAlternateCardLayoutName[] =
245 "Contextual Suggestions Alternate Card Layout";
246const char kContextualSuggestionsAlternateCardLayoutDescription[] =
247 "If enabled, use an alternate card layout for contextual suggestions.";
248
Theresac34db2d2018-06-28 00:03:11249const char kContextualSuggestionsButtonName[] = "Contextual Suggestions Button";
250const char kContextualSuggestionsButtonDescription[] =
251 "If enabled, shows a button to trigger contextual suggestions.";
252
Theresae308b9e2018-10-10 15:57:40253const char kContextualSuggestionsIPHReverseScrollName[] =
254 "Contextual Suggestions IPH Reverse Scroll";
255const char kContextualSuggestionsIPHReverseScrollDescription[] =
256 "Require a reverse scroll before showing in-product help for contextual "
257 "suggestions.";
258
Theresa0f2947b92018-07-02 21:27:58259const char kContextualSuggestionsOptOutName[] =
260 "Contextual Suggestions Opt-out";
261const char kContextualSuggestionsOptOutDescription[] =
262 "If enabled, allows the user to opt out of contextual suggestions.";
263
Brett Wilsonf27ff602017-07-07 22:28:47264const char kCreditCardAssistName[] = "Credit Card Assisted Filling";
265const char kCreditCardAssistDescription[] =
266 "Enable assisted credit card filling on certain sites.";
267
268const char kCrossProcessGuestViewIsolationName[] =
269 "Cross process frames for guests";
270const char kCrossProcessGuestViewIsolationDescription[] =
271 "Highly experimental where guests such as <webview> are implemented on "
272 "the out-of-process iframe infrastructure.";
273
Thanh Le659cb102017-12-20 22:00:19274const char kDataSaverServerPreviewsName[] = "Data Saver Server Previews";
275const char kDataSaverServerPreviewsDescription[] =
276 "Allow the Data Reduction Proxy to serve previews.";
Brett Wilsonf27ff602017-07-07 22:28:47277
278const char kDatasaverPromptName[] = "Cellular Data Saver Prompt";
279const char kDatasaverPromptDescription[] =
280 "Enables a prompt, which appears when a cellular network connection is "
281 "detected, to take the user to the Data Saver extension page on Chrome Web "
282 "Store.";
283const char kDatasaverPromptDemoMode[] = "Demo mode";
284
Wez54dc71b2018-04-17 00:42:34285#if DCHECK_IS_CONFIGURABLE
286const char kDcheckIsFatalName[] = "DCHECKs are fatal";
287const char kDcheckIsFatalDescription[] =
288 "By default Chrome will evaluate in this build, but only log failures, "
289 "rather than crashing. If enabled, DCHECKs will crash the calling process.";
290#endif // DCHECK_IS_CONFIGURABLE
291
Brett Wilsonf27ff602017-07-07 22:28:47292const char kDebugPackedAppName[] = "Debugging for packed apps";
293const char kDebugPackedAppDescription[] =
294 "Enables debugging context menu options such as Inspect Element for packed "
295 "applications.";
296
297const char kDefaultTileHeightName[] = "Default tile height";
298const char kDefaultTileHeightDescription[] = "Specify the default tile height.";
299const char kDefaultTileHeightShort[] = "128";
300const char kDefaultTileHeightTall[] = "256";
301const char kDefaultTileHeightGrande[] = "512";
302const char kDefaultTileHeightVenti[] = "1024";
303
304const char kDefaultTileWidthName[] = "Default tile width";
305const char kDefaultTileWidthDescription[] = "Specify the default tile width.";
306const char kDefaultTileWidthShort[] = "128";
307const char kDefaultTileWidthTall[] = "256";
308const char kDefaultTileWidthGrande[] = "512";
309const char kDefaultTileWidthVenti[] = "1024";
310
311const char kDebugShortcutsName[] = "Debugging keyboard shortcuts";
312const char kDebugShortcutsDescription[] =
313 "Enables additional keyboard shortcuts that are useful for debugging Ash.";
314
315const char kDeviceDiscoveryNotificationsName[] =
316 "Device Discovery Notifications";
317const char kDeviceDiscoveryNotificationsDescription[] =
318 "Device discovery notifications on local network.";
319
320const char kDevtoolsExperimentsName[] = "Developer Tools experiments";
321const char kDevtoolsExperimentsDescription[] =
322 "Enables Developer Tools experiments. Use Settings panel in Developer "
323 "Tools to toggle individual experiments.";
324
325const char kDisableAudioForDesktopShareName[] =
326 "Disable Audio For Desktop Share";
327const char kDisableAudioForDesktopShareDescription[] =
328 "With this flag on, desktop share picker window will not let the user "
329 "choose whether to share audio.";
330
Chris Palmer917bc052018-03-14 19:28:31331const char kDisablePushStateThrottleName[] = "Disable pushState throttling";
332const char kDisablePushStateThrottleDescription[] =
333 "Disables throttling of history.pushState and history.replaceState method "
334 "calls.";
335
Brett Wilsonf27ff602017-07-07 22:28:47336const char kDisableTabForDesktopShareName[] =
337 "Disable Desktop Share with tab source";
338const char kDisableTabForDesktopShareDescription[] =
339 "This flag controls whether users can choose a tab for desktop share.";
340
341const char kDisallowDocWrittenScriptsUiName[] =
342 "Block scripts loaded via document.write";
343const char kDisallowDocWrittenScriptsUiDescription[] =
344 "Disallows fetches for third-party parser-blocking scripts inserted into "
345 "the main frame via document.write.";
346
Christopher Thompson2ffffa2c2018-05-18 23:06:37347const char kDisallowUnsafeHttpDownloadsName[] =
348 "Block unsafe downloads over insecure connections";
349const char kDisallowUnsafeHttpDownloadsNameDescription[] =
350 "Disallows downloads of unsafe files (files that can potentially execute "
351 "code), where the final download origin or any origin in the redirect "
352 "chain is insecure.";
353
Brett Wilsonf27ff602017-07-07 22:28:47354const char kDriveSearchInChromeLauncherName[] =
355 "Drive Search in Chrome App Launcher";
356const char kDriveSearchInChromeLauncherDescription[] =
357 "Files from Drive will show up when searching the Chrome App Launcher.";
358
Brett Wilsonf27ff602017-07-07 22:28:47359const char kEmbeddedExtensionOptionsName[] = "Embedded extension options";
360const char kEmbeddedExtensionOptionsDescription[] =
361 "Display extension options as an embedded element in chrome://extensions "
362 "rather than opening a new tab.";
363
Dominic Mazzoni8ac98962018-05-25 05:44:55364const char kEnableAccessibilityObjectModelName[] = "Accessibility Object Model";
365const char kEnableAccessibilityObjectModelDescription[] =
366 "Enables experimental support for Accessibility Object Model APIs "
367 "that are in development.";
368
Anthony Vallee-Dubois968ae4d2018-03-15 16:56:36369const char kEnableWebPaymentsSingleAppUiSkipName[] =
370 "Enable Web Payments single app UI skip";
371const char kEnableWebPaymentsSingleAppUiSkipDescription[] =
372 "Enable Web Payments to skip showing its UI if the developer specifies a "
373 "single app.";
374
Florian Uunk8c428ea2018-07-18 11:12:52375const char kEnableAutofillAccountWalletStorageName[] =
376 "Enable the account data storage for autofill";
377const char kEnableAutofillAccountWalletStorageDescription[] =
378 "Enable the ephemeral storage for account data for autofill.";
379
Shanfeng Zhang19c16562017-10-17 02:30:40380const char kEnableAutofillCreditCardAblationExperimentDisplayName[] =
381 "Credit card autofill ablation experiment.";
382const char kEnableAutofillCreditCardAblationExperimentDescription[] =
383 "If enabled, credit card autofill suggestions will not display.";
384
Brett Wilsonf27ff602017-07-07 22:28:47385const char kEnableAutofillCreditCardLastUsedDateDisplayName[] =
386 "Display the last used date of a credit card in autofill.";
387const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
388 "If enabled, display the last used date of a credit card in autofill.";
389
Sujie Zhu2cf0e5c2018-07-17 18:00:27390const char kEnableAutofillCreditCardLocalCardMigrationName[] =
391 "Enable migrating local cards to Google Pay";
392const char kEnableAutofillCreditCardLocalCardMigrationDescription[] =
393 "If enabled, prompt migration of locally-saved credit cards to Google Pay.";
394
Jared Saulbc672a072018-06-16 05:22:12395const char kEnableAutofillCreditCardUploadEditableCardholderNameName[] =
396 "Make cardholder name editable in dialog during credit card upload";
397const char kEnableAutofillCreditCardUploadEditableCardholderNameDescription[] =
398 "If enabled, in certain situations when offering credit card upload to "
399 "Google Payments, the cardholder name can be edited within the "
400 "offer-to-save dialog, which is prefilled with the name from the signed-in "
401 "Google Account.";
402
Lakshmi Kumar Dabbiru51f1c202018-03-29 22:23:37403const char kEnableAutofillCreditCardUploadGooglePayOnAndroidBrandingName[] =
404 "Enable Google Pay branding when offering credit card upload on Android";
405const char
406 kEnableAutofillCreditCardUploadGooglePayOnAndroidBrandingDescription[] =
407 "If enabled, shows the Google Pay logo and a shorter header message "
408 "when credit card upload to Google Payments is offered on Android.";
409
siyua9a4a8872018-10-05 03:46:56410const char kEnableAutofillLocalCardMigrationShowFeedbackName[] =
411 "Show the upload results dialog after local card migration";
412const char kEnableAutofillLocalCardMigrationShowFeedbackDescription[] =
413 "If enabled, the local card migration offer dialog will remain pending "
414 "after the user clicks the save button. Once migration is finished, "
415 "the dialog will be updated with the results of each card.";
416
tmartinocd414732018-02-12 19:01:01417const char kEnableAutofillNativeDropdownViewsName[] =
418 "Display Autofill Dropdown Using Views";
419const char kEnableAutofillNativeDropdownViewsDescription[] =
420 "If enabled, the Autofill Dropdown will be built natively using Views, "
421 "rather than painted directly to a canvas.";
422
Fabio Tirelo87552e02018-07-06 15:43:21423const char kEnableAutofillSaveCardDialogUnlabeledExpirationDateName[] =
424 "Show unlabeled expiration dates on the save card dialog";
425const char kEnableAutofillSaveCardDialogUnlabeledExpirationDateDescription[] =
426 "If enabled, expiration dates on the save card dialog (both local and "
427 "upstream) are shown without an 'Exp:' label.";
428
Manas Verma99541e52018-08-03 20:37:23429const char kEnableAutofillSaveCardSignInAfterLocalSaveName[] =
430 "Show Sign-In/Sync promo after saving a card locally";
431const char kEnableAutofillSaveCardSignInAfterLocalSaveDescription[] =
432 "If enabled, shows a sign in prompt to the user after the user "
433 "saves a card locally. This also introduces a Manage Cards bubble "
434 "which you can access from the card icon after saving a card.";
435
Jared Saul8a0c1e92018-10-10 18:22:47436const char kEnableAutofillSaveCreditCardUsesStrikeSystemName[] =
437 "Enable limit on offering to save the same credit card repeatedly";
438const char kEnableAutofillSaveCreditCardUsesStrikeSystemDescription[] =
439 "If enabled, prevents popping up the credit card offer-to-save prompt if "
440 "it has repeatedly been ignored, declined, or failed.";
441
Lakshmi Kumar Dabbirua3d0805f2018-05-22 22:04:23442const char kEnableAutofillSendExperimentIdsInPaymentsRPCsName[] =
443 "Send experiment flag IDs in calls to Google Payments";
444const char kEnableAutofillSendExperimentIdsInPaymentsRPCsDescription[] =
445 "If enabled, adds the status of certain experiment variations when making "
446 "calls to Google Payments.";
447
Becca Hughes4d896c42018-05-29 16:58:51448const char kEnableAutoplayIgnoreWebAudioName[] =
449 "Autoplay ignores WebAudio playbacks";
450const char kEnableAutoplayIgnoreWebAudioDescription[] =
451 "If enabled, autoplay restrictions will be ignored for WebAudio.";
452
Becca Hughesc62f6a1d2018-08-16 15:59:47453const char kEnableAutoplayUnifiedSoundSettingsName[] =
454 "Autoplay unified sound settings UI";
455const char kEnableAutoplayUnifiedSoundSettingsDescription[] =
456 "If enabled, shows the new unified autoplay sound settings UI.";
457
Brett Wilsonf27ff602017-07-07 22:28:47458const char kEnableBrotliName[] = "Brotli Content-Encoding.";
459const char kEnableBrotliDescription[] =
460 "Enable Brotli Content-Encoding support.";
461
Qiang Xu0f602fe62017-12-22 01:31:20462const char kEnableCaptivePortalRandomUrl[] = "Captive Portal url Randomization";
463const char kEnableCaptivePortalRandomUrlDescription[] =
464 "Enable Captive Portal URL randomization.";
465
Eriko Kurimoto36975992018-08-09 07:15:13466const char kEnableChromevoxDeveloperOptionName[] =
467 "Enable Chromevox developer option";
468const char kEnableChromevoxDeveloperOptionDescription[] =
469 "This option provides tools for developing in chromevox.";
470
sclittle50e4bb92017-07-08 02:23:03471const char kEnableClientLoFiName[] = "Client-side Lo-Fi previews";
472
473const char kEnableClientLoFiDescription[] =
474 "Enable showing low fidelity images on some pages on slow networks.";
475
Patrick Noland8bc57472018-06-19 21:09:54476const char kEnableCSSFragmentIdentifiersName[] =
477 "Enable CSS Fragment Identifiers";
478const char kEnableCSSFragmentIdentifiersDescription[] =
479 "Enable support for specifying a target element using a css selector in "
480 "the fragment identifier.";
481
David Reveman87b4b692018-03-09 21:22:22482const char kEnableCursorMotionBlurName[] = "Enable Cursor Motion Blur";
483const char kEnableCursorMotionBlurDescription[] =
484 "Enable motion blur effect for the cursor.";
485
Doug Arnett08b4067b2017-10-12 20:14:44486const char kEnableNoScriptPreviewsName[] = "NoScript previews";
487
488const char kEnableNoScriptPreviewsDescription[] =
489 "Enable disabling JavaScript on some pages on slow networks.";
490
Thanh Le2c279fbc2017-11-21 01:25:40491const char kDataReductionProxyServerAlternative1[] = "Use alt. server config 1";
492const char kDataReductionProxyServerAlternative2[] = "Use alt. server config 2";
493const char kDataReductionProxyServerAlternative3[] = "Use alt. server config 3";
494const char kDataReductionProxyServerAlternative4[] = "Use alt. server config 4";
495const char kDataReductionProxyServerAlternative5[] = "Use alt. server config 5";
496const char kDataReductionProxyServerAlternative6[] = "Use alt. server config 6";
497const char kDataReductionProxyServerAlternative7[] = "Use alt. server config 7";
498const char kDataReductionProxyServerAlternative8[] = "Use alt. server config 8";
499const char kDataReductionProxyServerAlternative9[] = "Use alt. server config 9";
500const char kDataReductionProxyServerAlternative10[] =
501 "Use alt. server config 10";
Brett Wilsonf27ff602017-07-07 22:28:47502const char kEnableDataReductionProxyServerExperimentName[] =
503 "Use an alternative Data Saver back end configuration.";
504const char kEnableDataReductionProxyServerExperimentDescription[] =
505 "Enable a different approach to saving data by configuring the back end "
506 "server";
507
508const char kEnableDataReductionProxySavingsPromoName[] =
509 "Data Saver 1 MB Savings Promo";
510const char kEnableDataReductionProxySavingsPromoDescription[] =
511 "Enable a Data Saver promo for 1 MB of savings. If Data Saver has already "
512 "saved 1 MB of data, then the promo will not be shown. Data Saver must be "
513 "enabled for the promo to be shown.";
514
Matt Giucad4870432017-11-24 01:04:38515const char kEnableDesktopPWAsName[] = "Desktop PWAs";
516const char kEnableDesktopPWAsDescription[] =
517 "Experimental windowing and install banner treatment for Progressive Web "
518 "Apps on desktop platforms. Implies #enable-experimental-app-banners.";
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17519
Giovanni Ortuño Urquidi40c8e792018-02-28 04:18:59520const char kEnableDesktopPWAsLinkCapturingName[] =
521 "Desktop PWAs Link Capturing";
522const char kEnableDesktopPWAsLinkCapturingDescription[] =
523 "Experimentally enable link capturing for Desktop PWAs. Navigations to "
524 "URLs that are in-scope of Desktop PWAs will open in a window. Requires "
525 "#enable-desktop-pwas.";
526
Jay Harrisee7a7bc62018-10-09 01:47:49527const char kDesktopPWAsStayInWindowName[] =
528 "Desktop PWAs out-of-scope links open in the app window";
529const char kDesktopPWAsStayInWindowDescription[] =
530 "Links to sites in a different scope will open in a custom "
531 "tab (inside the PWA window) as opposed to in the browser.";
532
Christopher Lame66b7812018-09-26 01:49:24533const char kEnableSystemWebAppsName[] = "System Web Apps";
534const char kEnableSystemWebAppsDescription[] =
535 "Experimental system for using the Desktop PWA framework for running System"
536 "Apps (e.g Settings, Discover).";
537
Ahmed Fakhry0037de02018-01-29 19:58:31538const char kEnableDockedMagnifierName[] = "Docked Magnifier";
539const char kEnableDockedMagnifierDescription[] =
540 "Enables the Docked Magnifier (a.k.a. picture-in-picture magnifier).";
541
Ramya Nagarajan5b41d8d2018-04-02 19:53:02542const char kEnableEmojiContextMenuName[] = "Emoji Context Menu";
543const char kEnableEmojiContextMenuDescription[] =
Mathieu Perreault608546ee2018-05-09 00:35:09544 "Enables the Emoji picker item in context menus for editable text areas, if"
545 " supported by the operating system.";
Ramya Nagarajan5b41d8d2018-04-02 19:53:02546
David Benjamin570460e2018-10-16 06:01:29547const char kEnforceTLS13DowngradeName[] = "TLS 1.3 downgrade hardening";
548const char kEnforceTLS13DowngradeDescription[] =
549 "This option enables the TLS 1.3 downgrade hardening mechanism. This "
550 "hardens TLS 1.3 connections while remaining compatible with TLS 1.0 "
551 "through 1.2 connections. Firewalls and proxies that do not function when "
552 "this is enabled do not implement TLS 1.0 through 1.2 correctly or "
553 "securely. They must be fixed by vendors.";
554
Brett Wilsonf27ff602017-07-07 22:28:47555const char kEnableEnumeratingAudioDevicesName[] =
556 "Experimentally enable enumerating audio devices.";
557const char kEnableEnumeratingAudioDevicesDescription[] =
558 "Experimentally enable the use of enumerating audio devices.";
559
560const char kEnableGenericSensorName[] = "Generic Sensor";
561const char kEnableGenericSensorDescription[] =
Mikhail Pozdnyakov73373a62017-08-24 17:31:25562 "Enables motion sensor classes based on Generic Sensor API, i.e. "
563 "Accelerometer, LinearAccelerationSensor, Gyroscope, "
564 "AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
565
566const char kEnableGenericSensorExtraClassesName[] =
567 "Generic Sensor Extra Classes";
568const char kEnableGenericSensorExtraClassesDescription[] =
569 "Enables an extra set of sensor classes based on Generic Sensor API, which "
570 "expose previously unavailable platform features, i.e. AmbientLightSensor "
571 "and Magnetometer interfaces.";
Brett Wilsonf27ff602017-07-07 22:28:47572
Brett Wilsonf27ff602017-07-07 22:28:47573const char kEnableHDRName[] = "HDR mode";
574const char kEnableHDRDescription[] =
575 "Enables HDR support on compatible displays.";
576
Ryan Sturm6a850902018-06-09 02:27:34577const char kEnableHeavyPageCappingName[] = "Heavy Page Capping";
578const char kEnableHeavyPageCappingDescription[] =
Ryan Sturm1550abeb2018-06-18 20:05:09579 "Enable showing an InfoBar on data heavy pages that allows the user to "
Ryan Sturma2cd49f2018-06-20 17:09:25580 "pause sub-resource request loading on the page. Using the 'Low' option "
Ryan Sturm2a2f11e2018-07-17 23:01:01581 "will reduce the triggering threshold to 1MB. Data saver must be enabled "
582 "in order to see the InfoBar.";
Ryan Sturm6a850902018-06-09 02:27:34583
Robert Ogden5a63b242018-09-17 21:38:57584const char kEnablePreviewsAndroidOmniboxUIName[] =
585 "Previews Android Omnibox UI";
586const char kEnablePreviewsAndroidOmniboxUIDescription[] =
587 "Enable showing the Previews UI in the Omnibox on Android instead of an "
588 "InfoBar. This has no effect on other platforms.";
589
Robert Ogdence8c9572018-10-08 23:08:48590const char kEnableLitePageServerPreviewsName[] = "Lite Page Server Previews";
591const char kEnableLitePageServerPreviewsDescription[] =
592 "Enable showing Lite Page Previews served from the Chrome Data Proxy "
593 "service. This feature will cause Chrome to redirect eligible navigations "
594 "to a Google-owned domain that serves a pre-rendered version of the "
595 "original page.";
596
Brett Wilsonf27ff602017-07-07 22:28:47597const char kEnableHttpFormWarningName[] =
598 "Show in-form warnings for sensitive fields when the top-level page is not "
Eric Lawrenceed8fccf2017-09-08 21:27:15599 "HTTPS";
Brett Wilsonf27ff602017-07-07 22:28:47600const char kEnableHttpFormWarningDescription[] =
601 "Attaches a warning UI to any password or credit card fields detected when "
602 "the top-level page is not HTTPS";
603
Hiroshige Hayashizaki99d5821e2018-05-02 04:25:41604const char kLayeredAPIName[] = "Experimental layered APIs";
605const char kLayeredAPIDescription[] =
606 "Enable layered API infrastructure, as well as several experimental "
607 "layered APIs. The syntax and the APIs exposed are experimental and will "
608 "change over time.";
609
Ian Kilpatricke68ef11a2018-07-04 03:52:10610const char kEnableLayoutNGName[] = "Enable LayoutNG";
611const char kEnableLayoutNGDescription[] =
612 "Enable Blink's next generation layout engine.";
613
Scott Littled0fd2d002018-04-13 03:37:26614const char kEnableLazyFrameLoadingName[] = "Enable lazy frame loading";
615const char kEnableLazyFrameLoadingDescription[] =
616 "Defers the loading of certain cross-origin frames until the page is "
617 "scrolled down near them.";
618
rajendrant793ff512018-08-10 17:07:59619const char kEnableLazyImageLoadingName[] = "Enable lazy image loading";
620const char kEnableLazyImageLoadingDescription[] =
621 "Defers the loading of images until the page is scrolled down near them.";
622
Sidney San Martín9375b892017-09-09 00:29:54623const char kEnableMacMaterialDesignDownloadShelfName[] =
624 "Enable Material Design download shelf";
625
626const char kEnableMacMaterialDesignDownloadShelfDescription[] =
627 "If enabled, the download shelf uses Material Design.";
628
Anton Urusov47cd4932017-09-19 14:41:41629const char kEnablePolicyToolName[] = "Enable policy management page";
630const char kEnablePolicyToolDescription[] =
631 "If enabled, the chrome://policy-tool URL loads a page for managing "
632 "policies.";
633
Weidong Guof1e5a892018-01-06 02:26:39634const char kDisableMultiMirroringName[] =
Weidong Guo7dfd1482017-11-08 05:56:28635 "Display mirroring across multiple displays.";
Weidong Guof1e5a892018-01-06 02:26:39636const char kDisableMultiMirroringDescription[] =
637 "Disable Display mirroring across multiple displays.";
Weidong Guo7dfd1482017-11-08 05:56:28638
Brett Wilsonf27ff602017-07-07 22:28:47639const char kEnableNavigationTracingName[] = "Enable navigation tracing";
640const char kEnableNavigationTracingDescription[] =
641 "This is to be used in conjunction with the trace-upload-url flag. "
642 "WARNING: When enabled, Chrome will record performance data for every "
643 "navigation and upload it to the URL specified by the trace-upload-url "
644 "flag. The trace may include personally identifiable information (PII) "
645 "such as the titles and URLs of websites you visit.";
646
Bernhard Bauer5533f9912017-11-06 17:56:02647const char kEnableNetworkLoggingToFileName[] = "Enable network logging to file";
648const char kEnableNetworkLoggingToFileDescription[] =
649 "Enables network logging to a file named netlog.json in the user data "
650 "directory. The file can be imported into chrome://net-internals.";
651
Brett Wilsonf27ff602017-07-07 22:28:47652const char kEnableNetworkServiceName[] = "Enable network service";
653const char kEnableNetworkServiceDescription[] =
654 "Enables the network service, which makes network requests through a "
John Abd-El-Malek225b04d2018-09-07 22:41:40655 "separate process.";
Brett Wilsonf27ff602017-07-07 22:28:47656
John Abd-El-Malek8067cc02017-12-04 23:23:20657const char kEnableNetworkServiceInProcessName[] =
658 "Runs network service in-process";
659const char kEnableNetworkServiceInProcessDescription[] =
660 "Runs the network service in the browser process.";
661
dpapaded8349472017-10-25 03:21:27662const char kEnableNewPrintPreview[] = "Enable new Print Preview UI";
663const char kEnableNewPrintPreviewDescription[] =
rbpotter29690042018-06-18 19:28:37664 "If enabled, Print Preview will display a newer UI. This feature is "
665 "activated if either this flag or #upcoming-ui-features is enabled.";
dpapaded8349472017-10-25 03:21:27666
Ahmed Fakhry2fd8fc82017-07-28 16:31:12667const char kEnableNightLightName[] = "Enable Night Light";
668const char kEnableNightLightDescription[] =
669 "Enable the Night Light feature which controls the color temperature of "
670 "the screen.";
671
Tetsui Ohkuboc3eb87f72018-07-20 02:22:28672const char kEnableNotificationScrollBarName[] =
673 "Enable notification list scroll bar";
674const char kEnableNotificationScrollBarDescription[] =
675 "Enable the scroll bar of the notification list in Unified System Tray.";
676
Tetsui Ohkubo2aa9d1e2018-10-03 03:43:07677const char kEnableNewMessageListViewName[] = "Enable new message list view";
678const char kEnableNewMessageListViewDescription[] =
679 "Enable new implementation of message list view.";
680
xlou8b56f672018-02-09 23:34:30681const char kEnableNupPrintingName[] = "Enable N-up printing";
682const char kEnableNupPrintingDescription[] =
683 "Enable N-up printing in the print preview panel.";
684
Sophie Chang117a3b22017-10-24 22:25:36685const char kEnableOptimizationHintsName[] = "Optimization Hints";
686const char kEnableOptimizationHintsDescription[] =
Sophie Chang5454ce82018-07-16 17:44:50687 "Enable the Optimization Hints feature which incorporates server hints "
Sophie Chang117a3b22017-10-24 22:25:36688 "into decisions for what optimizations to perform on some pages on slow "
689 "networks.";
690
Yutaka Hirano98be3272017-08-07 17:55:39691const char kEnableOutOfBlinkCORSName[] = "Out of blink CORS";
692const char kEnableOutOfBlinkCORSDescription[] =
693 "CORS handling logic is moved out of blink.";
694
Sammie Quon0fbf0782018-05-01 22:11:08695const char kEnableOverviewSwipeToCloseName[] =
696 "Enable overview swipe to close.";
697const char kEnableOverviewSwipeToCloseDescription[] =
698 "Enables closing of items in overview mode by dragging or flinging "
699 "vertically.";
700
kylechar7051c092018-02-05 20:31:39701const char kVizDisplayCompositorName[] = "Viz Display Compositor (OOP-D)";
702const char kVizDisplayCompositorDescription[] =
703 "If enabled, the display compositor runs as part of the viz service in the"
704 "GPU process.";
705
Ria Jiang6a129b982018-03-01 18:30:40706const char kVizHitTestDrawQuadName[] = "Viz Hit-test Draw-quad version";
707const char kVizHitTestDrawQuadDescription[] =
708 "If enabled, event targeting uses the new viz-assisted hit-testing logic, "
709 "with hit-test data computed from the CompositorFrame.";
710
Erik Chen49bbfa22017-08-18 08:49:56711const char kEnableOutOfProcessHeapProfilingName[] =
Albert J. Wong174174762018-01-18 23:50:23712 "Out of process heap profiling start mode.";
Erik Chen49bbfa22017-08-18 08:49:56713const char kEnableOutOfProcessHeapProfilingDescription[] =
714 "Creates a profiling service that records stacktraces for all live, "
erikchen94aca892018-01-18 00:21:19715 "malloced objects. Heap dumps can be obtained at chrome://tracing "
716 "[category:memory-infra] and chrome://memory-internals. This setting "
717 "controls which processes are profiled. As long as this setting is not "
718 "disabled, users can start profiling any given process in "
719 "chrome://memory-internals.";
720const char kEnableOutOfProcessHeapProfilingModeMinimal[] = "Browser and GPU";
721const char kEnableOutOfProcessHeapProfilingModeAll[] = "All processes";
722const char kEnableOutOfProcessHeapProfilingModeAllRenderers[] = "All renderers";
723const char kEnableOutOfProcessHeapProfilingModeBrowser[] = "Only browser";
724const char kEnableOutOfProcessHeapProfilingModeGpu[] = "Only GPU.";
erikchen0a5dd692017-12-12 00:53:10725const char kEnableOutOfProcessHeapProfilingModeManual[] =
erikchen94aca892018-01-18 00:21:19726 "None by default. Visit chrome://memory-internals to choose which "
727 "processes to profile.";
Albert J. Wongbd5bd902017-11-09 19:56:15728const char kEnableOutOfProcessHeapProfilingModeRendererSampling[] =
729 "Profile a random sampling of renderer processes, ensuring only one is "
730 "ever profiled at a time.";
erikchen94aca892018-01-18 00:21:19731
Erik Chen8bb76b52017-12-06 19:06:25732const char kOutOfProcessHeapProfilingKeepSmallAllocations[] =
erikchen94aca892018-01-18 00:21:19733 "Emit small allocations in memlog heap dumps.";
Erik Chen8bb76b52017-12-06 19:06:25734const char kOutOfProcessHeapProfilingKeepSmallAllocationsDescription[] =
735 "By default, small allocations are pruned from the heap dump. This reduces "
736 "the size of the compressed trace by 100x. If pruning is disabled, the "
737 "chrome://tracing UI may be unable to take or load the trace. Save the "
738 "trace directly using chrome://memory-internals, and use other mechanisms "
739 "[e.g. diff_heap_profiler.py] to examine the trace. Note that "
740 "automatically uploaded traces will always be pruned. This only affects "
741 "manually taken memory-infra traces.";
Erik Chen49bbfa22017-08-18 08:49:56742
erikchen8bc20d82018-02-14 03:21:51743const char kOutOfProcessHeapProfilingSampling[] = "Sample memlog allocations";
744const char kOutOfProcessHeapProfilingSamplingDescription[] =
745 "Use a poisson process to sample allocations. Defaults to a sample rate of "
erikchen99bfce02018-02-14 20:29:22746 "10000. This results in low noise for large and/or frequent allocations ["
747 "[size * frequency >> 10000]. This means that aggregate numbers [e.g. "
748 "total size of malloc-ed objects] and large and/or frequent allocations "
749 "can be trusted with high fidelity.";
erikchen8bc20d82018-02-14 03:21:51750
Erik Chen3303fd0232018-01-11 20:29:05751const char kOOPHPStackModeName[] =
752 "The type of stack to record for memlog heap dumps";
753const char kOOPHPStackModeDescription[] =
erikchen94aca892018-01-18 00:21:19754 "By default, memlog heap dumps record native stacks, which requires a "
755 "post-processing step to symbolize. Requires a custom build with frame "
erikchen011ad3f2018-01-26 17:54:55756 "pointers to work on Android. Native with thread names will add the thread "
757 "name as the first frame of each native stack. It's also possible to "
758 "record a pseudo stack using trace events as identifiers. It's also "
759 "possible to do a mix of both.";
erikchen94aca892018-01-18 00:21:19760const char kOOPHPStackModeMixed[] = "Mixed";
761const char kOOPHPStackModeNative[] = "Native";
erikchen011ad3f2018-01-26 17:54:55762const char kOOPHPStackModeNativeWithThreadNames[] = "Native with thread names";
erikchen94aca892018-01-18 00:21:19763const char kOOPHPStackModePseudo[] = "Trace events";
Erik Chen3303fd0232018-01-11 20:29:05764
François Beaufort2e75f492018-02-08 20:44:46765const char kEnablePictureInPictureName[] = "Enable Picture-in-Picture.";
Brett Wilsonf27ff602017-07-07 22:28:47766const char kEnablePictureInPictureDescription[] =
François Beaufort2e75f492018-02-08 20:44:46767 "Enable the Picture-in-Picture feature for videos.";
Brett Wilsonf27ff602017-07-07 22:28:47768
F#m59d036e2017-09-13 07:22:17769const char kEnablePixelCanvasRecordingName[] = "Enable pixel canvas recording";
770const char kEnablePixelCanvasRecordingDescription[] =
771 "Pixel canvas recording allows the compositor to raster contents aligned "
772 "with the pixel and improves text rendering. This should be enabled when a "
773 "device is using fractional scale factor.";
774
Ella Gebee81c92018-08-14 15:51:09775const char kEnableResamplingInputEventsName[] =
776 "Enable resampling input events";
777const char kEnableResamplingInputEventsDescription[] =
778 "Predicts mouse and touch inputs position at rAF time based on previous "
779 "input";
780const char kEnableResamplingScrollEventsName[] =
781 "Enable resampling scroll events";
782const char kEnableResamplingScrollEventsDescription[] =
783 "Predicts the scroll amount at vsync time based on previous input";
784
Doug Arnettaa0bf202018-08-27 19:42:11785const char kEnableResourceLoadingHintsName[] = "Enable resource loading hints";
786const char kEnableResourceLoadingHintsDescription[] =
787 "Enable using server-provided resource loading hints to provide a preview "
788 "over slow network connections.";
789
Lei Zhang0ca70ea2018-09-07 17:51:01790const char kEnableSyncUserConsentSeparateTypeName[] =
vitaliiid36191b2018-06-11 07:40:49791 "Enable separate sync type for consents";
Lei Zhang0ca70ea2018-09-07 17:51:01792const char kEnableSyncUserConsentSeparateTypeDescription[] =
vitaliiid36191b2018-06-11 07:40:49793 "Emit user consents as a separate sync type instead of user events.";
794
Mohamed Amir Yosef0178fa892018-07-23 17:43:52795const char kEnableSyncUSSBookmarksName[] = "Enable USS for bookmarks sync";
796const char kEnableSyncUSSBookmarksDescription[] =
797 "Enables the new, experimental implementation of bookmark sync";
798
Mikel Astiz38837f82018-04-24 22:23:23799const char kEnableSyncUSSSessionsName[] = "Enable USS for sessions sync";
800const char kEnableSyncUSSSessionsDescription[] =
801 "Enables the new, experimental implementation of session sync (aka tab "
802 "sync).";
803
Brett Wilsonf27ff602017-07-07 22:28:47804const char kEnableUseZoomForDsfName[] =
805 "Use Blink's zoom for device scale factor.";
806const char kEnableUseZoomForDsfDescription[] =
807 "If enabled, Blink uses its zooming mechanism to scale content for device "
808 "scale factor.";
809const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
810const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
811const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
812
Patrick Noland8ee016e2018-01-24 11:44:53813const char kEnableScrollAnchorSerializationName[] =
814 "Scroll Anchor Serialization";
815const char kEnableScrollAnchorSerializationDescription[] =
816 "Save the scroll anchor and use it to restore the scroll position when "
817 "navigating.";
818
Brad Nelson5cd500e2018-01-04 00:50:19819const char kEnableSharedArrayBufferName[] =
820 "Experimental enabled SharedArrayBuffer support in JavaScript.";
821const char kEnableSharedArrayBufferDescription[] =
822 "Enable SharedArrayBuffer support in JavaScript.";
823
Brett Wilsonf27ff602017-07-07 22:28:47824const char kEnableWasmName[] = "WebAssembly structured cloning support.";
825const char kEnableWasmDescription[] =
826 "Enable web pages to use WebAssembly structured cloning.";
827
Kim Paulhamusae635a32018-06-27 07:30:54828const char kEnableWebAuthenticationAPIName[] = "Web Authentication API";
829const char kEnableWebAuthenticationAPIDescription[] =
Kim Paulhamus92431372018-07-20 02:25:47830 "Enable Web Authentication API support.";
831
Lei Zhang0ca70ea2018-09-07 17:51:01832const char kEnableWebAuthenticationCableSupportName[] =
Kim Paulhamus92431372018-07-20 02:25:47833 "Web Authentication caBLE support";
Lei Zhang0ca70ea2018-09-07 17:51:01834const char kEnableWebAuthenticationCableSupportDescription[] =
Kim Paulhamus92431372018-07-20 02:25:47835 "Enable the cloud-assisted pairingless BLE protocol for use with "
836 "the Web Authentication API.";
Kim Paulhamusae635a32018-06-27 07:30:54837
Brett Wilsonf27ff602017-07-07 22:28:47838const char kEnableImageCaptureAPIName[] = "Image Capture API";
839const char kEnableImageCaptureAPIDescription[] =
840 "Enables the Web Platform Image Capture API: takePhoto(), "
841 "getPhotoCapabilities(), etc.";
842
Ramin Halavatic158b182018-10-18 14:04:54843const char kEnableIncognitoWindowCounterName[] = "Incognito Window Counter";
844const char kEnableIncognitoWindowCounterDescription[] =
845 "Shows the count of Incognito windows next to the Incognito icon on the "
846 "toolbar.";
847
Brett Wilsonf27ff602017-07-07 22:28:47848const char kEnableZeroSuggestRedirectToChromeName[] =
849 "Experimental contextual omnibox suggestion";
850const char kEnableZeroSuggestRedirectToChromeDescription[] =
851 "Change omnibox contextual suggestions to an experimental source. Note "
852 "that this is not an on/off switch for contextual omnibox and it only "
853 "applies to suggestions provided before the user starts typing a URL or a "
854 "search query (i.e. zero suggest).";
855
Clemens Hammacher0c8a15a2018-04-27 13:45:32856const char kEnableWasmBaselineName[] = "WebAssembly baseline compiler";
857const char kEnableWasmBaselineDescription[] =
858 "Enables WebAssembly baseline compilation and tier up.";
859
Ben Smith24c1e5c2018-06-20 01:09:02860const char kEnableWasmThreadsName[] = "WebAssembly threads support.";
861const char kEnableWasmThreadsDescription[] =
862 "Enables support for the WebAssembly Threads proposal. Implies "
863 "#shared-array-buffer and #enable-webassembly.";
864
Brett Wilsonf27ff602017-07-07 22:28:47865const char kExpensiveBackgroundTimerThrottlingName[] =
866 "Throttle expensive background timers";
867const char kExpensiveBackgroundTimerThrottlingDescription[] =
868 "Enables intervention to limit CPU usage of background timers to 1%.";
869
870const char kExperimentalAppBannersName[] = "Experimental app banners";
871const char kExperimentalAppBannersDescription[] =
Matt Giucad4870432017-11-24 01:04:38872 "Enables a new experimental app banner flow and UI. Implies "
873 "#enable-app-banners.";
Brett Wilsonf27ff602017-07-07 22:28:47874
875const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
876const char kExperimentalCanvasFeaturesDescription[] =
877 "Enables the use of experimental canvas features which are still in "
878 "development.";
879
Nicholas Verneccd8259802018-02-22 01:22:04880const char kExperimentalCrostiniUIName[] = "Experimental Crostini";
881const char kExperimentalCrostiniUIDescription[] =
882 "Enables in-development Crostini features.";
883
Brett Wilsonf27ff602017-07-07 22:28:47884const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
885const char kExperimentalExtensionApisDescription[] =
886 "Enables experimental extension APIs. Note that the extension gallery "
887 "doesn't allow you to upload extensions that use experimental APIs.";
888
889const char kExperimentalFullscreenExitUIName[] =
890 "Experimental fullscreen exit UI";
891const char kExperimentalFullscreenExitUIDescription[] =
892 "Displays experimental UI to allow mouse and touch input methods to exit "
893 "fullscreen mode.";
894
Ian Clelland37a985d2018-05-04 02:43:13895const char kExperimentalProductivityFeaturesName[] =
896 "Experimental Productivity Features";
897const char kExperimentalProductivityFeaturesDescription[] =
898 "Enable support for experimental developer productivity features, such as "
899 "Layered APIs and policies for avoiding slow rendering.";
900
Brett Wilsonf27ff602017-07-07 22:28:47901const char kExperimentalSecurityFeaturesName[] =
902 "Potentially annoying security features";
903const char kExperimentalSecurityFeaturesDescription[] =
904 "Enables several security features that will likely break one or more "
905 "pages that you visit on a daily basis. Strict mixed content checking, for "
906 "example. And locking powerful features to secure contexts. This flag will "
907 "probably annoy you.";
908
909const char kExperimentalWebPlatformFeaturesName[] =
910 "Experimental Web Platform features";
911const char kExperimentalWebPlatformFeaturesDescription[] =
912 "Enables experimental Web Platform features that are in development.";
913
914const char kExtensionContentVerificationName[] =
915 "Extension Content Verification";
916const char kExtensionContentVerificationDescription[] =
917 "This flag can be used to turn on verification that the contents of the "
918 "files on disk for extensions from the webstore match what they're "
919 "expected to be. This can be used to turn on this feature if it would not "
920 "otherwise have been turned on, but cannot be used to turn it off (because "
921 "this setting can be tampered with by malware).";
922const char kExtensionContentVerificationBootstrap[] =
923 "Bootstrap (get expected hashes, but do not enforce them)";
924const char kExtensionContentVerificationEnforce[] =
925 "Enforce (try to get hashes, and enforce them if successful)";
926const char kExtensionContentVerificationEnforceStrict[] =
927 "Enforce strict (hard fail if we can't get hashes)";
928
929const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
930const char kExtensionsOnChromeUrlsDescription[] =
931 "Enables running extensions on chrome:// URLs, where extensions explicitly "
932 "request this permission.";
galinapae72e152017-05-12 13:12:28933
Brett Wilsonecb80982017-07-12 20:34:51934const char kFastUnloadName[] = "Fast tab/window close";
935const char kFastUnloadDescription[] =
936 "Enables fast tab/window closing - runs a tab's onunload js handler "
937 "independently of the GUI.";
vabr0215a8e2017-03-28 12:47:34938
Brett Wilsonecb80982017-07-12 20:34:51939const char kFeaturePolicyName[] = "Feature Policy";
940const char kFeaturePolicyDescription[] =
941 "Enables granting and removing access to features through the "
942 "Feature-Policy HTTP header.";
vabr0215a8e2017-03-28 12:47:34943
Brett Wilsonecb80982017-07-12 20:34:51944const char kFontCacheScalingName[] = "FontCache scaling";
945const char kFontCacheScalingDescription[] =
946 "Reuse a cached font in the renderer to serve different sizes of font for "
947 "faster layout.";
948
949const char kForceEffectiveConnectionTypeName[] =
950 "Override effective connection type";
951const char kForceEffectiveConnectionTypeDescription[] =
952 "Overrides the effective connection type of the current connection "
Thanh Lea98f12f2017-12-18 19:35:30953 "returned by the network quality estimator. Slow 2G on Cellular returns "
954 "Slow 2G when connected to a cellular network, and the actual estimate "
955 "effective connection type when not on a cellular network. Previews are "
956 "usually served on 2G networks.";
Brett Wilsonecb80982017-07-12 20:34:51957const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
958const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
959const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
Thanh Lea98f12f2017-12-18 19:35:30960const char kEffectiveConnectionTypeSlow2GOnCellularDescription[] =
961 "Slow 2G On Cellular";
Brett Wilsonecb80982017-07-12 20:34:51962const char kEffectiveConnectionType2GDescription[] = "2G";
963const char kEffectiveConnectionType3GDescription[] = "3G";
964const char kEffectiveConnectionType4GDescription[] = "4G";
965
966const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
967const char kFillOnAccountSelectDescription[] =
968 "Filling of passwords when an account is explicitly selected by the user "
969 "rather than autofilling credentials on page load.";
970
Brett Wilsonecb80982017-07-12 20:34:51971const char kForceTextDirectionName[] = "Force text direction";
972const char kForceTextDirectionDescription[] =
973 "Explicitly force the per-character directionality of UI text to "
974 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
975 "direction of the character language.";
976const char kForceDirectionLtr[] = "Left-to-right";
977const char kForceDirectionRtl[] = "Right-to-left";
978
979const char kForceUiDirectionName[] = "Force UI direction";
980const char kForceUiDirectionDescription[] =
981 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
982 "mode, overriding the default direction of the UI language.";
983
984const char kFramebustingName[] =
985 "Framebusting requires same-origin or a user gesture";
986const char kFramebustingDescription[] =
987 "Don't permit an iframe to navigate the top level browsing context unless "
988 "they are same-origin or the iframe is processing a user gesture.";
989
990const char kGamepadExtensionsName[] = "Gamepad Extensions";
991const char kGamepadExtensionsDescription[] =
Anna Offenwanger06dc6062018-04-12 07:56:22992 "Enables experimental extensions to the Gamepad APIs.";
Matt Reynoldsa8f2f692018-07-16 17:12:06993const char kGamepadPollingRateName[] = "Override Gamepad Polling Rate";
Matt Reynolds660a47752018-06-28 19:42:48994const char kGamepadPollingRateDescription[] =
Matt Reynoldsa8f2f692018-07-16 17:12:06995 "Overrides the rate at which gamepad input devices are polled. Increasing "
Matt Reynolds660a47752018-06-28 19:42:48996 "the polling rate improves the average latency of button and axis inputs "
997 "but may negatively affect performance.";
Matt Reynolds043469f2018-05-01 22:56:58998const char kGamepadVibrationName[] = "Gamepad Vibration";
999const char kGamepadVibrationDescription[] =
1000 "Enables haptic vibration effects on supported gamepads.";
Brett Wilsonecb80982017-07-12 20:34:511001
Brett Wilsonecb80982017-07-12 20:34:511002const char kGpuRasterizationMsaaSampleCountName[] =
1003 "GPU rasterization MSAA sample count.";
1004const char kGpuRasterizationMsaaSampleCountDescription[] =
1005 "Specify the number of MSAA samples for GPU rasterization.";
1006const char kGpuRasterizationMsaaSampleCountZero[] = "0";
1007const char kGpuRasterizationMsaaSampleCountTwo[] = "2";
1008const char kGpuRasterizationMsaaSampleCountFour[] = "4";
1009const char kGpuRasterizationMsaaSampleCountEight[] = "8";
1010const char kGpuRasterizationMsaaSampleCountSixteen[] = "16";
1011
1012const char kGpuRasterizationName[] = "GPU rasterization";
1013const char kGpuRasterizationDescription[] =
1014 "Use GPU to rasterize web content. Requires impl-side painting.";
Brett Wilson7b44537e2017-08-18 01:38:281015const char kForceGpuRasterization[] = "Force-enabled for all layers";
Brett Wilsonecb80982017-07-12 20:34:511016
1017const char kGoogleProfileInfoName[] = "Google profile name and icon";
1018const char kGoogleProfileInfoDescription[] =
1019 "Enables using Google information to populate the profile name and icon in "
1020 "the avatar menu.";
1021
Takumi Fujimotofb71e332018-03-31 14:04:081022const char kViewsCastDialogName[] = "Views Cast dialog";
1023const char kViewsCastDialogDescription[] =
Takumi Fujimoto541e5e22018-05-30 00:46:311024 "Replace the WebUI Cast dialog with a Views toolkit dialog. This requires "
Takumi Fujimoto28351acc2018-05-31 17:19:531025 "#views-browser-windows on Mac. This feature is activated if either this "
Robert Liao3ecf97c2018-06-05 01:24:541026 "flag or #upcoming-ui-features is enabled";
Takumi Fujimotofb71e332018-03-31 14:04:081027
Manu Cornet4a908de2018-04-09 04:32:271028const char kHideActiveAppsFromShelfName[] =
1029 "Hide running apps (that are not pinned) from the shelf";
1030const char kHideActiveAppsFromShelfDescription[] =
1031 "Save space in the shelf by hiding running apps (that are not pinned).";
Manu Cornete5f855b2018-03-13 03:35:251032
Brett Wilsonecb80982017-07-12 20:34:511033const char kHistoryRequiresUserGestureName[] =
1034 "New history entries require a user gesture.";
1035const char kHistoryRequiresUserGestureDescription[] =
1036 "Require a user gesture to add a history entry.";
1037const char kHyperlinkAuditingName[] = "Hyperlink auditing";
1038const char kHyperlinkAuditingDescription[] = "Sends hyperlink auditing pings.";
1039
Ryan Landay4242dbc22018-04-04 01:47:331040const char kHorizontalTabSwitcherAndroidName[] =
1041 "Enable horizontal tab switcher";
1042const char kHorizontalTabSwitcherAndroidDescription[] =
1043 "Changes the layout of the Android tab switcher so tabs scroll "
1044 "horizontally instead of vertically.";
1045
Brett Wilsonecb80982017-07-12 20:34:511046const char kHostedAppQuitNotificationName[] =
1047 "Quit notification for hosted apps";
1048const char kHostedAppQuitNotificationDescription[] =
1049 "Display a notification when quitting Chrome if hosted apps are currently "
1050 "running.";
1051
1052const char kHostedAppShimCreationName[] =
1053 "Creation of app shims for hosted apps on Mac";
1054const char kHostedAppShimCreationDescription[] =
1055 "Create app shims on Mac when creating a hosted app.";
1056
Ana-Cosmina Popescuda3bcbe2017-09-22 18:24:481057const char kHtmlBasedUsernameDetectorName[] = "HTML-based username detector";
1058const char kHtmlBasedUsernameDetectorDescription[] =
1059 "Use HTML-based username detector for the password manager.";
1060
Brett Wilsonecb80982017-07-12 20:34:511061const char kIconNtpName[] = "Large icons on the New Tab page";
1062const char kIconNtpDescription[] =
1063 "Enable the experimental New Tab page using large icons.";
1064
1065const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
1066const char kIgnoreGpuBlacklistDescription[] =
1067 "Overrides the built-in software rendering list and enables "
1068 "GPU-acceleration on unsupported system configurations.";
1069
Ryan Sturm8c3dbc92018-06-26 19:22:371070const char kIgnorePreviewsBlacklistName[] = "Ignore Previews Blocklist";
Thanh Le5f090efa52017-12-27 22:39:441071const char kIgnorePreviewsBlacklistDescription[] =
Ryan Sturm8c3dbc92018-06-26 19:22:371072 "Ignore decisions made by the PreviewsBlockList";
Thanh Le5f090efa52017-12-27 22:39:441073
Claudio Magni61c210922017-12-28 00:29:511074const char kImprovedLanguageSettingsName[] = "Improved Language Settings";
1075const char kImprovedLanguageSettingsDescription[] =
1076 "Set of changes for Language Settings. These changes are intended to fix "
1077 "the major bugs related to Language Settings.";
1078
Brett Wilsonecb80982017-07-12 20:34:511079const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
1080const char kInProductHelpDemoModeChoiceDescription[] =
1081 "Selects the In-Product Help demo mode.";
1082
1083const char kJavascriptHarmonyName[] = "Experimental JavaScript";
1084const char kJavascriptHarmonyDescription[] =
1085 "Enable web pages to use experimental JavaScript features.";
1086
1087const char kJavascriptHarmonyShippingName[] =
1088 "Latest stable JavaScript features";
1089const char kJavascriptHarmonyShippingDescription[] =
1090 "Some web pages use legacy or non-standard JavaScript extensions that may "
1091 "conflict with the latest JavaScript features. This flag allows disabling "
1092 "support of those features for compatibility with such pages.";
1093
gogeraldfd7675d2018-06-19 22:57:351094const char kJustInTimeServiceWorkerPaymentAppName[] =
1095 "Just-in-time service worker payment app";
1096const char kJustInTimeServiceWorkerPaymentAppDescription[] =
1097 "Allow crawling just-in-time service worker payment app when there is no "
1098 "installed service worker payment app for a payment request.";
1099
Yutaka Hiranof7f2f632017-09-06 10:40:081100const char kKeepAliveRendererForKeepaliveRequestsName[] =
1101 "Keep a renderer alive for keepalive fetch requests";
1102const char kKeepAliveRendererForKeepaliveRequestsDescription[] =
1103 "Keep a render process alive when the process has a pending fetch request "
1104 "with `keepalive' specified.";
1105
Joe Downing095fd6d2018-02-01 18:40:361106const char kKeyboardLockApiName[] = "Experimental keyboard lock API.";
1107const char kKeyboardLockApiDescription[] =
1108 "Enables websites to use the new keyboard{Lock|Unlock} API to intercept "
1109 "specific key events and have them routed directly to the webpage when in "
1110 "fullscreen mode. Implies #experimental-keyboard-lock-ui.";
1111
Brett Wilsonecb80982017-07-12 20:34:511112const char kLcdTextName[] = "LCD text antialiasing";
1113const char kLcdTextDescription[] =
1114 "If disabled, text is rendered with grayscale antialiasing instead of LCD "
1115 "(subpixel) when doing accelerated compositing.";
1116
Matt Giucac399982f2017-10-06 07:51:291117const char kLeftToRightUrlsName[] =
1118 "Render bidirectional URLs from left to right";
1119const char kLeftToRightUrlsDescription[] =
1120 "An experimental Bidi URL rendering algorithm where the URL components are "
1121 "always shown in order from left to right, regardless of any RTL "
1122 "characters. (The contents of each component are still rendered with the "
1123 "normal Bidi algorithm.)";
1124
Brett Wilsonecb80982017-07-12 20:34:511125const char kLoadMediaRouterComponentExtensionName[] =
1126 "Load Media Router Component Extension";
1127const char kLoadMediaRouterComponentExtensionDescription[] =
1128 "Loads the Media Router component extension at startup.";
1129
Mustafa Emre Acer137dc8b2018-08-29 20:38:131130const char kLookalikeUrlNavigationSuggestionsName[] =
1131 "Navigation suggestions for lookalike URLs";
1132const char kLookalikeUrlNavigationSuggestionsDescription[] =
1133 "Enable navigation suggestions for URLs that are visually similar to "
1134 "popular domains or to domains with a site engagement score.";
1135
Brett Wilsonecb80982017-07-12 20:34:511136const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
1137const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
Brett Wilsonecb80982017-07-12 20:34:511138
Lei Zhang2eca9082017-10-17 20:42:501139const char kMaterialDesignIncognitoNTPName[] = "Material Design Incognito NTP.";
1140const char kMaterialDesignIncognitoNTPDescription[] =
Brett Wilsonecb80982017-07-12 20:34:511141 "If enabled, the Incognito New Tab page uses the new material design with "
1142 "a better readable text.";
1143
spqchanb87755692018-04-05 00:46:091144const char kMediaRouterCastAllowAllIPsName[] =
1145 "Connect to Cast devices on all IP addresses";
1146const char kMediaRouterCastAllowAllIPsDescription[] =
1147 "Have the Media Router connect to Cast devices on all IP addresses, not "
Nick Harperd30507ca2018-08-16 20:24:311148 "just RFC1918/RFC4193 private addresses.";
spqchanb87755692018-04-05 00:46:091149
Brett Wilsonecb80982017-07-12 20:34:511150const char kMemoryCoordinatorName[] = "Memory coordinator";
1151const char kMemoryCoordinatorDescription[] =
1152 "Enable memory coordinator instead of memory pressure listeners.";
1153
1154const char kMessageCenterNewStyleNotificationName[] = "New style notification";
1155const char kMessageCenterNewStyleNotificationDescription[] =
1156 "Enables the experiment style of material-design notification";
1157
Brett Wilsonecb80982017-07-12 20:34:511158const char kMhtmlGeneratorOptionName[] = "MHTML Generation Option";
1159const char kMhtmlGeneratorOptionDescription[] =
1160 "Provides experimental options for MHTML file generator.";
1161const char kMhtmlSkipNostoreMain[] = "Skips no-store main frame.";
1162const char kMhtmlSkipNostoreAll[] = "Skips all no-store resources.";
1163
Brett Wilsonecb80982017-07-12 20:34:511164const char kNewAudioRenderingMixingStrategyName[] =
1165 "New audio rendering mixing strategy";
1166const char kNewAudioRenderingMixingStrategyDescription[] =
1167 "Use the new audio rendering mixing strategy.";
1168
1169const char kNewBookmarkAppsName[] = "The new bookmark app system";
1170const char kNewBookmarkAppsDescription[] =
1171 "Enables the new system for creating bookmark apps.";
1172
Vadym Doroshenkocd4ff782018-07-24 13:41:021173const char kNewPasswordFormParsingName[] =
1174 "New password form parsing for filling passwords";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241175const char kNewPasswordFormParsingDescription[] =
Vadym Doroshenkocd4ff782018-07-24 13:41:021176 "Replaces existing form parsing for filling in password manager with a new "
1177 "version, currently under development. WARNING: when enabled, Password "
1178 "Manager might stop working";
1179
1180const char kNewPasswordFormParsingForSavingName[] =
1181 "New password form parsing for saving passwords";
1182const char kNewPasswordFormParsingForSavingDescription[] =
1183 "Replaces existing form parsing for saving in password manager with a new "
1184 "version, currently under development. WARNING: when enabled, Password "
1185 "Manager might stop working";
Vadym Doroshenkof81e8bb2018-04-18 14:35:241186
Brett Wilsonecb80982017-07-12 20:34:511187const char kNewRemotePlaybackPipelineName[] =
1188 "Enable the new remote playback pipeline.";
1189const char kNewRemotePlaybackPipelineDescription[] =
1190 "Enable the new pipeline for playing media element remotely via "
1191 "RemotePlayback API or native controls.";
CJ DiMeglio7b4a199f2017-11-30 01:26:501192const char kUseSurfaceLayerForVideoName[] =
1193 "Enable the use of SurfaceLayer objects for videos.";
1194const char kUseSurfaceLayerForVideoDescription[] =
1195 "Enable compositing onto a Surface instead of a VideoLayer "
1196 "for videos.";
Brett Wilsonecb80982017-07-12 20:34:511197
1198const char kNewUsbBackendName[] = "Enable new USB backend";
1199const char kNewUsbBackendDescription[] =
1200 "Enables the new experimental USB backend for Windows.";
vabr0215a8e2017-03-28 12:47:341201
Sonny Sasaka2d200432018-03-22 17:43:161202const char kNewblueName[] = "Newblue";
1203const char kNewblueDescription[] =
1204 "Enables the use of newblue Bluetooth daemon.";
1205
Peter Kasting63097912018-06-30 02:09:031206const char kNewTabButtonPosition[] = "New tab button position";
1207const char kNewTabButtonPositionDescription[] =
1208 "Controls placement of the new tab button within the tabstrip.";
1209const char kNewTabButtonPositionOppositeCaption[] = "Opposite caption buttons";
1210const char kNewTabButtonPositionLeading[] = "Leading";
1211const char kNewTabButtonPositionAfterTabs[] = "After tabs";
1212const char kNewTabButtonPositionTrailing[] = "Trailing";
1213
Egor Pasko6fed3822018-05-30 10:33:141214const char kNostatePrefetchName[] = "NoState Prefetch";
vabr0215a8e2017-03-28 12:47:341215const char kNostatePrefetchDescription[] =
Egor Pasko6fed3822018-05-30 10:33:141216 R"*(If enabled, pre-downloads resources to improve page load speed.)*";
vabr0215a8e2017-03-28 12:47:341217
Alex Newcomerd7b0cc42018-05-25 22:58:481218const char kNotificationIndicatorName[] = "Notification Indicators";
1219const char kNotificationIndicatorDescription[] =
1220 "Enable notification indicators, which appear on app icons when a "
1221 "notification is active. This will also enable notifications in context "
1222 "menus.";
1223
Brett Wilsonecb80982017-07-12 20:34:511224const char kNotificationsNativeFlagName[] = "Enable native notifications.";
1225const char kNotificationsNativeFlagDescription[] =
1226 "Enable support for using the native notification toasts and notification "
1227 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:341228
Valeriya Sinevich972ac122018-09-05 07:33:191229const char kUseMultiloginEndpointName[] = "Use Multilogin endpoint.";
1230const char kUseMultiloginEndpointDescription[] =
1231 "Use Gaia OAuth multilogin for identity consistency.";
1232
Zentaro Kavanaghbad511c2017-10-18 22:29:001233#if defined(OS_POSIX)
1234const char kNtlmV2EnabledName[] = "Enable NTLMv2 Authentication";
1235const char kNtlmV2EnabledDescription[] =
1236 "Enable NTLMv2 HTTP Authentication. This disables NTLMv1 support.";
1237#endif
1238
Ramya Nagarajane9f16b82018-05-03 01:05:341239const char kNtpBackgroundsName[] = "New Tab Page Background Selection";
1240const char kNtpBackgroundsDescription[] =
kristipark037abce12018-07-13 19:49:301241 "Allow selection of a custom background image on the New Tab Page. "
1242 "Implicitly enables 'ntp-ui-md'.";
Ramya Nagarajane9f16b82018-05-03 01:05:341243
kristipark037abce12018-07-13 19:49:301244const char kNtpCustomLinksName[] = "New Tab Page Custom Links";
1245const char kNtpCustomLinksDescription[] =
1246 "Enable customization of shortcuts on the New Tab Page and replaces Most "
1247 "Visited. Implicitly enables 'ntp-ui-md' and 'ntp-icons'.";
1248
1249const char kNtpIconsName[] = "New Tab Page Material Design Icons";
Ramya Nagarajane9f16b82018-05-03 01:05:341250const char kNtpIconsDescription[] =
kristipark037abce12018-07-13 19:49:301251 "Show Material Design icons on the New Tab Page, instead of Most Visited "
1252 "tiles. Implicitly enables 'ntp-ui-md'.";
Ramya Nagarajane9f16b82018-05-03 01:05:341253
Kyle Milkad1420ce2018-10-05 18:33:411254const char kNtpUIMdName[] = "New Tab Page Material Design UI";
1255const char kNtpUIMdDescription[] =
1256 "Updates the New Tab Page with Material Design elements.";
1257
Brett Wilsonecb80982017-07-12 20:34:511258const char kNumRasterThreadsName[] = "Number of raster threads";
1259const char kNumRasterThreadsDescription[] =
1260 "Specify the number of raster threads.";
1261const char kNumRasterThreadsOne[] = "1";
1262const char kNumRasterThreadsTwo[] = "2";
1263const char kNumRasterThreadsThree[] = "3";
1264const char kNumRasterThreadsFour[] = "4";
1265
1266const char kOfferStoreUnmaskedWalletCardsName[] =
1267 "Google Payments card saving checkbox";
1268const char kOfferStoreUnmaskedWalletCardsDescription[] =
1269 "Show the checkbox to offer local saving of a credit card downloaded from "
1270 "the server.";
1271
1272const char kOfflineAutoReloadName[] = "Offline Auto-Reload Mode";
1273const char kOfflineAutoReloadDescription[] =
1274 "Pages that fail to load while the browser is offline will be "
1275 "auto-reloaded when the browser is online again.";
1276
1277const char kOfflineAutoReloadVisibleOnlyName[] =
1278 "Only Auto-Reload Visible Tabs";
1279const char kOfflineAutoReloadVisibleOnlyDescription[] =
1280 "Pages that fail to load while the browser is offline will only be "
1281 "auto-reloaded if their tab is visible.";
1282
Brett Wilsonecb80982017-07-12 20:34:511283const char kOmniboxDisplayTitleForCurrentUrlName[] =
1284 "Include title for the current URL in the omnibox";
1285const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
1286 "In the event that the omnibox provides suggestions on-focus, the URL of "
1287 "the current page is provided as the first suggestion without a title. "
1288 "Enabling this flag causes the title to be displayed.";
1289
Benoit Lizeab08362c2017-07-19 14:50:541290const char kOmniboxSpareRendererName[] =
1291 "Start spare renderer on omnibox focus";
1292const char kOmniboxSpareRendererDescription[] =
1293 "When the omnibox is focused, start an empty spare renderer. This can "
1294 "speed up the load of the navigation from the omnibox.";
1295
Tommy C. Li8875a442017-08-23 00:10:591296const char kOmniboxUIElideSuggestionUrlAfterHostName[] =
1297 "Omnibox UI Elide Suggestion URL After Host";
1298const char kOmniboxUIElideSuggestionUrlAfterHostDescription[] =
1299 "Elides the path, query, and ref of suggested URLs in the Omnibox "
1300 "dropdown.";
1301
Tommy C. Lie4194b732018-09-28 22:21:511302const char kOmniboxUIHideSteadyStateUrlSchemeName[] =
1303 "Omnibox UI Hide Steady-State URL Scheme";
1304const char kOmniboxUIHideSteadyStateUrlSchemeDescription[] =
1305 "In the omnibox, hide the scheme from steady state displayed URLs. It is "
Tommy C. Libef94ee02018-10-17 19:56:361306 "restored during editing.";
Tommy C. Lie4194b732018-09-28 22:21:511307
1308const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsName[] =
1309 "Omnibox UI Hide Steady-State URL Trivial Subdomains";
1310const char kOmniboxUIHideSteadyStateUrlTrivialSubdomainsDescription[] =
1311 "In the omnibox, hide trivial subdomains from steady state displayed URLs. "
Tommy C. Libef94ee02018-10-17 19:56:361312 "Hidden portions are restored during editing.";
1313
1314const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefName[] =
1315 "Omnibox UI Hide Steady-State URL Path, Query, and Ref";
1316const char kOmniboxUIHideSteadyStateUrlPathQueryAndRefDescription[] =
1317 "In the omnibox, hide the path, query and ref from steady state displayed "
1318 "URLs. Hidden portions are restored during editing.";
Tommy C. Lid79d4402017-12-22 22:49:121319
Tommy C. Licc5e53022018-07-27 16:30:351320const char kOmniboxUIJogTextfieldOnPopupName[] =
1321 "Omnibox UI Jog Textfield on Popup";
1322const char kOmniboxUIJogTextfieldOnPopupDescription[] =
1323 "In the Omnibox, jog the textfield to align with the dropdown suggestions "
1324 "text when the popup is opened. When this feature is disabled, the "
1325 "textfield is always aligned with the suggestions text, and a separator "
1326 "fills the gap. If Material Refresh is disabled, this has no effect.";
1327
Brett Wilsonecb80982017-07-12 20:34:511328const char kOmniboxUIMaxAutocompleteMatchesName[] =
1329 "Omnibox UI Max Autocomplete Matches";
1330
1331const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
1332 "Changes the maximum number of autocomplete matches displayed in the "
1333 "Omnibox UI.";
1334
Justin Donnelly65c9e8b2017-10-01 05:15:011335const char kOmniboxUIShowSuggestionFaviconsName[] =
1336 "Omnibox UI Show Suggestion Favicons";
1337const char kOmniboxUIShowSuggestionFaviconsDescription[] =
1338 "Shows favicons instead of generic vector icons for URL suggestions in the "
1339 "Omnibox dropdown.";
1340
1341const char kOmniboxUISwapTitleAndUrlName[] = "Omnibox UI Swap Title and URL";
1342const char kOmniboxUISwapTitleAndUrlDescription[] =
1343 "In the omnibox dropdown, shows titles before URLs when both are "
1344 "available.";
1345
Troy Hildebrandtb32637ca2018-02-21 23:25:091346const char kOmniboxVoiceSearchAlwaysVisibleName[] =
1347 "Omnibox Voice Search Always Visible";
1348const char kOmniboxVoiceSearchAlwaysVisibleDescription[] =
1349 "Always displays voice search icon in focused omnibox as long as voice "
1350 "search is possible";
1351
Adrienne Walkerc87477e2018-06-06 22:28:211352const char kOopRasterizationName[] = "Out of process rasterization";
1353const char kOopRasterizationDescription[] =
1354 "Perform Ganesh raster in the GPU Process instead of the renderer. "
1355 "Must also enable GPU rasterization";
1356
Brett Wilsonecb80982017-07-12 20:34:511357const char kOriginTrialsName[] = "Origin Trials";
1358const char kOriginTrialsDescription[] =
1359 "Enables origin trials for controlling access to feature/API experiments.";
1360
Becca Hughes930d8cd2017-10-02 11:09:121361const char kOverflowIconsForMediaControlsName[] =
1362 "Icons on Media Controls Overflow Menu";
1363const char kOverflowIconsForMediaControlsDescription[] =
1364 "Displays icons on the overflow menu of the native media controls";
1365
Brett Wilsonecb80982017-07-12 20:34:511366const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
1367const char kOverlayScrollbarsDescription[] =
1368 "Enable the experimental overlay scrollbars implementation. You must also "
1369 "enable threaded compositing to have the scrollbars animate.";
1370
chaopenge8aa016b2017-08-24 15:20:191371const char kOverlayScrollbarsFlashAfterAnyScrollUpdateName[] =
1372 "Flash Overlay Scrollbars After Any Scroll Update";
1373const char kOverlayScrollbarsFlashAfterAnyScrollUpdateDescription[] =
1374 "Flash Overlay Scrollbars After any scroll update happends in page. You"
1375 " must also enable Overlay Scrollbars.";
1376
chaopeng343678022017-08-24 18:45:001377const char kOverlayScrollbarsFlashWhenMouseEnterName[] =
1378 "Flash Overlay Scrollbars When Mouse Enter";
1379const char kOverlayScrollbarsFlashWhenMouseEnterDescription[] =
1380 "Flash Overlay Scrollbars When Mouse Enter a scrollable area. You must also"
1381 " enable Overlay Scrollbars.";
1382
Daniele Castagna74ddb9c2018-06-21 22:59:021383const char kOverlayStrategiesName[] = "Select HW overlay strategies";
1384const char kOverlayStrategiesDescription[] =
1385 "Select strategies used to promote quads to HW overlays.";
1386const char kOverlayStrategiesDefault[] = "Default";
1387const char kOverlayStrategiesNone[] = "None";
1388const char kOverlayStrategiesUnoccludedFullscreen[] =
1389 "Unoccluded fullscreen buffers (single-fullscreen)";
1390const char kOverlayStrategiesUnoccluded[] =
1391 "Unoccluded buffers (single-fullscreen,single-on-top)";
1392const char kOverlayStrategiesOccludedAndUnoccluded[] =
1393 "Occluded and unoccluded buffers "
1394 "(single-fullscreen,single-on-top,underlay)";
1395
Claudio Magni81326f92017-09-01 05:21:181396const char kUseNewAcceptLanguageHeaderName[] = "Use new Accept-Language header";
1397const char kUseNewAcceptLanguageHeaderDescription[] =
1398 "Adds the base language code after other corresponding language+region "
1399 "codes. This ensures that users receive content in their preferred "
1400 "language.";
1401
Brett Wilsonecb80982017-07-12 20:34:511402const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
1403const char kOverscrollHistoryNavigationDescription[] =
Mohsen Izadi88b392a2018-02-15 06:57:481404 "History navigation in response to horizontal overscroll.";
Brett Wilsonecb80982017-07-12 20:34:511405const char kOverscrollHistoryNavigationSimpleUi[] = "Simple";
Mohsen Izadi88b392a2018-02-15 06:57:481406const char kOverscrollHistoryNavigationParallaxUi[] = "Parallax";
Brett Wilsonecb80982017-07-12 20:34:511407
1408const char kOverscrollStartThresholdName[] = "Overscroll start threshold";
1409const char kOverscrollStartThresholdDescription[] =
1410 "Changes overscroll start threshold relative to the default value.";
1411const char kOverscrollStartThreshold133Percent[] = "133%";
1412const char kOverscrollStartThreshold166Percent[] = "166%";
1413const char kOverscrollStartThreshold200Percent[] = "200%";
1414
chaopenge2b6e5f2018-05-08 16:40:451415const char kTouchpadOverscrollHistoryNavigationName[] =
1416 "Overscroll history navigation on Touchpad";
1417const char kTouchpadOverscrollHistoryNavigationDescription[] =
1418 "Allows swipe left/right from touchpad change browser navigation.";
1419
Xing Liu5400a002017-09-15 21:48:291420const char kParallelDownloadingName[] = "Parallel downloading";
1421const char kParallelDownloadingDescription[] =
Yannic Bonenbergera32f9902017-11-20 18:47:061422 "Enable parallel downloading to accelerate download speed.";
Xing Liu5400a002017-09-15 21:48:291423
Brett Wilsonecb80982017-07-12 20:34:511424const char kPassiveEventListenerDefaultName[] =
1425 "Passive Event Listener Override";
1426const char kPassiveEventListenerDefaultDescription[] =
1427 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
1428 "haven't requested otherwise) to be treated as passive. This will break "
1429 "touch/wheel behavior on some websites but is useful for demonstrating the "
1430 "potential performance benefits of adopting passive event listeners.";
1431const char kPassiveEventListenerTrue[] = "True (when unspecified)";
1432const char kPassiveEventListenerForceAllTrue[] = "Force All True";
1433
1434const char kPassiveEventListenersDueToFlingName[] =
1435 "Touch Event Listeners Passive Default During Fling";
1436const char kPassiveEventListenersDueToFlingDescription[] =
1437 "Forces touchstart, and first touchmove per scroll event listeners during "
1438 "fling to be treated as passive.";
1439
1440const char kPassiveDocumentEventListenersName[] =
1441 "Document Level Event Listeners Passive Default";
1442const char kPassiveDocumentEventListenersDescription[] =
1443 "Forces touchstart, and touchmove event listeners on document level "
1444 "targets (which haven't requested otherwise) to be treated as passive.";
1445
Sahel Sharify7400e882018-08-13 17:13:211446const char kPassiveDocumentWheelEventListenersName[] =
1447 "Document Level Wheel Event Listeners Passive Default";
1448const char kPassiveDocumentWheelEventListenersDescription[] =
1449 "Forces wheel, and mousewheel event listeners on document level targets "
1450 "(which haven't requested otherwise) to be treated as passive.";
1451
Vaclav Brozekd8a3f542017-11-16 14:21:131452const char kPasswordImportName[] = "Password import";
1453const char kPasswordImportDescription[] =
1454 "Import functionality in password settings.";
Brett Wilsonecb80982017-07-12 20:34:511455
Friedrich Horschig03c91982018-01-25 14:21:281456const char kPasswordSearchMobileName[] = "Password search";
1457const char kPasswordSearchMobileDescription[] =
1458 "Search functionality in password settings.";
1459
Friedrich Horschige6c27742018-04-23 17:13:411460const char kPasswordsKeyboardAccessoryName[] =
1461 "Add password-related functions to keyboard accessory";
1462const char kPasswordsKeyboardAccessoryDescription[] =
1463 "Adds password generation button and toggle for the passwords bottom sheet "
1464 "to the keyboard accessory. Replaces password generation popups.";
1465
Christos Froussios6e060c42018-07-31 16:17:191466const char kPasswordsMigrateLinuxToLoginDBName[] =
1467 "Migrate passwords to \"Login Data\"";
1468const char kPasswordsMigrateLinuxToLoginDBDescription[] =
Christos Froussiose34c38a2018-09-04 14:27:591469 "Performs a one-off irreversible migration of passwords from the "
Christos Froussios6e060c42018-07-31 16:17:191470 "gnome-keyring or kwallet into the profile directory.";
1471
Tom Sepez92a2cd242018-03-13 19:23:091472const char kPdfIsolationName[] = "PDF Isolation";
1473const char kPdfIsolationDescription[] =
1474 "Render PDF files from different origins in different plugin processes.";
1475
Brett Wilsonecb80982017-07-12 20:34:511476const char kPinchScaleName[] = "Pinch scale";
1477const char kPinchScaleDescription[] =
1478 "Enables experimental support for scale using pinch.";
1479
Doug Arnett620ff542018-02-06 17:54:221480const char kPreviewsAllowedName[] = "Previews Allowed";
1481const char kPreviewsAllowedDescription[] =
1482 "Allows previews to be shown subject to specific preview types being "
1483 "enabled and the client experiencing specific triggering conditions. "
1484 "May be used as a kill-switch to turn off all potential preview types.";
1485
Brett Wilsonecb80982017-07-12 20:34:511486const char kPrintPdfAsImageName[] = "Print Pdf as Image";
1487const char kPrintPdfAsImageDescription[] =
1488 "If enabled, an option to print PDF files as images will be available in "
1489 "print preview.";
1490
1491const char kPrintPreviewRegisterPromosName[] =
1492 "Print Preview Registration Promos";
1493const char kPrintPreviewRegisterPromosDescription[] =
1494 "Enable registering unregistered cloud printers from print preview.";
1495
1496const char kProtectSyncCredentialName[] = "Autofill sync credential";
1497const char kProtectSyncCredentialDescription[] =
1498 "How the password manager handles autofill for the sync credential.";
1499
1500const char kProtectSyncCredentialOnReauthName[] =
1501 "Autofill sync credential only for transactional reauth pages";
1502const char kProtectSyncCredentialOnReauthDescription[] =
1503 "How the password manager handles autofill for the sync credential only "
1504 "for transactional reauth pages.";
1505
Mohsen Izadi93faac12017-07-29 04:45:151506const char kPullToRefreshName[] = "Pull-to-refresh gesture";
1507const char kPullToRefreshDescription[] =
1508 "Pull-to-refresh gesture in response to vertical overscroll.";
Mohsen Izadi8c59ba52018-04-12 18:52:011509const char kPullToRefreshEnabledTouchscreen[] = "Enabled for touchscreen only";
Mohsen Izadi93faac12017-07-29 04:45:151510
Troy Hildebrandt7228ad12018-02-23 21:18:241511const char kQueryInOmniboxName[] = "Query in Omnibox";
1512const char kQueryInOmniboxDescription[] =
1513 "Only display query terms in the omnibox when viewing a search results "
1514 "page.";
1515
Brett Wilsonecb80982017-07-12 20:34:511516const char kQuicName[] = "Experimental QUIC protocol";
1517const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1518
Emily Starke8878d52018-05-11 21:27:261519const char kRecurrentInterstitialName[] =
1520 "Show a message when the same SSL error recurs";
1521const char kRecurrentInterstitialDescription[] =
1522 "Enable a special message on the SSL certificate error page when the same "
1523 "SSL error occurs repeatedly.";
1524
Brett Wilsonecb80982017-07-12 20:34:511525const char kReducedReferrerGranularityName[] =
1526 "Reduce default 'referer' header granularity.";
1527const char kReducedReferrerGranularityDescription[] =
1528 "If a page hasn't set an explicit referrer policy, setting this flag will "
1529 "reduce the amount of information in the 'referer' header for cross-origin "
1530 "requests.";
1531
Lei Zhang0ca70ea2018-09-07 17:51:011532const char kRegionalLocalesAsDisplayUIName[] =
Claudio Magnie0a80bb2018-01-31 02:52:581533 "Allow regional locales as display UI";
Lei Zhang0ca70ea2018-09-07 17:51:011534const char kRegionalLocalesAsDisplayUIDescription[] =
Claudio Magnie0a80bb2018-01-31 02:52:581535 "This flag allows regional locales to be selected as display UI by the "
1536 "user in Language Settings. The actual locale of the system is derived "
1537 "from the user selection based on some simple fallback logic.";
1538
Christian Dullweber1af31e62018-02-22 11:49:481539const char kRemoveNavigationHistoryName[] =
Christian Dullweberb13ffda2018-02-23 11:42:141540 "Remove navigation entry on history deletion";
Christian Dullweber1af31e62018-02-22 11:49:481541const char kRemoveNavigationHistoryDescription[] =
1542 "Remove a navigation entry when the corresponding history entry has been "
1543 "deleted.";
1544
Christian Dullweber3cc579a22018-09-11 10:54:441545const char kRewriteLevelDBOnDeletionName[] =
1546 "Rewrite LevelDB instances after full deletions";
1547const char kRewriteLevelDBOnDeletionDescription[] =
1548 "Rewrite LevelDB instances to remove traces of deleted data from disk.";
1549
Yutaka Hirano4c0f2f5d452017-11-17 04:24:351550const char kRendererSideResourceSchedulerName[] =
1551 "Renderer side ResourceScheduler";
1552const char kRendererSideResourceSchedulerDescription[] =
1553 "Migrate some ResourceScheduler functionalities to renderer";
1554
Brett Wilsonecb80982017-07-12 20:34:511555const char kRequestTabletSiteName[] =
1556 "Request tablet site option in the settings menu";
1557const char kRequestTabletSiteDescription[] =
1558 "Allows the user to request tablet site. Web content is often optimized "
1559 "for tablet devices. When this option is selected the user agent string is "
1560 "changed to indicate a tablet device. Web content optimized for tablets is "
1561 "received there after for the current tab.";
1562
1563const char kResetAppListInstallStateName[] =
1564 "Reset the App Launcher install state on every restart.";
1565const char kResetAppListInstallStateDescription[] =
1566 "Reset the App Launcher install state on every restart. While this flag is "
1567 "set, Chrome will forget the launcher has been installed each time it "
1568 "starts. This is used for testing the App Launcher install flow.";
1569
Kinuko Yasuda33955082018-06-19 10:14:591570const char kResourceLoadSchedulerName[] = "Enable resource load throttling";
Brett Wilsonecb80982017-07-12 20:34:511571const char kResourceLoadSchedulerDescription[] =
Kinuko Yasuda33955082018-06-19 10:14:591572 "Uses the resource load scheduler in blink to throttle resource load "
1573 "requests.";
Brett Wilsonecb80982017-07-12 20:34:511574
Brett Wilsonecb80982017-07-12 20:34:511575const char kSafeSearchUrlReportingName[] = "SafeSearch URLs reporting.";
1576const char kSafeSearchUrlReportingDescription[] =
1577 "If enabled, inappropriate URLs can be reported back to SafeSearch.";
1578
Alexei Filippov98772752018-01-27 08:26:521579const char kSamplingHeapProfilerName[] = "Native memory sampling profiler.";
1580const char kSamplingHeapProfilerDescription[] =
1581 "Enables native memory sampling profiler with specified rate in KiB. "
1582 "If sampling rate is not provided the default value of 128 KiB is used.";
1583
Brett Wilsonecb80982017-07-12 20:34:511584const char kSaveasMenuLabelExperimentName[] =
1585 "Switch 'Save as' menu labels to 'Download'";
1586const char kSaveasMenuLabelExperimentDescription[] =
1587 "Enables an experiment to switch menu labels that use 'Save as...' to "
1588 "'Download'.";
1589
1590const char kSavePageAsMhtmlName[] = "Save Page as MHTML";
1591const char kSavePageAsMhtmlDescription[] =
1592 "Enables saving pages as MHTML: a single text file containing HTML and all "
1593 "sub-resources.";
1594
Nate Chapin9638e7102017-09-20 22:11:011595const char kSavePreviousDocumentResourcesName[] =
1596 "Save Previous Document Resources";
1597const char kSavePreviousDocumentResourcesDescription[] =
1598 "Saves an old document's cached resources until the specified point in the "
1599 "next document's lifecycle.";
1600const char kSavePreviousDocumentResourcesNever[] =
1601 "Don't explicitly save resources";
1602const char kSavePreviousDocumentResourcesUntilOnDOMContentLoaded[] =
1603 "Save resources until onDOMContentLoaded completes";
1604const char kSavePreviousDocumentResourcesUntilOnLoad[] =
1605 "Save resources until onload completes";
1606
gogeraldd5061b592017-09-06 23:39:551607const char kServiceWorkerPaymentAppsName[] = "Service Worker payment apps";
1608const char kServiceWorkerPaymentAppsDescription[] =
1609 "Enable Service Worker applications to integrate as payment apps";
1610
momohattfc352292018-08-29 05:12:361611const char kServiceWorkerImportedScriptUpdateCheckName[] =
1612 "Enable update check for service worker importScripts() resources";
1613const char kServiceWorkerImportedScriptUpdateCheckDescription[] =
1614 "Extend byte-for-byte update check for scripts that are imported by the "
1615 "service worker script via importScripts().";
1616
Lei Zhang0ca70ea2018-09-07 17:51:011617const char kServiceWorkerServicificationName[] = "Servicified service workers";
1618const char kServiceWorkerServicificationDescription[] =
Makoto Shimazu22078cc2018-02-21 03:01:441619 "Enable the servicified service workers. A servicified service worker can "
1620 "have direct connection from its clients, so that fetch events can be "
1621 "dispatched through the connection without hopping to the browser process.";
Makoto Shimazud9f333c2017-08-08 07:23:171622
Azeem Arshad3b1ef73122018-08-30 02:04:151623const char kServiceWorkerLongRunningMessageName[] =
1624 "Service worker long running message dispatch.";
1625const char kServiceWorkerLongRunningMessageDescription[] =
1626 "Enables long running message dispatch method for service workers. "
1627 "Messages sent with this method do not timeout, allowing the service "
1628 "worker to run indefinitely.";
1629
Brett Wilsonecb80982017-07-12 20:34:511630const char kSettingsWindowName[] = "Show settings in a window";
1631const char kSettingsWindowDescription[] =
1632 "Settings will be shown in a dedicated window instead of as a browser tab.";
1633
Manu Cornetd7ef7c52018-05-01 22:08:231634const char kShelfHoverPreviewsName[] =
1635 "Show previews of running apps when hovering over the shelf.";
1636const char kShelfHoverPreviewsDescription[] =
1637 "Shows previews of the open windows for a given running app when hovering "
1638 "over the shelf.";
1639
Manu Cornet683e14b2018-07-16 17:39:431640const char kShelfNewUiName[] = "Newest shelf redesign.";
1641const char kShelfNewUiDescription[] = "Enables the newest shelf appearance.";
1642
Naoki Fukino008a0022018-05-23 18:33:001643const char kShowAndroidFilesInFilesAppName[] =
1644 "Show Android files in Files app";
1645const char kShowAndroidFilesInFilesAppDescription[] =
1646 "Show Android files in Files app if Android is enabled on the device.";
1647
Luciano Pachecoa0e2753f2018-07-16 07:41:101648const char kFilesAppDisableMyFilesNavigationName[] =
1649 "Disable the My Files on the navigation in the Files app";
1650const char kFilesAppDisableMyFilesNavigationDescription[] =
1651 "Disables the My Files on the navigation in the Files app, which displays "
Luciano Pachecof1beaa82018-05-30 04:48:511652 R"("My Files" root for Downloads, Linux and Play files)";
1653
Brett Wilsonecb80982017-07-12 20:34:511654const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
1655const char kShowAutofillSignaturesDescription[] =
Maxim Kolosovskiye66f8cb2018-03-23 10:25:381656 "Annotates web forms with Autofill signatures as HTML attributes. Also "
1657 "marks password fields suitable for password generation.";
Brett Wilsonecb80982017-07-12 20:34:511658
1659const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
1660const char kShowAutofillTypePredictionsDescription[] =
1661 "Annotates web forms with Autofill field type predictions as placeholder "
1662 "text.";
1663
1664const char kShowOverdrawFeedbackName[] = "Show overdraw feedback";
1665const char kShowOverdrawFeedbackDescription[] =
1666 "Visualize overdraw by color-coding elements based on if they have other "
1667 "elements drawn underneath.";
1668
Carlos IL89128732018-04-03 17:00:251669const char kSupervisedUserCommittedInterstitialsName[] =
1670 "Enable Supervised User Committed Interstitials";
1671const char kSupervisedUserCommittedInterstitialsDescription[] =
1672 "Use committed error pages instead of transient navigation entries for "
1673 "supervised user interstitials";
1674
yiyixbdfa9a0b2017-10-23 22:21:471675const char kEnableDrawOcclusionName[] = "Enable draw occlusion";
1676const char kEnableDrawOcclusionDescription[] =
1677 "Enable the system to use draw occlusion to skip draw quads when they are "
1678 "not shown on the screen.";
1679
Brett Wilsonecb80982017-07-12 20:34:511680const char kShowSavedCopyName[] = "Show Saved Copy Button";
1681const char kShowSavedCopyDescription[] =
1682 "When a page fails to load, if a stale copy of the page exists in the "
1683 "browser cache, a button will be presented to allow the user to load that "
1684 "stale copy. The primary enabling choice puts the button in the most "
1685 "salient position on the error page; the secondary enabling choice puts it "
1686 "secondary to the reload button.";
1687const char kEnableShowSavedCopyPrimary[] = "Enable: Primary";
1688const char kEnableShowSavedCopySecondary[] = "Enable: Secondary";
1689const char kDisableShowSavedCopy[] = "Disable";
1690
Brett Wilsonecb80982017-07-12 20:34:511691const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1692const char kSilentDebuggerExtensionApiDescription[] =
1693 "Do not show the infobar when an extension attaches to a page via "
1694 "chrome.debugger API. This is required to debug extension background "
1695 "pages.";
1696
Tsuyoshi Horo53895ba92018-03-14 04:06:481697const char kSignedHTTPExchangeName[] = "Signed HTTP Exchange";
1698const char kSignedHTTPExchangeDescription[] =
1699 "Enables Origin-Signed HTTP Exchanges support which is still in "
1700 "development. Warning: Enabling this may pose a security risk.";
1701
Brett Wilsonecb80982017-07-12 20:34:511702const char kSimpleCacheBackendName[] = "Simple Cache for HTTP";
1703const char kSimpleCacheBackendDescription[] =
1704 "The Simple Cache for HTTP is a new cache. It relies on the filesystem for "
1705 "disk space allocation.";
1706
Christopher Thompson75ff845d2018-02-01 20:12:461707const char kSimplifyHttpsIndicatorName[] = "Simplify HTTPS indicator UI";
1708const char kSimplifyHttpsIndicatorDescription[] =
1709 "Change the UI treatment for HTTPS pages.";
1710
Brett Wilsonecb80982017-07-12 20:34:511711const char kSingleClickAutofillName[] = "Single-click autofill";
1712const char kSingleClickAutofillDescription[] =
1713 "Make autofill suggestions on initial mouse click on a form element.";
1714
Bret Sepulveda4f891da2018-07-16 19:10:301715const char kSingleTabMode[] = "Single-tab mode";
1716const char kSingleTabModeDescription[] =
1717 "Windows with a single tab receive a special, minimal visual treatment.";
1718
Nick Carter855bc492018-03-10 00:44:571719const char kStrictSiteIsolationName[] = "Strict site isolation";
1720const char kStrictSiteIsolationDescription[] =
Charlie Reisf44fe292018-08-31 18:38:471721 "Security mode that enables site isolation for all sites (SitePerProcess). "
1722 "In this mode, each renderer process will contain pages from at most one "
1723 "site, using out-of-process iframes when needed. NOTE: Site isolation is "
1724 "enabled by default on desktop platforms regardless of how this flag is "
1725 "set; see chrome://process-internals for whether it is currently enabled. "
1726 "Setting this flag to 'Enabled' turns on site isolation regardless of the "
1727 "default. Here, 'Disabled' is a legacy value that actually means "
1728 "'Default,' in which case site isolation may be already enabled based on "
1729 "platform, enterprise policy, or field trial. See also "
Charlie Reis30e39032018-09-04 18:58:181730 "#site-isolation-trial-opt-out for how to disable site isolation for "
Charlie Reisf44fe292018-08-31 18:38:471731 "testing.";
Nick Carter855bc492018-03-10 00:44:571732
1733const char kSiteIsolationTrialOptOutName[] = "Site isolation trial opt-out";
1734const char kSiteIsolationTrialOptOutDescription[] =
Charlie Reisf44fe292018-08-31 18:38:471735 "Opts out of field trials and defaults that enable site isolation modes "
Nick Carter855bc492018-03-10 00:44:571736 "(SitePerProcess, IsolateOrigins, etc). Intended for diagnosing bugs that "
1737 "may be due to out-of-process iframes. Opt-out has no effect if site "
1738 "isolation is force-enabled via #enable-site-per-process or enterprise "
1739 "policy. Caution: this disables important mitigations for the Spectre CPU "
1740 "vulnerability affecting most computers.";
Lei Zhang0ca70ea2018-09-07 17:51:011741const char kSiteIsolationTrialOptOutChoiceDefault[] = "Default";
1742const char kSiteIsolationTrialOptOutChoiceOptOut[] =
Nick Carter855bc492018-03-10 00:44:571743 "Opt-out (not recommended)";
Brett Wilsonecb80982017-07-12 20:34:511744
Pattideade7972018-04-27 02:59:401745const char kSiteSettings[] = "Site settings";
Brett Wilsonecb80982017-07-12 20:34:511746const char kSiteSettingsDescription[] =
Pattideade7972018-04-27 02:59:401747 "Add the All Sites list to Site Settings.";
Brett Wilsonecb80982017-07-12 20:34:511748
Brett Wilsonecb80982017-07-12 20:34:511749const char kSmoothScrollingName[] = "Smooth Scrolling";
1750const char kSmoothScrollingDescription[] =
1751 "Animate smoothly when scrolling page content.";
1752
1753const char kSoftwareRasterizerName[] = "3D software rasterizer";
1754const char kSoftwareRasterizerDescription[] =
1755 "Fall back to a 3D software rasterizer when the GPU cannot be used.";
1756
Wei-Yin Chen (陳威尹)deff0802018-01-19 06:29:201757const char kSoleIntegrationName[] = "Sole integration";
1758const char kSoleIntegrationDescription[] =
1759 "Enable Sole integration for browser customization. You must restart "
1760 "the browser twice for changes to take effect.";
1761
Tommy Steimel77704be2017-08-28 22:14:401762const char kSoundContentSettingName[] = "Sound content setting";
1763const char kSoundContentSettingDescription[] =
1764 "Enable site-wide muting in content settings and tab strip context menu.";
1765
Justin Donnelly4e448cb2017-07-07 21:32:131766const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
1767 "Enable speculative start of a service worker when a search is predicted.";
Justin Donnelly4e448cb2017-07-07 21:32:131768const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
1769 "If enabled, when the user enters text in the omnibox that looks like a "
1770 "a query, any service worker associated with the search engine the query "
1771 "will be sent to is started early.";
1772
Brett Wilsonecb80982017-07-12 20:34:511773const char kSpellingFeedbackFieldTrialName[] = "Spelling Feedback Field Trial";
1774const char kSpellingFeedbackFieldTrialDescription[] =
1775 "Enable the field trial for sending user feedback to spelling service.";
horo201d49492017-05-19 05:31:401776
Carlos ILe5fa0a12018-08-03 16:08:321777const char kSSLCommittedInterstitialsName[] = "Committed Interstitials";
1778const char kSSLCommittedInterstitialsDescription[] =
1779 "Use committed error pages instead of transient navigation entries "
1780 "for SSL interstitial error pages (i.e. certificate errors).";
1781
Shubhie Panickerfaf082ed2018-01-03 04:49:151782const char kStopInBackgroundName[] = "Stop in background";
1783const char kStopInBackgroundDescription[] =
1784 "Stop scheduler task queues, in the background, "
Shubhie Panicker56c99a22018-03-21 00:22:281785 " after a grace period.";
Shubhie Panickerfaf082ed2018-01-03 04:49:151786
Shubhie Panicker56c99a22018-03-21 00:22:281787const char kStopNonTimersInBackgroundName[] =
1788 "Stop non-timer task queues background";
1789const char kStopNonTimersInBackgroundDescription[] =
1790 "Stop non-timer task queues, in the background, "
1791 "after a grace period.";
1792
Brett Wilsonecb80982017-07-12 20:34:511793const char kSuggestionsWithSubStringMatchName[] =
1794 "Substring matching for Autofill suggestions";
1795const char kSuggestionsWithSubStringMatchDescription[] =
1796 "Match Autofill suggestions based on substrings (token prefixes) rather "
1797 "than just prefixes.";
vabr0215a8e2017-03-28 12:47:341798
Marc Treibf65fb002018-08-03 11:17:161799const char kSyncStandaloneTransportName[] = "Allow Sync standalone transport";
1800const char kSyncStandaloneTransportDescription[] =
1801 "If enabled, allows Chrome Sync to start in standalone transport mode. In "
1802 "this mode, the Sync machinery can start without user opt-in, but only a "
1803 "subset of data types are supported.";
1804
Marc Treib4bd95e72018-08-30 06:30:581805const char kSyncSupportSecondaryAccountName[] =
1806 "Support secondary accounts for Sync standalone transport";
1807const char kSyncSupportSecondaryAccountDescription[] =
1808 "If enabled, allows Chrome Sync to start in standalone transport mode for "
1809 "a signed-in account that has not been chosen as Chrome's primary account. "
1810 "This only has an effect if sync-standalone-transport is also enabled.";
1811
Jan Krcal2ff23f7c2018-09-04 16:16:131812const char kSyncUSSAutofillProfileName[] = "Enable USS for autofill profile";
1813const char kSyncUSSAutofillProfileDescription[] =
1814 "Enables the new implementation of autofill profile sync";
1815
Jan Krcale3641b92018-08-10 17:53:311816const char kSyncUSSAutofillWalletDataName[] =
1817 "Enable USS for autofill wallet data";
1818const char kSyncUSSAutofillWalletDataDescription[] =
1819 "Enables the new implementation of autofill walet data sync";
1820
Brett Wilsonecb80982017-07-12 20:34:511821const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1822const char kSyncSandboxDescription[] =
1823 "Connects to the testing server for Chrome Sync.";
vabr0215a8e2017-03-28 12:47:341824
Joe Downing8cbbc192018-05-14 17:37:071825const char kSystemKeyboardLockName[] = "Experimental system keyboard lock";
1826const char kSystemKeyboardLockDescription[] =
1827 "Enables websites to use the keyboard.lock() API to intercept system "
1828 "keyboard shortcuts and have the events routed directly to the website "
1829 "when in fullscreen mode.";
1830
Christian Dullweberd0d96f02017-09-13 09:22:511831const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1832const char kTabsInCbdDescription[] =
1833 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
1834
Becky Zhou99c22802017-10-19 05:09:271835const char kTabModalJsDialogName[] = "Auto-dismissing JavaScript Dialogs";
1836const char kTabModalJsDialogDescription[] =
1837 "If enabled, the JavaScript dialog will be auto dismissable when switching"
1838 " tab.";
1839
Brett Wilsonecb80982017-07-12 20:34:511840const char kTcpFastOpenName[] = "TCP Fast Open";
1841const char kTcpFastOpenDescription[] =
1842 "Enable the option to send extra authentication information in the initial "
1843 "SYN packet for a previously connected client, allowing faster data send "
1844 "start.";
vabr0215a8e2017-03-28 12:47:341845
Daniele Castagna0fead93e2018-01-10 20:40:291846const char kTintGlCompositedContentName[] = "Tint GL-composited content";
1847const char kTintGlCompositedContentDescription[] =
1848 "Tint contents composited using GL with a shade of red to help debug and "
1849 "study overlay support.";
1850
Brett Wilsonecb80982017-07-12 20:34:511851const char kTopChromeMd[] = "UI Layout for the browser's top chrome";
1852const char kTopChromeMdDescription[] =
Peter Boström06b38392018-10-22 21:41:561853 "Toggles between 1) Material Design refresh, 2) Touchable Material Design "
1854 "refresh and 3) Switching automatically between Touchable and "
1855 "non-Touchable modes.";
Peter Boström85fa2e12018-03-16 20:43:401856const char kTopChromeMdMaterialRefresh[] = "Refresh";
Peter Boström756745dd2018-05-14 22:59:431857const char kTopChromeMdMaterialRefreshTouchOptimized[] = "Touchable Refresh";
Tom Anderson083e6142018-09-25 01:12:061858const char kTopChromeMdMaterialRefreshDynamic[] = "Dynamic Refresh";
vabr0215a8e2017-03-28 12:47:341859
Brett Wilsonecb80982017-07-12 20:34:511860const char kThreadedScrollingName[] = "Threaded scrolling";
1861const char kThreadedScrollingDescription[] =
1862 "Threaded handling of scroll-related input events. Disabling this will "
1863 "force all such scroll events to be handled on the main thread. Note that "
1864 "this can dramatically hurt scrolling performance of most websites and is "
1865 "intended for testing purposes only.";
1866
Steven Valdez4584b2482017-07-14 01:11:571867const char kTLS13VariantName[] = "TLS 1.3";
1868const char kTLS13VariantDescription[] = "Sets the TLS 1.3 variant used.";
1869const char kTLS13VariantDisabled[] = "Disabled";
Steven Valdez57d88652017-10-05 21:05:111870const char kTLS13VariantDeprecated[] = "Disabled (Deprecated Setting)";
Steven Valdez781157b2018-01-11 13:32:041871const char kTLS13VariantDraft23[] = "Enabled (Draft 23)";
Steven Valdezf27cb7f2018-08-21 18:34:331872const char kTLS13VariantFinal[] = "Enabled (Final)";
Steven Valdez4584b2482017-07-14 01:11:571873
Dominick Ng8896b1cd2017-10-17 23:24:361874const char kTopSitesFromSiteEngagementName[] = "Top Sites from Site Engagement";
1875const char kTopSitesFromSiteEngagementDescription[] =
1876 "Enable Top Sites on the New Tab Page to be sourced and sorted using site "
1877 "engagement.";
1878
Brett Wilsonecb80982017-07-12 20:34:511879const char kTouchAdjustmentName[] = "Touch adjustment";
1880const char kTouchAdjustmentDescription[] =
1881 "Refine the position of a touch gesture in order to compensate for touches "
1882 "having poor resolution compared to a mouse.";
1883
Alex Newcomerb3d3c972018-05-03 14:59:401884const char kTouchableAppContextMenuName[] = "Touchable App Context Menu";
1885const char kTouchableAppContextMenuDescription[] =
1886 "Enable the touchable app context menu, which enlarges app context menus "
1887 "in the Launcher and Shelf to make room for new features.";
1888
Brett Wilsonecb80982017-07-12 20:34:511889const char kTouchDragDropName[] = "Touch initiated drag and drop";
1890const char kTouchDragDropDescription[] =
1891 "Touch drag and drop can be initiated through long press on a draggable "
1892 "element.";
1893
1894const char kTouchEventsName[] = "Touch Events API";
1895const char kTouchEventsDescription[] =
1896 "Force Touch Events API feature detection to always be enabled or "
1897 "disabled, or to be enabled when a touchscreen is detected on startup "
Ella Gea6a203c92017-10-26 19:09:291898 "(Automatic).";
Brett Wilsonecb80982017-07-12 20:34:511899
1900const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
1901const char kTouchSelectionStrategyDescription[] =
1902 "Controls how text selection granularity changes when touch text selection "
1903 "handles are dragged. Non-default behavior is experimental.";
1904const char kTouchSelectionStrategyCharacter[] = "Character";
1905const char kTouchSelectionStrategyDirection[] = "Direction";
1906
1907const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
1908const char kTraceUploadUrlDescription[] =
1909 "This is to be used in conjunction with the enable-navigation-tracing "
1910 "flag. Please select the label that best describes the recorded traces. "
1911 "This will choose the destination the traces are uploaded to. If you are "
1912 "not sure, select other. If left empty, no traces will be uploaded.";
1913const char kTraceUploadUrlChoiceOther[] = "Other";
1914const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1915const char kTraceUploadUrlChoiceQa[] = "QA";
1916const char kTraceUploadUrlChoiceTesting[] = "Testing";
1917
Anthony Vallee-Duboisc0a027d72018-08-30 17:11:561918const char kTranslateExplicitLanguageAskName[] =
1919 "Explicitly ask for language preferences";
1920const char kTranslateExplicitLanguageAskDescription[] =
1921 "Explicitly ask the user which languages they can read on Chrome startup, "
1922 "on the first run that doesn't already have a promo.";
1923
Anthony Vallee-Dubois265c5692018-06-01 15:57:141924const char kTranslateForceTriggerOnEnglishName[] =
1925 "Select which language model to use to trigger translate on English "
1926 "content";
1927const char kTranslateForceTriggerOnEnglishDescription[] =
1928 "Force the Translate Triggering on English pages experiment to be enabled "
1929 "with the selected language model active.";
1930
Philippe Hamel7fdaa452017-09-29 17:22:491931const char kTranslateRankerEnforcementName[] =
1932 "Enforce TranslateRanker decisions";
1933const char kTranslateRankerEnforcementDescription[] =
1934 "Improved Translate UI triggering logic. TranslateRanker decides whether "
1935 "or not Translate UI should be triggered in a given context.";
1936
Nicolas Ouellet-payeur9e5ff3d2018-06-20 16:07:161937const char kTranslateUIName[] = "Enable Translate";
1938const char kTranslateUIDescription[] =
1939 "Enable the Translate popup when visiting webpages in other languages.";
1940
Mustafa Emre Acerb3aa36a82018-05-22 21:44:051941const char kTreatInsecureOriginAsSecureName[] =
1942 "Insecure origins treated as secure";
1943const char kTreatInsecureOriginAsSecureDescription[] =
1944 "Treat given (insecure) origins as secure origins. Multiple origins can be "
1945 "supplied as a comma-separated list. For the definition of secure "
1946 "contexts, "
1947 "see https://w3c.github.io/webappsec-secure-contexts/";
1948
Brett Wilsonecb80982017-07-12 20:34:511949const char kTrySupportedChannelLayoutsName[] =
1950 "Causes audio output streams to check if channel layouts other than the "
1951 "default hardware layout are available.";
1952const char kTrySupportedChannelLayoutsDescription[] =
1953 "Causes audio output streams to check if channel layouts other than the "
1954 "default hardware layout are available. Turning this on will allow the OS "
1955 "to do stereo to surround expansion if supported. May expose third party "
1956 "driver bugs, use with caution.";
1957
David Roger6762a092018-01-31 15:55:071958const char kUnifiedConsentName[] = "Unified Consent";
1959const char kUnifiedConsentDescription[] =
1960 "Enables a unified management of user consent for privacy-related "
1961 "features. This includes new confirmation screens and improved settings "
1962 "pages.";
1963
Jérôme Lebelfe1b2e02018-08-03 12:26:201964const char kForceUnifiedConsentBumpName[] = "Force Unified Consent Bump";
1965const char kForceUnifiedConsentBumpDescription[] =
1966 "Force the unified consent bump UI to be shown on every start-up. This "
1967 "flag is for debug purpose, to test the UI.";
1968
Brett Wilsonecb80982017-07-12 20:34:511969const char kUiPartialSwapName[] = "Partial swap";
1970const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
1971
Chris Pickel3a227ae62017-08-24 10:47:261972const char kUseDdljsonApiName[] = "Use new ddljson API for Doodles";
1973const char kUseDdljsonApiDescription[] =
1974 "Enables the new ddljson API to fetch Doodles for the NTP.";
1975
Becca Hughes59c05b42017-11-03 13:11:581976const char kUseModernMediaControlsName[] = "New Media Controls";
1977const char kUseModernMediaControlsDescription[] =
1978 "Enables the new style native media controls.";
1979
Wei Li790e7a8572018-03-23 01:31:551980const char kUsePdfCompositorServiceName[] =
1981 "Use PDF compositor service for printing";
1982const char kUsePdfCompositorServiceDescription[] =
1983 "When enabled, use PDF compositor service to composite and generate PDF "
1984 "files for printing. When site isolation is enabled, disabling this will "
1985 "not stop using PDF compositor service since the service is required for "
1986 "printing out-of-process iframes correctly.";
1987
Mustaq Ahmedc646c0a2017-10-20 20:08:301988const char kUserActivationV2Name[] = "User Activation v2";
1989const char kUserActivationV2Description[] =
1990 "Enable simple user activation for APIs that are otherwise controlled by "
1991 "user gesture tokens.";
1992
Brett Wilsonecb80982017-07-12 20:34:511993const char kUserConsentForExtensionScriptsName[] =
1994 "User consent for extension scripts";
1995const char kUserConsentForExtensionScriptsDescription[] =
1996 "Require user consent for an extension running a script on the page, if "
1997 "the extension requested permission to run on all urls.";
1998
1999const char kUseSuggestionsEvenIfFewFeatureName[] =
2000 "Disable minimum for server-side tile suggestions on NTP.";
2001const char kUseSuggestionsEvenIfFewFeatureDescription[] =
2002 "Request server-side suggestions even if there are only very few of them "
2003 "and use them for tiles on the New Tab Page.";
2004
2005const char kV8CacheOptionsName[] = "V8 caching mode.";
2006const char kV8CacheOptionsDescription[] =
2007 "Caching mode for the V8 JavaScript engine.";
Brett Wilsonecb80982017-07-12 20:34:512008const char kV8CacheOptionsCode[] = "Cache V8 compiler data.";
2009
Hitoshi Yoshida3e5db562017-09-11 02:31:082010const char kV8ContextSnapshotName[] = "Use a snapshot to create V8 contexts.";
2011const char kV8ContextSnapshotDescription[] =
2012 "Sets to use a snapshot to create V8 contexts in frame creation.";
2013
Michael Hablich896d52662017-10-23 15:59:572014const char kV8VmFutureName[] = "Future V8 VM features";
2015const char kV8VmFutureDescription[] =
2016 "This enables upcoming and experimental V8 VM features. "
2017 "This flag does not enable experimental JavaScript features.";
2018
Hannes Payer1130d5672018-06-05 07:37:312019const char kV8OrinocoName[] = "V8 Orinoco garbage collection features";
2020const char kV8OrinocoDescription[] =
2021 "This enables the V8 Orinoco garbage collection features.";
2022
Brett Wilsonecb80982017-07-12 20:34:512023const char kVideoFullscreenOrientationLockName[] =
2024 "Lock screen orientation when playing a video fullscreen.";
2025const char kVideoFullscreenOrientationLockDescription[] =
2026 "Lock the screen orientation of the device to match video orientation when "
2027 "a video goes fullscreen. Only on phones.";
2028
2029const char kVideoRotateToFullscreenName[] =
2030 "Rotate-to-fullscreen gesture for videos.";
2031const char kVideoRotateToFullscreenDescription[] =
2032 "Enter/exit fullscreen when device is rotated to/from the orientation of "
2033 "the video. Only on phones.";
2034
2035const char kWalletServiceUseSandboxName[] =
2036 "Use Google Payments sandbox servers";
2037const char kWalletServiceUseSandboxDescription[] =
2038 "For developers: use the sandbox service for Google Payments API calls.";
2039
Brett Wilsonecb80982017-07-12 20:34:512040const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
2041const char kWebglDraftExtensionsDescription[] =
2042 "Enabling this option allows web applications to access the WebGL "
2043 "Extensions that are still in draft status.";
2044
2045const char kWebMidiName[] = "Web MIDI API";
2046const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
2047
2048const char kWebPaymentsName[] = "Web Payments";
2049const char kWebPaymentsDescription[] =
2050 "Enable Web Payments API integration, a JavaScript API for merchants.";
2051
Mathieu Perreault51339b82017-07-20 17:06:052052const char kWebPaymentsModifiersName[] = "Enable web payment modifiers";
2053const char kWebPaymentsModifiersDescription[] =
2054 "If the website provides modifiers in the payment request, show the custom "
2055 "total for each payment instrument, update the shopping cart when "
2056 "instruments are switched, and send modified payment method specific data "
2057 "to the payment app.";
2058
Brett Wilsonecb80982017-07-12 20:34:512059const char kWebrtcEchoCanceller3Name[] = "WebRTC Echo Canceller 3.";
2060const char kWebrtcEchoCanceller3Description[] =
2061 "Experimental WebRTC echo canceller (AEC3).";
2062
Alex Loikob5fb1282018-08-14 10:04:402063const char kWebrtcHybridAgcName[] = "WebRTC hybrid Agc2/Agc1.";
2064const char kWebrtcHybridAgcDescription[] =
2065 "WebRTC Agc2 digital adaptation with Agc1 analog adaptation.";
2066
Brett Wilsonecb80982017-07-12 20:34:512067const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
2068const char kWebrtcHwDecodingDescription[] =
2069 "Support in WebRTC for decoding video streams using platform hardware.";
2070
2071const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
2072const char kWebrtcHwEncodingDescription[] =
2073 "Support in WebRTC for encoding video streams using platform hardware.";
2074
2075const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
2076const char kWebrtcHwH264EncodingDescription[] =
2077 "Support in WebRTC for encoding h264 video streams using platform "
2078 "hardware.";
2079
2080const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
2081const char kWebrtcHwVP8EncodingDescription[] =
2082 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
2083
Niels Möller090866a2018-02-13 10:55:032084const char kWebrtcNewEncodeCpuLoadEstimatorName[] =
2085 "WebRTC new encode cpu load estimator";
2086const char kWebrtcNewEncodeCpuLoadEstimatorDescription[] =
2087 "Enable new estimator for the encoder cpu load, for evaluation and "
2088 "testing. Intended to improve accuracy when screen casting.";
2089
Elad Alon85e0d0be2018-06-26 10:38:372090const char kWebRtcRemoteEventLogName[] = "WebRTC remote-bound event logging";
2091const char kWebRtcRemoteEventLogDescription[] =
2092 "Allow collecting WebRTC event logs and uploading them to Crash. "
2093 "Please note that, even if enabled, this will still require "
2094 "a policy to be set, for it to have an effect.";
2095
Brett Wilsonecb80982017-07-12 20:34:512096const char kWebrtcSrtpAesGcmName[] =
2097 "Negotiation with GCM cipher suites for SRTP in WebRTC";
2098const char kWebrtcSrtpAesGcmDescription[] =
2099 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
2100
Joachim Bauch4a41d7512017-08-23 14:24:232101const char kWebrtcSrtpEncryptedHeadersName[] =
2102 "Negotiation with encrypted header extensions for SRTP in WebRTC";
2103const char kWebrtcSrtpEncryptedHeadersDescription[] =
2104 "When enabled, WebRTC will try to negotiate encrypted header extensions "
2105 "for SRTP.";
2106
Brett Wilsonecb80982017-07-12 20:34:512107const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
2108const char kWebrtcStunOriginDescription[] =
2109 "When enabled, Stun messages generated by WebRTC will contain the Origin "
2110 "header.";
2111
Adam Riceed63fc02018-06-20 05:57:462112const char kWebSocketHandshakeReuseConnectionName[] =
2113 "Enable WebSocket connection reuse for authentication";
2114const char kWebSocketHandshakeReuseConnectionDescription[] =
2115 "Permits the WebSocket handshake to keep the connection open after an "
2116 "authentication failure. The connection may be used for further requests "
2117 "to send credentials. This is sometimes needed for Windows authentication.";
2118
Brett Wilsonecb80982017-07-12 20:34:512119const char kWebvrName[] = "WebVR";
2120const char kWebvrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012121 "Enables access to experimental Virtual Reality functionality via the "
2122 "WebVR 1.1 API. This feature will eventually be replaced by the WebXR "
2123 "Device API. Warning: Enabling this will also allow WebVR content on "
2124 "insecure origins to access these powerful APIs, and may pose a security "
Anna Offenwanger06dc6062018-04-12 07:56:222125 "risk. Controllers are exposed as Gamepads.";
Brett Wilsonecb80982017-07-12 20:34:512126
Brandon Jonese9d9b2b2017-12-11 22:20:112127const char kWebXrName[] = "WebXR Device API";
2128const char kWebXrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:012129 "Enables access to experimental APIs to interact with Virtual Reality (VR) "
2130 "and Augmented Reality (AR) devices.";
2131
2132const char kWebXrGamepadSupportName[] = "WebXR Gamepad Support";
2133const char kWebXrGamepadSupportDescription[] =
2134 "Expose VR controllers as Gamepads for use with the WebXR Device API. Each "
Anna Offenwanger06dc6062018-04-12 07:56:222135 "XRInputSource will have a corresponding Gamepad instance. Requires that "
2136 "WebXR Device API is also enabled.";
Ian Vollick7aaccf92018-04-07 23:10:432137
2138const char kWebXrHitTestName[] = "WebXR Hit Test";
2139const char kWebXrHitTestDescription[] =
2140 "Enables access to raycasting against estimated XR scene geometry.";
Brandon Jonese9d9b2b2017-12-11 22:20:112141
Anna Maria57ecf7592018-01-12 03:10:402142const char kWebXrOrientationSensorDeviceName[] =
2143 "WebXR orientation sensor device";
2144const char kWebXrOrientationSensorDeviceDescription[] =
2145 "When no VR platform device is available, expose a non-presenting device "
2146 "based on the device's orientation sensors, if available.";
2147
Brett Wilsonecb80982017-07-12 20:34:512148const char kWifiCredentialSyncName[] = "WiFi credential sync";
2149const char kWifiCredentialSyncDescription[] =
2150 "Enables synchronizing WiFi network settings across devices. When enabled, "
2151 "the WiFi credential datatype is registered with Chrome Sync, and WiFi "
2152 "credentials are synchronized subject to user preferences. (See also, "
2153 "chrome://settings/syncSetup.)";
2154
2155const char kZeroCopyName[] = "Zero-copy rasterizer";
2156const char kZeroCopyDescription[] =
2157 "Raster threads write directly to GPU memory associated with tiles.";
vabr0215a8e2017-03-28 12:47:342158
Brett Wilsonff596952017-07-14 01:06:552159// Android ---------------------------------------------------------------------
2160
2161#if defined(OS_ANDROID)
2162
2163const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
2164const char kAiaFetchingDescription[] =
2165 "Enable intermediate certificate fetching when a server does not provide "
2166 "sufficient certificates to build a chain to a trusted root.";
2167
2168const char kAccessibilityTabSwitcherName[] = "Accessibility Tab Switcher";
2169const char kAccessibilityTabSwitcherDescription[] =
2170 "Enable the accessibility tab switcher for Android.";
2171
2172const char kAndroidAutofillAccessibilityName[] = "Autofill Accessibility";
2173const char kAndroidAutofillAccessibilityDescription[] =
2174 "Enable accessibility for autofill popup.";
2175
Khushalbb1963a2018-10-02 21:02:352176const char kAndroidSurfaceControl[] = "Use Android SurfaceControl";
2177const char kAndroidSurfaceControlDescription[] =
2178 "Use the SurfaceControl API for supporting overlays on Android";
2179
Anita Woodruffbfcd1e52018-07-16 12:00:512180const char kAppNotificationStatusMessagingName[] =
2181 "App notification status messaging";
2182const char kAppNotificationStatusMessagingDescription[] =
2183 "Enables messaging in site permissions UI informing user when "
2184 "notifications are disabled for the entire app.";
2185
Brett Wilsonff596952017-07-14 01:06:552186const char kAndroidPaymentAppsName[] = "Android payment apps";
2187const char kAndroidPaymentAppsDescription[] =
2188 "Enable third party Android apps to integrate as payment apps";
2189
Miriam Gershenson8cf1397222018-01-23 22:48:292190const char kAsyncDnsName[] = "Async DNS resolver";
2191const char kAsyncDnsDescription[] = "Enables the built-in DNS resolver.";
2192
Dan Harrington01229f82018-09-12 21:01:212193const char kAutoFetchOnNetErrorPageName[] = "AutoFetchOnNetErrorPage";
2194const char kAutoFetchOnNetErrorPageDescription[] =
2195 "When enabled, and navigation fails with an offline error, schedule a "
2196 "fetch of the page when online again.";
2197
Brett Wilsonff596952017-07-14 01:06:552198const char kAutofillAccessoryViewName[] =
2199 "Autofill suggestions as keyboard accessory view";
2200const char kAutofillAccessoryViewDescription[] =
2201 "Shows Autofill suggestions on top of the keyboard rather than in a "
2202 "dropdown.";
2203
2204const char kBackgroundLoaderForDownloadsName[] =
2205 "Enables background downloading of pages.";
2206const char kBackgroundLoaderForDownloadsDescription[] =
2207 "Enables downloading pages in the background in case page is not yet "
2208 "loaded in current tab.";
2209
Tibor Goldschwendt11b3cf22018-07-04 15:32:442210const char kBackgroundTaskComponentUpdateName[] =
2211 "Background Task Component Updates";
2212const char kBackgroundTaskComponentUpdateDescription[] =
2213 "Schedule component updates with BackgroundTaskScheduler";
2214
Michael van Ouwerkerkbda4ad82018-06-19 14:08:002215const char kCCTModuleName[] = "Chrome Custom Tabs Module";
2216const char kCCTModuleDescription[] =
2217 "Enables a dynamically loaded module in Chrome Custom Tabs, on Android.";
2218
Michael van Ouwerkerk29a7a292018-10-09 09:20:142219const char kCCTModuleCacheName[] = "Chrome Custom Tabs Module Cache";
2220const char kCCTModuleCacheDescription[] =
Michael van Ouwerkerka5df1ec2018-10-11 11:57:402221 "Enables a cache for dynamically loaded modules in Chrome Custom Tabs. "
2222 "Under mild memory pressure the cache may be retained for some time";
Michael van Ouwerkerk29a7a292018-10-09 09:20:142223
Matthew Jones1abcb132018-07-09 17:59:462224const char kChromeDuetName[] = "Chrome Duet";
2225const char kChromeDuetDescription[] =
2226 "Enables Chrome Duet, split toolbar Chrome Home, on Android.";
Theresa Wellingtonb9243b22017-12-01 16:23:052227
Brett Wilsonff596952017-07-14 01:06:552228const char kChromeHomeSwipeLogicName[] = "Chrome Home Swipe Logic";
2229const char kChromeHomeSwipeLogicDescription[] =
2230 "Various swipe logic options for Chrome Home for sheet expansion.";
2231const char kChromeHomeSwipeLogicRestrictArea[] = "Restrict swipable area";
Matthew Jonesbe384ee42017-10-31 19:57:152232const char kChromeHomeSwipeLogicVelocity[] = "Velocity suppression model";
Brett Wilsonff596952017-07-14 01:06:552233
Megan Jablonskic61eb1b82017-10-02 18:03:062234const char kChromeMemexName[] = "Chrome Memex";
2235const char kChromeMemexDescription[] =
2236 "Enables Chrome Memex homepage on Android. Restricted to opted-in "
2237 "Googlers.";
2238
Sarath Singapati83aef1c2017-11-16 15:54:522239const char kClearOldBrowsingDataName[] = "Clear older browsing data";
2240const char kClearOldBrowsingDataDescription[] =
2241 "Enables clearing of browsing data which is older than a given time "
2242 "period.";
2243
Brett Wilsonff596952017-07-14 01:06:552244const char kContentSuggestionsCategoryOrderName[] =
2245 "Default content suggestions category order (e.g. on NTP)";
2246const char kContentSuggestionsCategoryOrderDescription[] =
2247 "Set default order of content suggestion categories (e.g. on the NTP).";
2248
2249const char kContentSuggestionsCategoryRankerName[] =
2250 "Content suggestions category ranker (e.g. on NTP)";
2251const char kContentSuggestionsCategoryRankerDescription[] =
2252 "Set category ranker to order categories of content suggestions (e.g. on "
2253 "the NTP).";
2254
Vitalii Iarkof52ff802017-09-14 12:34:242255const char kContentSuggestionsDebugLogName[] = "Content suggestions debug log";
2256const char kContentSuggestionsDebugLogDescription[] =
2257 "Enable content suggestions debug log accessible through "
2258 "snippets-internals.";
2259
Donn Denman8e58ead2017-11-04 01:44:012260const char kContextualSearchMlTapSuppressionName[] =
2261 "Contextual Search ML tap suppression";
2262const char kContextualSearchMlTapSuppressionDescription[] =
2263 "Enables tap gestures to be suppressed to improve CTR by applying machine "
Donn Denman59729812018-01-09 01:27:022264 "learning. The \"Contextual Search Ranker prediction\" flag must also be "
2265 "enabled!";
Brett Wilsonff596952017-07-14 01:06:552266
2267const char kContextualSearchName[] = "Contextual Search";
2268const char kContextualSearchDescription[] =
2269 "Whether or not Contextual Search is enabled.";
2270
Donn Denman59729812018-01-09 01:27:022271const char kContextualSearchRankerQueryName[] =
2272 "Contextual Search Ranker prediction";
2273const char kContextualSearchRankerQueryDescription[] =
2274 "Enables prediction of tap gestures using Assist-Ranker machine learning.";
2275
2276const char kContextualSearchSecondTapName[] =
2277 "Contextual Search second tap triggering";
2278const char kContextualSearchSecondTapDescription[] =
2279 "Enables triggering on a second tap gesture even when Ranker would "
2280 "normally suppress that tap.";
2281
Donn Denmane9b5b7fb2018-07-24 22:19:492282const char kContextualSearchUnityIntegrationName[] =
2283 "Contextual Search integration with Unified Consent";
2284const char kContextualSearchUnityIntegrationDescription[] =
2285 "Enables integration of Tap to Search with Unified Consent.";
2286
Cathy Li2fb32bf82018-06-06 18:55:402287const char kExploreSitesName[] = "Explore websites";
2288const char kExploreSitesDescription[] =
2289 "Enables portal from new tab page to explore websites.";
2290
Dmitry Skiba9c3efa72017-07-20 22:01:142291const char kDontPrefetchLibrariesName[] = "Don't Prefetch Libraries";
2292const char kDontPrefetchLibrariesDescription[] =
2293 "Don't prefetch libraries after loading.";
2294
Joy Ming5fd29ca62017-10-02 22:51:222295const char kDownloadsForegroundName[] = "Enable downloads foreground";
2296const char kDownloadsForegroundDescription[] =
2297 "Enable downloads as a foreground service for all versions of Android.";
2298
Joy Ming189b0cc2017-12-08 19:42:432299const char kDownloadsLocationChangeName[] = "Enable downloads location change";
2300const char kDownloadsLocationChangeDescription[] =
2301 "Enable changing default downloads storage location on Android.";
2302
Shakti Sahu32b2ee102018-05-17 00:04:462303const char kDownloadProgressInfoBarName[] = "Enable download progress infobar";
2304const char kDownloadProgressInfoBarDescription[] =
2305 "Enables an infobar notifying users about status of current downloads.";
2306
Shakti Sahu9ec8cfd2018-07-17 13:29:292307const char kDownloadHomeV2Name[] = "Enable download home v2";
2308const char kDownloadHomeV2Description[] =
2309 "Enables the new UI for download home";
2310
Brett Wilsonff596952017-07-14 01:06:552311const char kEnableAndroidPayIntegrationV1Name[] = "Enable Android Pay v1";
2312const char kEnableAndroidPayIntegrationV1Description[] =
2313 "Enable integration with Android Pay using the first version of the API";
2314
2315const char kEnableAndroidPayIntegrationV2Name[] = "Enable Android Pay v2";
2316const char kEnableAndroidPayIntegrationV2Description[] =
2317 "Enable integration with Android Pay using the second version of the API";
2318
Fabio Tirelo918089a2018-10-22 21:24:082319const char kAutofillManualFallbackAndroidName[] =
2320 "Enable Autofill manual fallback for Addresses and Payments (Android)";
2321const char kAutofillManualFallbackAndroidDescription[] =
2322 "If enabled, adds toggle for addresses and payments bottom sheet to the "
2323 "keyboard accessory.";
2324
Fabio Tirelo315e65922018-09-05 03:35:492325const char kEnableAutofillRefreshStyleName[] =
2326 "Enable Autofill refresh style (Android)";
2327const char kEnableAutofillRefreshStyleDescription[] =
2328 "Enable modernized style for Autofill on Android";
2329
Vitalii Iarkof4ed32d2017-09-26 13:15:532330const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
Brett Wilsonff596952017-07-14 01:06:552331const char kEnableAndroidSpellcheckerDescription[] =
2332 "Enables use of the Android spellchecker.";
Brett Wilsonff596952017-07-14 01:06:552333
Lei Tianbd5a3bf2018-02-28 19:01:162334const char kEnableCommandLineOnNonRootedName[] =
2335 "Enable command line on non-rooted devices";
2336const char kEnableCommandLineOnNoRootedDescription[] =
2337 "Enable reading command line file on non-rooted devices (DANGEROUS).";
2338
Vitalii Iarkof4ed32d2017-09-26 13:15:532339const char kEnableContentSuggestionsNewFaviconServerName[] =
2340 "Get favicons for content suggestions from a new server.";
2341const char kEnableContentSuggestionsNewFaviconServerDescription[] =
2342 "If enabled, the content suggestions (on the NTP) will get favicons from a "
2343 "new favicon server.";
Brett Wilsonff596952017-07-14 01:06:552344
Vitalii Iarkof4ed32d2017-09-26 13:15:532345const char kEnableContentSuggestionsThumbnailDominantColorName[] =
2346 "Use content suggestions thumbnail dominant color.";
2347const char kEnableContentSuggestionsThumbnailDominantColorDescription[] =
2348 "Use content suggestions thumbnail dominant color as a placeholder before "
2349 "the real thumbnail is fetched (requires Chrome Home).";
2350
Brett Wilsonff596952017-07-14 01:06:552351const char kEnableCustomContextMenuName[] = "Enable custom context menu";
2352const char kEnableCustomContextMenuDescription[] =
2353 "Enables a new context menu when a link, image, or video is pressed within "
2354 "Chrome.";
2355
2356const char kEnableCustomFeedbackUiName[] = "Enable Custom Feedback UI";
2357const char kEnableCustomFeedbackUiDescription[] =
2358 "Enables a custom feedback UI when submitting feedback through Google "
2359 "Feedback. Works with Google Play Services v10.2+";
2360
2361const char kEnableDataReductionProxyMainMenuName[] =
Theresa Wellington141e4af2017-10-23 20:28:472362 "Enable Data Saver main menu item";
Brett Wilsonff596952017-07-14 01:06:552363const char kEnableDataReductionProxyMainMenuDescription[] =
Theresa Wellington141e4af2017-10-23 20:28:472364 "Enables the Data Saver menu item in the main menu";
Brett Wilsonff596952017-07-14 01:06:552365
Becca Hughes6d73bac542018-06-18 20:38:502366const char kEnableMediaControlsExpandGestureName[] =
2367 "Enable Media Controls Expand Gesture";
2368const char kEnableMediaControlsExpandGestureDescription[] =
2369 "Enables a gesture to be used on the media controls to extend the video "
2370 "into the Display Cutout area.";
2371
Brett Wilsonff596952017-07-14 01:06:552372const char kEnableOmniboxClipboardProviderName[] =
2373 "Omnibox clipboard URL suggestions";
2374const char kEnableOmniboxClipboardProviderDescription[] =
2375 "Provide a suggestion of the URL stored in the clipboard (if any) upon "
2376 "focus in the omnibox.";
2377
Brett Wilsonff596952017-07-14 01:06:552378const char kEnableNtpAssetDownloadSuggestionsName[] =
2379 "Show asset downloads on the New Tab page";
2380const char kEnableNtpAssetDownloadSuggestionsDescription[] =
2381 "If enabled, the list of content suggestions on the New Tab page will "
2382 "contain assets (e.g. books, pictures, audio) that the user downloaded for "
2383 "later use.";
2384
2385const char kEnableNtpBookmarkSuggestionsName[] =
2386 "Show recently visited bookmarks on the New Tab page";
2387const char kEnableNtpBookmarkSuggestionsDescription[] =
2388 "If enabled, the list of content suggestions on the New Tab page will "
2389 "contain recently visited bookmarks.";
2390
Brett Wilsonff596952017-07-14 01:06:552391const char kEnableNtpOfflinePageDownloadSuggestionsName[] =
2392 "Show offline page downloads on the New Tab page";
2393const char kEnableNtpOfflinePageDownloadSuggestionsDescription[] =
2394 "If enabled, the list of content suggestions on the New Tab page will "
2395 "contain pages that the user downloaded for later use.";
2396
2397const char kEnableNtpRemoteSuggestionsName[] =
2398 "Show server-side suggestions on the New Tab page";
2399const char kEnableNtpRemoteSuggestionsDescription[] =
2400 "If enabled, the list of content suggestions on the New Tab page will "
2401 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
2402 "allows to override the source used to retrieve these server-side "
2403 "suggestions.";
2404
2405const char kEnableNtpSnippetsVisibilityName[] =
2406 "Make New Tab Page Snippets more visible.";
2407const char kEnableNtpSnippetsVisibilityDescription[] =
2408 "If enabled, the NTP snippets will become more discoverable with a larger "
2409 "portion of the first card above the fold.";
2410
2411const char kEnableNtpSuggestionsNotificationsName[] =
2412 "Notify about new content suggestions available at the New Tab page";
2413const char kEnableNtpSuggestionsNotificationsDescription[] =
2414 "If enabled, notifications will inform about new content suggestions on "
2415 "the New Tab page.";
2416
Brett Wilsonff596952017-07-14 01:06:552417const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
2418const char kEnableOfflinePreviewsDescription[] =
2419 "Enable showing offline page previews on slow networks.";
2420
2421const char kEnableOskOverscrollName[] = "Enable OSK Overscroll";
2422const char kEnableOskOverscrollDescription[] =
2423 "Enable OSK overscroll support. With this flag on, the OSK will only "
2424 "resize the visual viewport.";
2425
2426const char kEnableSpecialLocaleName[] =
2427 "Enable custom logic for special locales.";
2428const char kEnableSpecialLocaleDescription[] =
2429 "Enable custom logic for special locales. In this mode, Chrome might "
2430 "behave differently in some locales.";
2431
Brett Wilsonff596952017-07-14 01:06:552432const char kEnableWebNfcName[] = "WebNFC";
2433const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
2434
gogeraldf3cbb422017-07-26 14:37:122435const char kEnableWebPaymentsMethodSectionOrderV2Name[] =
2436 "Enable Web Payments method section order V2.";
2437const char kEnableWebPaymentsMethodSectionOrderV2Description[] =
2438 "Enable this option to display payment method section above address "
2439 "section instead of below it.";
2440
Donn Denmanffaeaa32018-10-12 17:37:532441const char kEphemeralTabName[] = "An Ephemeral Tab in an Overlay Panel";
2442const char kEphemeralTabDescription[] =
2443 "Enable a 'sneak peek' at a linked page in an overlay.";
2444
Raymes Khoury582b43132017-12-12 23:54:302445const char kGrantNotificationsToDSEName[] =
2446 "Grant notifications to the Default Search Engine";
2447const char kGrantNotificationsToDSENameDescription[] =
2448 "Automatically grant the notifications permission to the Default Search "
2449 "Engine";
2450
Daniel Parke74fcf862018-03-27 18:05:452451const char kHomePageButtonName[] = "Force Enable Home Page Button";
Daniel Park990d0992018-05-18 22:12:512452const char kHomePageButtonDescription[] = "Displays a home button if enabled.";
Daniel Parke74fcf862018-03-27 18:05:452453
Yafei Duanbb7663f32018-07-17 01:33:152454const char kHomepageTileName[] =
2455 "Enable Homepage tile shown in Suggested Tiles";
2456const char kHomepageTileDescription[] =
2457 "When NTPButton is enabled, the first tile of the Suggested Tiles will be "
2458 "used for homepage. It will not have an effect when NTPButton is disabled.";
2459
Jian Li4b252642018-07-23 19:49:072460const char kIncognitoStringsName[] = "Alternate incognito strings";
2461const char kIncognitoStringsDescription[] =
2462 "Show alternate incognito strings if enabled.";
2463
Theresa920e0ed2018-03-07 18:12:442464const char kInterestFeedContentSuggestionsDescription[] =
Yafei Duanbb7663f32018-07-17 01:33:152465 "Use the interest feed to render content suggestions. Currently "
2466 "content "
Theresa920e0ed2018-03-07 18:12:442467 "suggestions are shown on the New Tab Page.";
2468const char kInterestFeedContentSuggestionsName[] =
2469 "Interest Feed Content Suggestions";
2470
Brett Wilsonff596952017-07-14 01:06:552471const char kKeepPrefetchedContentSuggestionsName[] =
2472 "Keep prefetched content suggestions";
2473const char kKeepPrefetchedContentSuggestionsDescription[] =
2474 "If enabled, some of prefetched content suggestions are not replaced by "
2475 "the new fetched suggestions.";
2476
Leo Zhang051b75482017-12-20 03:28:302477const char kLanguagesPreferenceName[] = "Language Settings";
2478const char kLanguagesPreferenceDescription[] =
2479 "Enable this option for Language Settings feature on Android.";
2480
Charlie Ma8c2846e2018-07-27 18:44:392481const char kLongPressBackForHistoryName[] =
2482 "Long Press Back Button for History";
2483const char kLongPressBackForHistoryDescription[] =
2484 "Long press system back button to show navigation history if enabled";
2485
Brett Wilsonff596952017-07-14 01:06:552486const char kLsdPermissionPromptName[] =
2487 "Location Settings Dialog Permission Prompt";
2488const char kLsdPermissionPromptDescription[] =
2489 "Whether to use the Google Play Services Location Settings Dialog "
2490 "permission dialog.";
2491
Amirhossein Simjour97b4154f2018-02-20 03:49:592492const char kModalPermissionDialogViewName[] = "Modal Permission Dialog";
2493const char kModalPermissionDialogViewDescription[] =
2494 "Enable this option to use ModalDialogManager for permission Dialogs.";
2495
Brett Wilsonff596952017-07-14 01:06:552496const char kMediaScreenCaptureName[] = "Experimental ScreenCapture.";
2497const char kMediaScreenCaptureDescription[] =
2498 "Enable this option for experimental ScreenCapture feature on Android.";
2499
2500const char kModalPermissionPromptsName[] = "Modal Permission Prompts";
2501const char kModalPermissionPromptsDescription[] =
2502 "Whether to use permission dialogs in place of permission infobars.";
2503
Finnur Thorarinssonc1488fc62018-07-09 19:21:572504const char kNewContactsPickerName[] = "Enable new contacts picker";
2505const char kNewContactsPickerDescription[] =
2506 "Activates the new picker for selecting contacts.";
2507
Dan Harrington541db9e2018-07-30 18:36:302508const char kNewNetErrorPageUIName[] = "Enable new UI for net-error page";
2509const char kNewNetErrorPageUIDescription[] =
2510 "Selects which new UI experience to show on the net-error (Dino) page";
2511
Brett Wilsonff596952017-07-14 01:06:552512const char kNewPhotoPickerName[] = "Enable new Photopicker";
2513const char kNewPhotoPickerDescription[] =
2514 "Activates the new picker for selecting photos.";
2515
2516const char kNoCreditCardAbort[] = "No Credit Card Abort";
2517const char kNoCreditCardAbortDescription[] =
2518 "Whether or not the No Credit Card Abort is enabled.";
2519
Daniel Park990d0992018-05-18 22:12:512520const char kNtpButtonName[] = "Enable NTP Button";
2521const char kNtpButtonDescription[] =
2522 "Displays a New Tab Page button in the toolbar if enabled.";
2523
Brett Wilsonff596952017-07-14 01:06:552524const char kOfflineBookmarksName[] = "Enable offline bookmarks";
2525const char kOfflineBookmarksDescription[] =
2526 "Enable saving bookmarked pages for offline viewing.";
2527
Jian Liade82832018-09-06 22:31:412528const char kOfflineIndicatorAlwaysHttpProbeName[] = "Always http probe";
2529const char kOfflineIndicatorAlwaysHttpProbeDescription[] =
2530 "Always do http probe to detect network connectivity for offline indicator "
2531 "as opposed to just taking the connection state from the system."
2532 "Used for testing.";
2533
2534const char kOfflineIndicatorChoiceName[] = "Offline indicator choices";
2535const char kOfflineIndicatorChoiceDescription[] =
2536 "Show an offline indicator while offline.";
Jian Li1413ebf2018-06-14 20:46:322537
Brett Wilsonff596952017-07-14 01:06:552538const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
2539const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
2540
2541const char kOfflinePagesCtV2Name[] = "Enable Offline Pages CT V2 features.";
2542const char kOfflinePagesCtV2Description[] =
2543 "V2 features include attributing pages to the app that initiated the "
2544 "custom tabs, and being able to query for pages by page attribution.";
2545
Cathy Li7311d792018-04-05 00:34:162546const char kOfflinePagesCTSuppressNotificationsName[] =
2547 "Disable download complete notification for whitelisted CCT apps.";
2548const char kOfflinePagesCTSuppressNotificationsDescription[] =
2549 "Disable download complete notification for page downloads originating "
2550 "from a CCT app whitelisted to show their own download complete "
2551 "notification.";
2552
Candice Sy74fa7a352018-03-30 23:46:492553const char kOfflinePagesDescriptiveFailStatusName[] =
2554 "Enables descriptive failed download status text.";
2555const char kOfflinePagesDescriptiveFailStatusDescription[] =
2556 "Enables failed download status text in notifications and Downloads Home "
2557 "to state the reason the request failed if the failure is actionable.";
2558
2559const char kOfflinePagesDescriptivePendingStatusName[] =
2560 "Enables descriptive pending download status text.";
2561const char kOfflinePagesDescriptivePendingStatusDescription[] =
2562 "Enables pending download status text in notifications and Downloads Home "
2563 "to state the reason the request is pending.";
2564
2565const char kOfflinePagesInDownloadHomeOpenInCctName[] =
2566 "Enables offline pages in the downloads home to be opened in CCT.";
2567const char kOfflinePagesInDownloadHomeOpenInCctDescription[] =
2568 "When enabled offline pages launched from the Downloads Home will be "
2569 "opened in Chrome Custom Tabs (CCT) instead of regular tabs.";
2570
Carlos Knippschild09272ecd2017-12-09 03:29:362571const char kOfflinePagesLimitlessPrefetchingName[] =
2572 "Removes resource usage limits for the prefetching of offline pages.";
2573const char kOfflinePagesLimitlessPrefetchingDescription[] =
2574 "Allows the prefetching of suggested offline pages to ignore resource "
2575 "usage limits. This allows it to completely ignore data usage limitations "
2576 "and allows downloads to happen with any kind of connection.";
2577
Brett Wilsonff596952017-07-14 01:06:552578const char kOfflinePagesLoadSignalCollectingName[] =
2579 "Enables collecting load timing data for offline page snapshots.";
2580const char kOfflinePagesLoadSignalCollectingDescription[] =
2581 "Enables loading completeness data collection while writing an offline "
2582 "page. This data is collected in the snapshotted offline page to allow "
2583 "data analysis to improve deciding when to make the offline snapshot.";
2584
2585const char kOfflinePagesPrefetchingName[] =
2586 "Enables suggested offline pages to be prefetched.";
2587const char kOfflinePagesPrefetchingDescription[] =
2588 "Enables suggested offline pages to be prefetched, so useful content is "
2589 "available while offline.";
2590
Pete Williamson7845dff2017-09-20 11:06:192591const char kOfflinePagesResourceBasedSnapshotName[] =
2592 "Enables offline page snapshots to be based on percentage of page loaded.";
2593const char kOfflinePagesResourceBasedSnapshotDescription[] =
2594 "Enables offline page snapshots to use a resource percentage based "
2595 "approach for determining when the page is loaded as opposed to a time "
2596 "based approach";
2597
Collin Baker17f92a52017-07-19 21:41:252598const char kOfflinePagesRenovationsName[] = "Enables offline page renovations.";
2599const char kOfflinePagesRenovationsDescription[] =
2600 "Enables offline page renovations which correct issues with dynamic "
2601 "content that occur when offlining pages that use JavaScript.";
2602
Brett Wilsonff596952017-07-14 01:06:552603const char kOfflinePagesSharingName[] = "Enables offline pages to be shared.";
2604const char kOfflinePagesSharingDescription[] =
2605 "Enables the saved offline pages to be shared via other applications.";
2606
Yafei Duan36b4b5b2018-08-07 00:40:032607const char kOfflinePagesLivePageSharingName[] =
2608 "Enables live page sharing of offline pages";
2609const char kOfflinePagesLivePageSharingDescription[] =
2610 "Enables to share current loaded page as offline page by saving as MHTML "
2611 "first.";
2612
Cathy Lie0d88762018-04-12 08:03:012613const char kOfflinePagesShowAlternateDinoPageName[] =
2614 "Enable alternate dino page with more user capabilities.";
2615const char kOfflinePagesShowAlternateDinoPageDescription[] =
2616 "Enables the dino page to show more buttons and offer existing offline "
2617 "content.";
2618
Brett Wilsonff596952017-07-14 01:06:552619const char kOfflinePagesSvelteConcurrentLoadingName[] =
2620 "Enables concurrent background loading on svelte.";
2621const char kOfflinePagesSvelteConcurrentLoadingDescription[] =
2622 "Enables concurrent background loading (or downloading) of pages on "
2623 "Android svelte (512MB RAM) devices. Otherwise, background loading will "
2624 "happen when the svelte device is idle.";
2625
2626const char kOffliningRecentPagesName[] =
2627 "Enable offlining of recently visited pages";
2628const char kOffliningRecentPagesDescription[] =
2629 "Enable storing recently visited pages locally for offline use. Requires "
2630 "Offline Pages to be enabled.";
2631
Lei Zhang2eca9082017-10-17 20:42:502632const char kPayWithGoogleV1Name[] = "Pay with Google v1";
2633const char kPayWithGoogleV1Description[] =
Brett Wilsonff596952017-07-14 01:06:552634 "Enable Pay with Google integration into Web Payments with API version "
2635 "'1'.";
2636
Matthew Jonesa88b95852017-11-08 23:13:502637const char kProgressBarThrottleName[] = "Android progress update throttling.";
2638const char kProgressBarThrottleDescription[] =
2639 "Limit the maximum progress update to make progress appear smoother.";
2640
Brett Wilsonff596952017-07-14 01:06:552641const char kPullToRefreshEffectName[] = "The pull-to-refresh effect";
2642const char kPullToRefreshEffectDescription[] =
2643 "Page reloads triggered by vertically overscrolling content.";
2644
Piotr Swigon7c296ef2017-08-29 04:32:002645const char kPwaImprovedSplashScreenName[] =
2646 "Improved Splash Screen for standalone PWAs";
2647const char kPwaImprovedSplashScreenDescription[] =
2648 "Enables the Improved Splash Screen UX for standalone PWAs based on new "
2649 "Web App Manifest attributes";
Piotr Swigon9f630b32017-07-26 09:42:492650const char kPwaPersistentNotificationName[] =
2651 "Persistent notification in standalone PWA";
2652const char kPwaPersistentNotificationDescription[] =
2653 "Enables a persistent Android notification for standalone PWAs";
2654
Brett Wilsonff596952017-07-14 01:06:552655const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
2656const char kReaderModeHeuristicsDescription[] =
2657 "Determines what pages the Reader Mode infobar is shown on.";
2658const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
2659const char kReaderModeHeuristicsAdaboost[] = "Non-mobile-friendly articles";
2660const char kReaderModeHeuristicsAllArticles[] = "All articles";
2661const char kReaderModeHeuristicsAlwaysOff[] = "Never";
2662const char kReaderModeHeuristicsAlwaysOn[] = "Always";
2663
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:182664const char kReaderModeInCCTName[] = "Reader Mode in CCT";
2665const char kReaderModeInCCTDescription[] =
2666 "Open Reader Mode in Chrome Custom Tabs.";
2667
Varun Khaneja80712a82018-10-12 23:34:592668const char kSafeBrowsingUseLocalBlacklistsV2Name[] =
2669 "Use local Safe Browsing blacklists";
2670const char kSafeBrowsingUseLocalBlacklistsV2Description[] =
2671 "If enabled, maintain a copy of Safe Browsing blacklists in the browser "
2672 "process to check the Safe Browsing reputation of URLs without calling "
2673 "into GmsCore for every URL.";
2674
Brett Wilsonff596952017-07-14 01:06:552675const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2676const char kSetMarketUrlForTestingDescription[] =
2677 "When enabled, sets the market URL for use in testing the update menu "
2678 "item.";
2679
2680const char kSpannableInlineAutocompleteName[] = "Spannable inline autocomplete";
2681const char kSpannableInlineAutocompleteDescription[] =
2682 "A new type of inline autocomplete for the omnibox that works with "
2683 "keyboards that compose text.";
2684
Theresaeea05a12018-05-09 21:01:592685const char kSimplifiedNtpName[] = "Simplified NTP";
2686const char kSimplifiedNtpDescription[] = "Show a simplified New Tab Page.";
2687
2688const char kSiteExplorationUiName[] = "Site Exploration UI";
2689const char kSiteExplorationUiDescription[] =
2690 "Show site suggestions in the Exploration UI";
2691
Anthony Vallee-Dubois4623e1b2018-10-11 22:09:182692const char kTranslateAndroidManualTriggerName[] =
2693 "Enable manual translate trigger";
2694const char kTranslateAndroidManualTriggerDescription[] =
2695 "Show a menu item in the main menu that triggers page translation.";
2696
Brett Wilsonff596952017-07-14 01:06:552697const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2698const char kUpdateMenuBadgeDescription[] =
Tommy Nyquist3c02e592018-10-18 23:36:442699 "When enabled, a badge will be shown on the app menu button if the update "
2700 "type is Update Available or Unsupported OS Version.";
Brett Wilsonff596952017-07-14 01:06:552701
2702const char kUpdateMenuItemCustomSummaryDescription[] =
2703 "When this flag and the force show update menu item flag are enabled, a "
2704 "custom summary string will be displayed below the update menu item.";
2705const char kUpdateMenuItemCustomSummaryName[] =
2706 "Update menu item custom summary";
2707
Tommy Nyquist3c02e592018-10-18 23:36:442708const char kUpdateMenuTypeName[] =
2709 "Forces the update menu type to a specific type";
2710const char kUpdateMenuTypeDescription[] =
2711 "When set, forces the update type to be a specific one, which impacts "
2712 "the app menu badge and menu item for updates.";
2713const char kUpdateMenuTypeNone[] = "None";
2714const char kUpdateMenuTypeUpdateAvailable[] = "Update Available";
2715const char kUpdateMenuTypeUnsupportedOSVersion[] = "Unsupported OS Version";
Brett Wilsonff596952017-07-14 01:06:552716
Tibor Goldschwendt4cdea8d2018-05-10 15:46:462717const char kVrBrowsingTabsViewName[] = "VR browsing tabs view";
2718const char kVrBrowsingTabsViewDescription[] =
2719 "Enable tab overview (tab switcher) in VR.";
2720
Marc Treib93af46a2017-08-23 13:30:002721const char kThirdPartyDoodlesName[] =
2722 "Enable Doodles for third-party search engines";
2723const char kThirdPartyDoodlesDescription[] =
2724 "Enables fetching and displaying Doodles on the NTP for third-party search "
2725 "engines.";
2726
Klaus Weidneraaf697f2018-01-18 20:07:362727const char kWebXrRenderPathName[] = "WebXR presentation render path";
2728const char kWebXrRenderPathDescription[] =
2729 "Render path to use for WebXR presentation (including WebVR)";
2730const char kWebXrRenderPathChoiceClientWaitDescription[] =
2731 "ClientWait (Baseline)";
2732const char kWebXrRenderPathChoiceGpuFenceDescription[] =
2733 "GpuFence (Android N+)";
Klaus Weidnerd25dff42018-04-12 06:56:072734const char kWebXrRenderPathChoiceSharedBufferDescription[] =
2735 "SharedBuffer (Android O+)";
Klaus Weidneraaf697f2018-01-18 20:07:362736
Brett Wilson7b44537e2017-08-18 01:38:282737// Non-Android -----------------------------------------------------------------
Brett Wilsonff596952017-07-14 01:06:552738
Brett Wilson7b44537e2017-08-18 01:38:282739#else // !defined(OS_ANDROID)
brettw5f9c1642017-05-14 17:12:482740
Brett Wilson7b44537e2017-08-18 01:38:282741const char kAccountConsistencyName[] =
2742 "Identity consistency between browser and cookie jar";
2743const char kAccountConsistencyDescription[] =
2744 "When enabled, the browser manages signing in and out of Google accounts.";
2745const char kAccountConsistencyChoiceMirror[] = "Mirror";
2746const char kAccountConsistencyChoiceDice[] = "Dice";
vabr0215a8e2017-03-28 12:47:342747
Tommy Martino3fa3df52018-08-20 21:45:442748const char kAutofillDropdownLayoutName[] =
2749 "Autofill Dropdown Layout Experiment";
2750const char kAutofillDropdownLayoutDescription[] =
2751 "Alternate visual designs for the Autofill dropdown.";
2752
Fabio Tirelo3773dea2018-09-11 15:21:522753const char kAutofillPrimaryInfoStyleExperimentName[] =
2754 "Autofill experiment with primary info style";
2755const char kAutofillPrimaryInfoStyleExperimentDescription[] =
2756 "Allow experimentation with different typefaces for primary info on the "
2757 "Autofill dropdown (addresses and payment methods)";
2758
Chris Pickel3a227ae62017-08-24 10:47:262759const char kDoodlesOnLocalNtpName[] = "Enable doodles on the local NTP";
2760const char kDoodlesOnLocalNtpDescription[] =
2761 "Show doodles on the local New Tab page if Google is the default search "
2762 "engine.";
2763
mlamouriff56c092017-05-11 15:31:392764const char kEnableAudioFocusName[] = "Manage audio focus across tabs";
mlamouriff56c092017-05-11 15:31:392765const char kEnableAudioFocusDescription[] =
vabr0215a8e2017-03-28 12:47:342766 "Manage audio focus across tabs to improve the audio mixing.";
mlamouriff56c092017-05-11 15:31:392767const char kEnableAudioFocusDisabled[] = "Disabled";
mlamouriff56c092017-05-11 15:31:392768const char kEnableAudioFocusEnabled[] = "Enabled";
mlamouriff56c092017-05-11 15:31:392769const char kEnableAudioFocusEnabledDuckFlash[] =
vabr0215a8e2017-03-28 12:47:342770 "Enabled (Flash lowers volume when interrupted by other sound, "
2771 "experimental)";
Becca Hughes87b17ae2018-10-04 00:35:422772const char kEnableAudioFocusEnabledNoEnforce[] =
2773 "Enabled (without enforcement of a single active media session)";
vabr0215a8e2017-03-28 12:47:342774
Sebastien Marchandd33f7dc2018-06-22 22:07:062775const char kInfiniteSessionRestoreName[] = "Infinite Session Restore";
2776const char kInfiniteSessionRestoreDescription[] =
2777 "Reduces the number of tabs being loaded simultaneously during session "
2778 "restore, to improve responsiveness of the foreground tab. This requires "
2779 "#enable-page-almost-idle.";
2780
Brett Wilson7b44537e2017-08-18 01:38:282781const char kEnableNewAppMenuIconName[] = "Enable the New App Menu Icon";
2782const char kEnableNewAppMenuIconDescription[] =
2783 "Use the new app menu icon with update notification animations.";
vabr0215a8e2017-03-28 12:47:342784
Sebastien Marchandd33f7dc2018-06-22 22:07:062785const char kEnableWebAuthenticationCtap2SupportName[] =
2786 "Enable Web Authentication API support for CTAP2 security keys";
2787const char kEnableWebAuthenticationCtap2SupportDescription[] =
Kim Paulhamus92431372018-07-20 02:25:472788 "Enable CTAP2 security keys for the Web Authentication API.";
Sebastien Marchandd33f7dc2018-06-22 22:07:062789
2790const char kEnableWebAuthenticationTestingAPIName[] =
2791 "Web Authentication Testing API";
2792const char kEnableWebAuthenticationTestingAPIDescription[] =
2793 "Enable Web Authentication Testing API support, which disconnects the API "
2794 "implementation from the real world, and allows configuring virtual "
2795 "authenticator devices for testing";
2796
Jeffrey Cohenf04130a42018-08-29 00:22:272797const char kHappinessTrackingSurveysForDesktopName[] =
2798 "Happiness Tracking Surveys";
2799const char kHappinessTrackingSurveysForDesktopDescription[] =
2800 "Enable showing Happiness Tracking Surveys to users on Desktop";
2801
Dave Schuyler598a4a42018-01-04 02:15:102802const char kOmniboxRichEntitySuggestionsName[] =
2803 "Omnibox rich entity suggestions";
2804const char kOmniboxRichEntitySuggestionsDescription[] =
2805 "Display entity suggestions using images and an enhanced layout; showing "
Justin Donnellye7926092018-06-18 14:57:212806 "more context and descriptive text about the entity. Has no effect unless "
2807 "either the #upcoming-ui-features flag is Enabled or the #top-chrome-md "
2808 "flag is set to Refresh or Touchable Refresh.";
Dave Schuyler598a4a42018-01-04 02:15:102809
Travis Skarebcdb5ed32018-08-17 01:49:402810const char kOmniboxDriveSuggestionsName[] =
2811 "Omnibox Google Drive Document suggestions";
2812const char kOmniboxDriveSuggestionsDescriptions[] =
2813 "Display suggestions for Google Drive documents in the omnibox when Google "
2814 "is the default search engine.";
2815
Dave Schuyler616273d2018-04-19 03:12:522816const char kOmniboxNewAnswerLayoutName[] = "Omnibox new answer layout";
2817const char kOmniboxNewAnswerLayoutDescription[] =
Justin Donnellye7926092018-06-18 14:57:212818 "Display answers using an enhanced layout with larger images. Has no "
2819 "effect unless either the #upcoming-ui-features flag is Enabled or the "
2820 "#top-chrome-md flag is set to Refresh or Touchable Refresh.";
Dave Schuyler616273d2018-04-19 03:12:522821
Orin Jaworski04c08b42018-07-11 02:39:562822const char kOmniboxReverseAnswersName[] = "Omnibox reverse answers";
2823const char kOmniboxReverseAnswersDescription[] =
2824 "Display answers with rows reversed (swapped); except definitions. Has no "
2825 "effect unless either the #upcoming-ui-features flag is Enabled or the "
2826 "#top-chrome-md flag is set to Refresh or Touchable Refresh.";
2827
Kevin Bailey898669972017-11-06 15:34:492828const char kOmniboxTabSwitchSuggestionsName[] =
2829 "Omnibox tab switch suggestions";
2830const char kOmniboxTabSwitchSuggestionsDescription[] =
Justin Donnellye7926092018-06-18 14:57:212831 "Enable suggestions for switching to open tabs within the Omnibox. "
2832 "Has no effect unless either the #upcoming-ui-features flag is Enabled or "
2833 "the #top-chrome-md flag is set to Refresh or Touchable Refresh.";
Kevin Bailey898669972017-11-06 15:34:492834
Orin Jaworskiae2df652018-09-26 01:11:062835const char kOmniboxPedalSuggestionsName[] = "Omnibox Pedal suggestions";
2836const char kOmniboxPedalSuggestionsDescription[] =
2837 "Enable omnibox Pedal suggestions using either a side button in suggestion "
2838 "or a dedicated suggestion item beneath the triggering line item. Omnibox "
2839 "Pedals accelerate actions within Chrome by detecting user intent and "
2840 "offering direct access to the end goal.";
2841
krbcc621412017-06-01 19:40:282842const char kOmniboxTailSuggestionsName[] = "Omnibox tail suggestions";
2843const char kOmniboxTailSuggestionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192844 "Enable receiving tail suggestions, a type of search suggestion based on "
2845 "the last few words in the query, for the Omnibox.";
vabr0215a8e2017-03-28 12:47:342846
Sebastien Marchandd33f7dc2018-06-22 22:07:062847const char kPageAlmostIdleName[] = "Page Almost Idle";
2848const char kPageAlmostIdleDescription[] =
2849 "Make session restore use a definition of loading that waits for CPU and "
2850 "network quiescence.";
2851
2852const char kProactiveTabFreezeAndDiscardName[] =
2853 "Proactive Tab Freeze and Discard";
2854const char kProactiveTabFreezeAndDiscardDescription[] =
2855 "Enables proactive tab freezing and discarding. This requires "
2856 "#enable-page-almost-idle.";
2857
2858const char kSiteCharacteristicsDatabaseName[] = "Site Characteristics database";
2859const char kSiteCharacteristicsDatabaseDescription[] =
2860 "Records usage of some features in a database while a tab is in background "
2861 "(title/favicon update, audio playback or usage of non-persistent "
2862 "notifications).";
2863
Brett Wilson7b44537e2017-08-18 01:38:282864const char kUseGoogleLocalNtpName[] = "Enable using the Google local NTP";
2865const char kUseGoogleLocalNtpDescription[] =
2866 "Use the local New Tab page if Google is the default search engine.";
spqchan064a8112017-04-18 16:46:322867
Brett Wilson7b44537e2017-08-18 01:38:282868#if defined(GOOGLE_CHROME_BUILD)
2869
2870const char kGoogleBrandedContextMenuName[] =
2871 "Google branding in the context menu";
2872const char kGoogleBrandedContextMenuDescription[] =
2873 "Shows a Google icon next to context menu items powered by Google "
2874 "services.";
2875
2876#endif // !defined(GOOGLE_CHROME_BUILD)
2877
2878#endif // !defined(OS_ANDROID)
2879
2880// Windows ---------------------------------------------------------------------
2881
2882#if defined(OS_WIN)
2883
2884const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
2885const char kCloudPrintXpsDescription[] =
2886 "XPS enables advanced options for classic printers connected to the Cloud "
2887 "Print with Chrome. Printers must be re-connected after changing this "
2888 "flag.";
2889
2890const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
2891const char kDisablePostscriptPrintingDescription[] =
2892 "Disables PostScript generation when printing to PostScript capable "
2893 "printers, and uses EMF generation in its place.";
2894
2895const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
2896const char kEnableAppcontainerDescription[] =
2897 "Enables the use of an AppContainer on sandboxed processes to improve "
2898 "security.";
2899
Brett Wilson7b44537e2017-08-18 01:38:282900const char kEnableDesktopIosPromotionsName[] = "Desktop to iOS promotions.";
2901const char kEnableDesktopIosPromotionsDescription[] =
2902 "Enable Desktop to iOS promotions, and allow users to see them if they are "
2903 "eligible.";
2904
James Forshawfd0ce342018-02-14 09:55:392905const char kEnableGpuAppcontainerName[] = "Enable GPU AppContainer Lockdown.";
2906const char kEnableGpuAppcontainerDescription[] =
2907 "Enables the use of an AppContainer for the GPU sandboxed processes to "
2908 "improve security.";
2909
Brett Wilson7b44537e2017-08-18 01:38:282910const char kGdiTextPrinting[] = "GDI Text Printing";
2911const char kGdiTextPrintingDescription[] =
2912 "Use GDI to print text as simply text";
2913
Henrik Grunell67e56ef2018-04-10 14:04:092914const char kIncreaseInputAudioBufferSize[] = "Increase input audio buffer size";
2915const char kIncreaseInputAudioBufferSizeDescription[] =
2916 "Increases the input audio endpoint buffer to 100 ms.";
2917
Brett Wilson7b44537e2017-08-18 01:38:282918const char kTraceExportEventsToEtwName[] =
2919 "Enable exporting of tracing events to ETW.";
2920const char kTraceExportEventsToEtwDesription[] =
2921 "If enabled, trace events will be exported to the Event Tracing for "
2922 "Windows (ETW) and can then be captured by tools such as UIForETW or "
2923 "Xperf.";
2924
Olli Etuaho122321192018-09-07 10:15:292925const char kUseAngleName[] = "Choose ANGLE graphics backend";
2926const char kUseAngleDescription[] =
2927 "Choose the graphics backend for ANGLE. D3D11 is used on most Windows "
2928 "computers by default. Using the OpenGL driver as the graphics backend may "
2929 "result in higher performance in some graphics-heavy applications, "
2930 "particularly on NVIDIA GPUs. It can increase battery and memory usage of "
2931 "video playback.";
2932
2933const char kUseAngleDefault[] = "Default";
2934const char kUseAngleGL[] = "OpenGL";
2935const char kUseAngleD3D11[] = "D3D11";
2936const char kUseAngleD3D9[] = "D3D9";
2937
Brett Wilson7b44537e2017-08-18 01:38:282938const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2939const char kUseWinrtMidiApiDescription[] =
2940 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
2941 "later).";
2942
2943const char kWindows10CustomTitlebarName[] = "Custom-drawn Windows 10 Titlebar";
2944const char kWindows10CustomTitlebarDescription[] =
2945 "If enabled, Chrome will draw the titlebar and caption buttons instead of "
2946 "deferring to Windows.";
2947
2948#endif // defined(OS_WIN)
2949
2950// Mac -------------------------------------------------------------------------
2951
2952#if defined(OS_MACOSX)
2953
Brett Wilson7b44537e2017-08-18 01:38:282954const char kFullscreenToolbarRevealName[] =
2955 "Enables the toolbar in fullscreen to reveal itself.";
2956const char kFullscreenToolbarRevealDescription[] =
2957 "Reveal the toolbar in fullscreen for a short period when the tab strip "
2958 "has changed.";
2959
2960const char kContentFullscreenName[] = "Improved Content Fullscreen";
2961const char kContentFullscreenDescription[] =
2962 "Fullscreen content window detaches from main browser window and goes to "
2963 "a new space without moving or changing the original browser window.";
2964
Martin Kreichgauer1ca416d2018-07-11 00:43:192965const char kEnableWebAuthenticationTouchIdName[] =
2966 "Web Authentication API Touch ID support";
2967const char kEnableWebAuthenticationTouchIdDescription[] =
2968 "Enables a built-in Touch ID authenticator for the Web Authentication API.";
2969
Brett Wilson7b44537e2017-08-18 01:38:282970const char kHostedAppsInWindowsName[] =
2971 "Allow hosted apps to be opened in windows";
2972const char kHostedAppsInWindowsDescription[] =
2973 "Allows hosted apps to be opened in windows instead of being limited to "
2974 "tabs.";
2975
Christopher Cameron57dee5a42018-09-25 01:20:082976const char kCreateAppWindowsInAppShimProcessName[] =
2977 "Create native windows in the app process";
2978const char kCreateAppWindowsInAppShimProcessDescription[] =
2979 "Create native windows the app shim process, instead of of the browser "
2980 "process.";
2981
Lei Zhang2eca9082017-10-17 20:42:502982const char kMacRTLName[] = "Enable RTL";
2983const char kMacRTLDescription[] = "Mirrors the UI for RTL language users";
Brett Wilson7b44537e2017-08-18 01:38:282984
Lei Zhang2eca9082017-10-17 20:42:502985const char kMacTouchBarName[] = "Hardware Touch Bar";
2986const char kMacTouchBarDescription[] = "Control the use of the Touch Bar.";
Brett Wilson7b44537e2017-08-18 01:38:282987
Greg Kerraea59272018-10-12 16:44:312988const char kMacV2SandboxName[] = "Mac V2 Sandbox";
2989const char kMacV2SandboxDescription[] =
2990 "Eliminates the unsandboxed warmup phase and sandboxes processes for their "
2991 "entire life cycle.";
2992
Brett Wilson7b44537e2017-08-18 01:38:282993const char kMacViewsNativeAppWindowsName[] = "Toolkit-Views App Windows.";
2994const char kMacViewsNativeAppWindowsDescription[] =
2995 "Controls whether to use Toolkit-Views based Chrome App windows.";
2996
2997const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
2998const char kMacViewsTaskManagerDescription[] =
2999 "Controls whether to use the Toolkit-Views based Task Manager.";
3000
3001const char kTabDetachingInFullscreenName[] =
3002 "Allow tab detaching in fullscreen";
3003const char kTabDetachingInFullscreenDescription[] =
3004 "Allow tabs to detach from the tabstrip when in fullscreen mode on Mac.";
3005
3006const char kTabStripKeyboardFocusName[] = "Tab Strip Keyboard Focus";
3007const char kTabStripKeyboardFocusDescription[] =
3008 "Enable keyboard focus for the tabs in the tab strip.";
3009
Tessa Nijssen4db9799e2018-08-06 21:04:383010const char kTextSuggestionsTouchBarName[] = "Text Suggestions Touch Bar";
3011const char kTextSuggestionsTouchBarDescription[] =
3012 "Enable text suggestions touch bar for textfields.";
3013
Brett Wilson7b44537e2017-08-18 01:38:283014#endif
3015
3016// Chrome OS -------------------------------------------------------------------
vabr0215a8e2017-03-28 12:47:343017
3018#if defined(OS_CHROMEOS)
3019
Brett Wilson7b44537e2017-08-18 01:38:283020const char kAcceleratedMjpegDecodeName[] =
3021 "Hardware-accelerated mjpeg decode for captured frame";
3022const char kAcceleratedMjpegDecodeDescription[] =
3023 "Enable hardware-accelerated mjpeg decode for captured frame where "
3024 "available.";
vabr0215a8e2017-03-28 12:47:343025
Brett Wilson7b44537e2017-08-18 01:38:283026const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click";
3027const char kAllowTouchpadThreeFingerClickDescription[] =
3028 "Enables touchpad three-finger-click as middle button.";
vabr0215a8e2017-03-28 12:47:343029
Bruno Kim Medeiros Cesarb98fe1d82018-06-06 18:11:523030const char kArcAvailableForChildName[] = "Allow ARC for child accounts";
3031const char kArcAvailableForChildDescription[] =
3032 "Allow child accounts to start Android apps.";
3033
Brett Wilson7b44537e2017-08-18 01:38:283034const char kArcBootCompleted[] = "Load Android apps automatically";
3035const char kArcBootCompletedDescription[] =
3036 "Allow Android apps to start automatically after signing in.";
vabr0215a8e2017-03-28 12:47:343037
Luum Habtemariamdaa8fd22018-06-25 22:39:433038const char kArcCupsApiName[] = "ARC CUPS API";
3039const char kArcCupsApiDescription[] =
3040 "Enables support of libcups APIs from ARC";
3041
Yuichiro Hanada0b63f062018-07-12 02:18:333042const char kArcInputMethodName[] = "Enable ARC input methods.";
3043const char kArcInputMethodDescription[] = "Enable ARC input methods.";
3044
Lev Rumyantsev7a8544312017-08-18 19:26:513045const char kArcNativeBridgeExperimentName[] =
3046 "Enable native bridge experiment for ARC";
3047const char kArcNativeBridgeExperimentDescription[] =
3048 "Enables experimental native bridge feature.";
3049
lgchengecd1c1a62018-01-09 02:59:463050const char kArcUsbHostName[] = "Enable ARC USB host integration";
3051const char kArcUsbHostDescription[] =
3052 "Allow Android apps to use USB host feature on ChromeOS devices.";
3053
Kevin Cernekeeb7f96a52017-10-25 17:40:183054const char kArcVpnName[] = "Enable ARC VPN integration";
3055const char kArcVpnDescription[] =
3056 "Allow Android VPN clients to tunnel Chrome traffic.";
3057
Qiang Xu045aff222018-05-21 23:21:013058const char kAshDisableLoginDimAndBlurName[] =
3059 "Disable dimming and blur on login screen.";
3060const char kAshDisableLoginDimAndBlurDescription[] =
3061 "Disable dimming and blur on login screen.";
3062
3063const char kAshDisableSmoothScreenRotationName[] =
3064 "Disable smooth rotation animations.";
3065const char kAshDisableSmoothScreenRotationDescription[] =
3066 "Disable smooth rotation animations.";
3067
3068const char kAshEnableDisplayMoveWindowAccelsName[] =
3069 "Enable shortcuts for moving window between displays.";
3070const char kAshEnableDisplayMoveWindowAccelsDescription[] =
3071 "Enable shortcuts for moving window between displays.";
3072
3073const char kAshEnableKeyboardShortcutViewerName[] =
3074 "Enable keyboard shortcut viewer.";
3075const char kAshEnableKeyboardShortcutViewerDescription[] =
3076 "Enable keyboard shortcut viewer.";
3077
3078const char kAshEnableMirroredScreenName[] = "Enable mirrored screen mode.";
3079const char kAshEnableMirroredScreenDescription[] =
3080 "Enable the mirrored screen mode. This mode flips the screen image "
3081 "horizontally.";
3082
Qiang Xu045aff222018-05-21 23:21:013083const char kAshEnablePersistentWindowBoundsName[] =
3084 "Enable persistent window bounds in multi-displays scenario.";
3085const char kAshEnablePersistentWindowBoundsDescription[] =
3086 "Enable persistent window bounds in multi-displays scenario.";
3087
3088const char kAshEnableTrilinearFilteringName[] = "Enable trilinear filtering.";
3089const char kAshEnableTrilinearFilteringDescription[] =
3090 "Enable trilinear filtering.";
3091
Brett Wilson7b44537e2017-08-18 01:38:283092const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
3093const char kAshEnableUnifiedDesktopDescription[] =
3094 "Enable unified desktop mode which allows a window to span multiple "
3095 "displays.";
vabr0215a8e2017-03-28 12:47:343096
Mike Wassermanfcc47e42018-06-14 21:24:423097const char kAshKeyboardShortcutViewerAppName[] =
3098 "Keyboard Shortcut Viewer mojo app";
3099const char kAshKeyboardShortcutViewerAppDescription[] =
3100 "Use an out-of-process mojo app to show the Keyboard Shortcut Viewer.";
3101
Qiang Xu045aff222018-05-21 23:21:013102const char kAshShelfColorName[] = "Shelf color in Chrome OS system UI";
3103const char kAshShelfColorDescription[] =
3104 "Enables/disables the shelf color to be a derived from the wallpaper. The "
3105 "--ash-shelf-color-scheme flag defines how that color is derived.";
3106
3107const char kAshShelfColorScheme[] = "Shelf color scheme in Chrome OS System UI";
3108const char kAshShelfColorSchemeDescription[] =
3109 "Specify how the color is derived from the wallpaper. This flag is only "
3110 "used when the --ash-shelf-color flag is enabled. Defaults to Dark & Muted";
3111const char kAshShelfColorSchemeLightVibrant[] = "Light & Vibrant";
3112const char kAshShelfColorSchemeNormalVibrant[] = "Normal & Vibrant";
3113const char kAshShelfColorSchemeDarkVibrant[] = "Dark & Vibrant";
3114const char kAshShelfColorSchemeLightMuted[] = "Light & Muted";
3115const char kAshShelfColorSchemeNormalMuted[] = "Normal & Muted";
3116const char kAshShelfColorSchemeDarkMuted[] = "Dark & Muted";
3117
Sean Kau5e956192017-10-06 22:25:173118const char kBulkPrintersName[] = "Bulk Printers Policy";
3119const char kBulkPrintersDescription[] = "Enables the new bulk printers policy";
3120
Brett Wilson7b44537e2017-08-18 01:38:283121const char kCaptivePortalBypassProxyName[] =
3122 "Bypass proxy for Captive Portal Authorization";
3123const char kCaptivePortalBypassProxyDescription[] =
3124 "If proxy is configured, it usually prevents from authorization on "
3125 "different captive portals. This enables opening captive portal "
3126 "authorization dialog in a separate window, which ignores proxy settings.";
vabr0215a8e2017-03-28 12:47:343127
Yuki Awanob51d3252018-07-11 23:45:553128const char kChromeVoxArcSupportName[] = "ChromeVox ARC support";
3129const char kChromeVoxArcSupportDescription[] =
3130 "Use ChromeVox screen reader features in ARC";
3131
Brett Wilson7b44537e2017-08-18 01:38:283132const char kCrOSComponentName[] = "Chrome OS Component";
3133const char kCrOSComponentDescription[] =
Xiaochu Liu4c1b75d2017-12-18 23:52:083134 "Disable the use of componentized escpr CUPS filter.";
vabr0215a8e2017-03-28 12:47:343135
Xiaochu Liu51d03fd2017-09-08 23:51:023136const char kCrOSContainerName[] = "Chrome OS Container";
3137const char kCrOSContainerDescription[] =
3138 "Enable the use of Chrome OS Container utility.";
3139
Brett Wilson7b44537e2017-08-18 01:38:283140const char kCrosRegionsModeName[] = "Cros-regions load mode";
3141const char kCrosRegionsModeDescription[] =
3142 "This flag controls cros-regions load mode";
3143const char kCrosRegionsModeDefault[] = "Default";
3144const char kCrosRegionsModeOverride[] = "Override VPD values.";
3145const char kCrosRegionsModeHide[] = "Hide VPD values.";
vabr0215a8e2017-03-28 12:47:343146
Joel Hockeyad5b9762018-09-01 12:06:083147const char kCrostiniFilesName[] = "Crostini Files";
3148const char kCrostiniFilesDescription[] =
3149 "Enable Crostini file sharing in Files app.";
3150
Daniele Castagnac4aeb572018-10-23 16:23:573151const char kDisableExplicitDmaFencesName[] = "Disable explicit dma-fences";
3152const char kDisableExplicitDmaFencesDescription[] =
3153 "Always rely on implicit syncrhonization between GPU and display "
3154 "controller instead of using dma-fences explcitily when available.";
3155
Jacob Dufault2becbc482017-08-25 00:36:353156const char kDisableLockScreenAppsName[] = "Disable lock screen note taking";
3157const char kDisableLockScreenAppsDescription[] =
3158 "Disable new-note action handler apps on the lock screen. The user will "
3159 "not be able to launch the preferred note-taking action from the lock "
3160 "screen, provided that the app supports lock screen note taking.";
3161
Qiang Xu045aff222018-05-21 23:21:013162const char kDisableSystemTimezoneAutomaticDetectionName[] =
3163 "SystemTimezoneAutomaticDetection policy support";
3164const char kDisableSystemTimezoneAutomaticDetectionDescription[] =
3165 "Disable system timezone automatic detection device policy.";
3166
Sammie Quonef6b4882017-09-14 16:50:053167const char kDisableTabletAutohideTitlebarsName[] =
3168 "Disable autohide titlebars in tablet mode";
3169const char kDisableTabletAutohideTitlebarsDescription[] =
3170 "Disable tablet mode autohide titlebars functionality. The user will be "
3171 "able to see the titlebar in tablet mode.";
3172
Xiaoqian Dai24b33eb2018-04-10 21:01:573173const char kDisableTabletSplitViewName[] = "Disable split view in Tablet mode";
3174const char kDisableTabletSplitViewDescription[] =
3175 "Disable split view for Chrome OS tablet mode.";
3176
Ahmed Fakhry4f567e692018-10-16 15:51:083177const char kDoubleTapToZoomInTabletModeName[] =
3178 "Double-tap to zoom in tablet mode";
3179const char kDoubleTapToZoomInTabletModeDescription[] =
3180 "If Enabled, double tapping in webpages while in tablet mode will zoom the "
3181 "page.";
3182
Daniel Zhang01399072018-08-16 22:28:203183const char kEnableAppListSearchAutocompleteName[] =
3184 "App List Search Autocomplete";
3185const char kEnableAppListSearchAutocompleteDescription[] =
3186 "Allow App List search box to autocomplete queries for Google searches and "
3187 "apps.";
3188
Qiang Xu53d1a5832018-05-24 18:44:193189const char kEnableAppShortcutSearchName[] =
3190 "Enable app shortcut search in launcher";
3191const char kEnableAppShortcutSearchDescription[] =
3192 "Enables app shortcut search in launcher";
3193
Weidong Guo00d0b2b2018-06-07 00:39:303194const char kEnableAppsGridGapFeatureName[] =
3195 "Enable apps grid gap feature in launcher.";
3196const char kEnableAppsGridGapFeatureDescription[] =
3197 "Enables gaps at the end of each page and enables dragging an item to an "
3198 "empty page in launcher.";
3199
Becca Hughes34415e82018-10-05 18:47:373200extern const char kEnableArcUnifiedAudioFocusName[] =
3201 "Enable unified audio focus on ARC";
3202extern const char kEnableArcUnifiedAudioFocusDescription[] =
3203 "If audio focus is enabled in Chrome then this will delegate audio focus "
3204 "control in Android apps to Chrome.";
3205
Lei Zhang2eca9082017-10-17 20:42:503206const char kEnableBackgroundBlurName[] = "Enable background blur.";
3207const char kEnableBackgroundBlurDescription[] =
Wenzhao Zang50fb0b22017-11-07 01:38:423208 "Enables background blur for the Peeking Launcher and Tab Switcher.";
Alex Newcomer43cb7f12017-07-28 17:37:393209
Lei Zhang0ca70ea2018-09-07 17:51:013210const char kEnableChromeOsAccountManagerName[] = "Enable Account Manager";
3211const char kEnableChromeOsAccountManagerDescription[] =
Kushagra Sinha8a181fc2018-08-20 17:15:493212 "Enables the Chrome OS Account Manager";
3213
Lei Zhang0ca70ea2018-09-07 17:51:013214const char kEnableContinueReadingName[] = "Enable continue reading";
3215const char kEnableContinueReadingDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013216 "Enable continue reading feature in Launcher, which allows users to "
3217 "seamlessly continue reading a web page when they switch devices from "
3218 "phones or tablets to Chromebooks.";
3219
Min Chenc2ec7282018-06-29 21:38:463220const char kEnableDragAppsInTabletModeName[] =
3221 "Enable dragging apps in tablet mode";
3222const char kEnableDragAppsInTabletModeDescription[] =
3223 "If enabled, swiping down from the top of the screen when an app is opened "
3224 "in tablet mode can drag the app.";
3225
Xiaoqian Dai82d99192018-05-25 18:51:353226const char kEnableDragTabsInTabletModeName[] =
3227 "Enable dragging tabs in tablet mode";
3228const char kEnableDragTabsInTabletModeDescription[] =
3229 "Allows the user to drag the tabs out of a browser window in tablet mode.";
3230
Sam McNally201fbf94e2018-07-04 03:15:203231const char kEnableDriveFsName[] = "Enable DriveFS";
3232const char kEnableDriveFsDescription[] =
3233 "Enables use of the new DriveFS-based Drive sync client.";
3234
Brett Wilson7b44537e2017-08-18 01:38:283235const char kEnableEhvInputName[] =
3236 "Emoji, handwriting and voice input on opt-in IME menu";
3237const char kEnableEhvInputDescription[] =
3238 "Enable access to emoji, handwriting and voice input form opt-in IME menu.";
vabr0215a8e2017-03-28 12:47:343239
Brett Wilson7b44537e2017-08-18 01:38:283240const char kEnableEncryptionMigrationName[] =
3241 "Enable encryption migration of user data";
3242const char kEnableEncryptionMigrationDescription[] =
3243 "If enabled and the device supports ARC, the user will be asked to update "
3244 "the encryption of user data when the user signs in.";
vabr0215a8e2017-03-28 12:47:343245
Blake O'Hare9e9317b22017-10-24 02:49:353246const char kEnableFloatingVirtualKeyboardName[] =
3247 "Enable floating virtual keyboard";
3248const char kEnableFloatingVirtualKeyboardDescription[] =
3249 "If enabled, the keyboard will use floating behavior by default.";
3250
Qiang Xu045aff222018-05-21 23:21:013251const char kEnableFullscreenHandwritingVirtualKeyboardName[] =
3252 "Enable full screen handwriting virtual keyboard";
3253const char kEnableFullscreenHandwritingVirtualKeyboardDescription[] =
3254 "If enabled, the handwriting virtual keyboard will allow user to write "
3255 "anywhere on the screen";
3256
Xiaohui Chenfb0943e2018-10-16 22:44:373257const char kEnableGoogleAssistantName[] = "Enable Google Assistant";
3258const char kEnableGoogleAssistantDescription[] =
3259 "Enable an experimental Assistant implementation that will work on all "
3260 "Chromebooks.";
3261
Qiang Xu045aff222018-05-21 23:21:013262const char kEnableHomeLauncherName[] = "Enable home launcher";
3263const char kEnableHomeLauncherDescription[] =
3264 "Enable home launcher in tablet mode.";
3265
Lei Zhang0ca70ea2018-09-07 17:51:013266const char kEnableHomeLauncherGesturesName[] = "Enable home launcher gestures";
3267const char kEnableHomeLauncherGesturesDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013268 "Enables using gestures to hide or show the home launcher.";
3269
Brett Wilson7b44537e2017-08-18 01:38:283270const char kEnableImeMenuName[] = "Enable opt-in IME menu";
3271const char kEnableImeMenuDescription[] =
3272 "Enable access to the new IME menu in the Language Settings page.";
vabr0215a8e2017-03-28 12:47:343273
Becca Hughes3d63a91d2018-10-17 19:30:393274const char kEnableMediaSessionAshMediaKeysName[] =
3275 "Enable media session media key handling";
3276const char kEnableMediaSessionAshMediaKeysDescription[] =
3277 "Enable the media session service to handle media keys. This requires "
3278 "the audio focus flag to be enabled too.";
3279
Weidong Guo45836d1b2018-06-27 23:51:163280const char kEnableNewStyleLauncherName[] = "Enable new style launcher.";
3281const char kEnableNewStyleLauncherDescription[] =
3282 "Enables new style UI such as suggestion chips, resizable apps grid, etc. "
3283 "in app launcher.";
3284
Qiang Xu045aff222018-05-21 23:21:013285const char kEnableNewWallpaperPickerName[] = "Enable new wallpaper picker";
3286const char kEnableNewWallpaperPickerDescription[] =
3287 "Enable the redesigned wallpaper picker with new wallpaper collections.";
3288
Sammie Quon248ccef2018-08-28 23:00:013289const char kEnableOobeRecommendAppsScreenName[] =
3290 "Enable OOBE Recommend Apps Screen";
3291const char kEnableOobeRecommendAppsScreenDescription[] =
3292 "Enable the Recommend Apps Screen in OOBE which allows user to install apps"
3293 "from other devices";
3294
Qiang Xu045aff222018-05-21 23:21:013295const char kEnablePerUserTimezoneName[] = "Per-user time zone preferences.";
3296const char kEnablePerUserTimezoneDescription[] =
3297 "Chrome OS system timezone preference is stored and handled for each user "
3298 "individually.";
3299
3300const char kEnableSettingsShortcutSearchName[] =
3301 "Enable Settings shortcut search";
3302const char kEnableSettingsShortcutSearchDescription[] =
3303 "Enable Settings shortcut search in launcher.";
3304
Darren Shen3e49c63d2018-03-28 04:45:503305const char kEnableStylusVirtualKeyboardName[] =
3306 "Enable stylus virtual keyboard";
3307const char kEnableStylusVirtualKeyboardDescription[] =
3308 "If enabled, tapping with a stylus will show the handwriting virtual "
3309 "keyboard.";
3310
Jordy Greenblatt2f23df22018-02-22 19:49:193311const char kEnableUnifiedMultiDeviceSettingsName[] =
3312 "Enable unified MultiDevice settings";
3313const char kEnableUnifiedMultiDeviceSettingsDescription[] =
3314 "If enabled, the Chrome OS Settings UI will include a menu for the unified "
3315 "MultiDevice settings.";
3316
3317const char kEnableUnifiedMultiDeviceSetupName[] =
3318 "Enable unified MultiDevice setup";
3319const char kEnableUnifiedMultiDeviceSetupDescription[] =
3320 "Enable the device to setup all MultiDevice services in a single workflow.";
3321
Darren Shen11c770f312018-06-13 07:36:393322const char kEnableVirtualKeyboardMdUiName[] =
3323 "Enable Material Design virtual keyboard";
3324const char kEnableVirtualKeyboardMdUiDescription[] =
3325 "If enabled, loads the Material Design UI for the virtual keyboard.";
3326
Darren Shen0b4e5802018-07-10 03:12:263327const char kEnableVirtualKeyboardUkmName[] = "Enable UKM for virtual keyboard";
3328const char kEnableVirtualKeyboardUkmDescription[] =
3329 "Enables UKM for virtual keyboard";
3330
Lei Zhang0ca70ea2018-09-07 17:51:013331const char kEnableZeroStateSuggestionsName[] = "Enable Zero State Suggetions";
3332const char kEnableZeroStateSuggestionsDescription[] =
Sammie Quon248ccef2018-08-28 23:00:013333 "Enable Zero State Suggestions feature in Launcher, which will show "
3334 "suggetions when launcher search box is active with an empty query";
3335
Brett Wilson7b44537e2017-08-18 01:38:283336const char kEolNotificationName[] = "Disable Device End of Life notification.";
3337const char kEolNotificationDescription[] =
3338 "Disable Notifcation when Device is End of Life.";
3339
3340const char kExperimentalAccessibilityFeaturesName[] =
3341 "Experimental accessibility features";
3342const char kExperimentalAccessibilityFeaturesDescription[] =
3343 "Enable additional accessibility features in the Settings page.";
3344
Brett Wilson7b44537e2017-08-18 01:38:283345const char kFileManagerTouchModeName[] = "Files App. touch mode";
3346const char kFileManagerTouchModeDescription[] =
3347 "Touchscreen-specific interactions of the Files app.";
3348
3349const char kFirstRunUiTransitionsName[] =
3350 "Animated transitions in the first-run tutorial";
3351const char kFirstRunUiTransitionsDescription[] =
3352 "Transitions during first-run tutorial are animated.";
3353
Brett Wilson7b44537e2017-08-18 01:38:283354const char kForceEnableStylusToolsName[] = "Force enable stylus features";
3355const char kForceEnableStylusToolsDescription[] =
3356 "Forces display of the stylus tools menu in the shelf and the stylus "
3357 "section in settings, even if there is no attached stylus device.";
3358
3359const char kGestureEditingName[] = "Gesture editing for the virtual keyboard.";
3360const char kGestureEditingDescription[] =
3361 "Enable/Disable gesture editing option in the settings page for the "
3362 "virtual keyboard.";
3363
3364const char kGestureTypingName[] = "Gesture typing for the virtual keyboard.";
3365const char kGestureTypingDescription[] =
3366 "Enable/Disable gesture typing option in the settings page for the virtual "
3367 "keyboard.";
3368
3369const char kInputViewName[] = "Input views";
3370const char kInputViewDescription[] =
3371 "Enable IME extensions to supply custom views for user input such as "
3372 "virtual keyboards.";
3373
Megumi Hattori5a0d4182018-03-06 11:09:503374const char kLockScreenNotificationName[] = "Lock screen notification";
3375const char kLockScreenNotificationDescription[] =
3376 "Enable notifications on the lock screen.";
3377
Qiang Xu045aff222018-05-21 23:21:013378const char kMaterialDesignInkDropAnimationSpeedName[] =
3379 "Material design ink drop animation speed";
3380const char kMaterialDesignInkDropAnimationSpeedDescription[] =
3381 "Sets the speed of the experimental visual feedback animations for "
3382 "material design.";
3383const char kMaterialDesignInkDropAnimationFast[] = "Fast";
3384const char kMaterialDesignInkDropAnimationSlow[] = "Slow";
3385
Brett Wilson7b44537e2017-08-18 01:38:283386const char kMemoryPressureThresholdName[] =
3387 "Memory discard strategy for advanced pressure handling";
3388const char kMemoryPressureThresholdDescription[] =
3389 "Memory discarding strategy to use";
3390const char kConservativeThresholds[] =
3391 "Conservative memory pressure release strategy";
3392const char kAggressiveCacheDiscardThresholds[] =
3393 "Aggressive cache release strategy";
3394const char kAggressiveTabDiscardThresholds[] =
3395 "Aggressive tab release strategy";
3396const char kAggressiveThresholds[] =
3397 "Aggressive tab and cache release strategy";
3398
3399const char kMtpWriteSupportName[] = "MTP write support";
3400const char kMtpWriteSupportDescription[] =
3401 "MTP write support in File System API (and file manager). In-place editing "
3402 "operations are not supported.";
3403
Kyle Horimoto027590fb2018-02-13 22:19:483404const char kMultiDeviceApiName[] = "Enables the MultiDevice API";
3405const char kMultiDeviceApiDescription[] =
3406 "Enable Mojo-based API which provides synced device metadata and the "
3407 "ability to connect to other devices associated the logged-in Google "
3408 "account.";
3409
Bailey Berrodca8eeca02017-11-18 00:49:123410const char kNativeSmbName[] = "Native Smb Client";
3411const char kNativeSmbDescription[] =
3412 "If enabled, allows connections to an smb filesystem via Files app";
Bailey Berrofc0da1b2017-11-02 11:02:303413
vabr0215a8e2017-03-28 12:47:343414const char kNetworkPortalNotificationName[] =
3415 "Notifications about captive portals";
vabr0215a8e2017-03-28 12:47:343416const char kNetworkPortalNotificationDescription[] =
3417 "If enabled, notification is displayed when device is connected to a "
3418 "network behind captive portal.";
3419
Brett Wilson7b44537e2017-08-18 01:38:283420const char kNewKoreanImeName[] = "New Korean IME";
3421const char kNewKoreanImeDescription[] =
3422 "New Korean IME, which is based on Google Input Tools' HMM engine.";
vabr0215a8e2017-03-28 12:47:343423
Anand K. Mistrydb5e0102018-10-04 04:24:003424const char kNewZipUnpackerName[] = "ZIP Archiver (unpacking)";
Brett Wilson7b44537e2017-08-18 01:38:283425const char kNewZipUnpackerDescription[] =
Anand K. Mistrydb5e0102018-10-04 04:24:003426 "Use the ZIP Archiver for mounting/unpacking ZIP files";
vabr0215a8e2017-03-28 12:47:343427
Qiang Xu045aff222018-05-21 23:21:013428const char kOfficeEditingComponentAppName[] =
3429 "Office Editing for Docs, Sheets & Slides";
3430const char kOfficeEditingComponentAppDescription[] =
3431 "Office Editing for Docs, Sheets & Slides for testing purposes.";
3432
Brett Wilson7b44537e2017-08-18 01:38:283433const char kPhysicalKeyboardAutocorrectName[] = "Physical keyboard autocorrect";
3434const char kPhysicalKeyboardAutocorrectDescription[] =
3435 "Enable physical keyboard autocorrect for US keyboard, which can provide "
3436 "suggestions as typing on physical keyboard.";
vabr0215a8e2017-03-28 12:47:343437
3438const char kPrinterProviderSearchAppName[] =
3439 "Chrome Web Store Gallery app for printer drivers";
vabr0215a8e2017-03-28 12:47:343440const char kPrinterProviderSearchAppDescription[] =
3441 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:193442 "searches Chrome Web Store for extensions that support printing to a USB "
3443 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:343444
Brett Wilson7b44537e2017-08-18 01:38:283445const char kQuickUnlockPinName[] = "Quick Unlock (PIN)";
3446const char kQuickUnlockPinDescription[] =
3447 "Enabling PIN quick unlock allows you to use a PIN to unlock your ChromeOS "
3448 "device on the lock screen after you have signed into your device.";
3449const char kQuickUnlockPinSignin[] = "Enable PIN when logging in.";
3450const char kQuickUnlockPinSigninDescription[] =
3451 "Enabling PIN allows you to use a PIN to sign in and unlock your ChromeOS "
3452 "device. After changing this flag PIN needs to be set up again.";
3453const char kQuickUnlockFingerprint[] = "Quick Unlock (Fingerprint)";
3454const char kQuickUnlockFingerprintDescription[] =
3455 "Enabling fingerprint quick unlock allows you to setup and use a "
3456 "fingerprint to unlock your Chromebook on the lock screen after you have "
3457 "signed into your device.";
vabr0215a8e2017-03-28 12:47:343458
James Cook0ba192bf2017-12-01 20:53:113459const char kShowTapsName[] = "Show taps";
3460const char kShowTapsDescription[] =
3461 "Draws a circle at each touch point, which makes touch points more obvious "
3462 "when projecting or mirroring the display. Similar to the Android OS "
3463 "developer option.";
3464
3465const char kShowTouchHudName[] = "Show HUD for touch points";
3466const char kShowTouchHudDescription[] =
3467 "Shows a trail of colored dots for the last few touch points. Pressing "
3468 "Ctrl-Alt-I shows a heads-up display view in the top-left corner. Helps "
3469 "debug hardware issues that generate spurious touch events.";
3470
James Cook28d7c482018-09-07 21:00:543471const char kSingleProcessMashName[] =
3472 "In-process window service (SingleProcessMash)";
3473const char kSingleProcessMashDescription[] =
3474 "Runs the system UI (ash) as a mojo service, but inside the browser "
3475 "process. The browser uses the mojo window service (ws) APIs.";
3476
Ahmed Fakhry58e6ef542018-09-04 18:05:383477const char kSlideTopChromeWithPageScrollsName[] =
3478 "Slide top-chrome with page scrolls";
3479const char kSlideTopChromeWithPageScrollsDescription[] =
3480 "If enabled, page scrolls in tablet mode will also scroll the top-chrome"
3481 " UI.";
3482
Jorge Gil5a8ccde2018-07-10 01:46:213483const char kSmartTextSelectionName[] = "Smart Text Selection";
3484const char kSmartTextSelectionDescription[] =
3485 "Shows quick actions for text "
3486 "selections in the context menu.";
3487
Chung-Sheng Wu468b0b32017-09-01 14:41:573488const char kSysInternalsName[] = "Enable Sys-Internals";
3489const char kSysInternalsDescription[] =
3490 "If enabled, user can monitor system information at "
3491 "chrome://sys-internals.";
3492
Brett Wilson7b44537e2017-08-18 01:38:283493const char kTetherName[] = "Instant Tethering";
3494const char kTetherDescription[] =
3495 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
3496 "phone to share its Internet connection with this device.";
stanisc14bed0b132017-05-10 17:46:373497
Brett Wilson7b44537e2017-08-18 01:38:283498const char kTouchscreenCalibrationName[] =
3499 "Enable/disable touchscreen calibration option in material design settings";
3500const char kTouchscreenCalibrationDescription[] =
3501 "If enabled, the user can calibrate the touch screen displays in "
3502 "chrome://settings/display.";
yhanadac5bff5b2017-05-18 06:37:093503
Qiang Xu045aff222018-05-21 23:21:013504const char kUiDevToolsName[] = "Enable native UI inspection";
3505const char kUiDevToolsDescription[] =
3506 "Enables inspection of native UI elements. For local inspection use "
3507 "chrome://inspect#other";
3508
3509const char kUiShowCompositedLayerBordersName[] =
3510 "Show UI composited layer borders";
3511const char kUiShowCompositedLayerBordersDescription[] =
3512 "Show border around composited layers created by UI.";
3513const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
3514const char kUiShowCompositedLayerBordersSurface[] = "Surface";
3515const char kUiShowCompositedLayerBordersLayer[] = "Layer";
3516const char kUiShowCompositedLayerBordersAll[] = "All";
3517
3518const char kUiSlowAnimationsName[] = "Slow UI animations";
3519const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
3520
Mitsuru Oshima63d3f2a2017-08-23 00:12:113521// Force UI Mode
3522const char kUiModeName[] = "Force Ui Mode";
3523const char kUiModeDescription[] =
3524 R"*(This flag can be used to force a certain mode on to a chromebook, )*"
3525 R"*(despite its current orientation. "Tablet" means that the )*"
3526 R"*(chromebook will act as if it were in tablet mode. "Clamshell" )*"
3527 R"*(means that the chromebook will act as if it were in clamshell )*"
3528 R"*(mode . "Auto" means that the chromebook will alternate between )*"
3529 R"*(the two, based on its orientation.)*";
3530const char kUiModeTablet[] = "TouchView";
3531const char kUiModeClamshell[] = "Clamshell";
3532const char kUiModeAuto[] = "Auto (default)";
3533
Sonny Sasaka7fecfeda2018-07-11 23:47:553534const char kUnfilteredBluetoothDevicesName[] = "Unfiltered Bluetooth devices";
3535const char kUnfilteredBluetoothDevicesDescription[] =
3536 "Shows all Bluetooth devices in UI (System Tray/Settings Page.)";
3537
Allen Webbcdc8e69d2018-09-12 20:36:003538const char kUsbguardName[] = "Block new USB devices at the lock screen.";
3539const char kUsbguardDescription[] =
3540 "Prevents newly connected USB devices from operating at the lock screen"
3541 " until Chrome OS is unlocked to protect against malicious USB devices."
3542 " Already connected USB devices will continue to function.";
3543
Micah Morton79a7b522018-09-27 15:15:303544const char kShillSandboxingName[] =
3545 "Run shill, the ChromeOS network manager, in a sandbox.";
3546const char kShillSandboxingDescription[] =
3547 "Causes shill to be run as user/group 'shill', instead of 'root'.";
3548
James Cooka1bcfa9a2018-01-30 00:18:403549const char kUseMashName[] = "Out-of-process system UI (mash)";
3550const char kUseMashDescription[] =
3551 "Runs the mojo UI service (mus) and the ash window manager and system UI "
3552 "in a separate process.";
Brett Wilson7b44537e2017-08-18 01:38:283553
Miguel Casas-Sanchez8ba32f92017-11-07 05:03:343554// TODO(mcasas): remove after https://crbug.com/771345.
3555const char kUseMonitorColorSpaceName[] = "Use monitor color space";
3556const char kUseMonitorColorSpaceDescription[] =
3557 "Enables Chrome to use the color space information provided by the monitor"
3558 " instead of the default sRGB color space.";
3559
Andres Calderon Jaramillo43c0e8a2018-08-21 02:46:233560const char kVaapiJpegImageDecodeAccelerationName[] =
3561 "VA-API JPEG decode acceleration for images";
3562const char kVaapiJpegImageDecodeAccelerationDescription[] =
3563 "Enable or disable decode acceleration of JPEG images (as opposed to camera"
3564 " captures) using the VA-API.";
3565
Brett Wilson7b44537e2017-08-18 01:38:283566const char kVideoPlayerChromecastSupportName[] =
3567 "Experimental Chromecast support for Video Player";
3568const char kVideoPlayerChromecastSupportDescription[] =
3569 "This option enables experimental Chromecast support for Video Player app "
3570 "on ChromeOS.";
3571
3572const char kVirtualKeyboardName[] = "Virtual Keyboard";
3573const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
3574
3575const char kVirtualKeyboardOverscrollName[] = "Virtual Keyboard Overscroll";
3576const char kVirtualKeyboardOverscrollDescription[] =
3577 "Enables virtual keyboard overscroll support.";
3578
3579const char kVoiceInputName[] = "Voice input on virtual keyboard";
3580const char kVoiceInputDescription[] =
3581 "Enables voice input on virtual keyboard.";
3582
3583const char kWakeOnPacketsName[] = "Wake On Packets";
3584const char kWakeOnPacketsDescription[] =
3585 "Enables waking the device based on the receipt of some network packets.";
orenb21da031c2017-06-30 21:24:203586
yhanadac5bff5b2017-05-18 06:37:093587#endif // defined(OS_CHROMEOS)
3588
Brett Wilson7b44537e2017-08-18 01:38:283589// Random platform combinations -----------------------------------------------
3590
3591#if defined(OS_WIN) || defined(OS_LINUX)
3592
3593const char kEnableInputImeApiName[] = "Enable Input IME API";
3594const char kEnableInputImeApiDescription[] =
3595 "Enable the use of chrome.input.ime API.";
3596
3597#endif // defined(OS_WIN) || defined(OS_LINUX)
3598
3599#if defined(OS_WIN) || defined(OS_MACOSX)
3600
3601const char kAutomaticTabDiscardingName[] = "Automatic tab discarding";
3602const char kAutomaticTabDiscardingDescription[] =
3603 "If enabled, tabs get automatically discarded from memory when the system "
3604 "memory is low. Discarded tabs are still visible on the tab strip and get "
3605 "reloaded when clicked on. Info about discarded tabs can be found at "
3606 "chrome://discards.";
3607
3608#endif // defined(OS_WIN) || defined(OS_MACOSX)
3609
lanwei83f54452018-06-21 23:51:043610#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3611
3612const char kDirectManipulationStylusName[] = "Direct Manipulation Stylus";
3613const char kDirectManipulationStylusDescription[] =
3614 "If enabled, Chrome will scroll web pages on stylus drag.";
3615
3616#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3617
Justin Donnelly110e40c2018-06-01 21:48:433618const char kExperimentalUiName[] = "Use all upcoming UI features";
3619const char kExperimentalUiDescription[] = "Use all upcoming UI features.";
Elly Fong-Jonesdfaf8532018-05-29 18:20:483620
Brett Wilson7b44537e2017-08-18 01:38:283621// Feature flags --------------------------------------------------------------
3622
3623#if BUILDFLAG(ENABLE_VR)
3624
David Dorwin5a496c32017-11-17 01:45:053625const char kWebVrVsyncAlignName[] = "WebVR VSync-aligned timing";
3626const char kWebVrVsyncAlignDescription[] =
3627 "Align WebVR application rendering with VSync for smoother animations.";
3628
Bill Orr103ed272018-02-14 21:23:053629#if BUILDFLAG(ENABLE_OCULUS_VR)
3630const char kOculusVRName[] = "Oculus hardware support";
3631const char kOculusVRDescription[] =
3632 "If enabled, Chrome will use Oculus devices for VR (supported only on "
3633 "Windows 10 or later).";
3634#endif // ENABLE_OCULUS_VR
3635
Bill Orr49527562017-11-22 16:58:483636#if BUILDFLAG(ENABLE_OPENVR)
3637const char kOpenVRName[] = "OpenVR hardware support";
3638const char kOpenVRDescription[] =
Bill Orr5056e692018-01-17 02:08:073639 "If enabled, Chrome will use OpenVR devices for VR (supported only on "
3640 "Windows 10 or later).";
Bill Orr49527562017-11-22 16:58:483641#endif // ENABLE_OPENVR
3642
Bill Orrecfb9fe2018-10-02 00:11:103643#if BUILDFLAG(ENABLE_ISOLATED_XR_SERVICE)
3644const char kXRSandboxName[] = "XR device sandboxing";
3645const char kXRSandboxDescription[] =
3646 "If enabled, Chrome will host VR APIs in a restricted process on desktop.";
3647#endif // ENABLE_ISOLATED_XR_SERVICE
3648
Brett Wilson7b44537e2017-08-18 01:38:283649#endif // ENABLE_VR
3650
Nico Weberaf3b00b2017-09-11 17:58:173651#if BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:283652
3653const char kNaclDebugMaskName[] =
3654 "Restrict Native Client GDB-based debugging by pattern";
3655const char kNaclDebugMaskDescription[] =
3656 "Restricts Native Client application GDB-based debugging by URL of "
3657 "manifest file. Native Client GDB-based debugging must be enabled for this "
3658 "option to work.";
3659const char kNaclDebugMaskChoiceDebugAll[] = "Debug everything.";
3660const char kNaclDebugMaskChoiceExcludeUtilsPnacl[] =
3661 "Debug everything except secure shell and the PNaCl translator.";
3662const char kNaclDebugMaskChoiceIncludeDebug[] =
3663 "Debug only if manifest URL ends with debug.nmf.";
3664
3665const char kNaclDebugName[] = "Native Client GDB-based debugging";
3666const char kNaclDebugDescription[] =
3667 "Enable GDB debug stub. This will stop a Native Client application on "
3668 "startup and wait for nacl-gdb (from the NaCl SDK) to attach to it.";
3669
3670const char kNaclName[] = "Native Client";
3671const char kNaclDescription[] =
3672 "Support Native Client for all web applications, even those that were not "
3673 "installed from the Chrome Web Store.";
3674
3675const char kPnaclSubzeroName[] = "Force PNaCl Subzero";
3676const char kPnaclSubzeroDescription[] =
3677 "Force the use of PNaCl's fast Subzero translator for all pexe files.";
3678
Nico Weberaf3b00b2017-09-11 17:58:173679#endif // BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:283680
Brett Wilson7b44537e2017-08-18 01:38:283681const char kWebrtcH264WithOpenh264FfmpegName[] =
3682 "WebRTC H.264 software video encoder/decoder";
3683const char kWebrtcH264WithOpenh264FfmpegDescription[] =
3684 "When enabled, an H.264 software video encoder/decoder pair is included. "
3685 "If a hardware encoder/decoder is also available it may be used instead of "
3686 "this encoder/decoder.";
3687
Henrik Boström386afc6d62018-10-08 07:47:153688const char kWebrtcUnifiedPlanByDefaultName[] =
3689 "WebRTC: Use Unified Plan SDP Semantics by default";
3690const char kWebrtcUnifiedPlanByDefaultDescription[] =
3691 "RTCPeerConnections generate and expect the standards compliant SDP format "
3692 "called \"Unified Plan\", unless \"Plan B\" is explicitly specified by "
3693 "passing {sdpSemantics:'plan-b'} to the RTCPeerConnection constructor. "
3694 "RTCRtpTransceiver support is also enabled in Unified Plan.";
3695
Brett Wilson7b44537e2017-08-18 01:38:283696#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3697
3698const char kAutofillCreditCardUploadName[] =
3699 "Enable offering upload of Autofilled credit cards";
3700const char kAutofillCreditCardUploadDescription[] =
3701 "Enables a new option to upload credit cards to Google Payments for sync "
3702 "to all Chrome devices.";
3703
3704#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3705
Becca Hughesdc96e842018-05-04 22:48:283706#if defined(OS_ANDROID)
3707
3708const char kDisplayCutoutAPIName[] =
3709 "Enable support for the Display Cutout API";
3710const char kDisplayCutoutAPIDescription[] =
3711 "Enables developers to support devices that have a display cutout.";
3712
3713#endif // defined(OS_ANDROID)
3714
Brett Wilson7b44537e2017-08-18 01:38:283715// ============================================================================
3716// Don't just add flags to the end, put them in the right section in
3717// alphabetical order just like the header file.
3718// ============================================================================
3719
vabr0215a8e2017-03-28 12:47:343720} // namespace flag_descriptions