[webkit-changes] [WebKit/WebKit] b848c9: [scroll-animations] add the ViewTimeline interface

Antoine Quint noreply at github.com
Thu Nov 9 23:01:17 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b848c9c402a36379b0281443afd2388b01c28a5a
      https://github.com/WebKit/WebKit/commit/b848c9c402a36379b0281443afd2388b01c28a5a
  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/css/animation-events-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/animation-events-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/block-view-timeline-current-time-vertical-rl.tentative-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/block-view-timeline-current-time.tentative-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/block-view-timeline-nested-subject.tentative-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/get-keyframes-with-timeline-offset-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/inline-view-timeline-current-time.tentative-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-1-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-2-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-3-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-4-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-5-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-6-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-7-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/timeline-offset-in-keyframe-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/unattached-subject-inset-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-get-current-time-range-name-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-get-set-range-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-inset-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-missing-subject-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-on-display-none-element-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-range-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-range-large-subject-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-root-source-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-snapport-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-source.tentative-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-sticky-block-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-sticky-inline-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-subject-size-changes-expected.txt
    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
    A Source/WebCore/animation/ViewTimeline.cpp
    A Source/WebCore/animation/ViewTimeline.h
    A Source/WebCore/animation/ViewTimeline.idl
    A Source/WebCore/animation/ViewTimelineOptions.h
    A Source/WebCore/animation/ViewTimelineOptions.idl
    M Source/WebCore/bindings/js/WebCoreBuiltinNames.h

  Log Message:
  -----------
  [scroll-animations] add the ViewTimeline interface
https://bugs.webkit.org/show_bug.cgi?id=264411

Reviewed by Chris Dumez.

The Scroll-driven Animations spec introduces a new ViewTimeline subclass of AnimationTimeline.
We add the IDL and supporting code for this interface as well as the supporting ViewTimelineOptions
dictionary, both behind the appropriate runtime flag.

We're skipping some additional tests because merely exposing the ViewTimeline interface makes some
tests progress further and turn early failures into timeouts for unfulfilled promises.

* LayoutTests/TestExpectations:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/animation-events-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/animation-events-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/block-view-timeline-current-time-vertical-rl.tentative-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/block-view-timeline-current-time.tentative-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/block-view-timeline-nested-subject.tentative-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/get-keyframes-with-timeline-offset-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/inline-view-timeline-current-time.tentative-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-1-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-2-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-3-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-4-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-5-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-6-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-7-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/timeline-offset-in-keyframe-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/unattached-subject-inset-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-get-current-time-range-name-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-get-set-range-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-inset-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-missing-subject-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-on-display-none-element-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-range-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-range-large-subject-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-root-source-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-snapport-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-source.tentative-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-sticky-block-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-sticky-inline-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/view-timeline-subject-size-changes-expected.txt:
* 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::isViewTimeline const):
* Source/WebCore/animation/ViewTimeline.cpp: Copied from Source/WebCore/animation/AnimationTimeline.h.
(WebCore::ViewTimeline::create):
(WebCore::ViewTimeline::ViewTimeline):
* Source/WebCore/animation/ViewTimeline.h: Copied from Source/WebCore/animation/AnimationTimeline.h.
* Source/WebCore/animation/ViewTimeline.idl: Added.
* Source/WebCore/animation/ViewTimelineOptions.h: Copied from Source/WebCore/animation/AnimationTimeline.h.
* Source/WebCore/animation/ViewTimelineOptions.idl: Added.
* Source/WebCore/bindings/js/WebCoreBuiltinNames.h:

Canonical link: https://commits.webkit.org/270508@main




More information about the webkit-changes mailing list