Changeset 289426 in webkit
- Timestamp:
- Feb 8, 2022 2:06:14 PM (5 months ago)
- Location:
- trunk
- Files:
-
- 6 edited
-
LayoutTests/imported/w3c/ChangeLog (modified) (1 diff)
-
LayoutTests/imported/w3c/web-platform-tests/css/css-logical/animation-002-expected.txt (modified) (1 diff)
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/animation/KeyframeEffect.cpp (modified) (1 diff)
-
Source/WebCore/animation/KeyframeEffect.h (modified) (1 diff)
-
Source/WebCore/animation/KeyframeEffectStack.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/imported/w3c/ChangeLog
r289424 r289426 1 2022-02-08 Antoine Quint <graouts@webkit.org> 2 3 [css-logical] [css-animations] changing "direction" or "writing-mode" should recompute keyframes 4 https://bugs.webkit.org/show_bug.cgi?id=236293 5 6 Reviewed by Dean Jackson. 7 8 Mark WPT progressions. 9 10 * web-platform-tests/css/css-logical/animation-002-expected.txt: 11 1 12 2022-02-08 Chris Dumez <cdumez@apple.com> 2 13 -
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-logical/animation-002-expected.txt
r289181 r289426 8 8 PASS Physical properties and logical properties can be mixed 9 9 PASS Declaration order is respected on each keyframe individually 10 FAIL Animations update when the writing-mode is changed assert_equals: expected "50px" but got "0px" 11 FAIL Filling animations update when the writing-mode is changed assert_equals: expected "100px" but got "0px" 12 FAIL The number of interpolating properties can be increased when the writing-mode is changed assert_equals: expected "50px" but got "0px" 13 FAIL The number of interpolating properties can be decreased when the writing-mode is changed assert_equals: expected "150px" but got "200px" 14 FAIL Animations update when the writing-mode is changed through a CSS variable assert_equals: expected "50px" but got "0px" 10 PASS Animations update when the writing-mode is changed 11 PASS Filling animations update when the writing-mode is changed 12 PASS The number of interpolating properties can be increased when the writing-mode is changed 13 PASS The number of interpolating properties can be decreased when the writing-mode is changed 14 PASS Animations update when the writing-mode is changed through a CSS variable 15 15 PASS Logical shorthand with variable references animates correctly 16 FAIL Animations update when the direction is changed assert_equals: expected "0px" but got "50px" 16 PASS Animations update when the direction is changed 17 17 -
trunk/Source/WebCore/ChangeLog
r289425 r289426 1 2022-02-08 Antoine Quint <graouts@webkit.org> 2 3 [css-logical] [css-animations] changing "direction" or "writing-mode" should recompute keyframes 4 https://bugs.webkit.org/show_bug.cgi?id=236293 5 6 Reviewed by Dean Jackson. 7 8 We need to recompute keyframes based on the matching @keyframes rule in case an element running 9 a CSS Animation changes either "direction" or "writing-mode". 10 11 * animation/KeyframeEffect.cpp: 12 (WebCore::KeyframeEffect::propertyAffectingLogicalPropertiesDidChange): 13 * animation/KeyframeEffect.h: 14 * animation/KeyframeEffectStack.cpp: 15 (WebCore::KeyframeEffectStack::applyKeyframeEffects): 16 1 17 2022-02-08 Alan Bujtas <zalan@apple.com> 2 18 -
trunk/Source/WebCore/animation/KeyframeEffect.cpp
r289226 r289426 1702 1702 } 1703 1703 1704 void KeyframeEffect::propertyAffectingLogicalPropertiesDidChange() 1705 { 1706 if (m_blendingKeyframesSource == BlendingKeyframesSource::WebAnimation) 1704 void KeyframeEffect::propertyAffectingLogicalPropertiesDidChange(RenderStyle& unanimatedStyle, const Style::ResolutionContext& resolutionContext) 1705 { 1706 switch (m_blendingKeyframesSource) { 1707 case BlendingKeyframesSource::CSSTransition: 1708 return; 1709 case BlendingKeyframesSource::CSSAnimation: 1710 computeCSSAnimationBlendingKeyframes(unanimatedStyle, resolutionContext); 1711 return; 1712 case BlendingKeyframesSource::WebAnimation: 1707 1713 clearBlendingKeyframes(); 1714 return; 1715 } 1708 1716 } 1709 1717 -
trunk/Source/WebCore/animation/KeyframeEffect.h
r289226 r289426 127 127 void animationTimingDidChange(); 128 128 void transformRelatedPropertyDidChange(); 129 void propertyAffectingLogicalPropertiesDidChange( );129 void propertyAffectingLogicalPropertiesDidChange(RenderStyle&, const Style::ResolutionContext&); 130 130 OptionSet<AcceleratedActionApplicationResult> applyPendingAcceleratedActions(); 131 131 -
trunk/Source/WebCore/animation/KeyframeEffectStack.cpp
r289226 r289426 137 137 || previousLastStyleChangeEventStyle.writingMode() != targetStyle.writingMode(); 138 138 139 auto unanimatedStyle = RenderStyle::clone(targetStyle); 140 139 141 for (const auto& effect : sortedEffects()) { 140 142 ASSERT(effect->animation()); 141 143 142 144 if (propertyAffectingLogicalPropertiesChanged) 143 effect->propertyAffectingLogicalPropertiesDidChange( );145 effect->propertyAffectingLogicalPropertiesDidChange(unanimatedStyle, resolutionContext); 144 146 145 147 effect->animation()->resolve(targetStyle, resolutionContext);
Note: See TracChangeset
for help on using the changeset viewer.