blob: b6135fc0a8c3d099aa78c72d320b9ff09c24134b [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
38const char kAppBannersName[] = "App Banners";
39const char kAppBannersDescription[] =
40 "Enable the display of Progressive Web App banners, which prompt a user to "
41 "add a web app to their shelf, or other platform-specific equivalent.";
42
yoshiki iguchi4a10c5f2017-11-29 20:16:5443const char kAshSidebarName[] = "Sidebar";
44const char kAshSidebarDescription[] = "Enable the experimental sidebar.";
45
Michael Lippautzebbc5a82018-05-30 10:41:4246const char kEnableBlinkHeapIncrementalMarkingName[] =
47 "Blink Heap Incremental Marking";
48const char kEnableBlinkHeapIncrementalMarkingDescription[] =
49 "Enable incremental marking in Blink";
50
Tetsui Ohkubo2852b952018-02-23 04:12:0151const char kSystemTrayUnifiedName[] = "New system menu";
52const char kSystemTrayUnifiedDescription[] =
Tetsui Ohkubof860b8e2018-02-16 03:50:5553 "Enable the experimental system menu.";
54
Khushalba202212017-07-12 19:53:4955const char kAsyncImageDecodingName[] = "AsyncImageDecoding";
56const char kAsyncImageDecodingDescription[] =
57 "Enables asynchronous decoding of images from raster for web content";
58
Roger McFarlane2eceba982018-05-18 01:37:1159const char kAutofillCacheQueryResponsesName[] =
60 "Cache Autofill Query Responses";
61const char kAutofillCacheQueryResponsesDescription[] =
62 "When enabled, autofill will cache the responses it receives from the "
63 "crowd-sourced field type prediction server.";
64
sebsge35b762c2018-03-29 20:33:2765const char kAutofillDynamicFormsName[] = "Autofill Dynamic Forms";
66const char kAutofillDynamicFormsDescription[] =
67 "Allows autofill to fill dynamically changing forms";
68
Roger McFarlane1a37d7b2018-04-20 22:45:1969const char kAutofillEnforceMinRequiredFieldsForHeuristicsName[] =
70 "Autofill Enforce Min Required Fields For Heuristics";
71const char kAutofillEnforceMinRequiredFieldsForHeuristicsDescription[] =
72 "When enabled, autofill will generally require a form to have at least 3 "
73 "fields before allowing heuristic field-type prediction to occur.";
74
75const char kAutofillEnforceMinRequiredFieldsForQueryName[] =
76 "Autofill Enforce Min Required Fields For Query";
77const char kAutofillEnforceMinRequiredFieldsForQueryDescription[] =
78 "When enabled, autofill will generally require a form to have at least 3 "
79 "fields before querying the autofill server for field-type predictions.";
80
81const char kAutofillEnforceMinRequiredFieldsForUploadName[] =
82 "Autofill Enforce Min Required Fields For Upload";
83const char kAutofillEnforceMinRequiredFieldsForUploadDescription[] =
84 "When enabled, autofill will generally require a form to have at least 3 "
85 "fillable fields before uploading field-type votes for that form.";
86
Moe Ahmadid3ddfcb2018-04-20 19:51:0887const char kAutofillRestrictUnownedFieldsToFormlessCheckoutName[] =
88 "Restrict formless form extraction";
89const char kAutofillRestrictUnownedFieldsToFormlessCheckoutDescription[] =
90 "Restrict extraction of formless forms to checkout flows";
91
Brett Wilsonf27ff602017-07-07 22:28:4792const char kAutoplayPolicyName[] = "Autoplay policy";
93const char kAutoplayPolicyDescription[] =
94 "Policy used when deciding if audio or video is allowed to autoplay.";
95
96const char kAutoplayPolicyUserGestureRequiredForCrossOrigin[] =
97 "User gesture is required for cross-origin iframes.";
98const char kAutoplayPolicyNoUserGestureRequired[] =
99 "No user gesture is required.";
100const char kAutoplayPolicyUserGestureRequired[] = "User gesture is required.";
101const char kAutoplayPolicyDocumentUserActivation[] =
102 "Document user activation is required.";
103
Johanne0cc6902017-11-16 00:23:50104extern const char kAv1DecoderName[] = "Enable AV1 video decoding.";
105extern const char kAv1DecoderDescription[] =
106 "Allow decoding of files with the AV1 video codec.";
107
Brett Wilsonf27ff602017-07-07 22:28:47108const char kBackgroundVideoTrackOptimizationName[] =
109 "Optimize background video playback.";
110const char kBackgroundVideoTrackOptimizationDescription[] =
111 "Disable video tracks when the video is played in the background to "
112 "optimize performance.";
113
114const char kBleAdvertisingInExtensionsName[] = "BLE Advertising in Chrome Apps";
115const char kBleAdvertisingInExtensionsDescription[] =
116 "Enables BLE Advertising in Chrome Apps. BLE Advertising might interfere "
117 "with regular use of Bluetooth Low Energy features.";
118
Charles Harrisond629cc62017-10-05 01:39:54119const char kBlockTabUndersName[] = "Block tab-unders";
120const char kBlockTabUndersDescription[] =
121 "Blocks tab-unders in Chrome with some native UI to allow the user to "
122 "proceed.";
123
Brett Wilsonf27ff602017-07-07 22:28:47124const char kBrowserTaskSchedulerName[] = "Task Scheduler";
125const char kBrowserTaskSchedulerDescription[] =
126 "Enables redirection of some task posting APIs to the task scheduler.";
127
Carlos IL766fbc882018-02-16 02:34:52128const char kBundledConnectionHelpName[] = "Bundled Connection Help";
129const char kBundledConnectionHelpDescription[] =
130 "Enables or disables redirecting users who get an interstitial when "
131 "accessing https://support.google.com/chrome/answer/6098869 to local "
132 "connection help content.";
133
Brett Wilsonf27ff602017-07-07 22:28:47134const char kBypassAppBannerEngagementChecksName[] =
135 "Bypass user engagement checks";
136const char kBypassAppBannerEngagementChecksDescription[] =
137 "Bypasses user engagement checks for displaying app banners, such as "
138 "requiring that users have visited the site before and that the banner "
139 "hasn't been shown recently. This allows developers to test that other "
140 "eligibility requirements for showing app banners, such as having a "
141 "manifest, are met.";
142
Lucas Garronb9539b732017-10-31 00:22:09143const char kCommittedInterstitialsName[] = "Committed Interstitials";
144const char kCommittedInterstitialsDescription[] =
145 "Use committed error pages instead of transient navigation entries "
146 "for interstitial error pages (e.g. certificate errors).";
147
Brett Wilsonf27ff602017-07-07 22:28:47148const char kCastStreamingHwEncodingName[] =
149 "Cast Streaming hardware video encoding";
150const char kCastStreamingHwEncodingDescription[] =
151 "This option enables support in Cast Streaming for encoding video streams "
152 "using platform hardware.";
153
Amber Won478561d2017-08-19 01:02:59154const char kClickToOpenPDFName[] = "Click to open embedded PDFs";
155const char kClickToOpenPDFDescription[] =
156 "When the PDF plugin is unavailable, show a click-to-open placeholder for "
157 "embedded PDFs.";
158
Gary Kacmarcikfb69b212017-11-14 03:41:08159const char kClipboardContentSettingName[] = "Clipboard content setting";
160const char kClipboardContentSettingDescription[] =
161 "Enables a site-wide permission in the UI which controls access to the "
162 "asynchronous clipboard web API";
163
Brett Wilsonf27ff602017-07-07 22:28:47164const char kCloudImportName[] = "Cloud Import";
165const char kCloudImportDescription[] = "Allows the cloud-import feature.";
166
Christopher Cameronceb8727d2017-09-07 23:53:16167const char kForceColorProfileSRGB[] = "sRGB";
168const char kForceColorProfileP3[] = "Display P3 D65";
169const char kForceColorProfileColorSpin[] = "Color spin with gamma 2.4";
170const char kForceColorProfileHdr[] = "scRGB linear (HDR where available)";
171
172const char kForceColorProfileName[] = "Force color profile";
173const char kForceColorProfileDescription[] =
174 "Forces Chrome to use a specific color profile instead of the color "
175 "of the window's current monitor, as specified by the operating system.";
176
Brett Wilsonf27ff602017-07-07 22:28:47177const char kCompositedLayerBordersName[] = "Composited render layer borders";
178const char kCompositedLayerBordersDescription[] =
179 "Renders a border around composited Render Layers to help debug and study "
180 "layer compositing.";
181
Theresaf39c1882018-03-21 18:18:07182const char kContextualSuggestionsBottomSheetName[] =
Theresa818d3452018-05-22 00:08:07183 "Contextual Suggestions Bottom Sheet";
Theresaf39c1882018-03-21 18:18:07184const char kContextualSuggestionsBottomSheetDescription[] =
185 "If enabled, shows contextual suggestions in the bottom sheet.";
Brett Wilsonf27ff602017-07-07 22:28:47186
Theresa818d3452018-05-22 00:08:07187const char kContextualSuggestionsSlimPeekUIName[] =
188 "Contextual Suggestions Slim Peek UI";
189const char kContextualSuggestionsSlimPeekUIDescription[] =
190 "Use a slimmer peek UI for the contextual suggestions bottom sheet.";
191
Brett Wilsonf27ff602017-07-07 22:28:47192const char kCreditCardAssistName[] = "Credit Card Assisted Filling";
193const char kCreditCardAssistDescription[] =
194 "Enable assisted credit card filling on certain sites.";
195
196const char kCrossProcessGuestViewIsolationName[] =
197 "Cross process frames for guests";
198const char kCrossProcessGuestViewIsolationDescription[] =
199 "Highly experimental where guests such as <webview> are implemented on "
200 "the out-of-process iframe infrastructure.";
201
Thanh Le659cb102017-12-20 22:00:19202const char kDataSaverServerPreviewsName[] = "Data Saver Server Previews";
203const char kDataSaverServerPreviewsDescription[] =
204 "Allow the Data Reduction Proxy to serve previews.";
Brett Wilsonf27ff602017-07-07 22:28:47205
206const char kDatasaverPromptName[] = "Cellular Data Saver Prompt";
207const char kDatasaverPromptDescription[] =
208 "Enables a prompt, which appears when a cellular network connection is "
209 "detected, to take the user to the Data Saver extension page on Chrome Web "
210 "Store.";
211const char kDatasaverPromptDemoMode[] = "Demo mode";
212
Wez54dc71b2018-04-17 00:42:34213#if DCHECK_IS_CONFIGURABLE
214const char kDcheckIsFatalName[] = "DCHECKs are fatal";
215const char kDcheckIsFatalDescription[] =
216 "By default Chrome will evaluate in this build, but only log failures, "
217 "rather than crashing. If enabled, DCHECKs will crash the calling process.";
218#endif // DCHECK_IS_CONFIGURABLE
219
Brett Wilsonf27ff602017-07-07 22:28:47220const char kDebugPackedAppName[] = "Debugging for packed apps";
221const char kDebugPackedAppDescription[] =
222 "Enables debugging context menu options such as Inspect Element for packed "
223 "applications.";
224
225const char kDefaultTileHeightName[] = "Default tile height";
226const char kDefaultTileHeightDescription[] = "Specify the default tile height.";
227const char kDefaultTileHeightShort[] = "128";
228const char kDefaultTileHeightTall[] = "256";
229const char kDefaultTileHeightGrande[] = "512";
230const char kDefaultTileHeightVenti[] = "1024";
231
232const char kDefaultTileWidthName[] = "Default tile width";
233const char kDefaultTileWidthDescription[] = "Specify the default tile width.";
234const char kDefaultTileWidthShort[] = "128";
235const char kDefaultTileWidthTall[] = "256";
236const char kDefaultTileWidthGrande[] = "512";
237const char kDefaultTileWidthVenti[] = "1024";
238
239const char kDebugShortcutsName[] = "Debugging keyboard shortcuts";
240const char kDebugShortcutsDescription[] =
241 "Enables additional keyboard shortcuts that are useful for debugging Ash.";
242
243const char kDeviceDiscoveryNotificationsName[] =
244 "Device Discovery Notifications";
245const char kDeviceDiscoveryNotificationsDescription[] =
246 "Device discovery notifications on local network.";
247
248const char kDevtoolsExperimentsName[] = "Developer Tools experiments";
249const char kDevtoolsExperimentsDescription[] =
250 "Enables Developer Tools experiments. Use Settings panel in Developer "
251 "Tools to toggle individual experiments.";
252
253const char kDisableAudioForDesktopShareName[] =
254 "Disable Audio For Desktop Share";
255const char kDisableAudioForDesktopShareDescription[] =
256 "With this flag on, desktop share picker window will not let the user "
257 "choose whether to share audio.";
258
Chris Palmer917bc052018-03-14 19:28:31259const char kDisablePushStateThrottleName[] = "Disable pushState throttling";
260const char kDisablePushStateThrottleDescription[] =
261 "Disables throttling of history.pushState and history.replaceState method "
262 "calls.";
263
Brett Wilsonf27ff602017-07-07 22:28:47264const char kDisableTabForDesktopShareName[] =
265 "Disable Desktop Share with tab source";
266const char kDisableTabForDesktopShareDescription[] =
267 "This flag controls whether users can choose a tab for desktop share.";
268
269const char kDisallowDocWrittenScriptsUiName[] =
270 "Block scripts loaded via document.write";
271const char kDisallowDocWrittenScriptsUiDescription[] =
272 "Disallows fetches for third-party parser-blocking scripts inserted into "
273 "the main frame via document.write.";
274
Christopher Thompson2ffffa2c2018-05-18 23:06:37275const char kDisallowUnsafeHttpDownloadsName[] =
276 "Block unsafe downloads over insecure connections";
277const char kDisallowUnsafeHttpDownloadsNameDescription[] =
278 "Disallows downloads of unsafe files (files that can potentially execute "
279 "code), where the final download origin or any origin in the redirect "
280 "chain is insecure.";
281
Brett Wilsonf27ff602017-07-07 22:28:47282const char kDriveSearchInChromeLauncherName[] =
283 "Drive Search in Chrome App Launcher";
284const char kDriveSearchInChromeLauncherDescription[] =
285 "Files from Drive will show up when searching the Chrome App Launcher.";
286
Gustavo Sacomotofb11164f2017-07-21 12:56:18287const char kEasyUnlockPromotionsName[] = "Smart Lock Promotions";
288const char kEasyUnlockPromotionsDescription[] =
289 "Enables Smart Lock promotions. Promotions will be periodically display "
290 "if the user is eligible.";
291
Brett Wilsonf27ff602017-07-07 22:28:47292const char kEmbeddedExtensionOptionsName[] = "Embedded extension options";
293const char kEmbeddedExtensionOptionsDescription[] =
294 "Display extension options as an embedded element in chrome://extensions "
295 "rather than opening a new tab.";
296
Dominic Mazzoni8ac98962018-05-25 05:44:55297const char kEnableAccessibilityObjectModelName[] = "Accessibility Object Model";
298const char kEnableAccessibilityObjectModelDescription[] =
299 "Enables experimental support for Accessibility Object Model APIs "
300 "that are in development.";
301
Brett Wilsonf27ff602017-07-07 22:28:47302const char kEnableAsmWasmName[] =
303 "Experimental Validate Asm.js and convert to WebAssembly when valid.";
304const char kEnableAsmWasmDescription[] =
305 R"*(Validate Asm.js when "use asm" is present and then convert to )*"
306 R"*(WebAssembly.)*";
307
Anthony Vallee-Dubois968ae4d2018-03-15 16:56:36308const char kEnableWebPaymentsSingleAppUiSkipName[] =
309 "Enable Web Payments single app UI skip";
310const char kEnableWebPaymentsSingleAppUiSkipDescription[] =
311 "Enable Web Payments to skip showing its UI if the developer specifies a "
312 "single app.";
313
Shanfeng Zhang19c16562017-10-17 02:30:40314const char kEnableAutofillCreditCardAblationExperimentDisplayName[] =
315 "Credit card autofill ablation experiment.";
316const char kEnableAutofillCreditCardAblationExperimentDescription[] =
317 "If enabled, credit card autofill suggestions will not display.";
318
Jared Saulae93aa12018-03-23 19:04:39319const char kEnableAutofillCreditCardBankNameDisplayName[] =
320 "Display the issuer bank name of a credit card in autofill.";
321const char kEnableAutofillCreditCardBankNameDisplayDescription[] =
322 "If enabled, displays the issuer bank name of a credit card in autofill.";
323
Brett Wilsonf27ff602017-07-07 22:28:47324const char kEnableAutofillCreditCardLastUsedDateDisplayName[] =
325 "Display the last used date of a credit card in autofill.";
326const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
327 "If enabled, display the last used date of a credit card in autofill.";
328
Lakshmi Kumar Dabbiru51f1c202018-03-29 22:23:37329const char kEnableAutofillCreditCardUploadGooglePayOnAndroidBrandingName[] =
330 "Enable Google Pay branding when offering credit card upload on Android";
331const char
332 kEnableAutofillCreditCardUploadGooglePayOnAndroidBrandingDescription[] =
333 "If enabled, shows the Google Pay logo and a shorter header message "
334 "when credit card upload to Google Payments is offered on Android.";
335
Jared Saul1e4786a2017-12-14 01:43:09336const char kEnableAutofillCreditCardUploadSendDetectedValuesName[] =
337 "Always send metadata on detected form values for Autofill credit card "
338 "upload";
339const char kEnableAutofillCreditCardUploadSendDetectedValuesDescription[] =
340 "If enabled, always checks with Google Payments when deciding whether to "
341 "offer credit card upload, even if some data is missing.";
342
Jared Saul5c2a1482017-12-09 00:24:31343const char kEnableAutofillCreditCardUploadSendPanFirstSixName[] =
344 "Send first six digits of PAN when deciding whether to offer Autofill "
345 "credit card upload";
346const char kEnableAutofillCreditCardUploadSendPanFirstSixDescription[] =
347 "If enabled, when deciding whether to offer credit card upload to Google "
348 "Payments, sends the first six digits of the card number to avoid cases "
349 "where card upload is likely to fail.";
350
siyua7c4e97b42018-04-24 02:49:42351const char kEnableAutofillCreditCardUploadUpdatePromptExplanationName[] =
352 "Enable updated prompt explanation when offering credit card upload";
353const char kEnableAutofillCreditCardUploadUpdatePromptExplanationDescription[] =
354 "If enabled, changes the server save card prompt's explanation to mention "
355 "the saving of the billing address.";
356
tmartinocd414732018-02-12 19:01:01357const char kEnableAutofillNativeDropdownViewsName[] =
358 "Display Autofill Dropdown Using Views";
359const char kEnableAutofillNativeDropdownViewsDescription[] =
360 "If enabled, the Autofill Dropdown will be built natively using Views, "
361 "rather than painted directly to a canvas.";
362
Lakshmi Kumar Dabbirua3d0805f2018-05-22 22:04:23363const char kEnableAutofillSendExperimentIdsInPaymentsRPCsName[] =
364 "Send experiment flag IDs in calls to Google Payments";
365const char kEnableAutofillSendExperimentIdsInPaymentsRPCsDescription[] =
366 "If enabled, adds the status of certain experiment variations when making "
367 "calls to Google Payments.";
368
Becca Hughes4d896c42018-05-29 16:58:51369const char kEnableAutoplayIgnoreWebAudioName[] =
370 "Autoplay ignores WebAudio playbacks";
371const char kEnableAutoplayIgnoreWebAudioDescription[] =
372 "If enabled, autoplay restrictions will be ignored for WebAudio.";
373
Vitalii Iarko4f9834ce2017-08-04 07:05:19374const char kEnableBreakingNewsPushName[] = "Breaking News Push";
375const char kEnableBreakingNewsPushDescription[] =
376 "Listen for breaking news content suggestions (e.g. for New Tab Page) "
377 "through Google Cloud Messaging.";
378
Brett Wilsonf27ff602017-07-07 22:28:47379const char kEnableBrotliName[] = "Brotli Content-Encoding.";
380const char kEnableBrotliDescription[] =
381 "Enable Brotli Content-Encoding support.";
382
Qiang Xu0f602fe62017-12-22 01:31:20383const char kEnableCaptivePortalRandomUrl[] = "Captive Portal url Randomization";
384const char kEnableCaptivePortalRandomUrlDescription[] =
385 "Enable Captive Portal URL randomization.";
386
sclittle50e4bb92017-07-08 02:23:03387const char kEnableClientLoFiName[] = "Client-side Lo-Fi previews";
388
389const char kEnableClientLoFiDescription[] =
390 "Enable showing low fidelity images on some pages on slow networks.";
391
David Reveman87b4b692018-03-09 21:22:22392const char kEnableCursorMotionBlurName[] = "Enable Cursor Motion Blur";
393const char kEnableCursorMotionBlurDescription[] =
394 "Enable motion blur effect for the cursor.";
395
Doug Arnett08b4067b2017-10-12 20:14:44396const char kEnableNoScriptPreviewsName[] = "NoScript previews";
397
398const char kEnableNoScriptPreviewsDescription[] =
399 "Enable disabling JavaScript on some pages on slow networks.";
400
Thanh Le2c279fbc2017-11-21 01:25:40401const char kDataReductionProxyServerAlternative1[] = "Use alt. server config 1";
402const char kDataReductionProxyServerAlternative2[] = "Use alt. server config 2";
403const char kDataReductionProxyServerAlternative3[] = "Use alt. server config 3";
404const char kDataReductionProxyServerAlternative4[] = "Use alt. server config 4";
405const char kDataReductionProxyServerAlternative5[] = "Use alt. server config 5";
406const char kDataReductionProxyServerAlternative6[] = "Use alt. server config 6";
407const char kDataReductionProxyServerAlternative7[] = "Use alt. server config 7";
408const char kDataReductionProxyServerAlternative8[] = "Use alt. server config 8";
409const char kDataReductionProxyServerAlternative9[] = "Use alt. server config 9";
410const char kDataReductionProxyServerAlternative10[] =
411 "Use alt. server config 10";
Brett Wilsonf27ff602017-07-07 22:28:47412const char kEnableDataReductionProxyServerExperimentName[] =
413 "Use an alternative Data Saver back end configuration.";
414const char kEnableDataReductionProxyServerExperimentDescription[] =
415 "Enable a different approach to saving data by configuring the back end "
416 "server";
417
418const char kEnableDataReductionProxySavingsPromoName[] =
419 "Data Saver 1 MB Savings Promo";
420const char kEnableDataReductionProxySavingsPromoDescription[] =
421 "Enable a Data Saver promo for 1 MB of savings. If Data Saver has already "
422 "saved 1 MB of data, then the promo will not be shown. Data Saver must be "
423 "enabled for the promo to be shown.";
424
Matt Giucad4870432017-11-24 01:04:38425const char kEnableDesktopPWAsName[] = "Desktop PWAs";
426const char kEnableDesktopPWAsDescription[] =
427 "Experimental windowing and install banner treatment for Progressive Web "
428 "Apps on desktop platforms. Implies #enable-experimental-app-banners.";
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17429
Giovanni Ortuño Urquidi40c8e792018-02-28 04:18:59430const char kEnableDesktopPWAsLinkCapturingName[] =
431 "Desktop PWAs Link Capturing";
432const char kEnableDesktopPWAsLinkCapturingDescription[] =
433 "Experimentally enable link capturing for Desktop PWAs. Navigations to "
434 "URLs that are in-scope of Desktop PWAs will open in a window. Requires "
435 "#enable-desktop-pwas.";
436
Ahmed Fakhry0037de02018-01-29 19:58:31437const char kEnableDockedMagnifierName[] = "Docked Magnifier";
438const char kEnableDockedMagnifierDescription[] =
439 "Enables the Docked Magnifier (a.k.a. picture-in-picture magnifier).";
440
Ramya Nagarajan5b41d8d2018-04-02 19:53:02441const char kEnableEmojiContextMenuName[] = "Emoji Context Menu";
442const char kEnableEmojiContextMenuDescription[] =
Mathieu Perreault608546ee2018-05-09 00:35:09443 "Enables the Emoji picker item in context menus for editable text areas, if"
444 " supported by the operating system.";
Ramya Nagarajan5b41d8d2018-04-02 19:53:02445
Brett Wilsonf27ff602017-07-07 22:28:47446const char kEnableEnumeratingAudioDevicesName[] =
447 "Experimentally enable enumerating audio devices.";
448const char kEnableEnumeratingAudioDevicesDescription[] =
449 "Experimentally enable the use of enumerating audio devices.";
450
451const char kEnableGenericSensorName[] = "Generic Sensor";
452const char kEnableGenericSensorDescription[] =
Mikhail Pozdnyakov73373a62017-08-24 17:31:25453 "Enables motion sensor classes based on Generic Sensor API, i.e. "
454 "Accelerometer, LinearAccelerationSensor, Gyroscope, "
455 "AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
456
457const char kEnableGenericSensorExtraClassesName[] =
458 "Generic Sensor Extra Classes";
459const char kEnableGenericSensorExtraClassesDescription[] =
460 "Enables an extra set of sensor classes based on Generic Sensor API, which "
461 "expose previously unavailable platform features, i.e. AmbientLightSensor "
462 "and Magnetometer interfaces.";
Brett Wilsonf27ff602017-07-07 22:28:47463
Brett Wilsonf27ff602017-07-07 22:28:47464const char kEnableHDRName[] = "HDR mode";
465const char kEnableHDRDescription[] =
466 "Enables HDR support on compatible displays.";
467
Brett Wilsonf27ff602017-07-07 22:28:47468const char kEnableHttpFormWarningName[] =
469 "Show in-form warnings for sensitive fields when the top-level page is not "
Eric Lawrenceed8fccf2017-09-08 21:27:15470 "HTTPS";
Brett Wilsonf27ff602017-07-07 22:28:47471const char kEnableHttpFormWarningDescription[] =
472 "Attaches a warning UI to any password or credit card fields detected when "
473 "the top-level page is not HTTPS";
474
Hiroshige Hayashizaki99d5821e2018-05-02 04:25:41475const char kLayeredAPIName[] = "Experimental layered APIs";
476const char kLayeredAPIDescription[] =
477 "Enable layered API infrastructure, as well as several experimental "
478 "layered APIs. The syntax and the APIs exposed are experimental and will "
479 "change over time.";
480
Scott Littled0fd2d002018-04-13 03:37:26481const char kEnableLazyFrameLoadingName[] = "Enable lazy frame loading";
482const char kEnableLazyFrameLoadingDescription[] =
483 "Defers the loading of certain cross-origin frames until the page is "
484 "scrolled down near them.";
485
Sidney San Martín9375b892017-09-09 00:29:54486const char kEnableMacMaterialDesignDownloadShelfName[] =
487 "Enable Material Design download shelf";
488
489const char kEnableMacMaterialDesignDownloadShelfDescription[] =
490 "If enabled, the download shelf uses Material Design.";
491
Tatiana Gornakafb40452017-07-31 13:50:04492const char kEnableManualFallbacksFillingName[] =
493 "Manual fallbacks for password manager forms filling";
494const char kEnableManualFallbacksFillingDescription[] =
495 "If enabled, then if user clicks on the password field on a form, popup "
496 "might contain generation fallbacks or 'Show all saved passwords' "
497 "fallback.";
498
Anton Urusov47cd4932017-09-19 14:41:41499const char kEnablePolicyToolName[] = "Enable policy management page";
500const char kEnablePolicyToolDescription[] =
501 "If enabled, the chrome://policy-tool URL loads a page for managing "
502 "policies.";
503
Tsuyoshi Horoea7edb72017-11-12 04:14:00504const char kEnablePWAFullCodeCacheName[] = "Enable PWA full code cache";
505const char kEnablePWAFullCodeCacheDescription[] =
506 "Generate V8 code cache in Cache Storage while installing Service Worker "
507 "for PWAs.";
508
Weidong Guof1e5a892018-01-06 02:26:39509const char kDisableMultiMirroringName[] =
Weidong Guo7dfd1482017-11-08 05:56:28510 "Display mirroring across multiple displays.";
Weidong Guof1e5a892018-01-06 02:26:39511const char kDisableMultiMirroringDescription[] =
512 "Disable Display mirroring across multiple displays.";
Weidong Guo7dfd1482017-11-08 05:56:28513
Brett Wilsonf27ff602017-07-07 22:28:47514const char kEnableNavigationTracingName[] = "Enable navigation tracing";
515const char kEnableNavigationTracingDescription[] =
516 "This is to be used in conjunction with the trace-upload-url flag. "
517 "WARNING: When enabled, Chrome will record performance data for every "
518 "navigation and upload it to the URL specified by the trace-upload-url "
519 "flag. The trace may include personally identifiable information (PII) "
520 "such as the titles and URLs of websites you visit.";
521
Bernhard Bauer5533f9912017-11-06 17:56:02522const char kEnableNetworkLoggingToFileName[] = "Enable network logging to file";
523const char kEnableNetworkLoggingToFileDescription[] =
524 "Enables network logging to a file named netlog.json in the user data "
525 "directory. The file can be imported into chrome://net-internals.";
526
Brett Wilsonf27ff602017-07-07 22:28:47527const char kEnableNetworkServiceName[] = "Enable network service";
528const char kEnableNetworkServiceDescription[] =
529 "Enables the network service, which makes network requests through a "
530 "separate service. Note: most features don't work with this yet.";
531
John Abd-El-Malek8067cc02017-12-04 23:23:20532const char kEnableNetworkServiceInProcessName[] =
533 "Runs network service in-process";
534const char kEnableNetworkServiceInProcessDescription[] =
535 "Runs the network service in the browser process.";
536
dpapaded8349472017-10-25 03:21:27537const char kEnableNewPrintPreview[] = "Enable new Print Preview UI";
538const char kEnableNewPrintPreviewDescription[] =
539 "If enabled, Print Preview will display a newer UI";
540
Ahmed Fakhry2fd8fc82017-07-28 16:31:12541const char kEnableNightLightName[] = "Enable Night Light";
542const char kEnableNightLightDescription[] =
543 "Enable the Night Light feature which controls the color temperature of "
544 "the screen.";
545
xlou8b56f672018-02-09 23:34:30546const char kEnableNupPrintingName[] = "Enable N-up printing";
547const char kEnableNupPrintingDescription[] =
548 "Enable N-up printing in the print preview panel.";
549
Sophie Chang117a3b22017-10-24 22:25:36550const char kEnableOptimizationHintsName[] = "Optimization Hints";
551const char kEnableOptimizationHintsDescription[] =
552 "Enable the Optimization Hints feature which incorporates server hints"
553 "into decisions for what optimizations to perform on some pages on slow "
554 "networks.";
555
Yutaka Hirano98be3272017-08-07 17:55:39556const char kEnableOutOfBlinkCORSName[] = "Out of blink CORS";
557const char kEnableOutOfBlinkCORSDescription[] =
558 "CORS handling logic is moved out of blink.";
559
Sammie Quon0fbf0782018-05-01 22:11:08560const char kEnableOverviewSwipeToCloseName[] =
561 "Enable overview swipe to close.";
562const char kEnableOverviewSwipeToCloseDescription[] =
563 "Enables closing of items in overview mode by dragging or flinging "
564 "vertically.";
565
kylechar7051c092018-02-05 20:31:39566const char kVizDisplayCompositorName[] = "Viz Display Compositor (OOP-D)";
567const char kVizDisplayCompositorDescription[] =
568 "If enabled, the display compositor runs as part of the viz service in the"
569 "GPU process.";
570
Ria Jiang6a129b982018-03-01 18:30:40571const char kVizHitTestDrawQuadName[] = "Viz Hit-test Draw-quad version";
572const char kVizHitTestDrawQuadDescription[] =
573 "If enabled, event targeting uses the new viz-assisted hit-testing logic, "
574 "with hit-test data computed from the CompositorFrame.";
575
Erik Chen49bbfa22017-08-18 08:49:56576const char kEnableOutOfProcessHeapProfilingName[] =
Albert J. Wong174174762018-01-18 23:50:23577 "Out of process heap profiling start mode.";
Erik Chen49bbfa22017-08-18 08:49:56578const char kEnableOutOfProcessHeapProfilingDescription[] =
579 "Creates a profiling service that records stacktraces for all live, "
erikchen94aca892018-01-18 00:21:19580 "malloced objects. Heap dumps can be obtained at chrome://tracing "
581 "[category:memory-infra] and chrome://memory-internals. This setting "
582 "controls which processes are profiled. As long as this setting is not "
583 "disabled, users can start profiling any given process in "
584 "chrome://memory-internals.";
585const char kEnableOutOfProcessHeapProfilingModeMinimal[] = "Browser and GPU";
586const char kEnableOutOfProcessHeapProfilingModeAll[] = "All processes";
587const char kEnableOutOfProcessHeapProfilingModeAllRenderers[] = "All renderers";
588const char kEnableOutOfProcessHeapProfilingModeBrowser[] = "Only browser";
589const char kEnableOutOfProcessHeapProfilingModeGpu[] = "Only GPU.";
erikchen0a5dd692017-12-12 00:53:10590const char kEnableOutOfProcessHeapProfilingModeManual[] =
erikchen94aca892018-01-18 00:21:19591 "None by default. Visit chrome://memory-internals to choose which "
592 "processes to profile.";
Albert J. Wongbd5bd902017-11-09 19:56:15593const char kEnableOutOfProcessHeapProfilingModeRendererSampling[] =
594 "Profile a random sampling of renderer processes, ensuring only one is "
595 "ever profiled at a time.";
erikchen94aca892018-01-18 00:21:19596
Erik Chen8bb76b52017-12-06 19:06:25597const char kOutOfProcessHeapProfilingKeepSmallAllocations[] =
erikchen94aca892018-01-18 00:21:19598 "Emit small allocations in memlog heap dumps.";
Erik Chen8bb76b52017-12-06 19:06:25599const char kOutOfProcessHeapProfilingKeepSmallAllocationsDescription[] =
600 "By default, small allocations are pruned from the heap dump. This reduces "
601 "the size of the compressed trace by 100x. If pruning is disabled, the "
602 "chrome://tracing UI may be unable to take or load the trace. Save the "
603 "trace directly using chrome://memory-internals, and use other mechanisms "
604 "[e.g. diff_heap_profiler.py] to examine the trace. Note that "
605 "automatically uploaded traces will always be pruned. This only affects "
606 "manually taken memory-infra traces.";
Erik Chen49bbfa22017-08-18 08:49:56607
erikchen8bc20d82018-02-14 03:21:51608const char kOutOfProcessHeapProfilingSampling[] = "Sample memlog allocations";
609const char kOutOfProcessHeapProfilingSamplingDescription[] =
610 "Use a poisson process to sample allocations. Defaults to a sample rate of "
erikchen99bfce02018-02-14 20:29:22611 "10000. This results in low noise for large and/or frequent allocations ["
612 "[size * frequency >> 10000]. This means that aggregate numbers [e.g. "
613 "total size of malloc-ed objects] and large and/or frequent allocations "
614 "can be trusted with high fidelity.";
erikchen8bc20d82018-02-14 03:21:51615
Erik Chen3303fd0232018-01-11 20:29:05616const char kOOPHPStackModeName[] =
617 "The type of stack to record for memlog heap dumps";
618const char kOOPHPStackModeDescription[] =
erikchen94aca892018-01-18 00:21:19619 "By default, memlog heap dumps record native stacks, which requires a "
620 "post-processing step to symbolize. Requires a custom build with frame "
erikchen011ad3f2018-01-26 17:54:55621 "pointers to work on Android. Native with thread names will add the thread "
622 "name as the first frame of each native stack. It's also possible to "
623 "record a pseudo stack using trace events as identifiers. It's also "
624 "possible to do a mix of both.";
erikchen94aca892018-01-18 00:21:19625const char kOOPHPStackModeMixed[] = "Mixed";
626const char kOOPHPStackModeNative[] = "Native";
erikchen011ad3f2018-01-26 17:54:55627const char kOOPHPStackModeNativeWithThreadNames[] = "Native with thread names";
erikchen94aca892018-01-18 00:21:19628const char kOOPHPStackModePseudo[] = "Trace events";
Erik Chen3303fd0232018-01-11 20:29:05629
François Beaufort2e75f492018-02-08 20:44:46630const char kEnablePictureInPictureName[] = "Enable Picture-in-Picture.";
Brett Wilsonf27ff602017-07-07 22:28:47631const char kEnablePictureInPictureDescription[] =
François Beaufort2e75f492018-02-08 20:44:46632 "Enable the Picture-in-Picture feature for videos.";
Brett Wilsonf27ff602017-07-07 22:28:47633
F#m59d036e2017-09-13 07:22:17634const char kEnablePixelCanvasRecordingName[] = "Enable pixel canvas recording";
635const char kEnablePixelCanvasRecordingDescription[] =
636 "Pixel canvas recording allows the compositor to raster contents aligned "
637 "with the pixel and improves text rendering. This should be enabled when a "
638 "device is using fractional scale factor.";
639
Mikel Astiz38837f82018-04-24 22:23:23640const char kEnableSyncUSSSessionsName[] = "Enable USS for sessions sync";
641const char kEnableSyncUSSSessionsDescription[] =
642 "Enables the new, experimental implementation of session sync (aka tab "
643 "sync).";
644
Brett Wilsonf27ff602017-07-07 22:28:47645const char kEnableTokenBindingName[] = "Token Binding.";
646const char kEnableTokenBindingDescription[] = "Enable Token Binding support.";
647
Sahel Sharifyd732ab12017-11-29 23:03:16648extern const char kEnableTouchpadAndWheelScrollLatchingName[] =
649 "Wheel Scroll Latching.";
650extern const char kEnableTouchpadAndWheelScrollLatchingDescription[] =
651 "Wheel scroll latching enforces latching to a single element for the "
652 "duration of a scroll sequence.";
653
Brett Wilsonf27ff602017-07-07 22:28:47654const char kEnableUseZoomForDsfName[] =
655 "Use Blink's zoom for device scale factor.";
656const char kEnableUseZoomForDsfDescription[] =
657 "If enabled, Blink uses its zooming mechanism to scale content for device "
658 "scale factor.";
659const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
660const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
661const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
662
Patrick Noland8ee016e2018-01-24 11:44:53663const char kEnableScrollAnchorSerializationName[] =
664 "Scroll Anchor Serialization";
665const char kEnableScrollAnchorSerializationDescription[] =
666 "Save the scroll anchor and use it to restore the scroll position when "
667 "navigating.";
668
Brad Nelson5cd500e2018-01-04 00:50:19669const char kEnableSharedArrayBufferName[] =
670 "Experimental enabled SharedArrayBuffer support in JavaScript.";
671const char kEnableSharedArrayBufferDescription[] =
672 "Enable SharedArrayBuffer support in JavaScript.";
673
Brett Wilsonf27ff602017-07-07 22:28:47674const char kEnableWasmName[] = "WebAssembly structured cloning support.";
675const char kEnableWasmDescription[] =
676 "Enable web pages to use WebAssembly structured cloning.";
677
Brett Wilsonf27ff602017-07-07 22:28:47678const char kEnableImageCaptureAPIName[] = "Image Capture API";
679const char kEnableImageCaptureAPIDescription[] =
680 "Enables the Web Platform Image Capture API: takePhoto(), "
681 "getPhotoCapabilities(), etc.";
682
683const char kEnableZeroSuggestRedirectToChromeName[] =
684 "Experimental contextual omnibox suggestion";
685const char kEnableZeroSuggestRedirectToChromeDescription[] =
686 "Change omnibox contextual suggestions to an experimental source. Note "
687 "that this is not an on/off switch for contextual omnibox and it only "
688 "applies to suggestions provided before the user starts typing a URL or a "
689 "search query (i.e. zero suggest).";
690
691const char kEnableWasmStreamingName[] =
692 "WebAssembly streaming compile/instantiate support.";
693const char kEnableWasmStreamingDescription[] =
694 "WebAssembly.{compile|instantiate} taking a Response as parameter.";
695
Clemens Hammacher0c8a15a2018-04-27 13:45:32696const char kEnableWasmBaselineName[] = "WebAssembly baseline compiler";
697const char kEnableWasmBaselineDescription[] =
698 "Enables WebAssembly baseline compilation and tier up.";
699
Brett Wilsonf27ff602017-07-07 22:28:47700const char kExpensiveBackgroundTimerThrottlingName[] =
701 "Throttle expensive background timers";
702const char kExpensiveBackgroundTimerThrottlingDescription[] =
703 "Enables intervention to limit CPU usage of background timers to 1%.";
704
705const char kExperimentalAppBannersName[] = "Experimental app banners";
706const char kExperimentalAppBannersDescription[] =
Matt Giucad4870432017-11-24 01:04:38707 "Enables a new experimental app banner flow and UI. Implies "
708 "#enable-app-banners.";
Brett Wilsonf27ff602017-07-07 22:28:47709
710const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
711const char kExperimentalCanvasFeaturesDescription[] =
712 "Enables the use of experimental canvas features which are still in "
713 "development.";
714
Nicholas Verneccd8259802018-02-22 01:22:04715const char kExperimentalCrostiniUIName[] = "Experimental Crostini";
716const char kExperimentalCrostiniUIDescription[] =
717 "Enables in-development Crostini features.";
718
Brett Wilsonf27ff602017-07-07 22:28:47719const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
720const char kExperimentalExtensionApisDescription[] =
721 "Enables experimental extension APIs. Note that the extension gallery "
722 "doesn't allow you to upload extensions that use experimental APIs.";
723
724const char kExperimentalFullscreenExitUIName[] =
725 "Experimental fullscreen exit UI";
726const char kExperimentalFullscreenExitUIDescription[] =
727 "Displays experimental UI to allow mouse and touch input methods to exit "
728 "fullscreen mode.";
729
Ian Clelland37a985d2018-05-04 02:43:13730const char kExperimentalProductivityFeaturesName[] =
731 "Experimental Productivity Features";
732const char kExperimentalProductivityFeaturesDescription[] =
733 "Enable support for experimental developer productivity features, such as "
734 "Layered APIs and policies for avoiding slow rendering.";
735
Brett Wilsonf27ff602017-07-07 22:28:47736const char kExperimentalSecurityFeaturesName[] =
737 "Potentially annoying security features";
738const char kExperimentalSecurityFeaturesDescription[] =
739 "Enables several security features that will likely break one or more "
740 "pages that you visit on a daily basis. Strict mixed content checking, for "
741 "example. And locking powerful features to secure contexts. This flag will "
742 "probably annoy you.";
743
744const char kExperimentalWebPlatformFeaturesName[] =
745 "Experimental Web Platform features";
746const char kExperimentalWebPlatformFeaturesDescription[] =
747 "Enables experimental Web Platform features that are in development.";
748
749const char kExtensionContentVerificationName[] =
750 "Extension Content Verification";
751const char kExtensionContentVerificationDescription[] =
752 "This flag can be used to turn on verification that the contents of the "
753 "files on disk for extensions from the webstore match what they're "
754 "expected to be. This can be used to turn on this feature if it would not "
755 "otherwise have been turned on, but cannot be used to turn it off (because "
756 "this setting can be tampered with by malware).";
757const char kExtensionContentVerificationBootstrap[] =
758 "Bootstrap (get expected hashes, but do not enforce them)";
759const char kExtensionContentVerificationEnforce[] =
760 "Enforce (try to get hashes, and enforce them if successful)";
761const char kExtensionContentVerificationEnforceStrict[] =
762 "Enforce strict (hard fail if we can't get hashes)";
763
764const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
765const char kExtensionsOnChromeUrlsDescription[] =
766 "Enables running extensions on chrome:// URLs, where extensions explicitly "
767 "request this permission.";
galinapae72e152017-05-12 13:12:28768
Brett Wilsonecb80982017-07-12 20:34:51769const char kFastUnloadName[] = "Fast tab/window close";
770const char kFastUnloadDescription[] =
771 "Enables fast tab/window closing - runs a tab's onunload js handler "
772 "independently of the GUI.";
vabr0215a8e2017-03-28 12:47:34773
Brett Wilsonecb80982017-07-12 20:34:51774const char kFeaturePolicyName[] = "Feature Policy";
775const char kFeaturePolicyDescription[] =
776 "Enables granting and removing access to features through the "
777 "Feature-Policy HTTP header.";
vabr0215a8e2017-03-28 12:47:34778
Brett Wilsonecb80982017-07-12 20:34:51779const char kFontCacheScalingName[] = "FontCache scaling";
780const char kFontCacheScalingDescription[] =
781 "Reuse a cached font in the renderer to serve different sizes of font for "
782 "faster layout.";
783
784const char kForceEffectiveConnectionTypeName[] =
785 "Override effective connection type";
786const char kForceEffectiveConnectionTypeDescription[] =
787 "Overrides the effective connection type of the current connection "
Thanh Lea98f12f2017-12-18 19:35:30788 "returned by the network quality estimator. Slow 2G on Cellular returns "
789 "Slow 2G when connected to a cellular network, and the actual estimate "
790 "effective connection type when not on a cellular network. Previews are "
791 "usually served on 2G networks.";
Brett Wilsonecb80982017-07-12 20:34:51792const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
793const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
794const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
Thanh Lea98f12f2017-12-18 19:35:30795const char kEffectiveConnectionTypeSlow2GOnCellularDescription[] =
796 "Slow 2G On Cellular";
Brett Wilsonecb80982017-07-12 20:34:51797const char kEffectiveConnectionType2GDescription[] = "2G";
798const char kEffectiveConnectionType3GDescription[] = "3G";
799const char kEffectiveConnectionType4GDescription[] = "4G";
800
801const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
802const char kFillOnAccountSelectDescription[] =
803 "Filling of passwords when an account is explicitly selected by the user "
804 "rather than autofilling credentials on page load.";
805
Brett Wilsonecb80982017-07-12 20:34:51806const char kForceTextDirectionName[] = "Force text direction";
807const char kForceTextDirectionDescription[] =
808 "Explicitly force the per-character directionality of UI text to "
809 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
810 "direction of the character language.";
811const char kForceDirectionLtr[] = "Left-to-right";
812const char kForceDirectionRtl[] = "Right-to-left";
813
814const char kForceUiDirectionName[] = "Force UI direction";
815const char kForceUiDirectionDescription[] =
816 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
817 "mode, overriding the default direction of the UI language.";
818
819const char kFramebustingName[] =
820 "Framebusting requires same-origin or a user gesture";
821const char kFramebustingDescription[] =
822 "Don't permit an iframe to navigate the top level browsing context unless "
823 "they are same-origin or the iframe is processing a user gesture.";
824
825const char kGamepadExtensionsName[] = "Gamepad Extensions";
826const char kGamepadExtensionsDescription[] =
Anna Offenwanger06dc6062018-04-12 07:56:22827 "Enables experimental extensions to the Gamepad APIs.";
Matt Reynolds043469f2018-05-01 22:56:58828const char kGamepadVibrationName[] = "Gamepad Vibration";
829const char kGamepadVibrationDescription[] =
830 "Enables haptic vibration effects on supported gamepads.";
Brett Wilsonecb80982017-07-12 20:34:51831
Brett Wilsonecb80982017-07-12 20:34:51832const char kGpuRasterizationMsaaSampleCountName[] =
833 "GPU rasterization MSAA sample count.";
834const char kGpuRasterizationMsaaSampleCountDescription[] =
835 "Specify the number of MSAA samples for GPU rasterization.";
836const char kGpuRasterizationMsaaSampleCountZero[] = "0";
837const char kGpuRasterizationMsaaSampleCountTwo[] = "2";
838const char kGpuRasterizationMsaaSampleCountFour[] = "4";
839const char kGpuRasterizationMsaaSampleCountEight[] = "8";
840const char kGpuRasterizationMsaaSampleCountSixteen[] = "16";
841
842const char kGpuRasterizationName[] = "GPU rasterization";
843const char kGpuRasterizationDescription[] =
844 "Use GPU to rasterize web content. Requires impl-side painting.";
Brett Wilson7b44537e2017-08-18 01:38:28845const char kForceGpuRasterization[] = "Force-enabled for all layers";
Brett Wilsonecb80982017-07-12 20:34:51846
847const char kGoogleProfileInfoName[] = "Google profile name and icon";
848const char kGoogleProfileInfoDescription[] =
849 "Enables using Google information to populate the profile name and icon in "
850 "the avatar menu.";
851
852const char kHarfbuzzRendertextName[] = "HarfBuzz for UI text";
853const char kHarfbuzzRendertextDescription[] =
854 "Enable cross-platform HarfBuzz layout engine for UI text. Doesn't affect "
855 "web content.";
856
Takumi Fujimotofb71e332018-03-31 14:04:08857const char kViewsCastDialogName[] = "Views Cast dialog";
858const char kViewsCastDialogDescription[] =
Takumi Fujimoto541e5e22018-05-30 00:46:31859 "Replace the WebUI Cast dialog with a Views toolkit dialog. This requires "
860 "#views-browser-windows on Mac.";
Takumi Fujimotofb71e332018-03-31 14:04:08861
Manu Cornet4a908de2018-04-09 04:32:27862const char kHideActiveAppsFromShelfName[] =
863 "Hide running apps (that are not pinned) from the shelf";
864const char kHideActiveAppsFromShelfDescription[] =
865 "Save space in the shelf by hiding running apps (that are not pinned).";
Manu Cornete5f855b2018-03-13 03:35:25866
Brett Wilsonecb80982017-07-12 20:34:51867const char kHistoryRequiresUserGestureName[] =
868 "New history entries require a user gesture.";
869const char kHistoryRequiresUserGestureDescription[] =
870 "Require a user gesture to add a history entry.";
871const char kHyperlinkAuditingName[] = "Hyperlink auditing";
872const char kHyperlinkAuditingDescription[] = "Sends hyperlink auditing pings.";
873
Ryan Landay4242dbc22018-04-04 01:47:33874const char kHorizontalTabSwitcherAndroidName[] =
875 "Enable horizontal tab switcher";
876const char kHorizontalTabSwitcherAndroidDescription[] =
877 "Changes the layout of the Android tab switcher so tabs scroll "
878 "horizontally instead of vertically.";
879
Brett Wilsonecb80982017-07-12 20:34:51880const char kHostedAppQuitNotificationName[] =
881 "Quit notification for hosted apps";
882const char kHostedAppQuitNotificationDescription[] =
883 "Display a notification when quitting Chrome if hosted apps are currently "
884 "running.";
885
886const char kHostedAppShimCreationName[] =
887 "Creation of app shims for hosted apps on Mac";
888const char kHostedAppShimCreationDescription[] =
889 "Create app shims on Mac when creating a hosted app.";
890
Ana-Cosmina Popescuda3bcbe2017-09-22 18:24:48891const char kHtmlBasedUsernameDetectorName[] = "HTML-based username detector";
892const char kHtmlBasedUsernameDetectorDescription[] =
893 "Use HTML-based username detector for the password manager.";
894
Brett Wilsonecb80982017-07-12 20:34:51895const char kIconNtpName[] = "Large icons on the New Tab page";
896const char kIconNtpDescription[] =
897 "Enable the experimental New Tab page using large icons.";
898
899const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
900const char kIgnoreGpuBlacklistDescription[] =
901 "Overrides the built-in software rendering list and enables "
902 "GPU-acceleration on unsupported system configurations.";
903
Thanh Le5f090efa52017-12-27 22:39:44904const char kIgnorePreviewsBlacklistName[] = "Ignore Previews Blacklist";
905const char kIgnorePreviewsBlacklistDescription[] =
906 "Ignore decisions made by the PreviewsBlackList";
907
Brett Wilsonecb80982017-07-12 20:34:51908const char kImportantSitesInCbdName[] =
909 "Important sites options in clear browsing data dialog";
910const char kImportantSitesInCbdDescription[] =
911 "Include the option to whitelist important sites in the clear browsing "
912 "data dialog.";
913
Claudio Magni61c210922017-12-28 00:29:51914const char kImprovedLanguageSettingsName[] = "Improved Language Settings";
915const char kImprovedLanguageSettingsDescription[] =
916 "Set of changes for Language Settings. These changes are intended to fix "
917 "the major bugs related to Language Settings.";
918
Brett Wilsonecb80982017-07-12 20:34:51919const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
920const char kInProductHelpDemoModeChoiceDescription[] =
921 "Selects the In-Product Help demo mode.";
922
923const char kJavascriptHarmonyName[] = "Experimental JavaScript";
924const char kJavascriptHarmonyDescription[] =
925 "Enable web pages to use experimental JavaScript features.";
926
927const char kJavascriptHarmonyShippingName[] =
928 "Latest stable JavaScript features";
929const char kJavascriptHarmonyShippingDescription[] =
930 "Some web pages use legacy or non-standard JavaScript extensions that may "
931 "conflict with the latest JavaScript features. This flag allows disabling "
932 "support of those features for compatibility with such pages.";
933
Yutaka Hiranof7f2f632017-09-06 10:40:08934const char kKeepAliveRendererForKeepaliveRequestsName[] =
935 "Keep a renderer alive for keepalive fetch requests";
936const char kKeepAliveRendererForKeepaliveRequestsDescription[] =
937 "Keep a render process alive when the process has a pending fetch request "
938 "with `keepalive' specified.";
939
Joe Downing095fd6d2018-02-01 18:40:36940const char kKeyboardLockApiName[] = "Experimental keyboard lock API.";
941const char kKeyboardLockApiDescription[] =
942 "Enables websites to use the new keyboard{Lock|Unlock} API to intercept "
943 "specific key events and have them routed directly to the webpage when in "
944 "fullscreen mode. Implies #experimental-keyboard-lock-ui.";
945
Brett Wilsonecb80982017-07-12 20:34:51946const char kLcdTextName[] = "LCD text antialiasing";
947const char kLcdTextDescription[] =
948 "If disabled, text is rendered with grayscale antialiasing instead of LCD "
949 "(subpixel) when doing accelerated compositing.";
950
Matt Giucac399982f2017-10-06 07:51:29951const char kLeftToRightUrlsName[] =
952 "Render bidirectional URLs from left to right";
953const char kLeftToRightUrlsDescription[] =
954 "An experimental Bidi URL rendering algorithm where the URL components are "
955 "always shown in order from left to right, regardless of any RTL "
956 "characters. (The contents of each component are still rendered with the "
957 "normal Bidi algorithm.)";
958
Brett Wilsonecb80982017-07-12 20:34:51959const char kLoadMediaRouterComponentExtensionName[] =
960 "Load Media Router Component Extension";
961const char kLoadMediaRouterComponentExtensionDescription[] =
962 "Loads the Media Router component extension at startup.";
963
spqchanb87755692018-04-05 00:46:09964const char kMacViewsAutofillPopupName[] =
965 "Uses the Views Autofill Popup on Mac";
966const char kMacViewsAutofillPopupDescription[] =
967 "Autofill popup will be shown using the Views toolkit rather than Cocoa.";
Derek Chengd24c68c2018-03-12 19:09:32968
Brett Wilsonecb80982017-07-12 20:34:51969const char kManualPasswordGenerationName[] = "Manual password generation.";
970const char kManualPasswordGenerationDescription[] =
971 "Show a 'Generate Password' option on the context menu for all password "
972 "fields.";
973
974const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
975const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
Brett Wilsonecb80982017-07-12 20:34:51976
Lei Zhang2eca9082017-10-17 20:42:50977const char kMaterialDesignIncognitoNTPName[] = "Material Design Incognito NTP.";
978const char kMaterialDesignIncognitoNTPDescription[] =
Brett Wilsonecb80982017-07-12 20:34:51979 "If enabled, the Incognito New Tab page uses the new material design with "
980 "a better readable text.";
981
spqchanb87755692018-04-05 00:46:09982const char kMediaRouterCastAllowAllIPsName[] =
983 "Connect to Cast devices on all IP addresses";
984const char kMediaRouterCastAllowAllIPsDescription[] =
985 "Have the Media Router connect to Cast devices on all IP addresses, not "
986 "just RFC1918/RFC4913 private addresses.";
987
Brett Wilsonecb80982017-07-12 20:34:51988const char kMemoryAblationName[] = "Memory ablation experiment";
989const char kMemoryAblationDescription[] =
990 "Allocates extra memory in the browser process.";
991
992const char kMemoryCoordinatorName[] = "Memory coordinator";
993const char kMemoryCoordinatorDescription[] =
994 "Enable memory coordinator instead of memory pressure listeners.";
995
996const char kMessageCenterNewStyleNotificationName[] = "New style notification";
997const char kMessageCenterNewStyleNotificationDescription[] =
998 "Enables the experiment style of material-design notification";
999
Brett Wilsonecb80982017-07-12 20:34:511000const char kMhtmlGeneratorOptionName[] = "MHTML Generation Option";
1001const char kMhtmlGeneratorOptionDescription[] =
1002 "Provides experimental options for MHTML file generator.";
1003const char kMhtmlSkipNostoreMain[] = "Skips no-store main frame.";
1004const char kMhtmlSkipNostoreAll[] = "Skips all no-store resources.";
1005
Kouhei Ueno08445c22017-09-05 03:58:301006const char kModuleScriptsDynamicImportName[] =
1007 "Enable ECMAScript 6 modules dynamic import";
1008const char kModuleScriptsDynamicImportDescription[] =
1009 "Enables ECMAScript 6 modules dynamic \"import\" syntax support in V8 and "
1010 "Blink.";
1011
Hiroshige Hayashizaki15c2eb92017-10-20 04:57:051012const char kModuleScriptsImportMetaUrlName[] =
1013 "Enable ECMAScript 6 modules import.meta.url";
1014const char kModuleScriptsImportMetaUrlDescription[] =
1015 "Enables ECMAScript 6 modules import.meta.url syntax support in V8 and "
1016 "Blink.";
1017
Brett Wilsonecb80982017-07-12 20:34:511018const char kNewAudioRenderingMixingStrategyName[] =
1019 "New audio rendering mixing strategy";
1020const char kNewAudioRenderingMixingStrategyDescription[] =
1021 "Use the new audio rendering mixing strategy.";
1022
1023const char kNewBookmarkAppsName[] = "The new bookmark app system";
1024const char kNewBookmarkAppsDescription[] =
1025 "Enables the new system for creating bookmark apps.";
1026
Vadym Doroshenkof81e8bb2018-04-18 14:35:241027const char kNewPasswordFormParsingName[] = "New password form parsing";
1028const char kNewPasswordFormParsingDescription[] =
1029 "Replaces existing form parsing in password manager with a new version, "
1030 "currently under development. WARNING: when enabled Password Manager might "
1031 "stop working";
1032
Brett Wilsonecb80982017-07-12 20:34:511033const char kNewRemotePlaybackPipelineName[] =
1034 "Enable the new remote playback pipeline.";
1035const char kNewRemotePlaybackPipelineDescription[] =
1036 "Enable the new pipeline for playing media element remotely via "
1037 "RemotePlayback API or native controls.";
CJ DiMeglio7b4a199f2017-11-30 01:26:501038const char kUseSurfaceLayerForVideoName[] =
1039 "Enable the use of SurfaceLayer objects for videos.";
1040const char kUseSurfaceLayerForVideoDescription[] =
1041 "Enable compositing onto a Surface instead of a VideoLayer "
1042 "for videos.";
Brett Wilsonecb80982017-07-12 20:34:511043
1044const char kNewUsbBackendName[] = "Enable new USB backend";
1045const char kNewUsbBackendDescription[] =
1046 "Enables the new experimental USB backend for Windows.";
vabr0215a8e2017-03-28 12:47:341047
Sonny Sasaka2d200432018-03-22 17:43:161048const char kNewblueName[] = "Newblue";
1049const char kNewblueDescription[] =
1050 "Enables the use of newblue Bluetooth daemon.";
1051
Egor Pasko6fed3822018-05-30 10:33:141052const char kNostatePrefetchName[] = "NoState Prefetch";
vabr0215a8e2017-03-28 12:47:341053const char kNostatePrefetchDescription[] =
Egor Pasko6fed3822018-05-30 10:33:141054 R"*(If enabled, pre-downloads resources to improve page load speed.)*";
vabr0215a8e2017-03-28 12:47:341055
Alex Newcomerd7b0cc42018-05-25 22:58:481056const char kNotificationIndicatorName[] = "Notification Indicators";
1057const char kNotificationIndicatorDescription[] =
1058 "Enable notification indicators, which appear on app icons when a "
1059 "notification is active. This will also enable notifications in context "
1060 "menus.";
1061
Brett Wilsonecb80982017-07-12 20:34:511062const char kNotificationsNativeFlagName[] = "Enable native notifications.";
1063const char kNotificationsNativeFlagDescription[] =
1064 "Enable support for using the native notification toasts and notification "
1065 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:341066
Zentaro Kavanaghbad511c2017-10-18 22:29:001067#if defined(OS_POSIX)
1068const char kNtlmV2EnabledName[] = "Enable NTLMv2 Authentication";
1069const char kNtlmV2EnabledDescription[] =
1070 "Enable NTLMv2 HTTP Authentication. This disables NTLMv1 support.";
1071#endif
1072
Ramya Nagarajane9f16b82018-05-03 01:05:341073const char kNtpBackgroundsName[] = "New Tab Page Background Selection";
1074const char kNtpBackgroundsDescription[] =
1075 "Allow selection of a custom background image on the New Tab Page.";
1076
1077const char kNtpIconsName[] = "New Tab Page Custom Link Icons";
1078const char kNtpIconsDescription[] =
1079 "Show custom link icons on the New Tab Page, instead of Most Visited "
1080 "tiles.";
1081
1082const char kNtpUIMdName[] = "New Tab Page Material Design UI";
1083const char kNtpUIMdDescription[] =
1084 "Updates the New Tab Page with Material Design elements.";
1085
Brett Wilsonecb80982017-07-12 20:34:511086const char kNumRasterThreadsName[] = "Number of raster threads";
1087const char kNumRasterThreadsDescription[] =
1088 "Specify the number of raster threads.";
1089const char kNumRasterThreadsOne[] = "1";
1090const char kNumRasterThreadsTwo[] = "2";
1091const char kNumRasterThreadsThree[] = "3";
1092const char kNumRasterThreadsFour[] = "4";
1093
1094const char kOfferStoreUnmaskedWalletCardsName[] =
1095 "Google Payments card saving checkbox";
1096const char kOfferStoreUnmaskedWalletCardsDescription[] =
1097 "Show the checkbox to offer local saving of a credit card downloaded from "
1098 "the server.";
1099
1100const char kOfflineAutoReloadName[] = "Offline Auto-Reload Mode";
1101const char kOfflineAutoReloadDescription[] =
1102 "Pages that fail to load while the browser is offline will be "
1103 "auto-reloaded when the browser is online again.";
1104
1105const char kOfflineAutoReloadVisibleOnlyName[] =
1106 "Only Auto-Reload Visible Tabs";
1107const char kOfflineAutoReloadVisibleOnlyDescription[] =
1108 "Pages that fail to load while the browser is offline will only be "
1109 "auto-reloaded if their tab is visible.";
1110
Brett Wilsonecb80982017-07-12 20:34:511111const char kOmniboxDisplayTitleForCurrentUrlName[] =
1112 "Include title for the current URL in the omnibox";
1113const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
1114 "In the event that the omnibox provides suggestions on-focus, the URL of "
1115 "the current page is provided as the first suggestion without a title. "
1116 "Enabling this flag causes the title to be displayed.";
1117
Benoit Lizeab08362c2017-07-19 14:50:541118const char kOmniboxSpareRendererName[] =
1119 "Start spare renderer on omnibox focus";
1120const char kOmniboxSpareRendererDescription[] =
1121 "When the omnibox is focused, start an empty spare renderer. This can "
1122 "speed up the load of the navigation from the omnibox.";
1123
Tommy C. Li8875a442017-08-23 00:10:591124const char kOmniboxUIElideSuggestionUrlAfterHostName[] =
1125 "Omnibox UI Elide Suggestion URL After Host";
1126const char kOmniboxUIElideSuggestionUrlAfterHostDescription[] =
1127 "Elides the path, query, and ref of suggested URLs in the Omnibox "
1128 "dropdown.";
1129
Tommy C. Lid79d4402017-12-22 22:49:121130const char kOmniboxUIHideSteadyStateUrlSchemeAndSubdomainsName[] =
1131 "Omnibox UI Hide Steady-State URL Scheme and Trivial Subdomains";
1132const char kOmniboxUIHideSteadyStateUrlSchemeAndSubdomainsDescription[] =
1133 "In the Omnibox, hide the scheme and trivial subdomains from steady state "
1134 "displayed URLs. Hidden portions are restored during editing.";
1135
Brett Wilsonecb80982017-07-12 20:34:511136const char kOmniboxUIMaxAutocompleteMatchesName[] =
1137 "Omnibox UI Max Autocomplete Matches";
1138
1139const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
1140 "Changes the maximum number of autocomplete matches displayed in the "
1141 "Omnibox UI.";
1142
Justin Donnelly65c9e8b2017-10-01 05:15:011143const char kOmniboxUIShowSuggestionFaviconsName[] =
1144 "Omnibox UI Show Suggestion Favicons";
1145const char kOmniboxUIShowSuggestionFaviconsDescription[] =
1146 "Shows favicons instead of generic vector icons for URL suggestions in the "
1147 "Omnibox dropdown.";
1148
1149const char kOmniboxUISwapTitleAndUrlName[] = "Omnibox UI Swap Title and URL";
1150const char kOmniboxUISwapTitleAndUrlDescription[] =
1151 "In the omnibox dropdown, shows titles before URLs when both are "
1152 "available.";
1153
Brett Wilsonecb80982017-07-12 20:34:511154const char kOmniboxUIVerticalMarginName[] = "Omnibox UI Vertical Margin";
1155const char kOmniboxUIVerticalMarginDescription[] =
1156 "Changes the vertical margin in the Omnibox UI.";
1157
Troy Hildebrandtb32637ca2018-02-21 23:25:091158const char kOmniboxVoiceSearchAlwaysVisibleName[] =
1159 "Omnibox Voice Search Always Visible";
1160const char kOmniboxVoiceSearchAlwaysVisibleDescription[] =
1161 "Always displays voice search icon in focused omnibox as long as voice "
1162 "search is possible";
1163
Brett Wilsonecb80982017-07-12 20:34:511164const char kOriginTrialsName[] = "Origin Trials";
1165const char kOriginTrialsDescription[] =
1166 "Enables origin trials for controlling access to feature/API experiments.";
1167
Becca Hughes930d8cd2017-10-02 11:09:121168const char kOverflowIconsForMediaControlsName[] =
1169 "Icons on Media Controls Overflow Menu";
1170const char kOverflowIconsForMediaControlsDescription[] =
1171 "Displays icons on the overflow menu of the native media controls";
1172
Brett Wilsonecb80982017-07-12 20:34:511173const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
1174const char kOverlayScrollbarsDescription[] =
1175 "Enable the experimental overlay scrollbars implementation. You must also "
1176 "enable threaded compositing to have the scrollbars animate.";
1177
chaopenge8aa016b2017-08-24 15:20:191178const char kOverlayScrollbarsFlashAfterAnyScrollUpdateName[] =
1179 "Flash Overlay Scrollbars After Any Scroll Update";
1180const char kOverlayScrollbarsFlashAfterAnyScrollUpdateDescription[] =
1181 "Flash Overlay Scrollbars After any scroll update happends in page. You"
1182 " must also enable Overlay Scrollbars.";
1183
chaopeng343678022017-08-24 18:45:001184const char kOverlayScrollbarsFlashWhenMouseEnterName[] =
1185 "Flash Overlay Scrollbars When Mouse Enter";
1186const char kOverlayScrollbarsFlashWhenMouseEnterDescription[] =
1187 "Flash Overlay Scrollbars When Mouse Enter a scrollable area. You must also"
1188 " enable Overlay Scrollbars.";
1189
Claudio Magni81326f92017-09-01 05:21:181190const char kUseNewAcceptLanguageHeaderName[] = "Use new Accept-Language header";
1191const char kUseNewAcceptLanguageHeaderDescription[] =
1192 "Adds the base language code after other corresponding language+region "
1193 "codes. This ensures that users receive content in their preferred "
1194 "language.";
1195
Brett Wilsonecb80982017-07-12 20:34:511196const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
1197const char kOverscrollHistoryNavigationDescription[] =
Mohsen Izadi88b392a2018-02-15 06:57:481198 "History navigation in response to horizontal overscroll.";
Brett Wilsonecb80982017-07-12 20:34:511199const char kOverscrollHistoryNavigationSimpleUi[] = "Simple";
Mohsen Izadi88b392a2018-02-15 06:57:481200const char kOverscrollHistoryNavigationParallaxUi[] = "Parallax";
Brett Wilsonecb80982017-07-12 20:34:511201
1202const char kOverscrollStartThresholdName[] = "Overscroll start threshold";
1203const char kOverscrollStartThresholdDescription[] =
1204 "Changes overscroll start threshold relative to the default value.";
1205const char kOverscrollStartThreshold133Percent[] = "133%";
1206const char kOverscrollStartThreshold166Percent[] = "166%";
1207const char kOverscrollStartThreshold200Percent[] = "200%";
1208
chaopenge2b6e5f2018-05-08 16:40:451209const char kTouchpadOverscrollHistoryNavigationName[] =
1210 "Overscroll history navigation on Touchpad";
1211const char kTouchpadOverscrollHistoryNavigationDescription[] =
1212 "Allows swipe left/right from touchpad change browser navigation.";
1213
Xing Liu5400a002017-09-15 21:48:291214const char kParallelDownloadingName[] = "Parallel downloading";
1215const char kParallelDownloadingDescription[] =
Yannic Bonenbergera32f9902017-11-20 18:47:061216 "Enable parallel downloading to accelerate download speed.";
Xing Liu5400a002017-09-15 21:48:291217
Brett Wilsonecb80982017-07-12 20:34:511218const char kPassiveEventListenerDefaultName[] =
1219 "Passive Event Listener Override";
1220const char kPassiveEventListenerDefaultDescription[] =
1221 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
1222 "haven't requested otherwise) to be treated as passive. This will break "
1223 "touch/wheel behavior on some websites but is useful for demonstrating the "
1224 "potential performance benefits of adopting passive event listeners.";
1225const char kPassiveEventListenerTrue[] = "True (when unspecified)";
1226const char kPassiveEventListenerForceAllTrue[] = "Force All True";
1227
1228const char kPassiveEventListenersDueToFlingName[] =
1229 "Touch Event Listeners Passive Default During Fling";
1230const char kPassiveEventListenersDueToFlingDescription[] =
1231 "Forces touchstart, and first touchmove per scroll event listeners during "
1232 "fling to be treated as passive.";
1233
1234const char kPassiveDocumentEventListenersName[] =
1235 "Document Level Event Listeners Passive Default";
1236const char kPassiveDocumentEventListenersDescription[] =
1237 "Forces touchstart, and touchmove event listeners on document level "
1238 "targets (which haven't requested otherwise) to be treated as passive.";
1239
1240const char kPasswordForceSavingName[] = "Force-saving of passwords";
1241const char kPasswordForceSavingDescription[] =
1242 "Allow the user to manually enforce password saving instead of relying on "
1243 "password manager's heuristics.";
1244
1245const char kPasswordGenerationName[] = "Password generation";
1246const char kPasswordGenerationDescription[] =
1247 "Allow the user to have Chrome generate passwords when it detects account "
1248 "creation pages.";
1249
Vaclav Brozekd8a3f542017-11-16 14:21:131250const char kPasswordExportName[] = "Password export";
1251const char kPasswordExportDescription[] =
1252 "Export functionality in password settings.";
1253
1254const char kPasswordImportName[] = "Password import";
1255const char kPasswordImportDescription[] =
1256 "Import functionality in password settings.";
Brett Wilsonecb80982017-07-12 20:34:511257
Friedrich Horschig03c91982018-01-25 14:21:281258const char kPasswordSearchMobileName[] = "Password search";
1259const char kPasswordSearchMobileDescription[] =
1260 "Search functionality in password settings.";
1261
Friedrich Horschige6c27742018-04-23 17:13:411262const char kPasswordsKeyboardAccessoryName[] =
1263 "Add password-related functions to keyboard accessory";
1264const char kPasswordsKeyboardAccessoryDescription[] =
1265 "Adds password generation button and toggle for the passwords bottom sheet "
1266 "to the keyboard accessory. Replaces password generation popups.";
1267
Tom Sepez92a2cd242018-03-13 19:23:091268const char kPdfIsolationName[] = "PDF Isolation";
1269const char kPdfIsolationDescription[] =
1270 "Render PDF files from different origins in different plugin processes.";
1271
Brett Wilsonecb80982017-07-12 20:34:511272const char kPinchScaleName[] = "Pinch scale";
1273const char kPinchScaleDescription[] =
1274 "Enables experimental support for scale using pinch.";
1275
Doug Arnett620ff542018-02-06 17:54:221276const char kPreviewsAllowedName[] = "Previews Allowed";
1277const char kPreviewsAllowedDescription[] =
1278 "Allows previews to be shown subject to specific preview types being "
1279 "enabled and the client experiencing specific triggering conditions. "
1280 "May be used as a kill-switch to turn off all potential preview types.";
1281
Brett Wilsonecb80982017-07-12 20:34:511282const char kPrintPdfAsImageName[] = "Print Pdf as Image";
1283const char kPrintPdfAsImageDescription[] =
1284 "If enabled, an option to print PDF files as images will be available in "
1285 "print preview.";
1286
1287const char kPrintPreviewRegisterPromosName[] =
1288 "Print Preview Registration Promos";
1289const char kPrintPreviewRegisterPromosDescription[] =
1290 "Enable registering unregistered cloud printers from print preview.";
1291
1292const char kProtectSyncCredentialName[] = "Autofill sync credential";
1293const char kProtectSyncCredentialDescription[] =
1294 "How the password manager handles autofill for the sync credential.";
1295
1296const char kProtectSyncCredentialOnReauthName[] =
1297 "Autofill sync credential only for transactional reauth pages";
1298const char kProtectSyncCredentialOnReauthDescription[] =
1299 "How the password manager handles autofill for the sync credential only "
1300 "for transactional reauth pages.";
1301
Mohsen Izadi93faac12017-07-29 04:45:151302const char kPullToRefreshName[] = "Pull-to-refresh gesture";
1303const char kPullToRefreshDescription[] =
1304 "Pull-to-refresh gesture in response to vertical overscroll.";
Mohsen Izadi8c59ba52018-04-12 18:52:011305const char kPullToRefreshEnabledTouchscreen[] = "Enabled for touchscreen only";
Mohsen Izadi93faac12017-07-29 04:45:151306
Troy Hildebrandt7228ad12018-02-23 21:18:241307const char kQueryInOmniboxName[] = "Query in Omnibox";
1308const char kQueryInOmniboxDescription[] =
1309 "Only display query terms in the omnibox when viewing a search results "
1310 "page.";
1311
Brett Wilsonecb80982017-07-12 20:34:511312const char kQuicName[] = "Experimental QUIC protocol";
1313const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1314
Emily Starke8878d52018-05-11 21:27:261315const char kRecurrentInterstitialName[] =
1316 "Show a message when the same SSL error recurs";
1317const char kRecurrentInterstitialDescription[] =
1318 "Enable a special message on the SSL certificate error page when the same "
1319 "SSL error occurs repeatedly.";
1320
Brett Wilsonecb80982017-07-12 20:34:511321const char kReducedReferrerGranularityName[] =
1322 "Reduce default 'referer' header granularity.";
1323const char kReducedReferrerGranularityDescription[] =
1324 "If a page hasn't set an explicit referrer policy, setting this flag will "
1325 "reduce the amount of information in the 'referer' header for cross-origin "
1326 "requests.";
1327
Claudio Magnie0a80bb2018-01-31 02:52:581328extern const char kRegionalLocalesAsDisplayUIName[] =
1329 "Allow regional locales as display UI";
1330extern const char kRegionalLocalesAsDisplayUIDescription[] =
1331 "This flag allows regional locales to be selected as display UI by the "
1332 "user in Language Settings. The actual locale of the system is derived "
1333 "from the user selection based on some simple fallback logic.";
1334
Christian Dullweber1af31e62018-02-22 11:49:481335const char kRemoveNavigationHistoryName[] =
Christian Dullweberb13ffda2018-02-23 11:42:141336 "Remove navigation entry on history deletion";
Christian Dullweber1af31e62018-02-22 11:49:481337const char kRemoveNavigationHistoryDescription[] =
1338 "Remove a navigation entry when the corresponding history entry has been "
1339 "deleted.";
1340
Mihai Sardarescu6d0f5b72017-10-30 11:24:381341const char kRemoveUsageOfDeprecatedGaiaSigninEndpointName[] =
1342 "Remove usage of the deprecated GAIA sign-in endpoint";
1343const char kRemoveUsageOfDeprecatedGaiaSigninEndpointDescription[] =
1344 "The Gaia sign-in endpoint used for full-tab sign-in page is deprecated. "
1345 "This flags controls wheter it should no longer be used during a sign-in "
1346 " flow.";
1347
Yutaka Hirano4c0f2f5d452017-11-17 04:24:351348const char kRendererSideResourceSchedulerName[] =
1349 "Renderer side ResourceScheduler";
1350const char kRendererSideResourceSchedulerDescription[] =
1351 "Migrate some ResourceScheduler functionalities to renderer";
1352
Brett Wilsonecb80982017-07-12 20:34:511353const char kRequestTabletSiteName[] =
1354 "Request tablet site option in the settings menu";
1355const char kRequestTabletSiteDescription[] =
1356 "Allows the user to request tablet site. Web content is often optimized "
1357 "for tablet devices. When this option is selected the user agent string is "
1358 "changed to indicate a tablet device. Web content optimized for tablets is "
1359 "received there after for the current tab.";
1360
1361const char kResetAppListInstallStateName[] =
1362 "Reset the App Launcher install state on every restart.";
1363const char kResetAppListInstallStateDescription[] =
1364 "Reset the App Launcher install state on every restart. While this flag is "
1365 "set, Chrome will forget the launcher has been installed each time it "
1366 "starts. This is used for testing the App Launcher install flow.";
1367
1368const char kResourceLoadSchedulerName[] = "Use the resource load scheduler";
1369const char kResourceLoadSchedulerDescription[] =
1370 "Uses the resource load scheduler in blink to schedule and throttle "
1371 "resource load requests.";
1372
Brett Wilsonecb80982017-07-12 20:34:511373const char kSafeSearchUrlReportingName[] = "SafeSearch URLs reporting.";
1374const char kSafeSearchUrlReportingDescription[] =
1375 "If enabled, inappropriate URLs can be reported back to SafeSearch.";
1376
Alexei Filippov98772752018-01-27 08:26:521377const char kSamplingHeapProfilerName[] = "Native memory sampling profiler.";
1378const char kSamplingHeapProfilerDescription[] =
1379 "Enables native memory sampling profiler with specified rate in KiB. "
1380 "If sampling rate is not provided the default value of 128 KiB is used.";
1381
Brett Wilsonecb80982017-07-12 20:34:511382const char kSaveasMenuLabelExperimentName[] =
1383 "Switch 'Save as' menu labels to 'Download'";
1384const char kSaveasMenuLabelExperimentDescription[] =
1385 "Enables an experiment to switch menu labels that use 'Save as...' to "
1386 "'Download'.";
1387
1388const char kSavePageAsMhtmlName[] = "Save Page as MHTML";
1389const char kSavePageAsMhtmlDescription[] =
1390 "Enables saving pages as MHTML: a single text file containing HTML and all "
1391 "sub-resources.";
1392
Nate Chapin9638e7102017-09-20 22:11:011393const char kSavePreviousDocumentResourcesName[] =
1394 "Save Previous Document Resources";
1395const char kSavePreviousDocumentResourcesDescription[] =
1396 "Saves an old document's cached resources until the specified point in the "
1397 "next document's lifecycle.";
1398const char kSavePreviousDocumentResourcesNever[] =
1399 "Don't explicitly save resources";
1400const char kSavePreviousDocumentResourcesUntilOnDOMContentLoaded[] =
1401 "Save resources until onDOMContentLoaded completes";
1402const char kSavePreviousDocumentResourcesUntilOnLoad[] =
1403 "Save resources until onload completes";
1404
Brett Wilsonecb80982017-07-12 20:34:511405const char kScrollPredictionName[] = "Scroll prediction";
1406const char kScrollPredictionDescription[] =
1407 "Predicts the finger's future position during scrolls allowing time to "
1408 "render the frame before the finger is there.";
1409
1410const char kSecondaryUiMd[] =
1411 "Material Design in the rest of the browser's native UI";
1412const char kSecondaryUiMdDescription[] =
1413 "Extends the --top-chrome-md setting to secondary UI (bubbles, dialogs, "
1414 "etc.). On Mac, this enables MacViews, which uses toolkit-views for native "
1415 "browser dialogs.";
1416
1417const char kServiceWorkerNavigationPreloadName[] =
1418 "Service worker navigation preload.";
1419const char kServiceWorkerNavigationPreloadDescription[] =
1420 "Enable web pages to use the experimental service worker navigation "
1421 "preload API.";
1422
gogeraldd5061b592017-09-06 23:39:551423const char kServiceWorkerPaymentAppsName[] = "Service Worker payment apps";
1424const char kServiceWorkerPaymentAppsDescription[] =
1425 "Enable Service Worker applications to integrate as payment apps";
1426
Makoto Shimazu22078cc2018-02-21 03:01:441427extern const char kServiceWorkerServicificationName[] =
1428 "Servicified service workers";
1429extern const char kServiceWorkerServicificationDescription[] =
1430 "Enable the servicified service workers. A servicified service worker can "
1431 "have direct connection from its clients, so that fetch events can be "
1432 "dispatched through the connection without hopping to the browser process.";
Makoto Shimazud9f333c2017-08-08 07:23:171433
Tsuyoshi Horobcb1c642017-11-24 16:32:141434const char kServiceWorkerScriptFullCodeCacheName[] =
1435 "Service worker script full code cache.";
1436const char kServiceWorkerScriptFullCodeCacheDescription[] =
1437 "Generate V8 full code cache of Service Worker scripts while installing.";
1438
Brett Wilsonecb80982017-07-12 20:34:511439const char kSettingsWindowName[] = "Show settings in a window";
1440const char kSettingsWindowDescription[] =
1441 "Settings will be shown in a dedicated window instead of as a browser tab.";
1442
Manu Cornetd7ef7c52018-05-01 22:08:231443const char kShelfHoverPreviewsName[] =
1444 "Show previews of running apps when hovering over the shelf.";
1445const char kShelfHoverPreviewsDescription[] =
1446 "Shows previews of the open windows for a given running app when hovering "
1447 "over the shelf.";
1448
Trent Apted750ba7022017-10-23 13:36:251449const char kShowAllDialogsWithViewsToolkitName[] =
1450 "Show all dialogs with Views toolkit";
1451const char kShowAllDialogsWithViewsToolkitDescription[] =
1452 "All browser dialogs will be shown using the Views toolkit rather than "
1453 "Cocoa. This requires <a href=\"#secondary-ui-md\">#secondary-ui-md</a>.";
1454
Naoki Fukino008a0022018-05-23 18:33:001455const char kShowAndroidFilesInFilesAppName[] =
1456 "Show Android files in Files app";
1457const char kShowAndroidFilesInFilesAppDescription[] =
1458 "Show Android files in Files app if Android is enabled on the device.";
1459
Luciano Pachecof1beaa82018-05-30 04:48:511460const char kFilesAppNewStyleNavigationName[] =
1461 "Use new-style navigation in the Files app";
1462const char kFilesAppNewStyleNavigationDescription[] =
1463 "Enables the new-style navigation in the Files app, which displays a "
1464 R"("My Files" root for Downloads, Linux and Play files)";
1465
Brett Wilsonecb80982017-07-12 20:34:511466const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
1467const char kShowAutofillSignaturesDescription[] =
Maxim Kolosovskiye66f8cb2018-03-23 10:25:381468 "Annotates web forms with Autofill signatures as HTML attributes. Also "
1469 "marks password fields suitable for password generation.";
Brett Wilsonecb80982017-07-12 20:34:511470
1471const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
1472const char kShowAutofillTypePredictionsDescription[] =
1473 "Annotates web forms with Autofill field type predictions as placeholder "
1474 "text.";
1475
1476const char kShowOverdrawFeedbackName[] = "Show overdraw feedback";
1477const char kShowOverdrawFeedbackDescription[] =
1478 "Visualize overdraw by color-coding elements based on if they have other "
1479 "elements drawn underneath.";
1480
Carlos IL89128732018-04-03 17:00:251481const char kSupervisedUserCommittedInterstitialsName[] =
1482 "Enable Supervised User Committed Interstitials";
1483const char kSupervisedUserCommittedInterstitialsDescription[] =
1484 "Use committed error pages instead of transient navigation entries for "
1485 "supervised user interstitials";
1486
yiyixbdfa9a0b2017-10-23 22:21:471487const char kEnableDrawOcclusionName[] = "Enable draw occlusion";
1488const char kEnableDrawOcclusionDescription[] =
1489 "Enable the system to use draw occlusion to skip draw quads when they are "
1490 "not shown on the screen.";
1491
Brett Wilsonecb80982017-07-12 20:34:511492const char kShowSavedCopyName[] = "Show Saved Copy Button";
1493const char kShowSavedCopyDescription[] =
1494 "When a page fails to load, if a stale copy of the page exists in the "
1495 "browser cache, a button will be presented to allow the user to load that "
1496 "stale copy. The primary enabling choice puts the button in the most "
1497 "salient position on the error page; the secondary enabling choice puts it "
1498 "secondary to the reload button.";
1499const char kEnableShowSavedCopyPrimary[] = "Enable: Primary";
1500const char kEnableShowSavedCopySecondary[] = "Enable: Secondary";
1501const char kDisableShowSavedCopy[] = "Disable";
1502
Brett Wilsonecb80982017-07-12 20:34:511503const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1504const char kSilentDebuggerExtensionApiDescription[] =
1505 "Do not show the infobar when an extension attaches to a page via "
1506 "chrome.debugger API. This is required to debug extension background "
1507 "pages.";
1508
Tsuyoshi Horo53895ba92018-03-14 04:06:481509const char kSignedHTTPExchangeName[] = "Signed HTTP Exchange";
1510const char kSignedHTTPExchangeDescription[] =
1511 "Enables Origin-Signed HTTP Exchanges support which is still in "
1512 "development. Warning: Enabling this may pose a security risk.";
1513
Brett Wilsonecb80982017-07-12 20:34:511514const char kSimpleCacheBackendName[] = "Simple Cache for HTTP";
1515const char kSimpleCacheBackendDescription[] =
1516 "The Simple Cache for HTTP is a new cache. It relies on the filesystem for "
1517 "disk space allocation.";
1518
Christopher Thompson75ff845d2018-02-01 20:12:461519const char kSimplifyHttpsIndicatorName[] = "Simplify HTTPS indicator UI";
1520const char kSimplifyHttpsIndicatorDescription[] =
1521 "Change the UI treatment for HTTPS pages.";
1522
Brett Wilsonecb80982017-07-12 20:34:511523const char kSingleClickAutofillName[] = "Single-click autofill";
1524const char kSingleClickAutofillDescription[] =
1525 "Make autofill suggestions on initial mouse click on a form element.";
1526
Nick Carter855bc492018-03-10 00:44:571527const char kStrictSiteIsolationName[] = "Strict site isolation";
1528const char kStrictSiteIsolationDescription[] =
1529 "Security mode that enables site isolation for all sites. When enabled, "
1530 "each renderer process will contain pages from at most one site, using "
1531 "out-of-process iframes when needed. When enabled, this flag forces the "
1532 "strictest site isolation mode (SitePerProcess). When disabled, the site "
1533 "isolation mode will be determined by enterprise policy or field trial.";
1534
1535const char kSiteIsolationTrialOptOutName[] = "Site isolation trial opt-out";
1536const char kSiteIsolationTrialOptOutDescription[] =
1537 "Opts out of field trials that enable site isolation modes "
1538 "(SitePerProcess, IsolateOrigins, etc). Intended for diagnosing bugs that "
1539 "may be due to out-of-process iframes. Opt-out has no effect if site "
1540 "isolation is force-enabled via #enable-site-per-process or enterprise "
1541 "policy. Caution: this disables important mitigations for the Spectre CPU "
1542 "vulnerability affecting most computers.";
1543extern const char kSiteIsolationTrialOptOutChoiceDefault[] = "Default";
1544extern const char kSiteIsolationTrialOptOutChoiceOptOut[] =
1545 "Opt-out (not recommended)";
Brett Wilsonecb80982017-07-12 20:34:511546
Pattideade7972018-04-27 02:59:401547const char kSiteSettings[] = "Site settings";
Brett Wilsonecb80982017-07-12 20:34:511548const char kSiteSettingsDescription[] =
Pattideade7972018-04-27 02:59:401549 "Add the All Sites list to Site Settings.";
Brett Wilsonecb80982017-07-12 20:34:511550
Brett Wilsonecb80982017-07-12 20:34:511551const char kSmoothScrollingName[] = "Smooth Scrolling";
1552const char kSmoothScrollingDescription[] =
1553 "Animate smoothly when scrolling page content.";
1554
1555const char kSoftwareRasterizerName[] = "3D software rasterizer";
1556const char kSoftwareRasterizerDescription[] =
1557 "Fall back to a 3D software rasterizer when the GPU cannot be used.";
1558
Wei-Yin Chen (陳威尹)deff0802018-01-19 06:29:201559const char kSoleIntegrationName[] = "Sole integration";
1560const char kSoleIntegrationDescription[] =
1561 "Enable Sole integration for browser customization. You must restart "
1562 "the browser twice for changes to take effect.";
1563
Tommy Steimel77704be2017-08-28 22:14:401564const char kSoundContentSettingName[] = "Sound content setting";
1565const char kSoundContentSettingDescription[] =
1566 "Enable site-wide muting in content settings and tab strip context menu.";
1567
Alexandr Ilinf0500ed32017-09-27 21:12:361568const char kSpeculativePreconnectName[] = "Enable new preconnect predictor";
1569const char kSpeculativePreconnectDescription[] =
1570 "Enable the new implementation of preconnect and DNS preresolve. "
1571 "\"Learning\" means that only database construction is enabled, "
1572 "\"Preconnect\" enables both learning and preconnect and disables the "
1573 "existing implementation. \"No preconnect\" disables both implementations.";
1574
Brett Wilsonecb80982017-07-12 20:34:511575const char kSpeculativePrefetchName[] = "Speculative Prefetch";
vabr0215a8e2017-03-28 12:47:341576const char kSpeculativePrefetchDescription[] =
1577 R"*("Speculative Prefetch" fetches likely resources early to improve )*"
1578 R"*(load times, based on a local database (see chrome://predictors). )*"
1579 R"*("Learning" means that only the database construction is enabled, )*"
1580 R"*("Prefetching" that learning and prefetching are enabled.)*";
1581
Justin Donnelly4e448cb2017-07-07 21:32:131582const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
1583 "Enable speculative start of a service worker when a search is predicted.";
Justin Donnelly4e448cb2017-07-07 21:32:131584const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
1585 "If enabled, when the user enters text in the omnibox that looks like a "
1586 "a query, any service worker associated with the search engine the query "
1587 "will be sent to is started early.";
1588
Brett Wilsonecb80982017-07-12 20:34:511589const char kSpellingFeedbackFieldTrialName[] = "Spelling Feedback Field Trial";
1590const char kSpellingFeedbackFieldTrialDescription[] =
1591 "Enable the field trial for sending user feedback to spelling service.";
horo201d49492017-05-19 05:31:401592
Shubhie Panickerfaf082ed2018-01-03 04:49:151593const char kStopInBackgroundName[] = "Stop in background";
1594const char kStopInBackgroundDescription[] =
1595 "Stop scheduler task queues, in the background, "
Shubhie Panicker56c99a22018-03-21 00:22:281596 " after a grace period.";
Shubhie Panickerfaf082ed2018-01-03 04:49:151597
1598const char kStopLoadingInBackgroundName[] = "Stop loading in background";
1599const char kStopLoadingInBackgroundDescription[] =
1600 "Stop loading tasks and loading "
1601 "resources, in the background, after certain grace time.";
1602
Shubhie Panicker56c99a22018-03-21 00:22:281603const char kStopNonTimersInBackgroundName[] =
1604 "Stop non-timer task queues background";
1605const char kStopNonTimersInBackgroundDescription[] =
1606 "Stop non-timer task queues, in the background, "
1607 "after a grace period.";
1608
Brett Wilsonecb80982017-07-12 20:34:511609const char kSuggestionsWithSubStringMatchName[] =
1610 "Substring matching for Autofill suggestions";
1611const char kSuggestionsWithSubStringMatchDescription[] =
1612 "Match Autofill suggestions based on substrings (token prefixes) rather "
1613 "than just prefixes.";
vabr0215a8e2017-03-28 12:47:341614
Brett Wilsonecb80982017-07-12 20:34:511615const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1616const char kSyncSandboxDescription[] =
1617 "Connects to the testing server for Chrome Sync.";
vabr0215a8e2017-03-28 12:47:341618
Joe Downing8cbbc192018-05-14 17:37:071619const char kSystemKeyboardLockName[] = "Experimental system keyboard lock";
1620const char kSystemKeyboardLockDescription[] =
1621 "Enables websites to use the keyboard.lock() API to intercept system "
1622 "keyboard shortcuts and have the events routed directly to the website "
1623 "when in fullscreen mode.";
1624
Brett Wilsonecb80982017-07-12 20:34:511625const char kTabAudioMutingName[] = "Tab audio muting UI control";
1626const char kTabAudioMutingDescription[] =
1627 "When enabled, the audio indicators in the tab strip double as tab audio "
1628 "mute controls. This also adds commands in the tab context menu for "
1629 "quickly muting multiple selected tabs.";
vabr0215a8e2017-03-28 12:47:341630
Christian Dullweberd0d96f02017-09-13 09:22:511631const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1632const char kTabsInCbdDescription[] =
1633 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
1634
Becky Zhou99c22802017-10-19 05:09:271635const char kTabModalJsDialogName[] = "Auto-dismissing JavaScript Dialogs";
1636const char kTabModalJsDialogDescription[] =
1637 "If enabled, the JavaScript dialog will be auto dismissable when switching"
1638 " tab.";
1639
Brett Wilsonecb80982017-07-12 20:34:511640const char kTcpFastOpenName[] = "TCP Fast Open";
1641const char kTcpFastOpenDescription[] =
1642 "Enable the option to send extra authentication information in the initial "
1643 "SYN packet for a previously connected client, allowing faster data send "
1644 "start.";
vabr0215a8e2017-03-28 12:47:341645
Daniele Castagna0fead93e2018-01-10 20:40:291646const char kTintGlCompositedContentName[] = "Tint GL-composited content";
1647const char kTintGlCompositedContentDescription[] =
1648 "Tint contents composited using GL with a shade of red to help debug and "
1649 "study overlay support.";
1650
Brett Wilsonecb80982017-07-12 20:34:511651const char kTopChromeMd[] = "UI Layout for the browser's top chrome";
1652const char kTopChromeMdDescription[] =
Ahmed Fakhryb2552be92018-03-02 00:56:581653 "Toggles between 1) Normal - for clamshell devices, 2) Hybrid (previously "
Peter Boström85fa2e12018-03-16 20:43:401654 "touch) - middle point for devices with a touch screen, 3) Touchable "
Peter Boström756745dd2018-05-14 22:59:431655 "- new unified interface for touch and convertibles (Chrome OS), 4) "
1656 "Material Design refresh and 5) Touchable Material Design refresh.";
Brett Wilsonecb80982017-07-12 20:34:511657const char kTopChromeMdMaterial[] = "Normal";
Eugene Girard42dedf722017-10-12 21:07:531658const char kTopChromeMdMaterialAuto[] = "Auto";
Trent Aptedd3e5f022018-03-01 07:25:461659const char kTopChromeMdMaterialHybrid[] = "Hybrid";
Ahmed Fakhryb2552be92018-03-02 00:56:581660const char kTopChromeMdMaterialTouchOptimized[] = "Touchable";
Peter Boström85fa2e12018-03-16 20:43:401661const char kTopChromeMdMaterialRefresh[] = "Refresh";
Peter Boström756745dd2018-05-14 22:59:431662const char kTopChromeMdMaterialRefreshTouchOptimized[] = "Touchable Refresh";
vabr0215a8e2017-03-28 12:47:341663
Brett Wilsonecb80982017-07-12 20:34:511664const char kThreadedScrollingName[] = "Threaded scrolling";
1665const char kThreadedScrollingDescription[] =
1666 "Threaded handling of scroll-related input events. Disabling this will "
1667 "force all such scroll events to be handled on the main thread. Note that "
1668 "this can dramatically hurt scrolling performance of most websites and is "
1669 "intended for testing purposes only.";
1670
Steven Valdez4584b2482017-07-14 01:11:571671const char kTLS13VariantName[] = "TLS 1.3";
1672const char kTLS13VariantDescription[] = "Sets the TLS 1.3 variant used.";
1673const char kTLS13VariantDisabled[] = "Disabled";
Steven Valdez57d88652017-10-05 21:05:111674const char kTLS13VariantDeprecated[] = "Disabled (Deprecated Setting)";
Steven Valdez781157b2018-01-11 13:32:041675const char kTLS13VariantDraft23[] = "Enabled (Draft 23)";
David Benjamin27ac5b62018-05-22 15:28:381676const char kTLS13VariantDraft28[] = "Enabled (Draft 28)";
Steven Valdez4584b2482017-07-14 01:11:571677
Brett Wilsonecb80982017-07-12 20:34:511678const char kTopDocumentIsolationName[] = "Top document isolation";
1679const char kTopDocumentIsolationDescription[] =
1680 "Highly experimental performance mode where cross-site iframes are kept in "
1681 "a separate process from the top document. In this mode, iframes from "
1682 "different third-party sites will be allowed to share a process.";
1683
Dominick Ng8896b1cd2017-10-17 23:24:361684const char kTopSitesFromSiteEngagementName[] = "Top Sites from Site Engagement";
1685const char kTopSitesFromSiteEngagementDescription[] =
1686 "Enable Top Sites on the New Tab Page to be sourced and sorted using site "
1687 "engagement.";
1688
Brett Wilsonecb80982017-07-12 20:34:511689const char kTouchAdjustmentName[] = "Touch adjustment";
1690const char kTouchAdjustmentDescription[] =
1691 "Refine the position of a touch gesture in order to compensate for touches "
1692 "having poor resolution compared to a mouse.";
1693
Alex Newcomerb3d3c972018-05-03 14:59:401694const char kTouchableAppContextMenuName[] = "Touchable App Context Menu";
1695const char kTouchableAppContextMenuDescription[] =
1696 "Enable the touchable app context menu, which enlarges app context menus "
1697 "in the Launcher and Shelf to make room for new features.";
1698
Brett Wilsonecb80982017-07-12 20:34:511699const char kTouchDragDropName[] = "Touch initiated drag and drop";
1700const char kTouchDragDropDescription[] =
1701 "Touch drag and drop can be initiated through long press on a draggable "
1702 "element.";
1703
1704const char kTouchEventsName[] = "Touch Events API";
1705const char kTouchEventsDescription[] =
1706 "Force Touch Events API feature detection to always be enabled or "
1707 "disabled, or to be enabled when a touchscreen is detected on startup "
Ella Gea6a203c92017-10-26 19:09:291708 "(Automatic).";
Brett Wilsonecb80982017-07-12 20:34:511709
1710const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
1711const char kTouchSelectionStrategyDescription[] =
1712 "Controls how text selection granularity changes when touch text selection "
1713 "handles are dragged. Non-default behavior is experimental.";
1714const char kTouchSelectionStrategyCharacter[] = "Character";
1715const char kTouchSelectionStrategyDirection[] = "Direction";
1716
1717const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
1718const char kTraceUploadUrlDescription[] =
1719 "This is to be used in conjunction with the enable-navigation-tracing "
1720 "flag. Please select the label that best describes the recorded traces. "
1721 "This will choose the destination the traces are uploaded to. If you are "
1722 "not sure, select other. If left empty, no traces will be uploaded.";
1723const char kTraceUploadUrlChoiceOther[] = "Other";
1724const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1725const char kTraceUploadUrlChoiceQa[] = "QA";
1726const char kTraceUploadUrlChoiceTesting[] = "Testing";
1727
Philippe Hamel7fdaa452017-09-29 17:22:491728const char kTranslateRankerEnforcementName[] =
1729 "Enforce TranslateRanker decisions";
1730const char kTranslateRankerEnforcementDescription[] =
1731 "Improved Translate UI triggering logic. TranslateRanker decides whether "
1732 "or not Translate UI should be triggered in a given context.";
1733
Mustafa Emre Acerb3aa36a82018-05-22 21:44:051734const char kTreatInsecureOriginAsSecureName[] =
1735 "Insecure origins treated as secure";
1736const char kTreatInsecureOriginAsSecureDescription[] =
1737 "Treat given (insecure) origins as secure origins. Multiple origins can be "
1738 "supplied as a comma-separated list. For the definition of secure "
1739 "contexts, "
1740 "see https://w3c.github.io/webappsec-secure-contexts/";
1741
Brett Wilsonecb80982017-07-12 20:34:511742const char kTrySupportedChannelLayoutsName[] =
1743 "Causes audio output streams to check if channel layouts other than the "
1744 "default hardware layout are available.";
1745const char kTrySupportedChannelLayoutsDescription[] =
1746 "Causes audio output streams to check if channel layouts other than the "
1747 "default hardware layout are available. Turning this on will allow the OS "
1748 "to do stereo to surround expansion if supported. May expose third party "
1749 "driver bugs, use with caution.";
1750
David Roger6762a092018-01-31 15:55:071751const char kUnifiedConsentName[] = "Unified Consent";
1752const char kUnifiedConsentDescription[] =
1753 "Enables a unified management of user consent for privacy-related "
1754 "features. This includes new confirmation screens and improved settings "
1755 "pages.";
1756
Brett Wilsonecb80982017-07-12 20:34:511757const char kUiPartialSwapName[] = "Partial swap";
1758const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
1759
Chris Pickel3a227ae62017-08-24 10:47:261760const char kUseDdljsonApiName[] = "Use new ddljson API for Doodles";
1761const char kUseDdljsonApiDescription[] =
1762 "Enables the new ddljson API to fetch Doodles for the NTP.";
1763
Becca Hughes59c05b42017-11-03 13:11:581764const char kUseModernMediaControlsName[] = "New Media Controls";
1765const char kUseModernMediaControlsDescription[] =
1766 "Enables the new style native media controls.";
1767
Wei Li790e7a8572018-03-23 01:31:551768const char kUsePdfCompositorServiceName[] =
1769 "Use PDF compositor service for printing";
1770const char kUsePdfCompositorServiceDescription[] =
1771 "When enabled, use PDF compositor service to composite and generate PDF "
1772 "files for printing. When site isolation is enabled, disabling this will "
1773 "not stop using PDF compositor service since the service is required for "
1774 "printing out-of-process iframes correctly.";
1775
Mustaq Ahmedc646c0a2017-10-20 20:08:301776const char kUserActivationV2Name[] = "User Activation v2";
1777const char kUserActivationV2Description[] =
1778 "Enable simple user activation for APIs that are otherwise controlled by "
1779 "user gesture tokens.";
1780
Brett Wilsonecb80982017-07-12 20:34:511781const char kUserConsentForExtensionScriptsName[] =
1782 "User consent for extension scripts";
1783const char kUserConsentForExtensionScriptsDescription[] =
1784 "Require user consent for an extension running a script on the page, if "
1785 "the extension requested permission to run on all urls.";
1786
1787const char kUseSuggestionsEvenIfFewFeatureName[] =
1788 "Disable minimum for server-side tile suggestions on NTP.";
1789const char kUseSuggestionsEvenIfFewFeatureDescription[] =
1790 "Request server-side suggestions even if there are only very few of them "
1791 "and use them for tiles on the New Tab Page.";
1792
1793const char kV8CacheOptionsName[] = "V8 caching mode.";
1794const char kV8CacheOptionsDescription[] =
1795 "Caching mode for the V8 JavaScript engine.";
Brett Wilsonecb80982017-07-12 20:34:511796const char kV8CacheOptionsCode[] = "Cache V8 compiler data.";
1797
Hitoshi Yoshida3e5db562017-09-11 02:31:081798const char kV8ContextSnapshotName[] = "Use a snapshot to create V8 contexts.";
1799const char kV8ContextSnapshotDescription[] =
1800 "Sets to use a snapshot to create V8 contexts in frame creation.";
1801
Michael Hablich896d52662017-10-23 15:59:571802const char kV8VmFutureName[] = "Future V8 VM features";
1803const char kV8VmFutureDescription[] =
1804 "This enables upcoming and experimental V8 VM features. "
1805 "This flag does not enable experimental JavaScript features.";
1806
Brett Wilsonecb80982017-07-12 20:34:511807const char kVideoFullscreenOrientationLockName[] =
1808 "Lock screen orientation when playing a video fullscreen.";
1809const char kVideoFullscreenOrientationLockDescription[] =
1810 "Lock the screen orientation of the device to match video orientation when "
1811 "a video goes fullscreen. Only on phones.";
1812
1813const char kVideoRotateToFullscreenName[] =
1814 "Rotate-to-fullscreen gesture for videos.";
1815const char kVideoRotateToFullscreenDescription[] =
1816 "Enter/exit fullscreen when device is rotated to/from the orientation of "
1817 "the video. Only on phones.";
1818
Elly Fong-Jonesf4c79502018-03-23 19:21:531819const char kViewsBrowserWindowsName[] =
1820 "Use Views browser windows instead of Cocoa.";
1821const char kViewsBrowserWindowsDescription[] =
1822 "Use Views browser windows instead of Cocoa, aka MacViews-Browser.";
1823
Brett Wilsonecb80982017-07-12 20:34:511824const char kWalletServiceUseSandboxName[] =
1825 "Use Google Payments sandbox servers";
1826const char kWalletServiceUseSandboxDescription[] =
1827 "For developers: use the sandbox service for Google Payments API calls.";
1828
Brett Wilsonecb80982017-07-12 20:34:511829const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
1830const char kWebglDraftExtensionsDescription[] =
1831 "Enabling this option allows web applications to access the WebGL "
1832 "Extensions that are still in draft status.";
1833
1834const char kWebMidiName[] = "Web MIDI API";
1835const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
1836
1837const char kWebPaymentsName[] = "Web Payments";
1838const char kWebPaymentsDescription[] =
1839 "Enable Web Payments API integration, a JavaScript API for merchants.";
1840
Mathieu Perreault51339b82017-07-20 17:06:051841const char kWebPaymentsModifiersName[] = "Enable web payment modifiers";
1842const char kWebPaymentsModifiersDescription[] =
1843 "If the website provides modifiers in the payment request, show the custom "
1844 "total for each payment instrument, update the shopping cart when "
1845 "instruments are switched, and send modified payment method specific data "
1846 "to the payment app.";
1847
Brett Wilsonecb80982017-07-12 20:34:511848const char kWebrtcEchoCanceller3Name[] = "WebRTC Echo Canceller 3.";
1849const char kWebrtcEchoCanceller3Description[] =
1850 "Experimental WebRTC echo canceller (AEC3).";
1851
1852const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
1853const char kWebrtcHwDecodingDescription[] =
1854 "Support in WebRTC for decoding video streams using platform hardware.";
1855
1856const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
1857const char kWebrtcHwEncodingDescription[] =
1858 "Support in WebRTC for encoding video streams using platform hardware.";
1859
1860const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
1861const char kWebrtcHwH264EncodingDescription[] =
1862 "Support in WebRTC for encoding h264 video streams using platform "
1863 "hardware.";
1864
1865const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
1866const char kWebrtcHwVP8EncodingDescription[] =
1867 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
1868
Niels Möller090866a2018-02-13 10:55:031869const char kWebrtcNewEncodeCpuLoadEstimatorName[] =
1870 "WebRTC new encode cpu load estimator";
1871const char kWebrtcNewEncodeCpuLoadEstimatorDescription[] =
1872 "Enable new estimator for the encoder cpu load, for evaluation and "
1873 "testing. Intended to improve accuracy when screen casting.";
1874
Brett Wilsonecb80982017-07-12 20:34:511875const char kWebrtcSrtpAesGcmName[] =
1876 "Negotiation with GCM cipher suites for SRTP in WebRTC";
1877const char kWebrtcSrtpAesGcmDescription[] =
1878 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
1879
Joachim Bauch4a41d7512017-08-23 14:24:231880const char kWebrtcSrtpEncryptedHeadersName[] =
1881 "Negotiation with encrypted header extensions for SRTP in WebRTC";
1882const char kWebrtcSrtpEncryptedHeadersDescription[] =
1883 "When enabled, WebRTC will try to negotiate encrypted header extensions "
1884 "for SRTP.";
1885
Brett Wilsonecb80982017-07-12 20:34:511886const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
1887const char kWebrtcStunOriginDescription[] =
1888 "When enabled, Stun messages generated by WebRTC will contain the Origin "
1889 "header.";
1890
Adam Ricec786ad8a2018-05-22 09:49:151891const char kWebSocketHandshakeReuseConnectionName[] =
1892 "Enable WebSocket connection reuse for authentication";
1893const char kWebSocketHandshakeReuseConnectionDescription[] =
1894 "Permits the WebSocket handshake to keep the connection open after an "
1895 "authentication failure. The connection may be used for further requests "
1896 "to send credentials. This is sometimes needed for Windows authentication.";
1897
Brett Wilsonecb80982017-07-12 20:34:511898const char kWebvrName[] = "WebVR";
1899const char kWebvrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:011900 "Enables access to experimental Virtual Reality functionality via the "
1901 "WebVR 1.1 API. This feature will eventually be replaced by the WebXR "
1902 "Device API. Warning: Enabling this will also allow WebVR content on "
1903 "insecure origins to access these powerful APIs, and may pose a security "
Anna Offenwanger06dc6062018-04-12 07:56:221904 "risk. Controllers are exposed as Gamepads.";
Brett Wilsonecb80982017-07-12 20:34:511905
Brandon Jonese9d9b2b2017-12-11 22:20:111906const char kWebXrName[] = "WebXR Device API";
1907const char kWebXrDescription[] =
Anna Offenwanger00e6dd052018-04-05 02:12:011908 "Enables access to experimental APIs to interact with Virtual Reality (VR) "
1909 "and Augmented Reality (AR) devices.";
1910
1911const char kWebXrGamepadSupportName[] = "WebXR Gamepad Support";
1912const char kWebXrGamepadSupportDescription[] =
1913 "Expose VR controllers as Gamepads for use with the WebXR Device API. Each "
Anna Offenwanger06dc6062018-04-12 07:56:221914 "XRInputSource will have a corresponding Gamepad instance. Requires that "
1915 "WebXR Device API is also enabled.";
Ian Vollick7aaccf92018-04-07 23:10:431916
1917const char kWebXrHitTestName[] = "WebXR Hit Test";
1918const char kWebXrHitTestDescription[] =
1919 "Enables access to raycasting against estimated XR scene geometry.";
Brandon Jonese9d9b2b2017-12-11 22:20:111920
Anna Maria57ecf7592018-01-12 03:10:401921const char kWebXrOrientationSensorDeviceName[] =
1922 "WebXR orientation sensor device";
1923const char kWebXrOrientationSensorDeviceDescription[] =
1924 "When no VR platform device is available, expose a non-presenting device "
1925 "based on the device's orientation sensors, if available.";
1926
Brett Wilsonecb80982017-07-12 20:34:511927const char kWifiCredentialSyncName[] = "WiFi credential sync";
1928const char kWifiCredentialSyncDescription[] =
1929 "Enables synchronizing WiFi network settings across devices. When enabled, "
1930 "the WiFi credential datatype is registered with Chrome Sync, and WiFi "
1931 "credentials are synchronized subject to user preferences. (See also, "
1932 "chrome://settings/syncSetup.)";
1933
1934const char kZeroCopyName[] = "Zero-copy rasterizer";
1935const char kZeroCopyDescription[] =
1936 "Raster threads write directly to GPU memory associated with tiles.";
vabr0215a8e2017-03-28 12:47:341937
Brett Wilsonff596952017-07-14 01:06:551938// Android ---------------------------------------------------------------------
1939
1940#if defined(OS_ANDROID)
1941
1942const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
1943const char kAiaFetchingDescription[] =
1944 "Enable intermediate certificate fetching when a server does not provide "
1945 "sufficient certificates to build a chain to a trusted root.";
1946
1947const char kAccessibilityTabSwitcherName[] = "Accessibility Tab Switcher";
1948const char kAccessibilityTabSwitcherDescription[] =
1949 "Enable the accessibility tab switcher for Android.";
1950
Wei-Yin Chen (陳威尹)80683452017-10-02 19:08:251951const char kAllowReaderForAccessibilityName[] = "Reader Mode for Accessibility";
1952const char kAllowReaderForAccessibilityDescription[] =
1953 "Allows Reader Mode on any articles, even if the page is mobile-friendly.";
1954
Brett Wilsonff596952017-07-14 01:06:551955const char kAndroidAutofillAccessibilityName[] = "Autofill Accessibility";
1956const char kAndroidAutofillAccessibilityDescription[] =
1957 "Enable accessibility for autofill popup.";
1958
1959const char kAndroidPaymentAppsName[] = "Android payment apps";
1960const char kAndroidPaymentAppsDescription[] =
1961 "Enable third party Android apps to integrate as payment apps";
1962
Miriam Gershenson8cf1397222018-01-23 22:48:291963const char kAsyncDnsName[] = "Async DNS resolver";
1964const char kAsyncDnsDescription[] = "Enables the built-in DNS resolver.";
1965
Brett Wilsonff596952017-07-14 01:06:551966const char kAutofillAccessoryViewName[] =
1967 "Autofill suggestions as keyboard accessory view";
1968const char kAutofillAccessoryViewDescription[] =
1969 "Shows Autofill suggestions on top of the keyboard rather than in a "
1970 "dropdown.";
1971
1972const char kBackgroundLoaderForDownloadsName[] =
1973 "Enables background downloading of pages.";
1974const char kBackgroundLoaderForDownloadsDescription[] =
1975 "Enables downloading pages in the background in case page is not yet "
1976 "loaded in current tab.";
1977
Matthew Jones6c1f5e22018-02-06 18:19:531978const char kChromeDuplexName[] = "Chrome Duplex";
1979const char kChromeDuplexDescription[] =
1980 "Enables Chrome Duplex, split toolbar Chrome Home, on Android.";
Theresa Wellingtonb9243b22017-12-01 16:23:051981
Brett Wilsonff596952017-07-14 01:06:551982const char kChromeHomeSwipeLogicName[] = "Chrome Home Swipe Logic";
1983const char kChromeHomeSwipeLogicDescription[] =
1984 "Various swipe logic options for Chrome Home for sheet expansion.";
1985const char kChromeHomeSwipeLogicRestrictArea[] = "Restrict swipable area";
Matthew Jonesbe384ee42017-10-31 19:57:151986const char kChromeHomeSwipeLogicVelocity[] = "Velocity suppression model";
Brett Wilsonff596952017-07-14 01:06:551987
Matthew Jones5b7f1d62018-01-23 00:37:251988const char kChromeModernDesignName[] = "Chrome Modern Design";
1989const char kChromeModernDesignDescription[] =
Matthew Jones213a0692018-02-05 20:07:451990 "Enable modern design for Chrome. Chrome must be restarted twice for this "
1991 "flag to take effect.";
Matthew Jones5b7f1d62018-01-23 00:37:251992
Megan Jablonskic61eb1b82017-10-02 18:03:061993const char kChromeMemexName[] = "Chrome Memex";
1994const char kChromeMemexDescription[] =
1995 "Enables Chrome Memex homepage on Android. Restricted to opted-in "
1996 "Googlers.";
1997
Sarath Singapati83aef1c2017-11-16 15:54:521998const char kClearOldBrowsingDataName[] = "Clear older browsing data";
1999const char kClearOldBrowsingDataDescription[] =
2000 "Enables clearing of browsing data which is older than a given time "
2001 "period.";
2002
Brett Wilsonff596952017-07-14 01:06:552003const char kContentSuggestionsCategoryOrderName[] =
2004 "Default content suggestions category order (e.g. on NTP)";
2005const char kContentSuggestionsCategoryOrderDescription[] =
2006 "Set default order of content suggestion categories (e.g. on the NTP).";
2007
2008const char kContentSuggestionsCategoryRankerName[] =
2009 "Content suggestions category ranker (e.g. on NTP)";
2010const char kContentSuggestionsCategoryRankerDescription[] =
2011 "Set category ranker to order categories of content suggestions (e.g. on "
2012 "the NTP).";
2013
Vitalii Iarkof52ff802017-09-14 12:34:242014const char kContentSuggestionsDebugLogName[] = "Content suggestions debug log";
2015const char kContentSuggestionsDebugLogDescription[] =
2016 "Enable content suggestions debug log accessible through "
2017 "snippets-internals.";
2018
Donn Denman8e58ead2017-11-04 01:44:012019const char kContextualSearchMlTapSuppressionName[] =
2020 "Contextual Search ML tap suppression";
2021const char kContextualSearchMlTapSuppressionDescription[] =
2022 "Enables tap gestures to be suppressed to improve CTR by applying machine "
Donn Denman59729812018-01-09 01:27:022023 "learning. The \"Contextual Search Ranker prediction\" flag must also be "
2024 "enabled!";
Brett Wilsonff596952017-07-14 01:06:552025
2026const char kContextualSearchName[] = "Contextual Search";
2027const char kContextualSearchDescription[] =
2028 "Whether or not Contextual Search is enabled.";
2029
Donn Denman59729812018-01-09 01:27:022030const char kContextualSearchRankerQueryName[] =
2031 "Contextual Search Ranker prediction";
2032const char kContextualSearchRankerQueryDescription[] =
2033 "Enables prediction of tap gestures using Assist-Ranker machine learning.";
2034
2035const char kContextualSearchSecondTapName[] =
2036 "Contextual Search second tap triggering";
2037const char kContextualSearchSecondTapDescription[] =
2038 "Enables triggering on a second tap gesture even when Ranker would "
2039 "normally suppress that tap.";
2040
Dmitry Skiba9c3efa72017-07-20 22:01:142041const char kDontPrefetchLibrariesName[] = "Don't Prefetch Libraries";
2042const char kDontPrefetchLibrariesDescription[] =
2043 "Don't prefetch libraries after loading.";
2044
Joy Ming5fd29ca62017-10-02 22:51:222045const char kDownloadsForegroundName[] = "Enable downloads foreground";
2046const char kDownloadsForegroundDescription[] =
2047 "Enable downloads as a foreground service for all versions of Android.";
2048
Joy Ming189b0cc2017-12-08 19:42:432049const char kDownloadsLocationChangeName[] = "Enable downloads location change";
2050const char kDownloadsLocationChangeDescription[] =
2051 "Enable changing default downloads storage location on Android.";
2052
Shakti Sahu32b2ee102018-05-17 00:04:462053const char kDownloadProgressInfoBarName[] = "Enable download progress infobar";
2054const char kDownloadProgressInfoBarDescription[] =
2055 "Enables an infobar notifying users about status of current downloads.";
2056
Brett Wilsonff596952017-07-14 01:06:552057const char kEnableAndroidPayIntegrationV1Name[] = "Enable Android Pay v1";
2058const char kEnableAndroidPayIntegrationV1Description[] =
2059 "Enable integration with Android Pay using the first version of the API";
2060
2061const char kEnableAndroidPayIntegrationV2Name[] = "Enable Android Pay v2";
2062const char kEnableAndroidPayIntegrationV2Description[] =
2063 "Enable integration with Android Pay using the second version of the API";
2064
Vitalii Iarkof4ed32d2017-09-26 13:15:532065const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
Brett Wilsonff596952017-07-14 01:06:552066const char kEnableAndroidSpellcheckerDescription[] =
2067 "Enables use of the Android spellchecker.";
Brett Wilsonff596952017-07-14 01:06:552068
Lei Tianbd5a3bf2018-02-28 19:01:162069const char kEnableCommandLineOnNonRootedName[] =
2070 "Enable command line on non-rooted devices";
2071const char kEnableCommandLineOnNoRootedDescription[] =
2072 "Enable reading command line file on non-rooted devices (DANGEROUS).";
2073
Vitalii Iarkof4ed32d2017-09-26 13:15:532074const char kEnableContentSuggestionsNewFaviconServerName[] =
2075 "Get favicons for content suggestions from a new server.";
2076const char kEnableContentSuggestionsNewFaviconServerDescription[] =
2077 "If enabled, the content suggestions (on the NTP) will get favicons from a "
2078 "new favicon server.";
Brett Wilsonff596952017-07-14 01:06:552079
2080const char kEnableContentSuggestionsSettingsName[] =
2081 "Show content suggestions settings.";
2082const char kEnableContentSuggestionsSettingsDescription[] =
2083 "If enabled, the content suggestions settings will be available from the "
2084 "main settings menu.";
2085
Vitalii Iarkof4ed32d2017-09-26 13:15:532086const char kEnableContentSuggestionsThumbnailDominantColorName[] =
2087 "Use content suggestions thumbnail dominant color.";
2088const char kEnableContentSuggestionsThumbnailDominantColorDescription[] =
2089 "Use content suggestions thumbnail dominant color as a placeholder before "
2090 "the real thumbnail is fetched (requires Chrome Home).";
2091
Brett Wilsonff596952017-07-14 01:06:552092const char kEnableCustomContextMenuName[] = "Enable custom context menu";
2093const char kEnableCustomContextMenuDescription[] =
2094 "Enables a new context menu when a link, image, or video is pressed within "
2095 "Chrome.";
2096
2097const char kEnableCustomFeedbackUiName[] = "Enable Custom Feedback UI";
2098const char kEnableCustomFeedbackUiDescription[] =
2099 "Enables a custom feedback UI when submitting feedback through Google "
2100 "Feedback. Works with Google Play Services v10.2+";
2101
2102const char kEnableDataReductionProxyMainMenuName[] =
Theresa Wellington141e4af2017-10-23 20:28:472103 "Enable Data Saver main menu item";
Brett Wilsonff596952017-07-14 01:06:552104const char kEnableDataReductionProxyMainMenuDescription[] =
Theresa Wellington141e4af2017-10-23 20:28:472105 "Enables the Data Saver menu item in the main menu";
Brett Wilsonff596952017-07-14 01:06:552106
Brett Wilsonff596952017-07-14 01:06:552107const char kEnableOmniboxClipboardProviderName[] =
2108 "Omnibox clipboard URL suggestions";
2109const char kEnableOmniboxClipboardProviderDescription[] =
2110 "Provide a suggestion of the URL stored in the clipboard (if any) upon "
2111 "focus in the omnibox.";
2112
Becky Zhoua7f11d62018-02-01 16:02:532113const char kEnableNtpArticleSuggestionsExpandableHeaderName[] =
2114 "Show article suggestions expandable header on New Tab Page";
2115const char kEnableNtpArticleSuggestionsExpandableHeaderDescription[] =
2116 "If enabled, the article suggestions content on New Tab Page can be "
2117 "toggled shown or hidden by clicking the expandable header.";
2118
Brett Wilsonff596952017-07-14 01:06:552119const char kEnableNtpAssetDownloadSuggestionsName[] =
2120 "Show asset downloads on the New Tab page";
2121const char kEnableNtpAssetDownloadSuggestionsDescription[] =
2122 "If enabled, the list of content suggestions on the New Tab page will "
2123 "contain assets (e.g. books, pictures, audio) that the user downloaded for "
2124 "later use.";
2125
2126const char kEnableNtpBookmarkSuggestionsName[] =
2127 "Show recently visited bookmarks on the New Tab page";
2128const char kEnableNtpBookmarkSuggestionsDescription[] =
2129 "If enabled, the list of content suggestions on the New Tab page will "
2130 "contain recently visited bookmarks.";
2131
2132const char kEnableNtpForeignSessionsSuggestionsName[] =
2133 "Show recent foreign tabs on the New Tab page";
2134const char kEnableNtpForeignSessionsSuggestionsDescription[] =
2135 "If enabled, the list of content suggestions on the New Tab page will "
2136 "contain recent foreign tabs.";
2137
Brett Wilsonff596952017-07-14 01:06:552138const char kEnableNtpOfflinePageDownloadSuggestionsName[] =
2139 "Show offline page downloads on the New Tab page";
2140const char kEnableNtpOfflinePageDownloadSuggestionsDescription[] =
2141 "If enabled, the list of content suggestions on the New Tab page will "
2142 "contain pages that the user downloaded for later use.";
2143
2144const char kEnableNtpRemoteSuggestionsName[] =
2145 "Show server-side suggestions on the New Tab page";
2146const char kEnableNtpRemoteSuggestionsDescription[] =
2147 "If enabled, the list of content suggestions on the New Tab page will "
2148 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
2149 "allows to override the source used to retrieve these server-side "
2150 "suggestions.";
2151
2152const char kEnableNtpSnippetsVisibilityName[] =
2153 "Make New Tab Page Snippets more visible.";
2154const char kEnableNtpSnippetsVisibilityDescription[] =
2155 "If enabled, the NTP snippets will become more discoverable with a larger "
2156 "portion of the first card above the fold.";
2157
2158const char kEnableNtpSuggestionsNotificationsName[] =
2159 "Notify about new content suggestions available at the New Tab page";
2160const char kEnableNtpSuggestionsNotificationsDescription[] =
2161 "If enabled, notifications will inform about new content suggestions on "
2162 "the New Tab page.";
2163
Brett Wilsonff596952017-07-14 01:06:552164const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
2165const char kEnableOfflinePreviewsDescription[] =
2166 "Enable showing offline page previews on slow networks.";
2167
2168const char kEnableOskOverscrollName[] = "Enable OSK Overscroll";
2169const char kEnableOskOverscrollDescription[] =
2170 "Enable OSK overscroll support. With this flag on, the OSK will only "
2171 "resize the visual viewport.";
2172
2173const char kEnableSpecialLocaleName[] =
2174 "Enable custom logic for special locales.";
2175const char kEnableSpecialLocaleDescription[] =
2176 "Enable custom logic for special locales. In this mode, Chrome might "
2177 "behave differently in some locales.";
2178
Brett Wilsonff596952017-07-14 01:06:552179const char kEnableWebNfcName[] = "WebNFC";
2180const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
2181
gogeraldf3cbb422017-07-26 14:37:122182const char kEnableWebPaymentsMethodSectionOrderV2Name[] =
2183 "Enable Web Payments method section order V2.";
2184const char kEnableWebPaymentsMethodSectionOrderV2Description[] =
2185 "Enable this option to display payment method section above address "
2186 "section instead of below it.";
2187
Raymes Khoury582b43132017-12-12 23:54:302188const char kGrantNotificationsToDSEName[] =
2189 "Grant notifications to the Default Search Engine";
2190const char kGrantNotificationsToDSENameDescription[] =
2191 "Automatically grant the notifications permission to the Default Search "
2192 "Engine";
2193
Daniel Parke74fcf862018-03-27 18:05:452194const char kHomePageButtonName[] = "Force Enable Home Page Button";
Daniel Park990d0992018-05-18 22:12:512195const char kHomePageButtonDescription[] = "Displays a home button if enabled.";
Daniel Parke74fcf862018-03-27 18:05:452196
Theresa920e0ed2018-03-07 18:12:442197const char kInterestFeedContentSuggestionsDescription[] =
2198 "Use the interest feed to render content suggestions. Currently content "
2199 "suggestions are shown on the New Tab Page.";
2200const char kInterestFeedContentSuggestionsName[] =
2201 "Interest Feed Content Suggestions";
2202
Brett Wilsonff596952017-07-14 01:06:552203const char kKeepPrefetchedContentSuggestionsName[] =
2204 "Keep prefetched content suggestions";
2205const char kKeepPrefetchedContentSuggestionsDescription[] =
2206 "If enabled, some of prefetched content suggestions are not replaced by "
2207 "the new fetched suggestions.";
2208
Leo Zhang051b75482017-12-20 03:28:302209const char kLanguagesPreferenceName[] = "Language Settings";
2210const char kLanguagesPreferenceDescription[] =
2211 "Enable this option for Language Settings feature on Android.";
2212
Brett Wilsonff596952017-07-14 01:06:552213const char kLsdPermissionPromptName[] =
2214 "Location Settings Dialog Permission Prompt";
2215const char kLsdPermissionPromptDescription[] =
2216 "Whether to use the Google Play Services Location Settings Dialog "
2217 "permission dialog.";
2218
Amirhossein Simjour97b4154f2018-02-20 03:49:592219const char kModalPermissionDialogViewName[] = "Modal Permission Dialog";
2220const char kModalPermissionDialogViewDescription[] =
2221 "Enable this option to use ModalDialogManager for permission Dialogs.";
2222
Brett Wilsonff596952017-07-14 01:06:552223const char kMediaScreenCaptureName[] = "Experimental ScreenCapture.";
2224const char kMediaScreenCaptureDescription[] =
2225 "Enable this option for experimental ScreenCapture feature on Android.";
2226
2227const char kModalPermissionPromptsName[] = "Modal Permission Prompts";
2228const char kModalPermissionPromptsDescription[] =
2229 "Whether to use permission dialogs in place of permission infobars.";
2230
Brett Wilsonff596952017-07-14 01:06:552231const char kNewPhotoPickerName[] = "Enable new Photopicker";
2232const char kNewPhotoPickerDescription[] =
2233 "Activates the new picker for selecting photos.";
2234
2235const char kNoCreditCardAbort[] = "No Credit Card Abort";
2236const char kNoCreditCardAbortDescription[] =
2237 "Whether or not the No Credit Card Abort is enabled.";
2238
Daniel Park990d0992018-05-18 22:12:512239const char kNtpButtonName[] = "Enable NTP Button";
2240const char kNtpButtonDescription[] =
2241 "Displays a New Tab Page button in the toolbar if enabled.";
2242
Michael van Ouwerkerkcdbbe332017-11-24 15:07:062243const char kNtpModernLayoutName[] = "Modern NTP layout";
2244const char kNtpModernLayoutDescription[] =
2245 "Show a modern layout on the New Tab Page.";
2246
Brett Wilsonff596952017-07-14 01:06:552247const char kNtpGoogleGInOmniboxName[] = "Google G in New Tab Page omnibox";
2248const char kNtpGoogleGInOmniboxDescription[] =
2249 "Show a Google G in the omnibox on the New Tab Page.";
2250
Brett Wilsonff596952017-07-14 01:06:552251const char kOfflineBookmarksName[] = "Enable offline bookmarks";
2252const char kOfflineBookmarksDescription[] =
2253 "Enable saving bookmarked pages for offline viewing.";
2254
Brett Wilsonff596952017-07-14 01:06:552255const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
2256const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
2257
2258const char kOfflinePagesCtV2Name[] = "Enable Offline Pages CT V2 features.";
2259const char kOfflinePagesCtV2Description[] =
2260 "V2 features include attributing pages to the app that initiated the "
2261 "custom tabs, and being able to query for pages by page attribution.";
2262
Cathy Li7311d792018-04-05 00:34:162263const char kOfflinePagesCTSuppressNotificationsName[] =
2264 "Disable download complete notification for whitelisted CCT apps.";
2265const char kOfflinePagesCTSuppressNotificationsDescription[] =
2266 "Disable download complete notification for page downloads originating "
2267 "from a CCT app whitelisted to show their own download complete "
2268 "notification.";
2269
Candice Sy74fa7a352018-03-30 23:46:492270const char kOfflinePagesDescriptiveFailStatusName[] =
2271 "Enables descriptive failed download status text.";
2272const char kOfflinePagesDescriptiveFailStatusDescription[] =
2273 "Enables failed download status text in notifications and Downloads Home "
2274 "to state the reason the request failed if the failure is actionable.";
2275
2276const char kOfflinePagesDescriptivePendingStatusName[] =
2277 "Enables descriptive pending download status text.";
2278const char kOfflinePagesDescriptivePendingStatusDescription[] =
2279 "Enables pending download status text in notifications and Downloads Home "
2280 "to state the reason the request is pending.";
2281
2282const char kOfflinePagesInDownloadHomeOpenInCctName[] =
2283 "Enables offline pages in the downloads home to be opened in CCT.";
2284const char kOfflinePagesInDownloadHomeOpenInCctDescription[] =
2285 "When enabled offline pages launched from the Downloads Home will be "
2286 "opened in Chrome Custom Tabs (CCT) instead of regular tabs.";
2287
Carlos Knippschild09272ecd2017-12-09 03:29:362288const char kOfflinePagesLimitlessPrefetchingName[] =
2289 "Removes resource usage limits for the prefetching of offline pages.";
2290const char kOfflinePagesLimitlessPrefetchingDescription[] =
2291 "Allows the prefetching of suggested offline pages to ignore resource "
2292 "usage limits. This allows it to completely ignore data usage limitations "
2293 "and allows downloads to happen with any kind of connection.";
2294
Brett Wilsonff596952017-07-14 01:06:552295const char kOfflinePagesLoadSignalCollectingName[] =
2296 "Enables collecting load timing data for offline page snapshots.";
2297const char kOfflinePagesLoadSignalCollectingDescription[] =
2298 "Enables loading completeness data collection while writing an offline "
2299 "page. This data is collected in the snapshotted offline page to allow "
2300 "data analysis to improve deciding when to make the offline snapshot.";
2301
2302const char kOfflinePagesPrefetchingName[] =
2303 "Enables suggested offline pages to be prefetched.";
2304const char kOfflinePagesPrefetchingDescription[] =
2305 "Enables suggested offline pages to be prefetched, so useful content is "
2306 "available while offline.";
2307
Cathy Li3d5379e2017-09-07 00:11:092308const char kOfflinePagesPrefetchingUIName[] =
2309 "Enables prefetched offline pages to be shown in UI.";
2310const char kOfflinePagesPrefetchingUIDescription[] =
2311 "Enables prefetched offline pages to raise notifications and be shown in "
2312 "download home UI.";
2313
Pete Williamson7845dff2017-09-20 11:06:192314const char kOfflinePagesResourceBasedSnapshotName[] =
2315 "Enables offline page snapshots to be based on percentage of page loaded.";
2316const char kOfflinePagesResourceBasedSnapshotDescription[] =
2317 "Enables offline page snapshots to use a resource percentage based "
2318 "approach for determining when the page is loaded as opposed to a time "
2319 "based approach";
2320
Collin Baker17f92a52017-07-19 21:41:252321const char kOfflinePagesRenovationsName[] = "Enables offline page renovations.";
2322const char kOfflinePagesRenovationsDescription[] =
2323 "Enables offline page renovations which correct issues with dynamic "
2324 "content that occur when offlining pages that use JavaScript.";
2325
Brett Wilsonff596952017-07-14 01:06:552326const char kOfflinePagesSharingName[] = "Enables offline pages to be shared.";
2327const char kOfflinePagesSharingDescription[] =
2328 "Enables the saved offline pages to be shared via other applications.";
2329
Cathy Lie0d88762018-04-12 08:03:012330const char kOfflinePagesShowAlternateDinoPageName[] =
2331 "Enable alternate dino page with more user capabilities.";
2332const char kOfflinePagesShowAlternateDinoPageDescription[] =
2333 "Enables the dino page to show more buttons and offer existing offline "
2334 "content.";
2335
Brett Wilsonff596952017-07-14 01:06:552336const char kOfflinePagesSvelteConcurrentLoadingName[] =
2337 "Enables concurrent background loading on svelte.";
2338const char kOfflinePagesSvelteConcurrentLoadingDescription[] =
2339 "Enables concurrent background loading (or downloading) of pages on "
2340 "Android svelte (512MB RAM) devices. Otherwise, background loading will "
2341 "happen when the svelte device is idle.";
2342
2343const char kOffliningRecentPagesName[] =
2344 "Enable offlining of recently visited pages";
2345const char kOffliningRecentPagesDescription[] =
2346 "Enable storing recently visited pages locally for offline use. Requires "
2347 "Offline Pages to be enabled.";
2348
Lei Zhang2eca9082017-10-17 20:42:502349const char kPayWithGoogleV1Name[] = "Pay with Google v1";
2350const char kPayWithGoogleV1Description[] =
Brett Wilsonff596952017-07-14 01:06:552351 "Enable Pay with Google integration into Web Payments with API version "
2352 "'1'.";
2353
Matthew Jonesa88b95852017-11-08 23:13:502354const char kProgressBarThrottleName[] = "Android progress update throttling.";
2355const char kProgressBarThrottleDescription[] =
2356 "Limit the maximum progress update to make progress appear smoother.";
2357
Brett Wilsonff596952017-07-14 01:06:552358const char kPullToRefreshEffectName[] = "The pull-to-refresh effect";
2359const char kPullToRefreshEffectDescription[] =
2360 "Page reloads triggered by vertically overscrolling content.";
2361
Piotr Swigon7c296ef2017-08-29 04:32:002362const char kPwaImprovedSplashScreenName[] =
2363 "Improved Splash Screen for standalone PWAs";
2364const char kPwaImprovedSplashScreenDescription[] =
2365 "Enables the Improved Splash Screen UX for standalone PWAs based on new "
2366 "Web App Manifest attributes";
Piotr Swigon9f630b32017-07-26 09:42:492367const char kPwaPersistentNotificationName[] =
2368 "Persistent notification in standalone PWA";
2369const char kPwaPersistentNotificationDescription[] =
2370 "Enables a persistent Android notification for standalone PWAs";
2371
Brett Wilsonff596952017-07-14 01:06:552372const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
2373const char kReaderModeHeuristicsDescription[] =
2374 "Determines what pages the Reader Mode infobar is shown on.";
2375const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
2376const char kReaderModeHeuristicsAdaboost[] = "Non-mobile-friendly articles";
2377const char kReaderModeHeuristicsAllArticles[] = "All articles";
2378const char kReaderModeHeuristicsAlwaysOff[] = "Never";
2379const char kReaderModeHeuristicsAlwaysOn[] = "Always";
2380
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:182381const char kReaderModeInCCTName[] = "Reader Mode in CCT";
2382const char kReaderModeInCCTDescription[] =
2383 "Open Reader Mode in Chrome Custom Tabs.";
2384
Brett Wilsonff596952017-07-14 01:06:552385const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2386const char kSetMarketUrlForTestingDescription[] =
2387 "When enabled, sets the market URL for use in testing the update menu "
2388 "item.";
2389
2390const char kSpannableInlineAutocompleteName[] = "Spannable inline autocomplete";
2391const char kSpannableInlineAutocompleteDescription[] =
2392 "A new type of inline autocomplete for the omnibox that works with "
2393 "keyboards that compose text.";
2394
Theresaeea05a12018-05-09 21:01:592395const char kSimplifiedNtpName[] = "Simplified NTP";
2396const char kSimplifiedNtpDescription[] = "Show a simplified New Tab Page.";
2397
2398const char kSiteExplorationUiName[] = "Site Exploration UI";
2399const char kSiteExplorationUiDescription[] =
2400 "Show site suggestions in the Exploration UI";
2401
Brett Wilsonff596952017-07-14 01:06:552402const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2403const char kUpdateMenuBadgeDescription[] =
2404 "When enabled, an update badge will be shown on the app menu button.";
2405
2406const char kUpdateMenuItemCustomSummaryDescription[] =
2407 "When this flag and the force show update menu item flag are enabled, a "
2408 "custom summary string will be displayed below the update menu item.";
2409const char kUpdateMenuItemCustomSummaryName[] =
2410 "Update menu item custom summary";
2411
2412const char kUpdateMenuItemName[] = "Force show update menu item";
2413const char kUpdateMenuItemDescription[] =
2414 R"*(When enabled, an "Update Chrome" item will be shown in the app )*"
2415 R"*(menu.)*";
2416
Amirhossein Simjourd78bbcf2018-02-02 16:23:392417const char kVrBrowsingNativeAndroidUiName[] = "VR browsing native android ui";
2418const char kVrBrowsingNativeAndroidUiDescription[] =
2419 "Enable Android UI elements in VR.";
2420
Tibor Goldschwendt4cdea8d2018-05-10 15:46:462421const char kVrBrowsingTabsViewName[] = "VR browsing tabs view";
2422const char kVrBrowsingTabsViewDescription[] =
2423 "Enable tab overview (tab switcher) in VR.";
2424
Marc Treib93af46a2017-08-23 13:30:002425const char kThirdPartyDoodlesName[] =
2426 "Enable Doodles for third-party search engines";
2427const char kThirdPartyDoodlesDescription[] =
2428 "Enables fetching and displaying Doodles on the NTP for third-party search "
2429 "engines.";
2430
Klaus Weidneraaf697f2018-01-18 20:07:362431const char kWebXrRenderPathName[] = "WebXR presentation render path";
2432const char kWebXrRenderPathDescription[] =
2433 "Render path to use for WebXR presentation (including WebVR)";
2434const char kWebXrRenderPathChoiceClientWaitDescription[] =
2435 "ClientWait (Baseline)";
2436const char kWebXrRenderPathChoiceGpuFenceDescription[] =
2437 "GpuFence (Android N+)";
Klaus Weidnerd25dff42018-04-12 06:56:072438const char kWebXrRenderPathChoiceSharedBufferDescription[] =
2439 "SharedBuffer (Android O+)";
Klaus Weidneraaf697f2018-01-18 20:07:362440
Brett Wilson7b44537e2017-08-18 01:38:282441// Non-Android -----------------------------------------------------------------
Brett Wilsonff596952017-07-14 01:06:552442
Brett Wilson7b44537e2017-08-18 01:38:282443#else // !defined(OS_ANDROID)
brettw5f9c1642017-05-14 17:12:482444
Brett Wilson7b44537e2017-08-18 01:38:282445const char kAccountConsistencyName[] =
2446 "Identity consistency between browser and cookie jar";
2447const char kAccountConsistencyDescription[] =
2448 "When enabled, the browser manages signing in and out of Google accounts.";
2449const char kAccountConsistencyChoiceMirror[] = "Mirror";
2450const char kAccountConsistencyChoiceDice[] = "Dice";
vabr0215a8e2017-03-28 12:47:342451
Chris Pickel3a227ae62017-08-24 10:47:262452const char kDoodlesOnLocalNtpName[] = "Enable doodles on the local NTP";
2453const char kDoodlesOnLocalNtpDescription[] =
2454 "Show doodles on the local New Tab page if Google is the default search "
2455 "engine.";
2456
mlamouriff56c092017-05-11 15:31:392457const char kEnableAudioFocusName[] = "Manage audio focus across tabs";
mlamouriff56c092017-05-11 15:31:392458const char kEnableAudioFocusDescription[] =
vabr0215a8e2017-03-28 12:47:342459 "Manage audio focus across tabs to improve the audio mixing.";
mlamouriff56c092017-05-11 15:31:392460const char kEnableAudioFocusDisabled[] = "Disabled";
mlamouriff56c092017-05-11 15:31:392461const char kEnableAudioFocusEnabled[] = "Enabled";
mlamouriff56c092017-05-11 15:31:392462const char kEnableAudioFocusEnabledDuckFlash[] =
vabr0215a8e2017-03-28 12:47:342463 "Enabled (Flash lowers volume when interrupted by other sound, "
2464 "experimental)";
2465
Brett Wilson7b44537e2017-08-18 01:38:282466const char kEnableNewAppMenuIconName[] = "Enable the New App Menu Icon";
2467const char kEnableNewAppMenuIconDescription[] =
2468 "Use the new app menu icon with update notification animations.";
vabr0215a8e2017-03-28 12:47:342469
Dave Schuyler598a4a42018-01-04 02:15:102470const char kOmniboxRichEntitySuggestionsName[] =
2471 "Omnibox rich entity suggestions";
2472const char kOmniboxRichEntitySuggestionsDescription[] =
2473 "Display entity suggestions using images and an enhanced layout; showing "
2474 "more context and descriptive text about the entity";
2475
Dave Schuyler616273d2018-04-19 03:12:522476const char kOmniboxNewAnswerLayoutName[] = "Omnibox new answer layout";
2477const char kOmniboxNewAnswerLayoutDescription[] =
2478 "Display answers using an enhanced layout with larger images";
2479
Kevin Bailey898669972017-11-06 15:34:492480const char kOmniboxTabSwitchSuggestionsName[] =
2481 "Omnibox tab switch suggestions";
2482const char kOmniboxTabSwitchSuggestionsDescription[] =
2483 "Enable suggestions for switching to open tabs within the Omnibox.";
2484
krbcc621412017-06-01 19:40:282485const char kOmniboxTailSuggestionsName[] = "Omnibox tail suggestions";
2486const char kOmniboxTailSuggestionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192487 "Enable receiving tail suggestions, a type of search suggestion based on "
2488 "the last few words in the query, for the Omnibox.";
vabr0215a8e2017-03-28 12:47:342489
Brett Wilson7b44537e2017-08-18 01:38:282490const char kOneGoogleBarOnLocalNtpName[] =
2491 "Enable the OneGoogleBar on the local NTP";
2492const char kOneGoogleBarOnLocalNtpDescription[] =
2493 "Show a OneGoogleBar on the local New Tab page if Google is the default "
2494 "search engine.";
2495
Brett Wilson7b44537e2017-08-18 01:38:282496const char kUseGoogleLocalNtpName[] = "Enable using the Google local NTP";
2497const char kUseGoogleLocalNtpDescription[] =
2498 "Use the local New Tab page if Google is the default search engine.";
spqchan064a8112017-04-18 16:46:322499
Brett Wilson7b44537e2017-08-18 01:38:282500const char kVoiceSearchOnLocalNtpName[] =
2501 "Enable Voice Search on the local NTP";
2502const char kVoiceSearchOnLocalNtpDescription[] =
2503 "Show a microphone for voice search on the local New Tab page "
2504 "if Google is the default search engine.";
2505
Balazs Engedy00c5cea2018-03-30 15:36:392506const char kEnableWebAuthenticationAPIName[] = "Web Authentication API";
Kim Paulhamus33f87b12018-01-18 22:00:422507const char kEnableWebAuthenticationAPIDescription[] =
Balazs Engedy00c5cea2018-03-30 15:36:392508 "Enable Web Authentication API support";
2509
2510const char kEnableWebAuthenticationTestingAPIName[] =
2511 "Web Authentication Testing API";
2512const char kEnableWebAuthenticationTestingAPIDescription[] =
2513 "Enable Web Authentication Testing API support, which disconnects the API "
2514 "implementation from the real world, and allows configuring virtual "
2515 "authenticator devices for testing";
Kim Paulhamus33f87b12018-01-18 22:00:422516
Brett Wilson7b44537e2017-08-18 01:38:282517#if defined(GOOGLE_CHROME_BUILD)
2518
2519const char kGoogleBrandedContextMenuName[] =
2520 "Google branding in the context menu";
2521const char kGoogleBrandedContextMenuDescription[] =
2522 "Shows a Google icon next to context menu items powered by Google "
2523 "services.";
2524
2525#endif // !defined(GOOGLE_CHROME_BUILD)
2526
2527#endif // !defined(OS_ANDROID)
2528
2529// Windows ---------------------------------------------------------------------
2530
2531#if defined(OS_WIN)
2532
2533const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
2534const char kCloudPrintXpsDescription[] =
2535 "XPS enables advanced options for classic printers connected to the Cloud "
2536 "Print with Chrome. Printers must be re-connected after changing this "
2537 "flag.";
2538
Dave Tapuskadd43469d2017-08-22 22:15:532539const char kDirectManipulationStylusName[] = "Direct Manipulation Stylus";
2540const char kDirectManipulationStylusDescription[] =
2541 "If enabled, Chrome will scroll web pages on stylus drag.";
2542
Brett Wilson7b44537e2017-08-18 01:38:282543const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
2544const char kDisablePostscriptPrintingDescription[] =
2545 "Disables PostScript generation when printing to PostScript capable "
2546 "printers, and uses EMF generation in its place.";
2547
2548const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
2549const char kEnableAppcontainerDescription[] =
2550 "Enables the use of an AppContainer on sandboxed processes to improve "
2551 "security.";
2552
2553const char kEnableD3DVsync[] = "D3D v-sync";
2554const char kEnableD3DVsyncDescription[] =
2555 "Produces v-sync signal by having D3D wait for vertical blanking interval "
2556 "to occur.";
2557
2558const char kEnableDesktopIosPromotionsName[] = "Desktop to iOS promotions.";
2559const char kEnableDesktopIosPromotionsDescription[] =
2560 "Enable Desktop to iOS promotions, and allow users to see them if they are "
2561 "eligible.";
2562
James Forshawfd0ce342018-02-14 09:55:392563const char kEnableGpuAppcontainerName[] = "Enable GPU AppContainer Lockdown.";
2564const char kEnableGpuAppcontainerDescription[] =
2565 "Enables the use of an AppContainer for the GPU sandboxed processes to "
2566 "improve security.";
2567
Brett Wilson7b44537e2017-08-18 01:38:282568const char kGdiTextPrinting[] = "GDI Text Printing";
2569const char kGdiTextPrintingDescription[] =
2570 "Use GDI to print text as simply text";
2571
Henrik Grunell67e56ef2018-04-10 14:04:092572const char kIncreaseInputAudioBufferSize[] = "Increase input audio buffer size";
2573const char kIncreaseInputAudioBufferSizeDescription[] =
2574 "Increases the input audio endpoint buffer to 100 ms.";
2575
Brett Wilson7b44537e2017-08-18 01:38:282576const char kTraceExportEventsToEtwName[] =
2577 "Enable exporting of tracing events to ETW.";
2578const char kTraceExportEventsToEtwDesription[] =
2579 "If enabled, trace events will be exported to the Event Tracing for "
2580 "Windows (ETW) and can then be captured by tools such as UIForETW or "
2581 "Xperf.";
2582
2583const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2584const char kUseWinrtMidiApiDescription[] =
2585 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
2586 "later).";
2587
2588const char kWindows10CustomTitlebarName[] = "Custom-drawn Windows 10 Titlebar";
2589const char kWindows10CustomTitlebarDescription[] =
2590 "If enabled, Chrome will draw the titlebar and caption buttons instead of "
2591 "deferring to Windows.";
2592
2593#endif // defined(OS_WIN)
2594
2595// Mac -------------------------------------------------------------------------
2596
2597#if defined(OS_MACOSX)
2598
Brett Wilson7b44537e2017-08-18 01:38:282599const char kAppWindowCyclingName[] = "Custom Window Cycling for Chrome Apps.";
2600const char kAppWindowCyclingDescription[] =
2601 "Changes the behavior of Cmd+` when a Chrome App becomes active. When "
2602 "enabled, Chrome Apps will not be cycled when Cmd+` is pressed from a "
2603 "browser window, and browser windows will not be cycled when a Chrome App "
2604 "is active.";
2605
Brett Wilson7b44537e2017-08-18 01:38:282606const char kFullscreenToolbarRevealName[] =
2607 "Enables the toolbar in fullscreen to reveal itself.";
2608const char kFullscreenToolbarRevealDescription[] =
2609 "Reveal the toolbar in fullscreen for a short period when the tab strip "
2610 "has changed.";
2611
2612const char kContentFullscreenName[] = "Improved Content Fullscreen";
2613const char kContentFullscreenDescription[] =
2614 "Fullscreen content window detaches from main browser window and goes to "
2615 "a new space without moving or changing the original browser window.";
2616
Lei Zhang2eca9082017-10-17 20:42:502617const char kDialogTouchBarName[] = "Dialog Touch Bar";
2618const char kDialogTouchBarDescription[] =
Brett Wilson7b44537e2017-08-18 01:38:282619 "Shows Dialog buttons on the Touch Bar.";
2620
2621const char kHostedAppsInWindowsName[] =
2622 "Allow hosted apps to be opened in windows";
2623const char kHostedAppsInWindowsDescription[] =
2624 "Allows hosted apps to be opened in windows instead of being limited to "
2625 "tabs.";
2626
Lei Zhang2eca9082017-10-17 20:42:502627const char kMacRTLName[] = "Enable RTL";
2628const char kMacRTLDescription[] = "Mirrors the UI for RTL language users";
Brett Wilson7b44537e2017-08-18 01:38:282629
Lei Zhang2eca9082017-10-17 20:42:502630const char kMacSystemShareMenuName[] = "Enable System Share Menu";
2631const char kMacSystemShareMenuDescription[] =
Leonard Grey2bdd08f2017-10-03 18:40:522632 "Enables sharing via macOS share extensions.";
2633
Lei Zhang2eca9082017-10-17 20:42:502634const char kMacTouchBarName[] = "Hardware Touch Bar";
2635const char kMacTouchBarDescription[] = "Control the use of the Touch Bar.";
Brett Wilson7b44537e2017-08-18 01:38:282636
2637const char kMacV2SandboxName[] = "Mac V2 Sandbox";
2638const char kMacV2SandboxDescription[] =
2639 "Eliminates the unsandboxed warmup phase and sandboxes processes for their "
2640 "entire life cycle.";
2641
2642const char kMacViewsNativeAppWindowsName[] = "Toolkit-Views App Windows.";
2643const char kMacViewsNativeAppWindowsDescription[] =
2644 "Controls whether to use Toolkit-Views based Chrome App windows.";
2645
2646const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
2647const char kMacViewsTaskManagerDescription[] =
2648 "Controls whether to use the Toolkit-Views based Task Manager.";
2649
2650const char kTabDetachingInFullscreenName[] =
2651 "Allow tab detaching in fullscreen";
2652const char kTabDetachingInFullscreenDescription[] =
2653 "Allow tabs to detach from the tabstrip when in fullscreen mode on Mac.";
2654
2655const char kTabStripKeyboardFocusName[] = "Tab Strip Keyboard Focus";
2656const char kTabStripKeyboardFocusDescription[] =
2657 "Enable keyboard focus for the tabs in the tab strip.";
2658
Brett Wilson7b44537e2017-08-18 01:38:282659#endif
2660
2661// Chrome OS -------------------------------------------------------------------
vabr0215a8e2017-03-28 12:47:342662
2663#if defined(OS_CHROMEOS)
2664
Brett Wilson7b44537e2017-08-18 01:38:282665const char kAcceleratedMjpegDecodeName[] =
2666 "Hardware-accelerated mjpeg decode for captured frame";
2667const char kAcceleratedMjpegDecodeDescription[] =
2668 "Enable hardware-accelerated mjpeg decode for captured frame where "
2669 "available.";
vabr0215a8e2017-03-28 12:47:342670
Brett Wilson7b44537e2017-08-18 01:38:282671const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click";
2672const char kAllowTouchpadThreeFingerClickDescription[] =
2673 "Enables touchpad three-finger-click as middle button.";
vabr0215a8e2017-03-28 12:47:342674
Brett Wilson7b44537e2017-08-18 01:38:282675const char kArcBootCompleted[] = "Load Android apps automatically";
2676const char kArcBootCompletedDescription[] =
2677 "Allow Android apps to start automatically after signing in.";
vabr0215a8e2017-03-28 12:47:342678
Lev Rumyantsev7a8544312017-08-18 19:26:512679const char kArcNativeBridgeExperimentName[] =
2680 "Enable native bridge experiment for ARC";
2681const char kArcNativeBridgeExperimentDescription[] =
2682 "Enables experimental native bridge feature.";
2683
lgchengecd1c1a62018-01-09 02:59:462684const char kArcUsbHostName[] = "Enable ARC USB host integration";
2685const char kArcUsbHostDescription[] =
2686 "Allow Android apps to use USB host feature on ChromeOS devices.";
2687
Kevin Cernekeeb7f96a52017-10-25 17:40:182688const char kArcVpnName[] = "Enable ARC VPN integration";
2689const char kArcVpnDescription[] =
2690 "Allow Android VPN clients to tunnel Chrome traffic.";
2691
Qiang Xu045aff222018-05-21 23:21:012692const char kAshDisableLoginDimAndBlurName[] =
2693 "Disable dimming and blur on login screen.";
2694const char kAshDisableLoginDimAndBlurDescription[] =
2695 "Disable dimming and blur on login screen.";
2696
2697const char kAshDisableSmoothScreenRotationName[] =
2698 "Disable smooth rotation animations.";
2699const char kAshDisableSmoothScreenRotationDescription[] =
2700 "Disable smooth rotation animations.";
2701
2702const char kAshEnableDisplayMoveWindowAccelsName[] =
2703 "Enable shortcuts for moving window between displays.";
2704const char kAshEnableDisplayMoveWindowAccelsDescription[] =
2705 "Enable shortcuts for moving window between displays.";
2706
2707const char kAshEnableKeyboardShortcutViewerName[] =
2708 "Enable keyboard shortcut viewer.";
2709const char kAshEnableKeyboardShortcutViewerDescription[] =
2710 "Enable keyboard shortcut viewer.";
2711
2712const char kAshEnableMirroredScreenName[] = "Enable mirrored screen mode.";
2713const char kAshEnableMirroredScreenDescription[] =
2714 "Enable the mirrored screen mode. This mode flips the screen image "
2715 "horizontally.";
2716
2717const char kAshEnableNewOverviewAnimationsName[] =
2718 "Enable new overview animations.";
2719const char kAshEnableNewOverviewAnimationsDescription[] =
2720 "Enables the new overview mode animations.";
2721
2722const char kAshEnablePersistentWindowBoundsName[] =
2723 "Enable persistent window bounds in multi-displays scenario.";
2724const char kAshEnablePersistentWindowBoundsDescription[] =
2725 "Enable persistent window bounds in multi-displays scenario.";
2726
2727const char kAshEnableTrilinearFilteringName[] = "Enable trilinear filtering.";
2728const char kAshEnableTrilinearFilteringDescription[] =
2729 "Enable trilinear filtering.";
2730
Brett Wilson7b44537e2017-08-18 01:38:282731const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
2732const char kAshEnableUnifiedDesktopDescription[] =
2733 "Enable unified desktop mode which allows a window to span multiple "
2734 "displays.";
vabr0215a8e2017-03-28 12:47:342735
Qiang Xu045aff222018-05-21 23:21:012736const char kAshShelfColorName[] = "Shelf color in Chrome OS system UI";
2737const char kAshShelfColorDescription[] =
2738 "Enables/disables the shelf color to be a derived from the wallpaper. The "
2739 "--ash-shelf-color-scheme flag defines how that color is derived.";
2740
2741const char kAshShelfColorScheme[] = "Shelf color scheme in Chrome OS System UI";
2742const char kAshShelfColorSchemeDescription[] =
2743 "Specify how the color is derived from the wallpaper. This flag is only "
2744 "used when the --ash-shelf-color flag is enabled. Defaults to Dark & Muted";
2745const char kAshShelfColorSchemeLightVibrant[] = "Light & Vibrant";
2746const char kAshShelfColorSchemeNormalVibrant[] = "Normal & Vibrant";
2747const char kAshShelfColorSchemeDarkVibrant[] = "Dark & Vibrant";
2748const char kAshShelfColorSchemeLightMuted[] = "Light & Muted";
2749const char kAshShelfColorSchemeNormalMuted[] = "Normal & Muted";
2750const char kAshShelfColorSchemeDarkMuted[] = "Dark & Muted";
2751
Sean Kau5e956192017-10-06 22:25:172752const char kBulkPrintersName[] = "Bulk Printers Policy";
2753const char kBulkPrintersDescription[] = "Enables the new bulk printers policy";
2754
Brett Wilson7b44537e2017-08-18 01:38:282755const char kCaptivePortalBypassProxyName[] =
2756 "Bypass proxy for Captive Portal Authorization";
2757const char kCaptivePortalBypassProxyDescription[] =
2758 "If proxy is configured, it usually prevents from authorization on "
2759 "different captive portals. This enables opening captive portal "
2760 "authorization dialog in a separate window, which ignores proxy settings.";
vabr0215a8e2017-03-28 12:47:342761
Brett Wilson7b44537e2017-08-18 01:38:282762const char kCrOSComponentName[] = "Chrome OS Component";
2763const char kCrOSComponentDescription[] =
Xiaochu Liu4c1b75d2017-12-18 23:52:082764 "Disable the use of componentized escpr CUPS filter.";
vabr0215a8e2017-03-28 12:47:342765
Xiaochu Liu51d03fd2017-09-08 23:51:022766const char kCrOSContainerName[] = "Chrome OS Container";
2767const char kCrOSContainerDescription[] =
2768 "Enable the use of Chrome OS Container utility.";
2769
Brett Wilson7b44537e2017-08-18 01:38:282770const char kCrosRegionsModeName[] = "Cros-regions load mode";
2771const char kCrosRegionsModeDescription[] =
2772 "This flag controls cros-regions load mode";
2773const char kCrosRegionsModeDefault[] = "Default";
2774const char kCrosRegionsModeOverride[] = "Override VPD values.";
2775const char kCrosRegionsModeHide[] = "Hide VPD values.";
vabr0215a8e2017-03-28 12:47:342776
Jacob Dufault2becbc482017-08-25 00:36:352777const char kDisableLockScreenAppsName[] = "Disable lock screen note taking";
2778const char kDisableLockScreenAppsDescription[] =
2779 "Disable new-note action handler apps on the lock screen. The user will "
2780 "not be able to launch the preferred note-taking action from the lock "
2781 "screen, provided that the app supports lock screen note taking.";
2782
Qiang Xu045aff222018-05-21 23:21:012783const char kDisableNetworkSettingsConfigName[] =
2784 "Disable Settings based Network Configuration";
2785const char kDisableNetworkSettingsConfigDescription[] =
2786 "Disables the Settings based network configuration UI and restores the "
2787 "Views based configuration dialog.";
2788
2789const char kDisableSystemTimezoneAutomaticDetectionName[] =
2790 "SystemTimezoneAutomaticDetection policy support";
2791const char kDisableSystemTimezoneAutomaticDetectionDescription[] =
2792 "Disable system timezone automatic detection device policy.";
2793
Sammie Quonef6b4882017-09-14 16:50:052794const char kDisableTabletAutohideTitlebarsName[] =
2795 "Disable autohide titlebars in tablet mode";
2796const char kDisableTabletAutohideTitlebarsDescription[] =
2797 "Disable tablet mode autohide titlebars functionality. The user will be "
2798 "able to see the titlebar in tablet mode.";
2799
Xiaoqian Dai24b33eb2018-04-10 21:01:572800const char kDisableTabletSplitViewName[] = "Disable split view in Tablet mode";
2801const char kDisableTabletSplitViewDescription[] =
2802 "Disable split view for Chrome OS tablet mode.";
2803
Qiang Xu53d1a5832018-05-24 18:44:192804const char kEnableAppShortcutSearchName[] =
2805 "Enable app shortcut search in launcher";
2806const char kEnableAppShortcutSearchDescription[] =
2807 "Enables app shortcut search in launcher";
2808
Lei Zhang2eca9082017-10-17 20:42:502809const char kEnableBackgroundBlurName[] = "Enable background blur.";
2810const char kEnableBackgroundBlurDescription[] =
Wenzhao Zang50fb0b22017-11-07 01:38:422811 "Enables background blur for the Peeking Launcher and Tab Switcher.";
Alex Newcomer43cb7f12017-07-28 17:37:392812
Brett Wilson7b44537e2017-08-18 01:38:282813const char kEnableChromevoxArcSupportName[] = "ChromeVox ARC support";
2814const char kEnableChromevoxArcSupportDescription[] =
2815 "Enable ChromeVox screen reader features in ARC";
vabr0215a8e2017-03-28 12:47:342816
F#m75862c92018-01-25 19:10:472817const char kEnableDisplayZoomSettingName[] = "Enable display zoom settings";
2818const char kEnableDisplayZoomSettingDescription[] =
2819 "Allows the user to modify the display size or zoom via the chrome display "
2820 "settings page.";
2821
Xiaoqian Dai82d99192018-05-25 18:51:352822const char kEnableDragTabsInTabletModeName[] =
2823 "Enable dragging tabs in tablet mode";
2824const char kEnableDragTabsInTabletModeDescription[] =
2825 "Allows the user to drag the tabs out of a browser window in tablet mode.";
2826
Brett Wilson7b44537e2017-08-18 01:38:282827const char kEnableEhvInputName[] =
2828 "Emoji, handwriting and voice input on opt-in IME menu";
2829const char kEnableEhvInputDescription[] =
2830 "Enable access to emoji, handwriting and voice input form opt-in IME menu.";
vabr0215a8e2017-03-28 12:47:342831
Brett Wilson7b44537e2017-08-18 01:38:282832const char kEnableEncryptionMigrationName[] =
2833 "Enable encryption migration of user data";
2834const char kEnableEncryptionMigrationDescription[] =
2835 "If enabled and the device supports ARC, the user will be asked to update "
2836 "the encryption of user data when the user signs in.";
vabr0215a8e2017-03-28 12:47:342837
Blake O'Hare9e9317b22017-10-24 02:49:352838const char kEnableFloatingVirtualKeyboardName[] =
2839 "Enable floating virtual keyboard";
2840const char kEnableFloatingVirtualKeyboardDescription[] =
2841 "If enabled, the keyboard will use floating behavior by default.";
2842
Qiang Xu045aff222018-05-21 23:21:012843const char kEnableFullscreenHandwritingVirtualKeyboardName[] =
2844 "Enable full screen handwriting virtual keyboard";
2845const char kEnableFullscreenHandwritingVirtualKeyboardDescription[] =
2846 "If enabled, the handwriting virtual keyboard will allow user to write "
2847 "anywhere on the screen";
2848
2849const char kEnableHomeLauncherName[] = "Enable home launcher";
2850const char kEnableHomeLauncherDescription[] =
2851 "Enable home launcher in tablet mode.";
2852
Brett Wilson7b44537e2017-08-18 01:38:282853const char kEnableImeMenuName[] = "Enable opt-in IME menu";
2854const char kEnableImeMenuDescription[] =
2855 "Enable access to the new IME menu in the Language Settings page.";
vabr0215a8e2017-03-28 12:47:342856
Qiang Xu045aff222018-05-21 23:21:012857const char kEnableNewWallpaperPickerName[] = "Enable new wallpaper picker";
2858const char kEnableNewWallpaperPickerDescription[] =
2859 "Enable the redesigned wallpaper picker with new wallpaper collections.";
2860
2861const char kEnablePerUserTimezoneName[] = "Per-user time zone preferences.";
2862const char kEnablePerUserTimezoneDescription[] =
2863 "Chrome OS system timezone preference is stored and handled for each user "
2864 "individually.";
2865
2866const char kEnableSettingsShortcutSearchName[] =
2867 "Enable Settings shortcut search";
2868const char kEnableSettingsShortcutSearchDescription[] =
2869 "Enable Settings shortcut search in launcher.";
2870
Darren Shen3e49c63d2018-03-28 04:45:502871const char kEnableStylusVirtualKeyboardName[] =
2872 "Enable stylus virtual keyboard";
2873const char kEnableStylusVirtualKeyboardDescription[] =
2874 "If enabled, tapping with a stylus will show the handwriting virtual "
2875 "keyboard.";
2876
Jordy Greenblatt2f23df22018-02-22 19:49:192877const char kEnableUnifiedMultiDeviceSettingsName[] =
2878 "Enable unified MultiDevice settings";
2879const char kEnableUnifiedMultiDeviceSettingsDescription[] =
2880 "If enabled, the Chrome OS Settings UI will include a menu for the unified "
2881 "MultiDevice settings.";
2882
2883const char kEnableUnifiedMultiDeviceSetupName[] =
2884 "Enable unified MultiDevice setup";
2885const char kEnableUnifiedMultiDeviceSetupDescription[] =
2886 "Enable the device to setup all MultiDevice services in a single workflow.";
2887
Klemen Kozjek05fc4512017-10-18 12:51:102888const char kEnableZipArchiverPackerName[] = "ZIP archiver - Packer";
2889const char kEnableZipArchiverPackerDescription[] =
2890 "Enable the ability to archive files on Drive in the Files app";
2891
Brett Wilson7b44537e2017-08-18 01:38:282892const char kEolNotificationName[] = "Disable Device End of Life notification.";
2893const char kEolNotificationDescription[] =
2894 "Disable Notifcation when Device is End of Life.";
2895
2896const char kExperimentalAccessibilityFeaturesName[] =
2897 "Experimental accessibility features";
2898const char kExperimentalAccessibilityFeaturesDescription[] =
2899 "Enable additional accessibility features in the Settings page.";
2900
2901const char kExperimentalInputViewFeaturesName[] =
2902 "Experimental input view features";
2903const char kExperimentalInputViewFeaturesDescription[] =
2904 "Enable experimental features for IME input views.";
2905
2906const char kFileManagerTouchModeName[] = "Files App. touch mode";
2907const char kFileManagerTouchModeDescription[] =
2908 "Touchscreen-specific interactions of the Files app.";
2909
2910const char kFirstRunUiTransitionsName[] =
2911 "Animated transitions in the first-run tutorial";
2912const char kFirstRunUiTransitionsDescription[] =
2913 "Transitions during first-run tutorial are animated.";
2914
Brett Wilson7b44537e2017-08-18 01:38:282915const char kForceEnableStylusToolsName[] = "Force enable stylus features";
2916const char kForceEnableStylusToolsDescription[] =
2917 "Forces display of the stylus tools menu in the shelf and the stylus "
2918 "section in settings, even if there is no attached stylus device.";
2919
2920const char kGestureEditingName[] = "Gesture editing for the virtual keyboard.";
2921const char kGestureEditingDescription[] =
2922 "Enable/Disable gesture editing option in the settings page for the "
2923 "virtual keyboard.";
2924
2925const char kGestureTypingName[] = "Gesture typing for the virtual keyboard.";
2926const char kGestureTypingDescription[] =
2927 "Enable/Disable gesture typing option in the settings page for the virtual "
2928 "keyboard.";
2929
2930const char kInputViewName[] = "Input views";
2931const char kInputViewDescription[] =
2932 "Enable IME extensions to supply custom views for user input such as "
2933 "virtual keyboards.";
2934
Megumi Hattori5a0d4182018-03-06 11:09:502935const char kLockScreenNotificationName[] = "Lock screen notification";
2936const char kLockScreenNotificationDescription[] =
2937 "Enable notifications on the lock screen.";
2938
Qiang Xu045aff222018-05-21 23:21:012939const char kMaterialDesignInkDropAnimationSpeedName[] =
2940 "Material design ink drop animation speed";
2941const char kMaterialDesignInkDropAnimationSpeedDescription[] =
2942 "Sets the speed of the experimental visual feedback animations for "
2943 "material design.";
2944const char kMaterialDesignInkDropAnimationFast[] = "Fast";
2945const char kMaterialDesignInkDropAnimationSlow[] = "Slow";
2946
Brett Wilson7b44537e2017-08-18 01:38:282947const char kMemoryPressureThresholdName[] =
2948 "Memory discard strategy for advanced pressure handling";
2949const char kMemoryPressureThresholdDescription[] =
2950 "Memory discarding strategy to use";
2951const char kConservativeThresholds[] =
2952 "Conservative memory pressure release strategy";
2953const char kAggressiveCacheDiscardThresholds[] =
2954 "Aggressive cache release strategy";
2955const char kAggressiveTabDiscardThresholds[] =
2956 "Aggressive tab release strategy";
2957const char kAggressiveThresholds[] =
2958 "Aggressive tab and cache release strategy";
2959
2960const char kMtpWriteSupportName[] = "MTP write support";
2961const char kMtpWriteSupportDescription[] =
2962 "MTP write support in File System API (and file manager). In-place editing "
2963 "operations are not supported.";
2964
2965const char kMultideviceName[] = "Enable multidevice features";
2966const char kMultideviceDescription[] =
2967 "Enables UI for controlling multidevice features.";
vabr0215a8e2017-03-28 12:47:342968
Kyle Horimoto027590fb2018-02-13 22:19:482969const char kMultiDeviceApiName[] = "Enables the MultiDevice API";
2970const char kMultiDeviceApiDescription[] =
2971 "Enable Mojo-based API which provides synced device metadata and the "
2972 "ability to connect to other devices associated the logged-in Google "
2973 "account.";
2974
Bailey Berrodca8eeca02017-11-18 00:49:122975const char kNativeSmbName[] = "Native Smb Client";
2976const char kNativeSmbDescription[] =
2977 "If enabled, allows connections to an smb filesystem via Files app";
Bailey Berrofc0da1b2017-11-02 11:02:302978
vabr0215a8e2017-03-28 12:47:342979const char kNetworkPortalNotificationName[] =
2980 "Notifications about captive portals";
vabr0215a8e2017-03-28 12:47:342981const char kNetworkPortalNotificationDescription[] =
2982 "If enabled, notification is displayed when device is connected to a "
2983 "network behind captive portal.";
2984
Brett Wilson7b44537e2017-08-18 01:38:282985const char kNewKoreanImeName[] = "New Korean IME";
2986const char kNewKoreanImeDescription[] =
2987 "New Korean IME, which is based on Google Input Tools' HMM engine.";
vabr0215a8e2017-03-28 12:47:342988
Brett Wilson7b44537e2017-08-18 01:38:282989const char kNewZipUnpackerName[] = "New ZIP unpacker";
2990const char kNewZipUnpackerDescription[] =
2991 "New ZIP unpacker flow, based on the File System Provider API.";
vabr0215a8e2017-03-28 12:47:342992
Qiang Xu045aff222018-05-21 23:21:012993const char kOfficeEditingComponentAppName[] =
2994 "Office Editing for Docs, Sheets & Slides";
2995const char kOfficeEditingComponentAppDescription[] =
2996 "Office Editing for Docs, Sheets & Slides for testing purposes.";
2997
Brett Wilson7b44537e2017-08-18 01:38:282998const char kPhysicalKeyboardAutocorrectName[] = "Physical keyboard autocorrect";
2999const char kPhysicalKeyboardAutocorrectDescription[] =
3000 "Enable physical keyboard autocorrect for US keyboard, which can provide "
3001 "suggestions as typing on physical keyboard.";
vabr0215a8e2017-03-28 12:47:343002
3003const char kPrinterProviderSearchAppName[] =
3004 "Chrome Web Store Gallery app for printer drivers";
vabr0215a8e2017-03-28 12:47:343005const char kPrinterProviderSearchAppDescription[] =
3006 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:193007 "searches Chrome Web Store for extensions that support printing to a USB "
3008 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:343009
Brett Wilson7b44537e2017-08-18 01:38:283010const char kQuickUnlockPinName[] = "Quick Unlock (PIN)";
3011const char kQuickUnlockPinDescription[] =
3012 "Enabling PIN quick unlock allows you to use a PIN to unlock your ChromeOS "
3013 "device on the lock screen after you have signed into your device.";
3014const char kQuickUnlockPinSignin[] = "Enable PIN when logging in.";
3015const char kQuickUnlockPinSigninDescription[] =
3016 "Enabling PIN allows you to use a PIN to sign in and unlock your ChromeOS "
3017 "device. After changing this flag PIN needs to be set up again.";
3018const char kQuickUnlockFingerprint[] = "Quick Unlock (Fingerprint)";
3019const char kQuickUnlockFingerprintDescription[] =
3020 "Enabling fingerprint quick unlock allows you to setup and use a "
3021 "fingerprint to unlock your Chromebook on the lock screen after you have "
3022 "signed into your device.";
vabr0215a8e2017-03-28 12:47:343023
James Cook0ba192bf2017-12-01 20:53:113024const char kShowTapsName[] = "Show taps";
3025const char kShowTapsDescription[] =
3026 "Draws a circle at each touch point, which makes touch points more obvious "
3027 "when projecting or mirroring the display. Similar to the Android OS "
3028 "developer option.";
3029
3030const char kShowTouchHudName[] = "Show HUD for touch points";
3031const char kShowTouchHudDescription[] =
3032 "Shows a trail of colored dots for the last few touch points. Pressing "
3033 "Ctrl-Alt-I shows a heads-up display view in the top-left corner. Helps "
3034 "debug hardware issues that generate spurious touch events.";
3035
Chung-Sheng Wu468b0b32017-09-01 14:41:573036const char kSysInternalsName[] = "Enable Sys-Internals";
3037const char kSysInternalsDescription[] =
3038 "If enabled, user can monitor system information at "
3039 "chrome://sys-internals.";
3040
James Cooka9384092018-05-23 02:54:263041const char kTapVisualizerAppName[] = "Show taps with mojo app";
3042const char kTapVisualizerAppDescription[] =
3043 "Use an out-of-process mojo app to show touch points.";
3044
Brett Wilson7b44537e2017-08-18 01:38:283045const char kTeamDrivesName[] = "Enable Team Drives Integration";
3046const char kTeamDrivesDescription[] =
3047 "If enabled, files under Team Drives will appear in the Files app.";
vabr0215a8e2017-03-28 12:47:343048
Brett Wilson7b44537e2017-08-18 01:38:283049const char kTetherName[] = "Instant Tethering";
3050const char kTetherDescription[] =
3051 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
3052 "phone to share its Internet connection with this device.";
stanisc14bed0b132017-05-10 17:46:373053
Brett Wilson7b44537e2017-08-18 01:38:283054const char kTouchscreenCalibrationName[] =
3055 "Enable/disable touchscreen calibration option in material design settings";
3056const char kTouchscreenCalibrationDescription[] =
3057 "If enabled, the user can calibrate the touch screen displays in "
3058 "chrome://settings/display.";
yhanadac5bff5b2017-05-18 06:37:093059
Qiang Xu045aff222018-05-21 23:21:013060const char kUiDevToolsName[] = "Enable native UI inspection";
3061const char kUiDevToolsDescription[] =
3062 "Enables inspection of native UI elements. For local inspection use "
3063 "chrome://inspect#other";
3064
3065const char kUiShowCompositedLayerBordersName[] =
3066 "Show UI composited layer borders";
3067const char kUiShowCompositedLayerBordersDescription[] =
3068 "Show border around composited layers created by UI.";
3069const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
3070const char kUiShowCompositedLayerBordersSurface[] = "Surface";
3071const char kUiShowCompositedLayerBordersLayer[] = "Layer";
3072const char kUiShowCompositedLayerBordersAll[] = "All";
3073
3074const char kUiSlowAnimationsName[] = "Slow UI animations";
3075const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
3076
Mitsuru Oshima63d3f2a2017-08-23 00:12:113077// Force UI Mode
3078const char kUiModeName[] = "Force Ui Mode";
3079const char kUiModeDescription[] =
3080 R"*(This flag can be used to force a certain mode on to a chromebook, )*"
3081 R"*(despite its current orientation. "Tablet" means that the )*"
3082 R"*(chromebook will act as if it were in tablet mode. "Clamshell" )*"
3083 R"*(means that the chromebook will act as if it were in clamshell )*"
3084 R"*(mode . "Auto" means that the chromebook will alternate between )*"
3085 R"*(the two, based on its orientation.)*";
3086const char kUiModeTablet[] = "TouchView";
3087const char kUiModeClamshell[] = "Clamshell";
3088const char kUiModeAuto[] = "Auto (default)";
3089
James Cooka1bcfa9a2018-01-30 00:18:403090const char kUseMashName[] = "Out-of-process system UI (mash)";
3091const char kUseMashDescription[] =
3092 "Runs the mojo UI service (mus) and the ash window manager and system UI "
3093 "in a separate process.";
Brett Wilson7b44537e2017-08-18 01:38:283094
Miguel Casas-Sanchez8ba32f92017-11-07 05:03:343095// TODO(mcasas): remove after https://crbug.com/771345.
3096const char kUseMonitorColorSpaceName[] = "Use monitor color space";
3097const char kUseMonitorColorSpaceDescription[] =
3098 "Enables Chrome to use the color space information provided by the monitor"
3099 " instead of the default sRGB color space.";
3100
Brett Wilson7b44537e2017-08-18 01:38:283101const char kVideoPlayerChromecastSupportName[] =
3102 "Experimental Chromecast support for Video Player";
3103const char kVideoPlayerChromecastSupportDescription[] =
3104 "This option enables experimental Chromecast support for Video Player app "
3105 "on ChromeOS.";
3106
3107const char kVirtualKeyboardName[] = "Virtual Keyboard";
3108const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
3109
3110const char kVirtualKeyboardOverscrollName[] = "Virtual Keyboard Overscroll";
3111const char kVirtualKeyboardOverscrollDescription[] =
3112 "Enables virtual keyboard overscroll support.";
3113
3114const char kVoiceInputName[] = "Voice input on virtual keyboard";
3115const char kVoiceInputDescription[] =
3116 "Enables voice input on virtual keyboard.";
3117
3118const char kWakeOnPacketsName[] = "Wake On Packets";
3119const char kWakeOnPacketsDescription[] =
3120 "Enables waking the device based on the receipt of some network packets.";
orenb21da031c2017-06-30 21:24:203121
Qiang Xu53d1a5832018-05-24 18:44:193122const char kZipArchiverUnpackerName[] = "ZIP archiver - Unpacker";
3123const char kZipArchiverUnpackerDescription[] =
3124 "Enable or disable the ability to unpack archives in incognito mode";
3125
yhanadac5bff5b2017-05-18 06:37:093126#endif // defined(OS_CHROMEOS)
3127
Brett Wilson7b44537e2017-08-18 01:38:283128// Random platform combinations -----------------------------------------------
3129
3130#if defined(OS_WIN) || defined(OS_LINUX)
3131
3132const char kEnableInputImeApiName[] = "Enable Input IME API";
3133const char kEnableInputImeApiDescription[] =
3134 "Enable the use of chrome.input.ime API.";
3135
Tom Anderson6cbd5052018-05-03 23:49:543136#if !defined(OS_CHROMEOS)
3137
3138const char kWarnBeforeQuittingFlagName[] = "Warn Before Quitting";
3139const char kWarnBeforeQuittingFlagDescription[] =
3140 "Confirm to quit by either holding the quit shortcut or pressing it twice.";
3141
3142#endif // !defined(OS_CHROMEOS)
3143
Brett Wilson7b44537e2017-08-18 01:38:283144#endif // defined(OS_WIN) || defined(OS_LINUX)
3145
3146#if defined(OS_WIN) || defined(OS_MACOSX)
3147
3148const char kAutomaticTabDiscardingName[] = "Automatic tab discarding";
3149const char kAutomaticTabDiscardingDescription[] =
3150 "If enabled, tabs get automatically discarded from memory when the system "
3151 "memory is low. Discarded tabs are still visible on the tab strip and get "
3152 "reloaded when clicked on. Info about discarded tabs can be found at "
3153 "chrome://discards.";
3154
3155#endif // defined(OS_WIN) || defined(OS_MACOSX)
3156
Elly Fong-Jonesdfaf8532018-05-29 18:20:483157#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
3158
3159const char kUiFoodName[] = "Use all upcoming UI features";
3160const char kUiFoodDescription[] = "Use all upcoming UI features.";
3161
3162#endif
3163
Brett Wilson7b44537e2017-08-18 01:38:283164// Feature flags --------------------------------------------------------------
3165
3166#if BUILDFLAG(ENABLE_VR)
3167
David Dorwin5a496c32017-11-17 01:45:053168const char kWebVrVsyncAlignName[] = "WebVR VSync-aligned timing";
3169const char kWebVrVsyncAlignDescription[] =
3170 "Align WebVR application rendering with VSync for smoother animations.";
3171
Brett Wilson7b44537e2017-08-18 01:38:283172#if defined(OS_ANDROID)
3173
Yash Malikb78e72a72018-02-21 09:14:103174const char kVrWebInputEditingName[] = "VR browsing web input editing";
3175const char kVrWebInputEditingDescription[] =
3176 "Allow editing web input fields while in VR mode.";
3177
David Dorwin5a496c32017-11-17 01:45:053178const char kVrBrowsingExperimentalFeaturesName[] =
3179 "VR browsing experimental features";
3180const char kVrBrowsingExperimentalFeaturesDescription[] =
3181 "Experimental VR browsing features that are under development.";
Brett Wilson7b44537e2017-08-18 01:38:283182
David Dorwin5a496c32017-11-17 01:45:053183const char kVrBrowsingExperimentalRenderingName[] =
3184 "VR browsing experimental rendering features";
3185const char kVrBrowsingExperimentalRenderingDescription[] =
3186 "Experimental rendering features for VR browsing (e.g. power-saving "
3187 "rendering modes).";
Michael Thiessenb480fe92017-10-26 16:25:103188
David Dorwin5a496c32017-11-17 01:45:053189const char kVrBrowsingInCustomTabName[] = "VR browsing in Custom Tabs";
3190const char kVrBrowsingInCustomTabDescription[] =
3191 "Allow browsing within a VR headset while in a Custom Tab.";
3192
Michael Thiessen37895912018-01-19 20:15:543193const char kVrIconInDaydreamHomeName[] = "Chrome icon in Daydream Home";
3194const char kVrIconInDaydreamHomeDescription[] =
3195 "Adds an icon to Daydream Home that allows launching Chrome in VR.";
3196
David Dorwin5a496c32017-11-17 01:45:053197const char kWebVrAutopresentFromIntentName[] =
3198 "WebVR auto presentation from intents";
3199const char kWebVrAutopresentFromIntentDescription[] =
3200 "Allow auto presentation of WebVR content from trusted first-party apps.";
Brett Wilson7b44537e2017-08-18 01:38:283201
3202#endif // OS_ANDROID
3203
Bill Orr103ed272018-02-14 21:23:053204#if BUILDFLAG(ENABLE_OCULUS_VR)
3205const char kOculusVRName[] = "Oculus hardware support";
3206const char kOculusVRDescription[] =
3207 "If enabled, Chrome will use Oculus devices for VR (supported only on "
3208 "Windows 10 or later).";
3209#endif // ENABLE_OCULUS_VR
3210
Bill Orr49527562017-11-22 16:58:483211#if BUILDFLAG(ENABLE_OPENVR)
3212const char kOpenVRName[] = "OpenVR hardware support";
3213const char kOpenVRDescription[] =
Bill Orr5056e692018-01-17 02:08:073214 "If enabled, Chrome will use OpenVR devices for VR (supported only on "
3215 "Windows 10 or later).";
Bill Orr49527562017-11-22 16:58:483216#endif // ENABLE_OPENVR
3217
Brett Wilson7b44537e2017-08-18 01:38:283218#endif // ENABLE_VR
3219
Nico Weberaf3b00b2017-09-11 17:58:173220#if BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:283221
3222const char kNaclDebugMaskName[] =
3223 "Restrict Native Client GDB-based debugging by pattern";
3224const char kNaclDebugMaskDescription[] =
3225 "Restricts Native Client application GDB-based debugging by URL of "
3226 "manifest file. Native Client GDB-based debugging must be enabled for this "
3227 "option to work.";
3228const char kNaclDebugMaskChoiceDebugAll[] = "Debug everything.";
3229const char kNaclDebugMaskChoiceExcludeUtilsPnacl[] =
3230 "Debug everything except secure shell and the PNaCl translator.";
3231const char kNaclDebugMaskChoiceIncludeDebug[] =
3232 "Debug only if manifest URL ends with debug.nmf.";
3233
3234const char kNaclDebugName[] = "Native Client GDB-based debugging";
3235const char kNaclDebugDescription[] =
3236 "Enable GDB debug stub. This will stop a Native Client application on "
3237 "startup and wait for nacl-gdb (from the NaCl SDK) to attach to it.";
3238
3239const char kNaclName[] = "Native Client";
3240const char kNaclDescription[] =
3241 "Support Native Client for all web applications, even those that were not "
3242 "installed from the Chrome Web Store.";
3243
3244const char kPnaclSubzeroName[] = "Force PNaCl Subzero";
3245const char kPnaclSubzeroDescription[] =
3246 "Force the use of PNaCl's fast Subzero translator for all pexe files.";
3247
Nico Weberaf3b00b2017-09-11 17:58:173248#endif // BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:283249
Brett Wilson7b44537e2017-08-18 01:38:283250const char kWebrtcH264WithOpenh264FfmpegName[] =
3251 "WebRTC H.264 software video encoder/decoder";
3252const char kWebrtcH264WithOpenh264FfmpegDescription[] =
3253 "When enabled, an H.264 software video encoder/decoder pair is included. "
3254 "If a hardware encoder/decoder is also available it may be used instead of "
3255 "this encoder/decoder.";
3256
Brett Wilson7b44537e2017-08-18 01:38:283257#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3258
3259const char kAutofillCreditCardUploadName[] =
3260 "Enable offering upload of Autofilled credit cards";
3261const char kAutofillCreditCardUploadDescription[] =
3262 "Enables a new option to upload credit cards to Google Payments for sync "
3263 "to all Chrome devices.";
3264
3265#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
3266
Becca Hughesdc96e842018-05-04 22:48:283267#if defined(OS_ANDROID)
3268
3269const char kDisplayCutoutAPIName[] =
3270 "Enable support for the Display Cutout API";
3271const char kDisplayCutoutAPIDescription[] =
3272 "Enables developers to support devices that have a display cutout.";
3273
3274#endif // defined(OS_ANDROID)
3275
Brett Wilson7b44537e2017-08-18 01:38:283276// ============================================================================
3277// Don't just add flags to the end, put them in the right section in
3278// alphabetical order just like the header file.
3279// ============================================================================
3280
vabr0215a8e2017-03-28 12:47:343281} // namespace flag_descriptions