blob: e54ec72551f280553b09a9992ed8c60a6fcb45a3 [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
Khushalba202212017-07-12 19:53:4943const char kAsyncImageDecodingName[] = "AsyncImageDecoding";
44const char kAsyncImageDecodingDescription[] =
45 "Enables asynchronous decoding of images from raster for web content";
46
Brett Wilsonf27ff602017-07-07 22:28:4747const char kAutoplayPolicyName[] = "Autoplay policy";
48const char kAutoplayPolicyDescription[] =
49 "Policy used when deciding if audio or video is allowed to autoplay.";
50
51const char kAutoplayPolicyUserGestureRequiredForCrossOrigin[] =
52 "User gesture is required for cross-origin iframes.";
53const char kAutoplayPolicyNoUserGestureRequired[] =
54 "No user gesture is required.";
55const char kAutoplayPolicyUserGestureRequired[] = "User gesture is required.";
56const char kAutoplayPolicyDocumentUserActivation[] =
57 "Document user activation is required.";
58
59const char kBackgroundVideoTrackOptimizationName[] =
60 "Optimize background video playback.";
61const char kBackgroundVideoTrackOptimizationDescription[] =
62 "Disable video tracks when the video is played in the background to "
63 "optimize performance.";
64
65const char kBleAdvertisingInExtensionsName[] = "BLE Advertising in Chrome Apps";
66const char kBleAdvertisingInExtensionsDescription[] =
67 "Enables BLE Advertising in Chrome Apps. BLE Advertising might interfere "
68 "with regular use of Bluetooth Low Energy features.";
69
Charles Harrisond629cc62017-10-05 01:39:5470const char kBlockTabUndersName[] = "Block tab-unders";
71const char kBlockTabUndersDescription[] =
72 "Blocks tab-unders in Chrome with some native UI to allow the user to "
73 "proceed.";
74
Brett Wilsonf27ff602017-07-07 22:28:4775const char kBrowserSideNavigationName[] = "Enable browser side navigation";
horodb71a5a2017-06-09 16:08:2476const char kBrowserSideNavigationDescription[] =
horo3beccfb2017-06-19 14:47:0177 "Enable browser side navigation (aka PlzNavigate).";
horodb71a5a2017-06-09 16:08:2478
Brett Wilsonf27ff602017-07-07 22:28:4779const char kBrowserTaskSchedulerName[] = "Task Scheduler";
80const char kBrowserTaskSchedulerDescription[] =
81 "Enables redirection of some task posting APIs to the task scheduler.";
82
83const char kBypassAppBannerEngagementChecksName[] =
84 "Bypass user engagement checks";
85const char kBypassAppBannerEngagementChecksDescription[] =
86 "Bypasses user engagement checks for displaying app banners, such as "
87 "requiring that users have visited the site before and that the banner "
88 "hasn't been shown recently. This allows developers to test that other "
89 "eligibility requirements for showing app banners, such as having a "
90 "manifest, are met.";
91
Marc Treib026acc532017-10-17 18:39:5992const char kCaptureThumbnailOnNavigatingAwayName[] =
93 "Capture page thumbnail on navigating away";
94const char kCaptureThumbnailOnNavigatingAwayDescription[] =
95 "Capture a page thumbnail (for use on the New Tab page) when navigating "
96 "away from the current page, in addition to other times a thumbnail may be "
97 "captured.";
98
Brett Wilsonf27ff602017-07-07 22:28:4799const char kCastStreamingHwEncodingName[] =
100 "Cast Streaming hardware video encoding";
101const char kCastStreamingHwEncodingDescription[] =
102 "This option enables support in Cast Streaming for encoding video streams "
103 "using platform hardware.";
104
Amber Won478561d2017-08-19 01:02:59105const char kClickToOpenPDFName[] = "Click to open embedded PDFs";
106const char kClickToOpenPDFDescription[] =
107 "When the PDF plugin is unavailable, show a click-to-open placeholder for "
108 "embedded PDFs.";
109
Brett Wilsonf27ff602017-07-07 22:28:47110const char kCloudImportName[] = "Cloud Import";
111const char kCloudImportDescription[] = "Allows the cloud-import feature.";
112
Christopher Cameronceb8727d2017-09-07 23:53:16113const char kForceColorProfileSRGB[] = "sRGB";
114const char kForceColorProfileP3[] = "Display P3 D65";
115const char kForceColorProfileColorSpin[] = "Color spin with gamma 2.4";
116const char kForceColorProfileHdr[] = "scRGB linear (HDR where available)";
117
118const char kForceColorProfileName[] = "Force color profile";
119const char kForceColorProfileDescription[] =
120 "Forces Chrome to use a specific color profile instead of the color "
121 "of the window's current monitor, as specified by the operating system.";
122
Brett Wilsonf27ff602017-07-07 22:28:47123const char kCompositedLayerBordersName[] = "Composited render layer borders";
124const char kCompositedLayerBordersDescription[] =
125 "Renders a border around composited Render Layers to help debug and study "
126 "layer compositing.";
127
128const char kContextualSuggestionsCarouselName[] =
129 "Enable Contextual Suggestions";
130const char kContextualSuggestionsCarouselDescription[] =
131 "If enabled, shows contextual suggestions in a horizontal carousel in "
132 "bottom sheet content.";
133
134const char kCreditCardAssistName[] = "Credit Card Assisted Filling";
135const char kCreditCardAssistDescription[] =
136 "Enable assisted credit card filling on certain sites.";
137
138const char kCrossProcessGuestViewIsolationName[] =
139 "Cross process frames for guests";
140const char kCrossProcessGuestViewIsolationDescription[] =
141 "Highly experimental where guests such as <webview> are implemented on "
142 "the out-of-process iframe infrastructure.";
143
Brett Wilsonf27ff602017-07-07 22:28:47144const char kDataReductionProxyLoFiName[] = "Data Saver Lo-Fi mode";
145const char kDataReductionProxyLoFiDescription[] =
146 "Forces Data Saver Lo-Fi mode to be always enabled, enabled only on "
147 "cellular connections, or disabled. Data Saver must be enabled for Lo-Fi "
148 "mode to be used.";
149const char kDataReductionProxyLoFiAlwaysOn[] = "Always on";
150const char kDataReductionProxyLoFiCellularOnly[] = "Cellular only";
151const char kDataReductionProxyLoFiDisabled[] = "Disable";
152const char kDataReductionProxyLoFiSlowConnectionsOnly[] =
153 "Slow connections only";
154
155const char kDatasaverPromptName[] = "Cellular Data Saver Prompt";
156const char kDatasaverPromptDescription[] =
157 "Enables a prompt, which appears when a cellular network connection is "
158 "detected, to take the user to the Data Saver extension page on Chrome Web "
159 "Store.";
160const char kDatasaverPromptDemoMode[] = "Demo mode";
161
162const char kDebugPackedAppName[] = "Debugging for packed apps";
163const char kDebugPackedAppDescription[] =
164 "Enables debugging context menu options such as Inspect Element for packed "
165 "applications.";
166
167const char kDefaultTileHeightName[] = "Default tile height";
168const char kDefaultTileHeightDescription[] = "Specify the default tile height.";
169const char kDefaultTileHeightShort[] = "128";
170const char kDefaultTileHeightTall[] = "256";
171const char kDefaultTileHeightGrande[] = "512";
172const char kDefaultTileHeightVenti[] = "1024";
173
174const char kDefaultTileWidthName[] = "Default tile width";
175const char kDefaultTileWidthDescription[] = "Specify the default tile width.";
176const char kDefaultTileWidthShort[] = "128";
177const char kDefaultTileWidthTall[] = "256";
178const char kDefaultTileWidthGrande[] = "512";
179const char kDefaultTileWidthVenti[] = "1024";
180
181const char kDebugShortcutsName[] = "Debugging keyboard shortcuts";
182const char kDebugShortcutsDescription[] =
183 "Enables additional keyboard shortcuts that are useful for debugging Ash.";
184
185const char kDeviceDiscoveryNotificationsName[] =
186 "Device Discovery Notifications";
187const char kDeviceDiscoveryNotificationsDescription[] =
188 "Device discovery notifications on local network.";
189
190const char kDevtoolsExperimentsName[] = "Developer Tools experiments";
191const char kDevtoolsExperimentsDescription[] =
192 "Enables Developer Tools experiments. Use Settings panel in Developer "
193 "Tools to toggle individual experiments.";
194
195const char kDisableAudioForDesktopShareName[] =
196 "Disable Audio For Desktop Share";
197const char kDisableAudioForDesktopShareDescription[] =
198 "With this flag on, desktop share picker window will not let the user "
199 "choose whether to share audio.";
200
Brett Wilsonf27ff602017-07-07 22:28:47201const char kDisableTabForDesktopShareName[] =
202 "Disable Desktop Share with tab source";
203const char kDisableTabForDesktopShareDescription[] =
204 "This flag controls whether users can choose a tab for desktop share.";
205
206const char kDisallowDocWrittenScriptsUiName[] =
207 "Block scripts loaded via document.write";
208const char kDisallowDocWrittenScriptsUiDescription[] =
209 "Disallows fetches for third-party parser-blocking scripts inserted into "
210 "the main frame via document.write.";
211
212const char kDisplayList2dCanvasName[] = "Display list 2D canvas";
213const char kDisplayList2dCanvasDescription[] =
214 "Enables the use of display lists to record 2D canvas commands. This "
215 "allows 2D canvas rasterization to be performed on separate thread.";
216
217const char kDistanceFieldTextName[] = "Distance field text";
218const char kDistanceFieldTextDescription[] =
219 "Text is rendered with signed distance fields rather than bitmap alpha "
220 "masks.";
221
222const char kDriveSearchInChromeLauncherName[] =
223 "Drive Search in Chrome App Launcher";
224const char kDriveSearchInChromeLauncherDescription[] =
225 "Files from Drive will show up when searching the Chrome App Launcher.";
226
227const char kDropSyncCredentialName[] =
228 "Drop sync credentials from password manager";
229const char kDropSyncCredentialDescription[] =
230 "The password manager will not offer to save the credential used to sync.";
231
232const char kEasyUnlockBluetoothLowEnergyDiscoveryName[] =
233 "Smart Lock Bluetooth Low Energy Discovery";
234const char kEasyUnlockBluetoothLowEnergyDiscoveryDescription[] =
Tim Song52c142c62017-07-20 03:29:07235 "Disables a Smart Lock setting that allows Chromebook to discover phones "
Brett Wilsonf27ff602017-07-07 22:28:47236 "over Bluetooth Low Energy in order to unlock the Chromebook when the "
237 "phone is in its proximity.";
238
Gustavo Sacomotofb11164f2017-07-21 12:56:18239const char kEasyUnlockPromotionsName[] = "Smart Lock Promotions";
240const char kEasyUnlockPromotionsDescription[] =
241 "Enables Smart Lock promotions. Promotions will be periodically display "
242 "if the user is eligible.";
243
Brett Wilsonf27ff602017-07-07 22:28:47244const char kEmbeddedExtensionOptionsName[] = "Embedded extension options";
245const char kEmbeddedExtensionOptionsDescription[] =
246 "Display extension options as an embedded element in chrome://extensions "
247 "rather than opening a new tab.";
248
249const char kEnableAsmWasmName[] =
250 "Experimental Validate Asm.js and convert to WebAssembly when valid.";
251const char kEnableAsmWasmDescription[] =
252 R"*(Validate Asm.js when "use asm" is present and then convert to )*"
253 R"*(WebAssembly.)*";
254
Shanfeng Zhang19c16562017-10-17 02:30:40255const char kEnableAutofillCreditCardAblationExperimentDisplayName[] =
256 "Credit card autofill ablation experiment.";
257const char kEnableAutofillCreditCardAblationExperimentDescription[] =
258 "If enabled, credit card autofill suggestions will not display.";
259
Brett Wilsonf27ff602017-07-07 22:28:47260const char kEnableAutofillCreditCardBankNameDisplayName[] =
261 "Display the issuer bank name of a credit card in autofill.";
262const char kEnableAutofillCreditCardBankNameDisplayDescription[] =
263 "If enabled, displays the issuer bank name of a credit card in autofill.";
264
265const char kEnableAutofillCreditCardLastUsedDateDisplayName[] =
266 "Display the last used date of a credit card in autofill.";
267const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
268 "If enabled, display the last used date of a credit card in autofill.";
269
270const char kEnableAutofillCreditCardUploadCvcPromptName[] =
271 "Enable requesting missing CVC during Autofill credit card upload";
272const char kEnableAutofillCreditCardUploadCvcPromptDescription[] =
273 "If enabled, requests missing CVC when offering to upload credit cards to "
274 "Google Payments.";
275
Jared Saule4446d12017-08-15 20:01:13276const char kEnableAutofillCreditCardUploadGoogleLogoName[] =
277 "Show Google Logo for Autofill credit card upload";
278const char kEnableAutofillCreditCardUploadGoogleLogoDescription[] =
279 "If enabled, displays the Google logo in the save prompt when offering to "
280 "upload credit cards to Google Payments.";
281
jsaul19ef81c2017-08-09 18:53:40282const char kEnableAutofillCreditCardUploadNewUiName[] =
283 "Enable updated UI for Autofill credit card upload";
284const char kEnableAutofillCreditCardUploadNewUiDescription[] =
285 "If enabled, displays a new save card bubble/infobar design when offering "
286 "to upload credit cards to Google Payments.";
287
Jason Guo71f621e2017-10-13 04:18:53288const char kEnableAutofillSendBillingCustomerNumberName[] =
289 "Enable autofill sending billing customer number when calling Google "
290 "Payments";
291const char kEnableAutofillSendBillingCustomerNumberDescription[] =
292 "If enabled, autofill sends billing customer number when calling Google "
293 "Payments.";
294
Mathieu Perreault069024e12017-10-24 01:14:08295const char kEnableAutofillToolkitViewsCreditCardDialogsMac[] =
296 "Enable toolkit-views credit card dialogs on Mac";
297const char kEnableAutofillToolkitViewsCreditCardDialogsMacDescription[] =
298 "Enable more modern credit card dialogs on Mac, based on toolkit-views.";
299
Vitalii Iarko4f9834ce2017-08-04 07:05:19300const char kEnableBreakingNewsPushName[] = "Breaking News Push";
301const char kEnableBreakingNewsPushDescription[] =
302 "Listen for breaking news content suggestions (e.g. for New Tab Page) "
303 "through Google Cloud Messaging.";
304
Brett Wilsonf27ff602017-07-07 22:28:47305const char kEnableBrotliName[] = "Brotli Content-Encoding.";
306const char kEnableBrotliDescription[] =
307 "Enable Brotli Content-Encoding support.";
308
309const char kEnableClearBrowsingDataCountersName[] =
310 "Enable Clear browsing data counters.";
311const char kEnableClearBrowsingDataCountersDescription[] =
312 "Shows data volume counters in the Clear browsing data dialog.";
313
sclittle50e4bb92017-07-08 02:23:03314const char kEnableClientLoFiName[] = "Client-side Lo-Fi previews";
315
316const char kEnableClientLoFiDescription[] =
317 "Enable showing low fidelity images on some pages on slow networks.";
318
Doug Arnett08b4067b2017-10-12 20:14:44319const char kEnableNoScriptPreviewsName[] = "NoScript previews";
320
321const char kEnableNoScriptPreviewsDescription[] =
322 "Enable disabling JavaScript on some pages on slow networks.";
323
Brett Wilsonf27ff602017-07-07 22:28:47324const char kEnableDataReductionProxyLitePageName[] =
325 "Lite pages for Data Saver Lo-Fi mode";
326const char kEnableDataReductionProxyLitePageDescription[] =
327 "Enable lite pages in Data Saver Lo-Fi mode. Previews of pages will be "
328 "shown instead of image placeholders when Lo-Fi is on. Data Saver and "
329 "Lo-Fi must be enabled for lite pages to be shown.";
330
331const char kDataReductionProxyServerAlternative[] =
332 "Use alternative server configuration";
333const char kEnableDataReductionProxyServerExperimentName[] =
334 "Use an alternative Data Saver back end configuration.";
335const char kEnableDataReductionProxyServerExperimentDescription[] =
336 "Enable a different approach to saving data by configuring the back end "
337 "server";
338
339const char kEnableDataReductionProxySavingsPromoName[] =
340 "Data Saver 1 MB Savings Promo";
341const char kEnableDataReductionProxySavingsPromoDescription[] =
342 "Enable a Data Saver promo for 1 MB of savings. If Data Saver has already "
343 "saved 1 MB of data, then the promo will not be shown. Data Saver must be "
344 "enabled for the promo to be shown.";
345
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17346const char kEnableDesktopPWAWindowingName[] =
347 "Windowing related features for desktop PWAs.";
348const char kEnableDesktopPWAWindowingDescription[] =
349 "Enable experimental windowing features for desktop PWAs.";
350
Brett Wilsonf27ff602017-07-07 22:28:47351const char kEnableEnumeratingAudioDevicesName[] =
352 "Experimentally enable enumerating audio devices.";
353const char kEnableEnumeratingAudioDevicesDescription[] =
354 "Experimentally enable the use of enumerating audio devices.";
355
356const char kEnableGenericSensorName[] = "Generic Sensor";
357const char kEnableGenericSensorDescription[] =
Mikhail Pozdnyakov73373a62017-08-24 17:31:25358 "Enables motion sensor classes based on Generic Sensor API, i.e. "
359 "Accelerometer, LinearAccelerationSensor, Gyroscope, "
360 "AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
361
362const char kEnableGenericSensorExtraClassesName[] =
363 "Generic Sensor Extra Classes";
364const char kEnableGenericSensorExtraClassesDescription[] =
365 "Enables an extra set of sensor classes based on Generic Sensor API, which "
366 "expose previously unavailable platform features, i.e. AmbientLightSensor "
367 "and Magnetometer interfaces.";
Brett Wilsonf27ff602017-07-07 22:28:47368
Brett Wilsonf27ff602017-07-07 22:28:47369const char kEnableHDRName[] = "HDR mode";
370const char kEnableHDRDescription[] =
371 "Enables HDR support on compatible displays.";
372
373const char kEnableHeapProfilingName[] = "Heap profiling";
374const char kEnableHeapProfilingDescription[] = "Enables heap profiling.";
375const char kEnableHeapProfilingModePseudo[] = "Enabled (pseudo mode)";
376const char kEnableHeapProfilingModeNative[] = "Enabled (native mode)";
377const char kEnableHeapProfilingTaskProfiler[] = "Enabled (task mode)";
378
379const char kEnableHttpFormWarningName[] =
380 "Show in-form warnings for sensitive fields when the top-level page is not "
Eric Lawrenceed8fccf2017-09-08 21:27:15381 "HTTPS";
Brett Wilsonf27ff602017-07-07 22:28:47382const char kEnableHttpFormWarningDescription[] =
383 "Attaches a warning UI to any password or credit card fields detected when "
384 "the top-level page is not HTTPS";
385
Sidney San Martín9375b892017-09-09 00:29:54386const char kEnableMacMaterialDesignDownloadShelfName[] =
387 "Enable Material Design download shelf";
388
389const char kEnableMacMaterialDesignDownloadShelfDescription[] =
390 "If enabled, the download shelf uses Material Design.";
391
Tatiana Gornakafb40452017-07-31 13:50:04392const char kEnableManualFallbacksFillingName[] =
393 "Manual fallbacks for password manager forms filling";
394const char kEnableManualFallbacksFillingDescription[] =
395 "If enabled, then if user clicks on the password field on a form, popup "
396 "might contain generation fallbacks or 'Show all saved passwords' "
397 "fallback.";
398
vabr0215a8e2017-03-28 12:47:34399const char kEnableMaterialDesignBookmarksName[] =
400 "Enable Material Design bookmarks";
vabr0215a8e2017-03-28 12:47:34401const char kEnableMaterialDesignBookmarksDescription[] =
402 "If enabled, the chrome://bookmarks/ URL loads the Material Design "
403 "bookmarks page.";
404
vabr0215a8e2017-03-28 12:47:34405const char kEnableMaterialDesignExtensionsName[] =
406 "Enable Material Design extensions";
vabr0215a8e2017-03-28 12:47:34407const char kEnableMaterialDesignExtensionsDescription[] =
408 "If enabled, the chrome://extensions/ URL loads the Material Design "
409 "extensions page.";
410
Anton Urusov47cd4932017-09-19 14:41:41411const char kEnablePolicyToolName[] = "Enable policy management page";
412const char kEnablePolicyToolDescription[] =
413 "If enabled, the chrome://policy-tool URL loads a page for managing "
414 "policies.";
415
Brett Wilsonf27ff602017-07-07 22:28:47416const char kEnableMidiManagerDynamicInstantiationName[] =
417 "MIDIManager dynamic instantiation for Web MIDI.";
418const char kEnableMidiManagerDynamicInstantiationDescription[] =
419 "Enable MIDIManager dynamic instantiation for Web MIDI.";
420
421const char kEnableNavigationTracingName[] = "Enable navigation tracing";
422const char kEnableNavigationTracingDescription[] =
423 "This is to be used in conjunction with the trace-upload-url flag. "
424 "WARNING: When enabled, Chrome will record performance data for every "
425 "navigation and upload it to the URL specified by the trace-upload-url "
426 "flag. The trace may include personally identifiable information (PII) "
427 "such as the titles and URLs of websites you visit.";
428
429const char kEnableNetworkServiceName[] = "Enable network service";
430const char kEnableNetworkServiceDescription[] =
431 "Enables the network service, which makes network requests through a "
432 "separate service. Note: most features don't work with this yet.";
433
Ahmed Fakhry2fd8fc82017-07-28 16:31:12434const char kEnableNightLightName[] = "Enable Night Light";
435const char kEnableNightLightDescription[] =
436 "Enable the Night Light feature which controls the color temperature of "
437 "the screen.";
438
Sophie Chang117a3b22017-10-24 22:25:36439const char kEnableOptimizationHintsName[] = "Optimization Hints";
440const char kEnableOptimizationHintsDescription[] =
441 "Enable the Optimization Hints feature which incorporates server hints"
442 "into decisions for what optimizations to perform on some pages on slow "
443 "networks.";
444
Yutaka Hirano98be3272017-08-07 17:55:39445const char kEnableOutOfBlinkCORSName[] = "Out of blink CORS";
446const char kEnableOutOfBlinkCORSDescription[] =
447 "CORS handling logic is moved out of blink.";
448
Erik Chen49bbfa22017-08-18 08:49:56449const char kEnableOutOfProcessHeapProfilingName[] =
450 "Out of process heap profiling.";
451const char kEnableOutOfProcessHeapProfilingDescription[] =
452 "Creates a profiling service that records stacktraces for all live, "
453 "malloced objects.";
erikchen1dff1812017-09-11 21:27:36454const char kEnableOutOfProcessHeapProfilingModeMinimal[] =
455 "Profile only the browser and GPU processes.";
Erik Chen49bbfa22017-08-18 08:49:56456const char kEnableOutOfProcessHeapProfilingModeAll[] = "Profile all processes.";
457
Brett Wilsonf27ff602017-07-07 22:28:47458const char kEnablePictureInPictureName[] = "Enable picture in picture.";
459const char kEnablePictureInPictureDescription[] =
460 "Enable the picture in picture feature for videos.";
461
F#m59d036e2017-09-13 07:22:17462const char kEnablePixelCanvasRecordingName[] = "Enable pixel canvas recording";
463const char kEnablePixelCanvasRecordingDescription[] =
464 "Pixel canvas recording allows the compositor to raster contents aligned "
465 "with the pixel and improves text rendering. This should be enabled when a "
466 "device is using fractional scale factor.";
467
Brett Wilsonf27ff602017-07-07 22:28:47468const char kEnableTokenBindingName[] = "Token Binding.";
469const char kEnableTokenBindingDescription[] = "Enable Token Binding support.";
470
Irmak Kavasoglu7e16af02017-07-19 09:52:47471const char kEnableUsernameCorrectionName[] = "Enable username correction";
472const char kEnableUsernameCorrectionDescription[] =
473 "While on the pending password state, add an edit button to the bubble so "
474 "that user can edit the username.";
475
Brett Wilsonf27ff602017-07-07 22:28:47476const char kEnableUseZoomForDsfName[] =
477 "Use Blink's zoom for device scale factor.";
478const char kEnableUseZoomForDsfDescription[] =
479 "If enabled, Blink uses its zooming mechanism to scale content for device "
480 "scale factor.";
481const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
482const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
483const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
484
485const char kEnableScrollAnchoringName[] = "Scroll Anchoring";
486const char kEnableScrollAnchoringDescription[] =
487 "Adjusts scroll position to prevent visible jumps when offscreen content "
488 "changes.";
489
Brett Wilsonf27ff602017-07-07 22:28:47490const char kEnableWasmName[] = "WebAssembly structured cloning support.";
491const char kEnableWasmDescription[] =
492 "Enable web pages to use WebAssembly structured cloning.";
493
Brett Wilsonf27ff602017-07-07 22:28:47494const char kEnableImageCaptureAPIName[] = "Image Capture API";
495const char kEnableImageCaptureAPIDescription[] =
496 "Enables the Web Platform Image Capture API: takePhoto(), "
497 "getPhotoCapabilities(), etc.";
498
499const char kEnableZeroSuggestRedirectToChromeName[] =
500 "Experimental contextual omnibox suggestion";
501const char kEnableZeroSuggestRedirectToChromeDescription[] =
502 "Change omnibox contextual suggestions to an experimental source. Note "
503 "that this is not an on/off switch for contextual omnibox and it only "
504 "applies to suggestions provided before the user starts typing a URL or a "
505 "search query (i.e. zero suggest).";
506
507const char kEnableWasmStreamingName[] =
508 "WebAssembly streaming compile/instantiate support.";
509const char kEnableWasmStreamingDescription[] =
510 "WebAssembly.{compile|instantiate} taking a Response as parameter.";
511
Brett Wilsonf27ff602017-07-07 22:28:47512const char kEnableWebNotificationCustomLayoutsName[] =
513 "Enable custom layouts for Web Notifications.";
514const char kEnableWebNotificationCustomLayoutsDescription[] =
515 "Enable custom layouts for Web Notifications. They will have subtle layout "
516 "improvements that are otherwise not possible.";
517
518const char kExpensiveBackgroundTimerThrottlingName[] =
519 "Throttle expensive background timers";
520const char kExpensiveBackgroundTimerThrottlingDescription[] =
521 "Enables intervention to limit CPU usage of background timers to 1%.";
522
523const char kExperimentalAppBannersName[] = "Experimental app banners";
524const char kExperimentalAppBannersDescription[] =
525 "Enables a new experimental app banner flow and UI";
526
527const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
528const char kExperimentalCanvasFeaturesDescription[] =
529 "Enables the use of experimental canvas features which are still in "
530 "development.";
531
532const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
533const char kExperimentalExtensionApisDescription[] =
534 "Enables experimental extension APIs. Note that the extension gallery "
535 "doesn't allow you to upload extensions that use experimental APIs.";
536
537const char kExperimentalFullscreenExitUIName[] =
538 "Experimental fullscreen exit UI";
539const char kExperimentalFullscreenExitUIDescription[] =
540 "Displays experimental UI to allow mouse and touch input methods to exit "
541 "fullscreen mode.";
542
543const char kExperimentalHotwordHardwareName[] =
544 "Simulated hardware 'Ok Google' features";
545const char kExperimentalHotwordHardwareDescription[] =
546 "Enables an experimental version of 'Ok Google' hotword detection features "
547 "that have a hardware dependency.";
548
549const char kExperimentalKeyboardLockUiName[] = "Experimental keyboard lock UI.";
550const char kExperimentalKeyboardLockUiDescription[] =
551 "An experimental full screen with keyboard lock mode requiring users to "
552 "hold Esc to exit.";
553
554const char kExperimentalSecurityFeaturesName[] =
555 "Potentially annoying security features";
556const char kExperimentalSecurityFeaturesDescription[] =
557 "Enables several security features that will likely break one or more "
558 "pages that you visit on a daily basis. Strict mixed content checking, for "
559 "example. And locking powerful features to secure contexts. This flag will "
560 "probably annoy you.";
561
Ian Vollick3a0cffc2017-10-13 04:42:11562const char kExperimentalVRFeaturesName[] = "Experimental VR features";
563const char kExperimentalVRFeaturesDescription[] =
564 "Enables VR browsing features that are under development.";
565
Brett Wilsonf27ff602017-07-07 22:28:47566const char kExperimentalWebPlatformFeaturesName[] =
567 "Experimental Web Platform features";
568const char kExperimentalWebPlatformFeaturesDescription[] =
569 "Enables experimental Web Platform features that are in development.";
570
571const char kExtensionContentVerificationName[] =
572 "Extension Content Verification";
573const char kExtensionContentVerificationDescription[] =
574 "This flag can be used to turn on verification that the contents of the "
575 "files on disk for extensions from the webstore match what they're "
576 "expected to be. This can be used to turn on this feature if it would not "
577 "otherwise have been turned on, but cannot be used to turn it off (because "
578 "this setting can be tampered with by malware).";
579const char kExtensionContentVerificationBootstrap[] =
580 "Bootstrap (get expected hashes, but do not enforce them)";
581const char kExtensionContentVerificationEnforce[] =
582 "Enforce (try to get hashes, and enforce them if successful)";
583const char kExtensionContentVerificationEnforceStrict[] =
584 "Enforce strict (hard fail if we can't get hashes)";
585
586const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
587const char kExtensionsOnChromeUrlsDescription[] =
588 "Enables running extensions on chrome:// URLs, where extensions explicitly "
589 "request this permission.";
galinapae72e152017-05-12 13:12:28590
Brett Wilsonecb80982017-07-12 20:34:51591const char kFastUnloadName[] = "Fast tab/window close";
592const char kFastUnloadDescription[] =
593 "Enables fast tab/window closing - runs a tab's onunload js handler "
594 "independently of the GUI.";
vabr0215a8e2017-03-28 12:47:34595
Brett Wilsonecb80982017-07-12 20:34:51596const char kFeaturePolicyName[] = "Feature Policy";
597const char kFeaturePolicyDescription[] =
598 "Enables granting and removing access to features through the "
599 "Feature-Policy HTTP header.";
vabr0215a8e2017-03-28 12:47:34600
Brett Wilsonecb80982017-07-12 20:34:51601const char kFetchKeepaliveTimeoutSettingName[] =
602 "Fetch API keepalive timeout setting";
603const char kFetchKeepaliveTimeoutSettingDescription[] =
604 "This is for setting the timeout value for Fetch API with keepalive option "
605 "and SendBeacon";
606
607const char kFontCacheScalingName[] = "FontCache scaling";
608const char kFontCacheScalingDescription[] =
609 "Reuse a cached font in the renderer to serve different sizes of font for "
610 "faster layout.";
611
612const char kForceEffectiveConnectionTypeName[] =
613 "Override effective connection type";
614const char kForceEffectiveConnectionTypeDescription[] =
615 "Overrides the effective connection type of the current connection "
616 "returned by the network quality estimator.";
617const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
618const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
619const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
620const char kEffectiveConnectionType2GDescription[] = "2G";
621const char kEffectiveConnectionType3GDescription[] = "3G";
622const char kEffectiveConnectionType4GDescription[] = "4G";
623
624const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
625const char kFillOnAccountSelectDescription[] =
626 "Filling of passwords when an account is explicitly selected by the user "
627 "rather than autofilling credentials on page load.";
628
Brett Wilsonecb80982017-07-12 20:34:51629const char kForceTextDirectionName[] = "Force text direction";
630const char kForceTextDirectionDescription[] =
631 "Explicitly force the per-character directionality of UI text to "
632 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
633 "direction of the character language.";
634const char kForceDirectionLtr[] = "Left-to-right";
635const char kForceDirectionRtl[] = "Right-to-left";
636
637const char kForceUiDirectionName[] = "Force UI direction";
638const char kForceUiDirectionDescription[] =
639 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
640 "mode, overriding the default direction of the UI language.";
641
642const char kFramebustingName[] =
643 "Framebusting requires same-origin or a user gesture";
644const char kFramebustingDescription[] =
645 "Don't permit an iframe to navigate the top level browsing context unless "
646 "they are same-origin or the iframe is processing a user gesture.";
647
648const char kGamepadExtensionsName[] = "Gamepad Extensions";
649const char kGamepadExtensionsDescription[] =
650 "Enabling this option allows web applications to access experimental "
651 "extensions to the Gamepad APIs.";
652
sohan3f00ffc2017-07-14 22:28:08653const char kGlCompositedOverlayCandidateQuadBordersName[] =
654 "GL composited overlay candidate quad borders";
655const char kGlCompositedOverlayCandidateQuadBordersDescription[] =
Alex Newcomer43cb7f12017-07-28 17:37:39656 "Renders a border around GL composited overlay candidate quads to help "
657 "debug and study overlay support.";
Brett Wilsonecb80982017-07-12 20:34:51658
659const char kGpuRasterizationMsaaSampleCountName[] =
660 "GPU rasterization MSAA sample count.";
661const char kGpuRasterizationMsaaSampleCountDescription[] =
662 "Specify the number of MSAA samples for GPU rasterization.";
663const char kGpuRasterizationMsaaSampleCountZero[] = "0";
664const char kGpuRasterizationMsaaSampleCountTwo[] = "2";
665const char kGpuRasterizationMsaaSampleCountFour[] = "4";
666const char kGpuRasterizationMsaaSampleCountEight[] = "8";
667const char kGpuRasterizationMsaaSampleCountSixteen[] = "16";
668
669const char kGpuRasterizationName[] = "GPU rasterization";
670const char kGpuRasterizationDescription[] =
671 "Use GPU to rasterize web content. Requires impl-side painting.";
Brett Wilson7b44537e2017-08-18 01:38:28672const char kForceGpuRasterization[] = "Force-enabled for all layers";
Brett Wilsonecb80982017-07-12 20:34:51673
674const char kGoogleProfileInfoName[] = "Google profile name and icon";
675const char kGoogleProfileInfoDescription[] =
676 "Enables using Google information to populate the profile name and icon in "
677 "the avatar menu.";
678
679const char kHarfbuzzRendertextName[] = "HarfBuzz for UI text";
680const char kHarfbuzzRendertextDescription[] =
681 "Enable cross-platform HarfBuzz layout engine for UI text. Doesn't affect "
682 "web content.";
683
684const char kHistoryRequiresUserGestureName[] =
685 "New history entries require a user gesture.";
686const char kHistoryRequiresUserGestureDescription[] =
687 "Require a user gesture to add a history entry.";
688const char kHyperlinkAuditingName[] = "Hyperlink auditing";
689const char kHyperlinkAuditingDescription[] = "Sends hyperlink auditing pings.";
690
691const char kHostedAppQuitNotificationName[] =
692 "Quit notification for hosted apps";
693const char kHostedAppQuitNotificationDescription[] =
694 "Display a notification when quitting Chrome if hosted apps are currently "
695 "running.";
696
697const char kHostedAppShimCreationName[] =
698 "Creation of app shims for hosted apps on Mac";
699const char kHostedAppShimCreationDescription[] =
700 "Create app shims on Mac when creating a hosted app.";
701
Ana-Cosmina Popescuda3bcbe2017-09-22 18:24:48702const char kHtmlBasedUsernameDetectorName[] = "HTML-based username detector";
703const char kHtmlBasedUsernameDetectorDescription[] =
704 "Use HTML-based username detector for the password manager.";
705
Brett Wilsonecb80982017-07-12 20:34:51706const char kIconNtpName[] = "Large icons on the New Tab page";
707const char kIconNtpDescription[] =
708 "Enable the experimental New Tab page using large icons.";
709
710const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
711const char kIgnoreGpuBlacklistDescription[] =
712 "Overrides the built-in software rendering list and enables "
713 "GPU-acceleration on unsupported system configurations.";
714
715const char kImportantSitesInCbdName[] =
716 "Important sites options in clear browsing data dialog";
717const char kImportantSitesInCbdDescription[] =
718 "Include the option to whitelist important sites in the clear browsing "
719 "data dialog.";
720
Brett Wilsonecb80982017-07-12 20:34:51721const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
722const char kInProductHelpDemoModeChoiceDescription[] =
723 "Selects the In-Product Help demo mode.";
724
725const char kJavascriptHarmonyName[] = "Experimental JavaScript";
726const char kJavascriptHarmonyDescription[] =
727 "Enable web pages to use experimental JavaScript features.";
728
729const char kJavascriptHarmonyShippingName[] =
730 "Latest stable JavaScript features";
731const char kJavascriptHarmonyShippingDescription[] =
732 "Some web pages use legacy or non-standard JavaScript extensions that may "
733 "conflict with the latest JavaScript features. This flag allows disabling "
734 "support of those features for compatibility with such pages.";
735
Yutaka Hiranof7f2f632017-09-06 10:40:08736const char kKeepAliveRendererForKeepaliveRequestsName[] =
737 "Keep a renderer alive for keepalive fetch requests";
738const char kKeepAliveRendererForKeepaliveRequestsDescription[] =
739 "Keep a render process alive when the process has a pending fetch request "
740 "with `keepalive' specified.";
741
Brett Wilsonecb80982017-07-12 20:34:51742const char kLcdTextName[] = "LCD text antialiasing";
743const char kLcdTextDescription[] =
744 "If disabled, text is rendered with grayscale antialiasing instead of LCD "
745 "(subpixel) when doing accelerated compositing.";
746
Matt Giucac399982f2017-10-06 07:51:29747const char kLeftToRightUrlsName[] =
748 "Render bidirectional URLs from left to right";
749const char kLeftToRightUrlsDescription[] =
750 "An experimental Bidi URL rendering algorithm where the URL components are "
751 "always shown in order from left to right, regardless of any RTL "
752 "characters. (The contents of each component are still rendered with the "
753 "normal Bidi algorithm.)";
754
Brett Wilsonecb80982017-07-12 20:34:51755const char kLoadMediaRouterComponentExtensionName[] =
756 "Load Media Router Component Extension";
757const char kLoadMediaRouterComponentExtensionDescription[] =
758 "Loads the Media Router component extension at startup.";
759
760const char kManualPasswordGenerationName[] = "Manual password generation.";
761const char kManualPasswordGenerationDescription[] =
762 "Show a 'Generate Password' option on the context menu for all password "
763 "fields.";
764
Dominic Battref27e8762017-08-23 11:16:25765const char kManualPasswordSavingName[] = "Manual password saving.";
766const char kManualPasswordSavingDescription[] =
767 "Show the password manager icon when typing into a password filed. "
768 "Clicking it allows to save the password without submitting the form.";
769
Brett Wilsonecb80982017-07-12 20:34:51770const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
771const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
772const char kMarkHttpAsDangerous[] = "Always mark HTTP as actively dangerous";
Brett Wilsonecb80982017-07-12 20:34:51773
Lei Zhang2eca9082017-10-17 20:42:50774const char kMaterialDesignIncognitoNTPName[] = "Material Design Incognito NTP.";
775const char kMaterialDesignIncognitoNTPDescription[] =
Brett Wilsonecb80982017-07-12 20:34:51776 "If enabled, the Incognito New Tab page uses the new material design with "
777 "a better readable text.";
778
779const char kMediaRemotingName[] = "Media Remoting during Cast Tab Mirroring";
780const char kMediaRemotingDescription[] =
781 "When Casting a tab to a remote device, enabling this turns on an "
782 "optimization that forwards the content bitstream directly to the remote "
783 "device when a video is fullscreened.";
784
785const char kMemoryAblationName[] = "Memory ablation experiment";
786const char kMemoryAblationDescription[] =
787 "Allocates extra memory in the browser process.";
788
789const char kMemoryCoordinatorName[] = "Memory coordinator";
790const char kMemoryCoordinatorDescription[] =
791 "Enable memory coordinator instead of memory pressure listeners.";
792
793const char kMessageCenterNewStyleNotificationName[] = "New style notification";
794const char kMessageCenterNewStyleNotificationDescription[] =
795 "Enables the experiment style of material-design notification";
796
Brett Wilsonecb80982017-07-12 20:34:51797const char kMhtmlGeneratorOptionName[] = "MHTML Generation Option";
798const char kMhtmlGeneratorOptionDescription[] =
799 "Provides experimental options for MHTML file generator.";
800const char kMhtmlSkipNostoreMain[] = "Skips no-store main frame.";
801const char kMhtmlSkipNostoreAll[] = "Skips all no-store resources.";
802
803const char kMojoLoadingName[] = "Use Mojo IPC for resource loading";
804const char kMojoLoadingDescription[] =
805 "Use Mojo IPC instead of traditional Chrome IPC for resource loading.";
806
Miguel Casas-Sanchez10769c82017-07-27 23:52:04807const char kMojoVideoEncodeAcceleratorName[] =
808 "Hardware-accelerated video encoder accessed using Mojo IPC";
809const char kMojoVideoEncodeAcceleratorDescription[] =
810 "Use new Mojo IPC to access hardware-accelerated video encoder, where "
811 "available.";
812
Brett Wilsonecb80982017-07-12 20:34:51813const char kModuleScriptsName[] = "Enable ECMAScript 6 modules";
814const char kModuleScriptsDescription[] =
815 "Enables ECMAScript 6 modules support in Blink.";
816
Kouhei Ueno08445c22017-09-05 03:58:30817const char kModuleScriptsDynamicImportName[] =
818 "Enable ECMAScript 6 modules dynamic import";
819const char kModuleScriptsDynamicImportDescription[] =
820 "Enables ECMAScript 6 modules dynamic \"import\" syntax support in V8 and "
821 "Blink.";
822
Hiroshige Hayashizaki15c2eb92017-10-20 04:57:05823const char kModuleScriptsImportMetaUrlName[] =
824 "Enable ECMAScript 6 modules import.meta.url";
825const char kModuleScriptsImportMetaUrlDescription[] =
826 "Enables ECMAScript 6 modules import.meta.url syntax support in V8 and "
827 "Blink.";
828
Brett Wilsonecb80982017-07-12 20:34:51829const char kNewAudioRenderingMixingStrategyName[] =
830 "New audio rendering mixing strategy";
831const char kNewAudioRenderingMixingStrategyDescription[] =
832 "Use the new audio rendering mixing strategy.";
833
834const char kNewBookmarkAppsName[] = "The new bookmark app system";
835const char kNewBookmarkAppsDescription[] =
836 "Enables the new system for creating bookmark apps.";
837
838const char kNewOmniboxAnswerTypesName[] =
839 "New omnibox answers in suggest types";
840const char kNewOmniboxAnswerTypesDescription[] =
841 "Enables new types of answers in the omnibox suggest drop-down: currency "
842 "conversions, dictionary definitions, sports scores, translations, and "
843 "when is.";
844
845const char kNewRemotePlaybackPipelineName[] =
846 "Enable the new remote playback pipeline.";
847const char kNewRemotePlaybackPipelineDescription[] =
848 "Enable the new pipeline for playing media element remotely via "
849 "RemotePlayback API or native controls.";
850
851const char kNewUsbBackendName[] = "Enable new USB backend";
852const char kNewUsbBackendDescription[] =
853 "Enables the new experimental USB backend for Windows.";
vabr0215a8e2017-03-28 12:47:34854
brettw5f9c1642017-05-14 17:12:48855const char kNostatePrefetchName[] = "No-State Prefetch";
vabr0215a8e2017-03-28 12:47:34856const char kNostatePrefetchDescription[] =
857 R"*("No-State Prefetch" pre-downloads resources to improve load )*"
858 R"*(times. "Prerender" does a full pre-rendering of the page, to )*"
859 R"*(improve load times even more. "Simple Load" does nothing and is )*"
860 R"*(similar to disabling the feature, but collects more metrics for )*"
861 R"*(comparison purposes.)*";
862
Brett Wilsonecb80982017-07-12 20:34:51863const char kNotificationsNativeFlagName[] = "Enable native notifications.";
864const char kNotificationsNativeFlagDescription[] =
865 "Enable support for using the native notification toasts and notification "
866 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:34867
Zentaro Kavanaghbad511c2017-10-18 22:29:00868#if defined(OS_POSIX)
869const char kNtlmV2EnabledName[] = "Enable NTLMv2 Authentication";
870const char kNtlmV2EnabledDescription[] =
871 "Enable NTLMv2 HTTP Authentication. This disables NTLMv1 support.";
872#endif
873
Brett Wilsonecb80982017-07-12 20:34:51874const char kNumRasterThreadsName[] = "Number of raster threads";
875const char kNumRasterThreadsDescription[] =
876 "Specify the number of raster threads.";
877const char kNumRasterThreadsOne[] = "1";
878const char kNumRasterThreadsTwo[] = "2";
879const char kNumRasterThreadsThree[] = "3";
880const char kNumRasterThreadsFour[] = "4";
881
882const char kOfferStoreUnmaskedWalletCardsName[] =
883 "Google Payments card saving checkbox";
884const char kOfferStoreUnmaskedWalletCardsDescription[] =
885 "Show the checkbox to offer local saving of a credit card downloaded from "
886 "the server.";
887
888const char kOfflineAutoReloadName[] = "Offline Auto-Reload Mode";
889const char kOfflineAutoReloadDescription[] =
890 "Pages that fail to load while the browser is offline will be "
891 "auto-reloaded when the browser is online again.";
892
893const char kOfflineAutoReloadVisibleOnlyName[] =
894 "Only Auto-Reload Visible Tabs";
895const char kOfflineAutoReloadVisibleOnlyDescription[] =
896 "Pages that fail to load while the browser is offline will only be "
897 "auto-reloaded if their tab is visible.";
898
899const char kOffMainThreadFetchName[] = "Off-main-thread fetch for Web Workers";
900const char kOffMainThreadFetchDescription[] =
901 "If enabled, the resource fetches from worker threads will not be blocked "
902 "by the busy main thread.";
903
904const char kOmniboxDisplayTitleForCurrentUrlName[] =
905 "Include title for the current URL in the omnibox";
906const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
907 "In the event that the omnibox provides suggestions on-focus, the URL of "
908 "the current page is provided as the first suggestion without a title. "
909 "Enabling this flag causes the title to be displayed.";
910
Benoit Lizeab08362c2017-07-19 14:50:54911const char kOmniboxSpareRendererName[] =
912 "Start spare renderer on omnibox focus";
913const char kOmniboxSpareRendererDescription[] =
914 "When the omnibox is focused, start an empty spare renderer. This can "
915 "speed up the load of the navigation from the omnibox.";
916
Tommy C. Li8875a442017-08-23 00:10:59917const char kOmniboxUIElideSuggestionUrlAfterHostName[] =
918 "Omnibox UI Elide Suggestion URL After Host";
919const char kOmniboxUIElideSuggestionUrlAfterHostDescription[] =
920 "Elides the path, query, and ref of suggested URLs in the Omnibox "
921 "dropdown.";
922
Brett Wilsonecb80982017-07-12 20:34:51923const char kOmniboxUIHideSuggestionUrlSchemeName[] =
924 "Omnibox UI Hide Suggestion URL Scheme";
925const char kOmniboxUIHideSuggestionUrlSchemeDescription[] =
926 "Elides the schemes of suggested URLs in the Omnibox dropdown.";
927
928const char kOmniboxUIHideSuggestionUrlTrivialSubdomainsName[] =
929 "Omnibox UI Hide Suggestion URL Trivial Subdomains";
930const char kOmniboxUIHideSuggestionUrlTrivialSubdomainsDescription[] =
931 "Elides trivially informative subdomains from suggested URLs in the "
932 "Omnibox dropdown (e.g. www. and m.).";
933
934const char kOmniboxUIMaxAutocompleteMatchesName[] =
935 "Omnibox UI Max Autocomplete Matches";
936
937const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
938 "Changes the maximum number of autocomplete matches displayed in the "
939 "Omnibox UI.";
940
941const char kOmniboxUINarrowDropdownName[] = "Omnibox UI Narrow Dropdown";
942const char kOmniboxUINarrowDropdownDescription[] =
943 "Makes the suggestions dropdown width match the omnibox width.";
944
Justin Donnelly65c9e8b2017-10-01 05:15:01945const char kOmniboxUIShowSuggestionFaviconsName[] =
946 "Omnibox UI Show Suggestion Favicons";
947const char kOmniboxUIShowSuggestionFaviconsDescription[] =
948 "Shows favicons instead of generic vector icons for URL suggestions in the "
949 "Omnibox dropdown.";
950
951const char kOmniboxUISwapTitleAndUrlName[] = "Omnibox UI Swap Title and URL";
952const char kOmniboxUISwapTitleAndUrlDescription[] =
953 "In the omnibox dropdown, shows titles before URLs when both are "
954 "available.";
955
Brett Wilsonecb80982017-07-12 20:34:51956const char kOmniboxUIVerticalLayoutName[] = "Omnibox UI Vertical Layout";
957const char kOmniboxUIVerticalLayoutDescription[] =
958 "Displays Omnibox sugestions in 2 lines - title over origin.";
959
960const char kOmniboxUIVerticalMarginName[] = "Omnibox UI Vertical Margin";
961const char kOmniboxUIVerticalMarginDescription[] =
962 "Changes the vertical margin in the Omnibox UI.";
963
964const char kOriginTrialsName[] = "Origin Trials";
965const char kOriginTrialsDescription[] =
966 "Enables origin trials for controlling access to feature/API experiments.";
967
Becca Hughes930d8cd2017-10-02 11:09:12968const char kOverflowIconsForMediaControlsName[] =
969 "Icons on Media Controls Overflow Menu";
970const char kOverflowIconsForMediaControlsDescription[] =
971 "Displays icons on the overflow menu of the native media controls";
972
Brett Wilsonecb80982017-07-12 20:34:51973const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
974const char kOverlayScrollbarsDescription[] =
975 "Enable the experimental overlay scrollbars implementation. You must also "
976 "enable threaded compositing to have the scrollbars animate.";
977
chaopenge8aa016b2017-08-24 15:20:19978const char kOverlayScrollbarsFlashAfterAnyScrollUpdateName[] =
979 "Flash Overlay Scrollbars After Any Scroll Update";
980const char kOverlayScrollbarsFlashAfterAnyScrollUpdateDescription[] =
981 "Flash Overlay Scrollbars After any scroll update happends in page. You"
982 " must also enable Overlay Scrollbars.";
983
chaopeng343678022017-08-24 18:45:00984const char kOverlayScrollbarsFlashWhenMouseEnterName[] =
985 "Flash Overlay Scrollbars When Mouse Enter";
986const char kOverlayScrollbarsFlashWhenMouseEnterDescription[] =
987 "Flash Overlay Scrollbars When Mouse Enter a scrollable area. You must also"
988 " enable Overlay Scrollbars.";
989
Claudio Magni81326f92017-09-01 05:21:18990const char kUseNewAcceptLanguageHeaderName[] = "Use new Accept-Language header";
991const char kUseNewAcceptLanguageHeaderDescription[] =
992 "Adds the base language code after other corresponding language+region "
993 "codes. This ensures that users receive content in their preferred "
994 "language.";
995
Brett Wilsonecb80982017-07-12 20:34:51996const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
997const char kOverscrollHistoryNavigationDescription[] =
998 "Experimental history navigation in response to horizontal overscroll.";
999const char kOverscrollHistoryNavigationSimpleUi[] = "Simple";
1000
1001const char kOverscrollStartThresholdName[] = "Overscroll start threshold";
1002const char kOverscrollStartThresholdDescription[] =
1003 "Changes overscroll start threshold relative to the default value.";
1004const char kOverscrollStartThreshold133Percent[] = "133%";
1005const char kOverscrollStartThreshold166Percent[] = "166%";
1006const char kOverscrollStartThreshold200Percent[] = "200%";
1007
Xing Liu5400a002017-09-15 21:48:291008const char kParallelDownloadingName[] = "Parallel downloading";
1009const char kParallelDownloadingDescription[] =
1010 "Enable parallel downloading to"
1011 "accelerate download speed.";
1012
Brett Wilsonecb80982017-07-12 20:34:511013const char kPassiveEventListenerDefaultName[] =
1014 "Passive Event Listener Override";
1015const char kPassiveEventListenerDefaultDescription[] =
1016 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
1017 "haven't requested otherwise) to be treated as passive. This will break "
1018 "touch/wheel behavior on some websites but is useful for demonstrating the "
1019 "potential performance benefits of adopting passive event listeners.";
1020const char kPassiveEventListenerTrue[] = "True (when unspecified)";
1021const char kPassiveEventListenerForceAllTrue[] = "Force All True";
1022
1023const char kPassiveEventListenersDueToFlingName[] =
1024 "Touch Event Listeners Passive Default During Fling";
1025const char kPassiveEventListenersDueToFlingDescription[] =
1026 "Forces touchstart, and first touchmove per scroll event listeners during "
1027 "fling to be treated as passive.";
1028
1029const char kPassiveDocumentEventListenersName[] =
1030 "Document Level Event Listeners Passive Default";
1031const char kPassiveDocumentEventListenersDescription[] =
1032 "Forces touchstart, and touchmove event listeners on document level "
1033 "targets (which haven't requested otherwise) to be treated as passive.";
1034
1035const char kPasswordForceSavingName[] = "Force-saving of passwords";
1036const char kPasswordForceSavingDescription[] =
1037 "Allow the user to manually enforce password saving instead of relying on "
1038 "password manager's heuristics.";
1039
1040const char kPasswordGenerationName[] = "Password generation";
1041const char kPasswordGenerationDescription[] =
1042 "Allow the user to have Chrome generate passwords when it detects account "
1043 "creation pages.";
1044
1045const char kPasswordImportExportName[] = "Password import and export";
1046const char kPasswordImportExportDescription[] =
1047 "Import and Export functionality in password settings.";
1048
Maxim Kolosovskiyd97b94612017-09-19 20:10:391049const char kPasswordSelectionName[] =
1050 "Password selection and eye icon in prompt";
1051const char kPasswordSelectionDescription[] =
1052 "Show a password selector and an eye icon in prompt";
1053
Brett Wilsonecb80982017-07-12 20:34:511054const char kPermissionActionReportingName[] = "Permission Action Reporting";
1055const char kPermissionActionReportingDescription[] =
1056 "Enables permission action reporting to Safe Browsing servers for opted in "
1057 "users.";
1058
1059const char kPermissionsBlacklistName[] = "Permissions Blacklist";
1060const char kPermissionsBlacklistDescription[] =
1061 "Enables the Permissions Blacklist, which blocks permissions for "
1062 "blacklisted sites for Safe Browsing users.";
1063
1064const char kPinchScaleName[] = "Pinch scale";
1065const char kPinchScaleDescription[] =
1066 "Enables experimental support for scale using pinch.";
1067
Brett Wilsonecb80982017-07-12 20:34:511068const char kPrintPdfAsImageName[] = "Print Pdf as Image";
1069const char kPrintPdfAsImageDescription[] =
1070 "If enabled, an option to print PDF files as images will be available in "
1071 "print preview.";
1072
1073const char kPrintPreviewRegisterPromosName[] =
1074 "Print Preview Registration Promos";
1075const char kPrintPreviewRegisterPromosDescription[] =
1076 "Enable registering unregistered cloud printers from print preview.";
1077
1078const char kProtectSyncCredentialName[] = "Autofill sync credential";
1079const char kProtectSyncCredentialDescription[] =
1080 "How the password manager handles autofill for the sync credential.";
1081
1082const char kProtectSyncCredentialOnReauthName[] =
1083 "Autofill sync credential only for transactional reauth pages";
1084const char kProtectSyncCredentialOnReauthDescription[] =
1085 "How the password manager handles autofill for the sync credential only "
1086 "for transactional reauth pages.";
1087
Mohsen Izadi93faac12017-07-29 04:45:151088const char kPullToRefreshName[] = "Pull-to-refresh gesture";
1089const char kPullToRefreshDescription[] =
1090 "Pull-to-refresh gesture in response to vertical overscroll.";
1091
Brett Wilsonecb80982017-07-12 20:34:511092const char kPushApiBackgroundModeName[] = "Enable Push API background mode";
1093const char kPushApiBackgroundModeDescription[] =
1094 "Enable background mode for the Push API. This allows Chrome to continue "
1095 "running after the last window is closed, and to launch at OS startup, if "
1096 "the Push API needs it.";
1097
Piotr Swigon46929d12017-08-11 07:16:331098const char kPwaMinimalUiName[] = "Minimal-UI display mode for PWAs";
1099const char kPwaMinimalUiDescription[] =
1100 "Enables support for Minimal-UI display mode for installed PWAs";
1101
Brett Wilsonecb80982017-07-12 20:34:511102const char kQuicName[] = "Experimental QUIC protocol";
1103const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1104
1105const char kReducedReferrerGranularityName[] =
1106 "Reduce default 'referer' header granularity.";
1107const char kReducedReferrerGranularityDescription[] =
1108 "If a page hasn't set an explicit referrer policy, setting this flag will "
1109 "reduce the amount of information in the 'referer' header for cross-origin "
1110 "requests.";
1111
1112const char kRequestTabletSiteName[] =
1113 "Request tablet site option in the settings menu";
1114const char kRequestTabletSiteDescription[] =
1115 "Allows the user to request tablet site. Web content is often optimized "
1116 "for tablet devices. When this option is selected the user agent string is "
1117 "changed to indicate a tablet device. Web content optimized for tablets is "
1118 "received there after for the current tab.";
1119
1120const char kResetAppListInstallStateName[] =
1121 "Reset the App Launcher install state on every restart.";
1122const char kResetAppListInstallStateDescription[] =
1123 "Reset the App Launcher install state on every restart. While this flag is "
1124 "set, Chrome will forget the launcher has been installed each time it "
1125 "starts. This is used for testing the App Launcher install flow.";
1126
1127const char kResourceLoadSchedulerName[] = "Use the resource load scheduler";
1128const char kResourceLoadSchedulerDescription[] =
1129 "Uses the resource load scheduler in blink to schedule and throttle "
1130 "resource load requests.";
1131
Brett Wilsonecb80982017-07-12 20:34:511132const char kSafeSearchUrlReportingName[] = "SafeSearch URLs reporting.";
1133const char kSafeSearchUrlReportingDescription[] =
1134 "If enabled, inappropriate URLs can be reported back to SafeSearch.";
1135
1136const char kSaveasMenuLabelExperimentName[] =
1137 "Switch 'Save as' menu labels to 'Download'";
1138const char kSaveasMenuLabelExperimentDescription[] =
1139 "Enables an experiment to switch menu labels that use 'Save as...' to "
1140 "'Download'.";
1141
1142const char kSavePageAsMhtmlName[] = "Save Page as MHTML";
1143const char kSavePageAsMhtmlDescription[] =
1144 "Enables saving pages as MHTML: a single text file containing HTML and all "
1145 "sub-resources.";
1146
Nate Chapin9638e7102017-09-20 22:11:011147const char kSavePreviousDocumentResourcesName[] =
1148 "Save Previous Document Resources";
1149const char kSavePreviousDocumentResourcesDescription[] =
1150 "Saves an old document's cached resources until the specified point in the "
1151 "next document's lifecycle.";
1152const char kSavePreviousDocumentResourcesNever[] =
1153 "Don't explicitly save resources";
1154const char kSavePreviousDocumentResourcesUntilOnDOMContentLoaded[] =
1155 "Save resources until onDOMContentLoaded completes";
1156const char kSavePreviousDocumentResourcesUntilOnLoad[] =
1157 "Save resources until onload completes";
1158
Brett Wilsonecb80982017-07-12 20:34:511159const char kScrollPredictionName[] = "Scroll prediction";
1160const char kScrollPredictionDescription[] =
1161 "Predicts the finger's future position during scrolls allowing time to "
1162 "render the frame before the finger is there.";
1163
1164const char kSecondaryUiMd[] =
1165 "Material Design in the rest of the browser's native UI";
1166const char kSecondaryUiMdDescription[] =
1167 "Extends the --top-chrome-md setting to secondary UI (bubbles, dialogs, "
1168 "etc.). On Mac, this enables MacViews, which uses toolkit-views for native "
1169 "browser dialogs.";
1170
1171const char kServiceWorkerNavigationPreloadName[] =
1172 "Service worker navigation preload.";
1173const char kServiceWorkerNavigationPreloadDescription[] =
1174 "Enable web pages to use the experimental service worker navigation "
1175 "preload API.";
1176
gogeraldd5061b592017-09-06 23:39:551177const char kServiceWorkerPaymentAppsName[] = "Service Worker payment apps";
1178const char kServiceWorkerPaymentAppsDescription[] =
1179 "Enable Service Worker applications to integrate as payment apps";
1180
Makoto Shimazud9f333c2017-08-08 07:23:171181const char kServiceWorkerScriptStreamingName[] =
1182 "Service worker script streaming.";
1183const char kServiceWorkerScriptStreamingDescription[] =
1184 "Installed scripts for a service worker are sent over a dedicated "
1185 "message pipe and data pipes, and that is never be blocked on the main "
1186 "thread.";
1187
Brett Wilsonecb80982017-07-12 20:34:511188const char kSettingsWindowName[] = "Show settings in a window";
1189const char kSettingsWindowDescription[] =
1190 "Settings will be shown in a dedicated window instead of as a browser tab.";
1191
Trent Apted750ba7022017-10-23 13:36:251192const char kShowAllDialogsWithViewsToolkitName[] =
1193 "Show all dialogs with Views toolkit";
1194const char kShowAllDialogsWithViewsToolkitDescription[] =
1195 "All browser dialogs will be shown using the Views toolkit rather than "
1196 "Cocoa. This requires <a href=\"#secondary-ui-md\">#secondary-ui-md</a>.";
1197
Brett Wilsonecb80982017-07-12 20:34:511198const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
1199const char kShowAutofillSignaturesDescription[] =
1200 "Annotates web forms with Autofill signatures as HTML attributes.";
1201
1202const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
1203const char kShowAutofillTypePredictionsDescription[] =
1204 "Annotates web forms with Autofill field type predictions as placeholder "
1205 "text.";
1206
1207const char kShowOverdrawFeedbackName[] = "Show overdraw feedback";
1208const char kShowOverdrawFeedbackDescription[] =
1209 "Visualize overdraw by color-coding elements based on if they have other "
1210 "elements drawn underneath.";
1211
yiyixbdfa9a0b2017-10-23 22:21:471212const char kEnableDrawOcclusionName[] = "Enable draw occlusion";
1213const char kEnableDrawOcclusionDescription[] =
1214 "Enable the system to use draw occlusion to skip draw quads when they are "
1215 "not shown on the screen.";
1216
Brett Wilsonecb80982017-07-12 20:34:511217const char kShowSavedCopyName[] = "Show Saved Copy Button";
1218const char kShowSavedCopyDescription[] =
1219 "When a page fails to load, if a stale copy of the page exists in the "
1220 "browser cache, a button will be presented to allow the user to load that "
1221 "stale copy. The primary enabling choice puts the button in the most "
1222 "salient position on the error page; the secondary enabling choice puts it "
1223 "secondary to the reload button.";
1224const char kEnableShowSavedCopyPrimary[] = "Enable: Primary";
1225const char kEnableShowSavedCopySecondary[] = "Enable: Secondary";
1226const char kDisableShowSavedCopy[] = "Disable";
1227
1228const char kShowTouchHudName[] = "Show HUD for touch points";
1229const char kShowTouchHudDescription[] =
1230 "Enables a heads-up display at the top-left corner of the screen that "
1231 "lists information about the touch-points on the screen.";
1232
1233const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1234const char kSilentDebuggerExtensionApiDescription[] =
1235 "Do not show the infobar when an extension attaches to a page via "
1236 "chrome.debugger API. This is required to debug extension background "
1237 "pages.";
1238
1239const char kSimpleCacheBackendName[] = "Simple Cache for HTTP";
1240const char kSimpleCacheBackendDescription[] =
1241 "The Simple Cache for HTTP is a new cache. It relies on the filesystem for "
1242 "disk space allocation.";
1243
1244const char kSimplifiedFullscreenUiName[] =
1245 "Simplified full screen / mouse lock UI.";
1246const char kSimplifiedFullscreenUiDescription[] =
1247 "A simplified new user experience when entering page-triggered full screen "
1248 "or mouse pointer lock states.";
1249
1250const char kSingleClickAutofillName[] = "Single-click autofill";
1251const char kSingleClickAutofillDescription[] =
1252 "Make autofill suggestions on initial mouse click on a form element.";
1253
1254const char kSiteDetails[] = "Site Details";
1255const char kSiteDetailsDescription[] =
1256 "Adds UI in MD Settings to view all content settings for a specific "
1257 "origin.";
1258
1259const char kSitePerProcessName[] = "Strict site isolation";
1260const char kSitePerProcessDescription[] =
1261 "Highly experimental security mode that ensures each renderer process "
1262 "contains pages from at most one site. In this mode, out-of-process "
1263 "iframes will be used whenever an iframe is cross-site.";
1264
1265const char kSiteSettings[] = "Site settings with All sites and Site details";
1266const char kSiteSettingsDescription[] =
1267 "Adds new ways of viewing Site settings.";
1268
1269const char kSlimmingPaintInvalidationName[] = "Slimming paint invalidation.";
1270const char kSlimmingPaintInvalidationDescription[] =
1271 "Whether to enable a new paint invalidation system.";
1272
1273const char kSmoothScrollingName[] = "Smooth Scrolling";
1274const char kSmoothScrollingDescription[] =
1275 "Animate smoothly when scrolling page content.";
1276
1277const char kSoftwareRasterizerName[] = "3D software rasterizer";
1278const char kSoftwareRasterizerDescription[] =
1279 "Fall back to a 3D software rasterizer when the GPU cannot be used.";
1280
Tommy Steimel77704be2017-08-28 22:14:401281const char kSoundContentSettingName[] = "Sound content setting";
1282const char kSoundContentSettingDescription[] =
1283 "Enable site-wide muting in content settings and tab strip context menu.";
1284
Alexandr Ilinf0500ed32017-09-27 21:12:361285const char kSpeculativePreconnectName[] = "Enable new preconnect predictor";
1286const char kSpeculativePreconnectDescription[] =
1287 "Enable the new implementation of preconnect and DNS preresolve. "
1288 "\"Learning\" means that only database construction is enabled, "
1289 "\"Preconnect\" enables both learning and preconnect and disables the "
1290 "existing implementation. \"No preconnect\" disables both implementations.";
1291
Brett Wilsonecb80982017-07-12 20:34:511292const char kSpeculativePrefetchName[] = "Speculative Prefetch";
vabr0215a8e2017-03-28 12:47:341293const char kSpeculativePrefetchDescription[] =
1294 R"*("Speculative Prefetch" fetches likely resources early to improve )*"
1295 R"*(load times, based on a local database (see chrome://predictors). )*"
1296 R"*("Learning" means that only the database construction is enabled, )*"
1297 R"*("Prefetching" that learning and prefetching are enabled.)*";
1298
Justin Donnelly4e448cb2017-07-07 21:32:131299const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
1300 "Enable speculative start of a service worker when a search is predicted.";
Justin Donnelly4e448cb2017-07-07 21:32:131301const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
1302 "If enabled, when the user enters text in the omnibox that looks like a "
1303 "a query, any service worker associated with the search engine the query "
1304 "will be sent to is started early.";
1305
Brett Wilsonecb80982017-07-12 20:34:511306const char kSpellingFeedbackFieldTrialName[] = "Spelling Feedback Field Trial";
1307const char kSpellingFeedbackFieldTrialDescription[] =
1308 "Enable the field trial for sending user feedback to spelling service.";
horo201d49492017-05-19 05:31:401309
Brett Wilsonecb80982017-07-12 20:34:511310const char kSuggestionsWithSubStringMatchName[] =
1311 "Substring matching for Autofill suggestions";
1312const char kSuggestionsWithSubStringMatchDescription[] =
1313 "Match Autofill suggestions based on substrings (token prefixes) rather "
1314 "than just prefixes.";
vabr0215a8e2017-03-28 12:47:341315
Brett Wilsonecb80982017-07-12 20:34:511316const char kSyncAppListName[] = "App Launcher sync";
1317const char kSyncAppListDescription[] =
1318 "Enable App Launcher sync. This also enables Folders where available (non "
1319 "OSX).";
vabr0215a8e2017-03-28 12:47:341320
Brett Wilsonecb80982017-07-12 20:34:511321const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1322const char kSyncSandboxDescription[] =
1323 "Connects to the testing server for Chrome Sync.";
vabr0215a8e2017-03-28 12:47:341324
Brett Wilsonecb80982017-07-12 20:34:511325const char kTabAudioMutingName[] = "Tab audio muting UI control";
1326const char kTabAudioMutingDescription[] =
1327 "When enabled, the audio indicators in the tab strip double as tab audio "
1328 "mute controls. This also adds commands in the tab context menu for "
1329 "quickly muting multiple selected tabs.";
vabr0215a8e2017-03-28 12:47:341330
Christian Dullweberd0d96f02017-09-13 09:22:511331const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1332const char kTabsInCbdDescription[] =
1333 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
1334
Becky Zhou99c22802017-10-19 05:09:271335const char kTabModalJsDialogName[] = "Auto-dismissing JavaScript Dialogs";
1336const char kTabModalJsDialogDescription[] =
1337 "If enabled, the JavaScript dialog will be auto dismissable when switching"
1338 " tab.";
1339
Brett Wilsonecb80982017-07-12 20:34:511340const char kTcpFastOpenName[] = "TCP Fast Open";
1341const char kTcpFastOpenDescription[] =
1342 "Enable the option to send extra authentication information in the initial "
1343 "SYN packet for a previously connected client, allowing faster data send "
1344 "start.";
vabr0215a8e2017-03-28 12:47:341345
Brett Wilsonecb80982017-07-12 20:34:511346const char kTopChromeMd[] = "UI Layout for the browser's top chrome";
1347const char kTopChromeMdDescription[] =
1348 R"*(Toggles between normal and touch (formerly "hybrid") layouts.)*";
1349const char kTopChromeMdMaterial[] = "Normal";
Eugene Girard42dedf722017-10-12 21:07:531350const char kTopChromeMdMaterialAuto[] = "Auto";
Brett Wilsonecb80982017-07-12 20:34:511351const char kTopChromeMdMaterialHybrid[] = "Touch";
vabr0215a8e2017-03-28 12:47:341352
Brett Wilsonecb80982017-07-12 20:34:511353const char kThreadedScrollingName[] = "Threaded scrolling";
1354const char kThreadedScrollingDescription[] =
1355 "Threaded handling of scroll-related input events. Disabling this will "
1356 "force all such scroll events to be handled on the main thread. Note that "
1357 "this can dramatically hurt scrolling performance of most websites and is "
1358 "intended for testing purposes only.";
1359
Steven Valdez4584b2482017-07-14 01:11:571360const char kTLS13VariantName[] = "TLS 1.3";
1361const char kTLS13VariantDescription[] = "Sets the TLS 1.3 variant used.";
1362const char kTLS13VariantDisabled[] = "Disabled";
Steven Valdez57d88652017-10-05 21:05:111363const char kTLS13VariantDeprecated[] = "Disabled (Deprecated Setting)";
Steven Valdez4584b2482017-07-14 01:11:571364const char kTLS13VariantDraft[] = "Enabled (Draft)";
1365const char kTLS13VariantExperiment[] = "Enabled (Experiment)";
Steven Valdezf00f8782017-09-13 18:05:281366const char kTLS13VariantExperiment2[] = "Enabled (Experiment 2)";
1367const char kTLS13VariantExperiment3[] = "Enabled (Experiment 3)";
Steven Valdez4584b2482017-07-14 01:11:571368
Brett Wilsonecb80982017-07-12 20:34:511369const char kTopDocumentIsolationName[] = "Top document isolation";
1370const char kTopDocumentIsolationDescription[] =
1371 "Highly experimental performance mode where cross-site iframes are kept in "
1372 "a separate process from the top document. In this mode, iframes from "
1373 "different third-party sites will be allowed to share a process.";
1374
Dominick Ng8896b1cd2017-10-17 23:24:361375const char kTopSitesFromSiteEngagementName[] = "Top Sites from Site Engagement";
1376const char kTopSitesFromSiteEngagementDescription[] =
1377 "Enable Top Sites on the New Tab Page to be sourced and sorted using site "
1378 "engagement.";
1379
Brett Wilsonecb80982017-07-12 20:34:511380const char kTouchAdjustmentName[] = "Touch adjustment";
1381const char kTouchAdjustmentDescription[] =
1382 "Refine the position of a touch gesture in order to compensate for touches "
1383 "having poor resolution compared to a mouse.";
1384
1385const char kTouchDragDropName[] = "Touch initiated drag and drop";
1386const char kTouchDragDropDescription[] =
1387 "Touch drag and drop can be initiated through long press on a draggable "
1388 "element.";
1389
1390const char kTouchEventsName[] = "Touch Events API";
1391const char kTouchEventsDescription[] =
1392 "Force Touch Events API feature detection to always be enabled or "
1393 "disabled, or to be enabled when a touchscreen is detected on startup "
1394 "(Automatic, the default).";
1395
1396const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
1397const char kTouchSelectionStrategyDescription[] =
1398 "Controls how text selection granularity changes when touch text selection "
1399 "handles are dragged. Non-default behavior is experimental.";
1400const char kTouchSelectionStrategyCharacter[] = "Character";
1401const char kTouchSelectionStrategyDirection[] = "Direction";
1402
1403const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
1404const char kTraceUploadUrlDescription[] =
1405 "This is to be used in conjunction with the enable-navigation-tracing "
1406 "flag. Please select the label that best describes the recorded traces. "
1407 "This will choose the destination the traces are uploaded to. If you are "
1408 "not sure, select other. If left empty, no traces will be uploaded.";
1409const char kTraceUploadUrlChoiceOther[] = "Other";
1410const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1411const char kTraceUploadUrlChoiceQa[] = "QA";
1412const char kTraceUploadUrlChoiceTesting[] = "Testing";
1413
1414const char kTranslate2016q2UiName[] = "Translate 2016Q2 UI";
1415const char kTranslate2016q2UiDescription[] =
1416 "Improved triggering logic and look for Translate Bubble UI";
1417
1418const char kTranslateLanguageByUlpName[] = "Translate Language by ULP";
1419const char kTranslateLanguageByUlpDescription[] =
1420 "Improved translate target language and triggering logic by considering "
1421 "information from User Language Profile (ULP).";
1422
Philippe Hamel7fdaa452017-09-29 17:22:491423const char kTranslateRankerEnforcementName[] =
1424 "Enforce TranslateRanker decisions";
1425const char kTranslateRankerEnforcementDescription[] =
1426 "Improved Translate UI triggering logic. TranslateRanker decides whether "
1427 "or not Translate UI should be triggered in a given context.";
1428
Brett Wilsonecb80982017-07-12 20:34:511429const char kTrySupportedChannelLayoutsName[] =
1430 "Causes audio output streams to check if channel layouts other than the "
1431 "default hardware layout are available.";
1432const char kTrySupportedChannelLayoutsDescription[] =
1433 "Causes audio output streams to check if channel layouts other than the "
1434 "default hardware layout are available. Turning this on will allow the OS "
1435 "to do stereo to surround expansion if supported. May expose third party "
1436 "driver bugs, use with caution.";
1437
1438const char kUiPartialSwapName[] = "Partial swap";
1439const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
1440
Chris Pickel3a227ae62017-08-24 10:47:261441const char kUseDdljsonApiName[] = "Use new ddljson API for Doodles";
1442const char kUseDdljsonApiDescription[] =
1443 "Enables the new ddljson API to fetch Doodles for the NTP.";
1444
Mustaq Ahmedc646c0a2017-10-20 20:08:301445const char kUserActivationV2Name[] = "User Activation v2";
1446const char kUserActivationV2Description[] =
1447 "Enable simple user activation for APIs that are otherwise controlled by "
1448 "user gesture tokens.";
1449
Brett Wilsonecb80982017-07-12 20:34:511450const char kUserConsentForExtensionScriptsName[] =
1451 "User consent for extension scripts";
1452const char kUserConsentForExtensionScriptsDescription[] =
1453 "Require user consent for an extension running a script on the page, if "
1454 "the extension requested permission to run on all urls.";
1455
1456const char kUseSuggestionsEvenIfFewFeatureName[] =
1457 "Disable minimum for server-side tile suggestions on NTP.";
1458const char kUseSuggestionsEvenIfFewFeatureDescription[] =
1459 "Request server-side suggestions even if there are only very few of them "
1460 "and use them for tiles on the New Tab Page.";
1461
1462const char kV8CacheOptionsName[] = "V8 caching mode.";
1463const char kV8CacheOptionsDescription[] =
1464 "Caching mode for the V8 JavaScript engine.";
1465const char kV8CacheOptionsParse[] = "Cache V8 parser data.";
1466const char kV8CacheOptionsCode[] = "Cache V8 compiler data.";
1467
1468const char kV8CacheStrategiesForCacheStorageName[] =
1469 "V8 caching strategy for CacheStorage.";
1470const char kV8CacheStrategiesForCacheStorageDescription[] =
1471 "Caching strategy of scripts in CacheStorage for the V8 JavaScript engine.";
1472const char kV8CacheStrategiesForCacheStorageNormal[] = "Normal";
1473const char kV8CacheStrategiesForCacheStorageAggressive[] = "Aggressive";
1474
Hitoshi Yoshida3e5db562017-09-11 02:31:081475const char kV8ContextSnapshotName[] = "Use a snapshot to create V8 contexts.";
1476const char kV8ContextSnapshotDescription[] =
1477 "Sets to use a snapshot to create V8 contexts in frame creation.";
1478
Michael Hablich896d52662017-10-23 15:59:571479const char kV8VmFutureName[] = "Future V8 VM features";
1480const char kV8VmFutureDescription[] =
1481 "This enables upcoming and experimental V8 VM features. "
1482 "This flag does not enable experimental JavaScript features.";
1483
Brett Wilsonecb80982017-07-12 20:34:511484const char kVibrateRequiresUserGestureName[] =
1485 "Requiring user gesture for the Vibration API";
1486const char kVibrateRequiresUserGestureDescription[] =
1487 "Block the Vibration API if no user gesture has been received on the frame "
1488 "or any embedded frame.";
1489
1490const char kVideoFullscreenOrientationLockName[] =
1491 "Lock screen orientation when playing a video fullscreen.";
1492const char kVideoFullscreenOrientationLockDescription[] =
1493 "Lock the screen orientation of the device to match video orientation when "
1494 "a video goes fullscreen. Only on phones.";
1495
1496const char kVideoRotateToFullscreenName[] =
1497 "Rotate-to-fullscreen gesture for videos.";
1498const char kVideoRotateToFullscreenDescription[] =
1499 "Enter/exit fullscreen when device is rotated to/from the orientation of "
1500 "the video. Only on phones.";
1501
1502const char kWalletServiceUseSandboxName[] =
1503 "Use Google Payments sandbox servers";
1504const char kWalletServiceUseSandboxDescription[] =
1505 "For developers: use the sandbox service for Google Payments API calls.";
1506
Brett Wilsonecb80982017-07-12 20:34:511507const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
1508const char kWebglDraftExtensionsDescription[] =
1509 "Enabling this option allows web applications to access the WebGL "
1510 "Extensions that are still in draft status.";
1511
1512const char kWebMidiName[] = "Web MIDI API";
1513const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
1514
1515const char kWebPaymentsName[] = "Web Payments";
1516const char kWebPaymentsDescription[] =
1517 "Enable Web Payments API integration, a JavaScript API for merchants.";
1518
Mathieu Perreault51339b82017-07-20 17:06:051519const char kWebPaymentsModifiersName[] = "Enable web payment modifiers";
1520const char kWebPaymentsModifiersDescription[] =
1521 "If the website provides modifiers in the payment request, show the custom "
1522 "total for each payment instrument, update the shopping cart when "
1523 "instruments are switched, and send modified payment method specific data "
1524 "to the payment app.";
1525
Brett Wilsonecb80982017-07-12 20:34:511526const char kWebrtcEchoCanceller3Name[] = "WebRTC Echo Canceller 3.";
1527const char kWebrtcEchoCanceller3Description[] =
1528 "Experimental WebRTC echo canceller (AEC3).";
1529
1530const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
1531const char kWebrtcHwDecodingDescription[] =
1532 "Support in WebRTC for decoding video streams using platform hardware.";
1533
1534const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
1535const char kWebrtcHwEncodingDescription[] =
1536 "Support in WebRTC for encoding video streams using platform hardware.";
1537
1538const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
1539const char kWebrtcHwH264EncodingDescription[] =
1540 "Support in WebRTC for encoding h264 video streams using platform "
1541 "hardware.";
1542
1543const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
1544const char kWebrtcHwVP8EncodingDescription[] =
1545 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
1546
1547const char kWebrtcSrtpAesGcmName[] =
1548 "Negotiation with GCM cipher suites for SRTP in WebRTC";
1549const char kWebrtcSrtpAesGcmDescription[] =
1550 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
1551
Joachim Bauch4a41d7512017-08-23 14:24:231552const char kWebrtcSrtpEncryptedHeadersName[] =
1553 "Negotiation with encrypted header extensions for SRTP in WebRTC";
1554const char kWebrtcSrtpEncryptedHeadersDescription[] =
1555 "When enabled, WebRTC will try to negotiate encrypted header extensions "
1556 "for SRTP.";
1557
Brett Wilsonecb80982017-07-12 20:34:511558const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
1559const char kWebrtcStunOriginDescription[] =
1560 "When enabled, Stun messages generated by WebRTC will contain the Origin "
1561 "header.";
1562
1563const char kWebvrName[] = "WebVR";
1564const char kWebvrDescription[] =
1565 "Enabling this option allows web applications to access experimental "
Michael Thiessenab056202017-10-05 16:50:121566 "Virtual Reality APIs. Warning: Enabling this will also allow WebVR "
1567 "content on insecure origins to access these powerful APIs, and may pose a "
1568 "security risk.";
Brett Wilsonecb80982017-07-12 20:34:511569
1570const char kWifiCredentialSyncName[] = "WiFi credential sync";
1571const char kWifiCredentialSyncDescription[] =
1572 "Enables synchronizing WiFi network settings across devices. When enabled, "
1573 "the WiFi credential datatype is registered with Chrome Sync, and WiFi "
1574 "credentials are synchronized subject to user preferences. (See also, "
1575 "chrome://settings/syncSetup.)";
1576
1577const char kZeroCopyName[] = "Zero-copy rasterizer";
1578const char kZeroCopyDescription[] =
1579 "Raster threads write directly to GPU memory associated with tiles.";
vabr0215a8e2017-03-28 12:47:341580
Brett Wilsonff596952017-07-14 01:06:551581// Android ---------------------------------------------------------------------
1582
1583#if defined(OS_ANDROID)
1584
1585const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
1586const char kAiaFetchingDescription[] =
1587 "Enable intermediate certificate fetching when a server does not provide "
1588 "sufficient certificates to build a chain to a trusted root.";
1589
1590const char kAccessibilityTabSwitcherName[] = "Accessibility Tab Switcher";
1591const char kAccessibilityTabSwitcherDescription[] =
1592 "Enable the accessibility tab switcher for Android.";
1593
Wei-Yin Chen (陳威尹)80683452017-10-02 19:08:251594const char kAllowReaderForAccessibilityName[] = "Reader Mode for Accessibility";
1595const char kAllowReaderForAccessibilityDescription[] =
1596 "Allows Reader Mode on any articles, even if the page is mobile-friendly.";
1597
Brett Wilsonff596952017-07-14 01:06:551598const char kAndroidAutofillAccessibilityName[] = "Autofill Accessibility";
1599const char kAndroidAutofillAccessibilityDescription[] =
1600 "Enable accessibility for autofill popup.";
1601
1602const char kAndroidPaymentAppsName[] = "Android payment apps";
1603const char kAndroidPaymentAppsDescription[] =
1604 "Enable third party Android apps to integrate as payment apps";
1605
Iulia Harasim0b5a4312017-07-21 16:20:501606const char kAndroidSigninPromosName[] = "Signin promos for Android.";
1607const char kAndroidSigninPromosDescription[] =
1608 "New signin promos for Android which will be displayed in content "
1609 "suggestions, Settings, Bookmarks and Recent Tabs.";
1610
Tatiana Gornak38ab3562017-07-28 11:04:181611const char kAndroidViewPasswordsName[] = "Copy and view passwords for Android";
1612const char kAndroidViewPasswordsDescription[] =
1613 "Enables copying and viewing passwords in settings.";
1614
Miriam Gershenson23cfe346e2017-09-28 14:49:291615const char kAsyncDnsName[] = "Async DNS resolver";
1616const char kAsyncDnsDescription[] = "Enables the built-in DNS resolver.";
1617
Brett Wilsonff596952017-07-14 01:06:551618const char kAutofillAccessoryViewName[] =
1619 "Autofill suggestions as keyboard accessory view";
1620const char kAutofillAccessoryViewDescription[] =
1621 "Shows Autofill suggestions on top of the keyboard rather than in a "
1622 "dropdown.";
1623
1624const char kBackgroundLoaderForDownloadsName[] =
1625 "Enables background downloading of pages.";
1626const char kBackgroundLoaderForDownloadsDescription[] =
1627 "Enables downloading pages in the background in case page is not yet "
1628 "loaded in current tab.";
1629
Theresa Wellington82d6f6ef2017-10-12 02:39:131630const char kChromeHomeOptOutSnackbarName[] = "Chrome Home Opt-out Snackbar";
1631const char kChromeHomeOptOutSnackbarDescription[] =
1632 "Show a snackbar prompting users to take a survey the first time they"
1633 " opt-out of Chrome Home";
1634
Theresa Wellingtondd71c5c2017-10-02 15:50:381635const char kChromeHomePersonalizedOmniboxSuggestionsName[] =
1636 "Chrome Home Personalized Omnibox Suggestions";
1637const char kChromeHomePersonalizedOmniboxSuggestionsDescription[] =
1638 "Enable personalized omnibox suggestions on focus for Chrome Home.";
1639
Matthew Jones4214d2a12017-09-28 18:35:111640const char kChromeHomePromoName[] = "Chrome Home Promo";
1641const char kChromeHomePromoDescription[] =
Matthew Jonesdcdf51b2017-10-12 20:02:331642 "Enable showing the opt-in/out Chrome Home promo.";
Matthew Jones4214d2a12017-09-28 18:35:111643
Brett Wilsonff596952017-07-14 01:06:551644const char kChromeHomeSwipeLogicName[] = "Chrome Home Swipe Logic";
1645const char kChromeHomeSwipeLogicDescription[] =
1646 "Various swipe logic options for Chrome Home for sheet expansion.";
1647const char kChromeHomeSwipeLogicRestrictArea[] = "Restrict swipable area";
Brett Wilsonff596952017-07-14 01:06:551648
Troy Hildebrandtf758d112017-10-18 23:05:561649const char kChromeHomeBottomNavLabelsName[] =
1650 "Chrome Home bottom navigation menu item labels.";
1651const char kChromeHomeBottomNavLabelsDescription[] =
1652 "Enables text labels for Chrome Home bottom navigation menu items.";
1653
Brett Wilsonff596952017-07-14 01:06:551654const char kChromeHomeName[] = "Chrome Home";
1655const char kChromeHomeDescription[] =
1656 "Enables Chrome Home on Android. You must restart the browser"
1657 " twice for changes to take effect.";
1658
Megan Jablonskic61eb1b82017-10-02 18:03:061659const char kChromeMemexName[] = "Chrome Memex";
1660const char kChromeMemexDescription[] =
1661 "Enables Chrome Memex homepage on Android. Restricted to opted-in "
1662 "Googlers.";
1663
Brett Wilsonff596952017-07-14 01:06:551664const char kContentSuggestionsCategoryOrderName[] =
1665 "Default content suggestions category order (e.g. on NTP)";
1666const char kContentSuggestionsCategoryOrderDescription[] =
1667 "Set default order of content suggestion categories (e.g. on the NTP).";
1668
1669const char kContentSuggestionsCategoryRankerName[] =
1670 "Content suggestions category ranker (e.g. on NTP)";
1671const char kContentSuggestionsCategoryRankerDescription[] =
1672 "Set category ranker to order categories of content suggestions (e.g. on "
1673 "the NTP).";
1674
Vitalii Iarkof52ff802017-09-14 12:34:241675const char kContentSuggestionsDebugLogName[] = "Content suggestions debug log";
1676const char kContentSuggestionsDebugLogDescription[] =
1677 "Enable content suggestions debug log accessible through "
1678 "snippets-internals.";
1679
Brett Wilsonff596952017-07-14 01:06:551680const char kContextualSearchContextualCardsBarIntegration[] =
1681 "Contextual Search - Contextual Cards Integration";
1682const char kContextualSearchContextualCardsBarIntegrationDescription[] =
1683 "Whether or not integration of Contextual Cards data in the Contextual "
1684 "Search Bar is enabled.";
1685
1686const char kContextualSearchSingleActionsName[] =
1687 "Contextual Search - Single Actions";
1688const char kContextualSearchSingleActionsDescription[] =
1689 "Whether or not single actions using Contextual Cards data in the "
1690 "Contextual Search Bar is enabled.";
1691
1692const char kContextualSearchUrlActionsName[] =
1693 "Contextual Search - URL Actions";
1694const char kContextualSearchUrlActionsDescription[] =
1695 "Whether or not URL actions using Contextual Cards data in the Contextual "
1696 "Search Bar is enabled.";
1697
1698const char kContextualSearchName[] = "Contextual Search";
1699const char kContextualSearchDescription[] =
1700 "Whether or not Contextual Search is enabled.";
1701
Dmitry Skiba9c3efa72017-07-20 22:01:141702const char kDontPrefetchLibrariesName[] = "Don't Prefetch Libraries";
1703const char kDontPrefetchLibrariesDescription[] =
1704 "Don't prefetch libraries after loading.";
1705
Joy Ming5fd29ca62017-10-02 22:51:221706const char kDownloadsForegroundName[] = "Enable downloads foreground";
1707const char kDownloadsForegroundDescription[] =
1708 "Enable downloads as a foreground service for all versions of Android.";
1709
Brett Wilsonff596952017-07-14 01:06:551710const char kEnableAndroidPayIntegrationV1Name[] = "Enable Android Pay v1";
1711const char kEnableAndroidPayIntegrationV1Description[] =
1712 "Enable integration with Android Pay using the first version of the API";
1713
1714const char kEnableAndroidPayIntegrationV2Name[] = "Enable Android Pay v2";
1715const char kEnableAndroidPayIntegrationV2Description[] =
1716 "Enable integration with Android Pay using the second version of the API";
1717
Vitalii Iarkof4ed32d2017-09-26 13:15:531718const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
Brett Wilsonff596952017-07-14 01:06:551719const char kEnableAndroidSpellcheckerDescription[] =
1720 "Enables use of the Android spellchecker.";
Brett Wilsonff596952017-07-14 01:06:551721
Vitalii Iarkof4ed32d2017-09-26 13:15:531722const char kEnableContentSuggestionsNewFaviconServerName[] =
1723 "Get favicons for content suggestions from a new server.";
1724const char kEnableContentSuggestionsNewFaviconServerDescription[] =
1725 "If enabled, the content suggestions (on the NTP) will get favicons from a "
1726 "new favicon server.";
Brett Wilsonff596952017-07-14 01:06:551727
1728const char kEnableContentSuggestionsSettingsName[] =
1729 "Show content suggestions settings.";
1730const char kEnableContentSuggestionsSettingsDescription[] =
1731 "If enabled, the content suggestions settings will be available from the "
1732 "main settings menu.";
1733
Vitalii Iarkof4ed32d2017-09-26 13:15:531734const char kEnableContentSuggestionsThumbnailDominantColorName[] =
1735 "Use content suggestions thumbnail dominant color.";
1736const char kEnableContentSuggestionsThumbnailDominantColorDescription[] =
1737 "Use content suggestions thumbnail dominant color as a placeholder before "
1738 "the real thumbnail is fetched (requires Chrome Home).";
1739
Brett Wilsonff596952017-07-14 01:06:551740const char kEnableCopylessPasteName[] = "App Indexing (Copyless Paste)";
1741const char kEnableCopylessPasteDescription[] =
1742 "Provide suggestions for text input, based on your recent context. For "
1743 "example, if you looked at a restaurant website and switched to the Maps "
1744 "app, the keyboard would offer the name of that restaurant as a suggestion "
1745 "to enter into the search bar. The data is indexed locally, and never sent "
1746 "to the server. It's disabled in incognito mode.";
1747
1748const char kEnableCustomContextMenuName[] = "Enable custom context menu";
1749const char kEnableCustomContextMenuDescription[] =
1750 "Enables a new context menu when a link, image, or video is pressed within "
1751 "Chrome.";
1752
1753const char kEnableCustomFeedbackUiName[] = "Enable Custom Feedback UI";
1754const char kEnableCustomFeedbackUiDescription[] =
1755 "Enables a custom feedback UI when submitting feedback through Google "
1756 "Feedback. Works with Google Play Services v10.2+";
1757
1758const char kEnableDataReductionProxyMainMenuName[] =
Theresa Wellington141e4af2017-10-23 20:28:471759 "Enable Data Saver main menu item";
Brett Wilsonff596952017-07-14 01:06:551760const char kEnableDataReductionProxyMainMenuDescription[] =
Theresa Wellington141e4af2017-10-23 20:28:471761 "Enables the Data Saver menu item in the main menu";
Brett Wilsonff596952017-07-14 01:06:551762
1763const char kEnableDataReductionProxySiteBreakdownName[] =
1764 "Data Saver Site Breakdown";
1765const char kEnableDataReductionProxySiteBreakdownDescription[] =
1766 "Enable the site breakdown on the Data Saver settings page.";
1767
1768const char kEnableOmniboxClipboardProviderName[] =
1769 "Omnibox clipboard URL suggestions";
1770const char kEnableOmniboxClipboardProviderDescription[] =
1771 "Provide a suggestion of the URL stored in the clipboard (if any) upon "
1772 "focus in the omnibox.";
1773
1774const char kEnableExpandedAutofillCreditCardPopupLayoutName[] =
1775 "Use expanded autofill credit card popup layout.";
1776const char kEnableExpandedAutofillCreditCardPopupLayoutDescription[] =
1777 "If enabled, displays autofill credit card popup using expanded layout.";
1778
1779const char kEnableFaviconsFromWebManifestName[] =
1780 "Load favicons from Web Manifests";
1781const char kEnableFaviconsFromWebManifestDescription[] =
1782 "Fetch Web Manifests on page load to read favicons from them.";
1783
1784const char kEnableNtpAssetDownloadSuggestionsName[] =
1785 "Show asset downloads on the New Tab page";
1786const char kEnableNtpAssetDownloadSuggestionsDescription[] =
1787 "If enabled, the list of content suggestions on the New Tab page will "
1788 "contain assets (e.g. books, pictures, audio) that the user downloaded for "
1789 "later use.";
1790
1791const char kEnableNtpBookmarkSuggestionsName[] =
1792 "Show recently visited bookmarks on the New Tab page";
1793const char kEnableNtpBookmarkSuggestionsDescription[] =
1794 "If enabled, the list of content suggestions on the New Tab page will "
1795 "contain recently visited bookmarks.";
1796
1797const char kEnableNtpForeignSessionsSuggestionsName[] =
1798 "Show recent foreign tabs on the New Tab page";
1799const char kEnableNtpForeignSessionsSuggestionsDescription[] =
1800 "If enabled, the list of content suggestions on the New Tab page will "
1801 "contain recent foreign tabs.";
1802
1803const char kEnableNtpMostLikelyFaviconsFromServerName[] =
1804 "Download favicons for NTP tiles from Google.";
1805const char kEnableNtpMostLikelyFaviconsFromServerDescription[] =
1806 "If enabled, missing favicons for NTP tiles get downloaded from Google. "
1807 "This only applies to tiles that originate from synced history.";
1808
Jan Krcal7fadbd32017-08-04 10:49:211809const char kNtpTilesLowerResolutionFaviconsName[] =
1810 "Show also lower resolution favicons in NTP tiles.";
1811const char kNtpTilesLowerResolutionFaviconsDescription[] =
1812 "If enabled, the size limit for a favicon to get displayed in an NTP tile "
1813 "decreases. Tiles where the largest available favicon is below this limit "
1814 "get displayed as colored tiles.";
1815
Brett Wilsonff596952017-07-14 01:06:551816const char kEnableNtpOfflinePageDownloadSuggestionsName[] =
1817 "Show offline page downloads on the New Tab page";
1818const char kEnableNtpOfflinePageDownloadSuggestionsDescription[] =
1819 "If enabled, the list of content suggestions on the New Tab page will "
1820 "contain pages that the user downloaded for later use.";
1821
1822const char kEnableNtpRemoteSuggestionsName[] =
1823 "Show server-side suggestions on the New Tab page";
1824const char kEnableNtpRemoteSuggestionsDescription[] =
1825 "If enabled, the list of content suggestions on the New Tab page will "
1826 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
1827 "allows to override the source used to retrieve these server-side "
1828 "suggestions.";
1829
1830const char kEnableNtpSnippetsVisibilityName[] =
1831 "Make New Tab Page Snippets more visible.";
1832const char kEnableNtpSnippetsVisibilityDescription[] =
1833 "If enabled, the NTP snippets will become more discoverable with a larger "
1834 "portion of the first card above the fold.";
1835
1836const char kEnableNtpSuggestionsNotificationsName[] =
1837 "Notify about new content suggestions available at the New Tab page";
1838const char kEnableNtpSuggestionsNotificationsDescription[] =
1839 "If enabled, notifications will inform about new content suggestions on "
1840 "the New Tab page.";
1841
1842const char kEnablePhysicalWebName[] = "Enable the Physical Web.";
1843const char kEnablePhysicalWebDescription[] =
1844 "Enable scanning for URLs from Physical Web objects.";
1845
1846const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
1847const char kEnableOfflinePreviewsDescription[] =
1848 "Enable showing offline page previews on slow networks.";
1849
1850const char kEnableOskOverscrollName[] = "Enable OSK Overscroll";
1851const char kEnableOskOverscrollDescription[] =
1852 "Enable OSK overscroll support. With this flag on, the OSK will only "
1853 "resize the visual viewport.";
1854
1855const char kEnableSpecialLocaleName[] =
1856 "Enable custom logic for special locales.";
1857const char kEnableSpecialLocaleDescription[] =
1858 "Enable custom logic for special locales. In this mode, Chrome might "
1859 "behave differently in some locales.";
1860
Brett Wilsonff596952017-07-14 01:06:551861const char kEnableWebNfcName[] = "WebNFC";
1862const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
1863
gogeraldf3cbb422017-07-26 14:37:121864const char kEnableWebPaymentsMethodSectionOrderV2Name[] =
1865 "Enable Web Payments method section order V2.";
1866const char kEnableWebPaymentsMethodSectionOrderV2Description[] =
1867 "Enable this option to display payment method section above address "
1868 "section instead of below it.";
1869
Brett Wilsonff596952017-07-14 01:06:551870const char kEnableWebPaymentsSingleAppUiSkipName[] =
1871 "Enable Web Payments single app UI skip";
1872const char kEnableWebPaymentsSingleAppUiSkipDescription[] =
1873 "Enable Web Payments to skip showing its UI if the developer specifies a "
1874 "single app.";
1875
1876const char kHerbPrototypeChoicesName[] = "Switch preferred flavor of Herb";
1877const char kHerbPrototypeChoicesDescription[] =
1878 "Switching this option changes which tab management prototype is being "
1879 "tested.";
1880const char kHerbPrototypeFlavorElderberry[] =
1881 "ELDERBERRY: All View Intents in CCT v2";
1882
1883const char kKeepPrefetchedContentSuggestionsName[] =
1884 "Keep prefetched content suggestions";
1885const char kKeepPrefetchedContentSuggestionsDescription[] =
1886 "If enabled, some of prefetched content suggestions are not replaced by "
1887 "the new fetched suggestions.";
1888
1889const char kLsdPermissionPromptName[] =
1890 "Location Settings Dialog Permission Prompt";
1891const char kLsdPermissionPromptDescription[] =
1892 "Whether to use the Google Play Services Location Settings Dialog "
1893 "permission dialog.";
1894
Brett Wilsonff596952017-07-14 01:06:551895const char kMediaScreenCaptureName[] = "Experimental ScreenCapture.";
1896const char kMediaScreenCaptureDescription[] =
1897 "Enable this option for experimental ScreenCapture feature on Android.";
1898
1899const char kModalPermissionPromptsName[] = "Modal Permission Prompts";
1900const char kModalPermissionPromptsDescription[] =
1901 "Whether to use permission dialogs in place of permission infobars.";
1902
Brett Wilsonff596952017-07-14 01:06:551903const char kNewPhotoPickerName[] = "Enable new Photopicker";
1904const char kNewPhotoPickerDescription[] =
1905 "Activates the new picker for selecting photos.";
1906
1907const char kNoCreditCardAbort[] = "No Credit Card Abort";
1908const char kNoCreditCardAbortDescription[] =
1909 "Whether or not the No Credit Card Abort is enabled.";
1910
1911const char kNtpCondensedLayoutName[] = "Condensed NTP layout";
1912const char kNtpCondensedLayoutDescription[] =
1913 "Show a condensed layout on the New Tab Page.";
1914
1915const char kNtpCondensedTileLayoutName[] = "Condensed NTP tile layout";
1916const char kNtpCondensedTileLayoutDescription[] =
1917 "Show a condensed tile layout on the New Tab Page.";
1918
Nicolas Dossou-gbete56f37dc2017-08-10 16:14:041919const char kSiteExplorationUiName[] = "Site Exploration UI";
1920const char kSiteExplorationUiDescription[] =
1921 "Show site suggestions in the Exploration UI";
1922
Brett Wilsonff596952017-07-14 01:06:551923const char kNtpGoogleGInOmniboxName[] = "Google G in New Tab Page omnibox";
1924const char kNtpGoogleGInOmniboxDescription[] =
1925 "Show a Google G in the omnibox on the New Tab Page.";
1926
1927const char kNtpOfflinePagesName[] = "Enable NTP offline pages";
1928const char kNtpOfflinePagesDescription[] =
1929 "Enables badging of offline pages on the New Tab page. Only relevant if "
1930 "offline pages are enabled.";
1931
1932const char kNtpPopularSitesName[] = "Show popular sites on the New Tab page";
1933const char kNtpPopularSitesDescription[] =
1934 "Pre-populate the New Tab page with popular sites.";
1935
Brett Wilsonff596952017-07-14 01:06:551936const char kOfflineBookmarksName[] = "Enable offline bookmarks";
1937const char kOfflineBookmarksDescription[] =
1938 "Enable saving bookmarked pages for offline viewing.";
1939
1940const char kOfflinePagesAsyncDownloadName[] =
1941 R"*(Enables showing "DOWNLOAD WHEN ONLINE" button in error pages.)*";
1942const char kOfflinePagesAsyncDownloadDescription[] =
1943 R"*(Enables showing "DOWNLOAD WHEN ONLINE" button in error pages such )*"
1944 R"*(that the user can click on it to download the page later.)*";
1945
1946const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
1947const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
1948
1949const char kOfflinePagesCtV2Name[] = "Enable Offline Pages CT V2 features.";
1950const char kOfflinePagesCtV2Description[] =
1951 "V2 features include attributing pages to the app that initiated the "
1952 "custom tabs, and being able to query for pages by page attribution.";
1953
1954const char kOfflinePagesLoadSignalCollectingName[] =
1955 "Enables collecting load timing data for offline page snapshots.";
1956const char kOfflinePagesLoadSignalCollectingDescription[] =
1957 "Enables loading completeness data collection while writing an offline "
1958 "page. This data is collected in the snapshotted offline page to allow "
1959 "data analysis to improve deciding when to make the offline snapshot.";
1960
1961const char kOfflinePagesPrefetchingName[] =
1962 "Enables suggested offline pages to be prefetched.";
1963const char kOfflinePagesPrefetchingDescription[] =
1964 "Enables suggested offline pages to be prefetched, so useful content is "
1965 "available while offline.";
1966
Cathy Li3d5379e2017-09-07 00:11:091967const char kOfflinePagesPrefetchingUIName[] =
1968 "Enables prefetched offline pages to be shown in UI.";
1969const char kOfflinePagesPrefetchingUIDescription[] =
1970 "Enables prefetched offline pages to raise notifications and be shown in "
1971 "download home UI.";
1972
Pete Williamson7845dff2017-09-20 11:06:191973const char kOfflinePagesResourceBasedSnapshotName[] =
1974 "Enables offline page snapshots to be based on percentage of page loaded.";
1975const char kOfflinePagesResourceBasedSnapshotDescription[] =
1976 "Enables offline page snapshots to use a resource percentage based "
1977 "approach for determining when the page is loaded as opposed to a time "
1978 "based approach";
1979
Collin Baker17f92a52017-07-19 21:41:251980const char kOfflinePagesRenovationsName[] = "Enables offline page renovations.";
1981const char kOfflinePagesRenovationsDescription[] =
1982 "Enables offline page renovations which correct issues with dynamic "
1983 "content that occur when offlining pages that use JavaScript.";
1984
Brett Wilsonff596952017-07-14 01:06:551985const char kOfflinePagesSharingName[] = "Enables offline pages to be shared.";
1986const char kOfflinePagesSharingDescription[] =
1987 "Enables the saved offline pages to be shared via other applications.";
1988
1989const char kOfflinePagesSvelteConcurrentLoadingName[] =
1990 "Enables concurrent background loading on svelte.";
1991const char kOfflinePagesSvelteConcurrentLoadingDescription[] =
1992 "Enables concurrent background loading (or downloading) of pages on "
1993 "Android svelte (512MB RAM) devices. Otherwise, background loading will "
1994 "happen when the svelte device is idle.";
1995
1996const char kOffliningRecentPagesName[] =
1997 "Enable offlining of recently visited pages";
1998const char kOffliningRecentPagesDescription[] =
1999 "Enable storing recently visited pages locally for offline use. Requires "
2000 "Offline Pages to be enabled.";
2001
Lei Zhang2eca9082017-10-17 20:42:502002const char kPayWithGoogleV1Name[] = "Pay with Google v1";
2003const char kPayWithGoogleV1Description[] =
Brett Wilsonff596952017-07-14 01:06:552004 "Enable Pay with Google integration into Web Payments with API version "
2005 "'1'.";
2006
Matthew Jones7c37430cd2017-09-11 15:59:282007const char kProgressBarThrottleName[] = "Android progress update throttling.";
2008const char kProgressBarThrottleDescription[] =
2009 "Limit the maximum progress update to make progress appear smoother.";
2010
Brett Wilsonff596952017-07-14 01:06:552011const char kProgressBarCompletionName[] =
2012 "Android phone page load progress bar completion time.";
2013const char kProgressBarCompletionDescription[] =
2014 "Configures Android phone page loading progress bar completion time.";
2015const char kProgressBarCompletionLoadEvent[] =
2016 R"*(Top loading frame's onload event ("everything" is done in the )*"
2017 R"*(page, historical behavior).)*";
2018const char kProgressBarCompletionResourcesBeforeDcl[] =
2019 "Main frame's domContentLoaded and all resources loads started before "
2020 "domContentLoaded (iframes ignored).";
2021const char kProgressBarCompletionDomContentLoaded[] =
2022 "Main frame's domContentLoaded (iframes ignored).";
2023const char kProgressBarCompletionResourcesBeforeDclAndSameOriginIframes[] =
2024 "domContentLoaded and all resources loads started before domContentLoaded "
2025 "(main frame and same origin iframes).";
2026
2027const char kPullToRefreshEffectName[] = "The pull-to-refresh effect";
2028const char kPullToRefreshEffectDescription[] =
2029 "Page reloads triggered by vertically overscrolling content.";
2030
Piotr Swigon7c296ef2017-08-29 04:32:002031const char kPwaImprovedSplashScreenName[] =
2032 "Improved Splash Screen for standalone PWAs";
2033const char kPwaImprovedSplashScreenDescription[] =
2034 "Enables the Improved Splash Screen UX for standalone PWAs based on new "
2035 "Web App Manifest attributes";
Piotr Swigon9f630b32017-07-26 09:42:492036const char kPwaPersistentNotificationName[] =
2037 "Persistent notification in standalone PWA";
2038const char kPwaPersistentNotificationDescription[] =
2039 "Enables a persistent Android notification for standalone PWAs";
2040
Brett Wilsonff596952017-07-14 01:06:552041const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
2042const char kReaderModeHeuristicsDescription[] =
2043 "Determines what pages the Reader Mode infobar is shown on.";
2044const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
2045const char kReaderModeHeuristicsAdaboost[] = "Non-mobile-friendly articles";
2046const char kReaderModeHeuristicsAllArticles[] = "All articles";
2047const char kReaderModeHeuristicsAlwaysOff[] = "Never";
2048const char kReaderModeHeuristicsAlwaysOn[] = "Always";
2049
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:182050const char kReaderModeInCCTName[] = "Reader Mode in CCT";
2051const char kReaderModeInCCTDescription[] =
2052 "Open Reader Mode in Chrome Custom Tabs.";
2053
Brett Wilsonff596952017-07-14 01:06:552054const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2055const char kSetMarketUrlForTestingDescription[] =
2056 "When enabled, sets the market URL for use in testing the update menu "
2057 "item.";
2058
2059const char kSpannableInlineAutocompleteName[] = "Spannable inline autocomplete";
2060const char kSpannableInlineAutocompleteDescription[] =
2061 "A new type of inline autocomplete for the omnibox that works with "
2062 "keyboards that compose text.";
2063
Brett Wilsonff596952017-07-14 01:06:552064const char kTranslateCompactUIName[] = "New Translate Infobar";
2065const char kTranslateCompactUIDescription[] =
2066 "Enable the new Translate compact infobar UI.";
2067
2068const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2069const char kUpdateMenuBadgeDescription[] =
2070 "When enabled, an update badge will be shown on the app menu button.";
2071
2072const char kUpdateMenuItemCustomSummaryDescription[] =
2073 "When this flag and the force show update menu item flag are enabled, a "
2074 "custom summary string will be displayed below the update menu item.";
2075const char kUpdateMenuItemCustomSummaryName[] =
2076 "Update menu item custom summary";
2077
2078const char kUpdateMenuItemName[] = "Force show update menu item";
2079const char kUpdateMenuItemDescription[] =
2080 R"*(When enabled, an "Update Chrome" item will be shown in the app )*"
2081 R"*(menu.)*";
2082
2083const char kUseAndroidMidiApiName[] = "Use Android Midi API";
2084const char kUseAndroidMidiApiDescription[] =
2085 "Use Android Midi API for WebMIDI (effective only with Android M+ "
2086 "devices).";
2087
Marc Treib93af46a2017-08-23 13:30:002088const char kThirdPartyDoodlesName[] =
2089 "Enable Doodles for third-party search engines";
2090const char kThirdPartyDoodlesDescription[] =
2091 "Enables fetching and displaying Doodles on the NTP for third-party search "
2092 "engines.";
2093
Brett Wilson7b44537e2017-08-18 01:38:282094// Non-Android -----------------------------------------------------------------
Brett Wilsonff596952017-07-14 01:06:552095
Brett Wilson7b44537e2017-08-18 01:38:282096#else // !defined(OS_ANDROID)
brettw5f9c1642017-05-14 17:12:482097
Brett Wilson7b44537e2017-08-18 01:38:282098const char kAccountConsistencyName[] =
2099 "Identity consistency between browser and cookie jar";
2100const char kAccountConsistencyDescription[] =
2101 "When enabled, the browser manages signing in and out of Google accounts.";
2102const char kAccountConsistencyChoiceMirror[] = "Mirror";
2103const char kAccountConsistencyChoiceDice[] = "Dice";
vabr0215a8e2017-03-28 12:47:342104
Chris Pickel3a227ae62017-08-24 10:47:262105const char kDoodlesOnLocalNtpName[] = "Enable doodles on the local NTP";
2106const char kDoodlesOnLocalNtpDescription[] =
2107 "Show doodles on the local New Tab page if Google is the default search "
2108 "engine.";
2109
mlamouriff56c092017-05-11 15:31:392110const char kEnableAudioFocusName[] = "Manage audio focus across tabs";
mlamouriff56c092017-05-11 15:31:392111const char kEnableAudioFocusDescription[] =
vabr0215a8e2017-03-28 12:47:342112 "Manage audio focus across tabs to improve the audio mixing.";
mlamouriff56c092017-05-11 15:31:392113const char kEnableAudioFocusDisabled[] = "Disabled";
mlamouriff56c092017-05-11 15:31:392114const char kEnableAudioFocusEnabled[] = "Enabled";
mlamouriff56c092017-05-11 15:31:392115const char kEnableAudioFocusEnabledDuckFlash[] =
vabr0215a8e2017-03-28 12:47:342116 "Enabled (Flash lowers volume when interrupted by other sound, "
2117 "experimental)";
2118
Brett Wilson7b44537e2017-08-18 01:38:282119const char kEnableNewAppMenuIconName[] = "Enable the New App Menu Icon";
2120const char kEnableNewAppMenuIconDescription[] =
2121 "Use the new app menu icon with update notification animations.";
vabr0215a8e2017-03-28 12:47:342122
2123const char kOmniboxEntitySuggestionsName[] = "Omnibox entity suggestions";
vabr0215a8e2017-03-28 12:47:342124const char kOmniboxEntitySuggestionsDescription[] =
krbcc621412017-06-01 19:40:282125 "Enable receiving entity suggestions - disambiguation descriptions - for "
2126 "Omnibox suggestions.";
2127
2128const char kOmniboxTailSuggestionsName[] = "Omnibox tail suggestions";
2129const char kOmniboxTailSuggestionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192130 "Enable receiving tail suggestions, a type of search suggestion based on "
2131 "the last few words in the query, for the Omnibox.";
vabr0215a8e2017-03-28 12:47:342132
Brett Wilson7b44537e2017-08-18 01:38:282133const char kOneGoogleBarOnLocalNtpName[] =
2134 "Enable the OneGoogleBar on the local NTP";
2135const char kOneGoogleBarOnLocalNtpDescription[] =
2136 "Show a OneGoogleBar on the local New Tab page if Google is the default "
2137 "search engine.";
2138
ojan38c678352017-04-11 20:27:552139const char kPauseBackgroundTabsName[] = "Pause background tabs";
2140const char kPauseBackgroundTabsDescription[] =
2141 "Pause timers in background tabs after 5 minutes on desktop.";
2142
Brett Wilson7b44537e2017-08-18 01:38:282143const char kUseGoogleLocalNtpName[] = "Enable using the Google local NTP";
2144const char kUseGoogleLocalNtpDescription[] =
2145 "Use the local New Tab page if Google is the default search engine.";
spqchan064a8112017-04-18 16:46:322146
Brett Wilson7b44537e2017-08-18 01:38:282147const char kVoiceSearchOnLocalNtpName[] =
2148 "Enable Voice Search on the local NTP";
2149const char kVoiceSearchOnLocalNtpDescription[] =
2150 "Show a microphone for voice search on the local New Tab page "
2151 "if Google is the default search engine.";
2152
2153#if defined(GOOGLE_CHROME_BUILD)
2154
2155const char kGoogleBrandedContextMenuName[] =
2156 "Google branding in the context menu";
2157const char kGoogleBrandedContextMenuDescription[] =
2158 "Shows a Google icon next to context menu items powered by Google "
2159 "services.";
2160
2161#endif // !defined(GOOGLE_CHROME_BUILD)
2162
2163#endif // !defined(OS_ANDROID)
2164
2165// Windows ---------------------------------------------------------------------
2166
2167#if defined(OS_WIN)
2168
2169const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
2170const char kCloudPrintXpsDescription[] =
2171 "XPS enables advanced options for classic printers connected to the Cloud "
2172 "Print with Chrome. Printers must be re-connected after changing this "
2173 "flag.";
2174
Dave Tapuskadd43469d2017-08-22 22:15:532175const char kDirectManipulationStylusName[] = "Direct Manipulation Stylus";
2176const char kDirectManipulationStylusDescription[] =
2177 "If enabled, Chrome will scroll web pages on stylus drag.";
2178
Brett Wilson7b44537e2017-08-18 01:38:282179const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
2180const char kDisablePostscriptPrintingDescription[] =
2181 "Disables PostScript generation when printing to PostScript capable "
2182 "printers, and uses EMF generation in its place.";
2183
2184const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
2185const char kEnableAppcontainerDescription[] =
2186 "Enables the use of an AppContainer on sandboxed processes to improve "
2187 "security.";
2188
2189const char kEnableD3DVsync[] = "D3D v-sync";
2190const char kEnableD3DVsyncDescription[] =
2191 "Produces v-sync signal by having D3D wait for vertical blanking interval "
2192 "to occur.";
2193
2194const char kEnableDesktopIosPromotionsName[] = "Desktop to iOS promotions.";
2195const char kEnableDesktopIosPromotionsDescription[] =
2196 "Enable Desktop to iOS promotions, and allow users to see them if they are "
2197 "eligible.";
2198
2199const char kGdiTextPrinting[] = "GDI Text Printing";
2200const char kGdiTextPrintingDescription[] =
2201 "Use GDI to print text as simply text";
2202
2203const char kMergeKeyCharEventsName[] =
2204 "Enable or disable merging merging the key event (WM_KEY*) with char event "
2205 "(WM_CHAR).";
2206const char kMergeKeyCharEventsDescription[] =
2207 "If disabled, Chrome will handle WM_KEY* and WM_CHAR separately.";
2208
2209const char kTraceExportEventsToEtwName[] =
2210 "Enable exporting of tracing events to ETW.";
2211const char kTraceExportEventsToEtwDesription[] =
2212 "If enabled, trace events will be exported to the Event Tracing for "
2213 "Windows (ETW) and can then be captured by tools such as UIForETW or "
2214 "Xperf.";
2215
2216const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2217const char kUseWinrtMidiApiDescription[] =
2218 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
2219 "later).";
2220
2221const char kWindows10CustomTitlebarName[] = "Custom-drawn Windows 10 Titlebar";
2222const char kWindows10CustomTitlebarDescription[] =
2223 "If enabled, Chrome will draw the titlebar and caption buttons instead of "
2224 "deferring to Windows.";
2225
Wez6656c572017-08-29 22:29:582226#if DCHECK_IS_ON() && defined(SYZYASAN)
Lei Zhang2eca9082017-10-17 20:42:502227const char kSyzyAsanDcheckIsFatalName[] = "DCHECKs are fatal";
2228const char kSyzyAsanDcheckIsFatalDescription[] =
Wez6656c572017-08-29 22:29:582229 "By default Chrome will evaluate DCHECKs in SyzyASAN builds, but only log "
2230 "failed DCHECKs. If enabled, DCHECKs will crash the calling process.";
2231#endif // DCHECK_IS_ON() && defined(SYZYASAN)
2232
Brett Wilson7b44537e2017-08-18 01:38:282233#endif // defined(OS_WIN)
2234
2235// Mac -------------------------------------------------------------------------
2236
2237#if defined(OS_MACOSX)
2238
2239const char kAppInfoDialogName[] = "Toolkit-Views App Info Dialog.";
2240const char kAppInfoDialogDescription[] =
2241 "Makes the Toolkit-Views based App Info dialog accessible from "
2242 "chrome://apps or chrome://extensions in place of the native extension "
2243 "permissions dialog, or the details link (which is a link to the Web "
2244 "Store).";
2245
2246const char kAppWindowCyclingName[] = "Custom Window Cycling for Chrome Apps.";
2247const char kAppWindowCyclingDescription[] =
2248 "Changes the behavior of Cmd+` when a Chrome App becomes active. When "
2249 "enabled, Chrome Apps will not be cycled when Cmd+` is pressed from a "
2250 "browser window, and browser windows will not be cycled when a Chrome App "
2251 "is active.";
2252
Lei Zhang2eca9082017-10-17 20:42:502253const char kCreditCardAutofillTouchBarName[] = "Credit Card Autofill Touch Bar";
2254const char kCreditCardAutofillTouchBarDescription[] =
Brett Wilson7b44537e2017-08-18 01:38:282255 "Shows Credit Card Autofill Suggestions on the Touch Bar.";
2256
2257const char kFullscreenToolbarRevealName[] =
2258 "Enables the toolbar in fullscreen to reveal itself.";
2259const char kFullscreenToolbarRevealDescription[] =
2260 "Reveal the toolbar in fullscreen for a short period when the tab strip "
2261 "has changed.";
2262
2263const char kContentFullscreenName[] = "Improved Content Fullscreen";
2264const char kContentFullscreenDescription[] =
2265 "Fullscreen content window detaches from main browser window and goes to "
2266 "a new space without moving or changing the original browser window.";
2267
Lei Zhang2eca9082017-10-17 20:42:502268const char kDialogTouchBarName[] = "Dialog Touch Bar";
2269const char kDialogTouchBarDescription[] =
Brett Wilson7b44537e2017-08-18 01:38:282270 "Shows Dialog buttons on the Touch Bar.";
2271
2272const char kHostedAppsInWindowsName[] =
2273 "Allow hosted apps to be opened in windows";
2274const char kHostedAppsInWindowsDescription[] =
2275 "Allows hosted apps to be opened in windows instead of being limited to "
2276 "tabs.";
2277
Lei Zhang2eca9082017-10-17 20:42:502278const char kMacRTLName[] = "Enable RTL";
2279const char kMacRTLDescription[] = "Mirrors the UI for RTL language users";
Brett Wilson7b44537e2017-08-18 01:38:282280
Lei Zhang2eca9082017-10-17 20:42:502281const char kMacSystemShareMenuName[] = "Enable System Share Menu";
2282const char kMacSystemShareMenuDescription[] =
Leonard Grey2bdd08f2017-10-03 18:40:522283 "Enables sharing via macOS share extensions.";
2284
Lei Zhang2eca9082017-10-17 20:42:502285const char kMacTouchBarName[] = "Hardware Touch Bar";
2286const char kMacTouchBarDescription[] = "Control the use of the Touch Bar.";
Brett Wilson7b44537e2017-08-18 01:38:282287
2288const char kMacV2SandboxName[] = "Mac V2 Sandbox";
2289const char kMacV2SandboxDescription[] =
2290 "Eliminates the unsandboxed warmup phase and sandboxes processes for their "
2291 "entire life cycle.";
2292
2293const char kMacViewsNativeAppWindowsName[] = "Toolkit-Views App Windows.";
2294const char kMacViewsNativeAppWindowsDescription[] =
2295 "Controls whether to use Toolkit-Views based Chrome App windows.";
2296
2297const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
2298const char kMacViewsTaskManagerDescription[] =
2299 "Controls whether to use the Toolkit-Views based Task Manager.";
2300
2301const char kTabDetachingInFullscreenName[] =
2302 "Allow tab detaching in fullscreen";
2303const char kTabDetachingInFullscreenDescription[] =
2304 "Allow tabs to detach from the tabstrip when in fullscreen mode on Mac.";
2305
2306const char kTabStripKeyboardFocusName[] = "Tab Strip Keyboard Focus";
2307const char kTabStripKeyboardFocusDescription[] =
2308 "Enable keyboard focus for the tabs in the tab strip.";
2309
2310const char kTranslateNewUxName[] = "New Translate UX";
2311const char kTranslateNewUxDescription[] =
2312 "Enable the new Translate bubble UX is offered instead of the infobar.";
2313
2314// Non-Mac ---------------------------------------------------------------------
2315
2316#else // !defined(OS_MACOSX)
2317
2318const char kPermissionPromptPersistenceToggleName[] =
2319 "Persistence Toggle in Permission Prompts";
2320const char kPermissionPromptPersistenceToggleDescription[] =
2321 "Whether to display a persistence toggle in permission prompts.";
2322
2323#endif
2324
2325// Chrome OS -------------------------------------------------------------------
vabr0215a8e2017-03-28 12:47:342326
2327#if defined(OS_CHROMEOS)
2328
Brett Wilson7b44537e2017-08-18 01:38:282329const char kAcceleratedMjpegDecodeName[] =
2330 "Hardware-accelerated mjpeg decode for captured frame";
2331const char kAcceleratedMjpegDecodeDescription[] =
2332 "Enable hardware-accelerated mjpeg decode for captured frame where "
2333 "available.";
vabr0215a8e2017-03-28 12:47:342334
Brett Wilson7b44537e2017-08-18 01:38:282335const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click";
2336const char kAllowTouchpadThreeFingerClickDescription[] =
2337 "Enables touchpad three-finger-click as middle button.";
vabr0215a8e2017-03-28 12:47:342338
Brett Wilson7b44537e2017-08-18 01:38:282339const char kArcBootCompleted[] = "Load Android apps automatically";
2340const char kArcBootCompletedDescription[] =
2341 "Allow Android apps to start automatically after signing in.";
vabr0215a8e2017-03-28 12:47:342342
Lev Rumyantsev7a8544312017-08-18 19:26:512343const char kArcNativeBridgeExperimentName[] =
2344 "Enable native bridge experiment for ARC";
2345const char kArcNativeBridgeExperimentDescription[] =
2346 "Enables experimental native bridge feature.";
2347
Brett Wilson7b44537e2017-08-18 01:38:282348const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
2349const char kAshEnableUnifiedDesktopDescription[] =
2350 "Enable unified desktop mode which allows a window to span multiple "
2351 "displays.";
vabr0215a8e2017-03-28 12:47:342352
Brett Wilson7b44537e2017-08-18 01:38:282353const char kBootAnimationName[] = "Boot animation";
2354const char kBootAnimationDescription[] =
2355 "Wallpaper boot animation (except for OOBE case).";
vabr0215a8e2017-03-28 12:47:342356
Sean Kau5e956192017-10-06 22:25:172357const char kBulkPrintersName[] = "Bulk Printers Policy";
2358const char kBulkPrintersDescription[] = "Enables the new bulk printers policy";
2359
Brett Wilson7b44537e2017-08-18 01:38:282360const char kCaptivePortalBypassProxyName[] =
2361 "Bypass proxy for Captive Portal Authorization";
2362const char kCaptivePortalBypassProxyDescription[] =
2363 "If proxy is configured, it usually prevents from authorization on "
2364 "different captive portals. This enables opening captive portal "
2365 "authorization dialog in a separate window, which ignores proxy settings.";
vabr0215a8e2017-03-28 12:47:342366
Brett Wilson7b44537e2017-08-18 01:38:282367const char kCrOSComponentName[] = "Chrome OS Component";
2368const char kCrOSComponentDescription[] =
2369 "Enable the use of componentized escpr CUPS filter.";
vabr0215a8e2017-03-28 12:47:342370
Xiaochu Liu51d03fd2017-09-08 23:51:022371const char kCrOSContainerName[] = "Chrome OS Container";
2372const char kCrOSContainerDescription[] =
2373 "Enable the use of Chrome OS Container utility.";
2374
Brett Wilson7b44537e2017-08-18 01:38:282375const char kCrosRegionsModeName[] = "Cros-regions load mode";
2376const char kCrosRegionsModeDescription[] =
2377 "This flag controls cros-regions load mode";
2378const char kCrosRegionsModeDefault[] = "Default";
2379const char kCrosRegionsModeOverride[] = "Override VPD values.";
2380const char kCrosRegionsModeHide[] = "Hide VPD values.";
vabr0215a8e2017-03-28 12:47:342381
Jacob Dufault2becbc482017-08-25 00:36:352382const char kDisableLockScreenAppsName[] = "Disable lock screen note taking";
2383const char kDisableLockScreenAppsDescription[] =
2384 "Disable new-note action handler apps on the lock screen. The user will "
2385 "not be able to launch the preferred note-taking action from the lock "
2386 "screen, provided that the app supports lock screen note taking.";
2387
Sammie Quonef6b4882017-09-14 16:50:052388const char kDisableTabletAutohideTitlebarsName[] =
2389 "Disable autohide titlebars in tablet mode";
2390const char kDisableTabletAutohideTitlebarsDescription[] =
2391 "Disable tablet mode autohide titlebars functionality. The user will be "
2392 "able to see the titlebar in tablet mode.";
2393
Brett Wilson7b44537e2017-08-18 01:38:282394const char kEnablePerUserTimezoneName[] = "Per-user time zone preferences.";
2395const char kEnablePerUserTimezoneDescription[] =
2396 "Chrome OS system timezone preference is stored and handled for each user "
2397 "individually.";
vabr0215a8e2017-03-28 12:47:342398
Brett Wilson7b44537e2017-08-18 01:38:282399const char kDisableSystemTimezoneAutomaticDetectionName[] =
2400 "SystemTimezoneAutomaticDetection policy support";
2401const char kDisableSystemTimezoneAutomaticDetectionDescription[] =
2402 "Disable system timezone automatic detection device policy.";
vabr0215a8e2017-03-28 12:47:342403
newcomer403ac142017-07-05 18:26:302404const char kEnableFullscreenAppListName[] = "Enable The Peeking Launcher";
newcomer403ac142017-07-05 18:26:302405const char kEnableFullscreenAppListDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192406 "The peeking launcher UI supports touch and provides more space for "
2407 "upcoming features.";
newcomer403ac142017-07-05 18:26:302408
Lei Zhang2eca9082017-10-17 20:42:502409const char kEnableBackgroundBlurName[] = "Enable background blur.";
2410const char kEnableBackgroundBlurDescription[] =
Alex Newcomer43cb7f12017-07-28 17:37:392411 "Enables background blur for the Peeking Launcher, Lock Screen, and Tab "
2412 "Switcher.";
2413
Brett Wilson7b44537e2017-08-18 01:38:282414const char kEnableAndroidWallpapersAppName[] = "Android Wallpapers App";
2415const char kEnableAndroidWallpapersAppDescription[] =
2416 "Enables the Android Wallpapers App as the default Wallpaper App on Chrome "
2417 "OS.";
vabr0215a8e2017-03-28 12:47:342418
Brett Wilson7b44537e2017-08-18 01:38:282419const char kEnableChromevoxArcSupportName[] = "ChromeVox ARC support";
2420const char kEnableChromevoxArcSupportDescription[] =
2421 "Enable ChromeVox screen reader features in ARC";
vabr0215a8e2017-03-28 12:47:342422
Brett Wilson7b44537e2017-08-18 01:38:282423const char kEnableEhvInputName[] =
2424 "Emoji, handwriting and voice input on opt-in IME menu";
2425const char kEnableEhvInputDescription[] =
2426 "Enable access to emoji, handwriting and voice input form opt-in IME menu.";
vabr0215a8e2017-03-28 12:47:342427
Brett Wilson7b44537e2017-08-18 01:38:282428const char kEnableEncryptionMigrationName[] =
2429 "Enable encryption migration of user data";
2430const char kEnableEncryptionMigrationDescription[] =
2431 "If enabled and the device supports ARC, the user will be asked to update "
2432 "the encryption of user data when the user signs in.";
vabr0215a8e2017-03-28 12:47:342433
Klemen Kozjekf2b30e452017-09-01 05:04:512434const char kEnableExternalDriveRename[] = "Enable external drive rename";
2435const char kEnableExternalDriveRenameDescription[] =
2436 "If enabled, external removable drives will get 'Rename' action in the "
2437 "context menu";
2438
Blake O'Hare9e9317b22017-10-24 02:49:352439const char kEnableFloatingVirtualKeyboardName[] =
2440 "Enable floating virtual keyboard";
2441const char kEnableFloatingVirtualKeyboardDescription[] =
2442 "If enabled, the keyboard will use floating behavior by default.";
2443
Brett Wilson7b44537e2017-08-18 01:38:282444const char kEnableImeMenuName[] = "Enable opt-in IME menu";
2445const char kEnableImeMenuDescription[] =
2446 "Enable access to the new IME menu in the Language Settings page.";
vabr0215a8e2017-03-28 12:47:342447
xdai6459d0ca2017-10-11 19:23:102448const char kEnableTabletSplitViewName[] = "Split view in Tablet mode";
2449const char kEnableTabletSplitViewDescription[] =
2450 "Enable split view for Chrome OS tablet mode.";
2451
Klemen Kozjek05fc4512017-10-18 12:51:102452const char kEnableZipArchiverPackerName[] = "ZIP archiver - Packer";
2453const char kEnableZipArchiverPackerDescription[] =
2454 "Enable the ability to archive files on Drive in the Files app";
2455
2456const char kEnableZipArchiverUnpackerName[] = "ZIP archiver - Unpacker";
2457const char kEnableZipArchiverUnpackerDescription[] =
2458 "Enable the ability to unpack archives in incognito mode";
Brett Wilson7b44537e2017-08-18 01:38:282459
2460const char kEolNotificationName[] = "Disable Device End of Life notification.";
2461const char kEolNotificationDescription[] =
2462 "Disable Notifcation when Device is End of Life.";
2463
2464const char kExperimentalAccessibilityFeaturesName[] =
2465 "Experimental accessibility features";
2466const char kExperimentalAccessibilityFeaturesDescription[] =
2467 "Enable additional accessibility features in the Settings page.";
2468
2469const char kExperimentalInputViewFeaturesName[] =
2470 "Experimental input view features";
2471const char kExperimentalInputViewFeaturesDescription[] =
2472 "Enable experimental features for IME input views.";
2473
2474const char kFileManagerTouchModeName[] = "Files App. touch mode";
2475const char kFileManagerTouchModeDescription[] =
2476 "Touchscreen-specific interactions of the Files app.";
2477
2478const char kFirstRunUiTransitionsName[] =
2479 "Animated transitions in the first-run tutorial";
2480const char kFirstRunUiTransitionsDescription[] =
2481 "Transitions during first-run tutorial are animated.";
2482
2483const char kFloatingVirtualKeyboardName[] = "Floating virtual keyboard.";
2484const char kFloatingVirtualKeyboardDescription[] =
2485 "Enable/Disable floating virtual keyboard.";
2486
2487const char kForceEnableStylusToolsName[] = "Force enable stylus features";
2488const char kForceEnableStylusToolsDescription[] =
2489 "Forces display of the stylus tools menu in the shelf and the stylus "
2490 "section in settings, even if there is no attached stylus device.";
2491
2492const char kGestureEditingName[] = "Gesture editing for the virtual keyboard.";
2493const char kGestureEditingDescription[] =
2494 "Enable/Disable gesture editing option in the settings page for the "
2495 "virtual keyboard.";
2496
2497const char kGestureTypingName[] = "Gesture typing for the virtual keyboard.";
2498const char kGestureTypingDescription[] =
2499 "Enable/Disable gesture typing option in the settings page for the virtual "
2500 "keyboard.";
2501
2502const char kInputViewName[] = "Input views";
2503const char kInputViewDescription[] =
2504 "Enable IME extensions to supply custom views for user input such as "
2505 "virtual keyboards.";
2506
2507const char kMemoryPressureThresholdName[] =
2508 "Memory discard strategy for advanced pressure handling";
2509const char kMemoryPressureThresholdDescription[] =
2510 "Memory discarding strategy to use";
2511const char kConservativeThresholds[] =
2512 "Conservative memory pressure release strategy";
2513const char kAggressiveCacheDiscardThresholds[] =
2514 "Aggressive cache release strategy";
2515const char kAggressiveTabDiscardThresholds[] =
2516 "Aggressive tab release strategy";
2517const char kAggressiveThresholds[] =
2518 "Aggressive tab and cache release strategy";
2519
2520const char kMtpWriteSupportName[] = "MTP write support";
2521const char kMtpWriteSupportDescription[] =
2522 "MTP write support in File System API (and file manager). In-place editing "
2523 "operations are not supported.";
2524
2525const char kMultideviceName[] = "Enable multidevice features";
2526const char kMultideviceDescription[] =
2527 "Enables UI for controlling multidevice features.";
vabr0215a8e2017-03-28 12:47:342528
2529const char kNetworkPortalNotificationName[] =
2530 "Notifications about captive portals";
vabr0215a8e2017-03-28 12:47:342531const char kNetworkPortalNotificationDescription[] =
2532 "If enabled, notification is displayed when device is connected to a "
2533 "network behind captive portal.";
2534
stevenjbe1d457382017-05-24 22:37:242535const char kNetworkSettingsConfigName[] =
2536 "Settings based Network Configuration";
stevenjbe1d457382017-05-24 22:37:242537const char kNetworkSettingsConfigDescription[] =
2538 "Enables the Settings based network configuration UI instead of the Views "
2539 "based configuration dialog.";
2540
Brett Wilson7b44537e2017-08-18 01:38:282541const char kNewKoreanImeName[] = "New Korean IME";
2542const char kNewKoreanImeDescription[] =
2543 "New Korean IME, which is based on Google Input Tools' HMM engine.";
vabr0215a8e2017-03-28 12:47:342544
Brett Wilson7b44537e2017-08-18 01:38:282545const char kNewZipUnpackerName[] = "New ZIP unpacker";
2546const char kNewZipUnpackerDescription[] =
2547 "New ZIP unpacker flow, based on the File System Provider API.";
vabr0215a8e2017-03-28 12:47:342548
Brett Wilson7b44537e2017-08-18 01:38:282549const char kPhysicalKeyboardAutocorrectName[] = "Physical keyboard autocorrect";
2550const char kPhysicalKeyboardAutocorrectDescription[] =
2551 "Enable physical keyboard autocorrect for US keyboard, which can provide "
2552 "suggestions as typing on physical keyboard.";
vabr0215a8e2017-03-28 12:47:342553
2554const char kPrinterProviderSearchAppName[] =
2555 "Chrome Web Store Gallery app for printer drivers";
vabr0215a8e2017-03-28 12:47:342556const char kPrinterProviderSearchAppDescription[] =
2557 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:192558 "searches Chrome Web Store for extensions that support printing to a USB "
2559 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:342560
Brett Wilson7b44537e2017-08-18 01:38:282561const char kQuickUnlockPinName[] = "Quick Unlock (PIN)";
2562const char kQuickUnlockPinDescription[] =
2563 "Enabling PIN quick unlock allows you to use a PIN to unlock your ChromeOS "
2564 "device on the lock screen after you have signed into your device.";
2565const char kQuickUnlockPinSignin[] = "Enable PIN when logging in.";
2566const char kQuickUnlockPinSigninDescription[] =
2567 "Enabling PIN allows you to use a PIN to sign in and unlock your ChromeOS "
2568 "device. After changing this flag PIN needs to be set up again.";
2569const char kQuickUnlockFingerprint[] = "Quick Unlock (Fingerprint)";
2570const char kQuickUnlockFingerprintDescription[] =
2571 "Enabling fingerprint quick unlock allows you to setup and use a "
2572 "fingerprint to unlock your Chromebook on the lock screen after you have "
2573 "signed into your device.";
vabr0215a8e2017-03-28 12:47:342574
Brett Wilson7b44537e2017-08-18 01:38:282575const char kOfficeEditingComponentAppName[] =
2576 "Office Editing for Docs, Sheets & Slides";
2577const char kOfficeEditingComponentAppDescription[] =
2578 "Office Editing for Docs, Sheets & Slides for testing purposes.";
Daniel Erat33054b22017-06-27 16:18:072579
2580const char kSpuriousPowerButtonWindowName[] = "Spurious power button window";
2581const char kSpuriousPowerButtonWindowDescription[] =
2582 "Number of recent accelerometer samples to examine to determine if a power "
2583 "button event was spurious.";
2584
2585const char kSpuriousPowerButtonAccelCountName[] =
2586 "Spurious power button acceleration count";
2587const char kSpuriousPowerButtonAccelCountDescription[] =
2588 "Number of recent acceleration samples that must meet or exceed exceed the "
2589 "threshold in order for a power button event to be considered spurious.";
2590
2591const char kSpuriousPowerButtonScreenAccelName[] =
2592 "Spurious power button screen acceleration threshold";
2593const char kSpuriousPowerButtonScreenAccelDescription[] =
2594 "Threshold (in m/s^2, disregarding gravity) that screen acceleration must "
2595 "meet or exceed for a power button event to be considered spurious.";
2596
2597const char kSpuriousPowerButtonKeyboardAccelName[] =
2598 "Spurious power button keyboard acceleration threshold";
2599const char kSpuriousPowerButtonKeyboardAccelDescription[] =
2600 "Threshold (in m/s^2, disregarding gravity) that keyboard acceleration "
2601 "must meet or exceed for a power button event to be considered spurious.";
2602
2603const char kSpuriousPowerButtonLidAngleChangeName[] =
2604 "Spurious power button lid angle change threshold";
2605const char kSpuriousPowerButtonLidAngleChangeDescription[] =
2606 "Change in lid angle (i.e. hinge between keyboard and screen) that must be "
2607 "met or exceeded for a power button event to be considered spurious.";
2608
Chung-Sheng Wu468b0b32017-09-01 14:41:572609const char kSysInternalsName[] = "Enable Sys-Internals";
2610const char kSysInternalsDescription[] =
2611 "If enabled, user can monitor system information at "
2612 "chrome://sys-internals.";
2613
Brett Wilson7b44537e2017-08-18 01:38:282614const char kTeamDrivesName[] = "Enable Team Drives Integration";
2615const char kTeamDrivesDescription[] =
2616 "If enabled, files under Team Drives will appear in the Files app.";
vabr0215a8e2017-03-28 12:47:342617
Brett Wilson7b44537e2017-08-18 01:38:282618const char kTetherName[] = "Instant Tethering";
2619const char kTetherDescription[] =
2620 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
2621 "phone to share its Internet connection with this device.";
stanisc14bed0b132017-05-10 17:46:372622
Brett Wilson7b44537e2017-08-18 01:38:282623const char kTouchscreenCalibrationName[] =
2624 "Enable/disable touchscreen calibration option in material design settings";
2625const char kTouchscreenCalibrationDescription[] =
2626 "If enabled, the user can calibrate the touch screen displays in "
2627 "chrome://settings/display.";
yhanadac5bff5b2017-05-18 06:37:092628
Mitsuru Oshima63d3f2a2017-08-23 00:12:112629// Force UI Mode
2630const char kUiModeName[] = "Force Ui Mode";
2631const char kUiModeDescription[] =
2632 R"*(This flag can be used to force a certain mode on to a chromebook, )*"
2633 R"*(despite its current orientation. "Tablet" means that the )*"
2634 R"*(chromebook will act as if it were in tablet mode. "Clamshell" )*"
2635 R"*(means that the chromebook will act as if it were in clamshell )*"
2636 R"*(mode . "Auto" means that the chromebook will alternate between )*"
2637 R"*(the two, based on its orientation.)*";
2638const char kUiModeTablet[] = "TouchView";
2639const char kUiModeClamshell[] = "Clamshell";
2640const char kUiModeAuto[] = "Auto (default)";
2641
bruthigeafb0c02017-06-09 13:11:532642const char kUiDevToolsName[] = "Enable native UI inspection";
2643const char kUiDevToolsDescription[] =
2644 "Enables inspection of native UI elements. For local inspection use "
2645 "chrome://inspect#other";
2646
Brett Wilson7b44537e2017-08-18 01:38:282647const char kUseMusName[] = "Mus";
2648const char kUseMusDescription[] = "Enable the Mojo UI service.";
2649const char kEnableMashDescription[] =
2650 "Mash (UI, Chrome and ash in separate services)";
2651const char kEnableMusDescription[] =
2652 "Mus (UI in separate service, Chrome and ash in same service)";
2653
2654const char kVideoPlayerChromecastSupportName[] =
2655 "Experimental Chromecast support for Video Player";
2656const char kVideoPlayerChromecastSupportDescription[] =
2657 "This option enables experimental Chromecast support for Video Player app "
2658 "on ChromeOS.";
2659
2660const char kVirtualKeyboardName[] = "Virtual Keyboard";
2661const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
2662
2663const char kVirtualKeyboardOverscrollName[] = "Virtual Keyboard Overscroll";
2664const char kVirtualKeyboardOverscrollDescription[] =
2665 "Enables virtual keyboard overscroll support.";
2666
2667const char kVoiceInputName[] = "Voice input on virtual keyboard";
2668const char kVoiceInputDescription[] =
2669 "Enables voice input on virtual keyboard.";
2670
2671const char kWakeOnPacketsName[] = "Wake On Packets";
2672const char kWakeOnPacketsDescription[] =
2673 "Enables waking the device based on the receipt of some network packets.";
orenb21da031c2017-06-30 21:24:202674
yhanadac5bff5b2017-05-18 06:37:092675#endif // defined(OS_CHROMEOS)
2676
Brett Wilson7b44537e2017-08-18 01:38:282677// Random platform combinations -----------------------------------------------
2678
2679#if defined(OS_WIN) || defined(OS_LINUX)
2680
2681const char kEnableInputImeApiName[] = "Enable Input IME API";
2682const char kEnableInputImeApiDescription[] =
2683 "Enable the use of chrome.input.ime API.";
2684
2685#endif // defined(OS_WIN) || defined(OS_LINUX)
2686
2687#if defined(OS_WIN) || defined(OS_MACOSX)
2688
2689const char kAutomaticTabDiscardingName[] = "Automatic tab discarding";
2690const char kAutomaticTabDiscardingDescription[] =
2691 "If enabled, tabs get automatically discarded from memory when the system "
2692 "memory is low. Discarded tabs are still visible on the tab strip and get "
2693 "reloaded when clicked on. Info about discarded tabs can be found at "
2694 "chrome://discards.";
2695
2696#endif // defined(OS_WIN) || defined(OS_MACOSX)
2697
2698// Feature flags --------------------------------------------------------------
2699
2700#if BUILDFLAG(ENABLE_VR)
2701
2702#if defined(OS_ANDROID)
2703
2704const char kEnableVrShellName[] = "Enable Chrome VR.";
2705const char kEnableVrShellDescription[] =
2706 "Allow browsing with a VR headset if available for this device.";
2707
2708const char kVrCustomTabBrowsingName[] = "Enable Custom Tab browsing in VR.";
2709const char kVrCustomTabBrowsingDescription[] =
2710 "Allow browsing with a VR headset in a Custom Tab if available for this "
2711 "device.";
2712
2713const char kWebVrAutopresentName[] = "Enable WebVr auto presentation";
2714const char kWebVrAutopresentDescription[] =
2715 "Allows auto presentation of WebVr content from trusted first-party apps";
2716
2717const char kWebVrVsyncAlignName[] = "Enable WebVR VSync-aligned timing";
2718const char kWebVrVsyncAlignDescription[] =
2719 "Enabling this option aligns WebVR application rendering with VSync "
2720 "for smoother animations.";
2721
2722#endif // OS_ANDROID
2723
2724const char kWebvrExperimentalRenderingName[] =
2725 "WebVR experimental rendering optimizations";
2726const char kWebvrExperimentalRenderingDescription[] =
2727 "Enabling this option activates experimental rendering path optimizations "
2728 "for WebVR.";
2729
2730#endif // ENABLE_VR
2731
Nico Weberaf3b00b2017-09-11 17:58:172732#if BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:282733
2734const char kNaclDebugMaskName[] =
2735 "Restrict Native Client GDB-based debugging by pattern";
2736const char kNaclDebugMaskDescription[] =
2737 "Restricts Native Client application GDB-based debugging by URL of "
2738 "manifest file. Native Client GDB-based debugging must be enabled for this "
2739 "option to work.";
2740const char kNaclDebugMaskChoiceDebugAll[] = "Debug everything.";
2741const char kNaclDebugMaskChoiceExcludeUtilsPnacl[] =
2742 "Debug everything except secure shell and the PNaCl translator.";
2743const char kNaclDebugMaskChoiceIncludeDebug[] =
2744 "Debug only if manifest URL ends with debug.nmf.";
2745
2746const char kNaclDebugName[] = "Native Client GDB-based debugging";
2747const char kNaclDebugDescription[] =
2748 "Enable GDB debug stub. This will stop a Native Client application on "
2749 "startup and wait for nacl-gdb (from the NaCl SDK) to attach to it.";
2750
2751const char kNaclName[] = "Native Client";
2752const char kNaclDescription[] =
2753 "Support Native Client for all web applications, even those that were not "
2754 "installed from the Chrome Web Store.";
2755
2756const char kPnaclSubzeroName[] = "Force PNaCl Subzero";
2757const char kPnaclSubzeroDescription[] =
2758 "Force the use of PNaCl's fast Subzero translator for all pexe files.";
2759
Nico Weberaf3b00b2017-09-11 17:58:172760#endif // BUILDFLAG(ENABLE_NACL)
Brett Wilson7b44537e2017-08-18 01:38:282761
Brett Wilson7b44537e2017-08-18 01:38:282762#if BUILDFLAG(ENABLE_WEBRTC)
2763
2764const char kWebrtcH264WithOpenh264FfmpegName[] =
2765 "WebRTC H.264 software video encoder/decoder";
2766const char kWebrtcH264WithOpenh264FfmpegDescription[] =
2767 "When enabled, an H.264 software video encoder/decoder pair is included. "
2768 "If a hardware encoder/decoder is also available it may be used instead of "
2769 "this encoder/decoder.";
2770
2771#endif // BUILDFLAG(ENABLE_WEBRTC)
2772
James Cookf9d34d22017-10-04 16:39:352773#if defined(OS_CHROMEOS)
Brett Wilson7b44537e2017-08-18 01:38:282774
2775const char kAshDisableSmoothScreenRotationName[] =
2776 "Disable smooth rotation animations.";
2777const char kAshDisableSmoothScreenRotationDescription[] =
2778 "Disable smooth rotation animations.";
2779
2780const char kAshEnableMirroredScreenName[] = "Enable mirrored screen mode.";
2781const char kAshEnableMirroredScreenDescription[] =
2782 "Enable the mirrored screen mode. This mode flips the screen image "
2783 "horizontally.";
2784
2785const char kAshShelfColorName[] = "Shelf color in Chrome OS system UI";
2786const char kAshShelfColorDescription[] =
2787 "Enables/disables the shelf color to be a derived from the wallpaper. The "
2788 "--ash-shelf-color-scheme flag defines how that color is derived.";
2789
2790const char kAshShelfColorScheme[] = "Shelf color scheme in Chrome OS System UI";
2791const char kAshShelfColorSchemeDescription[] =
2792 "Specify how the color is derived from the wallpaper. This flag is only "
2793 "used when the --ash-shelf-color flag is enabled. Defaults to Dark & Muted";
2794const char kAshShelfColorSchemeLightVibrant[] = "Light & Vibrant";
2795const char kAshShelfColorSchemeNormalVibrant[] = "Normal & Vibrant";
2796const char kAshShelfColorSchemeDarkVibrant[] = "Dark & Vibrant";
2797const char kAshShelfColorSchemeLightMuted[] = "Light & Muted";
2798const char kAshShelfColorSchemeNormalMuted[] = "Normal & Muted";
2799const char kAshShelfColorSchemeDarkMuted[] = "Dark & Muted";
2800
Mike Wassermana38a8a62017-10-02 03:04:272801const char kAshDisableShelfModelSynchronization[] =
2802 "Disable shelf model synchronization";
2803const char kAshDisableShelfModelSynchronizationDescription[] =
2804 "Use a single in-process shelf data model shared between Chrome and Ash. "
2805 "This only applies to the Classic Ash and Mus configs; synchronization "
2806 "between two models is required when running the Mash config via --mash.";
Mike Wasserman2115b162017-09-19 23:42:372807
Brett Wilson7b44537e2017-08-18 01:38:282808const char kMaterialDesignInkDropAnimationSpeedName[] =
Mike Wasserman2115b162017-09-19 23:42:372809 "Material design ink drop animation speed";
Brett Wilson7b44537e2017-08-18 01:38:282810const char kMaterialDesignInkDropAnimationSpeedDescription[] =
2811 "Sets the speed of the experimental visual feedback animations for "
2812 "material design.";
2813const char kMaterialDesignInkDropAnimationFast[] = "Fast";
2814const char kMaterialDesignInkDropAnimationSlow[] = "Slow";
2815
2816const char kUiShowCompositedLayerBordersName[] =
2817 "Show UI composited layer borders";
2818const char kUiShowCompositedLayerBordersDescription[] =
2819 "Show border around composited layers created by UI.";
2820const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
2821const char kUiShowCompositedLayerBordersSurface[] = "Surface";
2822const char kUiShowCompositedLayerBordersLayer[] = "Layer";
2823const char kUiShowCompositedLayerBordersAll[] = "All";
2824
2825const char kUiSlowAnimationsName[] = "Slow UI animations";
2826const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
2827
James Cookf9d34d22017-10-04 16:39:352828#endif // defined(OS_CHROMEOS)
Brett Wilson7b44537e2017-08-18 01:38:282829
Brett Wilson7b44537e2017-08-18 01:38:282830#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
2831
2832const char kAutofillCreditCardUploadName[] =
2833 "Enable offering upload of Autofilled credit cards";
2834const char kAutofillCreditCardUploadDescription[] =
2835 "Enables a new option to upload credit cards to Google Payments for sync "
2836 "to all Chrome devices.";
2837
2838#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
2839
2840// ============================================================================
2841// Don't just add flags to the end, put them in the right section in
2842// alphabetical order just like the header file.
2843// ============================================================================
2844
vabr0215a8e2017-03-28 12:47:342845} // namespace flag_descriptions