Diff
Modified: trunk/LayoutTests/imported/w3c/ChangeLog (291041 => 291042)
--- trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-09 12:55:11 UTC (rev 291041)
+++ trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-09 12:58:38 UTC (rev 291042)
@@ -1,5 +1,16 @@
2022-03-08 Antoine Quint <[email protected]>
+ [web-animations] clip-rule should support discrete animations
+ https://bugs.webkit.org/show_bug.cgi?id=237609
+
+ Reviewed by Antti Koivisto.
+
+ * web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-001-expected.txt:
+ * web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-001-expected.txt:
+ * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-001-expected.txt:
+
+2022-03-08 Antoine Quint <[email protected]>
+
[web-animations] background-blend-mode should support discrete animation
https://bugs.webkit.org/show_bug.cgi?id=237607
Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-001-expected.txt (291041 => 291042)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-001-expected.txt 2022-03-09 12:55:11 UTC (rev 291041)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-001-expected.txt 2022-03-09 12:58:38 UTC (rev 291042)
@@ -126,6 +126,9 @@
PASS clip: "rect(10px, 10px, 10px, 10px)" onto "auto"
PASS clip: "rect(10px, 10px, 10px, auto)" onto "rect(10px, 10px, 10px, 10px)"
PASS clip: "rect(10px, 10px, 10px, 10px)" onto "rect(10px, 10px, 10px, auto)"
+PASS clip-rule (type: discrete) has testAccumulation function
+PASS clip-rule: "nonzero" onto "evenodd"
+PASS clip-rule: "evenodd" onto "nonzero"
PASS color (type: color) has testAccumulation function
FAIL color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 255) at 500ms expected "rgb(255, 128, 255)" but got "rgb(192, 128, 192)"
PASS color supports animating as color of #RGB
Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-001-expected.txt (291041 => 291042)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-001-expected.txt 2022-03-09 12:55:11 UTC (rev 291041)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-001-expected.txt 2022-03-09 12:58:38 UTC (rev 291042)
@@ -126,6 +126,9 @@
PASS clip: "rect(10px, 10px, 10px, 10px)" onto "auto"
PASS clip: "rect(10px, 10px, 10px, auto)" onto "rect(10px, 10px, 10px, 10px)"
PASS clip: "rect(10px, 10px, 10px, 10px)" onto "rect(10px, 10px, 10px, auto)"
+PASS clip-rule (type: discrete) has testAddition function
+PASS clip-rule: "nonzero" onto "evenodd"
+PASS clip-rule: "evenodd" onto "nonzero"
PASS color (type: color) has testAddition function
FAIL color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 255) at 500ms expected "rgb(255, 128, 255)" but got "rgb(192, 128, 192)"
PASS color supports animating as color of #RGB
Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-001-expected.txt (291041 => 291042)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-001-expected.txt 2022-03-09 12:55:11 UTC (rev 291041)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-001-expected.txt 2022-03-09 12:58:38 UTC (rev 291042)
@@ -154,6 +154,10 @@
PASS clip uses discrete animation when animating between "rect(10px, 10px, 10px, 10px)" and "rect(10px, 10px, 10px, auto)" with linear easing
PASS clip uses discrete animation when animating between "rect(10px, 10px, 10px, 10px)" and "rect(10px, 10px, 10px, auto)" with effect easing
PASS clip uses discrete animation when animating between "rect(10px, 10px, 10px, 10px)" and "rect(10px, 10px, 10px, auto)" with keyframe easing
+PASS clip-rule (type: discrete) has testInterpolation function
+PASS clip-rule uses discrete animation when animating between "evenodd" and "nonzero" with linear easing
+PASS clip-rule uses discrete animation when animating between "evenodd" and "nonzero" with effect easing
+PASS clip-rule uses discrete animation when animating between "evenodd" and "nonzero" with keyframe easing
PASS color (type: color) has testInterpolation function
PASS color supports animating as color of rgb()
PASS color supports animating as color of #RGB
Modified: trunk/Source/WebCore/ChangeLog (291041 => 291042)
--- trunk/Source/WebCore/ChangeLog 2022-03-09 12:55:11 UTC (rev 291041)
+++ trunk/Source/WebCore/ChangeLog 2022-03-09 12:58:38 UTC (rev 291042)
@@ -1,5 +1,18 @@
2022-03-08 Antoine Quint <[email protected]>
+ [web-animations] clip-rule should support discrete animations
+ https://bugs.webkit.org/show_bug.cgi?id=237609
+
+ Reviewed by Antti Koivisto.
+
+ * animation/CSSPropertyAnimation.cpp:
+ (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
+ * rendering/style/RenderStyle.h:
+ (WebCore::RenderStyle::clipRule const):
+ (WebCore::RenderStyle::setClipRule):
+
+2022-03-08 Antoine Quint <[email protected]>
+
[web-animations] background-blend-mode should support discrete animation
https://bugs.webkit.org/show_bug.cgi?id=237607
Modified: trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp (291041 => 291042)
--- trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp 2022-03-09 12:55:11 UTC (rev 291041)
+++ trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp 2022-03-09 12:58:38 UTC (rev 291042)
@@ -2841,7 +2841,8 @@
new DiscretePropertyWrapper<ColorInterpolation>(CSSPropertyColorInterpolation, &RenderStyle::colorInterpolation, &RenderStyle::setColorInterpolation),
new DiscretePropertyWrapper<Kerning>(CSSPropertyFontKerning, &RenderStyle::fontKerning, &RenderStyle::setFontKerning),
new DiscretePropertyWrapper<FontFeatureSettings>(CSSPropertyFontFeatureSettings, &RenderStyle::fontFeatureSettings, &RenderStyle::setFontFeatureSettings),
- new FontFamilyWrapper
+ new FontFamilyWrapper,
+ new DiscretePropertyWrapper<WindRule>(CSSPropertyClipRule, &RenderStyle::clipRule, &RenderStyle::setClipRule)
};
const unsigned animatableLonghandPropertiesCount = WTF_ARRAY_LENGTH(animatableLonghandPropertyWrappers);
Modified: trunk/Source/WebCore/rendering/style/RenderStyle.h (291041 => 291042)
--- trunk/Source/WebCore/rendering/style/RenderStyle.h 2022-03-09 12:55:11 UTC (rev 291041)
+++ trunk/Source/WebCore/rendering/style/RenderStyle.h 2022-03-09 12:58:38 UTC (rev 291042)
@@ -1430,6 +1430,8 @@
const SVGRenderStyle& svgStyle() const { return m_svgStyle; }
SVGRenderStyle& accessSVGStyle() { return m_svgStyle.access(); }
+ WindRule clipRule() const { return svgStyle().clipRule(); }
+ void setClipRule(WindRule clipRule) { accessSVGStyle().setClipRule(clipRule); }
ColorInterpolation colorInterpolation() const { return svgStyle().colorInterpolation(); }
void setColorInterpolation(ColorInterpolation colorInterpolation) { accessSVGStyle().setColorInterpolation(colorInterpolation); }