{
  // http://dev.chromium.org/blink/runtime-enabled-features
  //
  // This list is used to generate RuntimeEnabledFeatures.h/cpp which contains
  // a class that stores static enablers for all experimental features.

  parameters: {
    // Each feature can be assigned a "status":
    // * status=stable: Enable this in all Blink configurations. We are
    //   committed to these APIs indefinitely.
    // * status=experimental: In-progress features, Web Developers might play
    //   with, but are not on by default in stable.
    // * status=test: Enabled in ContentShell for testing, otherwise off.
    // Features without a status are not enabled anywhere by default.
    //
    // "stable" features listed here should be rare, as anything which we've
    // shipped stable can have its runtime flag removed soon after.
    status: {
      valid_values: ["stable", "experimental", "test"],
    },

    // "implied_by" or "depends_on" specifies relationship to other features:
    // * implied_by: ["feature1","feature2",...]
    //   The feature is automatically enabled if any implied_by features is
    //   enabled;
    // * depends_on: ["feature1","feature2",...]
    //   The feature is enabled only if all depends_on features are enabled.
    // Only one of "implied_by" and "depends_on" can be specified.
    implied_by: {
      default: [],
      valid_type: "list",
    },
    depends_on: {
      default: [],
      valid_type: "list",
    },

    // origin_trial_feature_name: "FEATURE_NAME" is used to integrate the
    // feature with the Origin Trials framework. The framework allows the
    // feature to be enabled at runtime on a per-page basis through a signed
    // token for the corresponding feature name. Declaring the
    // origin_trial_feature_name will cause a static method to be generated in
    // OriginTrials.h/cpp. This static method allows the feature implementation
    // to check if it is enabled for the current context.
    origin_trial_feature_name: {
    },
    origin_trial_os: {
      default: [],
      valid_type: "list",
    },

    // settable_from_internals specifies whether a feature can be set from
    // internals.runtimeFlags, with the default being false.
    settable_from_internals: {
      valid_type: "bool",
    },

    // Set to true to have customised {feature}Enabled() method implementation.
    custom: {
      valid_type: "bool",
    },

    // Feature policy IDL extended attribute (see crrev.com/2247923004).
    feature_policy: {
    },
  },

  data: [
    {
      name: "Accelerated2dCanvas",
      settable_from_internals: true,
      status: "stable",
    },
    {
      name: "AccessibilityObjectModel",
      status: "experimental",
    },
    {
      name: "AllowContentInitiatedDataUrlNavigations",
      status: "stable",
    },
    {
      name: "AudioOutputDevices",
      status: "stable",
    },
    {
      name: "AudioVideoTracks",
      status: "experimental",
    },
    {
      name: "AudioWorklet",
      status: "experimental",
    },
    {
      name: "AutoplayMutedVideos",
      settable_from_internals: true,
    },
    {
      name: "Auxclick",
      status: "stable",
    },
    {
      name: "BackgroundFetch",
      status: "experimental",
    },
    {
      name: "BackgroundSync",
      status: "stable",
    },
    {
      name: "BackgroundVideoTrackOptimization",
      status: "stable",
    },
    {
      name: "BlinkRuntimeCallStats",
    },
    {
      name: "BlockCredentialedSubresources",
      status: "stable",
    },
    {
      name: "BlockLegacySubresources",
      status: "stable",
    },
    {
      name: "BroadcastChannel",
      status: "stable",
    },
    {
      name: "Budget",
      status: "stable",
    },
    {
      name: "BudgetQuery",
      origin_trial_feature_name: "BudgetQuery",
      status: "experimental",
    },
    {
      name: "CanMakePayment",
      status: "stable",
    },
    {
      name: "Canvas2dFixedRenderingMode",
      status: "test",
    },
    {
      name: "Canvas2dImageChromium",
      status: "experimental",
    },
    {
      name: "ClickRetargetting",
      status: "experimental",
    },
    {
      name: "ClientHints",
      status: "stable",
    },
    {
      name: "CoalescedEvents",
      status: "stable",
    },
    {
      name: "ColorCanvasExtensions",
    },
    {
      name: "ColorCorrectRendering",
      status: "experimental",
    },
    {
      name: "CompositedSelectionUpdate",
    },
    {
      name: "CompositeOpaqueFixedPosition",
      settable_from_internals: true,
      status: "test",
    },
    {
      name: "CompositeOpaqueScrollers",
      settable_from_internals: true,
      status: "stable",
    },
    {
      name: "CompositorTouchAction",
      status: "test",
    },
    {
      name: "CompositorWorker",
      status: "experimental",
    },
    {
      name: "ComputedAccessibilityInfo",
      status: "experimental",
    },
    {
      name: "ConicGradient",
      status: "experimental",
    },
    {
      name: "ContextMenu",
      status: "experimental",
    },
    {
      name: "CorsRFC1918",
      status: "test",
    },
    {
      name: "CSS3Text",
      status: "experimental",
    },
    {
      name: "CSS3TextDecorations",
      status: "stable",
    },
    {
      name: "CSSAdditiveAnimations",
      depends_on: ["StackedCSSPropertyAnimations"],
      status: "experimental",
    },
    {
      name: "CSSApplyAtRules",
      status: "experimental",
    },
    {
      name: "CSSBackdropFilter",
      status: "experimental",
    },
    {
      name: "CSSContainment",
      status: "stable",
    },
    {
      name: "CSSDisplayContents",
      status: "experimental",
    },
    {
      name: "CSSFontDisplay",
      status: "stable",
    },
    {
      name: "CSSFontSizeAdjust",
      status: "experimental",
    },
    {
      name: "CSSGridLayout",
      status: "stable",
    },
    {
      name: "CSSHexAlphaColor",
      status: "experimental",
    },
    {
      name: "CSSHyphens",
      status: "stable",
    },
    {
      name: "CSSInBodyDoesNotBlockPaint",
      status: "experimental",
    },
    {
      name: "CSSIndependentTransformProperties",
      status: "experimental",
    },
    {
      name: "CSSLineBreak",
      status: "test",
    },
    {
      name: "CSSMaskSourceType",
      status: "experimental",
    },
    {
      name: "CSSOffsetPathRay",
      status: "experimental",
    },
    {
      name: "CSSOffsetPathRayContain",
      status: "experimental",
    },
    {
      name: "CSSOffsetPositionAnchor",
      status: "experimental",
    },
    {
      name: "CSSOMSmoothScroll",
      status: "stable",
    },
    {
      name: "CSSPaintAPI",
      depends_on: ["Worklet"],
      status: "experimental",
    },
    {
      name: "CSSPaintAPIArguments",
      depends_on: ["CSSPaintAPI"],
      status: "experimental",
    },
    {
      name: "CSSScrollSnapPoints",
      status: "test",
    },
    {
      name: "CSSSelectorsFocusWithin",
      status: "stable",
    },
    {
      name: "CSSSnapSize",
      status: "experimental",
    },
    {
      name: "CSSStickyPosition",
      status: "stable",
    },
    {
      name: "CSSTransformBox",
      status: "experimental",
    },
    {
      name: "CSSTypedOM",
      status: "experimental",
    },
    {
      name: "CSSVariableFonts",
      status: "experimental",
    },
    {
      name: "CSSVariables2",
      status: "experimental",
    },
    {
      name: "CSSViewport",
      status: "experimental",
    },
    {
      name: "CustomElementsBuiltin",
      status: "test",
    },
    {
      name: "CustomSchemeHandler",
      depends_on: ["NavigatorContentUtils"],
      status: "experimental",
    },
    {
      name: "Database",
      status: "stable",
    },
    {
      name: "DecodeToYUV",
      status: "experimental",
    },
    {
      name: "DesktopCaptureDisableLocalEchoControl",
      status: "experimental",
    },
    {
      name: "DeviceRAMHeader",
      status: "experimental",
    },
    {
      name: "DisplayList2dCanvas",
      status: "stable",
    },
    {
      name: "DisplayNoneIFrameCreatesNoLayoutObject",
      status: "experimental",
    },
    {
      name: "DocumentCookie",
    },
    {
      name: "DocumentDomain",
    },
    {
      name: "DocumentWrite",
    },
    {
      name: "DocumentWriteEvaluator",
    },
    {
      name: "DOMConvenienceAPI",
      status: "stable",
    },
    {
      name: "DurableStorage",
      status: "stable",
    },
    {
      name: "EmbedderCSPEnforcement",
      status: "stable",
    },
    {
      name: "EncryptedMediaHdcpPolicyCheck",
      status: "test",
    },
    {
      name: "ExecCommandInJavaScript",
      status: "test",
    },
    {
      name: "ExpensiveBackgroundTimerThrottling",
      status: "stable",
    },
    {
      name: "ExperimentalCanvasFeatures",
      status: "test",
    },
    {
      name: "ExperimentalContentSecurityPolicyFeatures",
      status: "experimental",
    },
    {
      name: "ExperimentalV8Extras",
      status: "experimental",
    },
    {
      name: "FastMobileScrolling",
    },
    {
      name: "FeaturePolicy",
      status: "stable",
    },
    {
      name: "FeaturePolicyExperimentalFeatures",
    },
    {
      name:"FetchRequestCache",
      status: "experimental",
    },
    {
      name: "FileAPIBlobClose",
      status: "experimental",
    },
    {
      name: "FileSystem",
      status: "stable",
    },
    {
      name: "FontCacheScaling",
      status: "test",
    },
    // See crbug.com/585250.
    {
      name: "ForceDisable2dCanvasCopyOnWrite",
    },
    {
      name: "ForceDisplayList2dCanvas",
    },
    // For simulating Android's overlay fullscreen video in layout tests on Linux.
    {
      name: "ForceOverlayFullscreenVideo",
    },
    {
      name: "ForceTallerSelectPopup",
    },
    {
      name: "ForeignFetch",
      origin_trial_feature_name: "ForeignFetch",
      status: "experimental",
    },
    {
      name: "FractionalScrollOffsets",
    },
    {
      name: "FramebustingNeedsSameOriginOrUserGesture",
      settable_from_internals: true,
      status: "experimental",
    },
    {
      name: "FramesTimingFunction",
      status: "experimental",
    },
    {
      name: "FrameTimingSupport",
      status: "experimental",
    },
    {
      name: "FullscreenUnprefixed",
      settable_from_internals: true,
      status: "experimental",
    },
    {
      name: "GamepadExtensions",
      origin_trial_feature_name: "WebVR1.1",
      status: "test",
    },
    {
      name: "GeometryInterfaces",
      implied_by: ["CompositorWorker"],
      status: "stable",
    },
    {
      name: "GetUserMedia",
      status: "stable",
    },
    {
      name: "GlobalCacheStorage",
      status: "stable",
    },
    {
      name: "HeapCompaction",
      status: "stable",
    },
    {
      name: "HideNonceContentAttribute",
      status: "stable",
    },
    // https://crbug.com/523952 for testing disabling the feature.
    {
      name: "HTMLImportsStyleApplication",
      status: "stable",
    },
    {
      name: "IDBObserver",
      status: "experimental",
    },
    {
      name: "IdleTimeColdModeSpellChecking",
      depends_on: ["IdleTimeSpellChecking"],
      status: "test",
    },
    {
      name: "IdleTimeSpellChecking",
      status: "test",
    },
    {
      name: "ImageCapture",
      status: "stable",
    },
    {
      name: "ImageOrientation",
      status: "test",
    },
    {
      name: "InertAttribute",
      status: "experimental",
    },
    {
      name: "InputEvent",
      status: "stable",
    },
    {
      name: "InputModeAttribute",
      status: "experimental",
    },
    {
      name: "InputMultipleFieldsUI",
      status: "stable",
    },
    {
      name: "InstalledApp",
      origin_trial_feature_name: "InstalledApp",
      status: "experimental",
    },
    {
      name: "IntersectionObserver",
      status: "stable",
    },
    {
      name: "JSImageDecode",
      status: "test",
    },
    {
      name: "KeyboardLock",
      status: "test",
    },
    {
      name: "LangAttributeAwareFormControlUI",
    },
    {
      name: "LayoutNG",
    },
    {
      name: "LazyParseCSS",
      status: "experimental",
    },
    {
      name: "LinkServiceWorker",
      origin_trial_feature_name: "ForeignFetch",
      status: "experimental",
    },
    {
      name: "LoadingWithMojo",
    },
    {
      name: "LongTaskObserver",
      status: "stable",
    },
    {
      name: "MediaCapabilities",
      status: "test",
    },
    {
      name: "MediaCapture",
    },
    {
      name: "MediaCaptureDepth",
      status: "experimental",
    },
    {
      name: "MediaCaptureFromCanvas",
      status: "stable",
    },
    {
      name: "MediaCaptureFromVideo",
      status: "experimental",
    },
    // Set to reflect the MediaCastOverlayButton feature.
    {
      name: "MediaCastOverlayButton",
    },
    {
      name: "MediaControlsOverlayPlayButton",
      settable_from_internals: true,
    },
    {
      name: "MediaDocumentDownloadButton",
    },
    {
      name: "MediaQueryShape",
      status: "experimental",
    },
    // MediaSession is enabled by default on Android only.
    // TODO(rbyers): Add parameter to specify platform.
    {
      name: "MediaSession",
      status: "test",
    },
    {
      name: "MediaSourceExperimental",
      status: "experimental",
    },
    {
      name: "MediaSourceNewAbortAndDuration",
      status: "experimental",
    },
    {
      name: "MediaStreamSpeech",
      status: "experimental",
    },
    {
      name: "MediaStreamTrackContentHint",
      status: "experimental",
    },
    {
      name: "MediaTrackApplyConstraints",
      implied_by: ["ImageCapture"],
      status: "experimental",
    },
    {
      name: "MediaTrackCapabilities",
      implied_by: ["ImageCapture"],
      status: "experimental",
    },
    {
      name: "MemoryInfoInWorkers",
      status: "experimental",
    },
    // This is enabled by default on Windows only. The only part that's
    // "experimental" is the support on other platforms.
    {
      name: "MiddleClickAutoscroll",
      status: "test",
    },
    {
      name: "MobileLayoutTheme",
    },
    {
      name: "ModuleScripts",
      status: "stable",
    },
    {
      name: "MojoBlobs",
    },
    {
      name: "MojoJS",
      status: "test",
    },
    // MojoJSTest is used exclusively in testing environments, whereas MojoJS
    // may also be used elsewhere.
    {
      name: "MojoJSTest",
      status: "test",
    },
    {
      name: "MultipleColorStopPositions",
      status: "experimental",
    },
    {
      name: "NavigatorContentUtils",
    },
    {
      name: "NetInfoDownlink",
      status: "experimental",
    },
    {
      name: "NetInfoDownlinkMax",
      status: "stable",
    },
    {
      name: "NetInfoEffectiveType",
      status: "experimental",
    },
    {
      name: "NetInfoRtt",
      status: "experimental",
    },
    {
      name: "NetworkInformation",
      status: "stable",
    },
    // Not a web exposed feature, enabled from the command line.
    {
      name: "NewRemotePlaybackPipeline",
    },
    {
      name: "NotificationBadge",
      status: "stable",
    },
    {
      name: "NotificationConstructor",
      status: "stable",
    },
    // NotificationContentImage is not available in all platforms
    {
      name: "NotificationContentImage",
      status: "test",
    },
    {
      name: "NotificationInlineReplies",
      status: "experimental",
    },
    {
      name: "Notifications",
      status: "stable",
    },
    {
      name: "NullableDocumentDomain",
      status: "experimental",
    },
    {
      name: "OffMainThreadFetch",
    },
    {
      name: "OnDeviceChange",
      status: "stable",
    },
    {
      name: "OrientationEvent",
    },
    {
      name: "OriginTrials",
      status: "stable",
    },
    // Define a sample API for testing integration with the Origin Trials
    // Framework. The sample API is used in both unit and layout tests for the
    // Origin Trials Framework. Do not change this flag to stable, as it exists
    // solely to generate code used by the sample API implementation.
    {
      name: "OriginTrialsSampleAPI",
      origin_trial_feature_name: "Frobulate",
    },
    {
      name: "OverlayScrollbars",
      settable_from_internals: true,
    },
    {
      name: "PagePopup",
      status: "stable",
    },
    {
      name: "PaintUnderInvalidationChecking",
      settable_from_internals: true,
    },
    {
      name: "PassiveDocumentEventListeners",
      status: "stable",
    },
    {
      name: "PassPaintVisualRectToCompositor",
    },
    {
      name: "PaymentApp",
      status: "experimental",
    },
    {
      name: "PaymentDetailsError",
      status: "stable",
    },
    {
      name: "PaymentDetailsModifierData",
      status: "experimental",
    },
    // PaymentRequest is enabled by default on Android
    {
      name: "PaymentRequest",
      status: "experimental",
    },
    {
      name: "PaymentRequestBasicCard",
      status: "stable",
    },
    {
      name: "PaymentRequestPayerName",
      status: "stable",
    },
    {
      name: "PerformanceNavigationTiming2",
      status: "stable",
    },
    {
      name: "PerformanceObserver",
      status: "stable",
    },
    {
      name: "PerformancePaintTiming",
      status: "stable",
    },
    {
      name: "PermissionDelegation",
      status: "test",
    },
    {
      name: "Permissions",
      status: "stable",
    },
    {
      name: "PermissionsRequestRevoke",
      status: "experimental",
    },
    {
      name: "PreciseMemoryInfo",
    },
    {
      name: "PreferredImageRasterBounds",
      settable_from_internals: true,
    },
    // This feature is deprecated and we are evangelizing affected sites.
    // See https://crbug.com/346236 for current status.
    {
      name: "PrefixedVideoFullscreen",
      status: "stable",
    },
    {
      name: "Presentation",
      status: "stable",
    },
    {
      name: "PresentationReceiver",
      status: "stable",
    },
    {
      name: "PrintBrowser",
    },
    {
      name: "PushMessaging",
      status: "stable",
    },
    {
      name: "ReducedReferrerGranularity",
    },
    {
      name: "RemotePlayback",
      status: "stable",
    },
    // Whether or not the Remote Playback API backend is implemented.
    // Not web-exposed, set per platform. For LayoutTests, disabled by
    // default.
    {
      name: "RemotePlaybackBackend",
      settable_from_internals: true,
    },
    {
      name: "RenderingPipelineThrottling",
      status: "stable",
    },
    {
      name: "RenderingPipelineThrottlingLoadingIframes",
      status: "stable",
    },
    {
      name: "RenderUnicodeControlCharacters",
      status: "stable",
    },
    {
      name: "ResizeObserver",
      status: "experimental",
    },
    {
      name: "RestrictCanRequestURLCharacterSet",
      status: "stable",
    },
    // Handles frame scrolling via the root PaintLayer instead of the FrameView.
    // crbug.com/417782 tracks enabling this by default.
    {
      name: "RootLayerScrolling",
    },
    {
      name: "RTCRtpSender",
      status: "experimental",
    },
    {
      name: "ScriptedSpeech",
      status: "stable",
    },
    // Scrolls to compensate for layout movements (bit.ly/scroll-anchoring).
    {
      name: "ScrollAnchoring",
      settable_from_internals: true,
      status: "experimental",
    },
    {
      name: "ScrollCustomization",
    },
    // Implements documentElement.scrollTop/Left and bodyElement.scrollTop/Left
    // as per the spec, matching other Web engines.
    {
      name: "ScrollTopLeftInterop",
      status: "stable",
    },
    {
      name: "SendBeaconThrowForBlobWithNonSimpleType",
      status: "stable",
    },
    {
      name: "SendMouseEventsDisabledFormControls",
      status: "experimental",
    },
    {
      name: "Sensor",
      status: "experimental",
    },
    {
      name: "ServerTiming",
      status: "experimental",
    },
    {
      name: "ServiceWorkerNavigationPreload",
      status: "stable",
    },
    {
      name: "ServiceWorkerScriptStreaming",
    },
    {
      name: "SetRootScroller",
      status: "experimental",
    },
    {
      name: "ShadowPiercingDescendantCombinator",
      status: "experimental",
    },
    {
      name: "ShapeDetection",
      status: "experimental",
    },
    {
      name: "SharedArrayBuffer",
      status: "stable",
    },
    {
      name: "SharedWorker",
      status: "stable",
    },
    {
      name: "SkipCompositingSmallScrollers",
      status: "test",
    },
    {
      name: "SlimmingPaintStrictCullRectClipping",
    },
    {
      name: "SlimmingPaintV2",
    },
    {
      name: "SMIL",
      status: "stable",
    },
    {
      name: "SmoothScrollJSIntervention",
      status: "stable",
    },
    // Used as argument in attribute of stable-release functions/interfaces
    // where a runtime-enabled feature name is required for correct IDL syntax.
    // This is a global flag; do not change its status.
    {
      name: "StableBlinkFeatures",
      status: "stable",
    },
    {
      name: "StackedCSSPropertyAnimations",
      status: "experimental",
    },
    {
      name: "StorageEstimate",
      status: "stable",
    },
    {
      name: "StyleSharing",
      status: "experimental",
    },
    {
      name: "Suborigins",
      status: "experimental",
    },
    {
      name: "TimerThrottlingForBackgroundTabs",
      status: "stable",
    },
    {
      name: "TimerThrottlingForHiddenFrames",
      status: "stable",
    },
    {
      name: "TopNavByUserActivationInSandbox",
      status: "stable",
    },
    // Many websites disable mouse support when touch APIs are available.  We'd
    // like to enable this always but can't until more websites fix this bug.
    // Chromium sets this conditionally (eg. based on the presence of a
    // touchscreen) in ApplyWebPreferences. "Touch events" themselves are always
    // enabled since they're a feature always supported by Chrome.
    {
      name: "TouchEventFeatureDetection",
      status: "stable",
    },
    // This is set conditionally in SetRuntimeFeaturesDefaultsAndUpdateFromArgs
    // and will eventually go away when the touchpad/wheel scroll latching is
    // enabled on all platforms (http://crbug.com/526463).
    {
      name: "TouchpadAndWheelScrollLatching",
    },
    {
      name: "TrustedEventsDefaultAction",
      status: "stable",
    },
    {
      name: "UnclosedFormControlIsInvalid",
      status: "experimental",
    },
    {
      name: "V8IdleTasks",
    },
    {
      name: "ValidationBubbleInRenderer",
      status: "experimental",
    },
    {
      name: "VibrateRequiresUserGesture",
      status: "stable",
    },
    {
      name: "VideoFullscreenDetection",
    },
    {
      name: "VideoFullscreenOrientationLock",
    },
    {
      name: "VideoRotateToFullscreen",
    },
    {
      name: "VisualViewportAPI",
      status: "stable",
    },
    {
      name: "WakeLock",
      status: "experimental",
    },
    {
      name: "WebAnimationsAPI",
      status: "experimental",
    },
    {
      name: "WebAnimationsSVG",
      status: "experimental",
    },
    {
      name: "WebAssemblyStreaming",
      status: "experimental",
    },
    {
      name: "WebAuth",
      status: "experimental",
    },
    // WebBluetooth is enabled by default on Android, ChromeOS and Mac.
    {
      name: "WebBluetooth",
      status: "experimental",
    },
    {
      name: "WebFontsCacheAwareTimeoutAdaptation",
      status: "experimental",
    },
    {
      name: "WebFontsInterventionTrigger",
    },
    {
      name: "WebFontsInterventionV2With2G",
    },
    {
      name: "WebFontsInterventionV2With3G",
    },
    {
      name: "WebFontsInterventionV2WithSlow2G",
    },
    {
      name: "WebGLDraftExtensions",
      status: "experimental",
    },
    {
      name: "WebGLImageChromium",
    },
    {
      name: "WebNFC",
      status: "experimental",
    },
    // WebShare is enabled by default on Android.
    {
      name: "WebShare",
      status: "experimental",
    },
    {
      name: "WebUSB",
      status: "stable",
    },
    {
      name: "WebVR",
      origin_trial_feature_name: "WebVR1.1",
      status: "test",
    },
    {
      name: "WebVRExperimentalRendering",
      // Don't mark this as depends_on: ["WebVR"], we want to be able to turn
      // it on for just origin trial sites where the dependency is unset.
      // We also need it for tests since the default mode requires re-entrant
      // mojo event handling, and the Javascript mocks don't support that.
      status: "test",
    },
    {
      name: "WebVTTRegions",
      status: "experimental",
    },
    {
      name: "Worklet",
      status: "experimental",
    },
    {
      name: "XSLT",
      status: "stable",
    },
  ],
}
