blob: 39dac7c9c2f1f4dd6ed10c2a638176660c68ea5f [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
7namespace flag_descriptions {
8
Brett Wilsonf27ff602017-07-07 22:28:479const char kAccelerated2dCanvasName[] = "Accelerated 2D canvas";
10const char kAccelerated2dCanvasDescription[] =
11 "Enables the use of the GPU to perform 2d canvas rendering instead of "
12 "using software rendering.";
horodb71a5a2017-06-09 16:08:2413
Brett Wilsonf27ff602017-07-07 22:28:4714const char kAcceleratedVideoDecodeName[] = "Hardware-accelerated video decode";
15const char kAcceleratedVideoDecodeDescription[] =
16 "Hardware-accelerated video decode where available.";
17
18const char kAffiliationBasedMatchingName[] =
19 "Affiliation based matching in password manager";
20const char kAffiliationBasedMatchingDescription[] =
21 "Allow credentials stored for Android applications to be filled into "
22 "corresponding websites.";
23
24const char kAllowInsecureLocalhostName[] =
25 "Allow invalid certificates for resources loaded from localhost.";
26const char kAllowInsecureLocalhostDescription[] =
27 "Allows requests to localhost over HTTPS even when an invalid certificate "
28 "is presented.";
29
30const char kAllowNaclSocketApiName[] = "NaCl Socket API.";
31const char kAllowNaclSocketApiDescription[] =
32 "Allows applications to use NaCl Socket API. Use only to test NaCl "
33 "plugins.";
34
35const char kAppBannersName[] = "App Banners";
36const char kAppBannersDescription[] =
37 "Enable the display of Progressive Web App banners, which prompt a user to "
38 "add a web app to their shelf, or other platform-specific equivalent.";
39
Khushalba202212017-07-12 19:53:4940const char kAsyncImageDecodingName[] = "AsyncImageDecoding";
41const char kAsyncImageDecodingDescription[] =
42 "Enables asynchronous decoding of images from raster for web content";
43
Brett Wilsonf27ff602017-07-07 22:28:4744const char kAutoplayPolicyName[] = "Autoplay policy";
45const char kAutoplayPolicyDescription[] =
46 "Policy used when deciding if audio or video is allowed to autoplay.";
47
48const char kAutoplayPolicyUserGestureRequiredForCrossOrigin[] =
49 "User gesture is required for cross-origin iframes.";
50const char kAutoplayPolicyNoUserGestureRequired[] =
51 "No user gesture is required.";
52const char kAutoplayPolicyUserGestureRequired[] = "User gesture is required.";
53const char kAutoplayPolicyDocumentUserActivation[] =
54 "Document user activation is required.";
55
56const char kBackgroundVideoTrackOptimizationName[] =
57 "Optimize background video playback.";
58const char kBackgroundVideoTrackOptimizationDescription[] =
59 "Disable video tracks when the video is played in the background to "
60 "optimize performance.";
61
62const char kBleAdvertisingInExtensionsName[] = "BLE Advertising in Chrome Apps";
63const char kBleAdvertisingInExtensionsDescription[] =
64 "Enables BLE Advertising in Chrome Apps. BLE Advertising might interfere "
65 "with regular use of Bluetooth Low Energy features.";
66
67const char kBrowserSideNavigationName[] = "Enable browser side navigation";
horodb71a5a2017-06-09 16:08:2468const char kBrowserSideNavigationDescription[] =
horo3beccfb2017-06-19 14:47:0169 "Enable browser side navigation (aka PlzNavigate).";
horodb71a5a2017-06-09 16:08:2470
Brett Wilsonf27ff602017-07-07 22:28:4771const char kBrowserTaskSchedulerName[] = "Task Scheduler";
72const char kBrowserTaskSchedulerDescription[] =
73 "Enables redirection of some task posting APIs to the task scheduler.";
74
75const char kBypassAppBannerEngagementChecksName[] =
76 "Bypass user engagement checks";
77const char kBypassAppBannerEngagementChecksDescription[] =
78 "Bypasses user engagement checks for displaying app banners, such as "
79 "requiring that users have visited the site before and that the banner "
80 "hasn't been shown recently. This allows developers to test that other "
81 "eligibility requirements for showing app banners, such as having a "
82 "manifest, are met.";
83
84const char kCaptureThumbnailOnLoadFinishedName[] =
85 "Capture page thumbnail on load finished";
86const char kCaptureThumbnailOnLoadFinishedDescription[] =
87 "Capture a page thumbnail (for use on the New Tab page) when the page load "
88 "finishes, in addition to other times a thumbnail may be captured.";
89
90const char kCastStreamingHwEncodingName[] =
91 "Cast Streaming hardware video encoding";
92const char kCastStreamingHwEncodingDescription[] =
93 "This option enables support in Cast Streaming for encoding video streams "
94 "using platform hardware.";
95
96const char kCloudImportName[] = "Cloud Import";
97const char kCloudImportDescription[] = "Allows the cloud-import feature.";
98
99const char kColorCorrectRenderingName[] = "Color correct rendering";
100const char kColorCorrectRenderingDescription[] =
101 "Enables color correct rendering of web content.";
102
103const char kCompositedLayerBordersName[] = "Composited render layer borders";
104const char kCompositedLayerBordersDescription[] =
105 "Renders a border around composited Render Layers to help debug and study "
106 "layer compositing.";
107
108const char kContextualSuggestionsCarouselName[] =
109 "Enable Contextual Suggestions";
110const char kContextualSuggestionsCarouselDescription[] =
111 "If enabled, shows contextual suggestions in a horizontal carousel in "
112 "bottom sheet content.";
113
114const char kCreditCardAssistName[] = "Credit Card Assisted Filling";
115const char kCreditCardAssistDescription[] =
116 "Enable assisted credit card filling on certain sites.";
117
118const char kCrossProcessGuestViewIsolationName[] =
119 "Cross process frames for guests";
120const char kCrossProcessGuestViewIsolationDescription[] =
121 "Highly experimental where guests such as <webview> are implemented on "
122 "the out-of-process iframe infrastructure.";
123
Brett Wilsonf27ff602017-07-07 22:28:47124const char kDataReductionProxyLoFiName[] = "Data Saver Lo-Fi mode";
125const char kDataReductionProxyLoFiDescription[] =
126 "Forces Data Saver Lo-Fi mode to be always enabled, enabled only on "
127 "cellular connections, or disabled. Data Saver must be enabled for Lo-Fi "
128 "mode to be used.";
129const char kDataReductionProxyLoFiAlwaysOn[] = "Always on";
130const char kDataReductionProxyLoFiCellularOnly[] = "Cellular only";
131const char kDataReductionProxyLoFiDisabled[] = "Disable";
132const char kDataReductionProxyLoFiSlowConnectionsOnly[] =
133 "Slow connections only";
134
135const char kDatasaverPromptName[] = "Cellular Data Saver Prompt";
136const char kDatasaverPromptDescription[] =
137 "Enables a prompt, which appears when a cellular network connection is "
138 "detected, to take the user to the Data Saver extension page on Chrome Web "
139 "Store.";
140const char kDatasaverPromptDemoMode[] = "Demo mode";
141
142const char kDebugPackedAppName[] = "Debugging for packed apps";
143const char kDebugPackedAppDescription[] =
144 "Enables debugging context menu options such as Inspect Element for packed "
145 "applications.";
146
147const char kDefaultTileHeightName[] = "Default tile height";
148const char kDefaultTileHeightDescription[] = "Specify the default tile height.";
149const char kDefaultTileHeightShort[] = "128";
150const char kDefaultTileHeightTall[] = "256";
151const char kDefaultTileHeightGrande[] = "512";
152const char kDefaultTileHeightVenti[] = "1024";
153
154const char kDefaultTileWidthName[] = "Default tile width";
155const char kDefaultTileWidthDescription[] = "Specify the default tile width.";
156const char kDefaultTileWidthShort[] = "128";
157const char kDefaultTileWidthTall[] = "256";
158const char kDefaultTileWidthGrande[] = "512";
159const char kDefaultTileWidthVenti[] = "1024";
160
161const char kDebugShortcutsName[] = "Debugging keyboard shortcuts";
162const char kDebugShortcutsDescription[] =
163 "Enables additional keyboard shortcuts that are useful for debugging Ash.";
164
165const char kDeviceDiscoveryNotificationsName[] =
166 "Device Discovery Notifications";
167const char kDeviceDiscoveryNotificationsDescription[] =
168 "Device discovery notifications on local network.";
169
170const char kDevtoolsExperimentsName[] = "Developer Tools experiments";
171const char kDevtoolsExperimentsDescription[] =
172 "Enables Developer Tools experiments. Use Settings panel in Developer "
173 "Tools to toggle individual experiments.";
174
175const char kDisableAudioForDesktopShareName[] =
176 "Disable Audio For Desktop Share";
177const char kDisableAudioForDesktopShareDescription[] =
178 "With this flag on, desktop share picker window will not let the user "
179 "choose whether to share audio.";
180
181const char kDisableNightLightName[] = "Disable Night Light";
182const char kDisableNightLightDescription[] =
183 "Disable the Night Light feature which controls the color temperature of "
184 "the screen.";
185
186const char kDisableTabForDesktopShareName[] =
187 "Disable Desktop Share with tab source";
188const char kDisableTabForDesktopShareDescription[] =
189 "This flag controls whether users can choose a tab for desktop share.";
190
191const char kDisallowDocWrittenScriptsUiName[] =
192 "Block scripts loaded via document.write";
193const char kDisallowDocWrittenScriptsUiDescription[] =
194 "Disallows fetches for third-party parser-blocking scripts inserted into "
195 "the main frame via document.write.";
196
197const char kDisplayList2dCanvasName[] = "Display list 2D canvas";
198const char kDisplayList2dCanvasDescription[] =
199 "Enables the use of display lists to record 2D canvas commands. This "
200 "allows 2D canvas rasterization to be performed on separate thread.";
201
202const char kDistanceFieldTextName[] = "Distance field text";
203const char kDistanceFieldTextDescription[] =
204 "Text is rendered with signed distance fields rather than bitmap alpha "
205 "masks.";
206
207const char kDriveSearchInChromeLauncherName[] =
208 "Drive Search in Chrome App Launcher";
209const char kDriveSearchInChromeLauncherDescription[] =
210 "Files from Drive will show up when searching the Chrome App Launcher.";
211
212const char kDropSyncCredentialName[] =
213 "Drop sync credentials from password manager";
214const char kDropSyncCredentialDescription[] =
215 "The password manager will not offer to save the credential used to sync.";
216
217const char kEasyUnlockBluetoothLowEnergyDiscoveryName[] =
218 "Smart Lock Bluetooth Low Energy Discovery";
219const char kEasyUnlockBluetoothLowEnergyDiscoveryDescription[] =
220 "Enables a Smart Lock setting that allows Chromebook to discover phones "
221 "over Bluetooth Low Energy in order to unlock the Chromebook when the "
222 "phone is in its proximity.";
223
224const char kEasyUnlockProximityDetectionName[] =
225 "Smart Lock proximity detection";
226const char kEasyUnlockProximityDetectionDescription[] =
227 "Enables a Smart Lock setting that restricts unlocking to only work when "
228 "your phone is very close to (roughly, within an arm's length of) the "
229 "Chrome device.";
230
231const char kEmbeddedExtensionOptionsName[] = "Embedded extension options";
232const char kEmbeddedExtensionOptionsDescription[] =
233 "Display extension options as an embedded element in chrome://extensions "
234 "rather than opening a new tab.";
235
236const char kEnableAsmWasmName[] =
237 "Experimental Validate Asm.js and convert to WebAssembly when valid.";
238const char kEnableAsmWasmDescription[] =
239 R"*(Validate Asm.js when "use asm" is present and then convert to )*"
240 R"*(WebAssembly.)*";
241
242const char kEnableAutofillCreditCardBankNameDisplayName[] =
243 "Display the issuer bank name of a credit card in autofill.";
244const char kEnableAutofillCreditCardBankNameDisplayDescription[] =
245 "If enabled, displays the issuer bank name of a credit card in autofill.";
246
247const char kEnableAutofillCreditCardLastUsedDateDisplayName[] =
248 "Display the last used date of a credit card in autofill.";
249const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
250 "If enabled, display the last used date of a credit card in autofill.";
251
252const char kEnableAutofillCreditCardUploadCvcPromptName[] =
253 "Enable requesting missing CVC during Autofill credit card upload";
254const char kEnableAutofillCreditCardUploadCvcPromptDescription[] =
255 "If enabled, requests missing CVC when offering to upload credit cards to "
256 "Google Payments.";
257
258const char kEnableBrotliName[] = "Brotli Content-Encoding.";
259const char kEnableBrotliDescription[] =
260 "Enable Brotli Content-Encoding support.";
261
262const char kEnableClearBrowsingDataCountersName[] =
263 "Enable Clear browsing data counters.";
264const char kEnableClearBrowsingDataCountersDescription[] =
265 "Shows data volume counters in the Clear browsing data dialog.";
266
sclittle50e4bb92017-07-08 02:23:03267const char kEnableClientLoFiName[] = "Client-side Lo-Fi previews";
268
269const char kEnableClientLoFiDescription[] =
270 "Enable showing low fidelity images on some pages on slow networks.";
271
Brett Wilsonf27ff602017-07-07 22:28:47272const char kEnableDataReductionProxyLitePageName[] =
273 "Lite pages for Data Saver Lo-Fi mode";
274const char kEnableDataReductionProxyLitePageDescription[] =
275 "Enable lite pages in Data Saver Lo-Fi mode. Previews of pages will be "
276 "shown instead of image placeholders when Lo-Fi is on. Data Saver and "
277 "Lo-Fi must be enabled for lite pages to be shown.";
278
279const char kDataReductionProxyServerAlternative[] =
280 "Use alternative server configuration";
281const char kEnableDataReductionProxyServerExperimentName[] =
282 "Use an alternative Data Saver back end configuration.";
283const char kEnableDataReductionProxyServerExperimentDescription[] =
284 "Enable a different approach to saving data by configuring the back end "
285 "server";
286
287const char kEnableDataReductionProxySavingsPromoName[] =
288 "Data Saver 1 MB Savings Promo";
289const char kEnableDataReductionProxySavingsPromoDescription[] =
290 "Enable a Data Saver promo for 1 MB of savings. If Data Saver has already "
291 "saved 1 MB of data, then the promo will not be shown. Data Saver must be "
292 "enabled for the promo to be shown.";
293
Giovanni Ortuño Urquidi45020e232017-07-12 06:10:17294const char kEnableDesktopPWAWindowingName[] =
295 "Windowing related features for desktop PWAs.";
296const char kEnableDesktopPWAWindowingDescription[] =
297 "Enable experimental windowing features for desktop PWAs.";
298
Brett Wilsonf27ff602017-07-07 22:28:47299const char kEnableEnumeratingAudioDevicesName[] =
300 "Experimentally enable enumerating audio devices.";
301const char kEnableEnumeratingAudioDevicesDescription[] =
302 "Experimentally enable the use of enumerating audio devices.";
303
304const char kEnableGenericSensorName[] = "Generic Sensor";
305const char kEnableGenericSensorDescription[] =
306 "Enable sensor APIs based on Generic Sensor API.";
307
308const char kEnableGroupedHistoryName[] = "Group history by domain";
309const char kEnableGroupedHistoryDescription[] =
310 "Group history by website domain (i.e. google.com) on chrome://history.";
311
312const char kEnableHDRName[] = "HDR mode";
313const char kEnableHDRDescription[] =
314 "Enables HDR support on compatible displays.";
315
316const char kEnableHeapProfilingName[] = "Heap profiling";
317const char kEnableHeapProfilingDescription[] = "Enables heap profiling.";
318const char kEnableHeapProfilingModePseudo[] = "Enabled (pseudo mode)";
319const char kEnableHeapProfilingModeNative[] = "Enabled (native mode)";
320const char kEnableHeapProfilingTaskProfiler[] = "Enabled (task mode)";
321
322const char kEnableHttpFormWarningName[] =
323 "Show in-form warnings for sensitive fields when the top-level page is not "
324 "not HTTPS";
325const char kEnableHttpFormWarningDescription[] =
326 "Attaches a warning UI to any password or credit card fields detected when "
327 "the top-level page is not HTTPS";
328
329const char kEnableIdleTimeSpellCheckingName[] =
330 "Enable idle time spell checker";
331const char kEnableIdleTimeSpellCheckingDescription[] =
332 "Make spell-checking code run only when the browser is idle, so that input "
333 "latency is reduced, especially when editing long articles, emails, etc.";
vabr0215a8e2017-03-28 12:47:34334
335const char kEnableMaterialDesignBookmarksName[] =
336 "Enable Material Design bookmarks";
vabr0215a8e2017-03-28 12:47:34337const char kEnableMaterialDesignBookmarksDescription[] =
338 "If enabled, the chrome://bookmarks/ URL loads the Material Design "
339 "bookmarks page.";
340
vabr0215a8e2017-03-28 12:47:34341const char kEnableMaterialDesignExtensionsName[] =
342 "Enable Material Design extensions";
vabr0215a8e2017-03-28 12:47:34343const char kEnableMaterialDesignExtensionsDescription[] =
344 "If enabled, the chrome://extensions/ URL loads the Material Design "
345 "extensions page.";
346
vabr0215a8e2017-03-28 12:47:34347const char kEnableMaterialDesignFeedbackName[] =
348 "Enable Material Design feedback";
vabr0215a8e2017-03-28 12:47:34349const char kEnableMaterialDesignFeedbackDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19350 "If enabled, reporting an issue will load the Material Design feedback UI.";
vabr0215a8e2017-03-28 12:47:34351
Brett Wilsonf27ff602017-07-07 22:28:47352const char kEnableMaterialDesignPolicyPageName[] =
353 "Enable Material Design policy page";
354const char kEnableMaterialDesignPolicyPageDescription[] =
355 "If enabled, the chrome://md-policy URL loads the Material Design policy "
356 "page.";
galinapae72e152017-05-12 13:12:28357
Brett Wilsonf27ff602017-07-07 22:28:47358const char kEnableMidiManagerDynamicInstantiationName[] =
359 "MIDIManager dynamic instantiation for Web MIDI.";
360const char kEnableMidiManagerDynamicInstantiationDescription[] =
361 "Enable MIDIManager dynamic instantiation for Web MIDI.";
362
363const char kEnableNavigationTracingName[] = "Enable navigation tracing";
364const char kEnableNavigationTracingDescription[] =
365 "This is to be used in conjunction with the trace-upload-url flag. "
366 "WARNING: When enabled, Chrome will record performance data for every "
367 "navigation and upload it to the URL specified by the trace-upload-url "
368 "flag. The trace may include personally identifiable information (PII) "
369 "such as the titles and URLs of websites you visit.";
370
371const char kEnableNetworkServiceName[] = "Enable network service";
372const char kEnableNetworkServiceDescription[] =
373 "Enables the network service, which makes network requests through a "
374 "separate service. Note: most features don't work with this yet.";
375
376const char kEnablePictureInPictureName[] = "Enable picture in picture.";
377const char kEnablePictureInPictureDescription[] =
378 "Enable the picture in picture feature for videos.";
379
380const char kEnableTokenBindingName[] = "Token Binding.";
381const char kEnableTokenBindingDescription[] = "Enable Token Binding support.";
382
383const char kEnableUseZoomForDsfName[] =
384 "Use Blink's zoom for device scale factor.";
385const char kEnableUseZoomForDsfDescription[] =
386 "If enabled, Blink uses its zooming mechanism to scale content for device "
387 "scale factor.";
388const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
389const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
390const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
391
392const char kEnableScrollAnchoringName[] = "Scroll Anchoring";
393const char kEnableScrollAnchoringDescription[] =
394 "Adjusts scroll position to prevent visible jumps when offscreen content "
395 "changes.";
396
397const char kEnableSharedArrayBufferName[] =
398 "Experimental enabled SharedArrayBuffer support in JavaScript.";
399const char kEnableSharedArrayBufferDescription[] =
400 "Enable SharedArrayBuffer support in JavaScript.";
401
402const char kEnableWasmName[] = "WebAssembly structured cloning support.";
403const char kEnableWasmDescription[] =
404 "Enable web pages to use WebAssembly structured cloning.";
405
406const char kEnableWebUsbName[] = "WebUSB";
407const char kEnableWebUsbDescription[] = "Enable WebUSB support.";
408
409const char kEnableImageCaptureAPIName[] = "Image Capture API";
410const char kEnableImageCaptureAPIDescription[] =
411 "Enables the Web Platform Image Capture API: takePhoto(), "
412 "getPhotoCapabilities(), etc.";
413
414const char kEnableZeroSuggestRedirectToChromeName[] =
415 "Experimental contextual omnibox suggestion";
416const char kEnableZeroSuggestRedirectToChromeDescription[] =
417 "Change omnibox contextual suggestions to an experimental source. Note "
418 "that this is not an on/off switch for contextual omnibox and it only "
419 "applies to suggestions provided before the user starts typing a URL or a "
420 "search query (i.e. zero suggest).";
421
422const char kEnableWasmStreamingName[] =
423 "WebAssembly streaming compile/instantiate support.";
424const char kEnableWasmStreamingDescription[] =
425 "WebAssembly.{compile|instantiate} taking a Response as parameter.";
426
427const char kEnableWebfontsInterventionName[] =
428 "New version of User Agent Intervention for WebFonts loading.";
429const char kEnableWebfontsInterventionDescription[] =
430 "Enable New version of User Agent Intervention for WebFonts loading.";
431const char kEnableWebfontsInterventionV2ChoiceDefault[] = "Default";
432const char kEnableWebfontsInterventionV2ChoiceEnabledWith2g[] = "Enabled: 2G";
433const char kEnableWebfontsInterventionV2ChoiceEnabledWith3g[] = "Enabled: 3G";
434const char kEnableWebfontsInterventionV2ChoiceEnabledWithSlow2g[] =
435 "Enabled: Slow 2G";
436const char kEnableWebfontsInterventionV2ChoiceDisabled[] = "Disabled";
437
438const char kEnableWebfontsInterventionTriggerName[] =
439 "Trigger User Agent Intervention for WebFonts loading always.";
440const char kEnableWebfontsInterventionTriggerDescription[] =
441 "Enable to trigger User Agent Intervention for WebFonts loading always. "
442 "This flag affects only when the intervention is enabled.";
443
444const char kEnableWebNotificationCustomLayoutsName[] =
445 "Enable custom layouts for Web Notifications.";
446const char kEnableWebNotificationCustomLayoutsDescription[] =
447 "Enable custom layouts for Web Notifications. They will have subtle layout "
448 "improvements that are otherwise not possible.";
449
450const char kExpensiveBackgroundTimerThrottlingName[] =
451 "Throttle expensive background timers";
452const char kExpensiveBackgroundTimerThrottlingDescription[] =
453 "Enables intervention to limit CPU usage of background timers to 1%.";
454
455const char kExperimentalAppBannersName[] = "Experimental app banners";
456const char kExperimentalAppBannersDescription[] =
457 "Enables a new experimental app banner flow and UI";
458
459const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
460const char kExperimentalCanvasFeaturesDescription[] =
461 "Enables the use of experimental canvas features which are still in "
462 "development.";
463
464const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
465const char kExperimentalExtensionApisDescription[] =
466 "Enables experimental extension APIs. Note that the extension gallery "
467 "doesn't allow you to upload extensions that use experimental APIs.";
468
469const char kExperimentalFullscreenExitUIName[] =
470 "Experimental fullscreen exit UI";
471const char kExperimentalFullscreenExitUIDescription[] =
472 "Displays experimental UI to allow mouse and touch input methods to exit "
473 "fullscreen mode.";
474
475const char kExperimentalHotwordHardwareName[] =
476 "Simulated hardware 'Ok Google' features";
477const char kExperimentalHotwordHardwareDescription[] =
478 "Enables an experimental version of 'Ok Google' hotword detection features "
479 "that have a hardware dependency.";
480
481const char kExperimentalKeyboardLockUiName[] = "Experimental keyboard lock UI.";
482const char kExperimentalKeyboardLockUiDescription[] =
483 "An experimental full screen with keyboard lock mode requiring users to "
484 "hold Esc to exit.";
485
486const char kExperimentalSecurityFeaturesName[] =
487 "Potentially annoying security features";
488const char kExperimentalSecurityFeaturesDescription[] =
489 "Enables several security features that will likely break one or more "
490 "pages that you visit on a daily basis. Strict mixed content checking, for "
491 "example. And locking powerful features to secure contexts. This flag will "
492 "probably annoy you.";
493
494const char kExperimentalWebPlatformFeaturesName[] =
495 "Experimental Web Platform features";
496const char kExperimentalWebPlatformFeaturesDescription[] =
497 "Enables experimental Web Platform features that are in development.";
498
499const char kExtensionContentVerificationName[] =
500 "Extension Content Verification";
501const char kExtensionContentVerificationDescription[] =
502 "This flag can be used to turn on verification that the contents of the "
503 "files on disk for extensions from the webstore match what they're "
504 "expected to be. This can be used to turn on this feature if it would not "
505 "otherwise have been turned on, but cannot be used to turn it off (because "
506 "this setting can be tampered with by malware).";
507const char kExtensionContentVerificationBootstrap[] =
508 "Bootstrap (get expected hashes, but do not enforce them)";
509const char kExtensionContentVerificationEnforce[] =
510 "Enforce (try to get hashes, and enforce them if successful)";
511const char kExtensionContentVerificationEnforceStrict[] =
512 "Enforce strict (hard fail if we can't get hashes)";
513
514const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
515const char kExtensionsOnChromeUrlsDescription[] =
516 "Enables running extensions on chrome:// URLs, where extensions explicitly "
517 "request this permission.";
galinapae72e152017-05-12 13:12:28518
vabr0215a8e2017-03-28 12:47:34519// Report URL to SafeSearch
520
521const char kSafeSearchUrlReportingName[] = "SafeSearch URLs reporting.";
522
523const char kSafeSearchUrlReportingDescription[] =
524 "If enabled, inappropriate URLs can be reported back to SafeSearch.";
525
brettw5f9c1642017-05-14 17:12:48526const char kNostatePrefetchName[] = "No-State Prefetch";
vabr0215a8e2017-03-28 12:47:34527
528const char kNostatePrefetchDescription[] =
529 R"*("No-State Prefetch" pre-downloads resources to improve load )*"
530 R"*(times. "Prerender" does a full pre-rendering of the page, to )*"
531 R"*(improve load times even more. "Simple Load" does nothing and is )*"
532 R"*(similar to disabling the feature, but collects more metrics for )*"
533 R"*(comparison purposes.)*";
534
535const char kSpeculativePrefetchName[] = "Speculative Prefetch";
536
537const char kSpeculativePrefetchDescription[] =
538 R"*("Speculative Prefetch" fetches likely resources early to improve )*"
539 R"*(load times, based on a local database (see chrome://predictors). )*"
540 R"*("Learning" means that only the database construction is enabled, )*"
541 R"*("Prefetching" that learning and prefetching are enabled.)*";
542
Justin Donnelly4e448cb2017-07-07 21:32:13543const char kSpeculativeServiceWorkerStartOnQueryInputName[] =
544 "Enable speculative start of a service worker when a search is predicted.";
545
546const char kSpeculativeServiceWorkerStartOnQueryInputDescription[] =
547 "If enabled, when the user enters text in the omnibox that looks like a "
548 "a query, any service worker associated with the search engine the query "
549 "will be sent to is started early.";
550
horo201d49492017-05-19 05:31:40551const char kOffMainThreadFetchName[] = "Off-main-thread fetch for Web Workers";
552
553const char kOffMainThreadFetchDescription[] =
554 "If enabled, the resource fetches from worker threads will not be blocked "
555 "by the busy main thread.";
556
vabr0215a8e2017-03-28 12:47:34557// Force Tablet Mode
558
559const char kForceTabletModeName[] = "Force Tablet Mode";
560
561const char kForceTabletModeDescription[] =
562 R"*(This flag can be used to force a certain mode on to a chromebook, )*"
563 R"*(despite its current orientation. "TouchView" means that the )*"
564 R"*(chromebook will act as if it were in touch view mode. "Clamshell" )*"
565 R"*(means that the chromebook will act as if it were in clamshell )*"
566 R"*(mode . "Auto" means that the chromebook will alternate between )*"
567 R"*(the two, based on its orientation.)*";
568
569const char kForceTabletModeTouchview[] = "TouchView";
570
571const char kForceTabletModeClamshell[] = "Clamshell";
572
573const char kForceTabletModeAuto[] = "Auto (default)";
574
575// Print Preview features
rbpotterc51ee3622017-05-19 20:24:53576#if !defined(OS_WIN) && !defined(OS_MACOSX)
vabr0215a8e2017-03-28 12:47:34577const char kPrintPdfAsImageName[] = "Print Pdf as Image";
578
579const char kPrintPdfAsImageDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19580 "If enabled, an option to print PDF files as images will be available in "
581 "print preview.";
rbpotterc51ee3622017-05-19 20:24:53582#endif
vabr0215a8e2017-03-28 12:47:34583
brettw5f9c1642017-05-14 17:12:48584#if !defined(DISABLE_NACL)
585
vabr0215a8e2017-03-28 12:47:34586const char kNaclName[] = "Native Client";
vabr0215a8e2017-03-28 12:47:34587const char kNaclDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19588 "Support Native Client for all web applications, even those that were not "
589 "installed from the Chrome Web Store.";
vabr0215a8e2017-03-28 12:47:34590
vabr0215a8e2017-03-28 12:47:34591const char kNaclDebugName[] = "Native Client GDB-based debugging";
vabr0215a8e2017-03-28 12:47:34592const char kNaclDebugDescription[] =
593 "Enable GDB debug stub. This will stop a Native Client application on "
594 "startup and wait for nacl-gdb (from the NaCl SDK) to attach to it.";
595
vabr0215a8e2017-03-28 12:47:34596const char kPnaclSubzeroName[] = "Force PNaCl Subzero";
vabr0215a8e2017-03-28 12:47:34597const char kPnaclSubzeroDescription[] =
598 "Force the use of PNaCl's fast Subzero translator for all pexe files.";
599
vabr0215a8e2017-03-28 12:47:34600const char kNaclDebugMaskName[] =
601 "Restrict Native Client GDB-based debugging by pattern";
vabr0215a8e2017-03-28 12:47:34602const char kNaclDebugMaskDescription[] =
603 "Restricts Native Client application GDB-based debugging by URL of "
Vitalii Iarko7df520142017-07-07 12:53:19604 "manifest file. Native Client GDB-based debugging must be enabled for this "
605 "option to work.";
vabr0215a8e2017-03-28 12:47:34606const char kNaclDebugMaskChoiceDebugAll[] = "Debug everything.";
vabr0215a8e2017-03-28 12:47:34607const char kNaclDebugMaskChoiceExcludeUtilsPnacl[] =
608 "Debug everything except secure shell and the PNaCl translator.";
vabr0215a8e2017-03-28 12:47:34609const char kNaclDebugMaskChoiceIncludeDebug[] =
610 "Debug only if manifest URL ends with debug.nmf.";
611
brettw5f9c1642017-05-14 17:12:48612#endif
613
vabr0215a8e2017-03-28 12:47:34614const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
615
616const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
vabr0215a8e2017-03-28 12:47:34617const char kMarkHttpAsDangerous[] = "Always mark HTTP as actively dangerous";
elawrence52854122017-05-31 04:36:01618const char kMarkHttpAsNonSecureAfterEditing[] =
619 "Warn on HTTP after editing forms";
620const char kMarkHttpAsNonSecureWhileIncognito[] =
621 "Warn on HTTP while in Incognito mode";
622const char kMarkHttpAsNonSecureWhileIncognitoOrEditing[] =
623 "Warn on HTTP while in Incognito mode or after editing forms";
vabr0215a8e2017-03-28 12:47:34624
msrameka8443112017-04-24 23:20:10625// Material design of the Incognito NTP.
626
627extern const char kMaterialDesignIncognitoNTPName[] =
628 "Material Design Incognito NTP.";
629
630extern const char kMaterialDesignIncognitoNTPDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19631 "If enabled, the Incognito New Tab page uses the new material design with "
632 "a better readable text.";
msrameka8443112017-04-24 23:20:10633
vabr0215a8e2017-03-28 12:47:34634const char kSavePageAsMhtmlName[] = "Save Page as MHTML";
635
636const char kSavePageAsMhtmlDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19637 "Enables saving pages as MHTML: a single text file containing HTML and all "
638 "sub-resources.";
vabr0215a8e2017-03-28 12:47:34639
etienneb9a4b5302017-06-08 06:28:46640// Flag and values for MHTML Generator options lab.
vabr0215a8e2017-03-28 12:47:34641
642const char kMhtmlGeneratorOptionName[] = "MHTML Generation Option";
643
644const char kMhtmlGeneratorOptionDescription[] =
645 "Provides experimental options for MHTML file generator.";
646
647const char kMhtmlSkipNostoreMain[] = "Skips no-store main frame.";
648
649const char kMhtmlSkipNostoreAll[] = "Skips all no-store resources.";
650
vabr0215a8e2017-03-28 12:47:34651#if defined(OS_WIN)
652
653const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
654
655const char kCloudPrintXpsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19656 "XPS enables advanced options for classic printers connected to the Cloud "
657 "Print with Chrome. Printers must be re-connected after changing this "
658 "flag.";
vabr0215a8e2017-03-28 12:47:34659
660#endif // defined(OS_WIN)
661
662const char kLoadMediaRouterComponentExtensionName[] =
663 "Load Media Router Component Extension";
664
665const char kLoadMediaRouterComponentExtensionDescription[] =
666 "Loads the Media Router component extension at startup.";
667
668const char kPrintPreviewRegisterPromosName[] =
669 "Print Preview Registration Promos";
670
671const char kPrintPreviewRegisterPromosDescription[] =
672 "Enable registering unregistered cloud printers from print preview.";
673
674const char kScrollPredictionName[] = "Scroll prediction";
675
676const char kTopChromeMd[] = "UI Layout for the browser's top chrome";
677
678const char kTopChromeMdDescription[] =
679 R"*(Toggles between normal and touch (formerly "hybrid") layouts.)*";
680
681const char kTopChromeMdMaterial[] = "Normal";
682
683const char kTopChromeMdMaterialHybrid[] = "Touch";
684
patricialor325fa4c2017-05-08 07:51:31685const char kSiteDetails[] = "Site Details";
686
687const char kSiteDetailsDescription[] =
688 "Adds UI in MD Settings to view all content settings for a specific "
689 "origin.";
690
vabr0215a8e2017-03-28 12:47:34691const char kSiteSettings[] = "Site settings with All sites and Site details";
692
693const char kSiteSettingsDescription[] =
694 "Adds new ways of viewing Site settings.";
695
696const char kSecondaryUiMd[] =
697 "Material Design in the rest of the browser's native UI";
698
699const char kSecondaryUiMdDescription[] =
700 "Extends the --top-chrome-md setting to secondary UI (bubbles, dialogs, "
Vitalii Iarko7df520142017-07-07 12:53:19701 "etc.). On Mac, this enables MacViews, which uses toolkit-views for native "
702 "browser dialogs.";
vabr0215a8e2017-03-28 12:47:34703
704const char kScrollPredictionDescription[] =
705 "Predicts the finger's future position during scrolls allowing time to "
706 "render the frame before the finger is there.";
707
vabr0215a8e2017-03-28 12:47:34708#if defined(OS_ANDROID)
709
710const char kAccessibilityTabSwitcherName[] = "Accessibility Tab Switcher";
711
712const char kAccessibilityTabSwitcherDescription[] =
713 "Enable the accessibility tab switcher for Android.";
714
csashidf20b102017-04-04 01:53:24715const char kAndroidAutofillAccessibilityName[] = "Autofill Accessibility";
716
717const char kAndroidAutofillAccessibilityDescription[] =
718 "Enable accessibility for autofill popup.";
719
vabr0215a8e2017-03-28 12:47:34720const char kEnablePhysicalWebName[] = "Enable the Physical Web.";
721
722const char kEnablePhysicalWebDescription[] =
723 "Enable scanning for URLs from Physical Web objects.";
724
725#endif // defined(OS_ANDROID)
726
727const char kTouchEventsName[] = "Touch Events API";
728
729const char kTouchEventsDescription[] =
730 "Force Touch Events API feature detection to always be enabled or "
731 "disabled, or to be enabled when a touchscreen is detected on startup "
732 "(Automatic, the default).";
733
734const char kTouchAdjustmentName[] = "Touch adjustment";
735
736const char kTouchAdjustmentDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19737 "Refine the position of a touch gesture in order to compensate for touches "
738 "having poor resolution compared to a mouse.";
vabr0215a8e2017-03-28 12:47:34739
brettw5f9c1642017-05-14 17:12:48740const char kGlCompositedTextureQuadBordersName[] =
vabr0215a8e2017-03-28 12:47:34741 "GL composited texture quad borders";
742
743const char kGlCompositedTextureQuadBordersDescription[] =
744 "Renders a border around GL composited texture quads to help debug and "
745 "study overlay support.";
746
brettw5f9c1642017-05-14 17:12:48747const char kShowOverdrawFeedbackName[] = "Show overdraw feedback";
vabr0215a8e2017-03-28 12:47:34748
749const char kShowOverdrawFeedbackDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19750 "Visualize overdraw by color-coding elements based on if they have other "
751 "elements drawn underneath.";
vabr0215a8e2017-03-28 12:47:34752
753const char kUiPartialSwapName[] = "Partial swap";
754
755const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
756
Evan Stadeb508c722017-07-12 02:19:08757const char kDelayReloadStopButtonChangeName[] =
758 "Reduce stop/reload button flicker";
759
760const char kDelayReloadStopButtonChangeDescription[] =
761 "Delays display of stop button when page is loading such that short "
762 "loads won't show the stop button at all.";
763
vabr0215a8e2017-03-28 12:47:34764const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
765
766const char kIgnoreGpuBlacklistDescription[] =
767 "Overrides the built-in software rendering list and enables "
768 "GPU-acceleration on unsupported system configurations.";
769
770const char kInertVisualViewportName[] = "Inert visual viewport.";
771
772const char kInertVisualViewportDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19773 "Experiment to have all APIs reflect the layout viewport. This will make "
774 "window.scroll properties relative to the layout viewport.";
vabr0215a8e2017-03-28 12:47:34775
Catherine Chungd4d24362017-06-09 21:12:12776const char kInProductHelpDemoModeChoiceName[] = "In-Product Help Demo Mode";
777
778const char kInProductHelpDemoModeChoiceDescription[] =
779 "Selects the In-Product Help demo mode.";
780
vabr0215a8e2017-03-28 12:47:34781const char kFastUnloadName[] = "Fast tab/window close";
782
783const char kFastUnloadDescription[] =
784 "Enables fast tab/window closing - runs a tab's onunload js handler "
785 "independently of the GUI.";
786
Yutaka Hirano6bbe1e32017-05-24 09:25:58787const char kFetchKeepaliveTimeoutSettingName[] =
788 "Fetch API keepalive timeout setting";
789const char kFetchKeepaliveTimeoutSettingDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19790 "This is for setting the timeout value for Fetch API with keepalive option "
791 "and SendBeacon";
Yutaka Hirano6bbe1e32017-05-24 09:25:58792
vabr0215a8e2017-03-28 12:47:34793const char kUserConsentForExtensionScriptsName[] =
794 "User consent for extension scripts";
795
796const char kUserConsentForExtensionScriptsDescription[] =
797 "Require user consent for an extension running a script on the page, if "
798 "the extension requested permission to run on all urls.";
799
800const char kHistoryRequiresUserGestureName[] =
801 "New history entries require a user gesture.";
802
803const char kHistoryRequiresUserGestureDescription[] =
804 "Require a user gesture to add a history entry.";
805
806const char kHyperlinkAuditingName[] = "Hyperlink auditing";
807
808const char kHyperlinkAuditingDescription[] = "Sends hyperlink auditing pings.";
809
810#if defined(OS_ANDROID)
811
brettw5f9c1642017-05-14 17:12:48812const char kContextualSearchName[] = "Contextual Search";
vabr0215a8e2017-03-28 12:47:34813
814const char kContextualSearchDescription[] =
815 "Whether or not Contextual Search is enabled.";
816
817const char kContextualSearchContextualCardsBarIntegration[] =
818 "Contextual Search - Contextual Cards Integration";
819
820const char kContextualSearchContextualCardsBarIntegrationDescription[] =
821 "Whether or not integration of Contextual Cards data in the Contextual "
822 "Search Bar is enabled.";
823
brettw5f9c1642017-05-14 17:12:48824const char kContextualSearchSingleActionsName[] =
vabr0215a8e2017-03-28 12:47:34825 "Contextual Search - Single Actions";
826
827const char kContextualSearchSingleActionsDescription[] =
828 "Whether or not single actions using Contextual Cards data in the "
829 "Contextual Search Bar is enabled.";
830
brettw5f9c1642017-05-14 17:12:48831const char kContextualSearchUrlActionsName[] =
832 "Contextual Search - URL Actions";
vabr0215a8e2017-03-28 12:47:34833
834const char kContextualSearchUrlActionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19835 "Whether or not URL actions using Contextual Cards data in the Contextual "
836 "Search Bar is enabled.";
vabr0215a8e2017-03-28 12:47:34837
838#endif // defined(OS_ANDROID)
839
840const char kSmoothScrollingName[] = "Smooth Scrolling";
841
842const char kSmoothScrollingDescription[] =
843 "Animate smoothly when scrolling page content.";
844
845const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
846
847const char kOverlayScrollbarsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19848 "Enable the experimental overlay scrollbars implementation. You must also "
849 "enable threaded compositing to have the scrollbars animate.";
vabr0215a8e2017-03-28 12:47:34850
851const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
852
853const char kShowAutofillTypePredictionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19854 "Annotates web forms with Autofill field type predictions as placeholder "
855 "text.";
vabr0215a8e2017-03-28 12:47:34856
857const char kTcpFastOpenName[] = "TCP Fast Open";
858
859const char kTcpFastOpenDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19860 "Enable the option to send extra authentication information in the initial "
861 "SYN packet for a previously connected client, allowing faster data send "
862 "start.";
vabr0215a8e2017-03-28 12:47:34863
864const char kTouchDragDropName[] = "Touch initiated drag and drop";
865
866const char kTouchDragDropDescription[] =
867 "Touch drag and drop can be initiated through long press on a draggable "
868 "element.";
869
870const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
871
872const char kTouchSelectionStrategyDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19873 "Controls how text selection granularity changes when touch text selection "
874 "handles are dragged. Non-default behavior is experimental.";
vabr0215a8e2017-03-28 12:47:34875
876const char kTouchSelectionStrategyCharacter[] = "Character";
877
878const char kTouchSelectionStrategyDirection[] = "Direction";
879
880const char kWalletServiceUseSandboxName[] =
881 "Use Google Payments sandbox servers";
882
883const char kWalletServiceUseSandboxDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19884 "For developers: use the sandbox service for Google Payments API calls.";
vabr0215a8e2017-03-28 12:47:34885
886const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
887
888const char kOverscrollHistoryNavigationDescription[] =
889 "Experimental history navigation in response to horizontal overscroll.";
890
891const char kOverscrollHistoryNavigationSimpleUi[] = "Simple";
892
893const char kOverscrollStartThresholdName[] = "Overscroll start threshold";
894
895const char kOverscrollStartThresholdDescription[] =
896 "Changes overscroll start threshold relative to the default value.";
897
898const char kOverscrollStartThreshold133Percent[] = "133%";
899
900const char kOverscrollStartThreshold166Percent[] = "166%";
901
902const char kOverscrollStartThreshold200Percent[] = "200%";
903
904const char kScrollEndEffectName[] = "Scroll end effect";
905
906const char kScrollEndEffectDescription[] =
907 "Experimental scroll end effect in response to vertical overscroll.";
908
909const char kWebgl2Name[] = "WebGL 2.0";
910
911const char kWebgl2Description[] = "Allow web applications to access WebGL 2.0.";
912
913const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
914
915const char kWebglDraftExtensionsDescription[] =
916 "Enabling this option allows web applications to access the WebGL "
917 "Extensions that are still in draft status.";
918
919const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
920
921const char kWebrtcHwDecodingDescription[] =
922 "Support in WebRTC for decoding video streams using platform hardware.";
923
924const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
925
926const char kWebrtcHwEncodingDescription[] =
927 "Support in WebRTC for encoding video streams using platform hardware.";
928
929const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
930
931const char kWebrtcHwH264EncodingDescription[] =
932 "Support in WebRTC for encoding h264 video streams using platform "
933 "hardware.";
934
braveyao96c9b342017-04-25 18:23:19935const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
936
937const char kWebrtcHwVP8EncodingDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19938 "Support in WebRTC for encoding vp8 video streams using platform hardware.";
braveyao96c9b342017-04-25 18:23:19939
vabr0215a8e2017-03-28 12:47:34940const char kWebrtcSrtpAesGcmName[] =
941 "Negotiation with GCM cipher suites for SRTP in WebRTC";
942
943const char kWebrtcSrtpAesGcmDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19944 "When enabled, WebRTC will try to negotiate GCM cipher suites for SRTP.";
vabr0215a8e2017-03-28 12:47:34945
946const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
947
948const char kWebrtcStunOriginDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19949 "When enabled, Stun messages generated by WebRTC will contain the Origin "
950 "header.";
vabr0215a8e2017-03-28 12:47:34951
952const char kWebrtcEchoCanceller3Name[] = "WebRTC Echo Canceller 3.";
953
954const char kWebrtcEchoCanceller3Description[] =
955 "Experimental WebRTC echo canceller (AEC3).";
956
957#if defined(OS_ANDROID)
958
959const char kMediaScreenCaptureName[] = "Experimental ScreenCapture.";
960
961const char kMediaScreenCaptureDescription[] =
962 "Enable this option for experimental ScreenCapture feature on Android.";
963
964#endif // defined(OS_ANDROID)
965
966#if BUILDFLAG(ENABLE_WEBRTC)
967
968const char kWebrtcH264WithOpenh264FfmpegName[] =
969 "WebRTC H.264 software video encoder/decoder";
970
971const char kWebrtcH264WithOpenh264FfmpegDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19972 "When enabled, an H.264 software video encoder/decoder pair is included. "
973 "If a hardware encoder/decoder is also available it may be used instead of "
974 "this encoder/decoder.";
vabr0215a8e2017-03-28 12:47:34975
976#endif // BUILDFLAG(ENABLE_WEBRTC)
977
978const char kWebvrName[] = "WebVR";
979
980const char kWebvrDescription[] =
981 "Enabling this option allows web applications to access experimental "
982 "Virtual Reality APIs.";
983
mthiesse700b0b62017-05-19 01:37:31984#if BUILDFLAG(ENABLE_VR)
985
vabr0215a8e2017-03-28 12:47:34986const char kWebvrExperimentalRenderingName[] =
987 "WebVR experimental rendering optimizations";
988
989const char kWebvrExperimentalRenderingDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:19990 "Enabling this option activates experimental rendering path optimizations "
991 "for WebVR.";
vabr0215a8e2017-03-28 12:47:34992
mthiesse700b0b62017-05-19 01:37:31993#endif // BUILDFLAG(ENABLE_VR)
994
vabr0215a8e2017-03-28 12:47:34995const char kGamepadExtensionsName[] = "Gamepad Extensions";
996
997const char kGamepadExtensionsDescription[] =
998 "Enabling this option allows web applications to access experimental "
999 "extensions to the Gamepad APIs.";
1000
1001#if defined(OS_ANDROID)
1002
1003const char kNewPhotoPickerName[] = "Enable new Photopicker";
1004
1005const char kNewPhotoPickerDescription[] =
1006 "Activates the new picker for selecting photos.";
1007
1008#endif // defined(OS_ANDROID)
1009
1010#if defined(OS_ANDROID)
1011
1012const char kEnableOskOverscrollName[] = "Enable OSK Overscroll";
1013
1014const char kEnableOskOverscrollDescription[] =
1015 "Enable OSK overscroll support. With this flag on, the OSK will only "
1016 "resize the visual viewport.";
1017
1018#endif // defined(OS_ANDROID)
1019
1020const char kQuicName[] = "Experimental QUIC protocol";
1021
1022const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
1023
1024const char kSslVersionMaxName[] = "Maximum TLS version enabled.";
1025
1026const char kSslVersionMaxDescription[] = "Set maximum enabled TLS version.";
1027
1028const char kSslVersionMaxTls12[] = "TLS 1.2";
1029
1030const char kSslVersionMaxTls13[] = "TLS 1.3";
1031
vabr0215a8e2017-03-28 12:47:341032const char kPassiveDocumentEventListenersDescription[] =
1033 "Forces touchstart, and touchmove event listeners on document level "
1034 "targets (which haven't requested otherwise) to be treated as passive.";
1035
1036const char kPassiveDocumentEventListenersName[] =
1037 "Document Level Event Listeners Passive Default";
1038
1039const char kPassiveEventListenersDueToFlingDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191040 "Forces touchstart, and first touchmove per scroll event listeners during "
1041 "fling to be treated as passive.";
vabr0215a8e2017-03-28 12:47:341042
1043const char kPassiveEventListenersDueToFlingName[] =
1044 "Touch Event Listeners Passive Default During Fling";
1045
1046const char kPassiveEventListenerTrue[] = "True (when unspecified)";
1047
1048const char kPassiveEventListenerForceAllTrue[] = "Force All True";
1049
1050const char kPassiveEventListenerDefaultName[] =
1051 "Passive Event Listener Override";
1052
1053const char kPassiveEventListenerDefaultDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191054 "Forces touchstart, touchmove, mousewheel and wheel event listeners (which "
1055 "haven't requested otherwise) to be treated as passive. This will break "
1056 "touch/wheel behavior on some websites but is useful for demonstrating the "
1057 "potential performance benefits of adopting passive event listeners.";
vabr0215a8e2017-03-28 12:47:341058
vabr0215a8e2017-03-28 12:47:341059const char kImportantSitesInCbdName[] =
1060 "Important sites options in clear browsing data dialog";
1061
1062const char kImportantSitesInCbdDescription[] =
1063 "Include the option to whitelist important sites in the clear browsing "
1064 "data dialog.";
1065
vabr0215a8e2017-03-28 12:47:341066#if defined(USE_ASH)
1067
brettw81668cf2017-05-15 22:57:341068const char kAshShelfColorName[] = "Shelf color in Chrome OS system UI";
vabr0215a8e2017-03-28 12:47:341069
1070const char kAshShelfColorDescription[] =
bruthigd8b95962017-03-31 19:38:341071 "Enables/disables the shelf color to be a derived from the wallpaper. The "
1072 "--ash-shelf-color-scheme flag defines how that color is derived.";
vabr0215a8e2017-03-28 12:47:341073
bruthigd8b95962017-03-31 19:38:341074const char kAshShelfColorScheme[] = "Shelf color scheme in Chrome OS System UI";
vabr0215a8e2017-03-28 12:47:341075
bruthigd8b95962017-03-31 19:38:341076const char kAshShelfColorSchemeDescription[] =
1077 "Specify how the color is derived from the wallpaper. This flag is only "
1078 "used when the --ash-shelf-color flag is enabled. Defaults to Dark & Muted";
vabr0215a8e2017-03-28 12:47:341079
bruthigd8b95962017-03-31 19:38:341080const char kAshShelfColorSchemeLightVibrant[] = "Light & Vibrant";
vabr0215a8e2017-03-28 12:47:341081
bruthigd8b95962017-03-31 19:38:341082const char kAshShelfColorSchemeNormalVibrant[] = "Normal & Vibrant";
vabr0215a8e2017-03-28 12:47:341083
bruthigd8b95962017-03-31 19:38:341084const char kAshShelfColorSchemeDarkVibrant[] = "Dark & Vibrant";
vabr0215a8e2017-03-28 12:47:341085
bruthigd8b95962017-03-31 19:38:341086const char kAshShelfColorSchemeLightMuted[] = "Light & Muted";
1087
1088const char kAshShelfColorSchemeNormalMuted[] = "Normal & Muted";
1089
1090const char kAshShelfColorSchemeDarkMuted[] = "Dark & Muted";
vabr0215a8e2017-03-28 12:47:341091
vabr0215a8e2017-03-28 12:47:341092const char kAshEnableMirroredScreenName[] = "Enable mirrored screen mode.";
1093
1094const char kAshEnableMirroredScreenDescription[] =
1095 "Enable the mirrored screen mode. This mode flips the screen image "
1096 "horizontally.";
1097
wutaob161bf22017-04-26 16:55:031098const char kAshDisableSmoothScreenRotationName[] =
1099 "Disable smooth rotation animations.";
wutao2c0ca182017-04-06 22:40:541100
wutaob161bf22017-04-26 16:55:031101const char kAshDisableSmoothScreenRotationDescription[] =
1102 "Disable smooth rotation animations.";
wutao2c0ca182017-04-06 22:40:541103
vabr0215a8e2017-03-28 12:47:341104const char kMaterialDesignInkDropAnimationFast[] = "Fast";
1105
1106const char kMaterialDesignInkDropAnimationSlow[] = "Slow";
1107
1108const char kMaterialDesignInkDropAnimationSpeedName[] =
1109 "Material Design Ink Drop Animation Speed";
1110
1111const char kMaterialDesignInkDropAnimationSpeedDescription[] =
1112 "Sets the speed of the experimental visual feedback animations for "
1113 "material design.";
1114
1115const char kUiSlowAnimationsName[] = "Slow UI animations";
1116
1117const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
1118
reveman5be07ac82017-04-14 01:06:051119const char kUiShowCompositedLayerBordersName[] =
1120 "Show UI composited layer borders";
1121
1122const char kUiShowCompositedLayerBordersDescription[] =
1123 "Show border around composited layers created by UI.";
1124
1125const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
1126
1127const char kUiShowCompositedLayerBordersSurface[] = "Surface";
1128
1129const char kUiShowCompositedLayerBordersLayer[] = "Layer";
1130
1131const char kUiShowCompositedLayerBordersAll[] = "All";
1132
vabr0215a8e2017-03-28 12:47:341133#endif // defined(USE_ASH)
1134
1135const char kJavascriptHarmonyShippingName[] =
1136 "Latest stable JavaScript features";
1137
1138const char kJavascriptHarmonyShippingDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191139 "Some web pages use legacy or non-standard JavaScript extensions that may "
1140 "conflict with the latest JavaScript features. This flag allows disabling "
1141 "support of those features for compatibility with such pages.";
vabr0215a8e2017-03-28 12:47:341142
1143const char kJavascriptHarmonyName[] = "Experimental JavaScript";
1144
1145const char kJavascriptHarmonyDescription[] =
1146 "Enable web pages to use experimental JavaScript features.";
1147
vabr0215a8e2017-03-28 12:47:341148#if defined(OS_ANDROID)
1149
1150const char kMediaDocumentDownloadButtonName[] =
1151 "Download button when opening a page with media url.";
1152
1153const char kMediaDocumentDownloadButtonDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191154 "Allow a download button to show up when opening a page with media url.";
vabr0215a8e2017-03-28 12:47:341155
1156#endif // defined(OS_ANDROID)
1157
1158const char kSoftwareRasterizerName[] = "3D software rasterizer";
1159
1160const char kSoftwareRasterizerDescription[] =
1161 "Fall back to a 3D software rasterizer when the GPU cannot be used.";
1162
1163const char kGpuRasterizationName[] = "GPU rasterization";
1164
1165const char kGpuRasterizationDescription[] =
1166 "Use GPU to rasterize web content. Requires impl-side painting.";
1167
1168const char kForceGpuRasterization[] = "Force-enabled for all layers";
1169
1170const char kGpuRasterizationMsaaSampleCountName[] =
1171 "GPU rasterization MSAA sample count.";
1172
1173const char kGpuRasterizationMsaaSampleCountDescription[] =
1174 "Specify the number of MSAA samples for GPU rasterization.";
1175
1176const char kGpuRasterizationMsaaSampleCountZero[] = "0";
1177
1178const char kGpuRasterizationMsaaSampleCountTwo[] = "2";
1179
1180const char kGpuRasterizationMsaaSampleCountFour[] = "4";
1181
1182const char kGpuRasterizationMsaaSampleCountEight[] = "8";
1183
1184const char kGpuRasterizationMsaaSampleCountSixteen[] = "16";
1185
1186const char kSlimmingPaintInvalidationName[] = "Slimming paint invalidation.";
1187
1188const char kSlimmingPaintInvalidationDescription[] =
1189 "Whether to enable a new paint invalidation system.";
1190
vabr0215a8e2017-03-28 12:47:341191const char kOriginTrialsName[] = "Origin Trials";
1192
1193const char kOriginTrialsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191194 "Enables origin trials for controlling access to feature/API experiments.";
vabr0215a8e2017-03-28 12:47:341195
vabr0215a8e2017-03-28 12:47:341196const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
1197
1198const char kSilentDebuggerExtensionApiDescription[] =
1199 "Do not show the infobar when an extension attaches to a page via "
1200 "chrome.debugger API. This is required to debug extension background "
1201 "pages.";
1202
1203const char kShowTouchHudName[] = "Show HUD for touch points";
1204
1205const char kShowTouchHudDescription[] =
1206 "Enables a heads-up display at the top-left corner of the screen that "
1207 "lists information about the touch-points on the screen.";
1208
1209const char kPreferHtmlOverPluginsName[] = "Prefer HTML over Flash";
1210
1211const char kPreferHtmlOverPluginsDescription[] =
1212 "Prefer HTML content by hiding Flash from the list of plugins.";
1213
vabr0215a8e2017-03-28 12:47:341214const char kRunAllFlashInAllowModeName[] =
1215 R"*(Run all Flash content when Flash setting is set to "allow")*";
1216
1217const char kRunAllFlashInAllowModeDescription[] =
1218 R"*(For sites that have been set to "allow" Flash content, run all )*"
1219 R"*(content including any that has been deemed unimportant.)*";
1220
1221const char kPinchScaleName[] = "Pinch scale";
1222
1223const char kPinchScaleDescription[] =
1224 "Enables experimental support for scale using pinch.";
1225
vabr0215a8e2017-03-28 12:47:341226const char kReducedReferrerGranularityName[] =
1227 "Reduce default 'referer' header granularity.";
1228
1229const char kReducedReferrerGranularityDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191230 "If a page hasn't set an explicit referrer policy, setting this flag will "
1231 "reduce the amount of information in the 'referer' header for cross-origin "
1232 "requests.";
vabr0215a8e2017-03-28 12:47:341233
1234#if defined(OS_CHROMEOS)
1235
sky527bea52017-05-15 19:15:141236const char kUseMusDescription[] = "Enable the Mojo UI service.";
vabr0215a8e2017-03-28 12:47:341237
sky527bea52017-05-15 19:15:141238const char kUseMusName[] = "Mus";
1239
1240const char kEnableMashDescription[] =
1241 "Mash (UI, Chrome and ash in separate services)";
1242
1243const char kEnableMusDescription[] =
1244 "Mus (UI in separate service, Chrome and ash in same service)";
vabr0215a8e2017-03-28 12:47:341245
1246const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click";
1247
1248const char kAllowTouchpadThreeFingerClickDescription[] =
1249 "Enables touchpad three-finger-click as middle button.";
1250
1251const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
1252
1253const char kAshEnableUnifiedDesktopDescription[] =
1254 "Enable unified desktop mode which allows a window to span multiple "
1255 "displays.";
1256
brettw5f9c1642017-05-14 17:12:481257const char kBootAnimationName[] = "Boot animation";
vabr0215a8e2017-03-28 12:47:341258
1259const char kBootAnimationDescription[] =
1260 "Wallpaper boot animation (except for OOBE case).";
1261
hansberryc147785f2017-05-02 23:36:271262const char kTetherName[] = "Instant Tethering";
1263
1264const char kTetherDescription[] =
1265 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
1266 "phone to share its Internet connection with this device.";
1267
vabr0215a8e2017-03-28 12:47:341268#endif // defined(OS_CHROMEOS)
1269
vabr0215a8e2017-03-28 12:47:341270const char kRequestTabletSiteName[] =
1271 "Request tablet site option in the settings menu";
1272
1273const char kRequestTabletSiteDescription[] =
1274 "Allows the user to request tablet site. Web content is often optimized "
Vitalii Iarko7df520142017-07-07 12:53:191275 "for tablet devices. When this option is selected the user agent string is "
1276 "changed to indicate a tablet device. Web content optimized for tablets is "
1277 "received there after for the current tab.";
vabr0215a8e2017-03-28 12:47:341278
vabr0215a8e2017-03-28 12:47:341279const char kPasswordGenerationName[] = "Password generation";
1280
1281const char kPasswordGenerationDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191282 "Allow the user to have Chrome generate passwords when it detects account "
1283 "creation pages.";
vabr0215a8e2017-03-28 12:47:341284
1285const char kPasswordForceSavingName[] = "Force-saving of passwords";
1286
1287const char kPasswordForceSavingDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191288 "Allow the user to manually enforce password saving instead of relying on "
1289 "password manager's heuristics.";
vabr0215a8e2017-03-28 12:47:341290
1291const char kManualPasswordGenerationName[] = "Manual password generation.";
1292
1293const char kManualPasswordGenerationDescription[] =
1294 "Show a 'Generate Password' option on the context menu for all password "
1295 "fields.";
1296
brettw5f9c1642017-05-14 17:12:481297const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
vabr0215a8e2017-03-28 12:47:341298
1299const char kShowAutofillSignaturesDescription[] =
1300 "Annotates web forms with Autofill signatures as HTML attributes.";
1301
1302const char kSuggestionsWithSubStringMatchName[] =
1303 "Substring matching for Autofill suggestions";
1304
1305const char kSuggestionsWithSubStringMatchDescription[] =
1306 "Match Autofill suggestions based on substrings (token prefixes) rather "
1307 "than just prefixes.";
1308
vabr0215a8e2017-03-28 12:47:341309const char kProtectSyncCredentialName[] = "Autofill sync credential";
1310
1311const char kProtectSyncCredentialDescription[] =
1312 "How the password manager handles autofill for the sync credential.";
1313
1314const char kPasswordImportExportName[] = "Password import and export";
1315
1316const char kPasswordImportExportDescription[] =
1317 "Import and Export functionality in password settings.";
1318
1319const char kProtectSyncCredentialOnReauthName[] =
1320 "Autofill sync credential only for transactional reauth pages";
1321
1322const char kProtectSyncCredentialOnReauthDescription[] =
1323 "How the password manager handles autofill for the sync credential only "
1324 "for transactional reauth pages.";
1325
1326const char kIconNtpName[] = "Large icons on the New Tab page";
1327
1328const char kIconNtpDescription[] =
1329 "Enable the experimental New Tab page using large icons.";
1330
1331const char kPushApiBackgroundModeName[] = "Enable Push API background mode";
1332
1333const char kPushApiBackgroundModeDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191334 "Enable background mode for the Push API. This allows Chrome to continue "
1335 "running after the last window is closed, and to launch at OS startup, if "
1336 "the Push API needs it.";
vabr0215a8e2017-03-28 12:47:341337
brettw5f9c1642017-05-14 17:12:481338const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
vabr0215a8e2017-03-28 12:47:341339
1340const char kTraceUploadUrlDescription[] =
1341 "This is to be used in conjunction with the enable-navigation-tracing "
1342 "flag. Please select the label that best describes the recorded traces. "
Vitalii Iarko7df520142017-07-07 12:53:191343 "This will choose the destination the traces are uploaded to. If you are "
1344 "not sure, select other. If left empty, no traces will be uploaded.";
vabr0215a8e2017-03-28 12:47:341345
vabr0215a8e2017-03-28 12:47:341346const char kTraceUploadUrlChoiceOther[] = "Other";
1347
1348const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1349
1350const char kTraceUploadUrlChoiceQa[] = "QA";
1351
1352const char kTraceUploadUrlChoiceTesting[] = "Testing";
1353
1354const char kSupervisedUserManagedBookmarksFolderName[] =
1355 "Managed bookmarks for supervised users";
1356
1357const char kSupervisedUserManagedBookmarksFolderDescription[] =
1358 "Enable the managed bookmarks folder for supervised users.";
1359
1360const char kSyncAppListName[] = "App Launcher sync";
1361
1362const char kSyncAppListDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191363 "Enable App Launcher sync. This also enables Folders where available (non "
1364 "OSX).";
vabr0215a8e2017-03-28 12:47:341365
vabr0215a8e2017-03-28 12:47:341366const char kV8CacheOptionsName[] = "V8 caching mode.";
1367
1368const char kV8CacheOptionsDescription[] =
1369 "Caching mode for the V8 JavaScript engine.";
1370
1371const char kV8CacheOptionsParse[] = "Cache V8 parser data.";
1372
1373const char kV8CacheOptionsCode[] = "Cache V8 compiler data.";
1374
1375const char kV8CacheStrategiesForCacheStorageName[] =
1376 "V8 caching strategy for CacheStorage.";
1377
1378const char kV8CacheStrategiesForCacheStorageDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191379 "Caching strategy of scripts in CacheStorage for the V8 JavaScript engine.";
vabr0215a8e2017-03-28 12:47:341380
1381const char kV8CacheStrategiesForCacheStorageNormal[] = "Normal";
1382
1383const char kV8CacheStrategiesForCacheStorageAggressive[] = "Aggressive";
1384
vabr0215a8e2017-03-28 12:47:341385const char kMemoryCoordinatorName[] = "Memory coordinator";
1386
1387const char kMemoryCoordinatorDescription[] =
1388 "Enable memory coordinator instead of memory pressure listeners.";
1389
1390const char kServiceWorkerNavigationPreloadName[] =
1391 "Service worker navigation preload.";
1392
1393const char kServiceWorkerNavigationPreloadDescription[] =
1394 "Enable web pages to use the experimental service worker navigation "
1395 "preload API.";
1396
megjablon553df4cf2017-04-01 01:29:551397#if defined(OS_ANDROID)
1398
1399const char kEnableDataReductionProxyMainMenuName[] =
megjablonacb36d12017-04-21 00:09:291400 "Enable Data Saver main menu footer";
megjablon553df4cf2017-04-01 01:29:551401
1402const char kEnableDataReductionProxyMainMenuDescription[] =
megjablonacb36d12017-04-21 00:09:291403 "Enables the Data Saver footer in the main menu";
megjablon553df4cf2017-04-01 01:29:551404
megjablon5e5d1c172017-04-06 23:55:111405const char kEnableDataReductionProxySiteBreakdownName[] =
1406 "Data Saver Site Breakdown";
1407
1408const char kEnableDataReductionProxySiteBreakdownDescription[] =
1409 "Enable the site breakdown on the Data Saver settings page.";
1410
ryansturm28839dee2017-05-05 17:34:271411const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
1412
1413const char kEnableOfflinePreviewsDescription[] =
1414 "Enable showing offline page previews on slow networks.";
1415
megjablon553df4cf2017-04-01 01:29:551416#endif // defined(OS_ANDROID)
1417
vabr0215a8e2017-03-28 12:47:341418const char kLcdTextName[] = "LCD text antialiasing";
1419
1420const char kLcdTextDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191421 "If disabled, text is rendered with grayscale antialiasing instead of LCD "
1422 "(subpixel) when doing accelerated compositing.";
vabr0215a8e2017-03-28 12:47:341423
vabr0215a8e2017-03-28 12:47:341424const char kZeroCopyName[] = "Zero-copy rasterizer";
1425
1426const char kZeroCopyDescription[] =
1427 "Raster threads write directly to GPU memory associated with tiles.";
1428
vabr0215a8e2017-03-28 12:47:341429const char kNumRasterThreadsName[] = "Number of raster threads";
1430
1431const char kNumRasterThreadsDescription[] =
1432 "Specify the number of raster threads.";
1433
1434const char kNumRasterThreadsOne[] = "1";
1435
1436const char kNumRasterThreadsTwo[] = "2";
1437
1438const char kNumRasterThreadsThree[] = "3";
1439
1440const char kNumRasterThreadsFour[] = "4";
1441
1442const char kResetAppListInstallStateName[] =
1443 "Reset the App Launcher install state on every restart.";
1444
1445const char kResetAppListInstallStateDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191446 "Reset the App Launcher install state on every restart. While this flag is "
1447 "set, Chrome will forget the launcher has been installed each time it "
1448 "starts. This is used for testing the App Launcher install flow.";
vabr0215a8e2017-03-28 12:47:341449
Takashi Toyoshima8a7fd952017-07-11 08:22:291450const char kResourceLoadSchedulerName[] = "Use the resource load scheduler";
1451
1452const char kResourceLoadSchedulerDescription[] =
1453 "Uses the resource load scheduler in blink to schedule and throttle "
1454 "resource load requests.";
1455
vabr0215a8e2017-03-28 12:47:341456#if defined(OS_CHROMEOS)
1457
1458const char kFirstRunUiTransitionsName[] =
1459 "Animated transitions in the first-run tutorial";
1460
1461const char kFirstRunUiTransitionsDescription[] =
1462 "Transitions during first-run tutorial are animated.";
1463
1464#endif // defined(OS_CHROMEOS)
1465
1466const char kNewBookmarkAppsName[] = "The new bookmark app system";
1467
1468const char kNewBookmarkAppsDescription[] =
1469 "Enables the new system for creating bookmark apps.";
1470
1471#if defined(OS_MACOSX)
1472
1473const char kHostedAppsInWindowsName[] =
1474 "Allow hosted apps to be opened in windows";
1475
1476const char kHostedAppsInWindowsDescription[] =
1477 "Allows hosted apps to be opened in windows instead of being limited to "
1478 "tabs.";
1479
1480const char kTabDetachingInFullscreenName[] =
1481 "Allow tab detaching in fullscreen";
1482
1483const char kTabDetachingInFullscreenDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191484 "Allow tabs to detach from the tabstrip when in fullscreen mode on Mac.";
vabr0215a8e2017-03-28 12:47:341485
1486const char kFullscreenToolbarRevealName[] =
1487 "Enables the toolbar in fullscreen to reveal itself.";
1488
1489const char kFullscreenToolbarRevealDescription[] =
1490 "Reveal the toolbar in fullscreen for a short period when the tab strip "
1491 "has changed.";
1492
1493const char kTabStripKeyboardFocusName[] = "Tab Strip Keyboard Focus";
1494
1495const char kTabStripKeyboardFocusDescription[] =
1496 "Enable keyboard focus for the tabs in the tab strip.";
1497
1498#endif // defined(OS_MACOSX)
1499
1500const char kHostedAppShimCreationName[] =
1501 "Creation of app shims for hosted apps on Mac";
1502
1503const char kHostedAppShimCreationDescription[] =
1504 "Create app shims on Mac when creating a hosted app.";
1505
1506const char kHostedAppQuitNotificationName[] =
1507 "Quit notification for hosted apps";
1508
1509const char kHostedAppQuitNotificationDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191510 "Display a notification when quitting Chrome if hosted apps are currently "
1511 "running.";
vabr0215a8e2017-03-28 12:47:341512
1513#if defined(OS_ANDROID)
1514
1515const char kPullToRefreshEffectName[] = "The pull-to-refresh effect";
1516
1517const char kPullToRefreshEffectDescription[] =
1518 "Page reloads triggered by vertically overscrolling content.";
1519
googleobc47e0b2017-05-05 05:11:121520const char kTranslateCompactUIName[] = "New Translate Infobar";
1521
1522const char kTranslateCompactUIDescription[] =
1523 "Enable the new Translate compact infobar UI.";
1524
vabr0215a8e2017-03-28 12:47:341525#endif // defined(OS_ANDROID)
1526
1527#if defined(OS_MACOSX)
1528
1529const char kTranslateNewUxName[] = "New Translate UX";
1530
1531const char kTranslateNewUxDescription[] =
1532 "Enable the new Translate bubble UX is offered instead of the infobar.";
1533
1534#endif // defined(OS_MACOSX)
1535
1536const char kTranslate2016q2UiName[] = "Translate 2016Q2 UI";
1537
1538const char kTranslate2016q2UiDescription[] =
1539 "Improved triggering logic and look for Translate Bubble UI";
1540
1541const char kTranslateLanguageByUlpName[] = "Translate Language by ULP";
1542
1543const char kTranslateLanguageByUlpDescription[] =
1544 "Improved translate target language and triggering logic by considering "
1545 "information from User Language Profile (ULP).";
1546
vabr0215a8e2017-03-28 12:47:341547const char kPermissionActionReportingName[] = "Permission Action Reporting";
1548
1549const char kPermissionActionReportingDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191550 "Enables permission action reporting to Safe Browsing servers for opted in "
1551 "users.";
vabr0215a8e2017-03-28 12:47:341552
1553const char kPermissionsBlacklistName[] = "Permissions Blacklist";
1554
1555const char kPermissionsBlacklistDescription[] =
1556 "Enables the Permissions Blacklist, which blocks permissions for "
1557 "blacklisted sites for Safe Browsing users.";
1558
1559const char kThreadedScrollingName[] = "Threaded scrolling";
1560
1561const char kThreadedScrollingDescription[] =
1562 "Threaded handling of scroll-related input events. Disabling this will "
Vitalii Iarko7df520142017-07-07 12:53:191563 "force all such scroll events to be handled on the main thread. Note that "
1564 "this can dramatically hurt scrolling performance of most websites and is "
1565 "intended for testing purposes only.";
vabr0215a8e2017-03-28 12:47:341566
1567const char kHarfbuzzRendertextName[] = "HarfBuzz for UI text";
1568
1569const char kHarfbuzzRendertextDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191570 "Enable cross-platform HarfBuzz layout engine for UI text. Doesn't affect "
1571 "web content.";
vabr0215a8e2017-03-28 12:47:341572
vabr0215a8e2017-03-28 12:47:341573const char kTabAudioMutingName[] = "Tab audio muting UI control";
1574
1575const char kTabAudioMutingDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191576 "When enabled, the audio indicators in the tab strip double as tab audio "
1577 "mute controls. This also adds commands in the tab context menu for "
1578 "quickly muting multiple selected tabs.";
vabr0215a8e2017-03-28 12:47:341579
vabr0215a8e2017-03-28 12:47:341580const char kWifiCredentialSyncName[] = "WiFi credential sync";
1581
1582const char kWifiCredentialSyncDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191583 "Enables synchronizing WiFi network settings across devices. When enabled, "
1584 "the WiFi credential datatype is registered with Chrome Sync, and WiFi "
1585 "credentials are synchronized subject to user preferences. (See also, "
1586 "chrome://settings/syncSetup.)";
vabr0215a8e2017-03-28 12:47:341587
1588const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1589
1590const char kSyncSandboxDescription[] =
1591 "Connects to the testing server for Chrome Sync.";
1592
vabr0215a8e2017-03-28 12:47:341593const char kTrySupportedChannelLayoutsName[] =
1594 "Causes audio output streams to check if channel layouts other than the "
1595 "default hardware layout are available.";
1596
1597const char kTrySupportedChannelLayoutsDescription[] =
1598 "Causes audio output streams to check if channel layouts other than the "
Vitalii Iarko7df520142017-07-07 12:53:191599 "default hardware layout are available. Turning this on will allow the OS "
1600 "to do stereo to surround expansion if supported. May expose third party "
1601 "driver bugs, use with caution.";
vabr0215a8e2017-03-28 12:47:341602
1603#if defined(OS_MACOSX)
1604
1605const char kAppInfoDialogName[] = "Toolkit-Views App Info Dialog.";
1606
1607const char kAppInfoDialogDescription[] =
1608 "Makes the Toolkit-Views based App Info dialog accessible from "
1609 "chrome://apps or chrome://extensions in place of the native extension "
1610 "permissions dialog, or the details link (which is a link to the Web "
1611 "Store).";
1612
kerrnel7e4f7a7f2017-06-28 21:28:281613const char kMacV2SandboxName[] = "Mac V2 Sandbox";
1614
1615const char kMacV2SandboxDescription[] =
1616 "Eliminates the unsandboxed warmup phase and sandboxes processes for their "
1617 "entire life cycle.";
1618
vabr0215a8e2017-03-28 12:47:341619const char kMacViewsNativeAppWindowsName[] = "Toolkit-Views App Windows.";
1620
1621const char kMacViewsNativeAppWindowsDescription[] =
1622 "Controls whether to use Toolkit-Views based Chrome App windows.";
1623
1624const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
1625
1626const char kMacViewsTaskManagerDescription[] =
1627 "Controls whether to use the Toolkit-Views based Task Manager.";
1628
1629const char kAppWindowCyclingName[] = "Custom Window Cycling for Chrome Apps.";
1630
1631const char kAppWindowCyclingDescription[] =
1632 "Changes the behavior of Cmd+` when a Chrome App becomes active. When "
1633 "enabled, Chrome Apps will not be cycled when Cmd+` is pressed from a "
Vitalii Iarko7df520142017-07-07 12:53:191634 "browser window, and browser windows will not be cycled when a Chrome App "
1635 "is active.";
vabr0215a8e2017-03-28 12:47:341636
1637#endif // defined(OS_MACOSX)
1638
1639#if defined(OS_CHROMEOS)
1640
1641const char kAcceleratedMjpegDecodeName[] =
1642 "Hardware-accelerated mjpeg decode for captured frame";
1643
1644const char kAcceleratedMjpegDecodeDescription[] =
1645 "Enable hardware-accelerated mjpeg decode for captured frame where "
1646 "available.";
1647
1648#endif // defined(OS_CHROMEOS)
1649
1650const char kSimplifiedFullscreenUiName[] =
1651 "Simplified full screen / mouse lock UI.";
1652
1653const char kSimplifiedFullscreenUiDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191654 "A simplified new user experience when entering page-triggered full screen "
1655 "or mouse pointer lock states.";
vabr0215a8e2017-03-28 12:47:341656
vabr0215a8e2017-03-28 12:47:341657#if defined(OS_ANDROID)
1658
Rouslan Solomakhinbed1af22017-06-09 18:40:571659extern const char kPayWithGoogleV1Name[] = "Pay with Google v1";
1660
1661extern const char kPayWithGoogleV1Description[] =
1662 "Enable Pay with Google integration into Web Payments with API version "
1663 "'1'.";
1664
vabr0215a8e2017-03-28 12:47:341665const char kProgressBarAnimationName[] =
1666 "Android phone page loading progress bar animation";
1667
1668const char kProgressBarAnimationDescription[] =
1669 "Configures Android phone page loading progress bar animation.";
1670
1671const char kProgressBarAnimationLinear[] = "Linear";
1672
1673const char kProgressBarAnimationSmooth[] = "Smooth";
1674
1675const char kProgressBarAnimationSmoothIndeterminate[] = "Smooth indeterminate";
1676
1677const char kProgressBarAnimationFastStart[] = "Fast start";
1678
1679const char kProgressBarCompletionName[] =
1680 "Android phone page load progress bar completion time.";
1681
1682const char kProgressBarCompletionDescription[] =
1683 "Configures Android phone page loading progress bar completion time.";
1684
1685const char kProgressBarCompletionLoadEvent[] =
1686 R"*(Top loading frame's onload event ("everything" is done in the )*"
1687 R"*(page, historical behavior).)*";
1688
1689const char kProgressBarCompletionResourcesBeforeDcl[] =
1690 "Main frame's domContentLoaded and all resources loads started before "
1691 "domContentLoaded (iframes ignored).";
1692
1693const char kProgressBarCompletionDomContentLoaded[] =
1694 "Main frame's domContentLoaded (iframes ignored).";
1695
1696const char kProgressBarCompletionResourcesBeforeDclAndSameOriginIframes[] =
Vitalii Iarko7df520142017-07-07 12:53:191697 "domContentLoaded and all resources loads started before domContentLoaded "
1698 "(main frame and same origin iframes).";
vabr0215a8e2017-03-28 12:47:341699
1700#endif // defined(OS_ANDROID)
1701
vabr0215a8e2017-03-28 12:47:341702#if defined(OS_WIN)
1703
1704const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
1705
1706const char kEnableAppcontainerDescription[] =
1707 "Enables the use of an AppContainer on sandboxed processes to improve "
1708 "security.";
1709
1710#endif // defined(OS_WIN)
1711
thestig0c55ee32017-06-20 22:17:511712#if defined(TOOLKIT_VIEWS) || defined(OS_MACOSX)
elawrenced9978fc2017-05-02 02:45:191713
1714const char kShowCertLinkOnPageInfoName[] = "Show certificate link";
1715
1716const char kShowCertLinkOnPageInfoDescription[] =
1717 "Add a link from the Page Info bubble to the certificate viewer for HTTPS "
1718 "sites.";
1719
thestig0c55ee32017-06-20 22:17:511720#endif // defined(TOOLKIT_VIEWS) || defined(OS_MACOSX)
elawrenced9978fc2017-05-02 02:45:191721
vabr0215a8e2017-03-28 12:47:341722#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
1723
1724const char kAutofillCreditCardUploadName[] =
1725 "Enable offering upload of Autofilled credit cards";
1726
1727const char kAutofillCreditCardUploadDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191728 "Enables a new option to upload credit cards to Google Payments for sync "
1729 "to all Chrome devices.";
vabr0215a8e2017-03-28 12:47:341730
1731#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
1732
1733const char kForceUiDirectionName[] = "Force UI direction";
1734
1735const char kForceUiDirectionDescription[] =
1736 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
1737 "mode, overriding the default direction of the UI language.";
1738
krb6822b602017-05-02 14:53:211739const char kForceTextDirectionName[] = "Force text direction";
vabr0215a8e2017-03-28 12:47:341740
krb6822b602017-05-02 14:53:211741const char kForceTextDirectionDescription[] =
1742 "Explicitly force the per-character directionality of UI text to "
Vitalii Iarko7df520142017-07-07 12:53:191743 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the default "
1744 "direction of the character language.";
krb6822b602017-05-02 14:53:211745
1746const char kForceDirectionLtr[] = "Left-to-right";
1747
1748const char kForceDirectionRtl[] = "Right-to-left";
vabr0215a8e2017-03-28 12:47:341749
1750#if defined(OS_WIN) || defined(OS_LINUX)
1751
1752const char kEnableInputImeApiName[] = "Enable Input IME API";
1753
1754const char kEnableInputImeApiDescription[] =
1755 "Enable the use of chrome.input.ime API.";
1756
1757#endif // defined(OS_WIN) || defined(OS_LINUX)
1758
vabr0215a8e2017-03-28 12:47:341759const char kSaveasMenuLabelExperimentName[] =
1760 "Switch 'Save as' menu labels to 'Download'";
1761
1762const char kSaveasMenuLabelExperimentDescription[] =
1763 "Enables an experiment to switch menu labels that use 'Save as...' to "
1764 "'Download'.";
1765
vabr0215a8e2017-03-28 12:47:341766const char kNewUsbBackendName[] = "Enable new USB backend";
1767
1768const char kNewUsbBackendDescription[] =
1769 "Enables the new experimental USB backend for Windows.";
1770
1771const char kNewOmniboxAnswerTypesName[] =
1772 "New omnibox answers in suggest types";
1773
1774const char kNewOmniboxAnswerTypesDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191775 "Enables new types of answers in the omnibox suggest drop-down: currency "
1776 "conversions, dictionary definitions, sports scores, translations, and "
1777 "when is.";
vabr0215a8e2017-03-28 12:47:341778
vabr0215a8e2017-03-28 12:47:341779const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
1780
1781const char kFillOnAccountSelectDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191782 "Filling of passwords when an account is explicitly selected by the user "
1783 "rather than autofilling credentials on page load.";
vabr0215a8e2017-03-28 12:47:341784
vabr0215a8e2017-03-28 12:47:341785#if defined(OS_ANDROID)
1786
1787const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1788
1789const char kTabsInCbdDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191790 "Enables a basic and an advanced tab for the Clear Browsing Data dialog.";
vabr0215a8e2017-03-28 12:47:341791
1792#endif // defined(OS_ANDROID)
1793
brettw5f9c1642017-05-14 17:12:481794const char kNotificationsNativeFlagName[] = "Enable native notifications.";
vabr0215a8e2017-03-28 12:47:341795
1796const char kNotificationsNativeFlagDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191797 "Enable support for using the native notification toasts and notification "
1798 "center on platforms where these are available.";
vabr0215a8e2017-03-28 12:47:341799
1800#if defined(OS_ANDROID)
1801
1802const char kEnableAndroidSpellcheckerDescription[] =
1803 "Enables use of the Android spellchecker.";
1804
1805const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
1806
1807#endif // defined(OS_ANDROID)
1808
vabr0215a8e2017-03-28 12:47:341809const char kGoogleProfileInfoName[] = "Google profile name and icon";
1810
1811const char kGoogleProfileInfoDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191812 "Enables using Google information to populate the profile name and icon in "
1813 "the avatar menu.";
vabr0215a8e2017-03-28 12:47:341814
brettw5f9c1642017-05-14 17:12:481815const char kOfferStoreUnmaskedWalletCardsName[] =
vabr0215a8e2017-03-28 12:47:341816 "Google Payments card saving checkbox";
1817
1818const char kOfferStoreUnmaskedWalletCardsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191819 "Show the checkbox to offer local saving of a credit card downloaded from "
1820 "the server.";
vabr0215a8e2017-03-28 12:47:341821
1822const char kOfflineAutoReloadName[] = "Offline Auto-Reload Mode";
1823
1824const char kOfflineAutoReloadDescription[] =
1825 "Pages that fail to load while the browser is offline will be "
1826 "auto-reloaded when the browser is online again.";
1827
1828const char kOfflineAutoReloadVisibleOnlyName[] =
1829 "Only Auto-Reload Visible Tabs";
1830
1831const char kOfflineAutoReloadVisibleOnlyDescription[] =
1832 "Pages that fail to load while the browser is offline will only be "
1833 "auto-reloaded if their tab is visible.";
1834
1835const char kShowSavedCopyName[] = "Show Saved Copy Button";
1836
1837const char kShowSavedCopyDescription[] =
1838 "When a page fails to load, if a stale copy of the page exists in the "
Vitalii Iarko7df520142017-07-07 12:53:191839 "browser cache, a button will be presented to allow the user to load that "
1840 "stale copy. The primary enabling choice puts the button in the most "
1841 "salient position on the error page; the secondary enabling choice puts it "
1842 "secondary to the reload button.";
vabr0215a8e2017-03-28 12:47:341843
1844const char kEnableShowSavedCopyPrimary[] = "Enable: Primary";
1845
1846const char kEnableShowSavedCopySecondary[] = "Enable: Secondary";
1847
1848const char kDisableShowSavedCopy[] = "Disable";
1849
1850#if defined(OS_CHROMEOS)
1851
vabr0215a8e2017-03-28 12:47:341852const char kVirtualKeyboardName[] = "Virtual Keyboard";
1853
1854const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
1855
1856const char kVirtualKeyboardOverscrollName[] = "Virtual Keyboard Overscroll";
1857
1858const char kVirtualKeyboardOverscrollDescription[] =
1859 "Enables virtual keyboard overscroll support.";
1860
1861const char kInputViewName[] = "Input views";
1862
1863const char kInputViewDescription[] =
1864 "Enable IME extensions to supply custom views for user input such as "
1865 "virtual keyboards.";
1866
1867const char kNewKoreanImeName[] = "New Korean IME";
1868
1869const char kNewKoreanImeDescription[] =
1870 "New Korean IME, which is based on Google Input Tools' HMM engine.";
1871
1872const char kPhysicalKeyboardAutocorrectName[] = "Physical keyboard autocorrect";
1873
1874const char kPhysicalKeyboardAutocorrectDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191875 "Enable physical keyboard autocorrect for US keyboard, which can provide "
1876 "suggestions as typing on physical keyboard.";
vabr0215a8e2017-03-28 12:47:341877
1878const char kVoiceInputName[] = "Voice input on virtual keyboard";
1879
1880const char kVoiceInputDescription[] =
1881 "Enables voice input on virtual keyboard.";
1882
1883const char kExperimentalInputViewFeaturesName[] =
1884 "Experimental input view features";
1885
1886const char kExperimentalInputViewFeaturesDescription[] =
1887 "Enable experimental features for IME input views.";
1888
1889const char kFloatingVirtualKeyboardName[] = "Floating virtual keyboard.";
1890
1891const char kFloatingVirtualKeyboardDescription[] =
1892 "Enable/Disable floating virtual keyboard.";
1893
1894const char kGestureTypingName[] = "Gesture typing for the virtual keyboard.";
1895
1896const char kGestureTypingDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191897 "Enable/Disable gesture typing option in the settings page for the virtual "
1898 "keyboard.";
vabr0215a8e2017-03-28 12:47:341899
1900const char kGestureEditingName[] = "Gesture editing for the virtual keyboard.";
1901
1902const char kGestureEditingDescription[] =
1903 "Enable/Disable gesture editing option in the settings page for the "
1904 "virtual keyboard.";
1905
1906const char kCaptivePortalBypassProxyName[] =
1907 "Bypass proxy for Captive Portal Authorization";
1908
1909const char kCaptivePortalBypassProxyDescription[] =
1910 "If proxy is configured, it usually prevents from authorization on "
1911 "different captive portals. This enables opening captive portal "
Vitalii Iarko7df520142017-07-07 12:53:191912 "authorization dialog in a separate window, which ignores proxy settings.";
vabr0215a8e2017-03-28 12:47:341913
1914const char kTouchscreenCalibrationName[] =
Vitalii Iarko7df520142017-07-07 12:53:191915 "Enable/disable touchscreen calibration option in material design settings";
vabr0215a8e2017-03-28 12:47:341916
1917const char kTouchscreenCalibrationDescription[] =
1918 "If enabled, the user can calibrate the touch screen displays in "
1919 "chrome://md-settings/display.";
1920
yamaguchid99a64b2017-05-12 15:33:491921const char kTeamDrivesName[] = "Enable Team Drives Integration";
1922const char kTeamDrivesDescription[] =
1923 "If enabled, files under Team Drives will appear in the Files app.";
1924
vabr0215a8e2017-03-28 12:47:341925#endif // defined(OS_CHROMEOS)
1926
vabr0215a8e2017-03-28 12:47:341927// Strings for controlling credit card scanning feature in about:flags.
1928
1929// Simple Cache Backend experiment.
1930
1931const char kSimpleCacheBackendName[] = "Simple Cache for HTTP";
1932
1933const char kSimpleCacheBackendDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191934 "The Simple Cache for HTTP is a new cache. It relies on the filesystem for "
1935 "disk space allocation.";
vabr0215a8e2017-03-28 12:47:341936
1937// Spelling feedback field trial.
1938
1939const char kSpellingFeedbackFieldTrialName[] = "Spelling Feedback Field Trial";
1940
1941const char kSpellingFeedbackFieldTrialDescription[] =
1942 "Enable the field trial for sending user feedback to spelling service.";
1943
1944// Web MIDI API.
1945
1946const char kWebMidiName[] = "Web MIDI API";
1947
1948const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
1949
1950// Site per process mode
1951
creisc3af64f2017-04-12 17:22:381952const char kSitePerProcessName[] = "Strict site isolation";
vabr0215a8e2017-03-28 12:47:341953
1954const char kSitePerProcessDescription[] =
creisc3af64f2017-04-12 17:22:381955 "Highly experimental security mode that ensures each renderer process "
1956 "contains pages from at most one site. In this mode, out-of-process "
1957 "iframes will be used whenever an iframe is cross-site.";
vabr0215a8e2017-03-28 12:47:341958
1959// Top document isolation mode
1960
1961const char kTopDocumentIsolationName[] = "Top document isolation";
1962
1963const char kTopDocumentIsolationDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:191964 "Highly experimental performance mode where cross-site iframes are kept in "
1965 "a separate process from the top document. In this mode, iframes from "
1966 "different third-party sites will be allowed to share a process.";
vabr0215a8e2017-03-28 12:47:341967
vabr0215a8e2017-03-28 12:47:341968// Arc authorization
1969
1970#if defined(OS_CHROMEOS)
1971
1972const char kArcUseAuthEndpointName[] = "Android apps authorization point";
1973
1974const char kArcUseAuthEndpointDescription[] =
1975 "Enable Android apps authorization point to automatic sign-in in OptIn "
1976 "flow.";
1977
1978#endif // defined(OS_CHROMEOS)
1979
1980// Autofill experiment flags
1981
1982const char kSingleClickAutofillName[] = "Single-click autofill";
1983
1984const char kSingleClickAutofillDescription[] =
1985 "Make autofill suggestions on initial mouse click on a form element.";
1986
1987#if defined(OS_ANDROID)
1988
1989const char kAutofillAccessoryViewName[] =
1990 "Autofill suggestions as keyboard accessory view";
1991
1992const char kAutofillAccessoryViewDescription[] =
1993 "Shows Autofill suggestions on top of the keyboard rather than in a "
1994 "dropdown.";
1995
1996#endif // defined(OS_ANDROID)
1997
1998// Reader mode experiment flags
1999
2000#if defined(OS_ANDROID)
2001
2002const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
2003
2004const char kReaderModeHeuristicsDescription[] =
wychen4b6112cc2017-07-07 18:15:112005 "Determines what pages the Reader Mode infobar is shown on.";
vabr0215a8e2017-03-28 12:47:342006
2007const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
2008
wychen4b6112cc2017-07-07 18:15:112009const char kReaderModeHeuristicsAdaboost[] = "Non-mobile-friendly articles";
2010
2011const char kReaderModeHeuristicsAllArticles[] = "All articles";
vabr0215a8e2017-03-28 12:47:342012
2013const char kReaderModeHeuristicsAlwaysOff[] = "Never";
2014
2015const char kReaderModeHeuristicsAlwaysOn[] = "Always";
2016
2017#endif // defined(OS_ANDROID)
2018
2019// Chrome home flags
2020
2021#if defined(OS_ANDROID)
2022
2023const char kChromeHomeName[] = "Chrome Home";
2024
Theresa Wellington7705cbe2017-07-12 02:33:232025const char kChromeHomeDescription[] =
2026 "Enables Chrome Home on Android. You must restart the browser"
2027 " twice for changes to take effect.";
vabr0215a8e2017-03-28 12:47:342028
mdjonesd484eac2017-05-02 21:34:452029const char kChromeHomeExpandButtonName[] = "Chrome Home Expand Button";
2030
2031const char kChromeHomeExpandButtonDescription[] =
2032 "Enables the expand button for Chrome Home.";
2033
Matthew Jonesd349741f2017-05-26 21:07:522034const char kChromeHomeSwipeLogicName[] = "Chrome Home Swipe Logic";
2035
2036const char kChromeHomeSwipeLogicDescription[] =
2037 "Various swipe logic options for Chrome Home for sheet expansion.";
2038
2039const char kChromeHomeSwipeLogicRestrictArea[] = "Restrict swipable area";
2040
Matthew Jonesfc0d7de2017-06-12 21:54:002041const char kChromeHomeSwipeLogicButtonOnly[] = "Swipe on expand button";
2042
vabr0215a8e2017-03-28 12:47:342043#endif // defined(OS_ANDROID)
2044
2045// Settings window flags
2046
2047const char kSettingsWindowName[] = "Show settings in a window";
2048
2049const char kSettingsWindowDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192050 "Settings will be shown in a dedicated window instead of as a browser tab.";
vabr0215a8e2017-03-28 12:47:342051
vabr0215a8e2017-03-28 12:47:342052// Message center strings
2053
2054const char kMessageCenterAlwaysScrollUpUponRemovalName[] =
2055 "Experiments that message center always scroll up upon notification "
2056 "removal";
2057
2058const char kMessageCenterAlwaysScrollUpUponRemovalDescription[] =
2059 "Enables experiment that message center always scroll up when a "
2060 "notification is removed.";
2061
yoshikif14ac822017-05-31 04:26:142062const char kMessageCenterNewStyleNotificationName[] = "New style notification";
2063
2064const char kMessageCenterNewStyleNotificationDescription[] =
2065 "Enables the experiment style of material-design notification";
2066
vabr0215a8e2017-03-28 12:47:342067#if defined(OS_WIN) || defined(OS_MACOSX)
2068
2069// Tab discarding
2070
2071const char kAutomaticTabDiscardingName[] = "Automatic tab discarding";
2072
2073const char kAutomaticTabDiscardingDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192074 "If enabled, tabs get automatically discarded from memory when the system "
2075 "memory is low. Discarded tabs are still visible on the tab strip and get "
2076 "reloaded when clicked on. Info about discarded tabs can be found at "
2077 "chrome://discards.";
vabr0215a8e2017-03-28 12:47:342078
2079#endif // defined(OS_WIN) || defined(OS_MACOSX)
2080
2081#if defined(OS_ANDROID)
2082
2083const char kOfflineBookmarksName[] = "Enable offline bookmarks";
2084
2085const char kOfflineBookmarksDescription[] =
2086 "Enable saving bookmarked pages for offline viewing.";
2087
2088const char kNtpOfflinePagesName[] = "Enable NTP offline pages";
2089
2090const char kNtpOfflinePagesDescription[] =
2091 "Enables badging of offline pages on the New Tab page. Only relevant if "
2092 "offline pages are enabled.";
2093
2094const char kOfflinePagesAsyncDownloadName[] =
jianli762bb48d2017-06-13 21:40:582095 R"*(Enables showing "DOWNLOAD WHEN ONLINE" button in error pages.)*";
vabr0215a8e2017-03-28 12:47:342096
2097const char kOfflinePagesAsyncDownloadDescription[] =
jianli762bb48d2017-06-13 21:40:582098 R"*(Enables showing "DOWNLOAD WHEN ONLINE" button in error pages such )*"
vabr0215a8e2017-03-28 12:47:342099 R"*(that the user can click on it to download the page later.)*";
2100
2101const char kOfflinePagesSvelteConcurrentLoadingName[] =
2102 "Enables concurrent background loading on svelte.";
2103
2104const char kOfflinePagesSvelteConcurrentLoadingDescription[] =
2105 "Enables concurrent background loading (or downloading) of pages on "
2106 "Android svelte (512MB RAM) devices. Otherwise, background loading will "
2107 "happen when the svelte device is idle.";
2108
petewil2abcf042017-04-10 21:45:002109const char kOfflinePagesLoadSignalCollectingName[] =
2110 "Enables collecting load timing data for offline page snapshots.";
2111
2112const char kOfflinePagesLoadSignalCollectingDescription[] =
2113 "Enables loading completeness data collection while writing an offline "
2114 "page. This data is collected in the snapshotted offline page to allow "
2115 "data analysis to improve deciding when to make the offline snapshot.";
2116
vabr0215a8e2017-03-28 12:47:342117const char kOfflinePagesPrefetchingName[] =
2118 "Enables suggested offline pages to be prefetched.";
2119
2120const char kOfflinePagesPrefetchingDescription[] =
2121 "Enables suggested offline pages to be prefetched, so useful content is "
2122 "available while offline.";
2123
2124const char kOfflinePagesSharingName[] = "Enables offline pages to be shared.";
2125
2126const char kOfflinePagesSharingDescription[] =
2127 "Enables the saved offline pages to be shared via other applications.";
2128
2129const char kBackgroundLoaderForDownloadsName[] =
2130 "Enables background downloading of pages.";
2131
2132const char kBackgroundLoaderForDownloadsDescription[] =
2133 "Enables downloading pages in the background in case page is not yet "
2134 "loaded in current tab.";
2135
2136const char kNewBackgroundLoaderName[] =
2137 "Use background loader instead of prerenderer to load pages.";
2138
2139const char kNewBackgroundLoaderDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192140 "Use background loader instead of prerenderer to asynchronously download "
2141 "pages.";
vabr0215a8e2017-03-28 12:47:342142
2143const char kNtpPopularSitesName[] = "Show popular sites on the New Tab page";
2144
2145const char kNtpPopularSitesDescription[] =
2146 "Pre-populate the New Tab page with popular sites.";
2147
2148const char kNtpSwitchToExistingTabName[] =
2149 "Switch to an existing tab for New Tab Page suggestions.";
2150
2151const char kNtpSwitchToExistingTabDescription[] =
2152 "When opening a suggested webpage from the New Tab Page, if a tab is "
2153 "already open for the suggestion, switch to that one instead of loading "
2154 "the suggestion in the new tab.";
2155
2156const char kNtpSwitchToExistingTabMatchUrl[] = "Match by URL";
2157
2158const char kNtpSwitchToExistingTabMatchHost[] = "Match by Hostname";
2159
2160const char kUseAndroidMidiApiName[] = "Use Android Midi API";
2161
2162const char kUseAndroidMidiApiDescription[] =
2163 "Use Android Midi API for WebMIDI (effective only with Android M+ "
2164 "devices).";
2165
2166const char kWebPaymentsModifiersName[] = "Enable web payment modifiers";
2167
2168const char kWebPaymentsModifiersDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192169 "If the website provides modifiers in the payment request, show the custom "
2170 "total for each payment instrument, update the shopping cart when "
2171 "instruments are switched, and send modified payment method specific data "
2172 "to the payment app.";
vabr0215a8e2017-03-28 12:47:342173
lbargu8bb0fabc2017-05-19 14:53:112174const char kXGEOVisibleNetworksName[] = "Enable XGEO Visible Networks";
2175
2176const char kXGEOVisibleNetworksDescription[] =
2177 "If location permissions are granted, include visible networks in the XGEO "
2178 "Header for omnibox queries. This will only happen if location is not "
2179 "fresh or not available (for example, due to a cold start).";
2180
vabr0215a8e2017-03-28 12:47:342181#endif // defined(OS_ANDROID)
2182
2183#if defined(OS_WIN)
2184
2185// Exporting tracing events to ETW
2186
2187const char kTraceExportEventsToEtwName[] =
2188 "Enable exporting of tracing events to ETW.";
2189
2190const char kTraceExportEventsToEtwDesription[] =
2191 "If enabled, trace events will be exported to the Event Tracing for "
2192 "Windows (ETW) and can then be captured by tools such as UIForETW or "
2193 "Xperf.";
2194
2195const char kMergeKeyCharEventsName[] =
Vitalii Iarko7df520142017-07-07 12:53:192196 "Enable or disable merging merging the key event (WM_KEY*) with char event "
2197 "(WM_CHAR).";
vabr0215a8e2017-03-28 12:47:342198
2199const char kMergeKeyCharEventsDescription[] =
etienneb9a4b5302017-06-08 06:28:462200 "If disabled, Chrome will handle WM_KEY* and WM_CHAR separately.";
vabr0215a8e2017-03-28 12:47:342201
2202const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2203
2204const char kUseWinrtMidiApiDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192205 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 or "
2206 "later).";
vabr0215a8e2017-03-28 12:47:342207
2208#endif // defined(OS_WIN)
2209
2210#if defined(OS_ANDROID)
2211
2212// Data Use
2213
2214// Update Menu Item Flags
2215
2216const char kUpdateMenuItemName[] = "Force show update menu item";
2217
2218const char kUpdateMenuItemDescription[] =
2219 R"*(When enabled, an "Update Chrome" item will be shown in the app )*"
2220 R"*(menu.)*";
2221
twellingtonce0b29ba2017-04-19 21:01:172222const char kUpdateMenuItemCustomSummaryDescription[] =
vabr0215a8e2017-03-28 12:47:342223 "When this flag and the force show update menu item flag are enabled, a "
twellingtonce0b29ba2017-04-19 21:01:172224 "custom summary string will be displayed below the update menu item.";
vabr0215a8e2017-03-28 12:47:342225
twellingtonce0b29ba2017-04-19 21:01:172226const char kUpdateMenuItemCustomSummaryName[] =
2227 "Update menu item custom summary";
vabr0215a8e2017-03-28 12:47:342228
2229const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2230
2231const char kUpdateMenuBadgeDescription[] =
2232 "When enabled, an update badge will be shown on the app menu button.";
2233
2234const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2235
2236const char kSetMarketUrlForTestingDescription[] =
2237 "When enabled, sets the market URL for use in testing the update menu "
2238 "item.";
2239
2240#endif // defined(OS_ANDROID)
2241
2242#if defined(OS_ANDROID)
2243
2244const char kHerbPrototypeChoicesName[] = "Switch preferred flavor of Herb";
2245
2246const char kHerbPrototypeChoicesDescription[] =
2247 "Switching this option changes which tab management prototype is being "
2248 "tested.";
2249
2250const char kHerbPrototypeFlavorElderberry[] =
2251 "ELDERBERRY: All View Intents in CCT v2";
2252
2253const char kEnableSpecialLocaleName[] =
2254 "Enable custom logic for special locales.";
2255
2256const char kEnableSpecialLocaleDescription[] =
2257 "Enable custom logic for special locales. In this mode, Chrome might "
2258 "behave differently in some locales.";
2259
2260// WebApks
2261
2262const char kEnableWebapk[] = "Enable improved add to Home screen";
2263
2264const char kEnableWebapkDescription[] =
2265 R"*(Packages "Progressive Web Apps" so that they can integrate more )*"
2266 R"*(deeply with Android. A Chrome server is used to package sites. In )*"
2267 R"*(Chrome Canary and Chrome Dev, this requires “Untrusted )*"
2268 R"*(sources” to be enabled in Android security settings.)*";
2269
2270#endif // defined(OS_ANDROID)
2271
vabr0215a8e2017-03-28 12:47:342272#if defined(OS_CHROMEOS)
2273
skaua9afc0212017-04-07 19:18:472274const char kDisableNativeCupsName[] = "Native CUPS";
vabr0215a8e2017-03-28 12:47:342275
skaua9afc0212017-04-07 19:18:472276const char kDisableNativeCupsDescription[] =
2277 "Disable the use of the native CUPS printing backend.";
vabr0215a8e2017-03-28 12:47:342278
2279const char kEnableAndroidWallpapersAppName[] = "Android Wallpapers App";
2280
2281const char kEnableAndroidWallpapersAppDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192282 "Enables the Android Wallpapers App as the default Wallpaper App on Chrome "
2283 "OS.";
vabr0215a8e2017-03-28 12:47:342284
2285const char kEnableTouchSupportForScreenMagnifierName[] =
2286 "Touch support for screen magnifier";
2287
2288const char kEnableTouchSupportForScreenMagnifierDescription[] =
2289 "Enables touch support for screen magnifier";
2290
Rouslan Solomakhinbed1af22017-06-09 18:40:572291const char kEnableZipArchiverOnFileManagerName[] = "ZIP archiver for Drive";
takise183b8cb42017-04-07 05:12:082292
2293const char kEnableZipArchiverOnFileManagerDescription[] =
2294 "Enable the ability to archive and unpack files on Drive in the Files app";
2295
xiaochu32e9672a2017-05-04 04:15:082296const char kCrOSComponentName[] = "Chrome OS Component";
2297
2298const char kCrOSComponentDescription[] =
xiaochu169aadd2017-06-15 22:32:512299 "Enable the use of componentized escpr CUPS filter.";
xiaochu32e9672a2017-05-04 04:15:082300
vabr0215a8e2017-03-28 12:47:342301#endif // defined(OS_CHROMEOS)
2302
2303#if defined(OS_ANDROID)
2304
Vitalii Iarko112f9182017-06-20 11:59:552305const char kKeepPrefetchedContentSuggestionsName[] =
2306 "Keep prefetched content suggestions";
2307
2308const char kKeepPrefetchedContentSuggestionsDescription[] =
2309 "If enabled, some of prefetched content suggestions are not replaced by "
2310 "the new fetched suggestions.";
2311
vabr0215a8e2017-03-28 12:47:342312const char kContentSuggestionsCategoryOrderName[] =
2313 "Default content suggestions category order (e.g. on NTP)";
2314
2315const char kContentSuggestionsCategoryOrderDescription[] =
2316 "Set default order of content suggestion categories (e.g. on the NTP).";
2317
2318const char kContentSuggestionsCategoryRankerName[] =
2319 "Content suggestions category ranker (e.g. on NTP)";
2320
2321const char kContentSuggestionsCategoryRankerDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192322 "Set category ranker to order categories of content suggestions (e.g. on "
2323 "the NTP).";
vabr0215a8e2017-03-28 12:47:342324
2325const char kEnableNtpSnippetsVisibilityName[] =
2326 "Make New Tab Page Snippets more visible.";
2327
2328const char kEnableNtpSnippetsVisibilityDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192329 "If enabled, the NTP snippets will become more discoverable with a larger "
2330 "portion of the first card above the fold.";
vabr0215a8e2017-03-28 12:47:342331
jkrcal18514e662017-03-30 06:12:282332const char kEnableContentSuggestionsNewFaviconServerName[] =
2333 "Get favicons for content suggestions from a new server.";
2334
2335const char kEnableContentSuggestionsNewFaviconServerDescription[] =
2336 "If enabled, the content suggestions (on the NTP) will get favicons from a "
2337 "new favicon server.";
2338
mastizbac78ad2017-05-22 10:14:002339const char kEnableFaviconsFromWebManifestName[] =
2340 "Load favicons from Web Manifests";
2341
2342const char kEnableFaviconsFromWebManifestDescription[] =
2343 "Fetch Web Manifests on page load to read favicons from them.";
2344
jkrcal7d79de52017-05-05 18:13:102345const char kEnableNtpMostLikelyFaviconsFromServerName[] =
2346 "Download favicons for NTP tiles from Google.";
2347
2348const char kEnableNtpMostLikelyFaviconsFromServerDescription[] =
2349 "If enabled, missing favicons for NTP tiles get downloaded from Google. "
2350 "This only applies to tiles that originate from synced history.";
2351
mvanouwerkerk89d9edca2017-06-19 14:15:172352const char kEnableContentSuggestionsLargeThumbnailName[] =
2353 "Large thumbnails layout for content suggestions cards.";
2354
2355const char kEnableContentSuggestionsLargeThumbnailDescription[] =
2356 "If enabled, the content suggestions cards will use large thumbnails and "
2357 "some related adjustments.";
2358
mvanouwerkerk78328002017-07-04 11:59:312359const char kEnableContentSuggestionsVideoOverlayName[] =
2360 "Video icon overlay on thumbnails for content suggestions cards.";
2361
2362const char kEnableContentSuggestionsVideoOverlayDescription[] =
2363 "If enabled, the content suggestions cards for suggestions with a video "
2364 "will show a video play icon overlay on the thumbnail.";
2365
dgn2b5a43382017-04-06 16:56:562366const char kEnableContentSuggestionsSettingsName[] =
2367 "Show content suggestions settings.";
2368
2369const char kEnableContentSuggestionsSettingsDescription[] =
2370 "If enabled, the content suggestions settings will be available from the "
2371 "main settings menu.";
2372
mvanouwerkerk6771b152017-05-10 14:40:342373const char kEnableContentSuggestionsShowSummaryName[] =
2374 "Show content suggestions summaries.";
2375
2376const char kEnableContentSuggestionsShowSummaryDescription[] =
2377 "If enabled, the content suggestions summaries will be shown.";
2378
vabr0215a8e2017-03-28 12:47:342379const char kEnableNtpRemoteSuggestionsName[] =
2380 "Show server-side suggestions on the New Tab page";
2381
2382const char kEnableNtpRemoteSuggestionsDescription[] =
Vitalii Iarkod0f43e952017-07-07 12:14:562383 "If enabled, the list of content suggestions on the New Tab page will "
2384 "contain server-side suggestions (e.g., Articles for you). Furthermore, it "
2385 "allows to override the source used to retrieve these server-side "
2386 "suggestions.";
vabr0215a8e2017-03-28 12:47:342387
vabr0215a8e2017-03-28 12:47:342388const char kEnableNtpAssetDownloadSuggestionsName[] =
2389 "Show asset downloads on the New Tab page";
2390
2391const char kEnableNtpAssetDownloadSuggestionsDescription[] =
Vitalii Iarkod0f43e952017-07-07 12:14:562392 "If enabled, the list of content suggestions on the New Tab page will "
2393 "contain assets (e.g. books, pictures, audio) that the user downloaded for "
2394 "later use.";
vabr0215a8e2017-03-28 12:47:342395
2396const char kEnableNtpOfflinePageDownloadSuggestionsName[] =
2397 "Show offline page downloads on the New Tab page";
2398
2399const char kEnableNtpOfflinePageDownloadSuggestionsDescription[] =
Vitalii Iarkod0f43e952017-07-07 12:14:562400 "If enabled, the list of content suggestions on the New Tab page will "
2401 "contain pages that the user downloaded for later use.";
vabr0215a8e2017-03-28 12:47:342402
2403const char kEnableNtpBookmarkSuggestionsName[] =
2404 "Show recently visited bookmarks on the New Tab page";
2405
2406const char kEnableNtpBookmarkSuggestionsDescription[] =
Vitalii Iarkod0f43e952017-07-07 12:14:562407 "If enabled, the list of content suggestions on the New Tab page will "
2408 "contain recently visited bookmarks.";
vabr0215a8e2017-03-28 12:47:342409
vabr0215a8e2017-03-28 12:47:342410const char kEnableNtpForeignSessionsSuggestionsName[] =
2411 "Show recent foreign tabs on the New Tab page";
2412
2413const char kEnableNtpForeignSessionsSuggestionsDescription[] =
Vitalii Iarkod0f43e952017-07-07 12:14:562414 "If enabled, the list of content suggestions on the New Tab page will "
2415 "contain recent foreign tabs.";
vabr0215a8e2017-03-28 12:47:342416
2417const char kEnableNtpSuggestionsNotificationsName[] =
2418 "Notify about new content suggestions available at the New Tab page";
2419
2420const char kEnableNtpSuggestionsNotificationsDescription[] =
2421 "If enabled, notifications will inform about new content suggestions on "
Vitalii Iarkod0f43e952017-07-07 12:14:562422 "the New Tab page.";
vabr0215a8e2017-03-28 12:47:342423
2424const char kNtpCondensedLayoutName[] = "Condensed NTP layout";
2425
2426const char kNtpCondensedLayoutDescription[] =
2427 "Show a condensed layout on the New Tab Page.";
2428
2429const char kNtpCondensedTileLayoutName[] = "Condensed NTP tile layout";
2430
2431const char kNtpCondensedTileLayoutDescription[] =
2432 "Show a condensed tile layout on the New Tab Page.";
2433
2434const char kNtpGoogleGInOmniboxName[] = "Google G in New Tab Page omnibox";
2435
2436const char kNtpGoogleGInOmniboxDescription[] =
2437 "Show a Google G in the omnibox on the New Tab Page.";
2438
2439#endif // defined(OS_ANDROID)
2440
2441#if defined(OS_ANDROID)
2442
2443const char kOffliningRecentPagesName[] =
2444 "Enable offlining of recently visited pages";
2445
2446const char kOffliningRecentPagesDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192447 "Enable storing recently visited pages locally for offline use. Requires "
2448 "Offline Pages to be enabled.";
vabr0215a8e2017-03-28 12:47:342449
2450const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
2451
2452const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
2453
Cathy Li2ea68bf2017-07-06 03:27:082454const char kOfflinePagesCtV2Name[] = "Enable Offline Pages CT V2 features.";
2455
2456const char kOfflinePagesCtV2Description[] =
2457 "V2 features include attributing pages to the app that initiated the "
2458 "custom tabs, and being able to query for pages by page attribution.";
2459
vabr0215a8e2017-03-28 12:47:342460#endif // defined(OS_ANDROID)
2461
2462#if defined(OS_ANDROID)
2463
brettw5f9c1642017-05-14 17:12:482464const char kEnableExpandedAutofillCreditCardPopupLayoutName[] =
vabr0215a8e2017-03-28 12:47:342465 "Use expanded autofill credit card popup layout.";
2466
2467const char kEnableExpandedAutofillCreditCardPopupLayoutDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192468 "If enabled, displays autofill credit card popup using expanded layout.";
vabr0215a8e2017-03-28 12:47:342469
2470#endif // defined(OS_ANDROID)
2471
vabr0215a8e2017-03-28 12:47:342472#if !defined(OS_ANDROID) && defined(GOOGLE_CHROME_BUILD)
2473
2474const char kGoogleBrandedContextMenuName[] =
2475 "Google branding in the context menu";
2476
2477const char kGoogleBrandedContextMenuDescription[] =
2478 "Shows a Google icon next to context menu items powered by Google "
2479 "services.";
2480
2481#endif // !defined(OS_ANDROID) && defined(GOOGLE_CHROME_BUILD)
2482
vabr0215a8e2017-03-28 12:47:342483const char kFontCacheScalingName[] = "FontCache scaling";
2484
2485const char kFontCacheScalingDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192486 "Reuse a cached font in the renderer to serve different sizes of font for "
2487 "faster layout.";
vabr0215a8e2017-03-28 12:47:342488
2489const char kFramebustingName[] =
2490 "Framebusting requires same-origin or a user gesture";
2491
2492const char kFramebustingDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192493 "Don't permit an iframe to navigate the top level browsing context unless "
2494 "they are same-origin or the iframe is processing a user gesture.";
vabr0215a8e2017-03-28 12:47:342495
binluc5b59112017-04-19 15:38:462496const char kVibrateRequiresUserGestureName[] =
2497 "Requiring user gesture for the Vibration API";
2498
2499const char kVibrateRequiresUserGestureDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192500 "Block the Vibration API if no user gesture has been received on the frame "
2501 "or any embedded frame.";
binluc5b59112017-04-19 15:38:462502
vabr0215a8e2017-03-28 12:47:342503#if defined(OS_ANDROID)
mthiesse700b0b62017-05-19 01:37:312504#if BUILDFLAG(ENABLE_VR)
vabr0215a8e2017-03-28 12:47:342505const char kEnableVrShellName[] = "Enable Chrome VR.";
2506
2507const char kEnableVrShellDescription[] =
2508 "Allow browsing with a VR headset if available for this device.";
2509
mthiesse700b0b62017-05-19 01:37:312510const char kVrCustomTabBrowsingName[] = "Enable Custom Tab browsing in VR.";
2511
2512const char kVrCustomTabBrowsingDescription[] =
2513 "Allow browsing with a VR headset in a Custom Tab if available for this "
2514 "device.";
ymalike78a83b2017-05-19 20:42:312515
2516const char kWebVrAutopresentName[] = "Enable WebVr auto presentation";
2517
2518const char kWebVrAutopresentDescription[] =
2519 "Allows auto presentation of WebVr content from trusted first-party apps";
mthiesse700b0b62017-05-19 01:37:312520#endif // BUILDFLAG(ENABLE_VR)
vabr0215a8e2017-03-28 12:47:342521#endif // defined(OS_ANDROID)
2522
2523// Web payments
2524
2525const char kWebPaymentsName[] = "Web Payments";
2526
2527const char kWebPaymentsDescription[] =
2528 "Enable Web Payments API integration, a JavaScript API for merchants.";
2529
2530#if defined(OS_ANDROID)
2531
2532const char kEnableAndroidPayIntegrationV1Name[] = "Enable Android Pay v1";
2533
2534const char kEnableAndroidPayIntegrationV1Description[] =
Vitalii Iarko7df520142017-07-07 12:53:192535 "Enable integration with Android Pay using the first version of the API";
vabr0215a8e2017-03-28 12:47:342536
2537const char kEnableAndroidPayIntegrationV2Name[] = "Enable Android Pay v2";
2538
2539const char kEnableAndroidPayIntegrationV2Description[] =
Vitalii Iarko7df520142017-07-07 12:53:192540 "Enable integration with Android Pay using the second version of the API";
vabr0215a8e2017-03-28 12:47:342541
2542const char kEnableWebPaymentsSingleAppUiSkipName[] =
2543 "Enable Web Payments single app UI skip";
2544
2545const char kEnableWebPaymentsSingleAppUiSkipDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192546 "Enable Web Payments to skip showing its UI if the developer specifies a "
2547 "single app.";
vabr0215a8e2017-03-28 12:47:342548
2549const char kAndroidPaymentAppsName[] = "Android payment apps";
2550
2551const char kAndroidPaymentAppsDescription[] =
2552 "Enable third party Android apps to integrate as payment apps";
2553
mathpb36946b2017-05-09 14:27:162554const char kServiceWorkerPaymentAppsName[] = "Service Worker payment apps";
2555
2556const char kServiceWorkerPaymentAppsDescription[] =
2557 "Enable Service Worker applications to integrate as payment apps";
2558
vabr0215a8e2017-03-28 12:47:342559#endif // defined(OS_ANDROID)
2560
2561const char kFeaturePolicyName[] = "Feature Policy";
2562
2563const char kFeaturePolicyDescription[] =
2564 "Enables granting and removing access to features through the "
2565 "Feature-Policy HTTP header.";
2566
2567// Audio rendering mixing experiment strings.
2568
2569const char kNewAudioRenderingMixingStrategyName[] =
2570 "New audio rendering mixing strategy";
2571
2572const char kNewAudioRenderingMixingStrategyDescription[] =
2573 "Use the new audio rendering mixing strategy.";
2574
avayvod232757942017-04-29 04:12:342575// New remote playback pipeline experiment strings.
2576
2577const char kNewRemotePlaybackPipelineName[] =
2578 "Enable the new remote playback pipeline.";
2579
2580const char kNewRemotePlaybackPipelineDescription[] =
2581 "Enable the new pipeline for playing media element remotely via "
2582 "RemotePlayback API or native controls.";
2583
vabr0215a8e2017-03-28 12:47:342584// Video fullscreen with orientation lock experiment strings.
2585
2586const char kVideoFullscreenOrientationLockName[] =
2587 "Lock screen orientation when playing a video fullscreen.";
2588
2589const char kVideoFullscreenOrientationLockDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192590 "Lock the screen orientation of the device to match video orientation when "
2591 "a video goes fullscreen. Only on phones.";
vabr0215a8e2017-03-28 12:47:342592
johnme913ee5f2017-04-28 21:36:162593// Video rotate-to-fullscreen experiment strings.
2594
2595const char kVideoRotateToFullscreenName[] =
2596 "Rotate-to-fullscreen gesture for videos.";
2597
2598const char kVideoRotateToFullscreenDescription[] =
2599 "Enter/exit fullscreen when device is rotated to/from the orientation of "
2600 "the video. Only on phones.";
2601
vabr0215a8e2017-03-28 12:47:342602// Enable default MediaSession flag
2603
2604#if !defined(OS_ANDROID)
2605
mlamouriff56c092017-05-11 15:31:392606const char kEnableAudioFocusName[] = "Manage audio focus across tabs";
vabr0215a8e2017-03-28 12:47:342607
mlamouriff56c092017-05-11 15:31:392608const char kEnableAudioFocusDescription[] =
vabr0215a8e2017-03-28 12:47:342609 "Manage audio focus across tabs to improve the audio mixing.";
2610
mlamouriff56c092017-05-11 15:31:392611const char kEnableAudioFocusDisabled[] = "Disabled";
vabr0215a8e2017-03-28 12:47:342612
mlamouriff56c092017-05-11 15:31:392613const char kEnableAudioFocusEnabled[] = "Enabled";
vabr0215a8e2017-03-28 12:47:342614
mlamouriff56c092017-05-11 15:31:392615const char kEnableAudioFocusEnabledDuckFlash[] =
vabr0215a8e2017-03-28 12:47:342616 "Enabled (Flash lowers volume when interrupted by other sound, "
2617 "experimental)";
2618
2619#endif // !defined(OS_ANDROID)
2620
2621#if defined(OS_WIN)
2622
2623const char kGdiTextPrinting[] = "GDI Text Printing";
2624
2625const char kGdiTextPrintingDescription[] =
2626 "Use GDI to print text as simply text";
2627
2628#endif // defined(OS_WIN)
2629
2630#if defined(OS_ANDROID)
2631
2632const char kModalPermissionPromptsName[] = "Modal Permission Prompts";
2633
2634const char kModalPermissionPromptsDescription[] =
2635 "Whether to use permission dialogs in place of permission infobars.";
2636
2637#endif // defined(OS_ANDROID)
2638
2639#if !defined(OS_MACOSX)
2640
2641const char kPermissionPromptPersistenceToggleName[] =
2642 "Persistence Toggle in Permission Prompts";
2643
2644const char kPermissionPromptPersistenceToggleDescription[] =
2645 "Whether to display a persistence toggle in permission prompts.";
2646
2647#endif // !defined(OS_MACOSX)
2648
2649#if defined(OS_ANDROID)
2650
2651const char kNoCreditCardAbort[] = "No Credit Card Abort";
2652
2653const char kNoCreditCardAbortDescription[] =
2654 "Whether or not the No Credit Card Abort is enabled.";
2655
2656#endif // defined(OS_ANDROID)
2657
2658// Consistent omnibox geolocation
2659
2660#if defined(OS_ANDROID)
2661
2662const char kEnableConsistentOmniboxGeolocationName[] =
2663 "Have consistent omnibox geolocation access.";
2664
2665const char kEnableConsistentOmniboxGeolocationDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192666 "Have consistent geolocation access between the omnibox and default search "
2667 "engine.";
vabr0215a8e2017-03-28 12:47:342668
2669#endif // defined(OS_ANDROID)
2670
2671// Media Remoting chrome://flags strings
2672
2673const char kMediaRemotingName[] = "Media Remoting during Cast Tab Mirroring";
2674
2675const char kMediaRemotingDescription[] =
2676 "When Casting a tab to a remote device, enabling this turns on an "
Vitalii Iarko7df520142017-07-07 12:53:192677 "optimization that forwards the content bitstream directly to the remote "
2678 "device when a video is fullscreened.";
vabr0215a8e2017-03-28 12:47:342679
vabr0215a8e2017-03-28 12:47:342680// Play Services LSD permission prompt chrome://flags strings
2681
2682#if defined(OS_ANDROID)
2683
2684const char kLsdPermissionPromptName[] =
2685 "Location Settings Dialog Permission Prompt";
2686
2687const char kLsdPermissionPromptDescription[] =
2688 "Whether to use the Google Play Services Location Settings Dialog "
2689 "permission dialog.";
2690
2691#endif // defined(OS_ANDROID)
2692
2693#if defined(OS_WIN)
2694
2695// Custom draw the Windows 10 titlebar. crbug.com/505013
2696
2697const char kWindows10CustomTitlebarName[] = "Custom-drawn Windows 10 Titlebar";
2698
2699const char kWindows10CustomTitlebarDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192700 "If enabled, Chrome will draw the titlebar and caption buttons instead of "
2701 "deferring to Windows.";
vabr0215a8e2017-03-28 12:47:342702
2703#endif // defined(OS_WIN)
2704
2705#if defined(OS_WIN)
2706
rbpotter556837e42017-05-01 18:49:042707const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
vabr0215a8e2017-03-28 12:47:342708
rbpotter556837e42017-05-01 18:49:042709const char kDisablePostscriptPrintingDescription[] =
2710 "Disables PostScript generation when printing to PostScript capable "
2711 "printers, and uses EMF generation in its place.";
vabr0215a8e2017-03-28 12:47:342712
2713#endif // defined(OS_WIN)
2714
2715#if defined(OS_ANDROID)
2716
2717const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
2718
2719const char kAiaFetchingDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192720 "Enable intermediate certificate fetching when a server does not provide "
2721 "sufficient certificates to build a chain to a trusted root.";
vabr0215a8e2017-03-28 12:47:342722
2723#endif // defined(OS_ANDROID)
2724
vabr0215a8e2017-03-28 12:47:342725// Desktop iOS promotion chrome://flags strings
2726
2727#if defined(OS_WIN)
2728
2729const char kEnableDesktopIosPromotionsName[] = "Desktop to iOS promotions.";
2730
2731const char kEnableDesktopIosPromotionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192732 "Enable Desktop to iOS promotions, and allow users to see them if they are "
2733 "eligible.";
vabr0215a8e2017-03-28 12:47:342734
2735#endif // defined(OS_WIN)
2736
2737#if defined(OS_ANDROID)
2738
2739const char kEnableCustomFeedbackUiName[] = "Enable Custom Feedback UI";
2740
2741const char kEnableCustomFeedbackUiDescription[] =
2742 "Enables a custom feedback UI when submitting feedback through Google "
2743 "Feedback. Works with Google Play Services v10.2+";
2744
2745#endif // defined(OS_ANDROID)
2746
vabr0215a8e2017-03-28 12:47:342747#if defined(OS_CHROMEOS) || defined(OS_LINUX) || defined(OS_MACOSX) || \
2748 defined(OS_WIN)
2749
2750const char kOmniboxEntitySuggestionsName[] = "Omnibox entity suggestions";
vabr0215a8e2017-03-28 12:47:342751const char kOmniboxEntitySuggestionsDescription[] =
krbcc621412017-06-01 19:40:282752 "Enable receiving entity suggestions - disambiguation descriptions - for "
2753 "Omnibox suggestions.";
2754
2755const char kOmniboxTailSuggestionsName[] = "Omnibox tail suggestions";
2756const char kOmniboxTailSuggestionsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192757 "Enable receiving tail suggestions, a type of search suggestion based on "
2758 "the last few words in the query, for the Omnibox.";
vabr0215a8e2017-03-28 12:47:342759
ojan38c678352017-04-11 20:27:552760const char kPauseBackgroundTabsName[] = "Pause background tabs";
2761const char kPauseBackgroundTabsDescription[] =
2762 "Pause timers in background tabs after 5 minutes on desktop.";
2763
spqchan6f9127a2017-04-29 03:42:022764const char kEnableNewAppMenuIconName[] = "Enable the New App Menu Icon";
2765const char kEnableNewAppMenuIconDescription[] =
2766 "Use the new app menu icon with update notification animations.";
spqchan064a8112017-04-18 16:46:322767
vabr0215a8e2017-03-28 12:47:342768#endif // defined(OS_CHROMEOS) || defined(OS_LINUX) || defined(OS_MACOSX) ||
2769 // defined(OS_WIN)
2770
2771#if defined(OS_CHROMEOS)
2772
2773const char kEnableChromevoxArcSupportName[] = "ChromeVox ARC support";
2774
2775const char kEnableChromevoxArcSupportDescription[] =
2776 "Enable ChromeVox screen reader features in ARC";
2777
2778#endif // defined(OS_CHROMEOS)
2779
2780const char kMojoLoadingName[] = "Use Mojo IPC for resource loading";
2781
2782const char kMojoLoadingDescription[] =
2783 "Use Mojo IPC instead of traditional Chrome IPC for resource loading.";
2784
Takashi Toyoshima08ff9792017-07-04 08:06:342785const char kModuleScriptsName[] = "Enable ECMAScript 6 modules";
2786
2787const char kModuleScriptsDescription[] =
2788 "Enables ECMAScript 6 modules support in Blink.";
2789
vabr0215a8e2017-03-28 12:47:342790#if defined(OS_ANDROID)
2791
Marc Treibbd5803b2017-07-10 09:45:572792const char kUseDdljsonApiName[] = "Use new ddljson API for Doodles";
vabr0215a8e2017-03-28 12:47:342793
Marc Treibbd5803b2017-07-10 09:45:572794const char kUseDdljsonApiDescription[] =
2795 "Enables the new ddljson API to fetch Doodles for the NTP.";
vabr0215a8e2017-03-28 12:47:342796
2797#endif // defined(OS_ANDROID)
2798
dskiba950fbc82017-04-12 20:36:282799const char kMemoryAblationName[] = "Memory ablation experiment";
2800const char kMemoryAblationDescription[] =
2801 "Allocates extra memory in the browser process.";
2802
jwanda1582bcf2017-03-30 04:33:482803#if defined(OS_ANDROID)
2804
2805const char kEnableCustomContextMenuName[] = "Enable custom context menu";
2806
2807const char kEnableCustomContextMenuDescription[] =
2808 "Enables a new context menu when a link, image, or video is pressed within "
2809 "Chrome.";
2810
2811#endif // defined(OS_ANDROID)
2812
vabr0215a8e2017-03-28 12:47:342813#if defined(OS_CHROMEOS)
2814
2815// File Manager
2816
2817const char kVideoPlayerChromecastSupportName[] =
2818 "Experimental Chromecast support for Video Player";
2819
2820const char kVideoPlayerChromecastSupportDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192821 "This option enables experimental Chromecast support for Video Player app "
2822 "on ChromeOS.";
vabr0215a8e2017-03-28 12:47:342823
2824const char kNewZipUnpackerName[] = "New ZIP unpacker";
2825
2826const char kNewZipUnpackerDescription[] =
2827 "New ZIP unpacker flow, based on the File System Provider API.";
2828
vabr0215a8e2017-03-28 12:47:342829const char kOfficeEditingComponentAppName[] =
2830 "Office Editing for Docs, Sheets & Slides";
2831
2832const char kOfficeEditingComponentAppDescription[] =
2833 "Office Editing for Docs, Sheets & Slides for testing purposes.";
2834
2835const char kDisplayColorCalibrationName[] = "Color calibration of the display";
2836
2837const char kDisplayColorCalibrationDescription[] =
2838 "Allow color calibration of the display if the display supports the "
2839 "feature.";
2840
newcomer403ac142017-07-05 18:26:302841const char kEnableFullscreenAppListName[] = "Enable The Peeking Launcher";
2842
2843const char kEnableFullscreenAppListDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192844 "The peeking launcher UI supports touch and provides more space for "
2845 "upcoming features.";
newcomer403ac142017-07-05 18:26:302846
vabr0215a8e2017-03-28 12:47:342847const char kMemoryPressureThresholdName[] =
2848 "Memory discard strategy for advanced pressure handling";
2849
2850const char kMemoryPressureThresholdDescription[] =
2851 "Memory discarding strategy to use";
2852
2853const char kConservativeThresholds[] =
2854 "Conservative memory pressure release strategy";
2855
2856const char kAggressiveCacheDiscardThresholds[] =
2857 "Aggressive cache release strategy";
2858
2859const char kAggressiveTabDiscardThresholds[] =
2860 "Aggressive tab release strategy";
2861
2862const char kAggressiveThresholds[] =
2863 "Aggressive tab and cache release strategy";
2864
2865const char kWakeOnPacketsName[] = "Wake On Packets";
2866
2867const char kWakeOnPacketsDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192868 "Enables waking the device based on the receipt of some network packets.";
vabr0215a8e2017-03-28 12:47:342869
brettw5f9c1642017-05-14 17:12:482870const char kQuickUnlockPinName[] = "Quick Unlock (PIN)";
vabr0215a8e2017-03-28 12:47:342871
2872const char kQuickUnlockPinDescription[] =
jdufault74476492017-04-20 01:20:002873 "Enabling PIN quick unlock allows you to use a PIN to unlock your ChromeOS "
2874 "device on the lock screen after you have signed into your device.";
2875
2876const char kQuickUnlockPinSignin[] = "Enable PIN when logging in.";
2877
2878const char kQuickUnlockPinSigninDescription[] =
2879 "Enabling PIN allows you to use a PIN to sign in and unlock your ChromeOS "
2880 "device. After changing this flag PIN needs to be set up again.";
vabr0215a8e2017-03-28 12:47:342881
2882const char kQuickUnlockFingerprint[] = "Quick Unlock (Fingerprint)";
2883
2884const char kQuickUnlockFingerprintDescription[] =
2885 "Enabling fingerprint quick unlock allows you to setup and use a "
Vitalii Iarko7df520142017-07-07 12:53:192886 "fingerprint to unlock your Chromebook on the lock screen after you have "
2887 "signed into your device.";
vabr0215a8e2017-03-28 12:47:342888
2889const char kExperimentalAccessibilityFeaturesName[] =
2890 "Experimental accessibility features";
2891
2892const char kExperimentalAccessibilityFeaturesDescription[] =
2893 "Enable additional accessibility features in the Settings page.";
2894
2895const char kDisableSystemTimezoneAutomaticDetectionName[] =
2896 "SystemTimezoneAutomaticDetection policy support";
2897
2898const char kDisableSystemTimezoneAutomaticDetectionDescription[] =
2899 "Disable system timezone automatic detection device policy.";
2900
2901const char kEolNotificationName[] = "Disable Device End of Life notification.";
2902
2903const char kEolNotificationDescription[] =
2904 "Disable Notifcation when Device is End of Life.";
2905
2906// Stylus strings
2907
2908const char kForceEnableStylusToolsName[] = "Force enable stylus features";
2909
2910const char kForceEnableStylusToolsDescription[] =
2911 "Forces display of the stylus tools menu in the shelf and the stylus "
2912 "section in settings, even if there is no attached stylus device.";
2913
2914// Network portal notification
2915
2916const char kNetworkPortalNotificationName[] =
2917 "Notifications about captive portals";
2918
2919const char kNetworkPortalNotificationDescription[] =
2920 "If enabled, notification is displayed when device is connected to a "
2921 "network behind captive portal.";
2922
stevenjbe1d457382017-05-24 22:37:242923const char kNetworkSettingsConfigName[] =
2924 "Settings based Network Configuration";
2925
2926const char kNetworkSettingsConfigDescription[] =
2927 "Enables the Settings based network configuration UI instead of the Views "
2928 "based configuration dialog.";
2929
vabr0215a8e2017-03-28 12:47:342930const char kMtpWriteSupportName[] = "MTP write support";
2931
2932const char kMtpWriteSupportDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192933 "MTP write support in File System API (and file manager). In-place editing "
2934 "operations are not supported.";
vabr0215a8e2017-03-28 12:47:342935
2936const char kCrosRegionsModeName[] = "Cros-regions load mode";
2937
2938const char kCrosRegionsModeDescription[] =
2939 "This flag controls cros-regions load mode";
2940
2941const char kCrosRegionsModeDefault[] = "Default";
2942
2943const char kCrosRegionsModeOverride[] = "Override VPD values.";
2944
2945const char kCrosRegionsModeHide[] = "Hide VPD values.";
2946
2947const char kPrinterProviderSearchAppName[] =
2948 "Chrome Web Store Gallery app for printer drivers";
2949
2950const char kPrinterProviderSearchAppDescription[] =
2951 "Enables Chrome Web Store Gallery app for printer drivers. The app "
Vitalii Iarko7df520142017-07-07 12:53:192952 "searches Chrome Web Store for extensions that support printing to a USB "
2953 "printer with specific USB ID.";
vabr0215a8e2017-03-28 12:47:342954
2955const char kArcBootCompleted[] = "Load Android apps automatically";
2956
2957const char kArcBootCompletedDescription[] =
2958 "Allow Android apps to start automatically after signing in.";
2959
2960const char kEnableImeMenuName[] = "Enable opt-in IME menu";
2961
2962const char kEnableImeMenuDescription[] =
2963 "Enable access to the new IME menu in the Language Settings page.";
2964
2965const char kEnableEhvInputName[] =
2966 "Emoji, handwriting and voice input on opt-in IME menu";
2967
2968const char kEnableEhvInputDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:192969 "Enable access to emoji, handwriting and voice input form opt-in IME menu.";
vabr0215a8e2017-03-28 12:47:342970
fukino1b5ebe952017-04-07 05:35:302971const char kEnableEncryptionMigrationName[] =
2972 "Enable encryption migration of user data";
2973
2974const char kEnableEncryptionMigrationDescription[] =
2975 "If enabled and the device supports ARC, the user will be asked to update "
2976 "the encryption of user data when the user signs in.";
2977
Daniel Erat33054b22017-06-27 16:18:072978// Spurious power button detection
2979
2980const char kSpuriousPowerButtonWindowName[] = "Spurious power button window";
2981const char kSpuriousPowerButtonWindowDescription[] =
2982 "Number of recent accelerometer samples to examine to determine if a power "
2983 "button event was spurious.";
2984
2985const char kSpuriousPowerButtonAccelCountName[] =
2986 "Spurious power button acceleration count";
2987const char kSpuriousPowerButtonAccelCountDescription[] =
2988 "Number of recent acceleration samples that must meet or exceed exceed the "
2989 "threshold in order for a power button event to be considered spurious.";
2990
2991const char kSpuriousPowerButtonScreenAccelName[] =
2992 "Spurious power button screen acceleration threshold";
2993const char kSpuriousPowerButtonScreenAccelDescription[] =
2994 "Threshold (in m/s^2, disregarding gravity) that screen acceleration must "
2995 "meet or exceed for a power button event to be considered spurious.";
2996
2997const char kSpuriousPowerButtonKeyboardAccelName[] =
2998 "Spurious power button keyboard acceleration threshold";
2999const char kSpuriousPowerButtonKeyboardAccelDescription[] =
3000 "Threshold (in m/s^2, disregarding gravity) that keyboard acceleration "
3001 "must meet or exceed for a power button event to be considered spurious.";
3002
3003const char kSpuriousPowerButtonLidAngleChangeName[] =
3004 "Spurious power button lid angle change threshold";
3005const char kSpuriousPowerButtonLidAngleChangeDescription[] =
3006 "Change in lid angle (i.e. hinge between keyboard and screen) that must be "
3007 "met or exceeded for a power button event to be considered spurious.";
3008
vabr0215a8e2017-03-28 12:47:343009#endif // #if defined(OS_CHROMEOS)
3010
wychen2212fe72017-04-10 10:23:323011#if defined(OS_ANDROID)
3012
3013const char kEnableCopylessPasteName[] = "App Indexing (Copyless Paste)";
3014
3015const char kEnableCopylessPasteDescription[] =
3016 "Provide suggestions for text input, based on your recent context. For "
3017 "example, if you looked at a restaurant website and switched to the Maps "
3018 "app, the keyboard would offer the name of that restaurant as a suggestion "
3019 "to enter into the search bar. The data is indexed locally, and never sent "
3020 "to the server. It's disabled in incognito mode.";
3021
alexander.shalamov588eca42017-04-20 13:32:423022const char kEnableWebNfcName[] = "WebNFC";
3023
3024const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
3025
wychen2212fe72017-04-10 10:23:323026#endif // defined(OS_ANDROID)
3027
mpearson5aed28a2017-04-25 06:01:313028#if defined(OS_ANDROID)
3029
3030const char kEnableOmniboxClipboardProviderName[] =
3031 "Omnibox clipboard URL suggestions";
3032
3033const char kEnableOmniboxClipboardProviderDescription[] =
3034 "Provide a suggestion of the URL stored in the clipboard (if any) upon "
3035 "focus in the omnibox.";
3036
3037#endif // defined(OS_ANDROID)
3038
gcomanici8cabc77f2017-04-27 20:04:543039const char kOmniboxDisplayTitleForCurrentUrlName[] =
3040 "Include title for the current URL in the omnibox";
3041
3042const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
3043 "In the event that the omnibox provides suggestions on-focus, the URL of "
3044 "the current page is provided as the first suggestion without a title. "
3045 "Enabling this flag causes the title to be displayed.";
3046
tommycli10b4b1922017-07-06 00:24:413047const char kOmniboxUIElideSuggestionUrlAfterHostName[] =
3048 "Omnibox UI Elide Suggestion URL After Host";
3049const char kOmniboxUIElideSuggestionUrlAfterHostDescription[] =
3050 "Elides the path, query, and ref of suggested URLs in the Omnibox "
3051 "dropdown.";
tommyclifd4ba2792017-06-14 00:05:393052
3053const char kOmniboxUIHideSuggestionUrlSchemeName[] =
3054 "Omnibox UI Hide Suggestion URL Scheme";
3055const char kOmniboxUIHideSuggestionUrlSchemeDescription[] =
3056 "Elides the schemes of suggested URLs in the Omnibox dropdown.";
3057
3058const char kOmniboxUIHideSuggestionUrlTrivialSubdomainsName[] =
3059 "Omnibox UI Hide Suggestion URL Trivial Subdomains";
3060const char kOmniboxUIHideSuggestionUrlTrivialSubdomainsDescription[] =
3061 "Elides trivially informative subdomains from suggested URLs in the "
3062 "Omnibox dropdown (e.g. www. and m.).";
3063
tommyclia5a538f92017-05-15 19:09:383064const char kOmniboxUIMaxAutocompleteMatchesName[] =
3065 "Omnibox UI Max Autocomplete Matches";
3066
3067const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
etienneb9a4b5302017-06-08 06:28:463068 "Changes the maximum number of autocomplete matches displayed in the "
tommyclia5a538f92017-05-15 19:09:383069 "Omnibox UI.";
3070
tommycli0695a7242017-06-09 17:32:223071const char kOmniboxUINarrowDropdownName[] = "Omnibox UI Narrow Dropdown";
3072
3073const char kOmniboxUINarrowDropdownDescription[] =
3074 "Makes the suggestions dropdown width match the omnibox width.";
3075
tommycli26317da2017-05-26 20:50:333076const char kOmniboxUIVerticalLayoutName[] = "Omnibox UI Vertical Layout";
3077
3078const char kOmniboxUIVerticalLayoutDescription[] =
3079 "Displays Omnibox sugestions in 2 lines - title over origin.";
3080
tommycli2bb95c42017-05-08 18:07:023081const char kOmniboxUIVerticalMarginName[] = "Omnibox UI Vertical Margin";
3082
3083const char kOmniboxUIVerticalMarginDescription[] =
3084 "Changes the vertical margin in the Omnibox UI.";
3085
tbansald3e08ca62017-05-04 19:51:093086const char kForceEffectiveConnectionTypeName[] =
3087 "Override effective connection type";
3088
3089const char kForceEffectiveConnectionTypeDescription[] =
3090 "Overrides the effective connection type of the current connection "
3091 "returned by the network quality estimator.";
3092
3093const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
3094const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
3095const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
3096const char kEffectiveConnectionType2GDescription[] = "2G";
3097const char kEffectiveConnectionType3GDescription[] = "3G";
3098const char kEffectiveConnectionType4GDescription[] = "4G";
3099
fhorschig122c6652017-05-05 10:21:303100const char kUseSuggestionsEvenIfFewFeatureName[] =
3101 "Disable minimum for server-side tile suggestions on NTP.";
3102
3103const char kUseSuggestionsEvenIfFewFeatureDescription[] =
3104 "Request server-side suggestions even if there are only very few of them "
3105 "and use them for tiles on the New Tab Page.";
3106
stanisc14bed0b132017-05-10 17:46:373107#if defined(OS_WIN)
3108
3109// Name and description of the flag that enables D3D v-sync.
3110const char kEnableD3DVsync[] = "D3D v-sync";
3111const char kEnableD3DVsyncDescription[] =
3112 "Produces v-sync signal by having D3D wait for vertical blanking interval "
3113 "to occur.";
3114
3115#endif // defined(OS_WIN)
3116
thestig0c55ee32017-06-20 22:17:513117#if !defined(OS_ANDROID)
treib273e9db2017-05-11 14:02:263118
msarda6d4b3dc2017-06-02 15:39:473119const char kAccountConsistencyName[] =
3120 "Identity consistency between browser and cookie jar";
3121
3122const char kAccountConsistencyDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:193123 "When enabled, the browser manages signing in and out of Google accounts.";
msarda6d4b3dc2017-06-02 15:39:473124
3125const char kAccountConsistencyChoiceMirror[] = "Mirror";
3126const char kAccountConsistencyChoiceDice[] = "Dice";
3127
treib273e9db2017-05-11 14:02:263128const char kUseGoogleLocalNtpName[] = "Enable using the Google local NTP";
3129const char kUseGoogleLocalNtpDescription[] =
3130 "Use the local New Tab page if Google is the default search engine.";
3131
3132const char kOneGoogleBarOnLocalNtpName[] =
3133 "Enable the OneGoogleBar on the local NTP";
3134const char kOneGoogleBarOnLocalNtpDescription[] =
3135 "Show a OneGoogleBar on the local New Tab page if Google is the default "
3136 "search engine.";
3137
thestig0c55ee32017-06-20 22:17:513138#endif // !defined(OS_ANDROID)
treib273e9db2017-05-11 14:02:263139
lgreyc0b638e52017-05-11 19:10:173140#if defined(OS_MACOSX)
3141extern const char kMacRTLName[] = "Enable RTL";
3142extern const char kMacRTLDescription[] =
3143 "Mirrors the UI for RTL language users";
elawrence408bddb2017-06-15 16:07:383144extern const char kMacTouchBarName[] = "Hardware TouchBar";
3145extern const char kMacTouchBarDescription[] =
3146 "Control the use of the TouchBar.";
lgreyc0b638e52017-05-11 19:10:173147#endif
3148
yhanadac5bff5b2017-05-18 06:37:093149#if defined(OS_CHROMEOS)
3150
3151const char kDisableNewVirtualKeyboardBehaviorName[] =
3152 "New window behavior for the accessibility keyboard";
3153const char kDisableNewVirtualKeyboardBehaviorDescription[] =
Vitalii Iarko7df520142017-07-07 12:53:193154 "Disable new window behavior for the accessibility keyboard in non-sticky "
3155 "mode (do not change work area in non-sticky mode).";
yhanadac5bff5b2017-05-18 06:37:093156
bruthigeafb0c02017-06-09 13:11:533157const char kUiDevToolsName[] = "Enable native UI inspection";
3158const char kUiDevToolsDescription[] =
3159 "Enables inspection of native UI elements. For local inspection use "
3160 "chrome://inspect#other";
3161
orenb21da031c2017-06-30 21:24:203162const char kMultideviceName[] = "Enable multidevice features";
3163const char kMultideviceDescription[] =
3164 "Enables UI for controlling multidevice features.";
3165
yhanadac5bff5b2017-05-18 06:37:093166#endif // defined(OS_CHROMEOS)
3167
Changwan Ryu5b741342017-07-10 21:16:523168#if defined(OS_ANDROID)
3169
3170const char kSpannableInlineAutocompleteName[] = "Spannable inline autocomplete";
3171const char kSpannableInlineAutocompleteDescription[] =
3172 "A new type of inline autocomplete for the omnibox that works with "
3173 "keyboards that compose text.";
3174
3175#endif // defined(OS_ANDROID)
3176
vabr0215a8e2017-03-28 12:47:343177} // namespace flag_descriptions