Skip to content

Enable text-decoration-thickness; more text decoration properties for Blitz - #426

Merged
nicoburns merged 4 commits into
servo:mainfrom
nicoburns:more-text-decoration-props
Jul 23, 2026
Merged

Enable text-decoration-thickness; more text decoration properties for Blitz#426
nicoburns merged 4 commits into
servo:mainfrom
nicoburns:more-text-decoration-props

Conversation

@nicoburns

@nicoburns nicoburns commented Jul 13, 2026

Copy link
Copy Markdown
Collaborator

Enables text-decoration-thickness, text-decoration-inset, text-underline-offset, and text-underline-position for Servo builds of Stylo, behind the layout.unimplemented feature flag.

The shorthand text-decoration is updated to account for text-decoration-thickness being enabled (this aligns Servo's implementation with Gecko's for this property).

Servo PR:

Comment thread style/properties/shorthands.rs Outdated
@nicoburns
nicoburns force-pushed the more-text-decoration-props branch 2 times, most recently from 156bfd0 to 819882e Compare July 17, 2026 13:57
Comment thread style/properties/longhands.toml Outdated
@nicoburns
nicoburns force-pushed the more-text-decoration-props branch from 139ecb1 to df77127 Compare July 19, 2026 15:23
Comment thread style/properties/shorthands.rs Outdated
#[cfg(feature = "servo")]
#[inline(always)]
fn parse_thickness() -> bool {
static_prefs::pref!("layout.unimplemented")

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

At this point, I think you should add a specific pref for this. Gecko used to have layout.css.text-decoration-thickness.enabled. mozilla-firefox/firefox@f4ee21c#diff-fbb611c8fcb79e0ee8911d8e9ce8cbdc8894e04330d01b0f84500c5fcf55b831

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Loirooriol I've gone ahead and implemented text-decoration-thickness in Servo instead (so we can remove the pref here). All conditional "shorthand" code has been removed from this PR.

@nicoburns nicoburns changed the title Enable more text decoration properties for Blitz Enable text-decoration-thickness for Servo; more text decoration properties for Blitz Jul 22, 2026
@nicoburns nicoburns changed the title Enable text-decoration-thickness for Servo; more text decoration properties for Blitz Enable text-decoration-thickness; more text decoration properties for Blitz Jul 22, 2026

@Loirooriol Loirooriol left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good with nits

Comment thread style/properties/shorthands.rs Outdated
Comment thread style/properties/shorthands.rs Outdated
…n-inset, and text-decoration-thickness for Blitz

Signed-off-by: Nico Burns <nico@nicoburns.com>
Signed-off-by: Nico Burns <nico@nicoburns.com>
Signed-off-by: Nico Burns <nico@nicoburns.com>
Signed-off-by: Nico Burns <nico@nicoburns.com>
@nicoburns
nicoburns force-pushed the more-text-decoration-props branch from 1786329 to f4d0976 Compare July 23, 2026 16:59
@nicoburns
nicoburns added this pull request to the merge queue Jul 23, 2026
Merged via the queue into servo:main with commit 2d289c1 Jul 23, 2026
5 checks passed
@nicoburns
nicoburns deleted the more-text-decoration-props branch July 23, 2026 20:50
pull Bot pushed a commit to AKJUS/servo that referenced this pull request Jul 24, 2026
Implement text-decoration-thickness in Servo.
Upgrade Stylo to version that enables more text-decoration properties
(behind the `layout.unimplemented` flag):

- servo/stylo#426

Testing: WPT. There are some new test failures here, but they're all for
properties we don't implement yet.

---------

Signed-off-by: Nico Burns <nico@nicoburns.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants