[webkit-changes] [WebKit/WebKit] 8f40ab: [web-animations] move shared timing data between A...

Antoine Quint noreply at github.com
Wed Nov 8 12:14:16 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8f40ab2aadbb297eab5010e432ae9e25812b71b9
      https://github.com/WebKit/WebKit/commit/8f40ab2aadbb297eab5010e432ae9e25812b71b9
  Author: Antoine Quint <graouts at webkit.org>
  Date:   2023-11-08 (Wed, 08 Nov 2023)

  Changed paths:
    M Source/WebCore/Sources.txt
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/animation/AnimationEffect.cpp
    M Source/WebCore/animation/AnimationEffect.h
    A Source/WebCore/animation/AnimationEffectTiming.cpp
    A Source/WebCore/animation/AnimationEffectTiming.h
    M Source/WebCore/platform/animation/AcceleratedEffect.cpp
    M Source/WebCore/platform/animation/AcceleratedEffect.h
    M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in

  Log Message:
  -----------
  [web-animations] move shared timing data between AnimationEffect and AcceleratedEffect to a dedicated struct
https://bugs.webkit.org/show_bug.cgi?id=264394

Reviewed by Dean Jackson.

Refactor `AcceleratedEffect` and `AnimationEffect` to use a shared struct to store timing-related properties: `AnimationEffectTiming`.
This will allow `AcceleratedEffect` to resolve timing and compute the transformed progress of an animation with the same code used
for `KeyframeEffect` in the WebContent process.

* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/animation/AnimationEffect.cpp:
(WebCore::AnimationEffect::AnimationEffect):
(WebCore::AnimationEffect::getBindingsTiming const):
(WebCore::AnimationEffect::localTime const):
(WebCore::AnimationEffect::playbackRate const):
(WebCore::AnimationEffect::getBasicTiming const):
(WebCore::AnimationEffect::getComputedTiming const):
(WebCore::AnimationEffect::updateTiming):
(WebCore::AnimationEffect::updateStaticTimingProperties):
(WebCore::AnimationEffect::setIterationStart):
(WebCore::AnimationEffect::setIterations):
(WebCore::AnimationEffect::setDelay):
(WebCore::AnimationEffect::setEndDelay):
(WebCore::AnimationEffect::setFill):
(WebCore::AnimationEffect::setIterationDuration):
(WebCore::AnimationEffect::setDirection):
(WebCore::AnimationEffect::setTimingFunction):
(WebCore::AnimationEffect::progressUntilNextStep const):
(WebCore::AnimationEffect::getTiming const): Deleted.
* Source/WebCore/animation/AnimationEffect.h:
(WebCore::AnimationEffect::timing const):
(WebCore::AnimationEffect::delay const):
(WebCore::AnimationEffect::endDelay const):
(WebCore::AnimationEffect::fill const):
(WebCore::AnimationEffect::iterationStart const):
(WebCore::AnimationEffect::iterations const):
(WebCore::AnimationEffect::iterationDuration const):
(WebCore::AnimationEffect::direction const):
(WebCore::AnimationEffect::timingFunction const):
(WebCore::AnimationEffect::activeDuration const):
(WebCore::AnimationEffect::endTime const):
* Source/WebCore/animation/AnimationEffectTiming.cpp: Added.
(WebCore::AnimationEffectTiming::updateComputedProperties):
(WebCore::AnimationEffectTiming::getBasicTiming const):
(WebCore::AnimationEffectTiming::resolve const):
* Source/WebCore/animation/AnimationEffectTiming.h: Added.
* Source/WebCore/platform/animation/AcceleratedEffect.cpp:
(WebCore::AcceleratedEffect::create):
(WebCore::AcceleratedEffect::clone const):
(WebCore::AcceleratedEffect::AcceleratedEffect):
* Source/WebCore/platform/animation/AcceleratedEffect.h:
(WebCore::AcceleratedEffect::timing const):
(WebCore::AcceleratedEffect::animationType const):
(WebCore::AcceleratedEffect::compositeOperation const):
(WebCore::AcceleratedEffect::paused const):
(WebCore::AcceleratedEffect::playbackRate const):
(WebCore::AcceleratedEffect::fill const): Deleted.
(WebCore::AcceleratedEffect::direction const): Deleted.
(WebCore::AcceleratedEffect::timingFunction const): Deleted.
(WebCore::AcceleratedEffect::iterationStart const): Deleted.
(WebCore::AcceleratedEffect::iterations const): Deleted.
(WebCore::AcceleratedEffect::delay const): Deleted.
(WebCore::AcceleratedEffect::endDelay const): Deleted.
(WebCore::AcceleratedEffect::iterationDuration const): Deleted.
(WebCore::AcceleratedEffect::activeDuration const): Deleted.
(WebCore::AcceleratedEffect::endTime const): Deleted.
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:

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




More information about the webkit-changes mailing list