RESOLVED FIXED 249141
[LBSE] Do not relayout on dynamic transform changes, if not necessary
https://bugs.webkit.org/show_bug.cgi?id=249141
Summary [LBSE] Do not relayout on dynamic transform changes, if not necessary
Nikolas Zimmermann
Reported 2022-12-12 05:34:26 PST
The legacy SVG engine always had to perform relayouts when the transform of an element changed (up to the containing block, stopping at RenderSVGRoot boundary in case of mixed SVG/HTML documents). Container position and sizes were affected by the transformations of the descendants. That's no longer the case in LBSE, which follows CSS/HTML style of making transformations a paint effect, not inducing costly relayouts. However this only works if SVG <text> elements are not involved: SVG text always needs a relayout, as the "screen font size scaling factor" depends on the CTM of the transformed element (all transformations from target element up to RenderSVGRoot enter the calculation). The patch will present a solution for that, giving us transform updates without relayouts for everything except text, which is a good start.
Attachments
Nikolas Zimmermann
Comment 1 2022-12-12 05:39:34 PST
Radar WebKit Bug Importer
Comment 2 2022-12-19 05:35:13 PST
EWS
Comment 3 2023-01-20 17:20:04 PST
Committed 259158@main (b348ce7635b6): <https://commits.webkit.org/259158@main> Reviewed commits have been landed. Closing PR #7482 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.