[webkit-changes] [WebKit/WebKit] a403c9: [scroll-animations] `animation-duration` should su...
Antoine Quint
noreply at github.com
Wed Sep 11 12:29:47 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: a403c9cb7f54e41784b34adb9a3dcb8ab033dfbd
https://github.com/WebKit/WebKit/commit/a403c9cb7f54e41784b34adb9a3dcb8ab033dfbd
Author: Antoine Quint <graouts at webkit.org>
Date: 2024-09-11 (Wed, 11 Sep 2024)
Changed paths:
M LayoutTests/imported/w3c/web-platform-tests/css/css-animations/parsing/animation-duration-computed-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/css/css-animations/parsing/animation-shorthand-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/css/css-animations/parsing/animation-valid-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/animation-duration-auto.tentative-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/animation-events-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/scroll-timeline-nearest-with-absolute-positioned-element-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/scroll-timeline-range-animation-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/timeline-offset-in-keyframe-change-timeline.tentative-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/timeline-offset-keyframes-hidden-subject-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/timeline-offset-keyframes-with-document-timeline-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/view-timeline-animation-range-update.tentative-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/view-timeline-keyframe-boundary-interpolation-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/view-timeline-range-animation-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/view-timeline-with-transform-on-subject-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/change-animation-range-updates-play-state-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/svg-graphics-element-001-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/svg-graphics-element-002-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/svg-graphics-element-003-expected.txt
M Source/WebCore/animation/CSSAnimation.cpp
M Source/WebCore/css/CSSProperties.json
M Source/WebCore/css/CSSToStyleMap.cpp
M Source/WebCore/css/ComputedStyleExtractor.cpp
M Source/WebCore/css/parser/CSSPropertyParser.cpp
M Source/WebCore/page/ios/ContentChangeObserver.cpp
M Source/WebCore/platform/animation/Animation.h
M Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp
M Source/WebCore/platform/graphics/nicosia/NicosiaAnimation.cpp
M Source/WebCore/style/Styleable.cpp
Log Message:
-----------
[scroll-animations] `animation-duration` should support the `auto` value
https://bugs.webkit.org/show_bug.cgi?id=279513
rdar://135798959
Reviewed by Tim Nguyen.
We add "auto" as a new (default) value for the "animation-duration" property. This value maps
to "0s" in all scenarios where a scroll timeline is not involved. To represent the "auto" value,
we update `Animation::m_duration` to be a `MarkableDouble` and consider `std::nullopt` to be "auto".
* LayoutTests/imported/w3c/web-platform-tests/css/css-animations/parsing/animation-duration-computed-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-animations/parsing/animation-shorthand-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-animations/parsing/animation-valid-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/animation-duration-auto.tentative-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/animation-events-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/scroll-timeline-nearest-with-absolute-positioned-element-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/scroll-timeline-range-animation-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/timeline-offset-in-keyframe-change-timeline.tentative-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/timeline-offset-keyframes-hidden-subject-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/timeline-offset-keyframes-with-document-timeline-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/view-timeline-animation-range-update.tentative-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/view-timeline-keyframe-boundary-interpolation-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/view-timeline-range-animation-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/css/view-timeline-with-transform-on-subject-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/change-animation-range-updates-play-state-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/svg-graphics-element-001-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/svg-graphics-element-002-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/scroll-animations/view-timelines/svg-graphics-element-003-expected.txt:
* Source/WebCore/animation/CSSAnimation.cpp:
(WebCore::CSSAnimation::syncPropertiesWithBackingAnimation):
* Source/WebCore/css/CSSProperties.json:
* Source/WebCore/css/CSSToStyleMap.cpp:
(WebCore::CSSToStyleMap::mapAnimationDuration):
* Source/WebCore/css/ComputedStyleExtractor.cpp:
(WebCore::valueForAnimationDuration):
(WebCore::addValueForAnimationPropertyToList):
(WebCore::valueListForAnimationOrTransitionProperty):
* Source/WebCore/css/parser/CSSPropertyParser.cpp:
(WebCore::initialValueForLonghand):
(WebCore::consumeAnimationValueForShorthand):
* Source/WebCore/page/ios/ContentChangeObserver.cpp:
(WebCore::ContentChangeObserver::didAddTransition):
* Source/WebCore/platform/animation/Animation.h:
(WebCore::Animation::isEmptyOrZeroDuration const):
(WebCore::Animation::duration const):
(WebCore::Animation::setDuration):
(WebCore::Animation::fillDuration):
(WebCore::Animation::initialDuration):
* Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::setupAnimation):
* Source/WebCore/platform/graphics/nicosia/NicosiaAnimation.cpp:
(Nicosia::Animation::Animation):
* Source/WebCore/style/Styleable.cpp:
(WebCore::updateCSSTransitionsForStyleableAndProperty):
Canonical link: https://commits.webkit.org/283499@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list