fix(a11y): het zwevende veldlabel liep door een kleurovergang — en de rand kon het veld niet alleen dragen #820
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!820
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/veldlabel-rand-811"
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?
Closes #811.
Een zwevend label staat half boven de bovenrand van het veld en half erin, en de gap van een
OutlineInputBorderonderbreekt alleen de lijn — niet het vlak. Metfilled: trueliep er dus altijd een kleurovergang dwars door de letters. In het lichte profiel viel dat niet op (#F4F7FC tegen #FFFFFF), in het donkere las het als een afgesneden onderste letterhelft (#0F172A tegen #1E293B).Optie 1 uit het issue, en om de reden die daar staat: het is de enige die de oorzaak wegneemt in plaats van de zichtbaarheid ervan. Zonder vulling neemt het veld over waar het op staat, en dan is er niets om doorheen te lopen. Dat is ook precies wat Material 3 met een outlined tekstveld bedoelt — de combinatie vulling + omranding was de afwijking, niet de norm.
Wat het issue niet voorzag
Het issue schreef "de velden verliezen hun vlak" als de prijs. Dat klopt, maar het is niet de hele rekening: zonder vulling is de rand het enige dat het veld nog markeert, en gemeten kon
outlineVariantdat niet dragen.outlineVariant(was)outline(nu)WCAG 1.4.11 vraagt 3:1 voor de grens van een bedieningselement. Het veld is dus beter vindbaar dan vóór de reparatie, niet slechter — en
outlineis ook de rol die Material 3 hier zelf voorschrijft.Wat er níet in zit
De dertien plekken die zélf
filled: truemet een eigen kleur zetten (de notitiebalk, de zoekbalk, de tabelkoppen). Die kiezen bewust een vlak, en geen van alle heeft een zwevend label — nagekeken, niet aangenomen.Goldens verschuiven niet: de goldens dekken
SlidePreviewWidget, en een dia gebruikt geenInputDecoration. Het issue vermoedde van wel.Poort
make checkgroen in een verse worktree: 6.561 tests, dekking 86,5%, per-bestandsvloer 0.De regressietest meet de oorzaak op pixels en niet op een themavlag — wat de gebruiker ziet is het vlak, niet het veld dat het zette. Tegen de oude code droeg 91,7% van het veldoppervlak een eigen vulling (12.573 van 13.708 pixels); nu 0%. De randmeting loopt over alle drie de ingebouwde profielen. Alle vier de toetsen zijn één keer rood gezien tegen de oude waarden, met de gemeten verhouding in de foutmelding.
fromProfilekwam door dit blok over de 150 regels vancheck_method_length; het is een top-level helper geworden in dezelfde library, niet een verhoogde basislijn.79bfc42b026982d71bdf