Diff
Modified: trunk/LayoutTests/ChangeLog (210975 => 210976)
--- trunk/LayoutTests/ChangeLog 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/LayoutTests/ChangeLog 2017-01-20 21:04:24 UTC (rev 210976)
@@ -1,3 +1,15 @@
+2017-01-20 Antoine Quint <[email protected]>
+
+ Web Animations should be off by default and enabled as an experimental feature
+ https://bugs.webkit.org/show_bug.cgi?id=167115
+ <rdar://problem/30048963>
+
+ Reviewed by Joseph Pecoraro.
+
+ No need for an explicit preference anymore.
+
+ * webanimations/script-tests/Document.js:
+
2017-01-20 Ryan Haddad <[email protected]>
Skipping pointer-lock tests on macOS WK2.
Modified: trunk/LayoutTests/webanimations/script-tests/Document.js (210975 => 210976)
--- trunk/LayoutTests/webanimations/script-tests/Document.js 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/LayoutTests/webanimations/script-tests/Document.js 2017-01-20 21:04:24 UTC (rev 210976)
@@ -1,9 +1,5 @@
description("Web Animation API: Document interface extension test.");
-// Enable Web Animations API.
-if (window.testRunner)
- window.testRunner.overridePreference("WebKitWebAnimationsEnabled", "1");
-
var iframe = document.getElementById("iframe");
var target = document.getElementById("target");
Modified: trunk/Source/WebCore/ChangeLog (210975 => 210976)
--- trunk/Source/WebCore/ChangeLog 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/Source/WebCore/ChangeLog 2017-01-20 21:04:24 UTC (rev 210976)
@@ -1,5 +1,27 @@
2017-01-20 Antoine Quint <[email protected]>
+ Web Animations should be off by default and enabled as an experimental feature
+ https://bugs.webkit.org/show_bug.cgi?id=167115
+ <rdar://problem/30048963>
+
+ Reviewed by Joseph Pecoraro.
+
+ Conditionalize the existing parts of the Web Animations API so that they may be
+ toggled at runtime.
+
+ * animation/Animatable.idl:
+ * animation/AnimationEffect.idl:
+ * animation/AnimationTimeline.idl:
+ * animation/DocumentAnimation.idl:
+ * animation/DocumentTimeline.idl:
+ * animation/KeyframeEffect.idl:
+ * animation/WebAnimation.idl:
+ * page/RuntimeEnabledFeatures.cpp:
+ (WebCore::RuntimeEnabledFeatures::reset):
+ * page/RuntimeEnabledFeatures.h:
+
+2017-01-20 Antoine Quint <[email protected]>
+
[Modern Media Controls] Turn modern media controls on by default
https://bugs.webkit.org/show_bug.cgi?id=165668
Modified: trunk/Source/WebCore/animation/Animatable.idl (210975 => 210976)
--- trunk/Source/WebCore/animation/Animatable.idl 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/Source/WebCore/animation/Animatable.idl 2017-01-20 21:04:24 UTC (rev 210976)
@@ -28,6 +28,7 @@
[
Conditional=WEB_ANIMATIONS,
+ EnabledAtRuntime=WebAnimations,
NoInterfaceObject
] interface Animatable {
#if !defined(LANGUAGE_OBJECTIVE_C) || !LANGUAGE_OBJECTIVE_C
Modified: trunk/Source/WebCore/animation/AnimationEffect.idl (210975 => 210976)
--- trunk/Source/WebCore/animation/AnimationEffect.idl 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/Source/WebCore/animation/AnimationEffect.idl 2017-01-20 21:04:24 UTC (rev 210976)
@@ -28,6 +28,7 @@
[
Conditional=WEB_ANIMATIONS,
+ EnabledAtRuntime=WebAnimations,
InterfaceName=AnimationEffectReadOnly,
SkipVTableValidation
] interface AnimationEffect {
Modified: trunk/Source/WebCore/animation/AnimationTimeline.idl (210975 => 210976)
--- trunk/Source/WebCore/animation/AnimationTimeline.idl 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/Source/WebCore/animation/AnimationTimeline.idl 2017-01-20 21:04:24 UTC (rev 210976)
@@ -28,6 +28,7 @@
[
Conditional=WEB_ANIMATIONS,
+ EnabledAtRuntime=WebAnimations,
CustomToJSObject,
ImplementationLacksVTable
] interface AnimationTimeline {
Modified: trunk/Source/WebCore/animation/DocumentAnimation.idl (210975 => 210976)
--- trunk/Source/WebCore/animation/DocumentAnimation.idl 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/Source/WebCore/animation/DocumentAnimation.idl 2017-01-20 21:04:24 UTC (rev 210976)
@@ -27,7 +27,8 @@
*/
[
- Conditional=WEB_ANIMATIONS
+ Conditional=WEB_ANIMATIONS,
+ EnabledAtRuntime=WebAnimations,
] partial interface Document {
readonly attribute DocumentTimeline timeline;
sequence<WebAnimation> getAnimations();
Modified: trunk/Source/WebCore/animation/DocumentTimeline.idl (210975 => 210976)
--- trunk/Source/WebCore/animation/DocumentTimeline.idl 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/Source/WebCore/animation/DocumentTimeline.idl 2017-01-20 21:04:24 UTC (rev 210976)
@@ -28,6 +28,7 @@
[
Conditional=WEB_ANIMATIONS,
+ EnabledAtRuntime=WebAnimations,
ImplementationLacksVTable,
// FIXME: Should be DOMHighResTimeStamp rather than double (e.g. see Performance.now()).
Constructor(double originTime),
Modified: trunk/Source/WebCore/animation/KeyframeEffect.idl (210975 => 210976)
--- trunk/Source/WebCore/animation/KeyframeEffect.idl 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/Source/WebCore/animation/KeyframeEffect.idl 2017-01-20 21:04:24 UTC (rev 210976)
@@ -28,6 +28,7 @@
[
Conditional=WEB_ANIMATIONS,
+ EnabledAtRuntime=WebAnimations,
// FIXME: Constructor stub only at the moment (should accept PseudoElement target, frames and options).
Constructor([Default=Undefined] Element? target)
// FIXME: Add interface for and inherit from KeyframeEffectReadOnly.
Modified: trunk/Source/WebCore/animation/WebAnimation.idl (210975 => 210976)
--- trunk/Source/WebCore/animation/WebAnimation.idl 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/Source/WebCore/animation/WebAnimation.idl 2017-01-20 21:04:24 UTC (rev 210976)
@@ -28,6 +28,7 @@
[
Conditional=WEB_ANIMATIONS,
+ EnabledAtRuntime=WebAnimations,
InterfaceName=Animation,
ImplementationLacksVTable,
Constructor([Default=Undefined] AnimationEffect? effect, [Default=Undefined] AnimationTimeline? timeline)
Modified: trunk/Source/WebCore/page/RuntimeEnabledFeatures.cpp (210975 => 210976)
--- trunk/Source/WebCore/page/RuntimeEnabledFeatures.cpp 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/Source/WebCore/page/RuntimeEnabledFeatures.cpp 2017-01-20 21:04:24 UTC (rev 210976)
@@ -103,9 +103,6 @@
#if ENABLE(CSS_ANIMATIONS_LEVEL_2)
m_areAnimationTriggersEnabled = false;
#endif
-#if ENABLE(WEB_ANIMATIONS)
- m_areWebAnimationsEnabled = false;
-#endif
#if ENABLE(CSS_GRID_LAYOUT)
m_cssGridLayoutEnabled = true;
#endif
Modified: trunk/Source/WebCore/page/RuntimeEnabledFeatures.h (210975 => 210976)
--- trunk/Source/WebCore/page/RuntimeEnabledFeatures.h 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/Source/WebCore/page/RuntimeEnabledFeatures.h 2017-01-20 21:04:24 UTC (rev 210976)
@@ -332,7 +332,7 @@
#endif
#if ENABLE(WEB_ANIMATIONS)
- bool m_areWebAnimationsEnabled;
+ bool m_areWebAnimationsEnabled { false };
#endif
bool m_isShadowDOMEnabled;
Modified: trunk/Source/WebKit2/ChangeLog (210975 => 210976)
--- trunk/Source/WebKit2/ChangeLog 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/Source/WebKit2/ChangeLog 2017-01-20 21:04:24 UTC (rev 210976)
@@ -1,5 +1,18 @@
2017-01-20 Antoine Quint <[email protected]>
+ Web Animations should be off by default and enabled as an experimental feature
+ https://bugs.webkit.org/show_bug.cgi?id=167115
+ <rdar://problem/30048963>
+
+ Reviewed by Joseph Pecoraro.
+
+ Promote, or relegate depending on how you see things, the Web Animations preference
+ to an experimental feature.
+
+ * Shared/WebPreferencesDefinitions.h:
+
+2017-01-20 Antoine Quint <[email protected]>
+
[Modern Media Controls] Turn modern media controls on by default
https://bugs.webkit.org/show_bug.cgi?id=165668
Modified: trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h (210975 => 210976)
--- trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h 2017-01-20 21:04:24 UTC (rev 210976)
@@ -130,7 +130,6 @@
macro(ForceSoftwareWebGLRendering, forceSoftwareWebGLRendering, Bool, bool, false, "", "") \
macro(Accelerated2dCanvasEnabled, accelerated2dCanvasEnabled, Bool, bool, false, "", "") \
macro(CSSAnimationTriggersEnabled, cssAnimationTriggersEnabled, Bool, bool, true, "", "") \
- macro(WebAnimationsEnabled, webAnimationsEnabled, Bool, bool, false, "", "") \
macro(ForceFTPDirectoryListings, forceFTPDirectoryListings, Bool, bool, false, "", "") \
macro(TabsToLinks, tabsToLinks, Bool, bool, DEFAULT_WEBKIT_TABSTOLINKS_ENABLED, "", "") \
macro(DNSPrefetchingEnabled, dnsPrefetchingEnabled, Bool, bool, false, "", "") \
@@ -318,6 +317,7 @@
macro(ModernMediaControlsEnabled, modernMediaControlsEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, "Modern Media Controls", "Use modern media controls look") \
macro(InputEventsEnabled, inputEventsEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, "Input Events", "Enable InputEvents support") \
macro(SubtleCryptoEnabled, subtleCryptoEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, "SubtleCrypto", "Enable SubtleCrypto support") \
+ macro(WebAnimationsEnabled, webAnimationsEnabled, Bool, bool, false, "Web Animations", "Web Animations prototype") \
macro(WebGL2Enabled, webGL2Enabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, "WebGL 2.0", "WebGL 2 prototype") \
\
Modified: trunk/Tools/ChangeLog (210975 => 210976)
--- trunk/Tools/ChangeLog 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/Tools/ChangeLog 2017-01-20 21:04:24 UTC (rev 210976)
@@ -1,3 +1,18 @@
+2017-01-20 Antoine Quint <[email protected]>
+
+ Web Animations should be off by default and enabled as an experimental feature
+ https://bugs.webkit.org/show_bug.cgi?id=167115
+ <rdar://problem/30048963>
+
+ Reviewed by Joseph Pecoraro.
+
+ Turn Web Animations on in DRT.
+
+ * DumpRenderTree/mac/DumpRenderTree.mm:
+ (resetWebPreferencesToConsistentValues):
+ * DumpRenderTree/win/DumpRenderTree.cpp:
+ (resetWebPreferencesToConsistentValues):
+
2017-01-20 Youenn Fablet <[email protected]>
[WebRTC] Add libwebrtc build infrastructure
Modified: trunk/Tools/DumpRenderTree/mac/DumpRenderTree.mm (210975 => 210976)
--- trunk/Tools/DumpRenderTree/mac/DumpRenderTree.mm 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/Tools/DumpRenderTree/mac/DumpRenderTree.mm 2017-01-20 21:04:24 UTC (rev 210976)
@@ -1001,6 +1001,7 @@
[preferences setMediaStreamEnabled:YES];
[preferences setPeerConnectionEnabled:YES];
+ [preferences setWebAnimationsEnabled:YES];
[WebPreferences _clearNetworkLoaderSession];
[WebPreferences _setCurrentNetworkLoaderSessionCookieAcceptPolicy:NSHTTPCookieAcceptPolicyOnlyFromMainDocumentDomain];
Modified: trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp (210975 => 210976)
--- trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp 2017-01-20 21:04:24 UTC (rev 210976)
@@ -862,6 +862,7 @@
prefsPrivate3->setCustomElementsEnabled(TRUE);
prefsPrivate3->setModernMediaControlsEnabled(FALSE);
+ prefsPrivate3->setWebAnimationsEnabled(TRUE);
setAlwaysAcceptCookies(false);
}
Modified: trunk/Websites/webkit.org/ChangeLog (210975 => 210976)
--- trunk/Websites/webkit.org/ChangeLog 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/Websites/webkit.org/ChangeLog 2017-01-20 21:04:24 UTC (rev 210976)
@@ -1,3 +1,15 @@
+2017-01-20 Antoine Quint <[email protected]>
+
+ Web Animations should be off by default and enabled as an experimental feature
+ https://bugs.webkit.org/show_bug.cgi?id=167115
+ <rdar://problem/30048963>
+
+ Reviewed by Joseph Pecoraro.
+
+ Add a test for Web Animations feature detection.
+
+ * experimental-features.html:
+
2017-01-19 Joseph Pecoraro <[email protected]>
Include SubtleCrypto test on experimental-features test page
Modified: trunk/Websites/webkit.org/experimental-features.html (210975 => 210976)
--- trunk/Websites/webkit.org/experimental-features.html 2017-01-20 20:44:47 UTC (rev 210975)
+++ trunk/Websites/webkit.org/experimental-features.html 2017-01-20 21:04:24 UTC (rev 210976)
@@ -106,6 +106,10 @@
return window.crypto.subtle;
}
+function testWebAnimations() {
+ return !!window.Animation;
+}
+
window.addEventListener("load", function () {
Array.from(document.querySelectorAll(".test")).forEach(element => {
var enabled = false;
@@ -134,6 +138,7 @@
<div class="test" id="InputEvents"><p>HTML Input Events</p></div>
<div class="test" id="SubtleCrypto"><p>SubtleCrypto</p></div>
<div class="test" id="VariationFonts"><p>Variation Fonts</p></div>
+ <div class="test" id="WebAnimations"><p>Web Animations</p></div>
<div class="test" id="WebGL2"><p>WebGL 2.0</p></div>
</div>
</body>