1 // http://dev.chromium.org/blink/runtime-enabled-features
3 // This list is used to generate RuntimeEnabledFeatures.h/cpp which contains
4 // a class that stores static enablers for all experimental features.
6 // Each feature can be assigned a "status":
7 // status=stable -> Enable this in all Blink configurations. We are committed to these APIs indefinitely.
8 // status=experimental -> In-progress features, Web Developers might play with, but are not on by default in stable.
9 // status=test -> Enabled in ContentShell for testing, otherwise off.
10 // Features without a status are not enabled anywhere by default.
12 // "stable" features listed here should be rare, as anything which we've shipped stable
13 // can have its runtime flag removed soon after.
15 // condition=ENABLE_NAME is used for wrapping features in compile-time
16 // #if ENABLE(FEATURE) guards. These are deprecated and should all be removed.
18 ApplicationCache status=stable
19 AuthorShadowDOMForAnyElement
20 BatteryStatus status=test
22 // This feature is deprecated and we are evangalizing affected sites.
23 // See https://crbug.com/346236 for current status.
24 PrefixedVideoFullscreen status=stable
26 // Enable bleeding-edge code to make Blink draw content faster.
27 // The changes enabled behind this flag are very likely to break lots of content.
28 // ** DO NOT use this flag unless you know what you are doing. **
31 ClientHintsDpr status=experimental
32 Crypto status=experimental
33 CSSAnimationUnprefixed status=experimental
34 CSSCompositing status=experimental
35 CSSExclusions status=experimental
36 CSSGridLayout status=experimental
37 CSSMaskSourceType status=experimental
38 CSSOMSmoothScroll status=experimental
39 CSSShapes status=experimental
40 CSSStickyPosition status=experimental
41 CSSTouchAction status=stable
42 CSSTouchActionDelay status=test
43 CSSTransformsUnprefixed status=test
44 CSSViewport status=experimental
45 CSSWillChange status=experimental
46 CSS3Text status=experimental
47 CSS3TextDecorations status=experimental
48 CustomSchemeHandler depends_on=NavigatorContentUtils, status=experimental
49 Database status=stable
50 DeviceMotion status=stable
51 DeviceOrientation status=stable
52 DialogElement status=experimental
53 EncodingAPI status=experimental
54 EncryptedMedia status=test
55 EncryptedMediaAnyVersion status=stable
56 ExperimentalCanvasFeatures status=test
57 ExperimentalContentSecurityPolicyFeatures status=experimental
58 ExperimentalWebSocket status=test
59 FileAPIBlobClose status=experimental
60 FileConstructor status=experimental
61 FileSystem status=stable
62 FontLoadEvents status=stable
65 HTMLImports status=test
66 HighResolutionTimeInWorkers status=stable
67 IMEAPI status=experimental
68 IndexedDBExperimental status=experimental
69 InputModeAttribute status=experimental
70 LangAttributeAwareFormControlUI
71 PrefixedEncryptedMedia status=stable
72 LocalStorage status=stable
74 MediaSource status=stable
75 MediaSourceExperimental depends_on=MediaSource, status=experimental
76 MediaStream status=stable
78 Notifications status=stable
79 ObjectFitPosition status=stable
81 // Only enabled on Android, and for certain layout tests on Linux.
82 OverlayFullscreenVideo
83 PagePopup status=stable
85 PeerConnection depends_on=MediaStream, status=stable
87 QuotaPromise status=experimental
89 RegionBasedColumns status=experimental
91 // This is implementation flag for the re-write of the layout/paint system to
92 // do painting after we have completed layout, instead of piecemeal during layout.
95 RequestAutocomplete status=test
96 ScreenOrientation status=experimental
97 ScriptedSpeech status=stable
99 // Implements documentElement.scrollTop/Left and bodyElement.scrollTop/Left
100 // as per the spec, matching other Web engines.
101 ScrollTopLeftInterop status=experimental
103 ServiceWorker status=experimental
104 SessionStorage status=stable
105 SharedWorker status=stable
106 SpeechInput status=test
107 SpeechSynthesis status=stable
109 Stream status=experimental
110 StyleScoped status=experimental
111 SubpixelFontScaling status=experimental
112 SubresourceIntegrity status=test
113 SVGPaintOrder status=stable
115 // Enable optimizations to recalculate style on the fewest possible number of
116 // elements when updating classes, ids or attributes of DOM elements.
117 TargetedStyleRecalc status=experimental
119 // Many websites disable mouse support when touch APIs are available. We'd
120 // like to enable this always but can't until more websites fix this bug.
121 // Chromium sets this conditionally (eg. based on the presence of a
122 // touchscreen) in ApplyWebPreferences.
126 UserSelectAll status=experimental
127 ScriptPromiseOnV8Promise
128 VideoTrack depends_on=Media, status=stable
130 WebAnimationsAPI status=experimental
131 WebAudio condition=WEB_AUDIO, status=stable
132 WebGLDraftExtensions status=experimental
134 WebKitMediaSource status=stable
135 WebVTTRegions depends_on=VideoTrack, status=experimental
136 WOFF2 status=experimental
139 PseudoClassesInMatchingCriteriaInAuthorShadowTrees status=test