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