blob: 2da11843dbbe7d01ae90087d15bde7817830819d [file] [log] [blame]
// 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.
// status=deprecated -> Alias for "test", will be removed at some point.
// 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.
// condition=ENABLE_NAME is used for wrapping features in compile-time
// #if ENABLE(FEATURE) guards. These are deprecated and should all be removed.
ApplicationCache status=stable
AudioVideoTracks depends_on=Media, status=experimental
BatteryStatus status=stable
Beacon status=experimental
// This feature is deprecated and we are evangalizing affected sites.
// See for current status.
PrefixedVideoFullscreen status=stable
// Enable bleeding-edge code to make Blink draw content faster.
// The changes enabled behind this flag are very likely to break lots of content.
// ** DO NOT use this flag unless you know what you are doing. **
ThemeColor status=stable
ClientHintsDpr status=experimental
ContextMenu status=experimental
Crypto status=stable
CSSAnimationUnprefixed status=experimental
CSSAttributeCaseSensitivity status=experimental
CSSCompositing status=experimental
CSSGridLayout status=experimental
CSSMaskSourceType status=experimental
CSSOMSmoothScroll status=experimental
CSSTouchActionDelay status=test
CSSViewport status=experimental
CSSWillChange status=stable
CSS3Text status=experimental
CSS3TextDecorations status=experimental
CustomSchemeHandler depends_on=NavigatorContentUtils, status=experimental
Database status=stable
DeviceLight status=test
DialogElement status=stable
EncodingAPI status=stable
EncryptedMedia status=test
EncryptedMediaAnyVersion status=stable
ExperimentalCanvasFeatures status=test
ExperimentalContentSecurityPolicyFeatures status=experimental
ExperimentalWebSocket status=stable
FileAPIBlobClose status=experimental
FileConstructor status=stable
FileSystem status=stable
FontLoadEvents status=stable
FullscreenUnprefixed status=test
Gamepad status=stable
Geofencing status=test
GeometryInterfaces status=test
HTMLImports status=stable
HighResolutionTimeInWorkers status=stable
IMEAPI status=experimental
ImageDataConstructor status=experimental
ImageRenderingPixelated status=experimental
IndexedDBExperimental status=experimental
InputModeAttribute status=experimental
LayerSquashing status=stable
PrefixedEncryptedMedia status=stable
LocalStorage status=stable
Manifest status=test
Media status=stable
MediaController depends_on=Media, status=experimental
MediaQueryParser status=stable
MediaSource status=stable
MediaSourceExperimental depends_on=MediaSource, status=experimental
MediaStream status=stable
MemoryInfoInWorkers status=experimental
NavigationTransitions status=experimental
NetworkInformation status=stable
Notifications status=stable
ObjectFitPosition status=stable
// Only enabled on Android, and for certain layout tests on Linux.
PagePopup status=stable
Path2D status=stable
PathOpsSVGClipping status=stable
PeerConnection depends_on=MediaStream, status=stable
PushMessaging status=experimental
QuotaPromise status=experimental
RegionBasedColumns status=experimental
RequestAutocomplete status=test
ScreenOrientation status=stable
ScriptedSpeech status=stable
// Implements documentElement.scrollTop/Left and bodyElement.scrollTop/Left
// as per the spec, matching other Web engines.
ScrollTopLeftInterop status=experimental
ServiceWorker status=experimental
SessionStorage status=stable
SharedWorker status=stable
PictureSizes status=stable
Picture status=stable
// window.showModalDialog is deprecated and slated for removal.
ShowModalDialog status=deprecated
// Lax Mixed Content checking for WebSockets, XHR, etc. is deprecated and slated for removal.
LaxMixedContentChecking status=deprecated
SpeechSynthesis status=stable
Stream status=experimental
SubpixelFontScaling status=stable
SubresourceIntegrity status=test
// Enable optimizations to recalculate style on the fewest possible number of
// elements when updating classes, ids or attributes of DOM elements.
TargetedStyleRecalc 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 status=stable
// Temporary setting to allow easy rollback of change to hover media feature.
HoverMediaQueryKeywords status=stable
ThreadedParserDataReceiver status=experimental
UserSelectAll status=experimental
WebAnimationsElementAnimate status=stable
WebAnimationsAPI status=experimental, depends_on=WebAnimationsElementAnimate
WebAudio condition=WEB_AUDIO, status=stable
WebGLDraftExtensions status=experimental
WebMIDI status=test
WebVTTRegions depends_on=Media, status=experimental
WOFF2 status=stable
XSLT status=stable
PseudoClassesInMatchingCriteriaInAuthorShadowTrees status=test
CredentialManager status=test