Changeset 276643 in webkit


Ignore:
Timestamp:
Apr 27, 2021 9:40:45 AM (15 months ago)
Author:
graouts@webkit.org
Message:

Correctly interpolate stroke-dasharray in the discrete case
https://bugs.webkit.org/show_bug.cgi?id=225105

Reviewed by Antti Koivisto.

LayoutTests/imported/w3c:

Mark 3 WPT progressions.

  • web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt:

Source/WebCore:

  • animation/CSSPropertyAnimation.cpp:

(WebCore::blendFunc):

Location:
trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/imported/w3c/ChangeLog

    r276639 r276643  
     12021-04-27  Antoine Quint  <graouts@webkit.org>
     2
     3        Correctly interpolate stroke-dasharray in the discrete case
     4        https://bugs.webkit.org/show_bug.cgi?id=225105
     5
     6        Reviewed by Antti Koivisto.
     7
     8        Mark 3 WPT progressions.
     9
     10        * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt:
     11
    1122021-04-27  Antoine Quint  <graouts@webkit.org>
    213
  • trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt

    r276639 r276643  
    132132PASS stroke-dasharray supports animating as a dasharray (mixed lengths and percentages)
    133133PASS stroke-dasharray (type: discrete) has testInterpolation function
    134 FAIL stroke-dasharray uses discrete animation when animating between "none" and "10px, 20px" with linear easing assert_equals: The value should be none at 499ms expected "none" but got "10px, 20px"
    135 FAIL stroke-dasharray uses discrete animation when animating between "none" and "10px, 20px" with effect easing assert_equals: The value should be none at 940ms expected "none" but got "10px, 20px"
    136 FAIL stroke-dasharray uses discrete animation when animating between "none" and "10px, 20px" with keyframe easing assert_equals: The value should be none at 940ms expected "none" but got "10px, 20px"
     134PASS stroke-dasharray uses discrete animation when animating between "none" and "10px, 20px" with linear easing
     135PASS stroke-dasharray uses discrete animation when animating between "none" and "10px, 20px" with effect easing
     136PASS stroke-dasharray uses discrete animation when animating between "none" and "10px, 20px" with keyframe easing
    137137PASS stroke-miterlimit (type: positiveNumber) has testInterpolation function
    138138FAIL stroke-miterlimit supports animating as a positive number assert_equals: The value should be 1.3 at 500ms expected "1.3" but got "1.2999999523162842"
  • trunk/Source/WebCore/ChangeLog

    r276639 r276643  
     12021-04-27  Antoine Quint  <graouts@webkit.org>
     2
     3        Correctly interpolate stroke-dasharray in the discrete case
     4        https://bugs.webkit.org/show_bug.cgi?id=225105
     5
     6        Reviewed by Antti Koivisto.
     7
     8        * animation/CSSPropertyAnimation.cpp:
     9        (WebCore::blendFunc):
     10
    1112021-04-27  Antoine Quint  <graouts@webkit.org>
    212
  • trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp

    r276639 r276643  
    425425    size_t fromLength = from.size();
    426426    size_t toLength = to.size();
    427     if (!fromLength)
    428         return !context.progress ? from : to;
    429     if (!toLength)
    430         return context.progress == 1 ? from : to;
     427    if (!fromLength || !toLength)
     428        return context.progress < 0.5 ? from : to;
    431429    size_t resultLength = fromLength;
    432430    if (fromLength != toLength) {
Note: See TracChangeset for help on using the changeset viewer.