blob: 65c9ae8b7de8fbdbe9241ffe28c0bb19145dd565 [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
9// Material Design version of chrome://bookmarks
10
11const char kEnableMaterialDesignBookmarksName[] =
12 "Enable Material Design bookmarks";
13
14const char kEnableMaterialDesignBookmarksDescription[] =
15 "If enabled, the chrome://bookmarks/ URL loads the Material Design "
16 "bookmarks page.";
17
18// Material Design version of chrome://policy
19
20const char kEnableMaterialDesignPolicyPageName[] =
21 "Enable Material Design policy page";
22
23const char kEnableMaterialDesignPolicyPageDescription[] =
24 "If enabled, the chrome://md-policy URL loads the Material Design "
25 "policy page.";
26
vabr0215a8e2017-03-28 12:47:3427// Material Design version of chrome://extensions
28
29const char kEnableMaterialDesignExtensionsName[] =
30 "Enable Material Design extensions";
31
32const char kEnableMaterialDesignExtensionsDescription[] =
33 "If enabled, the chrome://extensions/ URL loads the Material Design "
34 "extensions page.";
35
36// Material Design version of feedback form
37
38const char kEnableMaterialDesignFeedbackName[] =
39 "Enable Material Design feedback";
40
41const char kEnableMaterialDesignFeedbackDescription[] =
42 "If enabled, reporting an issue will load the Material Design feedback "
43 "UI.";
44
galinapae72e152017-05-12 13:12:2845const char kContextualSuggestionsCarouselName[] =
46 "Enable Contextual Suggestions";
47
48const char kContextualSuggestionsCarouselDescription[] =
49 "If enabled, shows contextual suggestions in a horizontal carousel in "
50 "bottom sheet content.";
51
vabr0215a8e2017-03-28 12:47:3452// Report URL to SafeSearch
53
54const char kSafeSearchUrlReportingName[] = "SafeSearch URLs reporting.";
55
56const char kSafeSearchUrlReportingDescription[] =
57 "If enabled, inappropriate URLs can be reported back to SafeSearch.";
58
59// Device scale factor change in content crbug.com/485650.
60
61const char kEnableUseZoomForDsfName[] =
62 "Use Blink's zoom for device scale factor.";
63
64const char kEnableUseZoomForDsfDescription[] =
65 "If enabled, Blink uses its zooming mechanism to scale content for "
66 "device scale factor.";
67
68const char kEnableUseZoomForDsfChoiceDefault[] = "Default";
69
70const char kEnableUseZoomForDsfChoiceEnabled[] = "Enabled";
71
72const char kEnableUseZoomForDsfChoiceDisabled[] = "Disabled";
73
brettw5f9c1642017-05-14 17:12:4874const char kNostatePrefetchName[] = "No-State Prefetch";
vabr0215a8e2017-03-28 12:47:3475
76const char kNostatePrefetchDescription[] =
77 R"*("No-State Prefetch" pre-downloads resources to improve load )*"
78 R"*(times. "Prerender" does a full pre-rendering of the page, to )*"
79 R"*(improve load times even more. "Simple Load" does nothing and is )*"
80 R"*(similar to disabling the feature, but collects more metrics for )*"
81 R"*(comparison purposes.)*";
82
83const char kSpeculativePrefetchName[] = "Speculative Prefetch";
84
85const char kSpeculativePrefetchDescription[] =
86 R"*("Speculative Prefetch" fetches likely resources early to improve )*"
87 R"*(load times, based on a local database (see chrome://predictors). )*"
88 R"*("Learning" means that only the database construction is enabled, )*"
89 R"*("Prefetching" that learning and prefetching are enabled.)*";
90
horo201d49492017-05-19 05:31:4091const char kOffMainThreadFetchName[] = "Off-main-thread fetch for Web Workers";
92
93const char kOffMainThreadFetchDescription[] =
94 "If enabled, the resource fetches from worker threads will not be blocked "
95 "by the busy main thread.";
96
vabr0215a8e2017-03-28 12:47:3497// Force Tablet Mode
98
99const char kForceTabletModeName[] = "Force Tablet Mode";
100
101const char kForceTabletModeDescription[] =
102 R"*(This flag can be used to force a certain mode on to a chromebook, )*"
103 R"*(despite its current orientation. "TouchView" means that the )*"
104 R"*(chromebook will act as if it were in touch view mode. "Clamshell" )*"
105 R"*(means that the chromebook will act as if it were in clamshell )*"
106 R"*(mode . "Auto" means that the chromebook will alternate between )*"
107 R"*(the two, based on its orientation.)*";
108
109const char kForceTabletModeTouchview[] = "TouchView";
110
111const char kForceTabletModeClamshell[] = "Clamshell";
112
113const char kForceTabletModeAuto[] = "Auto (default)";
114
115// Print Preview features
rbpotterc51ee3622017-05-19 20:24:53116#if !defined(OS_WIN) && !defined(OS_MACOSX)
vabr0215a8e2017-03-28 12:47:34117const char kPrintPdfAsImageName[] = "Print Pdf as Image";
118
119const char kPrintPdfAsImageDescription[] =
120 "If enabled, an option to print PDF files as images will be available "
121 "in print preview.";
rbpotterc51ee3622017-05-19 20:24:53122#endif
vabr0215a8e2017-03-28 12:47:34123
brettw5f9c1642017-05-14 17:12:48124#if !defined(DISABLE_NACL)
125
vabr0215a8e2017-03-28 12:47:34126const char kNaclName[] = "Native Client";
vabr0215a8e2017-03-28 12:47:34127const char kNaclDescription[] =
128 "Support Native Client for all web applications, even those that were "
129 "not installed from the Chrome Web Store.";
130
vabr0215a8e2017-03-28 12:47:34131const char kNaclDebugName[] = "Native Client GDB-based debugging";
vabr0215a8e2017-03-28 12:47:34132const char kNaclDebugDescription[] =
133 "Enable GDB debug stub. This will stop a Native Client application on "
134 "startup and wait for nacl-gdb (from the NaCl SDK) to attach to it.";
135
vabr0215a8e2017-03-28 12:47:34136const char kPnaclSubzeroName[] = "Force PNaCl Subzero";
vabr0215a8e2017-03-28 12:47:34137const char kPnaclSubzeroDescription[] =
138 "Force the use of PNaCl's fast Subzero translator for all pexe files.";
139
vabr0215a8e2017-03-28 12:47:34140const char kNaclDebugMaskName[] =
141 "Restrict Native Client GDB-based debugging by pattern";
vabr0215a8e2017-03-28 12:47:34142const char kNaclDebugMaskDescription[] =
143 "Restricts Native Client application GDB-based debugging by URL of "
144 "manifest file. Native Client GDB-based debugging must be enabled for "
145 "this option to work.";
vabr0215a8e2017-03-28 12:47:34146const char kNaclDebugMaskChoiceDebugAll[] = "Debug everything.";
vabr0215a8e2017-03-28 12:47:34147const char kNaclDebugMaskChoiceExcludeUtilsPnacl[] =
148 "Debug everything except secure shell and the PNaCl translator.";
vabr0215a8e2017-03-28 12:47:34149const char kNaclDebugMaskChoiceIncludeDebug[] =
150 "Debug only if manifest URL ends with debug.nmf.";
151
brettw5f9c1642017-05-14 17:12:48152#endif
153
vabr0215a8e2017-03-28 12:47:34154const char kEnableHttpFormWarningName[] =
155 "Show in-form warnings for sensitive fields when the top-level page is "
156 "not HTTPS";
157
158const char kEnableHttpFormWarningDescription[] =
159 "Attaches a warning UI to any password or credit card fields detected "
160 "when the top-level page is not HTTPS";
161
162const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
163
164const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
vabr0215a8e2017-03-28 12:47:34165const char kMarkHttpAsDangerous[] = "Always mark HTTP as actively dangerous";
elawrence52854122017-05-31 04:36:01166const char kMarkHttpAsNonSecureAfterEditing[] =
167 "Warn on HTTP after editing forms";
168const char kMarkHttpAsNonSecureWhileIncognito[] =
169 "Warn on HTTP while in Incognito mode";
170const char kMarkHttpAsNonSecureWhileIncognitoOrEditing[] =
171 "Warn on HTTP while in Incognito mode or after editing forms";
vabr0215a8e2017-03-28 12:47:34172
msrameka8443112017-04-24 23:20:10173// Material design of the Incognito NTP.
174
175extern const char kMaterialDesignIncognitoNTPName[] =
176 "Material Design Incognito NTP.";
177
178extern const char kMaterialDesignIncognitoNTPDescription[] =
179 "If enabled, the Incognito New Tab page uses the new material design "
180 "with a better readable text.";
181
vabr0215a8e2017-03-28 12:47:34182const char kSavePageAsMhtmlName[] = "Save Page as MHTML";
183
184const char kSavePageAsMhtmlDescription[] =
185 "Enables saving pages as MHTML: a single text file containing HTML and "
186 "all sub-resources.";
187
etienneb9a4b5302017-06-08 06:28:46188// Flag and values for MHTML Generator options lab.
vabr0215a8e2017-03-28 12:47:34189
190const char kMhtmlGeneratorOptionName[] = "MHTML Generation Option";
191
192const char kMhtmlGeneratorOptionDescription[] =
193 "Provides experimental options for MHTML file generator.";
194
195const char kMhtmlSkipNostoreMain[] = "Skips no-store main frame.";
196
197const char kMhtmlSkipNostoreAll[] = "Skips all no-store resources.";
198
199const char kDeviceDiscoveryNotificationsName[] =
200 "Device Discovery Notifications";
201
202const char kDeviceDiscoveryNotificationsDescription[] =
203 "Device discovery notifications on local network.";
204
205#if defined(OS_WIN)
206
207const char kCloudPrintXpsName[] = "XPS in Google Cloud Print";
208
209const char kCloudPrintXpsDescription[] =
210 "XPS enables advanced options for classic printers connected to the "
211 "Cloud Print with Chrome. Printers must be re-connected after changing "
212 "this flag.";
213
214#endif // defined(OS_WIN)
215
216const char kLoadMediaRouterComponentExtensionName[] =
217 "Load Media Router Component Extension";
218
219const char kLoadMediaRouterComponentExtensionDescription[] =
220 "Loads the Media Router component extension at startup.";
221
222const char kPrintPreviewRegisterPromosName[] =
223 "Print Preview Registration Promos";
224
225const char kPrintPreviewRegisterPromosDescription[] =
226 "Enable registering unregistered cloud printers from print preview.";
227
228const char kScrollPredictionName[] = "Scroll prediction";
229
230const char kTopChromeMd[] = "UI Layout for the browser's top chrome";
231
232const char kTopChromeMdDescription[] =
233 R"*(Toggles between normal and touch (formerly "hybrid") layouts.)*";
234
235const char kTopChromeMdMaterial[] = "Normal";
236
237const char kTopChromeMdMaterialHybrid[] = "Touch";
238
patricialor325fa4c2017-05-08 07:51:31239const char kSiteDetails[] = "Site Details";
240
241const char kSiteDetailsDescription[] =
242 "Adds UI in MD Settings to view all content settings for a specific "
243 "origin.";
244
vabr0215a8e2017-03-28 12:47:34245const char kSiteSettings[] = "Site settings with All sites and Site details";
246
247const char kSiteSettingsDescription[] =
248 "Adds new ways of viewing Site settings.";
249
250const char kSecondaryUiMd[] =
251 "Material Design in the rest of the browser's native UI";
252
253const char kSecondaryUiMdDescription[] =
254 "Extends the --top-chrome-md setting to secondary UI (bubbles, dialogs, "
255 "etc.). On Mac, this enables MacViews, which uses toolkit-views for "
256 "native browser dialogs.";
257
258const char kScrollPredictionDescription[] =
259 "Predicts the finger's future position during scrolls allowing time to "
260 "render the frame before the finger is there.";
261
262const char kAddToShelfName[] = "Add to shelf";
263
264const char kAddToShelfDescription[] =
265 "Enable the display of add to shelf banners, which prompt a user to add "
266 "a web app to their shelf, or other platform-specific equivalent.";
267
268const char kBypassAppBannerEngagementChecksName[] =
269 "Bypass user engagement checks";
270
271const char kBypassAppBannerEngagementChecksDescription[] =
272 "Bypasses user engagement checks for displaying app banners, such as "
273 "requiring that users have visited the site before and that the banner "
274 "hasn't been shown recently. This allows developers to test that other "
275 "eligibility requirements for showing app banners, such as having a "
276 "manifest, are met.";
277
278#if defined(OS_ANDROID)
279
280const char kAccessibilityTabSwitcherName[] = "Accessibility Tab Switcher";
281
282const char kAccessibilityTabSwitcherDescription[] =
283 "Enable the accessibility tab switcher for Android.";
284
csashidf20b102017-04-04 01:53:24285const char kAndroidAutofillAccessibilityName[] = "Autofill Accessibility";
286
287const char kAndroidAutofillAccessibilityDescription[] =
288 "Enable accessibility for autofill popup.";
289
vabr0215a8e2017-03-28 12:47:34290const char kEnablePhysicalWebName[] = "Enable the Physical Web.";
291
292const char kEnablePhysicalWebDescription[] =
293 "Enable scanning for URLs from Physical Web objects.";
294
295#endif // defined(OS_ANDROID)
296
297const char kTouchEventsName[] = "Touch Events API";
298
299const char kTouchEventsDescription[] =
300 "Force Touch Events API feature detection to always be enabled or "
301 "disabled, or to be enabled when a touchscreen is detected on startup "
302 "(Automatic, the default).";
303
304const char kTouchAdjustmentName[] = "Touch adjustment";
305
306const char kTouchAdjustmentDescription[] =
307 "Refine the position of a touch gesture in order to compensate for "
308 "touches having poor resolution compared to a mouse.";
309
brettw5f9c1642017-05-14 17:12:48310const char kCompositedLayerBordersName[] = "Composited render layer borders";
vabr0215a8e2017-03-28 12:47:34311
312const char kCompositedLayerBordersDescription[] =
313 "Renders a border around composited Render Layers to help debug and "
314 "study layer compositing.";
315
brettw5f9c1642017-05-14 17:12:48316const char kGlCompositedTextureQuadBordersName[] =
vabr0215a8e2017-03-28 12:47:34317 "GL composited texture quad borders";
318
319const char kGlCompositedTextureQuadBordersDescription[] =
320 "Renders a border around GL composited texture quads to help debug and "
321 "study overlay support.";
322
brettw5f9c1642017-05-14 17:12:48323const char kShowOverdrawFeedbackName[] = "Show overdraw feedback";
vabr0215a8e2017-03-28 12:47:34324
325const char kShowOverdrawFeedbackDescription[] =
326 "Visualize overdraw by color-coding elements based on if they have "
327 "other elements drawn underneath.";
328
329const char kUiPartialSwapName[] = "Partial swap";
330
331const char kUiPartialSwapDescription[] = "Sets partial swap behavior.";
332
333const char kDebugShortcutsName[] = "Debugging keyboard shortcuts";
334
335const char kIgnoreGpuBlacklistName[] = "Override software rendering list";
336
337const char kIgnoreGpuBlacklistDescription[] =
338 "Overrides the built-in software rendering list and enables "
339 "GPU-acceleration on unsupported system configurations.";
340
341const char kInertVisualViewportName[] = "Inert visual viewport.";
342
343const char kInertVisualViewportDescription[] =
344 "Experiment to have all APIs reflect the layout viewport. This will "
345 "make window.scroll properties relative to the layout viewport.";
346
ccameronc570ec92017-04-14 05:36:25347const char kColorCorrectRenderingName[] = "Color correct rendering";
348
349const char kColorCorrectRenderingDescription[] =
350 "Enables color correct rendering of web content.";
351
vabr0215a8e2017-03-28 12:47:34352const char kExperimentalCanvasFeaturesName[] = "Experimental canvas features";
353
354const char kExperimentalCanvasFeaturesDescription[] =
355 "Enables the use of experimental canvas features which are still in "
356 "development.";
357
358const char kAccelerated2dCanvasName[] = "Accelerated 2D canvas";
359
360const char kAccelerated2dCanvasDescription[] =
361 "Enables the use of the GPU to perform 2d canvas rendering instead of "
362 "using software rendering.";
363
364const char kDisplayList2dCanvasName[] = "Display list 2D canvas";
365
366const char kDisplayList2dCanvasDescription[] =
367 "Enables the use of display lists to record 2D canvas commands. This "
368 "allows 2D canvas rasterization to be performed on separate thread.";
369
vabr0215a8e2017-03-28 12:47:34370const char kExperimentalExtensionApisName[] = "Experimental Extension APIs";
371
372const char kExperimentalExtensionApisDescription[] =
373 "Enables experimental extension APIs. Note that the extension gallery "
374 "doesn't allow you to upload extensions that use experimental APIs.";
375
376const char kExtensionsOnChromeUrlsName[] = "Extensions on chrome:// URLs";
377
378const char kExtensionsOnChromeUrlsDescription[] =
379 "Enables running extensions on chrome:// URLs, where extensions "
380 "explicitly request this permission.";
381
382const char kFastUnloadName[] = "Fast tab/window close";
383
384const char kFastUnloadDescription[] =
385 "Enables fast tab/window closing - runs a tab's onunload js handler "
386 "independently of the GUI.";
387
Yutaka Hirano6bbe1e32017-05-24 09:25:58388const char kFetchKeepaliveTimeoutSettingName[] =
389 "Fetch API keepalive timeout setting";
390const char kFetchKeepaliveTimeoutSettingDescription[] =
391 "This is for setting "
392 "the timeout value for Fetch API with keepalive option and SendBeacon";
393
vabr0215a8e2017-03-28 12:47:34394const char kUserConsentForExtensionScriptsName[] =
395 "User consent for extension scripts";
396
397const char kUserConsentForExtensionScriptsDescription[] =
398 "Require user consent for an extension running a script on the page, if "
399 "the extension requested permission to run on all urls.";
400
401const char kHistoryRequiresUserGestureName[] =
402 "New history entries require a user gesture.";
403
404const char kHistoryRequiresUserGestureDescription[] =
405 "Require a user gesture to add a history entry.";
406
407const char kHyperlinkAuditingName[] = "Hyperlink auditing";
408
409const char kHyperlinkAuditingDescription[] = "Sends hyperlink auditing pings.";
410
411#if defined(OS_ANDROID)
412
brettw5f9c1642017-05-14 17:12:48413const char kContextualSearchName[] = "Contextual Search";
vabr0215a8e2017-03-28 12:47:34414
415const char kContextualSearchDescription[] =
416 "Whether or not Contextual Search is enabled.";
417
418const char kContextualSearchContextualCardsBarIntegration[] =
419 "Contextual Search - Contextual Cards Integration";
420
421const char kContextualSearchContextualCardsBarIntegrationDescription[] =
422 "Whether or not integration of Contextual Cards data in the Contextual "
423 "Search Bar is enabled.";
424
brettw5f9c1642017-05-14 17:12:48425const char kContextualSearchSingleActionsName[] =
vabr0215a8e2017-03-28 12:47:34426 "Contextual Search - Single Actions";
427
428const char kContextualSearchSingleActionsDescription[] =
429 "Whether or not single actions using Contextual Cards data in the "
430 "Contextual Search Bar is enabled.";
431
brettw5f9c1642017-05-14 17:12:48432const char kContextualSearchUrlActionsName[] =
433 "Contextual Search - URL Actions";
vabr0215a8e2017-03-28 12:47:34434
435const char kContextualSearchUrlActionsDescription[] =
436 "Whether or not URL actions using Contextual Cards data in the "
437 "Contextual Search Bar is enabled.";
438
439#endif // defined(OS_ANDROID)
440
441const char kSmoothScrollingName[] = "Smooth Scrolling";
442
443const char kSmoothScrollingDescription[] =
444 "Animate smoothly when scrolling page content.";
445
446const char kOverlayScrollbarsName[] = "Overlay Scrollbars";
447
448const char kOverlayScrollbarsDescription[] =
449 "Enable the experimental overlay scrollbars implementation. You must "
450 "also enable threaded compositing to have the scrollbars animate.";
451
452const char kShowAutofillTypePredictionsName[] = "Show Autofill predictions";
453
454const char kShowAutofillTypePredictionsDescription[] =
455 "Annotates web forms with Autofill field type predictions as "
456 "placeholder text.";
457
458const char kTcpFastOpenName[] = "TCP Fast Open";
459
460const char kTcpFastOpenDescription[] =
461 "Enable the option to send extra authentication information in the "
462 "initial SYN packet for a previously connected client, allowing faster "
463 "data send start.";
464
465const char kTouchDragDropName[] = "Touch initiated drag and drop";
466
467const char kTouchDragDropDescription[] =
468 "Touch drag and drop can be initiated through long press on a draggable "
469 "element.";
470
471const char kTouchSelectionStrategyName[] = "Touch text selection strategy";
472
473const char kTouchSelectionStrategyDescription[] =
474 "Controls how text selection granularity changes when touch text "
475 "selection handles are dragged. Non-default behavior is experimental.";
476
477const char kTouchSelectionStrategyCharacter[] = "Character";
478
479const char kTouchSelectionStrategyDirection[] = "Direction";
480
481const char kWalletServiceUseSandboxName[] =
482 "Use Google Payments sandbox servers";
483
484const char kWalletServiceUseSandboxDescription[] =
485 "For developers: use the sandbox service for Google Payments API "
486 "calls.";
487
488const char kOverscrollHistoryNavigationName[] = "Overscroll history navigation";
489
490const char kOverscrollHistoryNavigationDescription[] =
491 "Experimental history navigation in response to horizontal overscroll.";
492
493const char kOverscrollHistoryNavigationSimpleUi[] = "Simple";
494
495const char kOverscrollStartThresholdName[] = "Overscroll start threshold";
496
497const char kOverscrollStartThresholdDescription[] =
498 "Changes overscroll start threshold relative to the default value.";
499
500const char kOverscrollStartThreshold133Percent[] = "133%";
501
502const char kOverscrollStartThreshold166Percent[] = "166%";
503
504const char kOverscrollStartThreshold200Percent[] = "200%";
505
506const char kScrollEndEffectName[] = "Scroll end effect";
507
508const char kScrollEndEffectDescription[] =
509 "Experimental scroll end effect in response to vertical overscroll.";
510
511const char kWebgl2Name[] = "WebGL 2.0";
512
513const char kWebgl2Description[] = "Allow web applications to access WebGL 2.0.";
514
515const char kWebglDraftExtensionsName[] = "WebGL Draft Extensions";
516
517const char kWebglDraftExtensionsDescription[] =
518 "Enabling this option allows web applications to access the WebGL "
519 "Extensions that are still in draft status.";
520
521const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
522
523const char kWebrtcHwDecodingDescription[] =
524 "Support in WebRTC for decoding video streams using platform hardware.";
525
526const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
527
528const char kWebrtcHwEncodingDescription[] =
529 "Support in WebRTC for encoding video streams using platform hardware.";
530
531const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
532
533const char kWebrtcHwH264EncodingDescription[] =
534 "Support in WebRTC for encoding h264 video streams using platform "
535 "hardware.";
536
braveyao96c9b342017-04-25 18:23:19537const char kWebrtcHwVP8EncodingName[] = "WebRTC hardware vp8 video encoding";
538
539const char kWebrtcHwVP8EncodingDescription[] =
540 "Support in WebRTC for encoding vp8 video streams using platform "
541 "hardware.";
542
vabr0215a8e2017-03-28 12:47:34543const char kWebrtcSrtpAesGcmName[] =
544 "Negotiation with GCM cipher suites for SRTP in WebRTC";
545
546const char kWebrtcSrtpAesGcmDescription[] =
547 "When enabled, WebRTC will try to negotiate GCM cipher suites for "
548 "SRTP.";
549
550const char kWebrtcStunOriginName[] = "WebRTC Stun origin header";
551
552const char kWebrtcStunOriginDescription[] =
553 "When enabled, Stun messages generated by WebRTC will contain the "
554 "Origin header.";
555
556const char kWebrtcEchoCanceller3Name[] = "WebRTC Echo Canceller 3.";
557
558const char kWebrtcEchoCanceller3Description[] =
559 "Experimental WebRTC echo canceller (AEC3).";
560
561#if defined(OS_ANDROID)
562
563const char kMediaScreenCaptureName[] = "Experimental ScreenCapture.";
564
565const char kMediaScreenCaptureDescription[] =
566 "Enable this option for experimental ScreenCapture feature on Android.";
567
568#endif // defined(OS_ANDROID)
569
570#if BUILDFLAG(ENABLE_WEBRTC)
571
572const char kWebrtcH264WithOpenh264FfmpegName[] =
573 "WebRTC H.264 software video encoder/decoder";
574
575const char kWebrtcH264WithOpenh264FfmpegDescription[] =
576 "When enabled, an H.264 software video encoder/decoder pair is "
577 "included. If a hardware encoder/decoder is also available it may be "
578 "used instead of this encoder/decoder.";
579
580#endif // BUILDFLAG(ENABLE_WEBRTC)
581
582const char kWebvrName[] = "WebVR";
583
584const char kWebvrDescription[] =
585 "Enabling this option allows web applications to access experimental "
586 "Virtual Reality APIs.";
587
mthiesse700b0b62017-05-19 01:37:31588#if BUILDFLAG(ENABLE_VR)
589
vabr0215a8e2017-03-28 12:47:34590const char kWebvrExperimentalRenderingName[] =
591 "WebVR experimental rendering optimizations";
592
593const char kWebvrExperimentalRenderingDescription[] =
594 "Enabling this option activates experimental rendering path "
595 "optimizations for WebVR.";
596
mthiesse700b0b62017-05-19 01:37:31597#endif // BUILDFLAG(ENABLE_VR)
598
vabr0215a8e2017-03-28 12:47:34599const char kGamepadExtensionsName[] = "Gamepad Extensions";
600
601const char kGamepadExtensionsDescription[] =
602 "Enabling this option allows web applications to access experimental "
603 "extensions to the Gamepad APIs.";
604
605#if defined(OS_ANDROID)
606
607const char kNewPhotoPickerName[] = "Enable new Photopicker";
608
609const char kNewPhotoPickerDescription[] =
610 "Activates the new picker for selecting photos.";
611
612#endif // defined(OS_ANDROID)
613
614#if defined(OS_ANDROID)
615
616const char kEnableOskOverscrollName[] = "Enable OSK Overscroll";
617
618const char kEnableOskOverscrollDescription[] =
619 "Enable OSK overscroll support. With this flag on, the OSK will only "
620 "resize the visual viewport.";
621
622#endif // defined(OS_ANDROID)
623
624const char kQuicName[] = "Experimental QUIC protocol";
625
626const char kQuicDescription[] = "Enable experimental QUIC protocol support.";
627
628const char kSslVersionMaxName[] = "Maximum TLS version enabled.";
629
630const char kSslVersionMaxDescription[] = "Set maximum enabled TLS version.";
631
632const char kSslVersionMaxTls12[] = "TLS 1.2";
633
634const char kSslVersionMaxTls13[] = "TLS 1.3";
635
636const char kEnableTokenBindingName[] = "Token Binding.";
637
638const char kEnableTokenBindingDescription[] = "Enable Token Binding support.";
639
vabr0215a8e2017-03-28 12:47:34640const char kPassiveDocumentEventListenersDescription[] =
641 "Forces touchstart, and touchmove event listeners on document level "
642 "targets (which haven't requested otherwise) to be treated as passive.";
643
644const char kPassiveDocumentEventListenersName[] =
645 "Document Level Event Listeners Passive Default";
646
647const char kPassiveEventListenersDueToFlingDescription[] =
648 "Forces touchstart, and first touchmove per scroll event listeners "
649 "during fling to be treated as passive.";
650
651const char kPassiveEventListenersDueToFlingName[] =
652 "Touch Event Listeners Passive Default During Fling";
653
654const char kPassiveEventListenerTrue[] = "True (when unspecified)";
655
656const char kPassiveEventListenerForceAllTrue[] = "Force All True";
657
658const char kPassiveEventListenerDefaultName[] =
659 "Passive Event Listener Override";
660
661const char kPassiveEventListenerDefaultDescription[] =
662 "Forces touchstart, touchmove, mousewheel and wheel event listeners "
663 "(which haven't requested otherwise) to be treated as passive. This "
664 "will break touch/wheel behavior on some websites but is useful for "
665 "demonstrating the potential performance benefits of adopting passive "
666 "event listeners.";
667
vabr0215a8e2017-03-28 12:47:34668const char kImportantSitesInCbdName[] =
669 "Important sites options in clear browsing data dialog";
670
671const char kImportantSitesInCbdDescription[] =
672 "Include the option to whitelist important sites in the clear browsing "
673 "data dialog.";
674
vabr0215a8e2017-03-28 12:47:34675#if defined(USE_ASH)
676
brettw81668cf2017-05-15 22:57:34677const char kAshShelfColorName[] = "Shelf color in Chrome OS system UI";
vabr0215a8e2017-03-28 12:47:34678
679const char kAshShelfColorDescription[] =
bruthigd8b95962017-03-31 19:38:34680 "Enables/disables the shelf color to be a derived from the wallpaper. The "
681 "--ash-shelf-color-scheme flag defines how that color is derived.";
vabr0215a8e2017-03-28 12:47:34682
bruthigd8b95962017-03-31 19:38:34683const char kAshShelfColorScheme[] = "Shelf color scheme in Chrome OS System UI";
vabr0215a8e2017-03-28 12:47:34684
bruthigd8b95962017-03-31 19:38:34685const char kAshShelfColorSchemeDescription[] =
686 "Specify how the color is derived from the wallpaper. This flag is only "
687 "used when the --ash-shelf-color flag is enabled. Defaults to Dark & Muted";
vabr0215a8e2017-03-28 12:47:34688
bruthigd8b95962017-03-31 19:38:34689const char kAshShelfColorSchemeLightVibrant[] = "Light & Vibrant";
vabr0215a8e2017-03-28 12:47:34690
bruthigd8b95962017-03-31 19:38:34691const char kAshShelfColorSchemeNormalVibrant[] = "Normal & Vibrant";
vabr0215a8e2017-03-28 12:47:34692
bruthigd8b95962017-03-31 19:38:34693const char kAshShelfColorSchemeDarkVibrant[] = "Dark & Vibrant";
vabr0215a8e2017-03-28 12:47:34694
bruthigd8b95962017-03-31 19:38:34695const char kAshShelfColorSchemeLightMuted[] = "Light & Muted";
696
697const char kAshShelfColorSchemeNormalMuted[] = "Normal & Muted";
698
699const char kAshShelfColorSchemeDarkMuted[] = "Dark & Muted";
vabr0215a8e2017-03-28 12:47:34700
vabr0215a8e2017-03-28 12:47:34701const char kAshEnableMirroredScreenName[] = "Enable mirrored screen mode.";
702
703const char kAshEnableMirroredScreenDescription[] =
704 "Enable the mirrored screen mode. This mode flips the screen image "
705 "horizontally.";
706
wutaob161bf22017-04-26 16:55:03707const char kAshDisableSmoothScreenRotationName[] =
708 "Disable smooth rotation animations.";
wutao2c0ca182017-04-06 22:40:54709
wutaob161bf22017-04-26 16:55:03710const char kAshDisableSmoothScreenRotationDescription[] =
711 "Disable smooth rotation animations.";
wutao2c0ca182017-04-06 22:40:54712
vabr0215a8e2017-03-28 12:47:34713const char kMaterialDesignInkDropAnimationFast[] = "Fast";
714
715const char kMaterialDesignInkDropAnimationSlow[] = "Slow";
716
717const char kMaterialDesignInkDropAnimationSpeedName[] =
718 "Material Design Ink Drop Animation Speed";
719
720const char kMaterialDesignInkDropAnimationSpeedDescription[] =
721 "Sets the speed of the experimental visual feedback animations for "
722 "material design.";
723
724const char kUiSlowAnimationsName[] = "Slow UI animations";
725
726const char kUiSlowAnimationsDescription[] = "Makes all UI animations slow.";
727
reveman5be07ac82017-04-14 01:06:05728const char kUiShowCompositedLayerBordersName[] =
729 "Show UI composited layer borders";
730
731const char kUiShowCompositedLayerBordersDescription[] =
732 "Show border around composited layers created by UI.";
733
734const char kUiShowCompositedLayerBordersRenderPass[] = "RenderPass";
735
736const char kUiShowCompositedLayerBordersSurface[] = "Surface";
737
738const char kUiShowCompositedLayerBordersLayer[] = "Layer";
739
740const char kUiShowCompositedLayerBordersAll[] = "All";
741
vabr0215a8e2017-03-28 12:47:34742#endif // defined(USE_ASH)
743
744const char kJavascriptHarmonyShippingName[] =
745 "Latest stable JavaScript features";
746
747const char kJavascriptHarmonyShippingDescription[] =
748 "Some web pages use legacy or non-standard JavaScript extensions that "
749 "may conflict with the latest JavaScript features. This flag allows "
750 "disabling support of those features for compatibility with such "
751 "pages.";
752
753const char kJavascriptHarmonyName[] = "Experimental JavaScript";
754
755const char kJavascriptHarmonyDescription[] =
756 "Enable web pages to use experimental JavaScript features.";
757
vabr0215a8e2017-03-28 12:47:34758const char kEnableAsmWasmName[] =
759 "Experimental Validate Asm.js and convert to WebAssembly when valid.";
760
761const char kEnableAsmWasmDescription[] =
762 R"*(Validate Asm.js when "use asm" is present and then convert to )*"
763 R"*(WebAssembly.)*";
764
765const char kEnableSharedArrayBufferName[] =
766 "Experimental enabled SharedArrayBuffer support in JavaScript.";
767
768const char kEnableSharedArrayBufferDescription[] =
769 "Enable SharedArrayBuffer support in JavaScript.";
770
771const char kEnableWasmName[] = "WebAssembly structured cloning support.";
vabr0215a8e2017-03-28 12:47:34772const char kEnableWasmDescription[] =
773 "Enable web pages to use WebAssembly structured cloning.";
774
mtrofinc8717b52017-04-19 14:27:22775const char kEnableWasmStreamingName[] =
776 "WebAssembly streaming compile/instantiate support.";
777const char kEnableWasmStreamingDescription[] =
778 "WebAssembly.{compile|instantiate} taking a Response as parameter.";
779
vabr0215a8e2017-03-28 12:47:34780#if defined(OS_ANDROID)
781
782const char kMediaDocumentDownloadButtonName[] =
783 "Download button when opening a page with media url.";
784
785const char kMediaDocumentDownloadButtonDescription[] =
786 "Allow a download button to show up when opening a page with media "
787 "url.";
788
789#endif // defined(OS_ANDROID)
790
791const char kSoftwareRasterizerName[] = "3D software rasterizer";
792
793const char kSoftwareRasterizerDescription[] =
794 "Fall back to a 3D software rasterizer when the GPU cannot be used.";
795
796const char kGpuRasterizationName[] = "GPU rasterization";
797
798const char kGpuRasterizationDescription[] =
799 "Use GPU to rasterize web content. Requires impl-side painting.";
800
801const char kForceGpuRasterization[] = "Force-enabled for all layers";
802
803const char kGpuRasterizationMsaaSampleCountName[] =
804 "GPU rasterization MSAA sample count.";
805
806const char kGpuRasterizationMsaaSampleCountDescription[] =
807 "Specify the number of MSAA samples for GPU rasterization.";
808
809const char kGpuRasterizationMsaaSampleCountZero[] = "0";
810
811const char kGpuRasterizationMsaaSampleCountTwo[] = "2";
812
813const char kGpuRasterizationMsaaSampleCountFour[] = "4";
814
815const char kGpuRasterizationMsaaSampleCountEight[] = "8";
816
817const char kGpuRasterizationMsaaSampleCountSixteen[] = "16";
818
819const char kSlimmingPaintInvalidationName[] = "Slimming paint invalidation.";
820
821const char kSlimmingPaintInvalidationDescription[] =
822 "Whether to enable a new paint invalidation system.";
823
824const char kExperimentalSecurityFeaturesName[] =
825 "Potentially annoying security features";
826
827const char kExperimentalSecurityFeaturesDescription[] =
828 "Enables several security features that will likely break one or more "
829 "pages that you visit on a daily basis. Strict mixed content checking, "
830 "for example. And locking powerful features to secure contexts. This "
831 "flag will probably annoy you.";
832
833const char kExperimentalWebPlatformFeaturesName[] =
834 "Experimental Web Platform features";
835
836const char kExperimentalWebPlatformFeaturesDescription[] =
837 "Enables experimental Web Platform features that are in development.";
838
839const char kExperimentalPointerEventName[] = "Pointer Events";
840
841const char kExperimentalPointerEventDescription[] =
842 "Enables support for the Pointer Events API. This is intended only for "
843 "testing by web developers.";
844
845const char kOriginTrialsName[] = "Origin Trials";
846
847const char kOriginTrialsDescription[] =
848 "Enables origin trials for controlling access to feature/API "
849 "experiments.";
850
851const char kBleAdvertisingInExtensionsName[] = "BLE Advertising in Chrome Apps";
852
853const char kBleAdvertisingInExtensionsDescription[] =
854 "Enables BLE Advertising in Chrome Apps. BLE Advertising might "
855 "interfere with regular use of Bluetooth Low Energy features.";
856
857const char kDevtoolsExperimentsName[] = "Developer Tools experiments";
858
859const char kDevtoolsExperimentsDescription[] =
860 "Enables Developer Tools experiments. Use Settings panel in Developer "
861 "Tools to toggle individual experiments.";
862
863const char kSilentDebuggerExtensionApiName[] = "Silent Debugging";
864
865const char kSilentDebuggerExtensionApiDescription[] =
866 "Do not show the infobar when an extension attaches to a page via "
867 "chrome.debugger API. This is required to debug extension background "
868 "pages.";
869
870const char kShowTouchHudName[] = "Show HUD for touch points";
871
872const char kShowTouchHudDescription[] =
873 "Enables a heads-up display at the top-left corner of the screen that "
874 "lists information about the touch-points on the screen.";
875
876const char kPreferHtmlOverPluginsName[] = "Prefer HTML over Flash";
877
878const char kPreferHtmlOverPluginsDescription[] =
879 "Prefer HTML content by hiding Flash from the list of plugins.";
880
881const char kAllowNaclSocketApiName[] = "NaCl Socket API.";
882
883const char kAllowNaclSocketApiDescription[] =
884 "Allows applications to use NaCl Socket API. Use only to test NaCl "
885 "plugins.";
886
887const char kRunAllFlashInAllowModeName[] =
888 R"*(Run all Flash content when Flash setting is set to "allow")*";
889
890const char kRunAllFlashInAllowModeDescription[] =
891 R"*(For sites that have been set to "allow" Flash content, run all )*"
892 R"*(content including any that has been deemed unimportant.)*";
893
894const char kPinchScaleName[] = "Pinch scale";
895
896const char kPinchScaleDescription[] =
897 "Enables experimental support for scale using pinch.";
898
vabr0215a8e2017-03-28 12:47:34899const char kReducedReferrerGranularityName[] =
900 "Reduce default 'referer' header granularity.";
901
902const char kReducedReferrerGranularityDescription[] =
903 "If a page hasn't set an explicit referrer policy, setting this flag "
904 "will reduce the amount of information in the 'referer' header for "
905 "cross-origin requests.";
906
907#if defined(OS_CHROMEOS)
908
sky527bea52017-05-15 19:15:14909const char kUseMusDescription[] = "Enable the Mojo UI service.";
vabr0215a8e2017-03-28 12:47:34910
sky527bea52017-05-15 19:15:14911const char kUseMusName[] = "Mus";
912
913const char kEnableMashDescription[] =
914 "Mash (UI, Chrome and ash in separate services)";
915
916const char kEnableMusDescription[] =
917 "Mus (UI in separate service, Chrome and ash in same service)";
vabr0215a8e2017-03-28 12:47:34918
919const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click";
920
921const char kAllowTouchpadThreeFingerClickDescription[] =
922 "Enables touchpad three-finger-click as middle button.";
923
924const char kAshEnableUnifiedDesktopName[] = "Unified desktop mode";
925
926const char kAshEnableUnifiedDesktopDescription[] =
927 "Enable unified desktop mode which allows a window to span multiple "
928 "displays.";
929
brettw5f9c1642017-05-14 17:12:48930const char kBootAnimationName[] = "Boot animation";
vabr0215a8e2017-03-28 12:47:34931
932const char kBootAnimationDescription[] =
933 "Wallpaper boot animation (except for OOBE case).";
934
hansberryc147785f2017-05-02 23:36:27935const char kTetherName[] = "Instant Tethering";
936
937const char kTetherDescription[] =
938 "Enables Instant Tethering. Instant Tethering allows your nearby Google "
939 "phone to share its Internet connection with this device.";
940
vabr0215a8e2017-03-28 12:47:34941#endif // defined(OS_CHROMEOS)
942
943const char kAcceleratedVideoDecodeName[] = "Hardware-accelerated video decode";
944
945const char kAcceleratedVideoDecodeDescription[] =
946 "Hardware-accelerated video decode where available.";
947
hubbee7499512017-04-05 22:35:04948const char kEnableHDRName[] = "HDR mode";
949
950const char kEnableHDRDescription[] =
951 "Enables HDR support on compatible displays.";
952
brettw5f9c1642017-05-14 17:12:48953const char kCloudImportName[] = "Cloud Import";
vabr0215a8e2017-03-28 12:47:34954
955const char kCloudImportDescription[] = "Allows the cloud-import feature.";
956
957const char kRequestTabletSiteName[] =
958 "Request tablet site option in the settings menu";
959
960const char kRequestTabletSiteDescription[] =
961 "Allows the user to request tablet site. Web content is often optimized "
962 "for tablet devices. When this option is selected the user agent string "
963 "is changed to indicate a tablet device. Web content optimized for "
964 "tablets is received there after for the current tab.";
965
966const char kDebugPackedAppName[] = "Debugging for packed apps";
967
968const char kDebugPackedAppDescription[] =
969 "Enables debugging context menu options such as Inspect Element for "
970 "packed applications.";
971
972const char kDropSyncCredentialName[] =
973 "Drop sync credentials from password manager";
974
975const char kDropSyncCredentialDescription[] =
976 "The password manager will not offer to save the credential used to "
977 "sync.";
978
979const char kPasswordGenerationName[] = "Password generation";
980
981const char kPasswordGenerationDescription[] =
982 "Allow the user to have Chrome generate passwords when it detects "
983 "account creation pages.";
984
985const char kPasswordForceSavingName[] = "Force-saving of passwords";
986
987const char kPasswordForceSavingDescription[] =
988 "Allow the user to manually enforce password saving instead of relying "
989 "on password manager's heuristics.";
990
991const char kManualPasswordGenerationName[] = "Manual password generation.";
992
993const char kManualPasswordGenerationDescription[] =
994 "Show a 'Generate Password' option on the context menu for all password "
995 "fields.";
996
brettw5f9c1642017-05-14 17:12:48997const char kShowAutofillSignaturesName[] = "Show autofill signatures.";
vabr0215a8e2017-03-28 12:47:34998
999const char kShowAutofillSignaturesDescription[] =
1000 "Annotates web forms with Autofill signatures as HTML attributes.";
1001
1002const char kSuggestionsWithSubStringMatchName[] =
1003 "Substring matching for Autofill suggestions";
1004
1005const char kSuggestionsWithSubStringMatchDescription[] =
1006 "Match Autofill suggestions based on substrings (token prefixes) rather "
1007 "than just prefixes.";
1008
1009const char kAffiliationBasedMatchingName[] =
1010 "Affiliation based matching in password manager";
1011
1012const char kAffiliationBasedMatchingDescription[] =
1013 "Allow credentials stored for Android applications to be filled into "
1014 "corresponding websites.";
1015
1016const char kProtectSyncCredentialName[] = "Autofill sync credential";
1017
1018const char kProtectSyncCredentialDescription[] =
1019 "How the password manager handles autofill for the sync credential.";
1020
1021const char kPasswordImportExportName[] = "Password import and export";
1022
1023const char kPasswordImportExportDescription[] =
1024 "Import and Export functionality in password settings.";
1025
1026const char kProtectSyncCredentialOnReauthName[] =
1027 "Autofill sync credential only for transactional reauth pages";
1028
1029const char kProtectSyncCredentialOnReauthDescription[] =
1030 "How the password manager handles autofill for the sync credential only "
1031 "for transactional reauth pages.";
1032
1033const char kIconNtpName[] = "Large icons on the New Tab page";
1034
1035const char kIconNtpDescription[] =
1036 "Enable the experimental New Tab page using large icons.";
1037
1038const char kPushApiBackgroundModeName[] = "Enable Push API background mode";
1039
1040const char kPushApiBackgroundModeDescription[] =
1041 "Enable background mode for the Push API. This allows Chrome to "
1042 "continue running after the last window is closed, and to launch at OS "
1043 "startup, if the Push API needs it.";
1044
brettw5f9c1642017-05-14 17:12:481045const char kEnableNavigationTracingName[] = "Enable navigation tracing";
vabr0215a8e2017-03-28 12:47:341046
1047const char kEnableNavigationTracingDescription[] =
1048 "This is to be used in conjunction with the trace-upload-url flag. "
1049 "WARNING: When enabled, Chrome will record performance data for every "
1050 "navigation and upload it to the URL specified by the trace-upload-url "
1051 "flag. The trace may include personally identifiable information (PII) "
1052 "such as the titles and URLs of websites you visit.";
1053
afakhry9e0a18b32017-06-05 19:23:141054const char kEnableNightLightName[] = "Enable Night Light";
1055const char kEnableNightLightDescription[] =
1056 "Enable the Night Light feature to control the color temperature of the "
1057 "screen.";
1058
apacible8246df62017-05-26 23:23:171059const char kEnablePictureInPictureName[] = "Enable picture in picture.";
1060
1061const char kEnablePictureInPictureDescription[] =
1062 "Enable the picture in picture feature for videos.";
1063
brettw5f9c1642017-05-14 17:12:481064const char kTraceUploadUrlName[] = "Trace label for navigation tracing";
vabr0215a8e2017-03-28 12:47:341065
1066const char kTraceUploadUrlDescription[] =
1067 "This is to be used in conjunction with the enable-navigation-tracing "
1068 "flag. Please select the label that best describes the recorded traces. "
1069 "This will choose the destination the traces are uploaded to. If you "
1070 "are not sure, select other. If left empty, no traces will be "
1071 "uploaded.";
1072
brettw5f9c1642017-05-14 17:12:481073const char kDisableAudioForDesktopShareName[] =
1074 "Disable Audio For Desktop Share";
vabr0215a8e2017-03-28 12:47:341075
1076const char kDisableAudioForDesktopShareDescription[] =
1077 "With this flag on, desktop share picker window will not let the user "
1078 "choose whether to share audio.";
1079
brettw5f9c1642017-05-14 17:12:481080const char kDisableTabForDesktopShareName[] =
vabr0215a8e2017-03-28 12:47:341081 "Disable Desktop Share with tab source";
1082
1083const char kDisableTabForDesktopShareDescription[] =
1084 "This flag controls whether users can choose a tab for desktop share.";
1085
1086const char kTraceUploadUrlChoiceOther[] = "Other";
1087
1088const char kTraceUploadUrlChoiceEmloading[] = "emloading";
1089
1090const char kTraceUploadUrlChoiceQa[] = "QA";
1091
1092const char kTraceUploadUrlChoiceTesting[] = "Testing";
1093
1094const char kSupervisedUserManagedBookmarksFolderName[] =
1095 "Managed bookmarks for supervised users";
1096
1097const char kSupervisedUserManagedBookmarksFolderDescription[] =
1098 "Enable the managed bookmarks folder for supervised users.";
1099
1100const char kSyncAppListName[] = "App Launcher sync";
1101
1102const char kSyncAppListDescription[] =
1103 "Enable App Launcher sync. This also enables Folders where available "
1104 "(non OSX).";
1105
brettw5f9c1642017-05-14 17:12:481106const char kDriveSearchInChromeLauncherName[] =
vabr0215a8e2017-03-28 12:47:341107 "Drive Search in Chrome App Launcher";
1108
1109const char kDriveSearchInChromeLauncherDescription[] =
1110 "Files from Drive will show up when searching the Chrome App Launcher.";
1111
1112const char kV8CacheOptionsName[] = "V8 caching mode.";
1113
1114const char kV8CacheOptionsDescription[] =
1115 "Caching mode for the V8 JavaScript engine.";
1116
1117const char kV8CacheOptionsParse[] = "Cache V8 parser data.";
1118
1119const char kV8CacheOptionsCode[] = "Cache V8 compiler data.";
1120
1121const char kV8CacheStrategiesForCacheStorageName[] =
1122 "V8 caching strategy for CacheStorage.";
1123
1124const char kV8CacheStrategiesForCacheStorageDescription[] =
1125 "Caching strategy of scripts in CacheStorage for the V8 JavaScript "
1126 "engine.";
1127
1128const char kV8CacheStrategiesForCacheStorageNormal[] = "Normal";
1129
1130const char kV8CacheStrategiesForCacheStorageAggressive[] = "Aggressive";
1131
vabr0215a8e2017-03-28 12:47:341132const char kMemoryCoordinatorName[] = "Memory coordinator";
1133
1134const char kMemoryCoordinatorDescription[] =
1135 "Enable memory coordinator instead of memory pressure listeners.";
1136
1137const char kServiceWorkerNavigationPreloadName[] =
1138 "Service worker navigation preload.";
1139
1140const char kServiceWorkerNavigationPreloadDescription[] =
1141 "Enable web pages to use the experimental service worker navigation "
1142 "preload API.";
1143
vabr0215a8e2017-03-28 12:47:341144// Data Reduction Proxy
1145
1146const char kDataReductionProxyLoFiName[] = "Data Saver Lo-Fi mode";
1147
1148const char kDataReductionProxyLoFiDescription[] =
1149 "Forces Data Saver Lo-Fi mode to be always enabled, enabled only on "
1150 "cellular connections, or disabled. Data Saver must be enabled for "
1151 "Lo-Fi mode to be used.";
1152
1153const char kDataReductionProxyLoFiAlwaysOn[] = "Always on";
1154
1155const char kDataReductionProxyLoFiCellularOnly[] = "Cellular only";
1156
1157const char kDataReductionProxyLoFiDisabled[] = "Disable";
1158
1159const char kDataReductionProxyLoFiSlowConnectionsOnly[] =
1160 "Slow connections only";
1161
1162const char kEnableDataReductionProxyLitePageName[] =
1163 "Lite pages for Data Saver Lo-Fi mode";
1164
1165const char kEnableDataReductionProxyLitePageDescription[] =
1166 "Enable lite pages in Data Saver Lo-Fi mode. Previews of pages will be "
1167 "shown instead of image placeholders when Lo-Fi is on. Data Saver and "
1168 "Lo-Fi must be enabled for lite pages to be shown.";
1169
ryansturm7e309dd2017-05-24 16:29:531170const char kDataReductionProxyServerAlternative[] =
1171 "Use alternative server configuration";
1172
1173const char kEnableDataReductionProxyServerExperimentName[] =
1174 "Use an alternative Data Saver back end configuration.";
1175
1176const char kEnableDataReductionProxyServerExperimentDescription[] =
1177 "Enable a different approach to saving data by configuring the back end "
1178 "server";
1179
vabr0215a8e2017-03-28 12:47:341180const char kDataReductionProxyCarrierTestName[] =
1181 "Enable a carrier-specific Data Reduction Proxy for testing.";
1182
1183const char kDataReductionProxyCarrierTestDescription[] =
1184 "Use a carrier-specific Data Reduction Proxy for testing.";
1185
1186const char kEnableDataReductionProxySavingsPromoName[] =
1187 "Data Saver 1 MB Savings Promo";
1188
1189const char kEnableDataReductionProxySavingsPromoDescription[] =
1190 "Enable a Data Saver promo for 1 MB of savings. If Data Saver has "
1191 "already saved 1 MB of data, then the promo will not be shown. Data "
1192 "Saver must be enabled for the promo to be shown.";
1193
megjablon553df4cf2017-04-01 01:29:551194#if defined(OS_ANDROID)
1195
1196const char kEnableDataReductionProxyMainMenuName[] =
megjablonacb36d12017-04-21 00:09:291197 "Enable Data Saver main menu footer";
megjablon553df4cf2017-04-01 01:29:551198
1199const char kEnableDataReductionProxyMainMenuDescription[] =
megjablonacb36d12017-04-21 00:09:291200 "Enables the Data Saver footer in the main menu";
megjablon553df4cf2017-04-01 01:29:551201
megjablon5e5d1c172017-04-06 23:55:111202const char kEnableDataReductionProxySiteBreakdownName[] =
1203 "Data Saver Site Breakdown";
1204
1205const char kEnableDataReductionProxySiteBreakdownDescription[] =
1206 "Enable the site breakdown on the Data Saver settings page.";
1207
ryansturm28839dee2017-05-05 17:34:271208const char kEnableOfflinePreviewsName[] = "Offline Page Previews";
1209
1210const char kEnableOfflinePreviewsDescription[] =
1211 "Enable showing offline page previews on slow networks.";
1212
ryansturmfaf92142017-05-11 19:07:471213const char kEnableClientLoFiName[] = "Client-side Lo-Fi previews";
1214
1215const char kEnableClientLoFiDescription[] =
1216 "Enable showing low fidelity images on some pages on slow networks.";
1217
megjablon553df4cf2017-04-01 01:29:551218#endif // defined(OS_ANDROID)
1219
vabr0215a8e2017-03-28 12:47:341220const char kLcdTextName[] = "LCD text antialiasing";
1221
1222const char kLcdTextDescription[] =
1223 "If disabled, text is rendered with grayscale antialiasing instead of "
1224 "LCD (subpixel) when doing accelerated compositing.";
1225
1226const char kDistanceFieldTextName[] = "Distance field text";
1227
1228const char kDistanceFieldTextDescription[] =
1229 "Text is rendered with signed distance fields rather than bitmap alpha "
1230 "masks.";
1231
1232const char kZeroCopyName[] = "Zero-copy rasterizer";
1233
1234const char kZeroCopyDescription[] =
1235 "Raster threads write directly to GPU memory associated with tiles.";
1236
1237const char kHideInactiveStackedTabCloseButtonsName[] =
1238 "Hiding close buttons on inactive tabs when stacked";
1239
1240const char kHideInactiveStackedTabCloseButtonsDescription[] =
1241 "Hides the close buttons of inactive tabs when the tabstrip is in "
1242 "stacked mode.";
1243
1244const char kDefaultTileWidthName[] = "Default tile width";
1245
1246const char kDefaultTileWidthDescription[] = "Specify the default tile width.";
1247
1248const char kDefaultTileWidthShort[] = "128";
1249
1250const char kDefaultTileWidthTall[] = "256";
1251
1252const char kDefaultTileWidthGrande[] = "512";
1253
1254const char kDefaultTileWidthVenti[] = "1024";
1255
1256const char kDefaultTileHeightName[] = "Default tile height";
1257
1258const char kDefaultTileHeightDescription[] = "Specify the default tile height.";
1259
1260const char kDefaultTileHeightShort[] = "128";
1261
1262const char kDefaultTileHeightTall[] = "256";
1263
1264const char kDefaultTileHeightGrande[] = "512";
1265
1266const char kDefaultTileHeightVenti[] = "1024";
1267
1268const char kNumRasterThreadsName[] = "Number of raster threads";
1269
1270const char kNumRasterThreadsDescription[] =
1271 "Specify the number of raster threads.";
1272
1273const char kNumRasterThreadsOne[] = "1";
1274
1275const char kNumRasterThreadsTwo[] = "2";
1276
1277const char kNumRasterThreadsThree[] = "3";
1278
1279const char kNumRasterThreadsFour[] = "4";
1280
1281const char kResetAppListInstallStateName[] =
1282 "Reset the App Launcher install state on every restart.";
1283
1284const char kResetAppListInstallStateDescription[] =
1285 "Reset the App Launcher install state on every restart. While this flag "
1286 "is set, Chrome will forget the launcher has been installed each time "
1287 "it starts. This is used for testing the App Launcher install flow.";
1288
1289#if defined(OS_CHROMEOS)
1290
1291const char kFirstRunUiTransitionsName[] =
1292 "Animated transitions in the first-run tutorial";
1293
1294const char kFirstRunUiTransitionsDescription[] =
1295 "Transitions during first-run tutorial are animated.";
1296
1297#endif // defined(OS_CHROMEOS)
1298
1299const char kNewBookmarkAppsName[] = "The new bookmark app system";
1300
1301const char kNewBookmarkAppsDescription[] =
1302 "Enables the new system for creating bookmark apps.";
1303
1304#if defined(OS_MACOSX)
1305
1306const char kHostedAppsInWindowsName[] =
1307 "Allow hosted apps to be opened in windows";
1308
1309const char kHostedAppsInWindowsDescription[] =
1310 "Allows hosted apps to be opened in windows instead of being limited to "
1311 "tabs.";
1312
1313const char kTabDetachingInFullscreenName[] =
1314 "Allow tab detaching in fullscreen";
1315
1316const char kTabDetachingInFullscreenDescription[] =
1317 "Allow tabs to detach from the tabstrip when in fullscreen mode on "
1318 "Mac.";
1319
1320const char kFullscreenToolbarRevealName[] =
1321 "Enables the toolbar in fullscreen to reveal itself.";
1322
1323const char kFullscreenToolbarRevealDescription[] =
1324 "Reveal the toolbar in fullscreen for a short period when the tab strip "
1325 "has changed.";
1326
1327const char kTabStripKeyboardFocusName[] = "Tab Strip Keyboard Focus";
1328
1329const char kTabStripKeyboardFocusDescription[] =
1330 "Enable keyboard focus for the tabs in the tab strip.";
1331
1332#endif // defined(OS_MACOSX)
1333
1334const char kHostedAppShimCreationName[] =
1335 "Creation of app shims for hosted apps on Mac";
1336
1337const char kHostedAppShimCreationDescription[] =
1338 "Create app shims on Mac when creating a hosted app.";
1339
1340const char kHostedAppQuitNotificationName[] =
1341 "Quit notification for hosted apps";
1342
1343const char kHostedAppQuitNotificationDescription[] =
1344 "Display a notification when quitting Chrome if hosted apps are "
1345 "currently running.";
1346
1347#if defined(OS_ANDROID)
1348
1349const char kPullToRefreshEffectName[] = "The pull-to-refresh effect";
1350
1351const char kPullToRefreshEffectDescription[] =
1352 "Page reloads triggered by vertically overscrolling content.";
1353
googleobc47e0b2017-05-05 05:11:121354const char kTranslateCompactUIName[] = "New Translate Infobar";
1355
1356const char kTranslateCompactUIDescription[] =
1357 "Enable the new Translate compact infobar UI.";
1358
vabr0215a8e2017-03-28 12:47:341359#endif // defined(OS_ANDROID)
1360
1361#if defined(OS_MACOSX)
1362
1363const char kTranslateNewUxName[] = "New Translate UX";
1364
1365const char kTranslateNewUxDescription[] =
1366 "Enable the new Translate bubble UX is offered instead of the infobar.";
1367
1368#endif // defined(OS_MACOSX)
1369
1370const char kTranslate2016q2UiName[] = "Translate 2016Q2 UI";
1371
1372const char kTranslate2016q2UiDescription[] =
1373 "Improved triggering logic and look for Translate Bubble UI";
1374
1375const char kTranslateLanguageByUlpName[] = "Translate Language by ULP";
1376
1377const char kTranslateLanguageByUlpDescription[] =
1378 "Improved translate target language and triggering logic by considering "
1379 "information from User Language Profile (ULP).";
1380
1381const char kViewsRectBasedTargetingName[] = "Rect-based targeting in views";
1382
1383const char kViewsRectBasedTargetingDescription[] =
1384 "Rect-based targeting uses a heuristic to determine the most probable "
1385 "target of a gesture, where the touch region is represented by a "
1386 "rectangle.";
1387
1388const char kPermissionActionReportingName[] = "Permission Action Reporting";
1389
1390const char kPermissionActionReportingDescription[] =
1391 "Enables permission action reporting to Safe Browsing servers for opted "
1392 "in users.";
1393
1394const char kPermissionsBlacklistName[] = "Permissions Blacklist";
1395
1396const char kPermissionsBlacklistDescription[] =
1397 "Enables the Permissions Blacklist, which blocks permissions for "
1398 "blacklisted sites for Safe Browsing users.";
1399
1400const char kThreadedScrollingName[] = "Threaded scrolling";
1401
1402const char kThreadedScrollingDescription[] =
1403 "Threaded handling of scroll-related input events. Disabling this will "
1404 "force all such scroll events to be handled on the main thread. Note "
1405 "that this can dramatically hurt scrolling performance of most websites "
1406 "and is intended for testing purposes only.";
1407
1408const char kHarfbuzzRendertextName[] = "HarfBuzz for UI text";
1409
1410const char kHarfbuzzRendertextDescription[] =
1411 "Enable cross-platform HarfBuzz layout engine for UI text. Doesn't "
1412 "affect web content.";
1413
1414const char kEmbeddedExtensionOptionsName[] = "Embedded extension options";
1415
1416const char kEmbeddedExtensionOptionsDescription[] =
1417 "Display extension options as an embedded element in "
1418 "chrome://extensions rather than opening a new tab.";
1419
1420const char kTabAudioMutingName[] = "Tab audio muting UI control";
1421
1422const char kTabAudioMutingDescription[] =
1423 "When enabled, the audio indicators in the tab strip double as tab "
1424 "audio mute controls. This also adds commands in the tab context menu "
1425 "for quickly muting multiple selected tabs.";
1426
1427const char kEasyUnlockBluetoothLowEnergyDiscoveryName[] =
1428 "Smart Lock Bluetooth Low Energy Discovery";
1429
1430const char kEasyUnlockBluetoothLowEnergyDiscoveryDescription[] =
1431 "Enables a Smart Lock setting that allows Chromebook to discover phones "
1432 "over Bluetooth Low Energy in order to unlock the Chromebook when the "
1433 "phone is in its proximity.";
1434
1435const char kEasyUnlockProximityDetectionName[] =
1436 "Smart Lock proximity detection";
1437
1438const char kEasyUnlockProximityDetectionDescription[] =
1439 "Enables a Smart Lock setting that restricts unlocking to only work "
1440 "when your phone is very close to (roughly, within an arm's length of) "
1441 "the Chrome device.";
1442
1443const char kWifiCredentialSyncName[] = "WiFi credential sync";
1444
1445const char kWifiCredentialSyncDescription[] =
1446 "Enables synchronizing WiFi network settings across devices. When "
1447 "enabled, the WiFi credential datatype is registered with Chrome Sync, "
1448 "and WiFi credentials are synchronized subject to user preferences. "
1449 "(See also, chrome://settings/syncSetup.)";
1450
1451const char kSyncSandboxName[] = "Use Chrome Sync sandbox";
1452
1453const char kSyncSandboxDescription[] =
1454 "Connects to the testing server for Chrome Sync.";
1455
1456const char kDatasaverPromptName[] = "Cellular Data Saver Prompt";
1457
1458const char kDatasaverPromptDescription[] =
1459 "Enables a prompt, which appears when a cellular network connection is "
1460 "detected, to take the user to the Data Saver extension page on Chrome "
1461 "Web Store.";
1462
1463const char kDatasaverPromptDemoMode[] = "Demo mode";
1464
vabr0215a8e2017-03-28 12:47:341465const char kTrySupportedChannelLayoutsName[] =
1466 "Causes audio output streams to check if channel layouts other than the "
1467 "default hardware layout are available.";
1468
1469const char kTrySupportedChannelLayoutsDescription[] =
1470 "Causes audio output streams to check if channel layouts other than the "
1471 "default hardware layout are available. Turning this on will allow the "
1472 "OS to do stereo to surround expansion if supported. May expose third "
1473 "party driver bugs, use with caution.";
1474
1475#if defined(OS_MACOSX)
1476
1477const char kAppInfoDialogName[] = "Toolkit-Views App Info Dialog.";
1478
1479const char kAppInfoDialogDescription[] =
1480 "Makes the Toolkit-Views based App Info dialog accessible from "
1481 "chrome://apps or chrome://extensions in place of the native extension "
1482 "permissions dialog, or the details link (which is a link to the Web "
1483 "Store).";
1484
1485const char kMacViewsNativeAppWindowsName[] = "Toolkit-Views App Windows.";
1486
1487const char kMacViewsNativeAppWindowsDescription[] =
1488 "Controls whether to use Toolkit-Views based Chrome App windows.";
1489
1490const char kMacViewsTaskManagerName[] = "Toolkit-Views Task Manager.";
1491
1492const char kMacViewsTaskManagerDescription[] =
1493 "Controls whether to use the Toolkit-Views based Task Manager.";
1494
1495const char kAppWindowCyclingName[] = "Custom Window Cycling for Chrome Apps.";
1496
1497const char kAppWindowCyclingDescription[] =
1498 "Changes the behavior of Cmd+` when a Chrome App becomes active. When "
1499 "enabled, Chrome Apps will not be cycled when Cmd+` is pressed from a "
1500 "browser window, and browser windows will not be cycled when a Chrome "
1501 "App is active.";
1502
1503#endif // defined(OS_MACOSX)
1504
1505#if defined(OS_CHROMEOS)
1506
1507const char kAcceleratedMjpegDecodeName[] =
1508 "Hardware-accelerated mjpeg decode for captured frame";
1509
1510const char kAcceleratedMjpegDecodeDescription[] =
1511 "Enable hardware-accelerated mjpeg decode for captured frame where "
1512 "available.";
1513
1514#endif // defined(OS_CHROMEOS)
1515
1516const char kSimplifiedFullscreenUiName[] =
1517 "Simplified full screen / mouse lock UI.";
1518
1519const char kSimplifiedFullscreenUiDescription[] =
1520 "A simplified new user experience when entering page-triggered full "
1521 "screen or mouse pointer lock states.";
1522
1523const char kExperimentalKeyboardLockUiName[] = "Experimental keyboard lock UI.";
1524
1525const char kExperimentalKeyboardLockUiDescription[] =
1526 "An experimental full screen with keyboard lock mode requiring users to "
1527 "hold Esc to exit.";
1528
1529#if defined(OS_ANDROID)
1530
1531const char kProgressBarAnimationName[] =
1532 "Android phone page loading progress bar animation";
1533
1534const char kProgressBarAnimationDescription[] =
1535 "Configures Android phone page loading progress bar animation.";
1536
1537const char kProgressBarAnimationLinear[] = "Linear";
1538
1539const char kProgressBarAnimationSmooth[] = "Smooth";
1540
1541const char kProgressBarAnimationSmoothIndeterminate[] = "Smooth indeterminate";
1542
1543const char kProgressBarAnimationFastStart[] = "Fast start";
1544
1545const char kProgressBarCompletionName[] =
1546 "Android phone page load progress bar completion time.";
1547
1548const char kProgressBarCompletionDescription[] =
1549 "Configures Android phone page loading progress bar completion time.";
1550
1551const char kProgressBarCompletionLoadEvent[] =
1552 R"*(Top loading frame's onload event ("everything" is done in the )*"
1553 R"*(page, historical behavior).)*";
1554
1555const char kProgressBarCompletionResourcesBeforeDcl[] =
1556 "Main frame's domContentLoaded and all resources loads started before "
1557 "domContentLoaded (iframes ignored).";
1558
1559const char kProgressBarCompletionDomContentLoaded[] =
1560 "Main frame's domContentLoaded (iframes ignored).";
1561
1562const char kProgressBarCompletionResourcesBeforeDclAndSameOriginIframes[] =
1563 "domContentLoaded and all resources loads started before "
1564 "domContentLoaded (main frame and same origin iframes).";
1565
1566#endif // defined(OS_ANDROID)
1567
1568const char kDisallowDocWrittenScriptsUiName[] =
1569 "Block scripts loaded via document.write";
1570
1571const char kDisallowDocWrittenScriptsUiDescription[] =
1572 "Disallows fetches for third-party parser-blocking scripts inserted "
1573 "into the main frame via document.write.";
1574
1575#if defined(OS_WIN)
1576
1577const char kEnableAppcontainerName[] = "Enable AppContainer Lockdown.";
1578
1579const char kEnableAppcontainerDescription[] =
1580 "Enables the use of an AppContainer on sandboxed processes to improve "
1581 "security.";
1582
1583#endif // defined(OS_WIN)
1584
elawrenced9978fc2017-05-02 02:45:191585#if defined(TOOLKIT_VIEWS) || (defined(OS_MACOSX) && !defined(OS_IOS))
1586
1587const char kShowCertLinkOnPageInfoName[] = "Show certificate link";
1588
1589const char kShowCertLinkOnPageInfoDescription[] =
1590 "Add a link from the Page Info bubble to the certificate viewer for HTTPS "
1591 "sites.";
1592
1593#endif // defined(TOOLKIT_VIEWS) || (defined(OS_MACOSX) && !defined(OS_IOS))
1594
vabr0215a8e2017-03-28 12:47:341595#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
1596
1597const char kAutofillCreditCardUploadName[] =
1598 "Enable offering upload of Autofilled credit cards";
1599
1600const char kAutofillCreditCardUploadDescription[] =
1601 "Enables a new option to upload credit cards to Google Payments for "
1602 "sync to all Chrome devices.";
1603
1604#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
1605
1606const char kForceUiDirectionName[] = "Force UI direction";
1607
1608const char kForceUiDirectionDescription[] =
1609 "Explicitly force the UI to left-to-right (LTR) or right-to-left (RTL) "
1610 "mode, overriding the default direction of the UI language.";
1611
krb6822b602017-05-02 14:53:211612const char kForceTextDirectionName[] = "Force text direction";
vabr0215a8e2017-03-28 12:47:341613
krb6822b602017-05-02 14:53:211614const char kForceTextDirectionDescription[] =
1615 "Explicitly force the per-character directionality of UI text to "
1616 "left-to-right (LTR) or right-to-left (RTL) mode, overriding the "
1617 "default direction of the character language.";
1618
1619const char kForceDirectionLtr[] = "Left-to-right";
1620
1621const char kForceDirectionRtl[] = "Right-to-left";
vabr0215a8e2017-03-28 12:47:341622
1623#if defined(OS_WIN) || defined(OS_LINUX)
1624
1625const char kEnableInputImeApiName[] = "Enable Input IME API";
1626
1627const char kEnableInputImeApiDescription[] =
1628 "Enable the use of chrome.input.ime API.";
1629
1630#endif // defined(OS_WIN) || defined(OS_LINUX)
1631
1632const char kEnableGroupedHistoryName[] = "Group history by domain";
1633
1634const char kEnableGroupedHistoryDescription[] =
1635 "Group history by website domain (i.e. google.com) on "
1636 "chrome://history.";
1637
vabr0215a8e2017-03-28 12:47:341638const char kSaveasMenuLabelExperimentName[] =
1639 "Switch 'Save as' menu labels to 'Download'";
1640
1641const char kSaveasMenuLabelExperimentDescription[] =
1642 "Enables an experiment to switch menu labels that use 'Save as...' to "
1643 "'Download'.";
1644
1645const char kEnableEnumeratingAudioDevicesName[] =
1646 "Experimentally enable enumerating audio devices.";
1647
1648const char kEnableEnumeratingAudioDevicesDescription[] =
1649 "Experimentally enable the use of enumerating audio devices.";
1650
1651const char kNewUsbBackendName[] = "Enable new USB backend";
1652
1653const char kNewUsbBackendDescription[] =
1654 "Enables the new experimental USB backend for Windows.";
1655
1656const char kNewOmniboxAnswerTypesName[] =
1657 "New omnibox answers in suggest types";
1658
1659const char kNewOmniboxAnswerTypesDescription[] =
1660 "Enables new types of answers in the omnibox suggest drop-down: "
1661 "currency conversions, dictionary definitions, sports scores, "
1662 "translations, and when is.";
1663
1664const char kEnableZeroSuggestRedirectToChromeName[] =
1665 "Experimental contextual omnibox suggestion";
1666
1667const char kEnableZeroSuggestRedirectToChromeDescription[] =
1668 "Change omnibox contextual suggestions to an experimental source. Note "
1669 "that this is not an on/off switch for contextual omnibox and it only "
1670 "applies to suggestions provided before the user starts typing a URL or "
1671 "a search query (i.e. zero suggest).";
1672
1673const char kFillOnAccountSelectName[] = "Fill passwords on account selection";
1674
1675const char kFillOnAccountSelectDescription[] =
1676 "Filling of passwords when an account is explicitly selected by the "
1677 "user rather than autofilling credentials on page load.";
1678
1679const char kEnableClearBrowsingDataCountersName[] =
1680 "Enable Clear browsing data counters.";
1681
1682const char kEnableClearBrowsingDataCountersDescription[] =
1683 "Shows data volume counters in the Clear browsing data dialog.";
1684
1685#if defined(OS_ANDROID)
1686
1687const char kTabsInCbdName[] = "Enable tabs for the Clear Browsing Data dialog.";
1688
1689const char kTabsInCbdDescription[] =
1690 "Enables a basic and an advanced tab for the Clear Browsing Data "
1691 "dialog.";
1692
1693#endif // defined(OS_ANDROID)
1694
brettw5f9c1642017-05-14 17:12:481695const char kNotificationsNativeFlagName[] = "Enable native notifications.";
vabr0215a8e2017-03-28 12:47:341696
1697const char kNotificationsNativeFlagDescription[] =
1698 "Enable support for using the native notification toasts and "
1699 "notification center on platforms where these are available.";
1700
1701#if defined(OS_ANDROID)
1702
1703const char kEnableAndroidSpellcheckerDescription[] =
1704 "Enables use of the Android spellchecker.";
1705
1706const char kEnableAndroidSpellcheckerName[] = "Enable spell checking";
1707
1708#endif // defined(OS_ANDROID)
1709
1710const char kEnableWebNotificationCustomLayoutsName[] =
1711 "Enable custom layouts for Web Notifications.";
1712
1713const char kEnableWebNotificationCustomLayoutsDescription[] =
1714 "Enable custom layouts for Web Notifications. They will have subtle "
1715 "layout improvements that are otherwise not possible.";
1716
vabr0215a8e2017-03-28 12:47:341717const char kGoogleProfileInfoName[] = "Google profile name and icon";
1718
1719const char kGoogleProfileInfoDescription[] =
1720 "Enables using Google information to populate the profile name and icon "
1721 "in the avatar menu.";
1722
brettw5f9c1642017-05-14 17:12:481723const char kOfferStoreUnmaskedWalletCardsName[] =
vabr0215a8e2017-03-28 12:47:341724 "Google Payments card saving checkbox";
1725
1726const char kOfferStoreUnmaskedWalletCardsDescription[] =
1727 "Show the checkbox to offer local saving of a credit card downloaded "
1728 "from the server.";
1729
1730const char kOfflineAutoReloadName[] = "Offline Auto-Reload Mode";
1731
1732const char kOfflineAutoReloadDescription[] =
1733 "Pages that fail to load while the browser is offline will be "
1734 "auto-reloaded when the browser is online again.";
1735
1736const char kOfflineAutoReloadVisibleOnlyName[] =
1737 "Only Auto-Reload Visible Tabs";
1738
1739const char kOfflineAutoReloadVisibleOnlyDescription[] =
1740 "Pages that fail to load while the browser is offline will only be "
1741 "auto-reloaded if their tab is visible.";
1742
1743const char kShowSavedCopyName[] = "Show Saved Copy Button";
1744
1745const char kShowSavedCopyDescription[] =
1746 "When a page fails to load, if a stale copy of the page exists in the "
1747 "browser cache, a button will be presented to allow the user to load "
1748 "that stale copy. The primary enabling choice puts the button in the "
1749 "most salient position on the error page; the secondary enabling choice "
1750 "puts it secondary to the reload button.";
1751
1752const char kEnableShowSavedCopyPrimary[] = "Enable: Primary";
1753
1754const char kEnableShowSavedCopySecondary[] = "Enable: Secondary";
1755
1756const char kDisableShowSavedCopy[] = "Disable";
1757
1758#if defined(OS_CHROMEOS)
1759
vabr0215a8e2017-03-28 12:47:341760const char kVirtualKeyboardName[] = "Virtual Keyboard";
1761
1762const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
1763
1764const char kVirtualKeyboardOverscrollName[] = "Virtual Keyboard Overscroll";
1765
1766const char kVirtualKeyboardOverscrollDescription[] =
1767 "Enables virtual keyboard overscroll support.";
1768
1769const char kInputViewName[] = "Input views";
1770
1771const char kInputViewDescription[] =
1772 "Enable IME extensions to supply custom views for user input such as "
1773 "virtual keyboards.";
1774
1775const char kNewKoreanImeName[] = "New Korean IME";
1776
1777const char kNewKoreanImeDescription[] =
1778 "New Korean IME, which is based on Google Input Tools' HMM engine.";
1779
1780const char kPhysicalKeyboardAutocorrectName[] = "Physical keyboard autocorrect";
1781
1782const char kPhysicalKeyboardAutocorrectDescription[] =
1783 "Enable physical keyboard autocorrect for US keyboard, which can "
1784 "provide suggestions as typing on physical keyboard.";
1785
1786const char kVoiceInputName[] = "Voice input on virtual keyboard";
1787
1788const char kVoiceInputDescription[] =
1789 "Enables voice input on virtual keyboard.";
1790
1791const char kExperimentalInputViewFeaturesName[] =
1792 "Experimental input view features";
1793
1794const char kExperimentalInputViewFeaturesDescription[] =
1795 "Enable experimental features for IME input views.";
1796
1797const char kFloatingVirtualKeyboardName[] = "Floating virtual keyboard.";
1798
1799const char kFloatingVirtualKeyboardDescription[] =
1800 "Enable/Disable floating virtual keyboard.";
1801
1802const char kGestureTypingName[] = "Gesture typing for the virtual keyboard.";
1803
1804const char kGestureTypingDescription[] =
1805 "Enable/Disable gesture typing option in the settings page for the "
1806 "virtual keyboard.";
1807
1808const char kGestureEditingName[] = "Gesture editing for the virtual keyboard.";
1809
1810const char kGestureEditingDescription[] =
1811 "Enable/Disable gesture editing option in the settings page for the "
1812 "virtual keyboard.";
1813
1814const char kCaptivePortalBypassProxyName[] =
1815 "Bypass proxy for Captive Portal Authorization";
1816
1817const char kCaptivePortalBypassProxyDescription[] =
1818 "If proxy is configured, it usually prevents from authorization on "
1819 "different captive portals. This enables opening captive portal "
1820 "authorization dialog in a separate window, which ignores proxy "
1821 "settings.";
1822
1823const char kTouchscreenCalibrationName[] =
1824 "Enable/disable touchscreen calibration option in material design "
1825 "settings";
1826
1827const char kTouchscreenCalibrationDescription[] =
1828 "If enabled, the user can calibrate the touch screen displays in "
1829 "chrome://md-settings/display.";
1830
yamaguchid99a64b2017-05-12 15:33:491831const char kTeamDrivesName[] = "Enable Team Drives Integration";
1832const char kTeamDrivesDescription[] =
1833 "If enabled, files under Team Drives will appear in the Files app.";
1834
vabr0215a8e2017-03-28 12:47:341835#endif // defined(OS_CHROMEOS)
1836
1837// Strings for controlling credit card assist feature in about:flags.
1838
1839const char kCreditCardAssistName[] = "Credit Card Assisted Filling";
1840
1841const char kCreditCardAssistDescription[] =
1842 "Enable assisted credit card filling on certain sites.";
1843
1844// Strings for controlling credit card scanning feature in about:flags.
1845
1846// Simple Cache Backend experiment.
1847
1848const char kSimpleCacheBackendName[] = "Simple Cache for HTTP";
1849
1850const char kSimpleCacheBackendDescription[] =
1851 "The Simple Cache for HTTP is a new cache. It relies on the filesystem "
1852 "for disk space allocation.";
1853
1854// Spelling feedback field trial.
1855
1856const char kSpellingFeedbackFieldTrialName[] = "Spelling Feedback Field Trial";
1857
1858const char kSpellingFeedbackFieldTrialDescription[] =
1859 "Enable the field trial for sending user feedback to spelling service.";
1860
1861// Web MIDI API.
1862
1863const char kWebMidiName[] = "Web MIDI API";
1864
1865const char kWebMidiDescription[] = "Enable Web MIDI API experimental support.";
1866
1867// Site per process mode
1868
creisc3af64f2017-04-12 17:22:381869const char kSitePerProcessName[] = "Strict site isolation";
vabr0215a8e2017-03-28 12:47:341870
1871const char kSitePerProcessDescription[] =
creisc3af64f2017-04-12 17:22:381872 "Highly experimental security mode that ensures each renderer process "
1873 "contains pages from at most one site. In this mode, out-of-process "
1874 "iframes will be used whenever an iframe is cross-site.";
vabr0215a8e2017-03-28 12:47:341875
1876// Top document isolation mode
1877
1878const char kTopDocumentIsolationName[] = "Top document isolation";
1879
1880const char kTopDocumentIsolationDescription[] =
1881 "Highly experimental performance mode where cross-site iframes are kept "
1882 "in a separate process from the top document. In this mode, iframes "
1883 "from different third-party sites will be allowed to share a process.";
1884
1885// Cross process guest frames isolation mode
1886
1887const char kCrossProcessGuestViewIsolationName[] =
1888 "Cross process frames for guests";
1889
1890const char kCrossProcessGuestViewIsolationDescription[] =
1891 "Highly experimental where guests such as <webview> are implemented "
1892 "on the out-of-process iframe infrastructure.";
1893
1894// Task Scheduler
1895
1896const char kBrowserTaskSchedulerName[] = "Task Scheduler";
1897
1898const char kBrowserTaskSchedulerDescription[] =
1899 "Enables redirection of some task posting APIs to the task scheduler.";
1900
1901// Arc authorization
1902
1903#if defined(OS_CHROMEOS)
1904
1905const char kArcUseAuthEndpointName[] = "Android apps authorization point";
1906
1907const char kArcUseAuthEndpointDescription[] =
1908 "Enable Android apps authorization point to automatic sign-in in OptIn "
1909 "flow.";
1910
1911#endif // defined(OS_CHROMEOS)
1912
1913// Autofill experiment flags
1914
1915const char kSingleClickAutofillName[] = "Single-click autofill";
1916
1917const char kSingleClickAutofillDescription[] =
1918 "Make autofill suggestions on initial mouse click on a form element.";
1919
1920#if defined(OS_ANDROID)
1921
1922const char kAutofillAccessoryViewName[] =
1923 "Autofill suggestions as keyboard accessory view";
1924
1925const char kAutofillAccessoryViewDescription[] =
1926 "Shows Autofill suggestions on top of the keyboard rather than in a "
1927 "dropdown.";
1928
1929#endif // defined(OS_ANDROID)
1930
1931// Reader mode experiment flags
1932
1933#if defined(OS_ANDROID)
1934
1935const char kReaderModeHeuristicsName[] = "Reader Mode triggering";
1936
1937const char kReaderModeHeuristicsDescription[] =
1938 "Determines what pages the Reader Mode button is shown on.";
1939
1940const char kReaderModeHeuristicsMarkup[] = "With article structured markup";
1941
1942const char kReaderModeHeuristicsAdaboost[] = "Appears to be an article";
1943
1944const char kReaderModeHeuristicsAlwaysOff[] = "Never";
1945
1946const char kReaderModeHeuristicsAlwaysOn[] = "Always";
1947
1948#endif // defined(OS_ANDROID)
1949
1950// Chrome home flags
1951
1952#if defined(OS_ANDROID)
1953
1954const char kChromeHomeName[] = "Chrome Home";
1955
1956const char kChromeHomeDescription[] = "Enables Chrome Home on Android.";
1957
mdjonesd484eac2017-05-02 21:34:451958const char kChromeHomeExpandButtonName[] = "Chrome Home Expand Button";
1959
1960const char kChromeHomeExpandButtonDescription[] =
1961 "Enables the expand button for Chrome Home.";
1962
Matthew Jonesd349741f2017-05-26 21:07:521963const char kChromeHomeSwipeLogicName[] = "Chrome Home Swipe Logic";
1964
1965const char kChromeHomeSwipeLogicDescription[] =
1966 "Various swipe logic options for Chrome Home for sheet expansion.";
1967
1968const char kChromeHomeSwipeLogicRestrictArea[] = "Restrict swipable area";
1969
vabr0215a8e2017-03-28 12:47:341970#endif // defined(OS_ANDROID)
1971
Dirk Pranke527967f2017-06-05 19:23:371972// In-Product Help flags
1973
1974#if defined(OS_ANDROID)
1975
1976const char kIphDemoModeChoiceName[] = "In-Product Help Demo Mode";
1977
1978const char kIphDemoModeChoiceDescription[] =
1979 "Selects the In-Product Help demo mode.";
1980
1981#endif // defined(OS_ANDROID)
1982
vabr0215a8e2017-03-28 12:47:341983// Settings window flags
1984
1985const char kSettingsWindowName[] = "Show settings in a window";
1986
1987const char kSettingsWindowDescription[] =
1988 "Settings will be shown in a dedicated window instead of as a browser "
1989 "tab.";
1990
vabr0215a8e2017-03-28 12:47:341991// Extension Content Verification
1992
1993const char kExtensionContentVerificationName[] =
1994 "Extension Content Verification";
1995
1996const char kExtensionContentVerificationDescription[] =
1997 "This flag can be used to turn on verification that the contents of the "
1998 "files on disk for extensions from the webstore match what they're "
1999 "expected to be. This can be used to turn on this feature if it would "
2000 "not otherwise have been turned on, but cannot be used to turn it off "
2001 "(because this setting can be tampered with by malware).";
2002
2003const char kExtensionContentVerificationBootstrap[] =
2004 "Bootstrap (get expected hashes, but do not enforce them)";
2005
2006const char kExtensionContentVerificationEnforce[] =
2007 "Enforce (try to get hashes, and enforce them if successful)";
2008
2009const char kExtensionContentVerificationEnforceStrict[] =
2010 "Enforce strict (hard fail if we can't get hashes)";
2011
2012// Built-in hotword detection display strings
2013
2014const char kExperimentalHotwordHardwareName[] =
2015 "Simulated hardware 'Ok Google' features";
2016
2017const char kExperimentalHotwordHardwareDescription[] =
2018 "Enables an experimental version of 'Ok Google' hotword detection "
2019 "features that have a hardware dependency.";
2020
2021// Message center strings
2022
2023const char kMessageCenterAlwaysScrollUpUponRemovalName[] =
2024 "Experiments that message center always scroll up upon notification "
2025 "removal";
2026
2027const char kMessageCenterAlwaysScrollUpUponRemovalDescription[] =
2028 "Enables experiment that message center always scroll up when a "
2029 "notification is removed.";
2030
yoshikif14ac822017-05-31 04:26:142031const char kMessageCenterNewStyleNotificationName[] = "New style notification";
2032
2033const char kMessageCenterNewStyleNotificationDescription[] =
2034 "Enables the experiment style of material-design notification";
2035
vabr0215a8e2017-03-28 12:47:342036const char kCastStreamingHwEncodingName[] =
2037 "Cast Streaming hardware video encoding";
2038
2039const char kCastStreamingHwEncodingDescription[] =
2040 "This option enables support in Cast Streaming for encoding video "
2041 "streams using platform hardware.";
2042
brettw5f9c1642017-05-14 17:12:482043const char kAllowInsecureLocalhostName[] =
vabr0215a8e2017-03-28 12:47:342044 "Allow invalid certificates for resources loaded from localhost.";
2045
2046const char kAllowInsecureLocalhostDescription[] =
2047 "Allows requests to localhost over HTTPS even when an invalid "
2048 "certificate is presented.";
2049
2050#if defined(OS_WIN) || defined(OS_MACOSX)
2051
2052// Tab discarding
2053
2054const char kAutomaticTabDiscardingName[] = "Automatic tab discarding";
2055
2056const char kAutomaticTabDiscardingDescription[] =
2057 "If enabled, tabs get automatically discarded from memory when the "
2058 "system memory is low. Discarded tabs are still visible on the tab "
2059 "strip and get reloaded when clicked on. Info about discarded tabs can "
2060 "be found at chrome://discards.";
2061
2062#endif // defined(OS_WIN) || defined(OS_MACOSX)
2063
2064#if defined(OS_ANDROID)
2065
2066const char kOfflineBookmarksName[] = "Enable offline bookmarks";
2067
2068const char kOfflineBookmarksDescription[] =
2069 "Enable saving bookmarked pages for offline viewing.";
2070
2071const char kNtpOfflinePagesName[] = "Enable NTP offline pages";
2072
2073const char kNtpOfflinePagesDescription[] =
2074 "Enables badging of offline pages on the New Tab page. Only relevant if "
2075 "offline pages are enabled.";
2076
2077const char kOfflinePagesAsyncDownloadName[] =
2078 R"*(Enables showing "DOWNLOAD PAGE LATER" button in error pages.)*";
2079
2080const char kOfflinePagesAsyncDownloadDescription[] =
2081 R"*(Enables showing "DOWNLOAD PAGE LATER" button in error pages such )*"
2082 R"*(that the user can click on it to download the page later.)*";
2083
2084const char kOfflinePagesSvelteConcurrentLoadingName[] =
2085 "Enables concurrent background loading on svelte.";
2086
2087const char kOfflinePagesSvelteConcurrentLoadingDescription[] =
2088 "Enables concurrent background loading (or downloading) of pages on "
2089 "Android svelte (512MB RAM) devices. Otherwise, background loading will "
2090 "happen when the svelte device is idle.";
2091
petewil2abcf042017-04-10 21:45:002092const char kOfflinePagesLoadSignalCollectingName[] =
2093 "Enables collecting load timing data for offline page snapshots.";
2094
2095const char kOfflinePagesLoadSignalCollectingDescription[] =
2096 "Enables loading completeness data collection while writing an offline "
2097 "page. This data is collected in the snapshotted offline page to allow "
2098 "data analysis to improve deciding when to make the offline snapshot.";
2099
vabr0215a8e2017-03-28 12:47:342100const char kOfflinePagesPrefetchingName[] =
2101 "Enables suggested offline pages to be prefetched.";
2102
2103const char kOfflinePagesPrefetchingDescription[] =
2104 "Enables suggested offline pages to be prefetched, so useful content is "
2105 "available while offline.";
2106
2107const char kOfflinePagesSharingName[] = "Enables offline pages to be shared.";
2108
2109const char kOfflinePagesSharingDescription[] =
2110 "Enables the saved offline pages to be shared via other applications.";
2111
2112const char kBackgroundLoaderForDownloadsName[] =
2113 "Enables background downloading of pages.";
2114
2115const char kBackgroundLoaderForDownloadsDescription[] =
2116 "Enables downloading pages in the background in case page is not yet "
2117 "loaded in current tab.";
2118
2119const char kNewBackgroundLoaderName[] =
2120 "Use background loader instead of prerenderer to load pages.";
2121
2122const char kNewBackgroundLoaderDescription[] =
2123 "Use background loader instead of prerenderer to asynchronously "
2124 "download pages.";
2125
2126const char kNtpPopularSitesName[] = "Show popular sites on the New Tab page";
2127
2128const char kNtpPopularSitesDescription[] =
2129 "Pre-populate the New Tab page with popular sites.";
2130
2131const char kNtpSwitchToExistingTabName[] =
2132 "Switch to an existing tab for New Tab Page suggestions.";
2133
2134const char kNtpSwitchToExistingTabDescription[] =
2135 "When opening a suggested webpage from the New Tab Page, if a tab is "
2136 "already open for the suggestion, switch to that one instead of loading "
2137 "the suggestion in the new tab.";
2138
2139const char kNtpSwitchToExistingTabMatchUrl[] = "Match by URL";
2140
2141const char kNtpSwitchToExistingTabMatchHost[] = "Match by Hostname";
2142
2143const char kUseAndroidMidiApiName[] = "Use Android Midi API";
2144
2145const char kUseAndroidMidiApiDescription[] =
2146 "Use Android Midi API for WebMIDI (effective only with Android M+ "
2147 "devices).";
2148
2149const char kWebPaymentsModifiersName[] = "Enable web payment modifiers";
2150
2151const char kWebPaymentsModifiersDescription[] =
2152 "If the website provides modifiers in the payment request, show the "
2153 "custom total for each payment instrument, update the shopping cart "
2154 "when instruments are switched, and send modified payment method "
2155 "specific data to the payment app.";
2156
lbargu8bb0fabc2017-05-19 14:53:112157const char kXGEOVisibleNetworksName[] = "Enable XGEO Visible Networks";
2158
2159const char kXGEOVisibleNetworksDescription[] =
2160 "If location permissions are granted, include visible networks in the XGEO "
2161 "Header for omnibox queries. This will only happen if location is not "
2162 "fresh or not available (for example, due to a cold start).";
2163
vabr0215a8e2017-03-28 12:47:342164#endif // defined(OS_ANDROID)
2165
2166#if defined(OS_WIN)
2167
2168// Exporting tracing events to ETW
2169
2170const char kTraceExportEventsToEtwName[] =
2171 "Enable exporting of tracing events to ETW.";
2172
2173const char kTraceExportEventsToEtwDesription[] =
2174 "If enabled, trace events will be exported to the Event Tracing for "
2175 "Windows (ETW) and can then be captured by tools such as UIForETW or "
2176 "Xperf.";
2177
2178const char kMergeKeyCharEventsName[] =
2179 "Enable or disable merging merging the key event (WM_KEY*) with char "
2180 "event (WM_CHAR).";
2181
2182const char kMergeKeyCharEventsDescription[] =
etienneb9a4b5302017-06-08 06:28:462183 "If disabled, Chrome will handle WM_KEY* and WM_CHAR separately.";
vabr0215a8e2017-03-28 12:47:342184
2185const char kUseWinrtMidiApiName[] = "Use Windows Runtime MIDI API";
2186
2187const char kUseWinrtMidiApiDescription[] =
2188 "Use Windows Runtime MIDI API for WebMIDI (effective only on Windows 10 "
2189 "or later).";
2190
2191#endif // defined(OS_WIN)
2192
2193#if defined(OS_ANDROID)
2194
2195// Data Use
2196
2197// Update Menu Item Flags
2198
2199const char kUpdateMenuItemName[] = "Force show update menu item";
2200
2201const char kUpdateMenuItemDescription[] =
2202 R"*(When enabled, an "Update Chrome" item will be shown in the app )*"
2203 R"*(menu.)*";
2204
twellingtonce0b29ba2017-04-19 21:01:172205const char kUpdateMenuItemCustomSummaryDescription[] =
vabr0215a8e2017-03-28 12:47:342206 "When this flag and the force show update menu item flag are enabled, a "
twellingtonce0b29ba2017-04-19 21:01:172207 "custom summary string will be displayed below the update menu item.";
vabr0215a8e2017-03-28 12:47:342208
twellingtonce0b29ba2017-04-19 21:01:172209const char kUpdateMenuItemCustomSummaryName[] =
2210 "Update menu item custom summary";
vabr0215a8e2017-03-28 12:47:342211
2212const char kUpdateMenuBadgeName[] = "Force show update menu badge";
2213
2214const char kUpdateMenuBadgeDescription[] =
2215 "When enabled, an update badge will be shown on the app menu button.";
2216
2217const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
2218
2219const char kSetMarketUrlForTestingDescription[] =
2220 "When enabled, sets the market URL for use in testing the update menu "
2221 "item.";
2222
2223#endif // defined(OS_ANDROID)
2224
2225#if defined(OS_ANDROID)
2226
2227const char kHerbPrototypeChoicesName[] = "Switch preferred flavor of Herb";
2228
2229const char kHerbPrototypeChoicesDescription[] =
2230 "Switching this option changes which tab management prototype is being "
2231 "tested.";
2232
2233const char kHerbPrototypeFlavorElderberry[] =
2234 "ELDERBERRY: All View Intents in CCT v2";
2235
2236const char kEnableSpecialLocaleName[] =
2237 "Enable custom logic for special locales.";
2238
2239const char kEnableSpecialLocaleDescription[] =
2240 "Enable custom logic for special locales. In this mode, Chrome might "
2241 "behave differently in some locales.";
2242
2243// WebApks
2244
2245const char kEnableWebapk[] = "Enable improved add to Home screen";
2246
2247const char kEnableWebapkDescription[] =
2248 R"*(Packages "Progressive Web Apps" so that they can integrate more )*"
2249 R"*(deeply with Android. A Chrome server is used to package sites. In )*"
2250 R"*(Chrome Canary and Chrome Dev, this requires “Untrusted )*"
2251 R"*(sources” to be enabled in Android security settings.)*";
2252
2253#endif // defined(OS_ANDROID)
2254
2255const char kEnableBrotliName[] = "Brotli Content-Encoding.";
2256
2257const char kEnableBrotliDescription[] =
2258 "Enable Brotli Content-Encoding support.";
2259
2260const char kEnableWebfontsInterventionName[] =
2261 "New version of User Agent Intervention for WebFonts loading.";
2262
2263const char kEnableWebfontsInterventionDescription[] =
2264 "Enable New version of User Agent Intervention for WebFonts loading.";
2265
2266const char kEnableWebfontsInterventionV2ChoiceDefault[] = "Default";
2267
2268const char kEnableWebfontsInterventionV2ChoiceEnabledWith2g[] = "Enabled: 2G";
2269
2270const char kEnableWebfontsInterventionV2ChoiceEnabledWith3g[] = "Enabled: 3G";
2271
2272const char kEnableWebfontsInterventionV2ChoiceEnabledWithSlow2g[] =
2273 "Enabled: Slow 2G";
2274
2275const char kEnableWebfontsInterventionV2ChoiceDisabled[] = "Disabled";
2276
2277const char kEnableWebfontsInterventionTriggerName[] =
2278 "Trigger User Agent Intervention for WebFonts loading always.";
2279
2280const char kEnableWebfontsInterventionTriggerDescription[] =
2281 "Enable to trigger User Agent Intervention for WebFonts loading always. "
2282 "This flag affects only when the intervention is enabled.";
2283
2284const char kEnableScrollAnchoringName[] = "Scroll Anchoring";
2285
2286const char kEnableScrollAnchoringDescription[] =
2287 "Adjusts scroll position to prevent visible jumps when offscreen "
2288 "content changes.";
2289
2290#if defined(OS_CHROMEOS)
2291
skaua9afc0212017-04-07 19:18:472292const char kDisableNativeCupsName[] = "Native CUPS";
vabr0215a8e2017-03-28 12:47:342293
skaua9afc0212017-04-07 19:18:472294const char kDisableNativeCupsDescription[] =
2295 "Disable the use of the native CUPS printing backend.";
vabr0215a8e2017-03-28 12:47:342296
2297const char kEnableAndroidWallpapersAppName[] = "Android Wallpapers App";
2298
2299const char kEnableAndroidWallpapersAppDescription[] =
2300 "Enables the Android Wallpapers App as the default Wallpaper App on "
2301 "Chrome OS.";
2302
2303const char kEnableTouchSupportForScreenMagnifierName[] =
2304 "Touch support for screen magnifier";
2305
2306const char kEnableTouchSupportForScreenMagnifierDescription[] =
2307 "Enables touch support for screen magnifier";
2308
takise183b8cb42017-04-07 05:12:082309const char kEnableZipArchiverOnFileManagerName[] =
2310 "ZIP archiver for Drive";
2311
2312const char kEnableZipArchiverOnFileManagerDescription[] =
2313 "Enable the ability to archive and unpack files on Drive in the Files app";
2314
xiaochu32e9672a2017-05-04 04:15:082315const char kCrOSComponentName[] = "Chrome OS Component";
2316
2317const char kCrOSComponentDescription[] =
2318 "Enable the use of Chrome OS Component to download Chrome OS features "
2319 "on-demand as components.";
2320
vabr0215a8e2017-03-28 12:47:342321#endif // defined(OS_CHROMEOS)
2322
2323#if defined(OS_ANDROID)
2324
2325const char kContentSuggestionsCategoryOrderName[] =
2326 "Default content suggestions category order (e.g. on NTP)";
2327
2328const char kContentSuggestionsCategoryOrderDescription[] =
2329 "Set default order of content suggestion categories (e.g. on the NTP).";
2330
2331const char kContentSuggestionsCategoryRankerName[] =
2332 "Content suggestions category ranker (e.g. on NTP)";
2333
2334const char kContentSuggestionsCategoryRankerDescription[] =
2335 "Set category ranker to order categories of content suggestions (e.g. "
2336 "on the NTP).";
2337
2338const char kEnableNtpSnippetsVisibilityName[] =
2339 "Make New Tab Page Snippets more visible.";
2340
2341const char kEnableNtpSnippetsVisibilityDescription[] =
2342 "If enabled, the NTP snippets will become more discoverable with a "
2343 "larger portion of the first card above the fold.";
2344
jkrcal18514e662017-03-30 06:12:282345const char kEnableContentSuggestionsNewFaviconServerName[] =
2346 "Get favicons for content suggestions from a new server.";
2347
2348const char kEnableContentSuggestionsNewFaviconServerDescription[] =
2349 "If enabled, the content suggestions (on the NTP) will get favicons from a "
2350 "new favicon server.";
2351
mastizbac78ad2017-05-22 10:14:002352const char kEnableFaviconsFromWebManifestName[] =
2353 "Load favicons from Web Manifests";
2354
2355const char kEnableFaviconsFromWebManifestDescription[] =
2356 "Fetch Web Manifests on page load to read favicons from them.";
2357
jkrcal7d79de52017-05-05 18:13:102358const char kEnableNtpMostLikelyFaviconsFromServerName[] =
2359 "Download favicons for NTP tiles from Google.";
2360
2361const char kEnableNtpMostLikelyFaviconsFromServerDescription[] =
2362 "If enabled, missing favicons for NTP tiles get downloaded from Google. "
2363 "This only applies to tiles that originate from synced history.";
2364
Nicolas Dossou-gbetec92e3ff2017-05-24 14:21:482365const char kEnableContentSuggestionsCategoriesName[] =
2366 "Organize content suggestions by categories.";
2367
2368const char kEnableContentSuggestionsCategoriesDescription[] =
2369 "If enabled, the content suggestions will be grouped by categories or "
2370 "topics. Only remote content suggestions are shown when this is enabled.";
2371
dgn2b5a43382017-04-06 16:56:562372const char kEnableContentSuggestionsSettingsName[] =
2373 "Show content suggestions settings.";
2374
2375const char kEnableContentSuggestionsSettingsDescription[] =
2376 "If enabled, the content suggestions settings will be available from the "
2377 "main settings menu.";
2378
mvanouwerkerk6771b152017-05-10 14:40:342379const char kEnableContentSuggestionsShowSummaryName[] =
2380 "Show content suggestions summaries.";
2381
2382const char kEnableContentSuggestionsShowSummaryDescription[] =
2383 "If enabled, the content suggestions summaries will be shown.";
2384
vabr0215a8e2017-03-28 12:47:342385const char kEnableNtpRemoteSuggestionsName[] =
2386 "Show server-side suggestions on the New Tab page";
2387
2388const char kEnableNtpRemoteSuggestionsDescription[] =
2389 "If enabled, the list of content suggestions on the New Tab page (see "
2390 "#enable-ntp-snippets) will contain server-side suggestions (e.g., "
2391 "Articles for you). Furthermore, it allows to override the source used "
2392 "to retrieve these server-side suggestions.";
2393
2394const char kEnableNtpRecentOfflineTabSuggestionsName[] =
2395 "Show recent offline tabs on the New Tab page";
2396
2397const char kEnableNtpRecentOfflineTabSuggestionsDescription[] =
2398 "If enabled, the list of content suggestions on the New Tab page (see "
2399 "#enable-ntp-snippets) will contain pages that were captured offline "
2400 "during browsing (see #offlining-recent-pages)";
2401
vabr0215a8e2017-03-28 12:47:342402const char kEnableNtpAssetDownloadSuggestionsName[] =
2403 "Show asset downloads on the New Tab page";
2404
2405const char kEnableNtpAssetDownloadSuggestionsDescription[] =
2406 "If enabled, the list of content suggestions on the New Tab page (see "
2407 "#enable-ntp-snippets) will contain assets (e.g. books, pictures, "
2408 "audio) that the user downloaded for later use.";
2409
2410const char kEnableNtpOfflinePageDownloadSuggestionsName[] =
2411 "Show offline page downloads on the New Tab page";
2412
2413const char kEnableNtpOfflinePageDownloadSuggestionsDescription[] =
2414 "If enabled, the list of content suggestions on the New Tab page (see "
2415 "#enable-ntp-snippets) will contain pages that the user downloaded for "
2416 "later use.";
2417
2418const char kEnableNtpBookmarkSuggestionsName[] =
2419 "Show recently visited bookmarks on the New Tab page";
2420
2421const char kEnableNtpBookmarkSuggestionsDescription[] =
2422 "If enabled, the list of content suggestions on the New Tab page (see "
2423 "#enable-ntp-snippets) will contain recently visited bookmarks.";
2424
2425const char kEnableNtpPhysicalWebPageSuggestionsName[] =
2426 "Show Physical Web pages on the New Tab page";
2427
2428const char kEnableNtpPhysicalWebPageSuggestionsDescription[] =
2429 "If enabled, the list of content suggestions on the New Tab page (see "
2430 "#enable-ntp-snippets) will contain pages that are available through "
2431 "Physical Web (see #enable-physical-web)";
2432
2433const char kEnableNtpForeignSessionsSuggestionsName[] =
2434 "Show recent foreign tabs on the New Tab page";
2435
2436const char kEnableNtpForeignSessionsSuggestionsDescription[] =
2437 "If enabled, the list of content suggestions on the New Tab page (see "
2438 "#enable-ntp-snippets) will contain recent foreign tabs.";
2439
2440const char kEnableNtpSuggestionsNotificationsName[] =
2441 "Notify about new content suggestions available at the New Tab page";
2442
2443const char kEnableNtpSuggestionsNotificationsDescription[] =
2444 "If enabled, notifications will inform about new content suggestions on "
2445 "the New Tab page (see #enable-ntp-snippets).";
2446
2447const char kNtpCondensedLayoutName[] = "Condensed NTP layout";
2448
2449const char kNtpCondensedLayoutDescription[] =
2450 "Show a condensed layout on the New Tab Page.";
2451
2452const char kNtpCondensedTileLayoutName[] = "Condensed NTP tile layout";
2453
2454const char kNtpCondensedTileLayoutDescription[] =
2455 "Show a condensed tile layout on the New Tab Page.";
2456
2457const char kNtpGoogleGInOmniboxName[] = "Google G in New Tab Page omnibox";
2458
2459const char kNtpGoogleGInOmniboxDescription[] =
2460 "Show a Google G in the omnibox on the New Tab Page.";
2461
2462#endif // defined(OS_ANDROID)
2463
2464#if defined(OS_ANDROID)
2465
2466const char kOffliningRecentPagesName[] =
2467 "Enable offlining of recently visited pages";
2468
2469const char kOffliningRecentPagesDescription[] =
2470 "Enable storing recently visited pages locally for offline use. "
2471 "Requires Offline Pages to be enabled.";
2472
2473const char kOfflinePagesCtName[] = "Enable Offline Pages CT features.";
2474
2475const char kOfflinePagesCtDescription[] = "Enable Offline Pages CT features.";
2476
2477#endif // defined(OS_ANDROID)
2478
2479#if defined(OS_ANDROID)
2480
brettw5f9c1642017-05-14 17:12:482481const char kEnableExpandedAutofillCreditCardPopupLayoutName[] =
vabr0215a8e2017-03-28 12:47:342482 "Use expanded autofill credit card popup layout.";
2483
2484const char kEnableExpandedAutofillCreditCardPopupLayoutDescription[] =
2485 "If enabled, displays autofill credit card popup using expanded "
2486 "layout.";
2487
2488#endif // defined(OS_ANDROID)
2489
brettw5f9c1642017-05-14 17:12:482490const char kEnableAutofillCreditCardLastUsedDateDisplayName[] =
vabr0215a8e2017-03-28 12:47:342491 "Display the last used date of a credit card in autofill.";
2492
2493const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
2494 "If enabled, display the last used date of a credit card in autofill.";
2495
brettw5f9c1642017-05-14 17:12:482496const char kEnableAutofillCreditCardUploadCvcPromptName[] =
jsaul314052192017-04-13 23:20:572497 "Enable requesting missing CVC during Autofill credit card upload";
2498
2499const char kEnableAutofillCreditCardUploadCvcPromptDescription[] =
2500 "If enabled, requests missing CVC when offering to upload credit cards to "
2501 "Google Payments.";
2502
vabr0215a8e2017-03-28 12:47:342503#if !defined(OS_ANDROID) && defined(GOOGLE_CHROME_BUILD)
2504
2505const char kGoogleBrandedContextMenuName[] =
2506 "Google branding in the context menu";
2507
2508const char kGoogleBrandedContextMenuDescription[] =
2509 "Shows a Google icon next to context menu items powered by Google "
2510 "services.";
2511
2512#endif // !defined(OS_ANDROID) && defined(GOOGLE_CHROME_BUILD)
2513
2514const char kEnableWebUsbName[] = "WebUSB";
2515
2516const char kEnableWebUsbDescription[] = "Enable WebUSB support.";
2517
2518const char kEnableGenericSensorName[] = "Generic Sensor";
2519
2520const char kEnableGenericSensorDescription[] =
2521 "Enable sensor APIs based on Generic Sensor API.";
2522
2523const char kFontCacheScalingName[] = "FontCache scaling";
2524
2525const char kFontCacheScalingDescription[] =
2526 "Reuse a cached font in the renderer to serve different sizes of font "
2527 "for faster layout.";
2528
2529const char kFramebustingName[] =
2530 "Framebusting requires same-origin or a user gesture";
2531
2532const char kFramebustingDescription[] =
2533 "Don't permit an iframe to navigate the top level browsing context "
2534 "unless they are same-origin or the iframe is processing a user "
2535 "gesture.";
2536
binluc5b59112017-04-19 15:38:462537const char kVibrateRequiresUserGestureName[] =
2538 "Requiring user gesture for the Vibration API";
2539
2540const char kVibrateRequiresUserGestureDescription[] =
2541 "Block the Vibration API if no user gesture has been received on "
2542 "the frame or any embedded frame.";
2543
vabr0215a8e2017-03-28 12:47:342544#if defined(OS_ANDROID)
mthiesse700b0b62017-05-19 01:37:312545#if BUILDFLAG(ENABLE_VR)
vabr0215a8e2017-03-28 12:47:342546const char kEnableVrShellName[] = "Enable Chrome VR.";
2547
2548const char kEnableVrShellDescription[] =
2549 "Allow browsing with a VR headset if available for this device.";
2550
mthiesse700b0b62017-05-19 01:37:312551const char kVrCustomTabBrowsingName[] = "Enable Custom Tab browsing in VR.";
2552
2553const char kVrCustomTabBrowsingDescription[] =
2554 "Allow browsing with a VR headset in a Custom Tab if available for this "
2555 "device.";
ymalike78a83b2017-05-19 20:42:312556
2557const char kWebVrAutopresentName[] = "Enable WebVr auto presentation";
2558
2559const char kWebVrAutopresentDescription[] =
2560 "Allows auto presentation of WebVr content from trusted first-party apps";
mthiesse700b0b62017-05-19 01:37:312561#endif // BUILDFLAG(ENABLE_VR)
vabr0215a8e2017-03-28 12:47:342562#endif // defined(OS_ANDROID)
2563
2564// Web payments
2565
2566const char kWebPaymentsName[] = "Web Payments";
2567
2568const char kWebPaymentsDescription[] =
2569 "Enable Web Payments API integration, a JavaScript API for merchants.";
2570
2571#if defined(OS_ANDROID)
2572
2573const char kEnableAndroidPayIntegrationV1Name[] = "Enable Android Pay v1";
2574
2575const char kEnableAndroidPayIntegrationV1Description[] =
2576 "Enable integration with Android Pay using the first version of the "
2577 "API";
2578
2579const char kEnableAndroidPayIntegrationV2Name[] = "Enable Android Pay v2";
2580
2581const char kEnableAndroidPayIntegrationV2Description[] =
2582 "Enable integration with Android Pay using the second version of the "
2583 "API";
2584
2585const char kEnableWebPaymentsSingleAppUiSkipName[] =
2586 "Enable Web Payments single app UI skip";
2587
2588const char kEnableWebPaymentsSingleAppUiSkipDescription[] =
2589 "Enable Web Payments to skip showing its UI if the developer specifies "
2590 "a single app.";
2591
2592const char kAndroidPaymentAppsName[] = "Android payment apps";
2593
2594const char kAndroidPaymentAppsDescription[] =
2595 "Enable third party Android apps to integrate as payment apps";
2596
mathpb36946b2017-05-09 14:27:162597const char kServiceWorkerPaymentAppsName[] = "Service Worker payment apps";
2598
2599const char kServiceWorkerPaymentAppsDescription[] =
2600 "Enable Service Worker applications to integrate as payment apps";
2601
vabr0215a8e2017-03-28 12:47:342602#endif // defined(OS_ANDROID)
2603
2604const char kFeaturePolicyName[] = "Feature Policy";
2605
2606const char kFeaturePolicyDescription[] =
2607 "Enables granting and removing access to features through the "
2608 "Feature-Policy HTTP header.";
2609
2610// Audio rendering mixing experiment strings.
2611
2612const char kNewAudioRenderingMixingStrategyName[] =
2613 "New audio rendering mixing strategy";
2614
2615const char kNewAudioRenderingMixingStrategyDescription[] =
2616 "Use the new audio rendering mixing strategy.";
2617
2618// Background video track disabling experiment strings.
2619
2620const char kBackgroundVideoTrackOptimizationName[] =
2621 "Optimize background video playback.";
2622
2623const char kBackgroundVideoTrackOptimizationDescription[] =
2624 "Disable video tracks when the video is played in the background to "
2625 "optimize performance.";
2626
avayvod232757942017-04-29 04:12:342627// New remote playback pipeline experiment strings.
2628
2629const char kNewRemotePlaybackPipelineName[] =
2630 "Enable the new remote playback pipeline.";
2631
2632const char kNewRemotePlaybackPipelineDescription[] =
2633 "Enable the new pipeline for playing media element remotely via "
2634 "RemotePlayback API or native controls.";
2635
vabr0215a8e2017-03-28 12:47:342636// Video fullscreen with orientation lock experiment strings.
2637
2638const char kVideoFullscreenOrientationLockName[] =
2639 "Lock screen orientation when playing a video fullscreen.";
2640
2641const char kVideoFullscreenOrientationLockDescription[] =
2642 "Lock the screen orientation of the device to match video orientation "
2643 "when a video goes fullscreen. Only on phones.";
2644
johnme913ee5f2017-04-28 21:36:162645// Video rotate-to-fullscreen experiment strings.
2646
2647const char kVideoRotateToFullscreenName[] =
2648 "Rotate-to-fullscreen gesture for videos.";
2649
2650const char kVideoRotateToFullscreenDescription[] =
2651 "Enter/exit fullscreen when device is rotated to/from the orientation of "
2652 "the video. Only on phones.";
2653
vabr0215a8e2017-03-28 12:47:342654// Expensive background timer throttling flag
2655
2656const char kExpensiveBackgroundTimerThrottlingName[] =
2657 "Throttle expensive background timers";
2658
2659const char kExpensiveBackgroundTimerThrottlingDescription[] =
2660 "Enables intervention to limit CPU usage of background timers to 1%.";
2661
2662// Enable default MediaSession flag
2663
2664#if !defined(OS_ANDROID)
2665
mlamouriff56c092017-05-11 15:31:392666const char kEnableAudioFocusName[] = "Manage audio focus across tabs";
vabr0215a8e2017-03-28 12:47:342667
mlamouriff56c092017-05-11 15:31:392668const char kEnableAudioFocusDescription[] =
vabr0215a8e2017-03-28 12:47:342669 "Manage audio focus across tabs to improve the audio mixing.";
2670
mlamouriff56c092017-05-11 15:31:392671const char kEnableAudioFocusDisabled[] = "Disabled";
vabr0215a8e2017-03-28 12:47:342672
mlamouriff56c092017-05-11 15:31:392673const char kEnableAudioFocusEnabled[] = "Enabled";
vabr0215a8e2017-03-28 12:47:342674
mlamouriff56c092017-05-11 15:31:392675const char kEnableAudioFocusEnabledDuckFlash[] =
vabr0215a8e2017-03-28 12:47:342676 "Enabled (Flash lowers volume when interrupted by other sound, "
2677 "experimental)";
2678
2679#endif // !defined(OS_ANDROID)
2680
2681#if defined(OS_WIN)
2682
2683const char kGdiTextPrinting[] = "GDI Text Printing";
2684
2685const char kGdiTextPrintingDescription[] =
2686 "Use GDI to print text as simply text";
2687
2688#endif // defined(OS_WIN)
2689
2690#if defined(OS_ANDROID)
2691
2692const char kModalPermissionPromptsName[] = "Modal Permission Prompts";
2693
2694const char kModalPermissionPromptsDescription[] =
2695 "Whether to use permission dialogs in place of permission infobars.";
2696
2697#endif // defined(OS_ANDROID)
2698
2699#if !defined(OS_MACOSX)
2700
2701const char kPermissionPromptPersistenceToggleName[] =
2702 "Persistence Toggle in Permission Prompts";
2703
2704const char kPermissionPromptPersistenceToggleDescription[] =
2705 "Whether to display a persistence toggle in permission prompts.";
2706
2707#endif // !defined(OS_MACOSX)
2708
2709#if defined(OS_ANDROID)
2710
2711const char kNoCreditCardAbort[] = "No Credit Card Abort";
2712
2713const char kNoCreditCardAbortDescription[] =
2714 "Whether or not the No Credit Card Abort is enabled.";
2715
2716#endif // defined(OS_ANDROID)
2717
2718// Consistent omnibox geolocation
2719
2720#if defined(OS_ANDROID)
2721
2722const char kEnableConsistentOmniboxGeolocationName[] =
2723 "Have consistent omnibox geolocation access.";
2724
2725const char kEnableConsistentOmniboxGeolocationDescription[] =
2726 "Have consistent geolocation access between the omnibox and default "
2727 "search engine.";
2728
2729#endif // defined(OS_ANDROID)
2730
2731// Media Remoting chrome://flags strings
2732
2733const char kMediaRemotingName[] = "Media Remoting during Cast Tab Mirroring";
2734
2735const char kMediaRemotingDescription[] =
2736 "When Casting a tab to a remote device, enabling this turns on an "
2737 "optimization that forwards the content bitstream directly to the "
2738 "remote device when a video is fullscreened.";
2739
vabr0215a8e2017-03-28 12:47:342740// Play Services LSD permission prompt chrome://flags strings
2741
2742#if defined(OS_ANDROID)
2743
2744const char kLsdPermissionPromptName[] =
2745 "Location Settings Dialog Permission Prompt";
2746
2747const char kLsdPermissionPromptDescription[] =
2748 "Whether to use the Google Play Services Location Settings Dialog "
2749 "permission dialog.";
2750
2751#endif // defined(OS_ANDROID)
2752
2753#if defined(OS_WIN)
2754
2755// Custom draw the Windows 10 titlebar. crbug.com/505013
2756
2757const char kWindows10CustomTitlebarName[] = "Custom-drawn Windows 10 Titlebar";
2758
2759const char kWindows10CustomTitlebarDescription[] =
2760 "If enabled, Chrome will draw the titlebar and caption buttons instead "
2761 "of deferring to Windows.";
2762
2763#endif // defined(OS_WIN)
2764
2765#if defined(OS_WIN)
2766
rbpotter556837e42017-05-01 18:49:042767const char kDisablePostscriptPrinting[] = "Disable PostScript Printing";
vabr0215a8e2017-03-28 12:47:342768
rbpotter556837e42017-05-01 18:49:042769const char kDisablePostscriptPrintingDescription[] =
2770 "Disables PostScript generation when printing to PostScript capable "
2771 "printers, and uses EMF generation in its place.";
vabr0215a8e2017-03-28 12:47:342772
2773#endif // defined(OS_WIN)
2774
2775#if defined(OS_ANDROID)
2776
2777const char kAiaFetchingName[] = "Intermediate Certificate Fetching";
2778
2779const char kAiaFetchingDescription[] =
2780 "Enable intermediate certificate fetching when a server does not "
2781 "provide sufficient certificates to build a chain to a trusted root.";
2782
2783#endif // defined(OS_ANDROID)
2784
2785// Web MIDI supports MIDIManager dynamic instantiation chrome://flags strings
2786
2787const char kEnableMidiManagerDynamicInstantiationName[] =
2788 "MIDIManager dynamic instantiation for Web MIDI.";
2789
2790const char kEnableMidiManagerDynamicInstantiationDescription[] =
2791 "Enable MIDIManager dynamic instantiation for Web MIDI.";
2792
2793// Desktop iOS promotion chrome://flags strings
2794
2795#if defined(OS_WIN)
2796
2797const char kEnableDesktopIosPromotionsName[] = "Desktop to iOS promotions.";
2798
2799const char kEnableDesktopIosPromotionsDescription[] =
2800 "Enable Desktop to iOS promotions, and allow users to see them if they "
2801 "are eligible.";
2802
2803#endif // defined(OS_WIN)
2804
2805#if defined(OS_ANDROID)
2806
2807const char kEnableCustomFeedbackUiName[] = "Enable Custom Feedback UI";
2808
2809const char kEnableCustomFeedbackUiDescription[] =
2810 "Enables a custom feedback UI when submitting feedback through Google "
2811 "Feedback. Works with Google Play Services v10.2+";
2812
2813#endif // defined(OS_ANDROID)
2814
vabr0215a8e2017-03-28 12:47:342815#if defined(OS_CHROMEOS) || defined(OS_LINUX) || defined(OS_MACOSX) || \
2816 defined(OS_WIN)
2817
2818const char kOmniboxEntitySuggestionsName[] = "Omnibox entity suggestions";
vabr0215a8e2017-03-28 12:47:342819const char kOmniboxEntitySuggestionsDescription[] =
krbcc621412017-06-01 19:40:282820 "Enable receiving entity suggestions - disambiguation descriptions - for "
2821 "Omnibox suggestions.";
2822
2823const char kOmniboxTailSuggestionsName[] = "Omnibox tail suggestions";
2824const char kOmniboxTailSuggestionsDescription[] =
2825 "Enable receiving tail suggestions, a type of search suggestion "
2826 "based on the last few words in the query, for the Omnibox.";
vabr0215a8e2017-03-28 12:47:342827
ojan38c678352017-04-11 20:27:552828const char kPauseBackgroundTabsName[] = "Pause background tabs";
2829const char kPauseBackgroundTabsDescription[] =
2830 "Pause timers in background tabs after 5 minutes on desktop.";
2831
spqchan6f9127a2017-04-29 03:42:022832const char kEnableNewAppMenuIconName[] = "Enable the New App Menu Icon";
2833const char kEnableNewAppMenuIconDescription[] =
2834 "Use the new app menu icon with update notification animations.";
spqchan064a8112017-04-18 16:46:322835
vabr0215a8e2017-03-28 12:47:342836#endif // defined(OS_CHROMEOS) || defined(OS_LINUX) || defined(OS_MACOSX) ||
2837 // defined(OS_WIN)
2838
2839#if defined(OS_CHROMEOS)
2840
2841const char kEnableChromevoxArcSupportName[] = "ChromeVox ARC support";
2842
2843const char kEnableChromevoxArcSupportDescription[] =
2844 "Enable ChromeVox screen reader features in ARC";
2845
2846#endif // defined(OS_CHROMEOS)
2847
2848const char kMojoLoadingName[] = "Use Mojo IPC for resource loading";
2849
2850const char kMojoLoadingDescription[] =
2851 "Use Mojo IPC instead of traditional Chrome IPC for resource loading.";
2852
2853#if defined(OS_ANDROID)
2854
2855const char kUseNewDoodleApiName[] = "Use new Doodle API";
2856
2857const char kUseNewDoodleApiDescription[] =
2858 "Enables the new API to fetch Doodles for the NTP.";
2859
2860#endif // defined(OS_ANDROID)
2861
vabr0215a8e2017-03-28 12:47:342862const char kDebugShortcutsDescription[] =
2863 "Enables additional keyboard shortcuts that are useful for debugging "
2864 "Ash.";
2865
dskiba950fbc82017-04-12 20:36:282866const char kMemoryAblationName[] = "Memory ablation experiment";
2867const char kMemoryAblationDescription[] =
2868 "Allocates extra memory in the browser process.";
2869
jwanda1582bcf2017-03-30 04:33:482870#if defined(OS_ANDROID)
2871
2872const char kEnableCustomContextMenuName[] = "Enable custom context menu";
2873
2874const char kEnableCustomContextMenuDescription[] =
2875 "Enables a new context menu when a link, image, or video is pressed within "
2876 "Chrome.";
2877
2878#endif // defined(OS_ANDROID)
2879
vabr0215a8e2017-03-28 12:47:342880#if defined(OS_CHROMEOS)
2881
2882// File Manager
2883
2884const char kVideoPlayerChromecastSupportName[] =
2885 "Experimental Chromecast support for Video Player";
2886
2887const char kVideoPlayerChromecastSupportDescription[] =
2888 "This option enables experimental Chromecast support for Video Player "
2889 "app on ChromeOS.";
2890
2891const char kNewZipUnpackerName[] = "New ZIP unpacker";
2892
2893const char kNewZipUnpackerDescription[] =
2894 "New ZIP unpacker flow, based on the File System Provider API.";
2895
vabr0215a8e2017-03-28 12:47:342896const char kOfficeEditingComponentAppName[] =
2897 "Office Editing for Docs, Sheets & Slides";
2898
2899const char kOfficeEditingComponentAppDescription[] =
2900 "Office Editing for Docs, Sheets & Slides for testing purposes.";
2901
2902const char kDisplayColorCalibrationName[] = "Color calibration of the display";
2903
2904const char kDisplayColorCalibrationDescription[] =
2905 "Allow color calibration of the display if the display supports the "
2906 "feature.";
2907
2908const char kMemoryPressureThresholdName[] =
2909 "Memory discard strategy for advanced pressure handling";
2910
2911const char kMemoryPressureThresholdDescription[] =
2912 "Memory discarding strategy to use";
2913
2914const char kConservativeThresholds[] =
2915 "Conservative memory pressure release strategy";
2916
2917const char kAggressiveCacheDiscardThresholds[] =
2918 "Aggressive cache release strategy";
2919
2920const char kAggressiveTabDiscardThresholds[] =
2921 "Aggressive tab release strategy";
2922
2923const char kAggressiveThresholds[] =
2924 "Aggressive tab and cache release strategy";
2925
2926const char kWakeOnPacketsName[] = "Wake On Packets";
2927
2928const char kWakeOnPacketsDescription[] =
2929 "Enables waking the device based on the receipt of some network "
2930 "packets.";
2931
brettw5f9c1642017-05-14 17:12:482932const char kQuickUnlockPinName[] = "Quick Unlock (PIN)";
vabr0215a8e2017-03-28 12:47:342933
2934const char kQuickUnlockPinDescription[] =
jdufault74476492017-04-20 01:20:002935 "Enabling PIN quick unlock allows you to use a PIN to unlock your ChromeOS "
2936 "device on the lock screen after you have signed into your device.";
2937
2938const char kQuickUnlockPinSignin[] = "Enable PIN when logging in.";
2939
2940const char kQuickUnlockPinSigninDescription[] =
2941 "Enabling PIN allows you to use a PIN to sign in and unlock your ChromeOS "
2942 "device. After changing this flag PIN needs to be set up again.";
vabr0215a8e2017-03-28 12:47:342943
2944const char kQuickUnlockFingerprint[] = "Quick Unlock (Fingerprint)";
2945
2946const char kQuickUnlockFingerprintDescription[] =
2947 "Enabling fingerprint quick unlock allows you to setup and use a "
2948 "fingerprint to unlock your Chromebook on the lock screen after you "
2949 "have signed into your device.";
2950
2951const char kExperimentalAccessibilityFeaturesName[] =
2952 "Experimental accessibility features";
2953
2954const char kExperimentalAccessibilityFeaturesDescription[] =
2955 "Enable additional accessibility features in the Settings page.";
2956
2957const char kDisableSystemTimezoneAutomaticDetectionName[] =
2958 "SystemTimezoneAutomaticDetection policy support";
2959
2960const char kDisableSystemTimezoneAutomaticDetectionDescription[] =
2961 "Disable system timezone automatic detection device policy.";
2962
2963const char kEolNotificationName[] = "Disable Device End of Life notification.";
2964
2965const char kEolNotificationDescription[] =
2966 "Disable Notifcation when Device is End of Life.";
2967
2968// Stylus strings
2969
2970const char kForceEnableStylusToolsName[] = "Force enable stylus features";
2971
2972const char kForceEnableStylusToolsDescription[] =
2973 "Forces display of the stylus tools menu in the shelf and the stylus "
2974 "section in settings, even if there is no attached stylus device.";
2975
2976// Network portal notification
2977
2978const char kNetworkPortalNotificationName[] =
2979 "Notifications about captive portals";
2980
2981const char kNetworkPortalNotificationDescription[] =
2982 "If enabled, notification is displayed when device is connected to a "
2983 "network behind captive portal.";
2984
stevenjbe1d457382017-05-24 22:37:242985const char kNetworkSettingsConfigName[] =
2986 "Settings based Network Configuration";
2987
2988const char kNetworkSettingsConfigDescription[] =
2989 "Enables the Settings based network configuration UI instead of the Views "
2990 "based configuration dialog.";
2991
vabr0215a8e2017-03-28 12:47:342992const char kMtpWriteSupportName[] = "MTP write support";
2993
2994const char kMtpWriteSupportDescription[] =
2995 "MTP write support in File System API (and file manager). In-place "
2996 "editing operations are not supported.";
2997
2998const char kCrosRegionsModeName[] = "Cros-regions load mode";
2999
3000const char kCrosRegionsModeDescription[] =
3001 "This flag controls cros-regions load mode";
3002
3003const char kCrosRegionsModeDefault[] = "Default";
3004
3005const char kCrosRegionsModeOverride[] = "Override VPD values.";
3006
3007const char kCrosRegionsModeHide[] = "Hide VPD values.";
3008
3009const char kPrinterProviderSearchAppName[] =
3010 "Chrome Web Store Gallery app for printer drivers";
3011
3012const char kPrinterProviderSearchAppDescription[] =
3013 "Enables Chrome Web Store Gallery app for printer drivers. The app "
3014 "searches Chrome Web Store for extensions that support printing to a "
3015 "USB printer with specific USB ID.";
3016
3017const char kArcBootCompleted[] = "Load Android apps automatically";
3018
3019const char kArcBootCompletedDescription[] =
3020 "Allow Android apps to start automatically after signing in.";
3021
3022const char kEnableImeMenuName[] = "Enable opt-in IME menu";
3023
3024const char kEnableImeMenuDescription[] =
3025 "Enable access to the new IME menu in the Language Settings page.";
3026
3027const char kEnableEhvInputName[] =
3028 "Emoji, handwriting and voice input on opt-in IME menu";
3029
3030const char kEnableEhvInputDescription[] =
3031 "Enable access to emoji, handwriting and voice input form opt-in IME "
3032 "menu.";
3033
fukino1b5ebe952017-04-07 05:35:303034const char kEnableEncryptionMigrationName[] =
3035 "Enable encryption migration of user data";
3036
3037const char kEnableEncryptionMigrationDescription[] =
3038 "If enabled and the device supports ARC, the user will be asked to update "
3039 "the encryption of user data when the user signs in.";
3040
vabr0215a8e2017-03-28 12:47:343041#endif // #if defined(OS_CHROMEOS)
3042
wychen2212fe72017-04-10 10:23:323043#if defined(OS_ANDROID)
3044
3045const char kEnableCopylessPasteName[] = "App Indexing (Copyless Paste)";
3046
3047const char kEnableCopylessPasteDescription[] =
3048 "Provide suggestions for text input, based on your recent context. For "
3049 "example, if you looked at a restaurant website and switched to the Maps "
3050 "app, the keyboard would offer the name of that restaurant as a suggestion "
3051 "to enter into the search bar. The data is indexed locally, and never sent "
3052 "to the server. It's disabled in incognito mode.";
3053
alexander.shalamov588eca42017-04-20 13:32:423054const char kEnableWebNfcName[] = "WebNFC";
3055
3056const char kEnableWebNfcDescription[] = "Enable WebNFC support.";
3057
wychen2212fe72017-04-10 10:23:323058#endif // defined(OS_ANDROID)
3059
xiaochengh91ba4c52017-04-21 03:49:253060const char kEnableIdleTimeSpellCheckingName[] =
3061 "Enable idle time spell checker";
3062
3063const char kEnableIdleTimeSpellCheckingDescription[] =
3064 "Make spell-checking code run only when the browser is idle, so that input "
3065 "latency is reduced, especially when editing long articles, emails, etc.";
3066
mpearson5aed28a2017-04-25 06:01:313067#if defined(OS_ANDROID)
3068
3069const char kEnableOmniboxClipboardProviderName[] =
3070 "Omnibox clipboard URL suggestions";
3071
3072const char kEnableOmniboxClipboardProviderDescription[] =
3073 "Provide a suggestion of the URL stored in the clipboard (if any) upon "
3074 "focus in the omnibox.";
3075
3076#endif // defined(OS_ANDROID)
3077
mlamouri1f264da22017-04-25 22:34:423078const char kAutoplayPolicyName[] = "Autoplay policy";
3079
3080const char kAutoplayPolicyDescription[] =
3081 "Policy used when deciding if audio or video is allowed to autoplay.";
3082
3083const char kAutoplayPolicyNoUserGestureRequired[] =
3084 "No user gesture is required.";
3085
3086const char kAutoplayPolicyUserGestureRequired[] = "User gesture is required.";
3087
mlamouri55a0543c2017-05-11 10:34:073088const char kAutoplayPolicyUserGestureRequiredForCrossOrigin[] =
mlamouri1f264da22017-04-25 22:34:423089 "User gesture is required for cross-origin iframes.";
3090
mlamouri431bb4e2017-06-06 08:54:243091const char kAutoplayPolicyDocumentUserActivation[] =
3092 "Document user activation is required.";
3093
gcomanici8cabc77f2017-04-27 20:04:543094const char kOmniboxDisplayTitleForCurrentUrlName[] =
3095 "Include title for the current URL in the omnibox";
3096
3097const char kOmniboxDisplayTitleForCurrentUrlDescription[] =
3098 "In the event that the omnibox provides suggestions on-focus, the URL of "
3099 "the current page is provided as the first suggestion without a title. "
3100 "Enabling this flag causes the title to be displayed.";
3101
tommyclia5a538f92017-05-15 19:09:383102const char kOmniboxUIMaxAutocompleteMatchesName[] =
3103 "Omnibox UI Max Autocomplete Matches";
3104
3105const char kOmniboxUIMaxAutocompleteMatchesDescription[] =
etienneb9a4b5302017-06-08 06:28:463106 "Changes the maximum number of autocomplete matches displayed in the "
tommyclia5a538f92017-05-15 19:09:383107 "Omnibox UI.";
3108
tommycli26317da2017-05-26 20:50:333109const char kOmniboxUIVerticalLayoutName[] = "Omnibox UI Vertical Layout";
3110
3111const char kOmniboxUIVerticalLayoutDescription[] =
3112 "Displays Omnibox sugestions in 2 lines - title over origin.";
3113
tommycli2bb95c42017-05-08 18:07:023114const char kOmniboxUIVerticalMarginName[] = "Omnibox UI Vertical Margin";
3115
3116const char kOmniboxUIVerticalMarginDescription[] =
3117 "Changes the vertical margin in the Omnibox UI.";
3118
tbansald3e08ca62017-05-04 19:51:093119const char kForceEffectiveConnectionTypeName[] =
3120 "Override effective connection type";
3121
3122const char kForceEffectiveConnectionTypeDescription[] =
3123 "Overrides the effective connection type of the current connection "
3124 "returned by the network quality estimator.";
3125
3126const char kEffectiveConnectionTypeUnknownDescription[] = "Unknown";
3127const char kEffectiveConnectionTypeOfflineDescription[] = "Offline";
3128const char kEffectiveConnectionTypeSlow2GDescription[] = "Slow 2G";
3129const char kEffectiveConnectionType2GDescription[] = "2G";
3130const char kEffectiveConnectionType3GDescription[] = "3G";
3131const char kEffectiveConnectionType4GDescription[] = "4G";
3132
dskibac6376a62017-05-01 22:43:293133const char kEnableHeapProfilingName[] = "Heap profiling";
3134
3135const char kEnableHeapProfilingDescription[] = "Enables heap profiling.";
3136
3137const char kEnableHeapProfilingModePseudo[] = "Enabled (pseudo mode)";
3138
3139const char kEnableHeapProfilingModeNative[] = "Enabled (native mode)";
3140
3141const char kEnableHeapProfilingTaskProfiler[] = "Enabled (task mode)";
3142
fhorschig122c6652017-05-05 10:21:303143const char kUseSuggestionsEvenIfFewFeatureName[] =
3144 "Disable minimum for server-side tile suggestions on NTP.";
3145
3146const char kUseSuggestionsEvenIfFewFeatureDescription[] =
3147 "Request server-side suggestions even if there are only very few of them "
3148 "and use them for tiles on the New Tab Page.";
3149
toyoshim9ff98be2017-05-05 15:53:283150const char kLocationHardReloadName[] =
3151 "Experimental change for Location.reload() to trigger a hard-reload.";
3152
3153const char kLocationHardReloadDescription[] =
3154 "Enable an experimental change for Location.reload() to trigger a "
3155 "hard-reload.";
3156
treib32d2e422017-05-08 10:00:353157const char kCaptureThumbnailOnLoadFinishedName[] =
3158 "Capture page thumbnail on load finished";
3159
3160const char kCaptureThumbnailOnLoadFinishedDescription[] =
3161 "Capture a page thumbnail (for use on the New Tab page) when the page load "
3162 "finishes, in addition to other times a thumbnail may be captured.";
3163
stanisc14bed0b132017-05-10 17:46:373164#if defined(OS_WIN)
3165
3166// Name and description of the flag that enables D3D v-sync.
3167const char kEnableD3DVsync[] = "D3D v-sync";
3168const char kEnableD3DVsyncDescription[] =
3169 "Produces v-sync signal by having D3D wait for vertical blanking interval "
3170 "to occur.";
3171
3172#endif // defined(OS_WIN)
3173
treib273e9db2017-05-11 14:02:263174#if !defined(OS_ANDROID) && !defined(OS_IOS)
3175
msarda6d4b3dc2017-06-02 15:39:473176const char kAccountConsistencyName[] =
3177 "Identity consistency between browser and cookie jar";
3178
3179const char kAccountConsistencyDescription[] =
3180 "When enabled, the browser manages signing in and out of Google "
3181 "accounts.";
3182
3183const char kAccountConsistencyChoiceMirror[] = "Mirror";
3184const char kAccountConsistencyChoiceDice[] = "Dice";
3185
treib273e9db2017-05-11 14:02:263186const char kUseGoogleLocalNtpName[] = "Enable using the Google local NTP";
3187const char kUseGoogleLocalNtpDescription[] =
3188 "Use the local New Tab page if Google is the default search engine.";
3189
3190const char kOneGoogleBarOnLocalNtpName[] =
3191 "Enable the OneGoogleBar on the local NTP";
3192const char kOneGoogleBarOnLocalNtpDescription[] =
3193 "Show a OneGoogleBar on the local New Tab page if Google is the default "
3194 "search engine.";
3195
3196#endif // !defined(OS_ANDROID) && !defined(OS_IOS)
3197
lgreyc0b638e52017-05-11 19:10:173198#if defined(OS_MACOSX)
3199extern const char kMacRTLName[] = "Enable RTL";
3200extern const char kMacRTLDescription[] =
3201 "Mirrors the UI for RTL language users";
3202#endif
3203
yhanadac5bff5b2017-05-18 06:37:093204#if defined(OS_CHROMEOS)
3205
3206const char kDisableNewVirtualKeyboardBehaviorName[] =
3207 "New window behavior for the accessibility keyboard";
3208const char kDisableNewVirtualKeyboardBehaviorDescription[] =
3209 "Disable new window behavior for the accessibility keyboard "
3210 "in non-sticky mode (do not change work area in non-sticky mode).";
3211
3212#endif // defined(OS_CHROMEOS)
3213
vabr0215a8e2017-03-28 12:47:343214} // namespace flag_descriptions