[css-text-decor-4] Implement text-decoration-skip-ink
Categories
(Core :: Layout: Block and Inline, enhancement, P3)
Tracking
()
People
(Reporter: sebo, Assigned: cmarlow)
References
(Blocks 2 open bugs, )
Details
(5 keywords, Whiteboard: [DevRel:P1][layout:backlog:2019q3][wptsync upstream])
Attachments
(2 files)
Reporter | ||
Updated•7 years ago
|
Reporter | ||
Updated•7 years ago
|
Reporter | ||
Comment 1•7 years ago
|
||
Comment 4•7 years ago
|
||
Comment 5•7 years ago
|
||
Reporter | ||
Updated•7 years ago
|
Updated•6 years ago
|
As https://bugs.chromium.org/p/chromium/issues/detail?id=581456 it is implemented and made default later so now Chrome (Opera/Edge) and Safari supports it but Firefox don't.
Updated•6 years ago
|
Comment 9•6 years ago
|
||
A couple notes that may be helpful as a starting point:
See https://bugs.chromium.org/p/chromium/issues/detail?id=581456#c24 for
the heart of Blink's implementation. In brief, if skip-ink is in effect,
the InlineTextBoxPainter::paintDecorations method calls
TextPainter::clipDecorationsStripe each time it's going to paint a
decoration line. This is responsible for getting the "intercepts"
(coordinates where the glyph outlines in the text run intersect with the
intended decoration line) and clipping out those areas.
For where the ability to get intercepts (based on Skia APIs) was added
to Chromium's Font, see
https://bugs.chromium.org/p/chromium/issues/detail?id=655166.
See also https://bugs.chromium.org/p/chromium/issues/detail?id=581456#c8
for a link back to the underlying Skia facilities they're using.
Assignee | ||
Updated•6 years ago
|
Updated•6 years ago
|
Comment 10•6 years ago
|
||
I'll also note that the spec is not entirely up-to-date or worked out on this feature. :( Don't expect it to be a reliable reference.
Assignee | ||
Comment 11•5 years ago
|
||
Updated•5 years ago
|
Assignee | ||
Comment 12•5 years ago
|
||
Assignee | ||
Comment 13•5 years ago
|
||
Updated•5 years ago
|
Comment 14•5 years ago
|
||
Comment 17•5 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/61f08c7faaca
https://hg.mozilla.org/mozilla-central/rev/5a8a2d0bc859
Reporter | ||
Comment 19•5 years ago
|
||
I've tested the feature right now in the latest Nightly and at first sight it looks great! Thank you for implementing it!
I've also already created a PR for updating the browser compatibility info on MDN:
https://github.com/mdn/browser-compat-data/pull/4587
And I have updated https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Experimental_features#text-decoration-skip-ink accordingly.
Charlie, do you plan to ship this in 70 or are there any things this should wait for?
Sebastian
Assignee | ||
Comment 20•5 years ago
|
||
We are planning to wait to ship it in Firefox 71. Because it's on by default, we want to have a full cycle to monitor potential performance issues. Thanks for updating the MDN pages!
Comment 21•5 years ago
|
||
Maybe better enable that in Nightly since now, so that you have an even longer time to monitor issues.
Comment 22•5 years ago
|
||
(In reply to Xidorn Quan [:xidorn] UTC+10 from comment #21)
Maybe better enable that in Nightly since now, so that you have an even longer time to monitor issues.
Good idea. I filed bug 1572800 on doing this.
Comment 23•5 years ago
|
||
(In reply to Daniel Holbert [:dholbert] (mostly AFK Aug 8th-12th) from comment #22)
(In reply to Xidorn Quan [:xidorn] UTC+10 from comment #21)
Maybe better enable that in Nightly since now, so that you have an even longer time to monitor issues.
Good idea. I filed bug 1572800 on doing this.
Yes, let's please do this. We won't have much time in the Nightly cycle at this point since soft freeze is only a few weeks away, but better than nothing.
Updated•5 years ago
|
Comment 24•5 years ago
|
||
Documented; see https://bugzilla.mozilla.org/show_bug.cgi?id=1573631#c14
Description
•