fix(web): bundel Roboto Mono voor consistente selectie-metrics in Bron-weergave (#1784) #1786
No reviewers
Labels
No labels
accepted
bug
declined
docs
duplicate
enhancement
good first issue
in-progress
needs-info
privacy
security
triage
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
LibreKAT/Ocideck!1786
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/web-monospace-font-1784"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Samenvatting
Op de webversie (CanvasKit) had geselecteerde tekst in de Bron-weergave een afwijkend fontgrootte en ijlte het selectieblok voor op de cursor. De oorzaak:
fontFamily: 'monospace'is een generieke CSS-familie waarvoor Flutter op web geen font-bestand heeft — het valt terug op een proportioneel default-font met andere metrics, waardoor tekst en selectierechthoek niet meer aligneren.De fix: bundel Roboto Mono (OFL-1.1, 184 KB) en registreer het in
pubspec.yamlonder zowel de naammonospacealsRoboto Mono. ElkefontFamily: 'monospace'-referentie in de codebase (38 plekken) resolvet nu naar dit gebundelde bestand. Nul codewijzigingen in de editors nodig — de fix is volledig inpubspec.yaml+ font-bestand.Dit aligneert met de bestaande aanpak: alle UI-fonts zijn al gebundled om de web-build self-contained te houden onder de strikte
connect-src 'self'CSP. Monospace was het enige gat.Oorsprong
Overgebracht vanuit GitHub-mirror issue #1 (gerapporteerd door @sikkepitje, 2026-08-16). Forgejo-issue: #1784.
Bewaker
De wijziging voegt een gebundelde afhankelijkheid toe (font-bestand), maar aligneert met alle kernwaarden:
.md-bestand verandert niet.Geen botsing. Deze stap is expliciet meegelopen omdat er een afhankelijkheid bijkomt.
Wijzigingen
assets/fonts/RobotoMono-Variable.ttf+RobotoMono-OFL.txt— gebundelde font + licentiepubspec.yaml—monospaceenRoboto Monofamilies geregistreerd, OFL-tekst als assetlib/services/bundled_licenses.dart— licentie-entry voor Roboto Mono + monospace-aliasTHIRD_PARTY_NOTICES.md— vermelding toegevoegdtool/sbom_build.dart— dedup font-assets bij alias-families (zelfde bestand = één component)sbom/— geregenereerd (7 font-componenten)lib/l10n/translations/*.dart(31 talen) — "vier" → "vijf" lettertypefamiliestest/bundled_licenses_test.dart— regressietest datmonospacegebundeld isTestplan
make checkgroen: 10570 tests, 87.1% coveragemake check-secretsschoon (gitleaks + trufflehog, 0 leaks)make sastschoon (semgrep, 0 findings)monospace font family is bundled (web selection metrics, #1784)Generated with Devin
monospacevoor consistente selectie-metrics 3a952ab223monospacegebundeld is (web selectie-metrics, #1784)<family> Project, niet bare<family>