[Web Animations] Make Animation.timeline read-write only if a runtime flag is enabled
authorgraouts@webkit.org <graouts@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 28 Jan 2020 13:38:24 +0000 (13:38 +0000)
committergraouts@webkit.org <graouts@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 28 Jan 2020 13:38:24 +0000 (13:38 +0000)
commite0325a543e1a5d55b2395fc2ffc9c34f6beb437f
tree6e8038b996768472c3eac608893677c1a2c91600
parent2d692dd5ce21013b4c6dfc252deff70802d2720a
[Web Animations] Make Animation.timeline read-write only if a runtime flag is enabled
https://bugs.webkit.org/show_bug.cgi?id=206173
<rdar://problem/58527432>

Reviewed by Dean Jackson.

Source/WebCore:

Make the timeline property of Animation read-write only if the new WebAnimationsMutableTimelines runtime flag is enabled.

* animation/WebAnimation.idl: Make the "timeline" property conditionally read-write if WebAnimationsMutableTimelines is enabled.
* bindings/js/WebCoreBuiltinNames.h: With the new RuntimeConditionallyReadWrite property used in WebAnimation.idl, it is necessary
to declare the name of the affected property, in this case "timeline", in WebCoreBuiltinNames.
* page/RuntimeEnabledFeatures.h:
(WebCore::RuntimeEnabledFeatures::setWebAnimationsMutableTimelinesEnabled):
(WebCore::RuntimeEnabledFeatures::webAnimationsMutableTimelinesEnabled const):

Source/WebKit:

Add a new WebAnimationsMutableTimelines runtime flag.

* Shared/WebPreferences.yaml:

Source/WebKitLegacy/mac:

Add a new WebAnimationsMutableTimelines runtime flag.

* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(-[WebPreferences webAnimationsMutableTimelinesEnabled]):
(-[WebPreferences setWebAnimationsMutableTimelinesEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):

Source/WebKitLegacy/win:

Add a new WebAnimationsMutableTimelines runtime flag.

* Interfaces/IWebPreferencesPrivate.idl:
* WebPreferenceKeysPrivate.h:
* WebPreferences.cpp:
(WebPreferences::initializeDefaultSettings):
(WebPreferences::setWebAnimationsMutableTimelinesEnabled):
(WebPreferences::webAnimationsMutableTimelinesEnabled):
* WebPreferences.h:
* WebView.cpp:
(WebView::notifyPreferencesChanged):

Tools:

Manually enable the new WebAnimationsMutableTimelines runtime flag in DumpRenderTree.

* DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures):
* DumpRenderTree/win/DumpRenderTree.cpp:
(enableExperimentalFeatures):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@255234 268f45cc-cd09-0410-ab3c-d52691b4dbfc
20 files changed:
Source/WebCore/ChangeLog
Source/WebCore/animation/WebAnimation.idl
Source/WebCore/bindings/js/WebCoreBuiltinNames.h
Source/WebCore/page/RuntimeEnabledFeatures.h
Source/WebKit/ChangeLog
Source/WebKit/Shared/WebPreferences.yaml
Source/WebKitLegacy/mac/ChangeLog
Source/WebKitLegacy/mac/WebView/WebPreferenceKeysPrivate.h
Source/WebKitLegacy/mac/WebView/WebPreferences.mm
Source/WebKitLegacy/mac/WebView/WebPreferencesPrivate.h
Source/WebKitLegacy/mac/WebView/WebView.mm
Source/WebKitLegacy/win/ChangeLog
Source/WebKitLegacy/win/Interfaces/IWebPreferencesPrivate.idl
Source/WebKitLegacy/win/WebPreferenceKeysPrivate.h
Source/WebKitLegacy/win/WebPreferences.cpp
Source/WebKitLegacy/win/WebPreferences.h
Source/WebKitLegacy/win/WebView.cpp
Tools/ChangeLog
Tools/DumpRenderTree/mac/DumpRenderTree.mm
Tools/DumpRenderTree/win/DumpRenderTree.cpp