Skip to content

fix: self-host Inter font, document unfixed WebKitGTK bold-text bug - #30

Merged
lstebner merged 1 commit into
mainfrom
fix/track-row-bold-text-composited-scroll
Jul 10, 2026
Merged

fix: self-host Inter font, document unfixed WebKitGTK bold-text bug#30
lstebner merged 1 commit into
mainfrom
fix/track-row-bold-text-composited-scroll

Conversation

@lstebner

Copy link
Copy Markdown
Owner

Summary

  • Self-hosts Inter (weights 300/400/500/600/700) via @fontsource/inter so typography renders as originally intended on any Linux install, instead of silently falling back to whatever generic sans-serif fontconfig resolves (this machine has neither Inter nor Roboto installed, so it was falling back to Noto Sans).
  • Documents a known, unfixed WebKitGTK rendering bug in CLAUDE.md: once a virtualized list's scroll container (track list, album grid) actually overflows and becomes scrollable, WebKit promotes it to a GPU-composited layer and text inside renders noticeably bolder than identical non-composited text. Several mitigations were investigated and ruled out (will-change layer promotion, transform-vs-top row positioning, compensating font-weight, full compositing disable) — written up so this isn't re-investigated from scratch later.

Test plan

  • npm run check passes
  • Manually verified in the running app that Inter now loads and renders (confirmed by the reporter)
  • No functional/behavioral change beyond font rendering — nothing else to regression-test

🤖 Generated with Claude Code

Bundles Inter (300/400/500/600/700) via @fontsource/inter so typography
renders as intended on any Linux install instead of silently falling back
to whatever generic sans-serif fontconfig resolves (Noto Sans here, which
has no Light face and doesn't match the font stack's original intent).

Investigated as a fix for track-list/album-grid text rendering bold once
a virtualized list actually overflows and scrolls (a WebKitGTK
composited-scroll-layer text rendering bug), but font substitution alone
doesn't address the underlying compositing behavior. Several other
mitigations (will-change layer promotion, transform-vs-top row
positioning, compensating font-weight) were tried and ruled out — see the
new CLAUDE.md note under Frontend layout for what was tried and why, so
this isn't re-investigated from scratch later.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@lstebner
lstebner enabled auto-merge (squash) July 10, 2026 03:10
@lstebner
lstebner merged commit 54b24cf into main Jul 10, 2026
2 checks passed
@lstebner
lstebner deleted the fix/track-row-bold-text-composited-scroll branch July 10, 2026 03:13
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.

1 participant