Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3377)

Unified Diff: chrome/browser/flags_descriptions.cc

Issue 2774203002: Migrate about:flags messages to const char* (Closed)
Patch Set: iOS OWNERS Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/flags_descriptions.cc
diff --git a/chrome/browser/flags_descriptions.cc b/chrome/browser/flags_descriptions.cc
new file mode 100644
index 0000000000000000000000000000000000000000..b564fc22dd4f3f5f663635e0ec6145968508b1c6
--- /dev/null
+++ b/chrome/browser/flags_descriptions.cc
@@ -0,0 +1,3308 @@
+// Copyright 2017 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "chrome/browser/flags_descriptions.h"
+
+namespace flags_descriptions {
agrieve 2017/03/27 15:43:24 likewise for name nit: flag_descriptions
vabr (Chromium) 2017/03/27 18:12:33 Done.
+
+// Material Design version of chrome://bookmarks
+
+const char kEnableMaterialDesignBookmarksName[] =
+ R"*(Enable Material Design bookmarks)*";
Alexei Svitkine (slow) 2017/03/27 16:37:28 I don't think we should be prefixing all of these
vabr (Chromium) 2017/03/27 18:12:33 Done.
+
+const char kEnableMaterialDesignBookmarksDescription[] =
+ R"*(If enabled, the chrome://bookmarks/ URL loads the Material Design)*"
+ R"*(bookmarks page.)*";
+
+// Material Design version of chrome://policy
+
+const char kEnableMaterialDesignPolicyPageName[] =
+ R"*(Enable Material Design policy page)*";
+
+const char kEnableMaterialDesignPolicyPageDescription[] =
+ R"*(If enabled, the chrome://md-policy URL loads the Material Design)*"
+ R"*(policy page.)*";
+
+// Material Design version of chrome://history
+
+const char kEnableMaterialDesignHistoryName[] =
+ R"*(Enable Material Design history)*";
+
+const char kEnableMaterialDesignHistoryDescription[] =
+ R"*(If enabled, the chrome://history/ URL loads the Material Design)*"
+ R"*(history page.)*";
+
+// Material Design version of chrome://settings
+
+const char kEnableMaterialDesignSettingsName[] =
+ R"*(Enable Material Design settings)*";
+
+const char kEnableMaterialDesignSettingsDescription[] =
+ R"*(If enabled, the chrome://settings/ URL loads the Material Design)*"
+ R"*(settings page.)*";
+
+// Material Design version of chrome://extensions
+
+const char kEnableMaterialDesignExtensionsName[] =
+ R"*(Enable Material Design extensions)*";
+
+const char kEnableMaterialDesignExtensionsDescription[] =
+ R"*(If enabled, the chrome://extensions/ URL loads the Material)*"
+ R"*(Design extensions page.)*";
+
+// Material Design version of feedback form
+
+const char kEnableMaterialDesignFeedbackName[] =
+ R"*(Enable Material Design feedback)*";
+
+const char kEnableMaterialDesignFeedbackDescription[] =
+ R"*(If enabled, reporting an issue will load the Material Design)*"
+ R"*(feedback UI.)*";
+
+// Report URL to SafeSearch
+
+const char kSafeSearchUrlReportingName[] =
+ R"*(SafeSearch URLs reporting.)*";
+
+const char kSafeSearchUrlReportingDescription[] =
+ R"*(If enabled, inappropriate URLs can be reported back to)*"
+ R"*(SafeSearch.)*";
+
+// Device scale factor change in content crbug.com/485650.
+
+const char kEnableUseZoomForDsfName[] =
+ R"*(Use Blink's zoom for device scale factor.)*";
+
+const char kEnableUseZoomForDsfDescription[] =
+ R"*(If enabled, Blink uses its zooming mechanism to scale content for)*"
+ R"*(device scale factor.)*";
+
+const char kEnableUseZoomForDsfChoiceDefault[] =
+ R"*(Default)*";
+
+const char kEnableUseZoomForDsfChoiceEnabled[] =
+ R"*(Enabled)*";
+
+const char kEnableUseZoomForDsfChoiceDisabled[] =
+ R"*(Disabled)*";
+
+const char kNostatePrefetch[] =
+ R"*(No-State Prefetch)*";
+
+const char kNostatePrefetchDescription[] =
+ R"*("No-State Prefetch" pre-downloads resources to improve load)*"
+ R"*(times. "Prerender" does a full pre-rendering of the page, to)*"
+ R"*(improve load times even more. "Simple Load" does nothing and is)*"
+ R"*(similar to disabling the feature, but collects more metrics for)*"
+ R"*(comparison purposes.)*";
+
+const char kSpeculativePrefetchName[] =
+ R"*(Speculative Prefetch)*";
+
+const char kSpeculativePrefetchDescription[] =
+ R"*("Speculative Prefetch" fetches likely resources early to improve)*"
+ R"*(load times, based on a local database (see chrome://predictors).)*"
+ R"*("Learning" means that only the database construction is enabled,)*"
+ R"*("Prefetching" that learning and prefetching are enabled.)*";
+
+// Force Tablet Mode
+
+const char kForceTabletModeName[] =
+ R"*(Force Tablet Mode)*";
+
+const char kForceTabletModeDescription[] =
+ R"*(This flag can be used to force a certain mode on to a chromebook,)*"
+ R"*(despite its current orientation. "TouchView" means that the)*"
+ R"*(chromebook will act as if it were in touch view mode. "Clamshell")*"
+ R"*(means that the chromebook will act as if it were in clamshell)*"
+ R"*(mode . "Auto" means that the chromebook will alternate between)*"
+ R"*(the two, based on its orientation.)*";
+
+const char kForceTabletModeTouchview[] =
+ R"*(TouchView)*";
+
+const char kForceTabletModeClamshell[] =
+ R"*(Clamshell)*";
+
+const char kForceTabletModeAuto[] =
+ R"*(Auto (default))*";
+
+// Print Preview features
+
+const char kPrintPdfAsImageName[] =
+ R"*(Print Pdf as Image)*";
+
+const char kPrintPdfAsImageDescription[] =
+ R"*(If enabled, an option to print PDF files as images will be)*"
+ R"*(available in print preview.)*";
+
+const char kPrintScalingName[] =
+ R"*(Print Scaling.)*";
+
+const char kPrintScalingDescription[] =
+ R"*(If enabled, an option to scale documents will be available in)*"
+ R"*(print preview.)*";
+
+const char kNaclName[] =
+ R"*(Native Client)*";
+
+#if defined(OS_ANDROID)
+
+const char kNaclDescription[] =
+ R"*(Enable support for Native Client.)*";
+
+#endif // defined(OS_ANDROID)
+
+#if !defined(OS_ANDROID)
+
+const char kNaclDescription[] =
+ R"*(Support Native Client for all web applications, even those that)*"
+ R"*(were not installed from the Chrome Web Store.)*";
+
+#endif // !defined(OS_ANDROID)
+
+const char kNaclDebugName[] =
+ R"*(Native Client GDB-based debugging)*";
+
+const char kNaclDebugDescription[] =
+ R"*(Enable GDB debug stub. This will stop a Native Client application)*"
+ R"*(on startup and wait for nacl-gdb (from the NaCl SDK) to attach to)*"
+ R"*(it.)*";
+
+#if !defined(OS_ANDROID)
+
+const char kPnaclSubzeroName[] =
+ R"*(Force PNaCl Subzero)*";
+
+const char kPnaclSubzeroDescription[] =
+ R"*(Force the use of PNaCl's fast Subzero translator for all pexe)*"
+ R"*(files.)*";
+
+#endif // !defined(OS_ANDROID)
+
+const char kNaclDebugMaskName[] =
+ R"*(Restrict Native Client GDB-based debugging by pattern)*";
+
+const char kNaclDebugMaskDescription[] =
+ R"*(Restricts Native Client application GDB-based debugging by URL of)*"
+ R"*(manifest file. Native Client GDB-based debugging must be enabled)*"
+ R"*(for this option to work.)*";
+
+const char kNaclDebugMaskChoiceDebugAll[] =
+ R"*(Debug everything.)*";
+
+const char kNaclDebugMaskChoiceExcludeUtilsPnacl[] =
+ R"*(Debug everything except secure shell and the PNaCl translator.)*";
+
+const char kNaclDebugMaskChoiceIncludeDebug[] =
+ R"*(Debug only if manifest URL ends with debug.nmf.)*";
+
+const char kEnableHttpFormWarningName[] =
+ R"*(Show in-form warnings for sensitive fields when the top-level)*"
+ R"*(page is not HTTPS)*";
+
+const char kEnableHttpFormWarningDescription[] =
+ R"*(Attaches a warning UI to any password or credit card fields)*"
+ R"*(detected when the top-level page is not HTTPS)*";
+
+const char kMarkHttpAsName[] =
+ R"*(Mark non-secure origins as non-secure)*";
+
+const char kMarkHttpAsDescription[] =
+ R"*(Change the UI treatment for HTTP pages)*";
+
+const char kMarkHttpAsDangerous[] =
+ R"*(Always mark HTTP as actively dangerous)*";
+
+const char kSavePageAsMhtmlName[] =
+ R"*(Save Page as MHTML)*";
+
+const char kSavePageAsMhtmlDescription[] =
+ R"*(Enables saving pages as MHTML: a single text file containing HTML)*"
+ R"*(and all sub-resources.)*";
+
+// Flag and values for MHTML Geenrator options lab.
+
+const char kMhtmlGeneratorOptionName[] =
+ R"*(MHTML Generation Option)*";
+
+const char kMhtmlGeneratorOptionDescription[] =
+ R"*(Provides experimental options for MHTML file generator.)*";
+
+const char kMhtmlSkipNostoreMain[] =
+ R"*(Skips no-store main frame.)*";
+
+const char kMhtmlSkipNostoreAll[] =
+ R"*(Skips all no-store resources.)*";
+
+const char kDeviceDiscoveryNotificationsName[] =
+ R"*(Device Discovery Notifications)*";
+
+const char kDeviceDiscoveryNotificationsDescription[] =
+ R"*(Device discovery notifications on local network.)*";
+
+#if defined(OS_WIN)
+
+const char kCloudPrintXpsName[] =
+ R"*(XPS in Google Cloud Print)*";
+
+const char kCloudPrintXpsDescription[] =
+ R"*(XPS enables advanced options for classic printers connected to)*"
+ R"*(the Cloud Print with Chrome. Printers must be re-connected after)*"
+ R"*(changing this flag.)*";
+
+#endif // defined(OS_WIN)
+
+const char kLoadMediaRouterComponentExtensionName[] =
+ R"*(Load Media Router Component Extension)*";
+
+const char kLoadMediaRouterComponentExtensionDescription[] =
+ R"*(Loads the Media Router component extension at startup.)*";
+
+const char kPrintPreviewRegisterPromosName[] =
+ R"*(Print Preview Registration Promos)*";
+
+const char kPrintPreviewRegisterPromosDescription[] =
+ R"*(Enable registering unregistered cloud printers from print)*"
+ R"*(preview.)*";
+
+const char kScrollPredictionName[] =
+ R"*(Scroll prediction)*";
+
+const char kTopChromeMd[] =
+ R"*(UI Layout for the browser's top chrome)*";
+
+const char kTopChromeMdDescription[] =
+ R"*(Toggles between normal and touch (formerly "hybrid") layouts.)*";
+
+const char kTopChromeMdMaterial[] =
+ R"*(Normal)*";
+
+const char kTopChromeMdMaterialHybrid[] =
+ R"*(Touch)*";
+
+const char kSiteSettings[] =
+ R"*(Site settings with All sites and Site details)*";
+
+const char kSiteSettingsDescription[] =
+ R"*(Adds new ways of viewing Site settings.)*";
+
+const char kSecondaryUiMd[] =
+ R"*(Material Design in the rest of the browser's native UI)*";
+
+const char kSecondaryUiMdDescription[] =
+ R"*(Extends the --top-chrome-md setting to secondary UI (bubbles,)*"
+ R"*(dialogs, etc.). On Mac, this enables MacViews, which uses)*"
+ R"*(toolkit-views for native browser dialogs.)*";
+
+const char kScrollPredictionDescription[] =
+ R"*(Predicts the finger's future position during scrolls allowing)*"
+ R"*(time to render the frame before the finger is there.)*";
+
+const char kAddToShelfName[] =
+ R"*(Add to shelf)*";
+
+const char kAddToShelfDescription[] =
+ R"*(Enable the display of add to shelf banners, which prompt a user)*"
+ R"*(to add a web app to their shelf, or other platform-specific)*"
+ R"*(equivalent.)*";
+
+const char kBypassAppBannerEngagementChecksName[] =
+ R"*(Bypass user engagement checks)*";
+
+const char kBypassAppBannerEngagementChecksDescription[] =
+ R"*(Bypasses user engagement checks for displaying app banners, such)*"
+ R"*(as requiring that users have visited the site before and that the)*"
+ R"*(banner hasn't been shown recently. This allows developers to test)*"
+ R"*(that other eligibility requirements for showing app banners, such)*"
+ R"*(as having a manifest, are met.)*";
+
+#if defined(OS_ANDROID)
+
+const char kAccessibilityTabSwitcherName[] =
+ R"*(Accessibility Tab Switcher)*";
+
+const char kAccessibilityTabSwitcherDescription[] =
+ R"*(Enable the accessibility tab switcher for Android.)*";
+
+const char kEnablePhysicalWebName[] =
+ R"*(Enable the Physical Web.)*";
+
+const char kEnablePhysicalWebDescription[] =
+ R"*(Enable scanning for URLs from Physical Web objects.)*";
+
+#endif // defined(OS_ANDROID)
+
+const char kTouchEventsName[] =
+ R"*(Touch Events API)*";
+
+const char kTouchEventsDescription[] =
+ R"*(Force Touch Events API feature detection to always be enabled or)*"
+ R"*(disabled, or to be enabled when a touchscreen is detected on)*"
+ R"*(startup (Automatic, the default).)*";
+
+const char kTouchAdjustmentName[] =
+ R"*(Touch adjustment)*";
+
+const char kTouchAdjustmentDescription[] =
+ R"*(Refine the position of a touch gesture in order to compensate for)*"
+ R"*(touches having poor resolution compared to a mouse.)*";
+
+const char kCompositedLayerBorders[] =
+ R"*(Composited render layer borders)*";
+
+const char kCompositedLayerBordersDescription[] =
+ R"*(Renders a border around composited Render Layers to help debug)*"
+ R"*(and study layer compositing.)*";
+
+const char kGlCompositedTextureQuadBorders[] =
+ R"*(GL composited texture quad borders)*";
+
+const char kGlCompositedTextureQuadBordersDescription[] =
+ R"*(Renders a border around GL composited texture quads to help debug)*"
+ R"*(and study overlay support.)*";
+
+const char kShowOverdrawFeedback[] =
+ R"*(Show overdraw feedback)*";
+
+const char kShowOverdrawFeedbackDescription[] =
+ R"*(Visualize overdraw by color-coding elements based on if they have)*"
+ R"*(other elements drawn underneath.)*";
+
+const char kUiPartialSwapName[] =
+ R"*(Partial swap)*";
+
+const char kUiPartialSwapDescription[] =
+ R"*(Sets partial swap behavior.)*";
+
+const char kDebugShortcutsName[] =
+ R"*(Debugging keyboard shortcuts)*";
+
+const char kIgnoreGpuBlacklistName[] =
+ R"*(Override software rendering list)*";
+
+const char kIgnoreGpuBlacklistDescription[] =
+ R"*(Overrides the built-in software rendering list and enables)*"
+ R"*(GPU-acceleration on unsupported system configurations.)*";
+
+const char kInertVisualViewportName[] =
+ R"*(Inert visual viewport.)*";
+
+const char kInertVisualViewportDescription[] =
+ R"*(Experiment to have all APIs reflect the layout viewport. This)*"
+ R"*(will make window.scroll properties relative to the layout)*"
+ R"*(viewport.)*";
+
+const char kExperimentalCanvasFeaturesName[] =
+ R"*(Experimental canvas features)*";
+
+const char kExperimentalCanvasFeaturesDescription[] =
+ R"*(Enables the use of experimental canvas features which are still)*"
+ R"*(in development.)*";
+
+const char kAccelerated2dCanvasName[] =
+ R"*(Accelerated 2D canvas)*";
+
+const char kAccelerated2dCanvasDescription[] =
+ R"*(Enables the use of the GPU to perform 2d canvas rendering instead)*"
+ R"*(of using software rendering.)*";
+
+const char kDisplayList2dCanvasName[] =
+ R"*(Display list 2D canvas)*";
+
+const char kDisplayList2dCanvasDescription[] =
+ R"*(Enables the use of display lists to record 2D canvas commands.)*"
+ R"*(This allows 2D canvas rasterization to be performed on separate)*"
+ R"*(thread.)*";
+
+const char kEnable2dCanvasDynamicRenderingModeSwitchingName[] =
+ R"*(Enable 2D canvas dynamic rendering mode switching.)*";
+
+const char kEnable2dCanvasDynamicRenderingModeSwitchingDescription[] =
+ R"*(There are multiple implementations of the graphics rendering)*"
+ R"*(pipeline for the 2D canvas. These different implementations have)*"
+ R"*(different performance characteristics. Turning on this flag)*"
+ R"*(allows canvas 2D contexts to switch between these implementations)*"
+ R"*(on the fly based on how the canvas is used in order to increase)*"
+ R"*(performance. For example, going from an implementation that uses)*"
+ R"*(the GPU to one that doesn't.)*";
+
+const char kExperimentalExtensionApisName[] =
+ R"*(Experimental Extension APIs)*";
+
+const char kExperimentalExtensionApisDescription[] =
+ R"*(Enables experimental extension APIs. Note that the extension)*"
+ R"*(gallery doesn't allow you to upload extensions that use)*"
+ R"*(experimental APIs.)*";
+
+const char kExtensionsOnChromeUrlsName[] =
+ R"*(Extensions on chrome:// URLs)*";
+
+const char kExtensionsOnChromeUrlsDescription[] =
+ R"*(Enables running extensions on chrome:// URLs, where extensions)*"
+ R"*(explicitly request this permission.)*";
+
+const char kFastUnloadName[] =
+ R"*(Fast tab/window close)*";
+
+const char kFastUnloadDescription[] =
+ R"*(Enables fast tab/window closing - runs a tab's onunload js)*"
+ R"*(handler independently of the GUI.)*";
+
+const char kUserConsentForExtensionScriptsName[] =
+ R"*(User consent for extension scripts)*";
+
+const char kUserConsentForExtensionScriptsDescription[] =
+ R"*(Require user consent for an extension running a script on the)*"
+ R"*(page, if the extension requested permission to run on all urls.)*";
+
+const char kHistoryRequiresUserGestureName[] =
+ R"*(New history entries require a user gesture.)*";
+
+const char kHistoryRequiresUserGestureDescription[] =
+ R"*(Require a user gesture to add a history entry.)*";
+
+const char kHyperlinkAuditingName[] =
+ R"*(Hyperlink auditing)*";
+
+const char kHyperlinkAuditingDescription[] =
+ R"*(Sends hyperlink auditing pings.)*";
+
+#if defined(OS_ANDROID)
+
+const char kContextualSearch[] =
+ R"*(Contextual Search)*";
+
+const char kContextualSearchDescription[] =
+ R"*(Whether or not Contextual Search is enabled.)*";
+
+const char kContextualSearchContextualCardsBarIntegration[] =
+ R"*(Contextual Search - Contextual Cards Integration)*";
+
+const char kContextualSearchContextualCardsBarIntegrationDescription[] =
+ R"*(Whether or not integration of Contextual Cards data in the)*"
+ R"*(Contextual Search Bar is enabled.)*";
+
+const char kContextualSearchSingleActions[] =
+ R"*(Contextual Search - Single Actions)*";
+
+const char kContextualSearchSingleActionsDescription[] =
+ R"*(Whether or not single actions using Contextual Cards data in the)*"
+ R"*(Contextual Search Bar is enabled.)*";
+
+const char kContextualSearchUrlActions[] =
+ R"*(Contextual Search - URL Actions)*";
+
+const char kContextualSearchUrlActionsDescription[] =
+ R"*(Whether or not URL actions using Contextual Cards data in the)*"
+ R"*(Contextual Search Bar is enabled.)*";
+
+#endif // defined(OS_ANDROID)
+
+const char kSmoothScrollingName[] =
+ R"*(Smooth Scrolling)*";
+
+const char kSmoothScrollingDescription[] =
+ R"*(Animate smoothly when scrolling page content.)*";
+
+const char kOverlayScrollbarsName[] =
+ R"*(Overlay Scrollbars)*";
+
+const char kOverlayScrollbarsDescription[] =
+ R"*(Enable the experimental overlay scrollbars implementation. You)*"
+ R"*(must also enable threaded compositing to have the scrollbars)*"
+ R"*(animate.)*";
+
+const char kShowAutofillTypePredictionsName[] =
+ R"*(Show Autofill predictions)*";
+
+const char kShowAutofillTypePredictionsDescription[] =
+ R"*(Annotates web forms with Autofill field type predictions as)*"
+ R"*(placeholder text.)*";
+
+const char kTcpFastOpenName[] =
+ R"*(TCP Fast Open)*";
+
+const char kTcpFastOpenDescription[] =
+ R"*(Enable the option to send extra authentication information in the)*"
+ R"*(initial SYN packet for a previously connected client, allowing)*"
+ R"*(faster data send start.)*";
+
+const char kTouchDragDropName[] =
+ R"*(Touch initiated drag and drop)*";
+
+const char kTouchDragDropDescription[] =
+ R"*(Touch drag and drop can be initiated through long press on a)*"
+ R"*(draggable element.)*";
+
+const char kTouchSelectionStrategyName[] =
+ R"*(Touch text selection strategy)*";
+
+const char kTouchSelectionStrategyDescription[] =
+ R"*(Controls how text selection granularity changes when touch text)*"
+ R"*(selection handles are dragged. Non-default behavior is)*"
+ R"*(experimental.)*";
+
+const char kTouchSelectionStrategyCharacter[] =
+ R"*(Character)*";
+
+const char kTouchSelectionStrategyDirection[] =
+ R"*(Direction)*";
+
+const char kWalletServiceUseSandboxName[] =
+ R"*(Use Google Payments sandbox servers)*";
+
+const char kWalletServiceUseSandboxDescription[] =
+ R"*(For developers: use the sandbox service for Google Payments API)*"
+ R"*(calls.)*";
+
+const char kOverscrollHistoryNavigationName[] =
+ R"*(Overscroll history navigation)*";
+
+const char kOverscrollHistoryNavigationDescription[] =
+ R"*(Experimental history navigation in response to horizontal)*"
+ R"*(overscroll.)*";
+
+const char kOverscrollHistoryNavigationSimpleUi[] =
+ R"*(Simple)*";
+
+const char kOverscrollStartThresholdName[] =
+ R"*(Overscroll start threshold)*";
+
+const char kOverscrollStartThresholdDescription[] =
+ R"*(Changes overscroll start threshold relative to the default)*"
+ R"*(value.)*";
+
+const char kOverscrollStartThreshold133Percent[] =
+ R"*(133%)*";
+
+const char kOverscrollStartThreshold166Percent[] =
+ R"*(166%)*";
+
+const char kOverscrollStartThreshold200Percent[] =
+ R"*(200%)*";
+
+const char kScrollEndEffectName[] =
+ R"*(Scroll end effect)*";
+
+const char kScrollEndEffectDescription[] =
+ R"*(Experimental scroll end effect in response to vertical)*"
+ R"*(overscroll.)*";
+
+const char kWebgl2Name[] =
+ R"*(WebGL 2.0)*";
+
+const char kWebgl2Description[] =
+ R"*(Allow web applications to access WebGL 2.0.)*";
+
+const char kWebglDraftExtensionsName[] =
+ R"*(WebGL Draft Extensions)*";
+
+const char kWebglDraftExtensionsDescription[] =
+ R"*(Enabling this option allows web applications to access the WebGL)*"
+ R"*(Extensions that are still in draft status.)*";
+
+const char kWebrtcHwDecodingName[] =
+ R"*(WebRTC hardware video decoding)*";
+
+const char kWebrtcHwDecodingDescription[] =
+ R"*(Support in WebRTC for decoding video streams using platform)*"
+ R"*(hardware.)*";
+
+const char kWebrtcHwEncodingName[] =
+ R"*(WebRTC hardware video encoding)*";
+
+const char kWebrtcHwEncodingDescription[] =
+ R"*(Support in WebRTC for encoding video streams using platform)*"
+ R"*(hardware.)*";
+
+const char kWebrtcHwH264EncodingName[] =
+ R"*(WebRTC hardware h264 video encoding)*";
+
+const char kWebrtcHwH264EncodingDescription[] =
+ R"*(Support in WebRTC for encoding h264 video streams using platform)*"
+ R"*(hardware.)*";
+
+const char kWebrtcSrtpAesGcmName[] =
+ R"*(Negotiation with GCM cipher suites for SRTP in WebRTC)*";
+
+const char kWebrtcSrtpAesGcmDescription[] =
+ R"*(When enabled, WebRTC will try to negotiate GCM cipher suites for)*"
+ R"*(SRTP.)*";
+
+const char kWebrtcStunOriginName[] =
+ R"*(WebRTC Stun origin header)*";
+
+const char kWebrtcStunOriginDescription[] =
+ R"*(When enabled, Stun messages generated by WebRTC will contain the)*"
+ R"*(Origin header.)*";
+
+const char kWebrtcEchoCanceller3Name[] =
+ R"*(WebRTC Echo Canceller 3.)*";
+
+const char kWebrtcEchoCanceller3Description[] =
+ R"*(Experimental WebRTC echo canceller (AEC3).)*";
+
+#if defined(OS_ANDROID)
+
+const char kMediaScreenCaptureName[] =
+ R"*(Experimental ScreenCapture.)*";
+
+const char kMediaScreenCaptureDescription[] =
+ R"*(Enable this option for experimental ScreenCapture feature on)*"
+ R"*(Android.)*";
+
+#endif // defined(OS_ANDROID)
+
+#if BUILDFLAG(ENABLE_WEBRTC)
+
+const char kWebrtcH264WithOpenh264FfmpegName[] =
+ R"*(WebRTC H.264 software video encoder/decoder)*";
+
+const char kWebrtcH264WithOpenh264FfmpegDescription[] =
+ R"*(When enabled, an H.264 software video encoder/decoder pair is)*"
+ R"*(included. If a hardware encoder/decoder is also available it may)*"
+ R"*(be used instead of this encoder/decoder.)*";
+
+#endif // BUILDFLAG(ENABLE_WEBRTC)
+
+const char kWebvrName[] =
+ R"*(WebVR)*";
+
+const char kWebvrDescription[] =
+ R"*(Enabling this option allows web applications to access)*"
+ R"*(experimental Virtual Reality APIs.)*";
+
+const char kWebvrExperimentalRenderingName[] =
+ R"*(WebVR experimental rendering optimizations)*";
+
+const char kWebvrExperimentalRenderingDescription[] =
+ R"*(Enabling this option activates experimental rendering path)*"
+ R"*(optimizations for WebVR.)*";
+
+const char kGamepadExtensionsName[] =
+ R"*(Gamepad Extensions)*";
+
+const char kGamepadExtensionsDescription[] =
+ R"*(Enabling this option allows web applications to access)*"
+ R"*(experimental extensions to the Gamepad APIs.)*";
+
+#if defined(OS_ANDROID)
+
+const char kNewPhotoPickerName[] =
+ R"*(Enable new Photopicker)*";
+
+const char kNewPhotoPickerDescription[] =
+ R"*(Activates the new picker for selecting photos.)*";
+
+#endif // defined(OS_ANDROID)
+
+#if defined(OS_ANDROID)
+
+const char kEnableOskOverscrollName[] =
+ R"*(Enable OSK Overscroll)*";
+
+const char kEnableOskOverscrollDescription[] =
+ R"*(Enable OSK overscroll support. With this flag on, the OSK will)*"
+ R"*(only resize the visual viewport.)*";
+
+#endif // defined(OS_ANDROID)
+
+const char kQuicName[] =
+ R"*(Experimental QUIC protocol)*";
+
+const char kQuicDescription[] =
+ R"*(Enable experimental QUIC protocol support.)*";
+
+const char kSslVersionMaxName[] =
+ R"*(Maximum TLS version enabled.)*";
+
+const char kSslVersionMaxDescription[] =
+ R"*(Set maximum enabled TLS version.)*";
+
+const char kSslVersionMaxTls12[] =
+ R"*(TLS 1.2)*";
+
+const char kSslVersionMaxTls13[] =
+ R"*(TLS 1.3)*";
+
+const char kEnableTokenBindingName[] =
+ R"*(Token Binding.)*";
+
+const char kEnableTokenBindingDescription[] =
+ R"*(Enable Token Binding support.)*";
+
+const char kGestureRequirementForMediaPlaybackName[] =
+ R"*(Gesture requirement for media playback)*";
+
+const char kGestureRequirementForMediaPlaybackDescription[] =
+ R"*(User gesture requirement for playing media elements. Disabling)*"
+ R"*(this will allow autoplay to work.)*";
+
+#if !defined(OS_ANDROID)
+
+const char kCrossOriginMediaPlaybackRequiresUserGestureName[] =
+ R"*(Media playback in cross-origin iframes requires user gesture)*";
+
+const char kCrossOriginMediaPlaybackRequiresUserGestureDescription[] =
+ R"*(Playing media elements in cross-origin iframes requires user)*"
+ R"*(gesture. Disabling this will allow autoplay in cross-origin)*"
+ R"*(iframes to work.)*";
+
+#endif // !defined(OS_ANDROID)
+
+const char kPassiveDocumentEventListenersDescription[] =
+ R"*(Forces touchstart, and touchmove event listeners on document)*"
+ R"*(level targets (which haven't requested otherwise) to be treated)*"
+ R"*(as passive.)*";
+
+const char kPassiveDocumentEventListenersName[] =
+ R"*(Document Level Event Listeners Passive Default)*";
+
+const char kPassiveEventListenersDueToFlingDescription[] =
+ R"*(Forces touchstart, and first touchmove per scroll event listeners)*"
+ R"*(during fling to be treated as passive.)*";
+
+const char kPassiveEventListenersDueToFlingName[] =
+ R"*(Touch Event Listeners Passive Default During Fling)*";
+
+const char kPassiveEventListenerTrue[] =
+ R"*(True (when unspecified))*";
+
+const char kPassiveEventListenerForceAllTrue[] =
+ R"*(Force All True)*";
+
+const char kPassiveEventListenerDefaultName[] =
+ R"*(Passive Event Listener Override)*";
+
+const char kPassiveEventListenerDefaultDescription[] =
+ R"*(Forces touchstart, touchmove, mousewheel and wheel event)*"
+ R"*(listeners (which haven't requested otherwise) to be treated as)*"
+ R"*(passive. This will break touch/wheel behavior on some websites)*"
+ R"*(but is useful for demonstrating the potential performance)*"
+ R"*(benefits of adopting passive event listeners.)*";
+
+#if defined(OS_ANDROID)
+
+const char kImportantSitesInCbdName[] =
+ R"*(Important sites options in clear browsing data dialog)*";
+
+const char kImportantSitesInCbdDescription[] =
+ R"*(Include the option to whitelist important sites in the clear)*"
+ R"*(browsing data dialog.)*";
+
+#endif // defined(OS_ANDROID)
+
+#if defined(USE_ASH)
+
+const char kAshShelfColor[] =
+ R"*(Shelf Color in Chrome OS system UI)*";
+
+const char kAshShelfColorDescription[] =
+ R"*(Specify the Shelf Color scheme in Chrome OS system UI)*";
+
+const char kAshShelfColorLightVibrant[] =
+ R"*(Light & Vibrant)*";
+
+const char kAshShelfColorNormalVibrant[] =
+ R"*(Normal & Vibrant)*";
+
+const char kAshShelfColorDarkVibrant[] =
+ R"*(Dark & Vibrant)*";
+
+const char kAshShelfColorLightMuted[] =
+ R"*(Light & Muted)*";
+
+const char kAshShelfColorNormalMuted[] =
+ R"*(Normal & Muted)*";
+
+const char kAshShelfColorDarkMuted[] =
+ R"*(Dark & Muted)*";
+
+const char kAshMaximizeModeWindowBackdropName[] =
+ R"*(Window backdrops in TouchView)*";
+
+const char kAshMaximizeModeWindowBackdropDescription[] =
+ R"*(Show grey window backdrops used in TouchView (maximize mode))*"
+ R"*(behind windows which cannot be maximized.)*";
+
+const char kAshScreenOrientationLockName[] =
+ R"*(Screen Orientation locking)*";
+
+const char kAshScreenOrientationLockDescription[] =
+ R"*(Allows javascript to lock the screen orienation.)*";
+
+const char kAshEnableMirroredScreenName[] =
+ R"*(Enable mirrored screen mode.)*";
+
+const char kAshEnableMirroredScreenDescription[] =
+ R"*(Enable the mirrored screen mode. This mode flips the screen image)*"
+ R"*(horizontally.)*";
+
+const char kMaterialDesignInkDropAnimationFast[] =
+ R"*(Fast)*";
+
+const char kMaterialDesignInkDropAnimationSlow[] =
+ R"*(Slow)*";
+
+const char kMaterialDesignInkDropAnimationSpeedName[] =
+ R"*(Material Design Ink Drop Animation Speed)*";
+
+const char kMaterialDesignInkDropAnimationSpeedDescription[] =
+ R"*(Sets the speed of the experimental visual feedback animations for)*"
+ R"*(material design.)*";
+
+const char kUiSlowAnimationsName[] =
+ R"*(Slow UI animations)*";
+
+const char kUiSlowAnimationsDescription[] =
+ R"*(Makes all UI animations slow.)*";
+
+#endif // defined(USE_ASH)
+
+const char kJavascriptHarmonyShippingName[] =
+ R"*(Latest stable JavaScript features)*";
+
+const char kJavascriptHarmonyShippingDescription[] =
+ R"*(Some web pages use legacy or non-standard JavaScript extensions)*"
+ R"*(that may conflict with the latest JavaScript features. This flag)*"
+ R"*(allows disabling support of those features for compatibility with)*"
+ R"*(such pages.)*";
+
+const char kJavascriptHarmonyName[] =
+ R"*(Experimental JavaScript)*";
+
+const char kJavascriptHarmonyDescription[] =
+ R"*(Enable web pages to use experimental JavaScript features.)*";
+
+const char kV8FutureName[] =
+ R"*(Experimental Features in V8 JavaScript execution)*";
+
+const char kV8FutureDescription[] =
+ R"*(Enable experimental features in V8 for JavaScript execution.)*";
+
+const char kV8DisableIgnitionTurboName[] =
+ R"*(Disable the new JavaScript Compilation Pipeline)*";
+
+const char kV8DisableIgnitionTurboDescription[] =
+ R"*(Disable V8's new Ignition interpreter and TurboFan compiler for)*"
+ R"*(JavaScript execution.)*";
+
+const char kEnableAsmWasmName[] =
+ R"*(Experimental Validate Asm.js and convert to WebAssembly when)*"
+ R"*(valid.)*";
+
+const char kEnableAsmWasmDescription[] =
+ R"*(Validate Asm.js when "use asm" is present and then convert to)*"
+ R"*(WebAssembly.)*";
+
+const char kEnableSharedArrayBufferName[] =
+ R"*(Experimental enabled SharedArrayBuffer support in JavaScript.)*";
+
+const char kEnableSharedArrayBufferDescription[] =
+ R"*(Enable SharedArrayBuffer support in JavaScript.)*";
+
+const char kEnableWasmName[] =
+ R"*(WebAssembly structured cloning support.)*";
+
+const char kEnableWasmDescription[] =
+ R"*(Enable web pages to use WebAssembly structured cloning.)*";
+
+#if defined(OS_ANDROID)
+
+const char kMediaDocumentDownloadButtonName[] =
+ R"*(Download button when opening a page with media url.)*";
+
+const char kMediaDocumentDownloadButtonDescription[] =
+ R"*(Allow a download button to show up when opening a page with media)*"
+ R"*(url.)*";
+
+#endif // defined(OS_ANDROID)
+
+const char kSoftwareRasterizerName[] =
+ R"*(3D software rasterizer)*";
+
+const char kSoftwareRasterizerDescription[] =
+ R"*(Fall back to a 3D software rasterizer when the GPU cannot be)*"
+ R"*(used.)*";
+
+const char kGpuRasterizationName[] =
+ R"*(GPU rasterization)*";
+
+const char kGpuRasterizationDescription[] =
+ R"*(Use GPU to rasterize web content. Requires impl-side painting.)*";
+
+const char kForceGpuRasterization[] =
+ R"*(Force-enabled for all layers)*";
+
+const char kGpuRasterizationMsaaSampleCountName[] =
+ R"*(GPU rasterization MSAA sample count.)*";
+
+const char kGpuRasterizationMsaaSampleCountDescription[] =
+ R"*(Specify the number of MSAA samples for GPU rasterization.)*";
+
+const char kGpuRasterizationMsaaSampleCountZero[] =
+ R"*(0)*";
+
+const char kGpuRasterizationMsaaSampleCountTwo[] =
+ R"*(2)*";
+
+const char kGpuRasterizationMsaaSampleCountFour[] =
+ R"*(4)*";
+
+const char kGpuRasterizationMsaaSampleCountEight[] =
+ R"*(8)*";
+
+const char kGpuRasterizationMsaaSampleCountSixteen[] =
+ R"*(16)*";
+
+const char kSlimmingPaintInvalidationName[] =
+ R"*(Slimming paint invalidation.)*";
+
+const char kSlimmingPaintInvalidationDescription[] =
+ R"*(Whether to enable a new paint invalidation system.)*";
+
+const char kExperimentalSecurityFeaturesName[] =
+ R"*(Potentially annoying security features)*";
+
+const char kExperimentalSecurityFeaturesDescription[] =
+ R"*(Enables several security features that will likely break one or)*"
+ R"*(more pages that you visit on a daily basis. Strict mixed content)*"
+ R"*(checking, for example. And locking powerful features to secure)*"
+ R"*(contexts. This flag will probably annoy you.)*";
+
+const char kExperimentalWebPlatformFeaturesName[] =
+ R"*(Experimental Web Platform features)*";
+
+const char kExperimentalWebPlatformFeaturesDescription[] =
+ R"*(Enables experimental Web Platform features that are in)*"
+ R"*(development.)*";
+
+const char kExperimentalPointerEventName[] =
+ R"*(Pointer Events)*";
+
+const char kExperimentalPointerEventDescription[] =
+ R"*(Enables support for the Pointer Events API. This is intended only)*"
+ R"*(for testing by web developers.)*";
+
+const char kOriginTrialsName[] =
+ R"*(Origin Trials)*";
+
+const char kOriginTrialsDescription[] =
+ R"*(Enables origin trials for controlling access to feature/API)*"
+ R"*(experiments.)*";
+
+const char kBleAdvertisingInExtensionsName[] =
+ R"*(BLE Advertising in Chrome Apps)*";
+
+const char kBleAdvertisingInExtensionsDescription[] =
+ R"*(Enables BLE Advertising in Chrome Apps. BLE Advertising might)*"
+ R"*(interfere with regular use of Bluetooth Low Energy features.)*";
+
+const char kDevtoolsExperimentsName[] =
+ R"*(Developer Tools experiments)*";
+
+const char kDevtoolsExperimentsDescription[] =
+ R"*(Enables Developer Tools experiments. Use Settings panel in)*"
+ R"*(Developer Tools to toggle individual experiments.)*";
+
+const char kSilentDebuggerExtensionApiName[] =
+ R"*(Silent Debugging)*";
+
+const char kSilentDebuggerExtensionApiDescription[] =
+ R"*(Do not show the infobar when an extension attaches to a page via)*"
+ R"*(chrome.debugger API. This is required to debug extension)*"
+ R"*(background pages.)*";
+
+const char kShowTouchHudName[] =
+ R"*(Show HUD for touch points)*";
+
+const char kShowTouchHudDescription[] =
+ R"*(Enables a heads-up display at the top-left corner of the screen)*"
+ R"*(that lists information about the touch-points on the screen.)*";
+
+const char kPreferHtmlOverPluginsName[] =
+ R"*(Prefer HTML over Flash)*";
+
+const char kPreferHtmlOverPluginsDescription[] =
+ R"*(Prefer HTML content by hiding Flash from the list of plugins.)*";
+
+const char kAllowNaclSocketApiName[] =
+ R"*(NaCl Socket API.)*";
+
+const char kAllowNaclSocketApiDescription[] =
+ R"*(Allows applications to use NaCl Socket API. Use only to test NaCl)*"
+ R"*(plugins.)*";
+
+const char kRunAllFlashInAllowModeName[] =
+ R"*(Run all Flash content when Flash setting is set to "allow")*";
+
+const char kRunAllFlashInAllowModeDescription[] =
+ R"*(For sites that have been set to "allow" Flash content, run all)*"
+ R"*(content including any that has been deemed unimportant.)*";
+
+const char kPinchScaleName[] =
+ R"*(Pinch scale)*";
+
+const char kPinchScaleDescription[] =
+ R"*(Enables experimental support for scale using pinch.)*";
+
+const char kCredentialManagerApiName[] =
+ R"*(Experimental Credential Manager API)*";
+
+const char kCredentialManagerApiDescription[] =
+ R"*(Enables an experimental implementation of the Credential Manager)*"
+ R"*(API. Don't enable this unless you know what you're doing.)*";
+
+const char kReducedReferrerGranularityName[] =
+ R"*(Reduce default 'referer' header granularity.)*";
+
+const char kReducedReferrerGranularityDescription[] =
+ R"*(If a page hasn't set an explicit referrer policy, setting this)*"
+ R"*(flag will reduce the amount of information in the 'referer')*"
+ R"*(header for cross-origin requests.)*";
+
+#if defined(OS_CHROMEOS)
+
+const char kUseMashName[] =
+ R"*(Mojo UI Service (mus).)*";
+
+const char kUseMashDescription[] =
+ R"*(Enable mus, mash etc.)*";
+
+const char kAllowTouchpadThreeFingerClickName[] =
+ R"*(Touchpad three-finger-click)*";
+
+const char kAllowTouchpadThreeFingerClickDescription[] =
+ R"*(Enables touchpad three-finger-click as middle button.)*";
+
+const char kAshEnableUnifiedDesktopName[] =
+ R"*(Unified desktop mode)*";
+
+const char kAshEnableUnifiedDesktopDescription[] =
+ R"*(Enable unified desktop mode which allows a window to span)*"
+ R"*(multiple displays.)*";
+
+const char kBootAnimation[] =
+ R"*(Boot animation)*";
+
+const char kBootAnimationDescription[] =
+ R"*(Wallpaper boot animation (except for OOBE case).)*";
+
+#endif // defined(OS_CHROMEOS)
+
+const char kAcceleratedVideoDecodeName[] =
+ R"*(Hardware-accelerated video decode)*";
+
+const char kAcceleratedVideoDecodeDescription[] =
+ R"*(Hardware-accelerated video decode where available.)*";
+
+const char kCloudImport[] =
+ R"*(Cloud Import)*";
+
+const char kCloudImportDescription[] =
+ R"*(Allows the cloud-import feature.)*";
+
+const char kRequestTabletSiteName[] =
+ R"*(Request tablet site option in the settings menu)*";
+
+const char kRequestTabletSiteDescription[] =
+ R"*(Allows the user to request tablet site. Web content is often)*"
+ R"*(optimized for tablet devices. When this option is selected the)*"
+ R"*(user agent string is changed to indicate a tablet device. Web)*"
+ R"*(content optimized for tablets is received there after for the)*"
+ R"*(current tab.)*";
+
+const char kDebugPackedAppName[] =
+ R"*(Debugging for packed apps)*";
+
+const char kDebugPackedAppDescription[] =
+ R"*(Enables debugging context menu options such as Inspect Element)*"
+ R"*(for packed applications.)*";
+
+const char kDropSyncCredentialName[] =
+ R"*(Drop sync credentials from password manager)*";
+
+const char kDropSyncCredentialDescription[] =
+ R"*(The password manager will not offer to save the credential used)*"
+ R"*(to sync.)*";
+
+const char kPasswordGenerationName[] =
+ R"*(Password generation)*";
+
+const char kPasswordGenerationDescription[] =
+ R"*(Allow the user to have Chrome generate passwords when it detects)*"
+ R"*(account creation pages.)*";
+
+const char kPasswordForceSavingName[] =
+ R"*(Force-saving of passwords)*";
+
+const char kPasswordForceSavingDescription[] =
+ R"*(Allow the user to manually enforce password saving instead of)*"
+ R"*(relying on password manager's heuristics.)*";
+
+const char kManualPasswordGenerationName[] =
+ R"*(Manual password generation.)*";
+
+const char kManualPasswordGenerationDescription[] =
+ R"*(Show a 'Generate Password' option on the context menu for all)*"
+ R"*(password fields.)*";
+
+const char kShowAutofillSignatures[] =
+ R"*(Show autofill signatures.)*";
+
+const char kShowAutofillSignaturesDescription[] =
+ R"*(Annotates web forms with Autofill signatures as HTML attributes.)*";
+
+const char kSuggestionsWithSubStringMatchName[] =
+ R"*(Substring matching for Autofill suggestions)*";
+
+const char kSuggestionsWithSubStringMatchDescription[] =
+ R"*(Match Autofill suggestions based on substrings (token prefixes))*"
+ R"*(rather than just prefixes.)*";
+
+const char kAffiliationBasedMatchingName[] =
+ R"*(Affiliation based matching in password manager)*";
+
+const char kAffiliationBasedMatchingDescription[] =
+ R"*(Allow credentials stored for Android applications to be filled)*"
+ R"*(into corresponding websites.)*";
+
+const char kProtectSyncCredentialName[] =
+ R"*(Autofill sync credential)*";
+
+const char kProtectSyncCredentialDescription[] =
+ R"*(How the password manager handles autofill for the sync)*"
+ R"*(credential.)*";
+
+const char kPasswordImportExportName[] =
+ R"*(Password import and export)*";
+
+const char kPasswordImportExportDescription[] =
+ R"*(Import and Export functionality in password settings.)*";
+
+const char kProtectSyncCredentialOnReauthName[] =
+ R"*(Autofill sync credential only for transactional reauth pages)*";
+
+const char kProtectSyncCredentialOnReauthDescription[] =
+ R"*(How the password manager handles autofill for the sync credential)*"
+ R"*(only for transactional reauth pages.)*";
+
+const char kIconNtpName[] =
+ R"*(Large icons on the New Tab page)*";
+
+const char kIconNtpDescription[] =
+ R"*(Enable the experimental New Tab page using large icons.)*";
+
+const char kPushApiBackgroundModeName[] =
+ R"*(Enable Push API background mode)*";
+
+const char kPushApiBackgroundModeDescription[] =
+ R"*(Enable background mode for the Push API. This allows Chrome to)*"
+ R"*(continue running after the last window is closed, and to launch)*"
+ R"*(at OS startup, if the Push API needs it.)*";
+
+const char kEnableNavigationTracing[] =
+ R"*(Enable navigation tracing)*";
+
+const char kEnableNavigationTracingDescription[] =
+ R"*(This is to be used in conjunction with the trace-upload-url flag.)*"
+ R"*(WARNING: When enabled, Chrome will record performance data for)*"
+ R"*(every navigation and upload it to the URL specified by the)*"
+ R"*(trace-upload-url flag. The trace may include personally)*"
+ R"*(identifiable information (PII) such as the titles and URLs of)*"
+ R"*(websites you visit.)*";
+
+const char kTraceUploadUrl[] =
+ R"*(Trace label for navigation tracing)*";
+
+const char kTraceUploadUrlDescription[] =
+ R"*(This is to be used in conjunction with the)*"
+ R"*(enable-navigation-tracing flag. Please select the label that best)*"
+ R"*(describes the recorded traces. This will choose the destination)*"
+ R"*(the traces are uploaded to. If you are not sure, select other. If)*"
+ R"*(left empty, no traces will be uploaded.)*";
+
+const char kDisableAudioForDesktopShare[] =
+ R"*(Disable Audio For Desktop Share)*";
+
+const char kDisableAudioForDesktopShareDescription[] =
+ R"*(With this flag on, desktop share picker window will not let the)*"
+ R"*(user choose whether to share audio.)*";
+
+const char kDisableTabForDesktopShare[] =
+ R"*(Disable Desktop Share with tab source)*";
+
+const char kDisableTabForDesktopShareDescription[] =
+ R"*(This flag controls whether users can choose a tab for desktop)*"
+ R"*(share.)*";
+
+const char kTraceUploadUrlChoiceOther[] =
+ R"*(Other)*";
+
+const char kTraceUploadUrlChoiceEmloading[] =
+ R"*(emloading)*";
+
+const char kTraceUploadUrlChoiceQa[] =
+ R"*(QA)*";
+
+const char kTraceUploadUrlChoiceTesting[] =
+ R"*(Testing)*";
+
+const char kSupervisedUserManagedBookmarksFolderName[] =
+ R"*(Managed bookmarks for supervised users)*";
+
+const char kSupervisedUserManagedBookmarksFolderDescription[] =
+ R"*(Enable the managed bookmarks folder for supervised users.)*";
+
+const char kSyncAppListName[] =
+ R"*(App Launcher sync)*";
+
+const char kSyncAppListDescription[] =
+ R"*(Enable App Launcher sync. This also enables Folders where)*"
+ R"*(available (non OSX).)*";
+
+const char kDriveSearchInChromeLauncher[] =
+ R"*(Drive Search in Chrome App Launcher)*";
+
+const char kDriveSearchInChromeLauncherDescription[] =
+ R"*(Files from Drive will show up when searching the Chrome App)*"
+ R"*(Launcher.)*";
+
+const char kV8CacheOptionsName[] =
+ R"*(V8 caching mode.)*";
+
+const char kV8CacheOptionsDescription[] =
+ R"*(Caching mode for the V8 JavaScript engine.)*";
+
+const char kV8CacheOptionsParse[] =
+ R"*(Cache V8 parser data.)*";
+
+const char kV8CacheOptionsCode[] =
+ R"*(Cache V8 compiler data.)*";
+
+const char kV8CacheStrategiesForCacheStorageName[] =
+ R"*(V8 caching strategy for CacheStorage.)*";
+
+const char kV8CacheStrategiesForCacheStorageDescription[] =
+ R"*(Caching strategy of scripts in CacheStorage for the V8 JavaScript)*"
+ R"*(engine.)*";
+
+const char kV8CacheStrategiesForCacheStorageNormal[] =
+ R"*(Normal)*";
+
+const char kV8CacheStrategiesForCacheStorageAggressive[] =
+ R"*(Aggressive)*";
+
+const char kSpeculativeLaunchServiceWorkerName[] =
+ R"*(Speculative launch of service workers.)*";
+
+const char kSpeculativeLaunchServiceWorkerDescription[] =
+ R"*(Speculatively launch service workers using touch and mouse)*"
+ R"*(events.)*";
+
+const char kMemoryCoordinatorName[] =
+ R"*(Memory coordinator)*";
+
+const char kMemoryCoordinatorDescription[] =
+ R"*(Enable memory coordinator instead of memory pressure listeners.)*";
+
+const char kServiceWorkerNavigationPreloadName[] =
+ R"*(Service worker navigation preload.)*";
+
+const char kServiceWorkerNavigationPreloadDescription[] =
+ R"*(Enable web pages to use the experimental service worker)*"
+ R"*(navigation preload API.)*";
+
+#if defined(OS_ANDROID)
+
+const char kUploadCrashReportsUsingJobSchedulerName[] =
+ R"*(Upload crash reports using JobScheduler API.)*";
+
+const char kUploadCrashReportsUsingJobSchedulerDescription[] =
+ R"*(Use the JobScheduler API to upload crash reports. This does not)*"
+ R"*(affect whether or not crash reports will be uploaded. Rather,)*"
+ R"*(*if* a crash report is going to be uploaded, this flag affects)*"
+ R"*(*how* it is uploaded.)*";
+
+#endif // defined(OS_ANDROID)
+
+// Data Reduction Proxy
+
+const char kDataReductionProxyLoFiName[] =
+ R"*(Data Saver Lo-Fi mode)*";
+
+const char kDataReductionProxyLoFiDescription[] =
+ R"*(Forces Data Saver Lo-Fi mode to be always enabled, enabled only)*"
+ R"*(on cellular connections, or disabled. Data Saver must be enabled)*"
+ R"*(for Lo-Fi mode to be used.)*";
+
+const char kDataReductionProxyLoFiAlwaysOn[] =
+ R"*(Always on)*";
+
+const char kDataReductionProxyLoFiCellularOnly[] =
+ R"*(Cellular only)*";
+
+const char kDataReductionProxyLoFiDisabled[] =
+ R"*(Disable)*";
+
+const char kDataReductionProxyLoFiSlowConnectionsOnly[] =
+ R"*(Slow connections only)*";
+
+const char kEnableDataReductionProxyLitePageName[] =
+ R"*(Lite pages for Data Saver Lo-Fi mode)*";
+
+const char kEnableDataReductionProxyLitePageDescription[] =
+ R"*(Enable lite pages in Data Saver Lo-Fi mode. Previews of pages)*"
+ R"*(will be shown instead of image placeholders when Lo-Fi is on.)*"
+ R"*(Data Saver and Lo-Fi must be enabled for lite pages to be shown.)*";
+
+const char kDataReductionProxyCarrierTestName[] =
+ R"*(Enable a carrier-specific Data Reduction Proxy for testing.)*";
+
+const char kDataReductionProxyCarrierTestDescription[] =
+ R"*(Use a carrier-specific Data Reduction Proxy for testing.)*";
+
+const char kEnableDataReductionProxySavingsPromoName[] =
+ R"*(Data Saver 1 MB Savings Promo)*";
+
+const char kEnableDataReductionProxySavingsPromoDescription[] =
+ R"*(Enable a Data Saver promo for 1 MB of savings. If Data Saver has)*"
+ R"*(already saved 1 MB of data, then the promo will not be shown.)*"
+ R"*(Data Saver must be enabled for the promo to be shown.)*";
+
+const char kLcdTextName[] =
+ R"*(LCD text antialiasing)*";
+
+const char kLcdTextDescription[] =
+ R"*(If disabled, text is rendered with grayscale antialiasing instead)*"
+ R"*(of LCD (subpixel) when doing accelerated compositing.)*";
+
+const char kDistanceFieldTextName[] =
+ R"*(Distance field text)*";
+
+const char kDistanceFieldTextDescription[] =
+ R"*(Text is rendered with signed distance fields rather than bitmap)*"
+ R"*(alpha masks.)*";
+
+const char kZeroCopyName[] =
+ R"*(Zero-copy rasterizer)*";
+
+const char kZeroCopyDescription[] =
+ R"*(Raster threads write directly to GPU memory associated with)*"
+ R"*(tiles.)*";
+
+const char kHideInactiveStackedTabCloseButtonsName[] =
+ R"*(Hiding close buttons on inactive tabs when stacked)*";
+
+const char kHideInactiveStackedTabCloseButtonsDescription[] =
+ R"*(Hides the close buttons of inactive tabs when the tabstrip is in)*"
+ R"*(stacked mode.)*";
+
+const char kDefaultTileWidthName[] =
+ R"*(Default tile width)*";
+
+const char kDefaultTileWidthDescription[] =
+ R"*(Specify the default tile width.)*";
+
+const char kDefaultTileWidthShort[] =
+ R"*(128)*";
+
+const char kDefaultTileWidthTall[] =
+ R"*(256)*";
+
+const char kDefaultTileWidthGrande[] =
+ R"*(512)*";
+
+const char kDefaultTileWidthVenti[] =
+ R"*(1024)*";
+
+const char kDefaultTileHeightName[] =
+ R"*(Default tile height)*";
+
+const char kDefaultTileHeightDescription[] =
+ R"*(Specify the default tile height.)*";
+
+const char kDefaultTileHeightShort[] =
+ R"*(128)*";
+
+const char kDefaultTileHeightTall[] =
+ R"*(256)*";
+
+const char kDefaultTileHeightGrande[] =
+ R"*(512)*";
+
+const char kDefaultTileHeightVenti[] =
+ R"*(1024)*";
+
+const char kNumRasterThreadsName[] =
+ R"*(Number of raster threads)*";
+
+const char kNumRasterThreadsDescription[] =
+ R"*(Specify the number of raster threads.)*";
+
+const char kNumRasterThreadsOne[] =
+ R"*(1)*";
+
+const char kNumRasterThreadsTwo[] =
+ R"*(2)*";
+
+const char kNumRasterThreadsThree[] =
+ R"*(3)*";
+
+const char kNumRasterThreadsFour[] =
+ R"*(4)*";
+
+const char kResetAppListInstallStateName[] =
+ R"*(Reset the App Launcher install state on every restart.)*";
+
+const char kResetAppListInstallStateDescription[] =
+ R"*(Reset the App Launcher install state on every restart. While this)*"
+ R"*(flag is set, Chrome will forget the launcher has been installed)*"
+ R"*(each time it starts. This is used for testing the App Launcher)*"
+ R"*(install flow.)*";
+
+#if defined(OS_CHROMEOS)
+
+const char kFirstRunUiTransitionsName[] =
+ R"*(Animated transitions in the first-run tutorial)*";
+
+const char kFirstRunUiTransitionsDescription[] =
+ R"*(Transitions during first-run tutorial are animated.)*";
+
+#endif // defined(OS_CHROMEOS)
+
+const char kNewBookmarkAppsName[] =
+ R"*(The new bookmark app system)*";
+
+const char kNewBookmarkAppsDescription[] =
+ R"*(Enables the new system for creating bookmark apps.)*";
+
+#if defined(OS_MACOSX)
+
+const char kHostedAppsInWindowsName[] =
+ R"*(Allow hosted apps to be opened in windows)*";
+
+const char kHostedAppsInWindowsDescription[] =
+ R"*(Allows hosted apps to be opened in windows instead of being)*"
+ R"*(limited to tabs.)*";
+
+const char kTabDetachingInFullscreenName[] =
+ R"*(Allow tab detaching in fullscreen)*";
+
+const char kTabDetachingInFullscreenDescription[] =
+ R"*(Allow tabs to detach from the tabstrip when in fullscreen mode on)*"
+ R"*(Mac.)*";
+
+const char kFullscreenToolbarRevealName[] =
+ R"*(Enables the toolbar in fullscreen to reveal itself.)*";
+
+const char kFullscreenToolbarRevealDescription[] =
+ R"*(Reveal the toolbar in fullscreen for a short period when the tab)*"
+ R"*(strip has changed.)*";
+
+const char kTabStripKeyboardFocusName[] =
+ R"*(Tab Strip Keyboard Focus)*";
+
+const char kTabStripKeyboardFocusDescription[] =
+ R"*(Enable keyboard focus for the tabs in the tab strip.)*";
+
+#endif // defined(OS_MACOSX)
+
+const char kHostedAppShimCreationName[] =
+ R"*(Creation of app shims for hosted apps on Mac)*";
+
+const char kHostedAppShimCreationDescription[] =
+ R"*(Create app shims on Mac when creating a hosted app.)*";
+
+const char kHostedAppQuitNotificationName[] =
+ R"*(Quit notification for hosted apps)*";
+
+const char kHostedAppQuitNotificationDescription[] =
+ R"*(Display a notification when quitting Chrome if hosted apps are)*"
+ R"*(currently running.)*";
+
+#if defined(OS_ANDROID)
+
+const char kPullToRefreshEffectName[] =
+ R"*(The pull-to-refresh effect)*";
+
+const char kPullToRefreshEffectDescription[] =
+ R"*(Page reloads triggered by vertically overscrolling content.)*";
+
+#endif // defined(OS_ANDROID)
+
+#if defined(OS_MACOSX)
+
+const char kTranslateNewUxName[] =
+ R"*(New Translate UX)*";
+
+const char kTranslateNewUxDescription[] =
+ R"*(Enable the new Translate bubble UX is offered instead of the)*"
+ R"*(infobar.)*";
+
+#endif // defined(OS_MACOSX)
+
+const char kTranslate2016q2UiName[] =
+ R"*(Translate 2016Q2 UI)*";
+
+const char kTranslate2016q2UiDescription[] =
+ R"*(Improved triggering logic and look for Translate Bubble UI)*";
+
+const char kTranslateLanguageByUlpName[] =
+ R"*(Translate Language by ULP)*";
+
+const char kTranslateLanguageByUlpDescription[] =
+ R"*(Improved translate target language and triggering logic by)*"
+ R"*(considering information from User Language Profile (ULP).)*";
+
+const char kViewsRectBasedTargetingName[] =
+ R"*(Rect-based targeting in views)*";
+
+const char kViewsRectBasedTargetingDescription[] =
+ R"*(Rect-based targeting uses a heuristic to determine the most)*"
+ R"*(probable target of a gesture, where the touch region is)*"
+ R"*(represented by a rectangle.)*";
+
+const char kPermissionActionReportingName[] =
+ R"*(Permission Action Reporting)*";
+
+const char kPermissionActionReportingDescription[] =
+ R"*(Enables permission action reporting to Safe Browsing servers for)*"
+ R"*(opted in users.)*";
+
+const char kPermissionsBlacklistName[] =
+ R"*(Permissions Blacklist)*";
+
+const char kPermissionsBlacklistDescription[] =
+ R"*(Enables the Permissions Blacklist, which blocks permissions for)*"
+ R"*(blacklisted sites for Safe Browsing users.)*";
+
+const char kThreadedScrollingName[] =
+ R"*(Threaded scrolling)*";
+
+const char kThreadedScrollingDescription[] =
+ R"*(Threaded handling of scroll-related input events. Disabling this)*"
+ R"*(will force all such scroll events to be handled on the main)*"
+ R"*(thread. Note that this can dramatically hurt scrolling)*"
+ R"*(performance of most websites and is intended for testing purposes)*"
+ R"*(only.)*";
+
+const char kHarfbuzzRendertextName[] =
+ R"*(HarfBuzz for UI text)*";
+
+const char kHarfbuzzRendertextDescription[] =
+ R"*(Enable cross-platform HarfBuzz layout engine for UI text. Doesn't)*"
+ R"*(affect web content.)*";
+
+const char kEmbeddedExtensionOptionsName[] =
+ R"*(Embedded extension options)*";
+
+const char kEmbeddedExtensionOptionsDescription[] =
+ R"*(Display extension options as an embedded element in)*"
+ R"*(chrome://extensions rather than opening a new tab.)*";
+
+const char kTabAudioMutingName[] =
+ R"*(Tab audio muting UI control)*";
+
+const char kTabAudioMutingDescription[] =
+ R"*(When enabled, the audio indicators in the tab strip double as tab)*"
+ R"*(audio mute controls. This also adds commands in the tab context)*"
+ R"*(menu for quickly muting multiple selected tabs.)*";
+
+const char kEasyUnlockBluetoothLowEnergyDiscoveryName[] =
+ R"*(Smart Lock Bluetooth Low Energy Discovery)*";
+
+const char kEasyUnlockBluetoothLowEnergyDiscoveryDescription[] =
+ R"*(Enables a Smart Lock setting that allows Chromebook to discover)*"
+ R"*(phones over Bluetooth Low Energy in order to unlock the)*"
+ R"*(Chromebook when the phone is in its proximity.)*";
+
+const char kEasyUnlockProximityDetectionName[] =
+ R"*(Smart Lock proximity detection)*";
+
+const char kEasyUnlockProximityDetectionDescription[] =
+ R"*(Enables a Smart Lock setting that restricts unlocking to only)*"
+ R"*(work when your phone is very close to (roughly, within an arm's)*"
+ R"*(length of) the Chrome device.)*";
+
+const char kWifiCredentialSyncName[] =
+ R"*(WiFi credential sync)*";
+
+const char kWifiCredentialSyncDescription[] =
+ R"*(Enables synchronizing WiFi network settings across devices. When)*"
+ R"*(enabled, the WiFi credential datatype is registered with Chrome)*"
+ R"*(Sync, and WiFi credentials are synchronized subject to user)*"
+ R"*(preferences. (See also, chrome://settings/syncSetup.))*";
+
+const char kSyncSandboxName[] =
+ R"*(Use Chrome Sync sandbox)*";
+
+const char kSyncSandboxDescription[] =
+ R"*(Connects to the testing server for Chrome Sync.)*";
+
+const char kDatasaverPromptName[] =
+ R"*(Cellular Data Saver Prompt)*";
+
+const char kDatasaverPromptDescription[] =
+ R"*(Enables a prompt, which appears when a cellular network)*"
+ R"*(connection is detected, to take the user to the Data Saver)*"
+ R"*(extension page on Chrome Web Store.)*";
+
+const char kDatasaverPromptDemoMode[] =
+ R"*(Demo mode)*";
+
+const char kDisableUnifiedMediaPipelineDescription[] =
+ R"*(Disables the unified (Android and desktop) media pipeline on)*"
+ R"*(Android.)*";
+
+const char kTrySupportedChannelLayoutsName[] =
+ R"*(Causes audio output streams to check if channel layouts other)*"
+ R"*(than the default hardware layout are available.)*";
+
+const char kTrySupportedChannelLayoutsDescription[] =
+ R"*(Causes audio output streams to check if channel layouts other)*"
+ R"*(than the default hardware layout are available. Turning this on)*"
+ R"*(will allow the OS to do stereo to surround expansion if)*"
+ R"*(supported. May expose third party driver bugs, use with caution.)*";
+
+#if defined(OS_MACOSX)
+
+const char kAppInfoDialogName[] =
+ R"*(Toolkit-Views App Info Dialog.)*";
+
+const char kAppInfoDialogDescription[] =
+ R"*(Makes the Toolkit-Views based App Info dialog accessible from)*"
+ R"*(chrome://apps or chrome://extensions in place of the native)*"
+ R"*(extension permissions dialog, or the details link (which is a)*"
+ R"*(link to the Web Store).)*";
+
+const char kMacViewsNativeAppWindowsName[] =
+ R"*(Toolkit-Views App Windows.)*";
+
+const char kMacViewsNativeAppWindowsDescription[] =
+ R"*(Controls whether to use Toolkit-Views based Chrome App windows.)*";
+
+const char kMacViewsTaskManagerName[] =
+ R"*(Toolkit-Views Task Manager.)*";
+
+const char kMacViewsTaskManagerDescription[] =
+ R"*(Controls whether to use the Toolkit-Views based Task Manager.)*";
+
+const char kAppWindowCyclingName[] =
+ R"*(Custom Window Cycling for Chrome Apps.)*";
+
+const char kAppWindowCyclingDescription[] =
+ R"*(Changes the behavior of Cmd+` when a Chrome App becomes active.)*"
+ R"*(When enabled, Chrome Apps will not be cycled when Cmd+` is)*"
+ R"*(pressed from a browser window, and browser windows will not be)*"
+ R"*(cycled when a Chrome App is active.)*";
+
+#endif // defined(OS_MACOSX)
+
+#if defined(OS_CHROMEOS)
+
+const char kAcceleratedMjpegDecodeName[] =
+ R"*(Hardware-accelerated mjpeg decode for captured frame)*";
+
+const char kAcceleratedMjpegDecodeDescription[] =
+ R"*(Enable hardware-accelerated mjpeg decode for captured frame where)*"
+ R"*(available.)*";
+
+#endif // defined(OS_CHROMEOS)
+
+const char kSimplifiedFullscreenUiName[] =
+ R"*(Simplified full screen / mouse lock UI.)*";
+
+const char kSimplifiedFullscreenUiDescription[] =
+ R"*(A simplified new user experience when entering page-triggered)*"
+ R"*(full screen or mouse pointer lock states.)*";
+
+const char kExperimentalKeyboardLockUiName[] =
+ R"*(Experimental keyboard lock UI.)*";
+
+const char kExperimentalKeyboardLockUiDescription[] =
+ R"*(An experimental full screen with keyboard lock mode requiring)*"
+ R"*(users to hold Esc to exit.)*";
+
+#if defined(OS_ANDROID)
+
+const char kProgressBarAnimationName[] =
+ R"*(Android phone page loading progress bar animation)*";
+
+const char kProgressBarAnimationDescription[] =
+ R"*(Configures Android phone page loading progress bar animation.)*";
+
+const char kProgressBarAnimationLinear[] =
+ R"*(Linear)*";
+
+const char kProgressBarAnimationSmooth[] =
+ R"*(Smooth)*";
+
+const char kProgressBarAnimationSmoothIndeterminate[] =
+ R"*(Smooth indeterminate)*";
+
+const char kProgressBarAnimationFastStart[] =
+ R"*(Fast start)*";
+
+const char kProgressBarCompletionName[] =
+ R"*(Android phone page load progress bar completion time.)*";
+
+const char kProgressBarCompletionDescription[] =
+ R"*(Configures Android phone page loading progress bar completion)*"
+ R"*(time.)*";
+
+const char kProgressBarCompletionLoadEvent[] =
+ R"*(Top loading frame's onload event ("everything" is done in the)*"
+ R"*(page, historical behavior).)*";
+
+const char kProgressBarCompletionResourcesBeforeDcl[] =
+ R"*(Main frame's domContentLoaded and all resources loads started)*"
+ R"*(before domContentLoaded (iframes ignored).)*";
+
+const char kProgressBarCompletionDomContentLoaded[] =
+ R"*(Main frame's domContentLoaded (iframes ignored).)*";
+
+const char kProgressBarCompletionResourcesBeforeDclAndSameOriginIframes[] =
+ R"*(domContentLoaded and all resources loads started before)*"
+ R"*(domContentLoaded (main frame and same origin iframes).)*";
+
+#endif // defined(OS_ANDROID)
+
+const char kDisallowDocWrittenScriptsUiName[] =
+ R"*(Block scripts loaded via document.write)*";
+
+const char kDisallowDocWrittenScriptsUiDescription[] =
+ R"*(Disallows fetches for third-party parser-blocking scripts)*"
+ R"*(inserted into the main frame via document.write.)*";
+
+#if defined(OS_WIN)
+
+const char kEnableAppcontainerName[] =
+ R"*(Enable AppContainer Lockdown.)*";
+
+const char kEnableAppcontainerDescription[] =
+ R"*(Enables the use of an AppContainer on sandboxed processes to)*"
+ R"*(improve security.)*";
+
+#endif // defined(OS_WIN)
+
+#if defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
+
+const char kAutofillCreditCardUploadName[] =
+ R"*(Enable offering upload of Autofilled credit cards)*";
+
+const char kAutofillCreditCardUploadDescription[] =
+ R"*(Enables a new option to upload credit cards to Google Payments)*"
+ R"*(for sync to all Chrome devices.)*";
+
+#endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
+
+const char kForceUiDirectionName[] =
+ R"*(Force UI direction)*";
+
+const char kForceUiDirectionDescription[] =
+ R"*(Explicitly force the UI to left-to-right (LTR) or right-to-left)*"
+ R"*((RTL) mode, overriding the default direction of the UI language.)*";
+
+const char kForceUiDirectionLtr[] =
+ R"*(Left-to-right)*";
+
+const char kForceUiDirectionRtl[] =
+ R"*(Right-to-left)*";
+
+#if defined(OS_WIN) || defined(OS_LINUX)
+
+const char kEnableInputImeApiName[] =
+ R"*(Enable Input IME API)*";
+
+const char kEnableInputImeApiDescription[] =
+ R"*(Enable the use of chrome.input.ime API.)*";
+
+#endif // defined(OS_WIN) || defined(OS_LINUX)
+
+const char kEnableGroupedHistoryName[] =
+ R"*(Group history by domain)*";
+
+const char kEnableGroupedHistoryDescription[] =
+ R"*(Group history by website domain (i.e. google.com) on)*"
+ R"*(chrome://history.)*";
+
+const char kSecurityChipDefault[] =
+ R"*(Default)*";
+
+const char kSecurityChipShowNonsecureOnly[] =
+ R"*(Show non-secure only)*";
+
+const char kSecurityChipShowAll[] =
+ R"*(Show all)*";
+
+const char kSecurityChipAnimationDefault[] =
+ R"*(Default)*";
+
+const char kSecurityChipAnimationNone[] =
+ R"*(No animation)*";
+
+const char kSecurityChipAnimationNonsecureOnly[] =
+ R"*(Animate non-secure only)*";
+
+const char kSecurityChipAnimationAll[] =
+ R"*(Animate all)*";
+
+const char kSaveasMenuLabelExperimentName[] =
+ R"*(Switch 'Save as' menu labels to 'Download')*";
+
+const char kSaveasMenuLabelExperimentDescription[] =
+ R"*(Enables an experiment to switch menu labels that use 'Save as...')*"
+ R"*(to 'Download'.)*";
+
+const char kEnableEnumeratingAudioDevicesName[] =
+ R"*(Experimentally enable enumerating audio devices.)*";
+
+const char kEnableEnumeratingAudioDevicesDescription[] =
+ R"*(Experimentally enable the use of enumerating audio devices.)*";
+
+const char kNewUsbBackendName[] =
+ R"*(Enable new USB backend)*";
+
+const char kNewUsbBackendDescription[] =
+ R"*(Enables the new experimental USB backend for Windows.)*";
+
+const char kNewOmniboxAnswerTypesName[] =
+ R"*(New omnibox answers in suggest types)*";
+
+const char kNewOmniboxAnswerTypesDescription[] =
+ R"*(Enables new types of answers in the omnibox suggest drop-down:)*"
+ R"*(currency conversions, dictionary definitions, sports scores,)*"
+ R"*(translations, and when is.)*";
+
+const char kEnableZeroSuggestRedirectToChromeName[] =
+ R"*(Experimental contextual omnibox suggestion)*";
+
+const char kEnableZeroSuggestRedirectToChromeDescription[] =
+ R"*(Change omnibox contextual suggestions to an experimental source.)*"
+ R"*(Note that this is not an on/off switch for contextual omnibox and)*"
+ R"*(it only applies to suggestions provided before the user starts)*"
+ R"*(typing a URL or a search query (i.e. zero suggest).)*";
+
+const char kFillOnAccountSelectName[] =
+ R"*(Fill passwords on account selection)*";
+
+const char kFillOnAccountSelectDescription[] =
+ R"*(Filling of passwords when an account is explicitly selected by)*"
+ R"*(the user rather than autofilling credentials on page load.)*";
+
+const char kEnableClearBrowsingDataCountersName[] =
+ R"*(Enable Clear browsing data counters.)*";
+
+const char kEnableClearBrowsingDataCountersDescription[] =
+ R"*(Shows data volume counters in the Clear browsing data dialog.)*";
+
+#if defined(OS_ANDROID)
+
+const char kTabsInCbdName[] =
+ R"*(Enable tabs for the Clear Browsing Data dialog.)*";
+
+const char kTabsInCbdDescription[] =
+ R"*(Enables a basic and an advanced tab for the Clear Browsing Data)*"
+ R"*(dialog.)*";
+
+#endif // defined(OS_ANDROID)
+
+const char kNotificationsNativeFlag[] =
+ R"*(Enable native notifications.)*";
+
+const char kNotificationsNativeFlagDescription[] =
+ R"*(Enable support for using the native notification toasts and)*"
+ R"*(notification center on platforms where these are available.)*";
+
+#if defined(OS_ANDROID)
+
+const char kEnableAndroidSpellcheckerDescription[] =
+ R"*(Enables use of the Android spellchecker.)*";
+
+const char kEnableAndroidSpellcheckerName[] =
+ R"*(Enable spell checking)*";
+
+#endif // defined(OS_ANDROID)
+
+const char kEnableWebNotificationCustomLayoutsName[] =
+ R"*(Enable custom layouts for Web Notifications.)*";
+
+const char kEnableWebNotificationCustomLayoutsDescription[] =
+ R"*(Enable custom layouts for Web Notifications. They will have)*"
+ R"*(subtle layout improvements that are otherwise not possible.)*";
+
+const char kAccountConsistencyName[] =
+ R"*(Identity consistency between browser and cookie jar)*";
+
+const char kAccountConsistencyDescription[] =
+ R"*(When enabled, the browser manages signing in and out of Google)*"
+ R"*(accounts.)*";
+
+const char kEnablePasswordSeparatedSigninFlowName[] =
+ R"*(Enable new gaia password-separated sign in flow)*";
+
+const char kEnablePasswordSeparatedSigninFlowDescription[] =
+ R"*(When enabled, signing in to the browser will use a new gaia)*"
+ R"*(password-separated sign in flow.)*";
+
+const char kGoogleProfileInfoName[] =
+ R"*(Google profile name and icon)*";
+
+const char kGoogleProfileInfoDescription[] =
+ R"*(Enables using Google information to populate the profile name and)*"
+ R"*(icon in the avatar menu.)*";
+
+const char kOfferStoreUnmaskedWalletCards[] =
+ R"*(Google Payments card saving checkbox)*";
+
+const char kOfferStoreUnmaskedWalletCardsDescription[] =
+ R"*(Show the checkbox to offer local saving of a credit card)*"
+ R"*(downloaded from the server.)*";
+
+const char kOfflineAutoReloadName[] =
+ R"*(Offline Auto-Reload Mode)*";
+
+const char kOfflineAutoReloadDescription[] =
+ R"*(Pages that fail to load while the browser is offline will be)*"
+ R"*(auto-reloaded when the browser is online again.)*";
+
+const char kOfflineAutoReloadVisibleOnlyName[] =
+ R"*(Only Auto-Reload Visible Tabs)*";
+
+const char kOfflineAutoReloadVisibleOnlyDescription[] =
+ R"*(Pages that fail to load while the browser is offline will only be)*"
+ R"*(auto-reloaded if their tab is visible.)*";
+
+const char kShowSavedCopyName[] =
+ R"*(Show Saved Copy Button)*";
+
+const char kShowSavedCopyDescription[] =
+ R"*(When a page fails to load, if a stale copy of the page exists in)*"
+ R"*(the browser cache, a button will be presented to allow the user)*"
+ R"*(to load that stale copy. The primary enabling choice puts the)*"
+ R"*(button in the most salient position on the error page; the)*"
+ R"*(secondary enabling choice puts it secondary to the reload)*"
+ R"*(button.)*";
+
+const char kEnableShowSavedCopyPrimary[] =
+ R"*(Enable: Primary)*";
+
+const char kEnableShowSavedCopySecondary[] =
+ R"*(Enable: Secondary)*";
+
+const char kDisableShowSavedCopy[] =
+ R"*(Disable)*";
+
+#if defined(OS_CHROMEOS)
+
+const char kSmartVirtualKeyboardName[] =
+ R"*(Smart Deployment of the Virtual Keyboard)*";
+
+const char kSmartVirtualKeyboardDescription[] =
+ R"*(Enable/Disable smart deployment of the virtual keyboard.)*";
+
+const char kVirtualKeyboardName[] =
+ R"*(Virtual Keyboard)*";
+
+const char kVirtualKeyboardDescription[] =
+ R"*(Enable virtual keyboard support.)*";
+
+const char kVirtualKeyboardOverscrollName[] =
+ R"*(Virtual Keyboard Overscroll)*";
+
+const char kVirtualKeyboardOverscrollDescription[] =
+ R"*(Enables virtual keyboard overscroll support.)*";
+
+const char kInputViewName[] =
+ R"*(Input views)*";
+
+const char kInputViewDescription[] =
+ R"*(Enable IME extensions to supply custom views for user input such)*"
+ R"*(as virtual keyboards.)*";
+
+const char kNewKoreanImeName[] =
+ R"*(New Korean IME)*";
+
+const char kNewKoreanImeDescription[] =
+ R"*(New Korean IME, which is based on Google Input Tools' HMM)*"
+ R"*(engine.)*";
+
+const char kPhysicalKeyboardAutocorrectName[] =
+ R"*(Physical keyboard autocorrect)*";
+
+const char kPhysicalKeyboardAutocorrectDescription[] =
+ R"*(Enable physical keyboard autocorrect for US keyboard, which can)*"
+ R"*(provide suggestions as typing on physical keyboard.)*";
+
+const char kVoiceInputName[] =
+ R"*(Voice input on virtual keyboard)*";
+
+const char kVoiceInputDescription[] =
+ R"*(Enables voice input on virtual keyboard.)*";
+
+const char kExperimentalInputViewFeaturesName[] =
+ R"*(Experimental input view features)*";
+
+const char kExperimentalInputViewFeaturesDescription[] =
+ R"*(Enable experimental features for IME input views.)*";
+
+const char kFloatingVirtualKeyboardName[] =
+ R"*(Floating virtual keyboard.)*";
+
+const char kFloatingVirtualKeyboardDescription[] =
+ R"*(Enable/Disable floating virtual keyboard.)*";
+
+const char kGestureTypingName[] =
+ R"*(Gesture typing for the virtual keyboard.)*";
+
+const char kGestureTypingDescription[] =
+ R"*(Enable/Disable gesture typing option in the settings page for the)*"
+ R"*(virtual keyboard.)*";
+
+const char kGestureEditingName[] =
+ R"*(Gesture editing for the virtual keyboard.)*";
+
+const char kGestureEditingDescription[] =
+ R"*(Enable/Disable gesture editing option in the settings page for)*"
+ R"*(the virtual keyboard.)*";
+
+const char kCaptivePortalBypassProxyName[] =
+ R"*(Bypass proxy for Captive Portal Authorization)*";
+
+const char kCaptivePortalBypassProxyDescription[] =
+ R"*(If proxy is configured, it usually prevents from authorization on)*"
+ R"*(different captive portals. This enables opening captive portal)*"
+ R"*(authorization dialog in a separate window, which ignores proxy)*"
+ R"*(settings.)*";
+
+const char kTouchscreenCalibrationName[] =
+ R"*(Enable/disable touchscreen calibration option in material design)*"
+ R"*(settings)*";
+
+const char kTouchscreenCalibrationDescription[] =
+ R"*(If enabled, the user can calibrate the touch screen displays in)*"
+ R"*(chrome://md-settings/display.)*";
+
+#endif // defined(OS_CHROMEOS)
+
+// Strings for controlling credit card assist feature in about:flags.
+
+const char kCreditCardAssistName[] =
+ R"*(Credit Card Assisted Filling)*";
+
+const char kCreditCardAssistDescription[] =
+ R"*(Enable assisted credit card filling on certain sites.)*";
+
+// Strings for controlling credit card scanning feature in about:flags.
+
+// Simple Cache Backend experiment.
+
+const char kSimpleCacheBackendName[] =
+ R"*(Simple Cache for HTTP)*";
+
+const char kSimpleCacheBackendDescription[] =
+ R"*(The Simple Cache for HTTP is a new cache. It relies on the)*"
+ R"*(filesystem for disk space allocation.)*";
+
+// Spelling feedback field trial.
+
+const char kSpellingFeedbackFieldTrialName[] =
+ R"*(Spelling Feedback Field Trial)*";
+
+const char kSpellingFeedbackFieldTrialDescription[] =
+ R"*(Enable the field trial for sending user feedback to spelling)*"
+ R"*(service.)*";
+
+// Web MIDI API.
+
+const char kWebMidiName[] =
+ R"*(Web MIDI API)*";
+
+const char kWebMidiDescription[] =
+ R"*(Enable Web MIDI API experimental support.)*";
+
+// Site per process mode
+
+const char kSitePerProcessName[] =
+ R"*(Out of process iframes)*";
+
+const char kSitePerProcessDescription[] =
+ R"*(Highly experimental support for rendering cross-site iframes in)*"
+ R"*(separate processes. In this mode, documents will share a renderer)*"
+ R"*(process only if they are from the same web site.)*";
+
+// Top document isolation mode
+
+const char kTopDocumentIsolationName[] =
+ R"*(Top document isolation)*";
+
+const char kTopDocumentIsolationDescription[] =
+ R"*(Highly experimental performance mode where cross-site iframes are)*"
+ R"*(kept in a separate process from the top document. In this mode,)*"
+ R"*(iframes from different third-party sites will be allowed to share)*"
+ R"*(a process.)*";
+
+// Cross process guest frames isolation mode
+
+const char kCrossProcessGuestViewIsolationName[] =
+ R"*(Cross process frames for guests)*";
+
+const char kCrossProcessGuestViewIsolationDescription[] =
+ R"*(Highly experimental where guests such as <webview> are)*"
+ R"*(implemented on the out-of-process iframe infrastructure.)*";
+
+// Task Scheduler
+
+const char kBrowserTaskSchedulerName[] =
+ R"*(Task Scheduler)*";
+
+const char kBrowserTaskSchedulerDescription[] =
+ R"*(Enables redirection of some task posting APIs to the task)*"
+ R"*(scheduler.)*";
+
+// Arc authorization
+
+#if defined(OS_CHROMEOS)
+
+const char kArcUseAuthEndpointName[] =
+ R"*(Android apps authorization point)*";
+
+const char kArcUseAuthEndpointDescription[] =
+ R"*(Enable Android apps authorization point to automatic sign-in in)*"
+ R"*(OptIn flow.)*";
+
+#endif // defined(OS_CHROMEOS)
+
+// Autofill experiment flags
+
+const char kSingleClickAutofillName[] =
+ R"*(Single-click autofill)*";
+
+const char kSingleClickAutofillDescription[] =
+ R"*(Make autofill suggestions on initial mouse click on a form)*"
+ R"*(element.)*";
+
+#if defined(OS_ANDROID)
+
+const char kAutofillAccessoryViewName[] =
+ R"*(Autofill suggestions as keyboard accessory view)*";
+
+const char kAutofillAccessoryViewDescription[] =
+ R"*(Shows Autofill suggestions on top of the keyboard rather than in)*"
+ R"*(a dropdown.)*";
+
+#endif // defined(OS_ANDROID)
+
+// Reader mode experiment flags
+
+#if defined(OS_ANDROID)
+
+const char kReaderModeHeuristicsName[] =
+ R"*(Reader Mode triggering)*";
+
+const char kReaderModeHeuristicsDescription[] =
+ R"*(Determines what pages the Reader Mode button is shown on.)*";
+
+const char kReaderModeHeuristicsMarkup[] =
+ R"*(With article structured markup)*";
+
+const char kReaderModeHeuristicsAdaboost[] =
+ R"*(Appears to be an article)*";
+
+const char kReaderModeHeuristicsAlwaysOff[] =
+ R"*(Never)*";
+
+const char kReaderModeHeuristicsAlwaysOn[] =
+ R"*(Always)*";
+
+#endif // defined(OS_ANDROID)
+
+// Chrome home flags
+
+#if defined(OS_ANDROID)
+
+const char kChromeHomeName[] =
+ R"*(Chrome Home)*";
+
+const char kChromeHomeDescription[] =
+ R"*(Enables Chrome Home on Android.)*";
+
+#endif // defined(OS_ANDROID)
+
+// Settings window flags
+
+const char kSettingsWindowName[] =
+ R"*(Show settings in a window)*";
+
+const char kSettingsWindowDescription[] =
+ R"*(Settings will be shown in a dedicated window instead of as a)*"
+ R"*(browser tab.)*";
+
+// Mixed content issue workaround flags
+
+#if defined(OS_ANDROID)
+
+// Flag strings for seccomp-bpf sandbox flag.
+
+const char kSeccompFilterSandboxAndroidName[] =
+ R"*(Seccomp-bpf renderer sandbox)*";
+
+const char kSeccompFilterSandboxAndroidDescription[] =
+ R"*(Renderers will have a second-layer sandbox provided by)*"
+ R"*(seccomp-bpf. This requires kernel features only available on)*"
+ R"*(select Android versions.)*";
+
+#endif // defined(OS_ANDROID)
+
+// Extension Content Verification
+
+const char kExtensionContentVerificationName[] =
+ R"*(Extension Content Verification)*";
+
+const char kExtensionContentVerificationDescription[] =
+ R"*(This flag can be used to turn on verification that the contents)*"
+ R"*(of the files on disk for extensions from the webstore match what)*"
+ R"*(they're expected to be. This can be used to turn on this feature)*"
+ R"*(if it would not otherwise have been turned on, but cannot be used)*"
+ R"*(to turn it off (because this setting can be tampered with by)*"
+ R"*(malware).)*";
+
+const char kExtensionContentVerificationBootstrap[] =
+ R"*(Bootstrap (get expected hashes, but do not enforce them))*";
+
+const char kExtensionContentVerificationEnforce[] =
+ R"*(Enforce (try to get hashes, and enforce them if successful))*";
+
+const char kExtensionContentVerificationEnforceStrict[] =
+ R"*(Enforce strict (hard fail if we can't get hashes))*";
+
+// Built-in hotword detection display strings
+
+const char kExperimentalHotwordHardwareName[] =
+ R"*(Simulated hardware 'Ok Google' features)*";
+
+const char kExperimentalHotwordHardwareDescription[] =
+ R"*(Enables an experimental version of 'Ok Google' hotword detection)*"
+ R"*(features that have a hardware dependency.)*";
+
+// Message center strings
+
+const char kMessageCenterAlwaysScrollUpUponRemovalName[] =
+ R"*(Experiments that message center always scroll up upon)*"
+ R"*(notification removal)*";
+
+const char kMessageCenterAlwaysScrollUpUponRemovalDescription[] =
+ R"*(Enables experiment that message center always scroll up when a)*"
+ R"*(notification is removed.)*";
+
+const char kCastStreamingHwEncodingName[] =
+ R"*(Cast Streaming hardware video encoding)*";
+
+const char kCastStreamingHwEncodingDescription[] =
+ R"*(This option enables support in Cast Streaming for encoding video)*"
+ R"*(streams using platform hardware.)*";
+
+const char kAllowInsecureLocalhost[] =
+ R"*(Allow invalid certificates for resources loaded from localhost.)*";
+
+const char kAllowInsecureLocalhostDescription[] =
+ R"*(Allows requests to localhost over HTTPS even when an invalid)*"
+ R"*(certificate is presented.)*";
+
+#if defined(OS_WIN) || defined(OS_MACOSX)
+
+// Tab discarding
+
+const char kAutomaticTabDiscardingName[] =
+ R"*(Automatic tab discarding)*";
+
+const char kAutomaticTabDiscardingDescription[] =
+ R"*(If enabled, tabs get automatically discarded from memory when the)*"
+ R"*(system memory is low. Discarded tabs are still visible on the tab)*"
+ R"*(strip and get reloaded when clicked on. Info about discarded tabs)*"
+ R"*(can be found at chrome://discards.)*";
+
+#endif // defined(OS_WIN) || defined(OS_MACOSX)
+
+#if defined(OS_ANDROID)
+
+const char kOfflineBookmarksName[] =
+ R"*(Enable offline bookmarks)*";
+
+const char kOfflineBookmarksDescription[] =
+ R"*(Enable saving bookmarked pages for offline viewing.)*";
+
+const char kNtpOfflinePagesName[] =
+ R"*(Enable NTP offline pages)*";
+
+const char kNtpOfflinePagesDescription[] =
+ R"*(Enables badging of offline pages on the New Tab page. Only)*"
+ R"*(relevant if offline pages are enabled.)*";
+
+const char kOfflinePagesAsyncDownloadName[] =
+ R"*(Enables showing "DOWNLOAD PAGE LATER" button in error pages.)*";
+
+const char kOfflinePagesAsyncDownloadDescription[] =
+ R"*(Enables showing "DOWNLOAD PAGE LATER" button in error pages such)*"
+ R"*(that the user can click on it to download the page later.)*";
+
+const char kOfflinePagesSvelteConcurrentLoadingName[] =
+ R"*(Enables concurrent background loading on svelte.)*";
+
+const char kOfflinePagesSvelteConcurrentLoadingDescription[] =
+ R"*(Enables concurrent background loading (or downloading) of pages)*"
+ R"*(on Android svelte (512MB RAM) devices. Otherwise, background)*"
+ R"*(loading will happen when the svelte device is idle.)*";
+
+const char kOfflinePagesPrefetchingName[] =
+ R"*(Enables suggested offline pages to be prefetched.)*";
+
+const char kOfflinePagesPrefetchingDescription[] =
+ R"*(Enables suggested offline pages to be prefetched, so useful)*"
+ R"*(content is available while offline.)*";
+
+const char kOfflinePagesSharingName[] =
+ R"*(Enables offline pages to be shared.)*";
+
+const char kOfflinePagesSharingDescription[] =
+ R"*(Enables the saved offline pages to be shared via other)*"
+ R"*(applications.)*";
+
+const char kBackgroundLoaderForDownloadsName[] =
+ R"*(Enables background downloading of pages.)*";
+
+const char kBackgroundLoaderForDownloadsDescription[] =
+ R"*(Enables downloading pages in the background in case page is not)*"
+ R"*(yet loaded in current tab.)*";
+
+const char kNewBackgroundLoaderName[] =
+ R"*(Use background loader instead of prerenderer to load pages.)*";
+
+const char kNewBackgroundLoaderDescription[] =
+ R"*(Use background loader instead of prerenderer to asynchronously)*"
+ R"*(download pages.)*";
+
+const char kNtpPopularSitesName[] =
+ R"*(Show popular sites on the New Tab page)*";
+
+const char kNtpPopularSitesDescription[] =
+ R"*(Pre-populate the New Tab page with popular sites.)*";
+
+const char kNtpSwitchToExistingTabName[] =
+ R"*(Switch to an existing tab for New Tab Page suggestions.)*";
+
+const char kNtpSwitchToExistingTabDescription[] =
+ R"*(When opening a suggested webpage from the New Tab Page, if a tab)*"
+ R"*(is already open for the suggestion, switch to that one instead of)*"
+ R"*(loading the suggestion in the new tab.)*";
+
+const char kNtpSwitchToExistingTabMatchUrl[] =
+ R"*(Match by URL)*";
+
+const char kNtpSwitchToExistingTabMatchHost[] =
+ R"*(Match by Hostname)*";
+
+const char kUseAndroidMidiApiName[] =
+ R"*(Use Android Midi API)*";
+
+const char kUseAndroidMidiApiDescription[] =
+ R"*(Use Android Midi API for WebMIDI (effective only with Android M+)*"
+ R"*(devices).)*";
+
+const char kWebPaymentsModifiersName[] =
+ R"*(Enable web payment modifiers)*";
+
+const char kWebPaymentsModifiersDescription[] =
+ R"*(If the website provides modifiers in the payment request, show)*"
+ R"*(the custom total for each payment instrument, update the shopping)*"
+ R"*(cart when instruments are switched, and send modified payment)*"
+ R"*(method specific data to the payment app.)*";
+
+#endif // defined(OS_ANDROID)
+
+#if defined(OS_WIN)
+
+// Exporting tracing events to ETW
+
+const char kTraceExportEventsToEtwName[] =
+ R"*(Enable exporting of tracing events to ETW.)*";
+
+const char kTraceExportEventsToEtwDesription[] =
+ R"*(If enabled, trace events will be exported to the Event Tracing)*"
+ R"*(for Windows (ETW) and can then be captured by tools such as)*"
+ R"*(UIForETW or Xperf.)*";
+
+const char kMergeKeyCharEventsName[] =
+ R"*(Enable or disable merging merging the key event (WM_KEY*) with)*"
+ R"*(char event (WM_CHAR).)*";
+
+const char kMergeKeyCharEventsDescription[] =
+ R"*(If disabled, Chrome will handle WM_KEY* and WM_CHAR separatedly.)*";
+
+const char kUseWinrtMidiApiName[] =
+ R"*(Use Windows Runtime MIDI API)*";
+
+const char kUseWinrtMidiApiDescription[] =
+ R"*(Use Windows Runtime MIDI API for WebMIDI (effective only on)*"
+ R"*(Windows 10 or later).)*";
+
+#endif // defined(OS_WIN)
+
+#if defined(OS_ANDROID)
+
+// Data Use
+
+// Update Menu Item Flags
+
+const char kUpdateMenuItemName[] =
+ R"*(Force show update menu item)*";
+
+const char kUpdateMenuItemDescription[] =
+ R"*(When enabled, an "Update Chrome" item will be shown in the app)*"
+ R"*(menu.)*";
+
+const char kUpdateMenuItemSummaryName[] =
+ R"*(Update menu item summary)*";
+
+const char kUpdateMenuItemSummaryDescription[] =
+ R"*(When this flag and the force show update menu item flag are)*"
+ R"*(enabled, a summary will be displayed below the update menu item.)*";
+
+const char kUpdateMenuItemNoSummary[] =
+ R"*(No summary)*";
+
+const char kUpdateMenuItemDefaultSummary[] =
+ R"*(Default summary)*";
+
+const char kUpdateMenuItemNewFeaturesSummary[] =
+ R"*(New features summary)*";
+
+const char kUpdateMenuItemCustomSummary[] =
+ R"*(Custom summary)*";
+
+const char kUpdateMenuBadgeName[] =
+ R"*(Force show update menu badge)*";
+
+const char kUpdateMenuBadgeDescription[] =
+ R"*(When enabled, an update badge will be shown on the app menu)*"
+ R"*(button.)*";
+
+const char kSetMarketUrlForTestingName[] =
+ R"*(Set market URL for testing)*";
+
+const char kSetMarketUrlForTestingDescription[] =
+ R"*(When enabled, sets the market URL for use in testing the update)*"
+ R"*(menu item.)*";
+
+#endif // defined(OS_ANDROID)
+
+#if defined(OS_ANDROID)
+
+const char kHerbPrototypeChoicesName[] =
+ R"*(Switch preferred flavor of Herb)*";
+
+const char kHerbPrototypeChoicesDescription[] =
+ R"*(Switching this option changes which tab management prototype is)*"
+ R"*(being tested.)*";
+
+const char kHerbPrototypeFlavorElderberry[] =
+ R"*(ELDERBERRY: All View Intents in CCT v2)*";
+
+const char kEnableSpecialLocaleName[] =
+ R"*(Enable custom logic for special locales.)*";
+
+const char kEnableSpecialLocaleDescription[] =
+ R"*(Enable custom logic for special locales. In this mode, Chrome)*"
+ R"*(might behave differently in some locales.)*";
+
+// WebApks
+
+const char kEnableWebapk[] =
+ R"*(Enable improved add to Home screen)*";
+
+const char kEnableWebapkDescription[] =
+ R"*(Packages "Progressive Web Apps" so that they can integrate more)*"
+ R"*(deeply with Android. A Chrome server is used to package sites. In)*"
+ R"*(Chrome Canary and Chrome Dev, this requires “Untrusted)*"
+ R"*(sources” to be enabled in Android security settings.)*";
+
+#endif // defined(OS_ANDROID)
+
+const char kEnableBrotliName[] =
+ R"*(Brotli Content-Encoding.)*";
+
+const char kEnableBrotliDescription[] =
+ R"*(Enable Brotli Content-Encoding support.)*";
+
+const char kEnableWebfontsInterventionName[] =
+ R"*(New version of User Agent Intervention for WebFonts loading.)*";
+
+const char kEnableWebfontsInterventionDescription[] =
+ R"*(Enable New version of User Agent Intervention for WebFonts)*"
+ R"*(loading.)*";
+
+const char kEnableWebfontsInterventionV2ChoiceDefault[] =
+ R"*(Default)*";
+
+const char kEnableWebfontsInterventionV2ChoiceEnabledWith2g[] =
+ R"*(Enabled: 2G)*";
+
+const char kEnableWebfontsInterventionV2ChoiceEnabledWith3g[] =
+ R"*(Enabled: 3G)*";
+
+const char kEnableWebfontsInterventionV2ChoiceEnabledWithSlow2g[] =
+ R"*(Enabled: Slow 2G)*";
+
+const char kEnableWebfontsInterventionV2ChoiceDisabled[] =
+ R"*(Disabled)*";
+
+const char kEnableWebfontsInterventionTriggerName[] =
+ R"*(Trigger User Agent Intervention for WebFonts loading always.)*";
+
+const char kEnableWebfontsInterventionTriggerDescription[] =
+ R"*(Enable to trigger User Agent Intervention for WebFonts loading)*"
+ R"*(always. This flag affects only when the intervention is enabled.)*";
+
+const char kEnableScrollAnchoringName[] =
+ R"*(Scroll Anchoring)*";
+
+const char kEnableScrollAnchoringDescription[] =
+ R"*(Adjusts scroll position to prevent visible jumps when offscreen)*"
+ R"*(content changes.)*";
+
+#if defined(OS_CHROMEOS)
+
+const char kEnableNativeCupsName[] =
+ R"*(Native CUPS)*";
+
+const char kEnableNativeCupsDescription[] =
+ R"*(Enables the use of the native CUPS printing backend.)*";
+
+const char kEnableAndroidWallpapersAppName[] =
+ R"*(Android Wallpapers App)*";
+
+const char kEnableAndroidWallpapersAppDescription[] =
+ R"*(Enables the Android Wallpapers App as the default Wallpaper App)*"
+ R"*(on Chrome OS.)*";
+
+const char kEnableTouchSupportForScreenMagnifierName[] =
+ R"*(Touch support for screen magnifier)*";
+
+const char kEnableTouchSupportForScreenMagnifierDescription[] =
+ R"*(Enables touch support for screen magnifier)*";
+
+#endif // defined(OS_CHROMEOS)
+
+#if defined(OS_ANDROID)
+
+const char kContentSuggestionsCategoryOrderName[] =
+ R"*(Default content suggestions category order (e.g. on NTP))*";
+
+const char kContentSuggestionsCategoryOrderDescription[] =
+ R"*(Set default order of content suggestion categories (e.g. on the)*"
+ R"*(NTP).)*";
+
+const char kContentSuggestionsCategoryRankerName[] =
+ R"*(Content suggestions category ranker (e.g. on NTP))*";
+
+const char kContentSuggestionsCategoryRankerDescription[] =
+ R"*(Set category ranker to order categories of content suggestions)*"
+ R"*((e.g. on the NTP).)*";
+
+const char kEnableNtpSnippetsVisibilityName[] =
+ R"*(Make New Tab Page Snippets more visible.)*";
+
+const char kEnableNtpSnippetsVisibilityDescription[] =
+ R"*(If enabled, the NTP snippets will become more discoverable with a)*"
+ R"*(larger portion of the first card above the fold.)*";
+
+const char kEnableNtpRemoteSuggestionsName[] =
+ R"*(Show server-side suggestions on the New Tab page)*";
+
+const char kEnableNtpRemoteSuggestionsDescription[] =
+ R"*(If enabled, the list of content suggestions on the New Tab page)*"
+ R"*((see #enable-ntp-snippets) will contain server-side suggestions)*"
+ R"*((e.g., Articles for you). Furthermore, it allows to override the)*"
+ R"*(source used to retrieve these server-side suggestions.)*";
+
+const char kEnableNtpRecentOfflineTabSuggestionsName[] =
+ R"*(Show recent offline tabs on the New Tab page)*";
+
+const char kEnableNtpRecentOfflineTabSuggestionsDescription[] =
+ R"*(If enabled, the list of content suggestions on the New Tab page)*"
+ R"*((see #enable-ntp-snippets) will contain pages that were captured)*"
+ R"*(offline during browsing (see #offlining-recent-pages))*";
+
+const char kEnableNtpSaveToOfflineName[] =
+ R"*(Show option to save to offline in Snippets context menu.)*";
+
+const char kEnableNtpSaveToOfflineDescription[] =
+ R"*(If enabled, the Snippets context menu (see #enable-ntp-snippets))*"
+ R"*(will contain the option to save linked page for offline viewing.)*";
+
+const char kEnableNtpOfflineBadgeName[] =
+ R"*(Show offline badge for offline available snippets on the ntp.)*";
+
+const char kEnableNtpOfflineBadgeDescription[] =
+ R"*(If enabled, Snippets that are available offline will have an)*"
+ R"*(offline badge.)*";
+
+const char kEnableNtpAssetDownloadSuggestionsName[] =
+ R"*(Show asset downloads on the New Tab page)*";
+
+const char kEnableNtpAssetDownloadSuggestionsDescription[] =
+ R"*(If enabled, the list of content suggestions on the New Tab page)*"
+ R"*((see #enable-ntp-snippets) will contain assets (e.g. books,)*"
+ R"*(pictures, audio) that the user downloaded for later use.)*";
+
+const char kEnableNtpOfflinePageDownloadSuggestionsName[] =
+ R"*(Show offline page downloads on the New Tab page)*";
+
+const char kEnableNtpOfflinePageDownloadSuggestionsDescription[] =
+ R"*(If enabled, the list of content suggestions on the New Tab page)*"
+ R"*((see #enable-ntp-snippets) will contain pages that the user)*"
+ R"*(downloaded for later use.)*";
+
+const char kEnableNtpBookmarkSuggestionsName[] =
+ R"*(Show recently visited bookmarks on the New Tab page)*";
+
+const char kEnableNtpBookmarkSuggestionsDescription[] =
+ R"*(If enabled, the list of content suggestions on the New Tab page)*"
+ R"*((see #enable-ntp-snippets) will contain recently visited)*"
+ R"*(bookmarks.)*";
+
+const char kEnableNtpPhysicalWebPageSuggestionsName[] =
+ R"*(Show Physical Web pages on the New Tab page)*";
+
+const char kEnableNtpPhysicalWebPageSuggestionsDescription[] =
+ R"*(If enabled, the list of content suggestions on the New Tab page)*"
+ R"*((see #enable-ntp-snippets) will contain pages that are available)*"
+ R"*(through Physical Web (see #enable-physical-web))*";
+
+const char kEnableNtpForeignSessionsSuggestionsName[] =
+ R"*(Show recent foreign tabs on the New Tab page)*";
+
+const char kEnableNtpForeignSessionsSuggestionsDescription[] =
+ R"*(If enabled, the list of content suggestions on the New Tab page)*"
+ R"*((see #enable-ntp-snippets) will contain recent foreign tabs.)*";
+
+const char kEnableNtpSuggestionsNotificationsName[] =
+ R"*(Notify about new content suggestions available at the New Tab)*"
+ R"*(page)*";
+
+const char kEnableNtpSuggestionsNotificationsDescription[] =
+ R"*(If enabled, notifications will inform about new content)*"
+ R"*(suggestions on the New Tab page (see #enable-ntp-snippets).)*";
+
+const char kNtpCondensedLayoutName[] =
+ R"*(Condensed NTP layout)*";
+
+const char kNtpCondensedLayoutDescription[] =
+ R"*(Show a condensed layout on the New Tab Page.)*";
+
+const char kNtpCondensedTileLayoutName[] =
+ R"*(Condensed NTP tile layout)*";
+
+const char kNtpCondensedTileLayoutDescription[] =
+ R"*(Show a condensed tile layout on the New Tab Page.)*";
+
+const char kNtpGoogleGInOmniboxName[] =
+ R"*(Google G in New Tab Page omnibox)*";
+
+const char kNtpGoogleGInOmniboxDescription[] =
+ R"*(Show a Google G in the omnibox on the New Tab Page.)*";
+
+#endif // defined(OS_ANDROID)
+
+#if defined(OS_ANDROID)
+
+const char kOffliningRecentPagesName[] =
+ R"*(Enable offlining of recently visited pages)*";
+
+const char kOffliningRecentPagesDescription[] =
+ R"*(Enable storing recently visited pages locally for offline use.)*"
+ R"*(Requires Offline Pages to be enabled.)*";
+
+const char kOfflinePagesCtName[] =
+ R"*(Enable Offline Pages CT features.)*";
+
+const char kOfflinePagesCtDescription[] =
+ R"*(Enable Offline Pages CT features.)*";
+
+#endif // defined(OS_ANDROID)
+
+#if defined(OS_ANDROID)
+
+const char kEnableExpandedAutofillCreditCardPopupLayout[] =
+ R"*(Use expanded autofill credit card popup layout.)*";
+
+const char kEnableExpandedAutofillCreditCardPopupLayoutDescription[] =
+ R"*(If enabled, displays autofill credit card popup using expanded)*"
+ R"*(layout.)*";
+
+#endif // defined(OS_ANDROID)
+
+const char kEnableAutofillCreditCardLastUsedDateDisplay[] =
+ R"*(Display the last used date of a credit card in autofill.)*";
+
+const char kEnableAutofillCreditCardLastUsedDateDisplayDescription[] =
+ R"*(If enabled, display the last used date of a credit card in)*"
+ R"*(autofill.)*";
+
+#if !defined(OS_ANDROID) && defined(GOOGLE_CHROME_BUILD)
+
+const char kGoogleBrandedContextMenuName[] =
+ R"*(Google branding in the context menu)*";
+
+const char kGoogleBrandedContextMenuDescription[] =
+ R"*(Shows a Google icon next to context menu items powered by Google)*"
+ R"*(services.)*";
+
+#endif // !defined(OS_ANDROID) && defined(GOOGLE_CHROME_BUILD)
+
+const char kEnableWebUsbName[] =
+ R"*(WebUSB)*";
+
+const char kEnableWebUsbDescription[] =
+ R"*(Enable WebUSB support.)*";
+
+const char kEnableGenericSensorName[] =
+ R"*(Generic Sensor)*";
+
+const char kEnableGenericSensorDescription[] =
+ R"*(Enable sensor APIs based on Generic Sensor API.)*";
+
+const char kFontCacheScalingName[] =
+ R"*(FontCache scaling)*";
+
+const char kFontCacheScalingDescription[] =
+ R"*(Reuse a cached font in the renderer to serve different sizes of)*"
+ R"*(font for faster layout.)*";
+
+const char kFramebustingName[] =
+ R"*(Framebusting requires same-origin or a user gesture)*";
+
+const char kFramebustingDescription[] =
+ R"*(Don't permit an iframe to navigate the top level browsing context)*"
+ R"*(unless they are same-origin or the iframe is processing a user)*"
+ R"*(gesture.)*";
+
+#if defined(OS_ANDROID)
+
+const char kEnableVrShellName[] =
+ R"*(Enable Chrome VR.)*";
+
+const char kEnableVrShellDescription[] =
+ R"*(Allow browsing with a VR headset if available for this device.)*";
+
+#endif // defined(OS_ANDROID)
+
+// Web payments
+
+const char kWebPaymentsName[] =
+ R"*(Web Payments)*";
+
+const char kWebPaymentsDescription[] =
+ R"*(Enable Web Payments API integration, a JavaScript API for)*"
+ R"*(merchants.)*";
+
+#if defined(OS_ANDROID)
+
+const char kEnableAndroidPayIntegrationV1Name[] =
+ R"*(Enable Android Pay v1)*";
+
+const char kEnableAndroidPayIntegrationV1Description[] =
+ R"*(Enable integration with Android Pay using the first version of)*"
+ R"*(the API)*";
+
+const char kEnableAndroidPayIntegrationV2Name[] =
+ R"*(Enable Android Pay v2)*";
+
+const char kEnableAndroidPayIntegrationV2Description[] =
+ R"*(Enable integration with Android Pay using the second version of)*"
+ R"*(the API)*";
+
+const char kEnableWebPaymentsSingleAppUiSkipName[] =
+ R"*(Enable Web Payments single app UI skip)*";
+
+const char kEnableWebPaymentsSingleAppUiSkipDescription[] =
+ R"*(Enable Web Payments to skip showing its UI if the developer)*"
+ R"*(specifies a single app.)*";
+
+const char kAndroidPaymentAppsName[] =
+ R"*(Android payment apps)*";
+
+const char kAndroidPaymentAppsDescription[] =
+ R"*(Enable third party Android apps to integrate as payment apps)*";
+
+const char kAndroidPaymentAppsFilterTitle[] =
+ R"*(Android payment apps filter)*";
+
+const char kAndroidPaymentAppsFilterDescription[] =
+ R"*(Enable filtering out third party Android apps that can not be)*"
+ R"*(shown in settings)*";
+
+#endif // defined(OS_ANDROID)
+
+const char kFeaturePolicyName[] =
+ R"*(Feature Policy)*";
+
+const char kFeaturePolicyDescription[] =
+ R"*(Enables granting and removing access to features through the)*"
+ R"*(Feature-Policy HTTP header.)*";
+
+// Audio rendering mixing experiment strings.
+
+const char kNewAudioRenderingMixingStrategyName[] =
+ R"*(New audio rendering mixing strategy)*";
+
+const char kNewAudioRenderingMixingStrategyDescription[] =
+ R"*(Use the new audio rendering mixing strategy.)*";
+
+// Background video track disabling experiment strings.
+
+const char kBackgroundVideoTrackOptimizationName[] =
+ R"*(Optimize background video playback.)*";
+
+const char kBackgroundVideoTrackOptimizationDescription[] =
+ R"*(Disable video tracks when the video is played in the background)*"
+ R"*(to optimize performance.)*";
+
+// Video fullscreen with orientation lock experiment strings.
+
+const char kVideoFullscreenOrientationLockName[] =
+ R"*(Lock screen orientation when playing a video fullscreen.)*";
+
+const char kVideoFullscreenOrientationLockDescription[] =
+ R"*(Lock the screen orientation of the device to match video)*"
+ R"*(orientation when a video goes fullscreen. Only on phones.)*";
+
+// Expensive background timer throttling flag
+
+const char kExpensiveBackgroundTimerThrottlingName[] =
+ R"*(Throttle expensive background timers)*";
+
+const char kExpensiveBackgroundTimerThrottlingDescription[] =
+ R"*(Enables intervention to limit CPU usage of background timers to)*"
+ R"*(1%.)*";
+
+// Enable default MediaSession flag
+
+#if !defined(OS_ANDROID)
+
+const char kEnableDefaultMediaSessionName[] =
+ R"*(Manage audio focus across tabs)*";
+
+const char kEnableDefaultMediaSessionDescription[] =
+ R"*(Manage audio focus across tabs to improve the audio mixing.)*";
+
+const char kEnableDefaultMediaSessionDisabled[] =
+ R"*(Disabled)*";
+
+const char kEnableDefaultMediaSessionEnabled[] =
+ R"*(Enabled)*";
+
+const char kEnableDefaultMediaSessionEnabledDuckFlash[] =
+ R"*(Enabled (Flash lowers volume when interrupted by other sound,)*"
+ R"*(experimental))*";
+
+#endif // !defined(OS_ANDROID)
+
+#if defined(OS_WIN)
+
+const char kGdiTextPrinting[] =
+ R"*(GDI Text Printing)*";
+
+const char kGdiTextPrintingDescription[] =
+ R"*(Use GDI to print text as simply text)*";
+
+#endif // defined(OS_WIN)
+
+#if defined(OS_ANDROID)
+
+const char kModalPermissionPromptsName[] =
+ R"*(Modal Permission Prompts)*";
+
+const char kModalPermissionPromptsDescription[] =
+ R"*(Whether to use permission dialogs in place of permission)*"
+ R"*(infobars.)*";
+
+#endif // defined(OS_ANDROID)
+
+#if !defined(OS_MACOSX)
+
+const char kPermissionPromptPersistenceToggleName[] =
+ R"*(Persistence Toggle in Permission Prompts)*";
+
+const char kPermissionPromptPersistenceToggleDescription[] =
+ R"*(Whether to display a persistence toggle in permission prompts.)*";
+
+#endif // !defined(OS_MACOSX)
+
+#if defined(OS_ANDROID)
+
+const char kNoCreditCardAbort[] =
+ R"*(No Credit Card Abort)*";
+
+const char kNoCreditCardAbortDescription[] =
+ R"*(Whether or not the No Credit Card Abort is enabled.)*";
+
+#endif // defined(OS_ANDROID)
+
+// Consistent omnibox geolocation
+
+#if defined(OS_ANDROID)
+
+const char kEnableConsistentOmniboxGeolocationName[] =
+ R"*(Have consistent omnibox geolocation access.)*";
+
+const char kEnableConsistentOmniboxGeolocationDescription[] =
+ R"*(Have consistent geolocation access between the omnibox and)*"
+ R"*(default search engine.)*";
+
+#endif // defined(OS_ANDROID)
+
+// Media Remoting chrome://flags strings
+
+const char kMediaRemotingName[] =
+ R"*(Media Remoting during Cast Tab Mirroring)*";
+
+const char kMediaRemotingDescription[] =
+ R"*(When Casting a tab to a remote device, enabling this turns on an)*"
+ R"*(optimization that forwards the content bitstream directly to the)*"
+ R"*(remote device when a video is fullscreened.)*";
+
+const char kMediaRemotingEncryptedName[] =
+ R"*(Media Remoting during Cast Tab Mirroring: Encrypted content too)*";
+
+const char kMediaRemotingEncryptedDescription[] =
+ R"*(When Media Remoting is enabled, this flag must be enabled to)*"
+ R"*(allow the remoting of encrypted content. When disabled, only)*"
+ R"*(non-encrypted content can be remoted.)*";
+
+// Chrome OS component updates chrome://flags strings
+
+const char kCrosCompUpdatesName[] =
+ R"*(Chrome OS Flash Component Updates)*";
+
+const char kCrosCompUpdatesDescription[] =
+ R"*(Enable Flash component updates for Chrome OS.)*";
+
+// Native Android History chrome://flags strings
+
+#if defined(OS_ANDROID)
+
+const char kNativeAndroidHistoryManager[] =
+ R"*(Native Android History)*";
+
+const char kNativeAndroidHistoryManagerDescription[] =
+ R"*(Show the native Android UI for browsing history.)*";
+
+#endif // defined(OS_ANDROID)
+
+// Play Services LSD permission prompt chrome://flags strings
+
+#if defined(OS_ANDROID)
+
+const char kLsdPermissionPromptName[] =
+ R"*(Location Settings Dialog Permission Prompt)*";
+
+const char kLsdPermissionPromptDescription[] =
+ R"*(Whether to use the Google Play Services Location Settings Dialog)*"
+ R"*(permission dialog.)*";
+
+#endif // defined(OS_ANDROID)
+
+#if defined(OS_WIN)
+
+// Custom draw the Windows 10 titlebar. crbug.com/505013
+
+const char kWindows10CustomTitlebarName[] =
+ R"*(Custom-drawn Windows 10 Titlebar)*";
+
+const char kWindows10CustomTitlebarDescription[] =
+ R"*(If enabled, Chrome will draw the titlebar and caption buttons)*"
+ R"*(instead of deferring to Windows.)*";
+
+#endif // defined(OS_WIN)
+
+#if defined(OS_WIN)
+
+const char kPostscriptPrinting[] =
+ R"*(PostScript Printing)*";
+
+const char kPostscriptPrintingDescription[] =
+ R"*(Enable postscript generation in place of emf generation when)*"
+ R"*(printing to postscript capable printers.)*";
+
+#endif // defined(OS_WIN)
+
+#if defined(OS_ANDROID)
+
+const char kAiaFetchingName[] =
+ R"*(Intermediate Certificate Fetching)*";
+
+const char kAiaFetchingDescription[] =
+ R"*(Enable intermediate certificate fetching when a server does not)*"
+ R"*(provide sufficient certificates to build a chain to a trusted)*"
+ R"*(root.)*";
+
+#endif // defined(OS_ANDROID)
+
+// Web MIDI supports MIDIManager dynamic instantiation chrome://flags strings
+
+const char kEnableMidiManagerDynamicInstantiationName[] =
+ R"*(MIDIManager dynamic instantiation for Web MIDI.)*";
+
+const char kEnableMidiManagerDynamicInstantiationDescription[] =
+ R"*(Enable MIDIManager dynamic instantiation for Web MIDI.)*";
+
+// Desktop iOS promotion chrome://flags strings
+
+#if defined(OS_WIN)
+
+const char kEnableDesktopIosPromotionsName[] =
+ R"*(Desktop to iOS promotions.)*";
+
+const char kEnableDesktopIosPromotionsDescription[] =
+ R"*(Enable Desktop to iOS promotions, and allow users to see them if)*"
+ R"*(they are eligible.)*";
+
+#endif // defined(OS_WIN)
+
+#if defined(OS_ANDROID)
+
+const char kEnableCustomFeedbackUiName[] =
+ R"*(Enable Custom Feedback UI)*";
+
+const char kEnableCustomFeedbackUiDescription[] =
+ R"*(Enables a custom feedback UI when submitting feedback through)*"
+ R"*(Google Feedback. Works with Google Play Services v10.2+)*";
+
+#endif // defined(OS_ANDROID)
+
+const char kEnableAdjustableLargeCursorName[] =
+ R"*(Enable adjustable large cursor)*";
+
+const char kEnableAdjustableLargeCursorDescription[] =
+ R"*(Make size of accessibility large cursor adjustable.)*";
+
+#if defined(OS_CHROMEOS) || defined(OS_LINUX) || defined(OS_MACOSX) || \
+ defined(OS_WIN)
+
+const char kOmniboxEntitySuggestionsName[] =
+ R"*(Omnibox entity suggestions)*";
+
+const char kOmniboxEntitySuggestionsDescription[] =
+ R"*(Enable receiving entity suggestions in Omnibox.)*";
+
+#endif // defined(OS_CHROMEOS) || defined(OS_LINUX) || defined(OS_MACOSX) ||
+ // defined(OS_WIN)
+
+#if defined(OS_CHROMEOS)
+
+const char kEnableChromevoxArcSupportName[] =
+ R"*(ChromeVox ARC support)*";
+
+const char kEnableChromevoxArcSupportDescription[] =
+ R"*(Enable ChromeVox screen reader features in ARC)*";
+
+#endif // defined(OS_CHROMEOS)
+
+const char kMojoLoadingName[] =
+ R"*(Use Mojo IPC for resource loading)*";
+
+const char kMojoLoadingDescription[] =
+ R"*(Use Mojo IPC instead of traditional Chrome IPC for resource)*"
+ R"*(loading.)*";
+
+#if defined(OS_ANDROID)
+
+const char kUseNewDoodleApiName[] =
+ R"*(Use new Doodle API)*";
+
+const char kUseNewDoodleApiDescription[] =
+ R"*(Enables the new API to fetch Doodles for the NTP.)*";
+
+#endif // defined(OS_ANDROID)
+
+const char kDelayNavigationName[] =
+ R"*(Delay navigations)*";
+
+const char kDelayNavigationDescription[] =
+ R"*(Add a fixed delay to main frame navigations.)*";
+
+const char kDebugShortcutsDescription[] =
+ R"*(Enables additional keyboard shortcuts that are useful for)*"
+ R"*(debugging Ash.)*";
+
+#if defined(OS_CHROMEOS)
+
+// File Manager
+
+const char kVideoPlayerChromecastSupportName[] =
+ R"*(Experimental Chromecast support for Video Player)*";
+
+const char kVideoPlayerChromecastSupportDescription[] =
+ R"*(This option enables experimental Chromecast support for Video)*"
+ R"*(Player app on ChromeOS.)*";
+
+const char kNewZipUnpackerName[] =
+ R"*(New ZIP unpacker)*";
+
+const char kNewZipUnpackerDescription[] =
+ R"*(New ZIP unpacker flow, based on the File System Provider API.)*";
+
+const char kShowArcFilesAppName[] =
+ R"*(Show Android Files app)*";
+
+const char kShowArcFilesAppDescription[] =
+ R"*(Show Android Files app in Chrome OS launcher. This is only)*"
+ R"*(effective on a device with access to Play Store.)*";
+
+const char kOfficeEditingComponentAppName[] =
+ R"*(Office Editing for Docs, Sheets & Slides)*";
+
+const char kOfficeEditingComponentAppDescription[] =
+ R"*(Office Editing for Docs, Sheets & Slides for testing purposes.)*";
+
+const char kDisplayColorCalibrationName[] =
+ R"*(Color calibration of the display)*";
+
+const char kDisplayColorCalibrationDescription[] =
+ R"*(Allow color calibration of the display if the display supports)*"
+ R"*(the feature.)*";
+
+const char kMemoryPressureThresholdName[] =
+ R"*(Memory discard strategy for advanced pressure handling)*";
+
+const char kMemoryPressureThresholdDescription[] =
+ R"*(Memory discarding strategy to use)*";
+
+const char kConservativeThresholds[] =
+ R"*(Conservative memory pressure release strategy)*";
+
+const char kAggressiveCacheDiscardThresholds[] =
+ R"*(Aggressive cache release strategy)*";
+
+const char kAggressiveTabDiscardThresholds[] =
+ R"*(Aggressive tab release strategy)*";
+
+const char kAggressiveThresholds[] =
+ R"*(Aggressive tab and cache release strategy)*";
+
+const char kWakeOnPacketsName[] =
+ R"*(Wake On Packets)*";
+
+const char kWakeOnPacketsDescription[] =
+ R"*(Enables waking the device based on the receipt of some network)*"
+ R"*(packets.)*";
+
+const char kQuickUnlockPin[] =
+ R"*(Quick Unlock (PIN))*";
+
+const char kQuickUnlockPinDescription[] =
+ R"*(Enabling PIN quick unlock allows you to use a PIN to unlock your)*"
+ R"*(Chromebook on the lock screen after you have signed into your)*"
+ R"*(device.)*";
+
+const char kQuickUnlockFingerprint[] =
+ R"*(Quick Unlock (Fingerprint))*";
+
+const char kQuickUnlockFingerprintDescription[] =
+ R"*(Enabling fingerprint quick unlock allows you to setup and use a)*"
+ R"*(fingerprint to unlock your Chromebook on the lock screen after)*"
+ R"*(you have signed into your device.)*";
+
+const char kExperimentalAccessibilityFeaturesName[] =
+ R"*(Experimental accessibility features)*";
+
+const char kExperimentalAccessibilityFeaturesDescription[] =
+ R"*(Enable additional accessibility features in the Settings page.)*";
+
+const char kDisableSystemTimezoneAutomaticDetectionName[] =
+ R"*(SystemTimezoneAutomaticDetection policy support)*";
+
+const char kDisableSystemTimezoneAutomaticDetectionDescription[] =
+ R"*(Disable system timezone automatic detection device policy.)*";
+
+const char kEolNotificationName[] =
+ R"*(Disable Device End of Life notification.)*";
+
+const char kEolNotificationDescription[] =
+ R"*(Disable Notifcation when Device is End of Life.)*";
+
+// Stylus strings
+
+const char kForceEnableStylusToolsName[] =
+ R"*(Force enable stylus features)*";
+
+const char kForceEnableStylusToolsDescription[] =
+ R"*(Forces display of the stylus tools menu in the shelf and the)*"
+ R"*(stylus section in settings, even if there is no attached stylus)*"
+ R"*(device.)*";
+
+// Network portal notification
+
+const char kNetworkPortalNotificationName[] =
+ R"*(Notifications about captive portals)*";
+
+const char kNetworkPortalNotificationDescription[] =
+ R"*(If enabled, notification is displayed when device is connected to)*"
+ R"*(a network behind captive portal.)*";
+
+const char kMtpWriteSupportName[] =
+ R"*(MTP write support)*";
+
+const char kMtpWriteSupportDescription[] =
+ R"*(MTP write support in File System API (and file manager). In-place)*"
+ R"*(editing operations are not supported.)*";
+
+const char kCrosRegionsModeName[] =
+ R"*(Cros-regions load mode)*";
+
+const char kCrosRegionsModeDescription[] =
+ R"*(This flag controls cros-regions load mode)*";
+
+const char kCrosRegionsModeDefault[] =
+ R"*(Default)*";
+
+const char kCrosRegionsModeOverride[] =
+ R"*(Override VPD values.)*";
+
+const char kCrosRegionsModeHide[] =
+ R"*(Hide VPD values.)*";
+
+const char kPrinterProviderSearchAppName[] =
+ R"*(Chrome Web Store Gallery app for printer drivers)*";
+
+const char kPrinterProviderSearchAppDescription[] =
+ R"*(Enables Chrome Web Store Gallery app for printer drivers. The app)*"
+ R"*(searches Chrome Web Store for extensions that support printing to)*"
+ R"*(a USB printer with specific USB ID.)*";
+
+const char kArcBootCompleted[] =
+ R"*(Load Android apps automatically)*";
+
+const char kArcBootCompletedDescription[] =
+ R"*(Allow Android apps to start automatically after signing in.)*";
+
+const char kEnableImeMenuName[] =
+ R"*(Enable opt-in IME menu)*";
+
+const char kEnableImeMenuDescription[] =
+ R"*(Enable access to the new IME menu in the Language Settings page.)*";
+
+const char kEnableEhvInputName[] =
+ R"*(Emoji, handwriting and voice input on opt-in IME menu)*";
+
+const char kEnableEhvInputDescription[] =
+ R"*(Enable access to emoji, handwriting and voice input form opt-in)*"
+ R"*(IME menu.)*";
+
+#endif // #if defined(OS_CHROMEOS)
+
+} // namespace flags_descriptions

Powered by Google App Engine
This is Rietveld 408576698