[webkit-changes] [WebKit/WebKit] 5a9734: [scroll-timeline] add the ScrollTimeline interface

Antoine Quint noreply at github.com
Thu Nov 9 08:28:19 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 5a9734b890d090b00773d7476b6a25b5d9fae6b7
      https://github.com/WebKit/WebKit/commit/5a9734b890d090b00773d7476b6a25b5d9fae6b7
  Author: Antoine Quint <graouts at webkit.org>
  Date:   2023-11-09 (Thu, 09 Nov 2023)

  Changed paths:
    M LayoutTests/TestExpectations
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/cancel-animation-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/constructor-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/current-time-nan-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/current-time-root-scroller-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/current-time-writing-modes-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/effect-updateTiming-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/finish-animation-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/intrinsic-iteration-duration.tentative-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/pause-animation-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/play-animation-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/reverse-animation-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/scroll-animation-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/scroll-animation-inactive-timeline-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/scroll-timeline-invalidation-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/scroll-timeline-range-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/scroll-timeline-snapshotting-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/setting-current-time-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/setting-playback-rate-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/setting-start-time-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/setting-timeline.tentative-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/source-quirks-mode-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/update-playback-rate-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/scroll-timelines/updating-the-finished-state-expected.txt
    M LayoutTests/platform/mac-wk1/TestExpectations
    M Source/WebCore/CMakeLists.txt
    M Source/WebCore/DerivedSources-input.xcfilelist
    M Source/WebCore/DerivedSources-output.xcfilelist
    M Source/WebCore/DerivedSources.make
    M Source/WebCore/Sources.txt
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/animation/AnimationTimeline.h
    M Source/WebCore/animation/DocumentTimeline.h
    A Source/WebCore/animation/ScrollAxis.h
    A Source/WebCore/animation/ScrollAxis.idl
    A Source/WebCore/animation/ScrollTimeline.cpp
    A Source/WebCore/animation/ScrollTimeline.h
    A Source/WebCore/animation/ScrollTimeline.idl
    A Source/WebCore/animation/ScrollTimelineOptions.h
    A Source/WebCore/animation/ScrollTimelineOptions.idl
    M Source/WebCore/bindings/js/WebCoreBuiltinNames.h

  Log Message:
  -----------
  [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




More information about the webkit-changes mailing list