Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: a0c0c14bfa2185765e469bdbcdf06ca79cddbf6f
      
https://github.com/WebKit/WebKit/commit/a0c0c14bfa2185765e469bdbcdf06ca79cddbf6f
  Author: Nikolas Zimmermann <[email protected]>
  Date:   2023-06-12 (Mon, 12 Jun 2023)

  Changed paths:
    M Source/WebCore/svg/SVGAElement.cpp
    M Source/WebCore/svg/SVGAnimateMotionElement.cpp
    M Source/WebCore/svg/SVGAnimateTransformElement.cpp
    M Source/WebCore/svg/SVGAnimationElement.cpp
    M Source/WebCore/svg/SVGClipPathElement.cpp
    M Source/WebCore/svg/SVGFEComponentTransferElement.cpp
    M Source/WebCore/svg/SVGFEImageElement.cpp
    M Source/WebCore/svg/SVGFEMergeNodeElement.cpp
    M Source/WebCore/svg/SVGFEOffsetElement.cpp
    M Source/WebCore/svg/SVGFETileElement.cpp
    M Source/WebCore/svg/SVGFontFaceElement.cpp
    M Source/WebCore/svg/SVGFontFaceUriElement.cpp
    M Source/WebCore/svg/SVGGeometryElement.cpp
    M Source/WebCore/svg/SVGGlyphRefElement.cpp
    M Source/WebCore/svg/SVGGradientElement.cpp
    M Source/WebCore/svg/SVGGraphicsElement.cpp
    M Source/WebCore/svg/SVGImageElement.cpp
    M Source/WebCore/svg/SVGMarkerElement.cpp
    M Source/WebCore/svg/SVGMaskElement.cpp
    M Source/WebCore/svg/SVGPathElement.cpp
    M Source/WebCore/svg/SVGPatternElement.cpp
    M Source/WebCore/svg/SVGPolyElement.cpp
    M Source/WebCore/svg/SVGSVGElement.cpp
    M Source/WebCore/svg/SVGStopElement.cpp
    M Source/WebCore/svg/SVGStyleElement.cpp

  Log Message:
  -----------
  REGRESSION: Dynamic attribute updates partly broken for SVG
https://bugs.webkit.org/show_bug.cgi?id=257900

[LBSE] REGRESSION: Transform repainting/relayout broken
https://bugs.webkit.org/show_bug.cgi?id=257692

Reviewed by Rob Buis.

SVGElement::attributeChanged() need to be called _after_ changing
the class and/or base class members. attributeChanged() calls
svgAttributeChanged(), which assumes the class members have been
updated due to an attribute change before.

This also fixes the regression seen in LBSE, where 'transform'
updates no longer have any effect.

Covered by existing tests.

* Source/WebCore/svg/SVGAElement.cpp:
(WebCore::SVGAElement::attributeChanged):
* Source/WebCore/svg/SVGAnimateMotionElement.cpp:
(WebCore::SVGAnimateMotionElement::attributeChanged):
* Source/WebCore/svg/SVGAnimateTransformElement.cpp:
(WebCore::SVGAnimateTransformElement::attributeChanged):
* Source/WebCore/svg/SVGAnimationElement.cpp:
(WebCore::SVGAnimationElement::attributeChanged):
* Source/WebCore/svg/SVGClipPathElement.cpp:
(WebCore::SVGClipPathElement::attributeChanged):
* Source/WebCore/svg/SVGFEComponentTransferElement.cpp:
(WebCore::SVGFEComponentTransferElement::attributeChanged):
* Source/WebCore/svg/SVGFEImageElement.cpp:
(WebCore::SVGFEImageElement::attributeChanged):
* Source/WebCore/svg/SVGFEMergeNodeElement.cpp:
(WebCore::SVGFEMergeNodeElement::attributeChanged):
* Source/WebCore/svg/SVGFEOffsetElement.cpp:
(WebCore::SVGFEOffsetElement::attributeChanged):
* Source/WebCore/svg/SVGFETileElement.cpp:
(WebCore::SVGFETileElement::attributeChanged):
* Source/WebCore/svg/SVGFontFaceElement.cpp:
(WebCore::SVGFontFaceElement::attributeChanged):
* Source/WebCore/svg/SVGFontFaceUriElement.cpp:
(WebCore::SVGFontFaceUriElement::attributeChanged):
* Source/WebCore/svg/SVGGeometryElement.cpp:
(WebCore::SVGGeometryElement::attributeChanged):
* Source/WebCore/svg/SVGGlyphRefElement.cpp:
(WebCore::SVGGlyphRefElement::attributeChanged):
* Source/WebCore/svg/SVGGradientElement.cpp:
(WebCore::SVGGradientElement::attributeChanged):
* Source/WebCore/svg/SVGGraphicsElement.cpp:
(WebCore::SVGGraphicsElement::attributeChanged):
* Source/WebCore/svg/SVGImageElement.cpp:
(WebCore::SVGImageElement::attributeChanged):
* Source/WebCore/svg/SVGMarkerElement.cpp:
(WebCore::SVGMarkerElement::attributeChanged):
* Source/WebCore/svg/SVGMaskElement.cpp:
(WebCore::SVGMaskElement::attributeChanged):
* Source/WebCore/svg/SVGPathElement.cpp:
(WebCore::SVGPathElement::attributeChanged):
* Source/WebCore/svg/SVGPatternElement.cpp:
(WebCore::SVGPatternElement::attributeChanged):
* Source/WebCore/svg/SVGPolyElement.cpp:
(WebCore::SVGPolyElement::attributeChanged):
* Source/WebCore/svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::attributeChanged):
* Source/WebCore/svg/SVGStopElement.cpp:
(WebCore::SVGStopElement::attributeChanged):
* Source/WebCore/svg/SVGStyleElement.cpp:
(WebCore::SVGStyleElement::attributeChanged):

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


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to