feat(keuzemenu): drie indelingen, categorieen en een uitleg per blok (#1162) #1549
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!1549
Loading…
Reference in a new issue
No description provided.
Delete branch "menu-indelingen-en-categorieen"
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?
Wat dit toevoegt
Het keuzemenu-diatype (#1162) kon één ding: een raster van blokken met een label. Deze tak maakt er een echt menu van.
Het bestandsformaat
Alles rijdt mee op wat er al was; een bestaand menu verandert geen byte.
De indeling is een extra
_class-token (menu-list/menu-circle; het raster schrijft er géén, dus oude bestanden blijven identiek). De uitleg staat achter een gedachtestreepje in dezelfde link-opsomming. Categorieën zijn de bestaande tussenkop-bullet (␀=U+E010).Afweging (bewaker)
De bewaker keurde de vier formaatkeuzes goed, met twee kanttekeningen die in de tekst staan en één die hier hoort:
##was geen optie, want dat is de ondertitel. Voorwaarde om terug te komen op dat oordeel: zodra een vierde mechanisme aan dat teken gaat hangen, of zodra het in een export of een schermlezerlabel terechtkomt. Dan is het geen bullet-conventie meer maar een privéformaat.#prijzenis hetocideck_slide_anchor, en geen andere Marp-implementatie zet daar eenidop. Dat is inherent; het staat nu in de USER_GUIDE zodat de lezer het niet zelf hoeft te ontdekken.Onderweg gevonden en meegenomen
Een tabeldia verloor zijn typetoken bij het opslaan.
table-overdueontbrak in de woordenlijst van de structuurcontrole, dus waarschuwde OciDeck over een dia die het zelf had geschreven. Dat token toevoegen dempte de waarschuwing — en de bewaker wees erop dat er iets ergers achter zat: de lézer filterde het ook niet weg, dus belandde het in de vrije klasse van de dia, en die vervángt het typetoken bij het schrijven. Gemeten over drie generaties:table table-overdue→table-overdue table-overdue→ drie tokens, entablewas weg; de dia las niet meer terug als tabel. Lezer en schrijver delen nu één lijst, en een proef slaat drie keer achter elkaar op en eist dat elke_class-regel identiek terugkomt.image-title-aboveontbrak op dezelfde manier.De plaatshouder voor een ontbrekende afbeelding volgt het thema. Alle drie de plaatshouders stonden op vaste lichtgrijze kleuren — gewogen tegen een witte dia, maar op een donker thema een fel blok midden in beeld. Raakt elk diatype met een afbeelding.
Een sprong die nergens uitkomt wordt gemeld. Wijst een menublok of een sprong-uit naar een verwijderde dia, dan viel de presentator stil terug op de gewone volgorde: een knop die niets doet, pas merkbaar op het podium.
Verder: de gedeelde afbeeldingsplaatshouder liep over in een vak van 48–60 px, en
markdown_service_parse.dartis gesplitst omdat het tegen het harde plafond van 1000 regels liep.Hoe het is getoetst
Drie beeldkeuringen op de draaiende renderer (alle vier de oppervlakken, beide thema's, de HTML-export). Die vonden wat groene tests niet zien, want het waren geen overlopen:
FittedBoxtot 27% van de breedte kromp;Daar zijn proeven bij gekomen die precies dát meten: de titel van dezelfde dia met 16 blokken tegen die met 3 (vangt het krimpen), rechthoeken van label en uitleg die elkaar niet mogen overlappen (vangt het botsen), en een leesbaarheidsvloer op de werkelijk getekende lettergrootte (vangt het onleesbare). Elke reparatie is één keer rood gezien tegen de ongerepareerde code.
make checkgroen (9700+ tests, dekkingsvloer en per-bestandsvloer),make check-secretsgroen,make sastgroen (0 findings). DAST niet gedraaid — deze wijziging raakt geen geserveerd oppervlak.Wat hier bewust niet in zit
De menublokken zijn niet met het toetsenbord bedienbaar (
GestureDetectorzonder focus of knoprol). Dat is een ontwerpvraag op zichzelf — de presentator vangt cijfers al af voor dianummers en pijltjes voor de volgorde, en een focusring moet van veraf zichtbaar zijn zonder de dia te ontsieren. Het staat als bekend gat indocs/ACCESSIBILITY.md.