Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[scroll-timeline] add the ScrollTimeline interface
https://bugs.webkit.org/show_bug.cgi?id=264407 Reviewed by Chris Dumez. The Scroll-driven Animations spec introduces a new ScrollTimeline subclass of AnimationTimeline. We add the IDL and supporting code for this interface as well as the supporting ScrollTimelineOptions dictionary and ScrollAxis enum, all behind the appropriate runtime flag. We're skipping some additional tests because merely exposing the ScrollTimeline interface makes some new tests progress further and turn early failures into timeouts for unfulfilled promises. * LayoutTests/TestExpectations: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/cancel-animation-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/constructor-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/current-time-nan-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/current-time-root-scroller-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/current-time-writing-modes-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/effect-updateTiming-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/finish-animation-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/intrinsic-iteration-duration.tentative-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/pause-animation-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/play-animation-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/reverse-animation-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/scroll-animation-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/scroll-animation-inactive-timeline-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/scroll-timeline-invalidation-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/scroll-timeline-range-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/scroll-timeline-snapshotting-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/setting-current-time-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/setting-playback-rate-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/setting-start-time-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/setting-timeline.tentative-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/source-quirks-mode-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/update-playback-rate-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/updating-the-finished-state-expected.txt: * LayoutTests/platform/mac-wk1/TestExpectations: * Source/WebCore/CMakeLists.txt: * Source/WebCore/DerivedSources-input.xcfilelist: * Source/WebCore/DerivedSources-output.xcfilelist: * Source/WebCore/DerivedSources.make: * Source/WebCore/Sources.txt: * Source/WebCore/WebCore.xcodeproj/project.pbxproj: * Source/WebCore/animation/AnimationTimeline.h: (WebCore::AnimationTimeline::isDocumentTimeline const): (WebCore::AnimationTimeline::isScrollTimeline const): (WebCore::AnimationTimeline::isDocumentTimeline): Deleted. * Source/WebCore/animation/DocumentTimeline.h: * Source/WebCore/animation/ScrollAxis.h: Copied from Source/WebCore/animation/AnimationTimeline.h. * Source/WebCore/animation/ScrollAxis.idl: Added. * Source/WebCore/animation/ScrollTimeline.cpp: Copied from Source/WebCore/animation/AnimationTimeline.h. (WebCore::ScrollTimeline::create): (WebCore::ScrollTimeline::ScrollTimeline): * Source/WebCore/animation/ScrollTimeline.h: Copied from Source/WebCore/animation/AnimationTimeline.h. * Source/WebCore/animation/ScrollTimeline.idl: Added. * Source/WebCore/animation/ScrollTimelineOptions.h: Copied from Source/WebCore/animation/AnimationTimeline.h. * Source/WebCore/animation/ScrollTimelineOptions.idl: Added. * Source/WebCore/bindings/js/WebCoreBuiltinNames.h: Canonical link: https://commits.webkit.org/270451@main
- Loading branch information