RESOLVED FIXED 242425
avoid invalidating SVG resources when referencing element changes style
https://bugs.webkit.org/show_bug.cgi?id=242425
Summary avoid invalidating SVG resources when referencing element changes style
Cameron McCormack (:heycam)
Reported 2022-07-06 22:20:47 PDT
SVGResourcesCache::clientStyleChanged will destroy then recreate the SVG resources for an element when it is restyled and the StyleDifference is not Repaint or RepaintIfText. This is not necessary for many property changes. We only need to do this if there is a change in which resource is being referenced (i.e., the clip-path, mask-image, fill, etc. property changed), or if there is a property change on the element that a cached resource depends on. One specific example is when the transform of a client RenderElement changes. With the work to make resources handle client layout changes lazily in bug 242420, transforms will be taken into account as part of the resource validation process at paint time, if needed. So if the transform changes we don't need to destroy and recreate the full set of SVG resources here in clientStyleChanged.
Attachments
Radar WebKit Bug Importer
Comment 1 2022-07-06 22:20:55 PDT
Cameron McCormack (:heycam)
Comment 2 2022-07-06 22:38:30 PDT
EWS
Comment 3 2022-07-14 18:08:06 PDT
Committed 252484@main (fda943aadc10): <https://commits.webkit.org/252484@main> Reviewed commits have been landed. Closing PR #2154 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.