Created attachment 432386 [details] Safari 14.1.1 Expected behaviour: text decoration renders below the text Actual behaviour: text decoration renders above the text Safari info: 14.1.1 (16611.2.7.1.4) Condensed demo: https://codepen.io/piccalilli/pen/bf9e2945fd33d6aaddd31336f9184e64 Possible issue: The paint order should be underline before text https://drafts.csswg.org/css-text-decor-4/#painting-order
<rdar://problem/80174107>
Created attachment 446953 [details] Patch
Created attachment 446954 [details] Patch
Created attachment 446955 [details] Patch
I think this is a dup of https://bugs.webkit.org/show_bug.cgi?id=196194. I guess I'll reverse-dup...
*** Bug 196194 has been marked as a duplicate of this bug. ***
bug 196841 reverted a previous fix here, due to perf regression
Comment on attachment 446955 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=446955&action=review > Source/WebCore/rendering/TextDecorationPainter.cpp:317 > +void TextDecorationPainter::strokeLineThrough(const Color& color, float thickness, const FloatPoint& localOrigin) This use of "stroke" here is easily confused with "text stroke". Just call it paintLineThrough() and limit use the term "stroke" in the code.
Created attachment 447018 [details] Patch
Committed r286955 (245180@main): <https://commits.webkit.org/245180@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 447018 [details].