1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291
|
// 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.
//
// 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.
//
// "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.
//
// "stable" features listed here should be rare, as anything which we've shipped stable
// can have its runtime flag removed soon after.
//
// 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.
//
// settable_from_internals specifies whether a feature can be set from internals.runtimeFlags, with the default
// being false.
Accelerated2dCanvas status=stable, settable_from_internals=True
AudioOutputDevices status=stable
AudioVideoTracks status=experimental
AudioWorklet status=experimental
Auxclick status=stable
CoalescedEvents status=experimental
BackgroundSync status=stable
BackspaceDefaultHandler status=test
BroadcastChannel status=stable
Budget status=experimental
Canvas2dFixedRenderingMode status=test
EnableCanvas2dDynamicRenderingModeSwitching status=experimental
CanMakePayment status=stable
Canvas2dImageChromium status=experimental
ClientHints status=stable
CompositeOpaqueFixedPosition status=test, settable_from_internals=True
CompositeOpaqueScrollers status=stable, settable_from_internals=True
ColorCorrectRendering status=experimental
ColorCorrectRenderingDefaultMode status=experimental
CompositedSelectionUpdate
CompositorWorker status=experimental
ContextMenu status=test
CorsRFC1918 status=test
CredentialManager status=stable
CSS3Text status=experimental
CSS3TextDecorations status=stable
CSSApplyAtRules status=experimental
CSSAdditiveAnimations status=experimental, depends_on=StackedCSSPropertyAnimations
CSSBackdropFilter status=experimental
CSSHexAlphaColor status=experimental
CSSContainment status=stable
CSSFontDisplay status=experimental
CSSFontSizeAdjust status=experimental
CSSGridLayout status=stable, settable_from_internals=True
CSSDisplayContents status=experimental
CSSHyphens status=stable
CSSInBodyDoesNotBlockPaint status=experimental
CSSIndependentTransformProperties status=experimental
CSSMaskSourceType status=experimental
CSSOMSmoothScroll status=experimental
CSSOffsetPositionAnchor status=experimental
CSSOffsetRotate status=stable
CSSOffsetRotation status=stable
CSSPaintAPI status=experimental, depends_on=CSSTypedOM, depends_on=Worklet
CSSPaintAPIArguments status=experimental, depends_on=CSSPaintAPI
CSSSnapSize status=experimental
CSSStickyPosition status=stable
CSSTouchActionPanDirections status=stable
CSSTouchActionPinchZoom status=stable
CSSTypedOM status=experimental
CSSVariableFonts status=experimental
CSSVariables2 status=experimental
CSSViewport status=experimental
CSSScrollSnapPoints status=test
CustomElementsBuiltin status=test
CustomElementsV1 status=stable
CustomSchemeHandler depends_on=NavigatorContentUtils, status=experimental
Database status=stable
DecodeToYUV status=experimental
DesktopCaptureDisableLocalEchoControl status=experimental
DeviceLight status=experimental
DisplayList2dCanvas status=stable
DocumentCookie
DocumentDomain
DocumentWrite
DocumentWriteEvaluator
DOMConvenienceAPI status=stable
DurableStorage status=stable
ExpensiveBackgroundTimerThrottling status=experimental
FasterLocationReload status=experimental
FontCacheScaling status=test
ForceDisplayList2dCanvas
// See crbug.com/585250.
ForceDisable2dCanvasCopyOnWrite
EmbedderCSPEnforcement status=experimental
ExecCommandInJavaScript status=test
ComputedAccessibilityInfo status=experimental
ExperimentalCanvasFeatures status=test
ExperimentalContentSecurityPolicyFeatures status=experimental
ExperimentalV8Extras status=experimental
FastMobileScrolling
FeaturePolicy status=experimental
FileAPIBlobClose status=experimental
FileSystem status=stable
ForeignFetch status=experimental, origin_trial_feature_name=ForeignFetch
FramebustingNeedsSameOriginOrUserGesture status=experimental, settable_from_internals=True
FullscreenUnprefixed status=test, settable_from_internals=True
FrameTimingSupport status=experimental
GamepadExtensions status=test, origin_trial_feature_name=WebVR
GeometryInterfaces status=experimental, implied_by=CompositorWorker
GetUserMedia status=stable
GlobalCacheStorage status=stable
HeapCompaction status=experimental
IDBObserver status=experimental
IdleTimeSpellChecking
ImageCapture status=experimental, origin_trial_feature_name=ImageCapture
ImageOrientation status=test
IndexedDBExperimental status=experimental
InertTopControls status=stable
InputEvent status=experimental
InputModeAttribute status=experimental
InputMultipleFieldsUI status=stable
InstalledApp status=experimental
IntersectionObserver status=stable
LangAttributeAwareFormControlUI
LayoutNG
LayoutNGInline
LinkServiceWorker status=experimental, origin_trial_feature_name=ForeignFetch
LongTaskObserver status=experimental, origin_trial_feature_name=LongTaskObserver
FractionalScrollOffsets
LoadingWithMojo
MediaCapture
MediaCaptureFromCanvas status=stable
MediaCaptureFromVideo status=experimental
MediaConstraints status=stable
MediaDocumentDownloadButton
MediaGetSettings status=test
// MediaSession is enabled by default on Android only.
MediaSession status=test
MediaSourceExperimental status=experimental
MediaSourceNewAbortAndDuration status=experimental
MediaStreamSpeech status=experimental
MediaQueryShape status=experimental
MediaStreamTrackContentHint status=experimental
MemoryInfoInWorkers status=experimental
// This is enabled by default on Windows only. The only part that's
// "experimental" is the support on other platforms.
MiddleClickAutoscroll status=experimental
MobileLayoutTheme
ModuleScripts status=test
NavigatorContentUtils
WebNFC status=experimental
NetworkInformation status=stable
NetInfoDownlinkMax status=stable
NotificationConstructor status=stable
NotificationBadge status=stable
NotificationContentImage status=stable
NotificationInlineReplies status=experimental
Notifications status=stable
OnDeviceChange status=stable
OrientationEvent
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.
OriginTrialsSampleAPI origin_trial_feature_name=Frobulate
// For simulating Android's overlay fullscreen video in layout tests on Linux.
ForceOverlayFullscreenVideo
OverlayScrollbars
PagePopup status=stable
PaintUnderInvalidationChecking settable_from_internals=True
PassiveDocumentEventListeners status=stable
PassPaintVisualRectToCompositor
PaymentApp status=experimental
PaymentDetailsError status=stable
PaymentDetailsModifierData status=experimental
// PaymentRequest is enabled by default on Android
PaymentRequest status=experimental
PaymentRequestBasicCard status=stable
PaymentRequestPayerName status=stable
PerformanceObserver status=stable
PermissionDelegation status=test
Permissions status=stable
PermissionsRequestRevoke status=experimental
PointerEvent status=stable
PreciseMemoryInfo
PreferredImageRasterBounds settable_from_internals=True
// This feature is deprecated and we are evangelizing affected sites.
// See https://crbug.com/346236 for current status.
PrefixedVideoFullscreen status=stable
Presentation status=stable
PresentationReceiver status=test
PushMessaging status=stable
QuotaPromise status=experimental
ReducedReferrerGranularity
RemotePlayback status=stable
RenderingPipelineThrottling status=stable
RenderingPipelineThrottlingLoadingIframes status=stable
RenderUnicodeControlCharacters status=stable
ResizeObserver status=experimental
// Handles frame scrolling via the root PaintLayer instead of the FrameView.
// crbug.com/417782 tracks enabling this by default.
RootLayerScrolling
RTCPeerConnectionNewGetStats status=experimental
ScriptedSpeech status=stable
// Scrolls to compensate for layout movements (bit.ly/scroll-anchoring).
ScrollAnchoring status=experimental, settable_from_internals=True
// Implements documentElement.scrollTop/Left and bodyElement.scrollTop/Left
// as per the spec, matching other Web engines.
ScrollTopLeftInterop status=experimental
Sensor status=experimental
ServiceWorkerNavigationPreload origin_trial_feature_name=ServiceWorkerNavigationPreload
SetRootScroller status=experimental
ShadowPiercingDescendantCombinator status=experimental
ShapeDetection status=experimental
SharedArrayBuffer
SharedWorker status=stable
SlimmingPaintInvalidation implied_by=SlimmingPaintV2, status=experimental
SlimmingPaintV2
SlimmingPaintStrictCullRectClipping
// 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.
StableBlinkFeatures status=stable
StackedCSSPropertyAnimations status=experimental
StyleSharing status=stable
// Do not turn this flag into stable, because many interfaces that should not
// be shipped would be enabled. Instead, remove the flag from the shipping
// interface.
SpeculativeLaunchServiceWorker
StorageEstimate status=experimental
Suborigins status=experimental
TimerThrottlingForBackgroundTabs status=stable
TimerThrottlingForHiddenFrames status=stable
TopNavWithUserActivationInSandbox status=experimental
// 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.
TouchEventFeatureDetection status=stable
TraceWrappables status=stable
TrueColorRendering status=experimental
TrustedEventsDefaultAction status=stable
UserSelectAll status=stable
WebAnimationsAPI status=experimental
WebAnimationsSVG status=experimental
WebAssemblySerialization status=test
// WebBluetooth is enabled by default on Android, ChromeOS and Mac.
WebBluetooth status=experimental
WebGLDraftExtensions status=experimental
WebGLImageChromium
WebUSB status=experimental, origin_trial_feature_name=WebUSB2
WebVR status=test, origin_trial_feature_name=WebVR
WebVTTRegions status=experimental
V8BasedStructuredClone status=stable
V8IdleTasks
VideoFullscreenOrientationLock
VisibilityChangeOnUnload status=stable
XSLT status=stable
smil status=stable
ScrollCustomization
AutoplayMutedVideos settable_from_internals=True
VisualViewportAPI status=experimental
WakeLock status=experimental
WebFontsCacheAwareTimeoutAdaptation status=experimental
WebFontsInterventionV2With2G
WebFontsInterventionV2With3G
WebFontsInterventionV2WithSlow2G
WebFontsInterventionTrigger
WebShare status=experimental, origin_trial_feature_name=WebShare, origin_trial_os=android
Worklet status=experimental
LazyParseCSS status=experimental
ParseHTMLOnMainThread status=test
SendBeaconThrowForBlobWithNonSimpleType status=experimental
PerformanceNavigationTiming2 status=stable
BackgroundVideoTrackOptimization status=stable
PerformancePaintTiming status=test
HideNonceContentAttribute status=experimental
UnclosedFormControlIsInvalid status=experimental
RestrictCompleteURLCharacterSet status=experimental
|