Een link in de kop- of voetband van een document wordt op contrast getoetst #1620
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!1620
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/bandaccent-contrast"
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?
Het derde en laatste paar van het documentvlak, na
documentHeadingColorendocumentBandTextColoruit #1616. Daar stond het als openstaand punt in de PR-tekst; hier is het.Het paar
De kop- en voetband tekent een link in de kop- of voettekst met de accentkleur. Niet als versiering en niet op één plek: in de app via
linkColor: profile.accentColor(document_page_chrome.dart) en in de HTML-export via.document a{color:accentColor}— de band staat binnen.document, en_documentChromeMarkdownHtmlzet echte<a>-elementen neer. De accentkleur werd alleen tegen het papier gemeten.Een donkere huisstijlband met witte tekst erop is daarmee volgens élke poort in orde:
#003399op papier#FFFFFF#FFFFFFop band#14213D#003399op band#14213DBeide kleuren op zichzelf deugen; het paar niet. Dat is dezelfde vorm als de zevende route uit de memory
contrast-escape-routes(#1604, het codeblok-vlak onder gewone tekst): een kleur die klopt voor het blok waarvoor hij gemaakt is, gelegd onder iets anders.Twee keuzes
De melding landt op de bandachtergrond, niet op het accent. Anders dan de twee paren ernaast, en met opzet: het accent is een gedeelde kleur die overal elders wél deugt, dus wat aan dít paar te herstellen valt is de band eronder.
documentBandBackgroundColorkrijgt daarom het anker, de inline waarschuwing en een plek in_documentOnlyThemeFields.Alleen wanneer de auteur die bandachtergrond zélf zet. Laat hij hem leeg, dan ís de band het papier — en dan is dit letterlijk het paar dat 'Thema accent' al meet, op dezelfde drempel. Dezelfde regel als bij de andere twee.
De drempel is die voor gewone tekst: een link in de band is bandtekst, dezelfde twaalf beeldpunten.
Toetsen
Drie nieuwe, alle drie rood geproefd met de toets in plaats uitgeschakeld (geen
git checkoutover ongecommit werk): de analyzer-toets, de dialoogwaarschuwing en de sprong naar het juiste vlak.De analyzer-toets isoleert het paar aantoonbaar: een aparte
de opzet klopt-toets pint vast dat de andere twee paren hun drempel hálen, dus de melding die verschijnt kan maar van één kant komen.Eén bestaande toets moest mee.
een onleesbare kop-/voetband waarschuwtgebruikte een donkere band, en daar valt het accent nu óók op weg — twee waarschuwingen waar de toets er één telt. Hij staat nu op een lichte band (#999999op#F0F0F0, 2,5:1) met het accent op 9,5:1. Dat is precies wat je van zo'n toets wilt: hij viel om omdat het gedrag veranderde, niet omdat hij bros was.Meegeleverd, en waarom het erin zit
Een volgorde-afhankelijke toets buiten deze wijziging. De poort stond rood op
mermaid_render_service_coverage_test.dart. Niet door deze PR: het bestand is byte-identiek aan main.MermaidRenderServiceis een singleton enhostNeededoverleeft de toets die hem zet; de suite draait met--test-randomize-ordering-seed random, dus lieprequestHosteerst, dan vielzonder WebView-platform levert een render meteen niets opom. Reproduceerbaar met seed 7 en 42, groen met 1, 3 en 11 — dus eerst het mechanisme aangetoond, daarna pas gerepareerd. EénsetUpzet de vlag terug. Het zat er latent op main en had willekeurig iemands PR geraakt.Een klasseplafond. De nieuwe wikkel duwde
_DocumentStyleBuilderop 1005 regels (max 1000). Geen nieuwe regel inclassSizeBaseline, maar_surfaceSectionsen de twee veldlijsten naar top-level: het zijn afleidingen uit de taal en uit vaste veldnamen, niet uit de staat van het dialoog.Drie alinea's uit de gebruikershandleiding die #1605 had teruggedraaid — de contrastrij in de tabel en twee alinea's over de stijlprofielen, alle drie uit #1616. Die tak stond op een oudere gids en nam bij het samenvoegen haar eigen kant, terwijl ze over iets anders ging (afbeeldingen in een document). Ze staan er weer, meteen in drie-paren-vorm.
Wat ik bewust heb laten liggen
Diezelfde tak liet nog twee alinea's vallen: dat een document in de browserversie niet te exporteren is (in geen van de vier formaten), en de correctienoot over waar mermaid en formules terugvallen. Ik heb ze niet teruggezet. Het zijn beweringen over webgedrag die onder
flutter testniet te toetsen zijn (kIsWebis daar altijdfalse), enFilePicker.saveFilesuggereert dat de grens nog geldt maar bewijst het niet. Een belofte in de gids terugzetten die je niet hebt nagekeken is precies de fout diedocs-claims-verify-against-codebeschrijft. Ze horen in een eigen wijziging, na een echte webbuild.Poorten
make checkgroen op de huidige main (drie keer gerebased onderweg, de laatste keer opa732d4d2): 10.263 tests, dekking 87,2%, per-bestand-vloer 0.make check-secrets: geen bevindingen.make sast: 0 findings.make l10n-checkgroen — één nieuw label in 31 talen. DAST (ZAP) niet gedraaid: deze wijziging raakt het geserveerde weboppervlak niet.Bewaker: overgeslagen, met reden. Geen bestandsformaat, geen opslag, geen afhankelijkheid, geen uitgaand verkeer. De gids-wijziging maakt een bestaande WCAG-AA-claim waar op een vlak waar hij stil niet gold; dat verbreedt een toegankelijkheidsgarantie in plaats van een nieuwe belofte toe te voegen.
Niet met eigen ogen nagekeken. Geen visuele ronde: de melding hangt aan bedrading die al beproefd is en er verandert niets aan hoe een document rendert. De widgettoetsen openen het echte dialoogvenster op het documentvlak en lezen de waarschuwingstekst én de verhouding (1.5:1) terug.