Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: eb920617601aa76e79ec3ac56f74f309938d3aac
      
https://github.com/WebKit/WebKit/commit/eb920617601aa76e79ec3ac56f74f309938d3aac
  Author: Antoine Quint <[email protected]>
  Date:   2025-12-02 (Tue, 02 Dec 2025)

  Changed paths:
    M Source/WebCore/animation/KeyframeEffect.cpp
    M Source/WebCore/animation/WebAnimation.cpp
    M Source/WebKit/UIProcess/RemoteLayerTree/RemoteProgressBasedTimeline.cpp
    M Source/WebKit/UIProcess/RemoteLayerTree/RemoteProgressBasedTimeline.h
    M 
Source/WebKit/UIProcess/RemoteLayerTree/RemoteProgressBasedTimelineRegistry.cpp
    M 
Source/WebKit/UIProcess/RemoteLayerTree/RemoteProgressBasedTimelineRegistry.h
    M Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingTree.cpp

  Log Message:
  -----------
  [threaded-animations] WPT test 
`scroll-animations/css/scroll-timeline-frame-size-changed.html` fails with 
"Threaded Scroll-driven Animations" enabled
https://bugs.webkit.org/show_bug.cgi?id=303317
rdar://165620505

Reviewed by Simon Fraser.

Make sure we update the remote counterpart of an animation when the source of
its associated timeline changes metrics. Additionally, when we update the data
derived from the source metrics on the remote end, make sure to update the 
timeline's
current time to reflect that change, using the source node to compute the 
current
scroll offset.

Finally, because we also enter this "source did change metrics" code path when
a new auto-aligned animation start time is computed, and this can run on every
page rendering update, let's make sure we do so more sparingly by checking 
whether
the auto-aligned start time has changed.

Note that there is no test change in this patch since the flag is not yet 
enabled on bots. This
was caught in preparation of that running animation tests locally using
`--experimental-feature ThreadedScrollDrivenAnimationsEnabled=true`.

* Source/WebCore/animation/KeyframeEffect.cpp:
(WebCore::KeyframeEffect::animationProgressBasedTimelineSourceDidChangeMetrics):
* Source/WebCore/animation/WebAnimation.cpp:
(WebCore::WebAnimation::autoAlignStartTime):
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteProgressBasedTimeline.cpp:
(WebKit::RemoteProgressBasedTimeline::setResolutionData):
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteProgressBasedTimeline.h:
* 
Source/WebKit/UIProcess/RemoteLayerTree/RemoteProgressBasedTimelineRegistry.cpp:
(WebKit::RemoteProgressBasedTimelineRegistry::update):
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteProgressBasedTimelineRegistry.h:
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingTree.cpp:
(WebKit::RemoteScrollingTree::updateTimelineRegistration):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to