[Bug] The Settings sidebar truncates at the 200% text scale the app itself offers #646
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#646
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
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?
Found in the pre-publication first-run review, alongside several smaller interface observations gathered here so none is lost.
Main item — reproduce: Settings → Display → set interface text scaling to 200% (offered explicitly as a WCAG 1.4.4 accessibility setting), then reopen Settings.
What you see: the sidebar labels truncate to "Einste…", "App-De…", "Präsent…", "Lizenz u…", "KI-Unter…" — unusable for navigation. The main editor holds up remarkably well at 200%; only the status bar runs into the window edge. So the setting works where it is hardest and fails where it is easiest.
Smaller observations from the same session, each cheap and none worth its own issue:
.mdis refused cleanly, with no crash and no data loss — but the message is only "This file could not be opened", with no reason, no line number and no suggestion. Thin for a Markdown-first product.20260722160129 Release_Notes_Demo.pdf) and the success dialog shows a path that cannot be clicked or copied.Proposal: fix the sidebar truncation (wrap or ellipsis with a tooltip, or a narrower fixed label column). Take the rest as a single polish pass; the malformed-file message and the Cockpit-in-default-list item are the two with real user impact.
Het hoofditem staat op main:
b5e4b0b(PR #688). Het issue blijft open voor de zes kleinere observaties.De zijbalk. Vaste breedte van 234 px plus één regel per label was de oorzaak. De zijbalk groeit nu mee tot anderhalf keer (één-op-één zou 468 px zijn en het venster opeten), labels mogen twee regels, en elk item draagt een tooltip met de volle naam als vangnet. Op 100% verandert er niets.
Drie fouten die er niet in stonden, alle drie dezelfde klasse — een rij met tekst zonder ruimte om te wijken:
Die vielen niet op bij het handmatig kijken omdat ze pas ontstaan bij 200% en de overloopstrepen in een dialoog achter de rand vallen. De test ving ze meteen.
Eén ding over die test dat ik erin heb opgeschreven. Onder
flutter testis elk teken even breed als hoog. "Er kapt niets af" is daar niet te meten: die toets zou rood staan op een interface die in het echt prima leest, en groen te maken zijn door de kolom absurd breed te maken. De test meet daarom wat het testfont overleeft, plus de eigenschap waar het om gaat — grotere tekst mag niet méér informatie kosten dan kleine tekst. Met een echt lettertype heb ik niet gekeken; dat is beeldkeuring en vraagt de app draaiend.Wat openblijft, jouw eigen lijst: de consentmuur, de dubbele opslagdialoog, de half-Engelse macOS-menubalk, de foutmelding bij een kapotte
.md, de tijdstempel in de exportnaam, en het Cockpit-diatype in de standaardlijst.Die laatste is wat mij betreft geen polijstwerk maar een gebroken belofte: de informatieveiligheidsmodule staat uit en zegt verborgen te blijven, en toch staan er pentest-metrieken in de standaardlijst. Dat is een andere soort fout dan een afgekapt label, en ik zou hem los willen oppakken.
Tweede item op main:
43bfe4ea(PR #689) — het Cockpit-diatype dat pentestmetrieken toonde met de module uit.De diagnose was niet "verberg de cockpit": dat type is een algemeen dashboard en hoort er te zijn. Het zat in de voorbeelddata, die
pentestPresetheette en dat ook was.Die preset was de terugval op vijf plekken — een nieuwe dia, een lege spec, een onleesbare spec, de editor en de preview. En op een zesde die niet in je melding stond: de HTML-export. Daar bleef het niet in een venster maar belandde het in een rapport dat de deur uitging, bij iemand die de module nooit had aangezet. Het geval van de onleesbare spec is de stilste: juist bij een fóút kwam die data tevoorschijn.
Nu domeinneutraal ("Capacity used", "Load", "Signal quality", "Trend"), met dezelfde vier metertypes, dus er gaat niets verloren aan wat het demonstreert. Een test bewaakt woordelijk dat er geen pentestbegrip meer opduikt, langs alle drie de ingangen.
Van je lijst blijft over: de consentmuur, de dubbele opslagdialoog, de half-Engelse macOS-menubalk, de foutmelding bij een kapotte
.md, en de tijdstempel in de exportnaam. Daarvan noem je de foutmelding zelf als de enige met echte gebruikersimpact — die zou ik als volgende doen. De rest is polijstwerk dat prima in één ronde kan.Derde item op main:
9fb53cda(PR #694) — de foutmelding bij een bestand dat niet opengaat.Het zat niet in de melding maar tussen de lagen:
FileService.openDeckDetailedgaf de reden allang terug (zes onderscheiden gevallen), enopenFileByPathgooide alles behalve "geen presentatie" weg. Het antwoord lag twee lagen lager voor het oprapen. Dat corrigeert ook mijn eigen inschatting van vanochtend, toen ik dit als een refactor over 26 plekken inschatte.Je ziet nu wat er is: bestaat niet meer / te groot / geen leesbare tekst (mét de zin dat OciDeck Markdown opent) / beschadigd of half opgeslagen. Waar de oorzaak écht onbekend is blijft de algemene zin staan — een reden verzinnen bij een onbekende oorzaak wijst de gebruiker de verkeerde kant op, en dat kost meer tijd dan vaag zijn.
Het regelnummer dat je vroeg zit er niet in. De parser draagt geen positie mee, dus "beschadigd of half opgeslagen" is zo precies als het nu kan. Dat staat als openstaand in de CHANGELOG en de probleemoplossingsgids in plaats van weggelaten.
Daarmee zijn alle drie de items die je als "echte gebruikersimpact" aanmerkte weg. Wat overblijft is polijstwerk, en dat pak ik nu in één ronde: de consentmuur die "Akkoord" grijs laat zonder te zeggen waarom, de dubbele opslagdialoog, de half-Engelse macOS-menubalk, en de tijdstempel in de exportnaam.
Polijstronde op main:
ee63f7a7(PR #700).ensureVisible(find.byType(Checkbox))— precies de handeling die de gebruiker ook moest doen, en dus de reden dat de suite dit gebrek niet liet zien.com.dewinterin de bestandseigenschappen. Alle drie recht.Drie dingen bewust laten staan, met reden:
Wat er nu nog in dit issue zit: "Hide Others" en "Services" in het macOS-menu. Die komen uit
MainMenu.xibmet alleen een Base-lokalisatie; vertalen vraagt 32.strings-bestanden buiten het Dart-l10n-systeem om. Plus de twee besluiten hierboven die van jou zijn.Ik laat het issue open staan voor die drie.
De laatste drie punten van je lijst staan op main. Daarmee is dit issue rond.
De dubbele opslagdialoog —
0ec2a196(PR #726). Je klacht klopte op precies één pad, en dat is het pad waar iedereen begint: het bestemmingsvenster laat je een bibliotheek kiezen, en bij een eerste start ís er geen bibliotheek. Je zag dus een lege lijst met twee knoppen die allebei naar hetzelfde systeemvenster leidden. Het venster blijft — mét bibliotheken kies je er een en zie je vooraf waar presentatie, afbeeldingen en media landen — maar het wordt overgeslagen waar het niets te bieden heeft. Het beslismoment staat nu als pure functie los van de schil, want die ingang had geen enkele test."Quote" bleef onvertaald —
e2df7b1a(PR #727). Eén van de vierentwintig diatype-labels droeg een Engelse bronsleutel. Vijfentwintig talen hadden daar toevallig een vertaling voor, het Duits niet, en dan valt de tekst terug op de bron. De sleutel is nu het Nederlandse "Citaat", dat zijn 31 vertalingen al droeg. Er staat nu een poort op de klasse: elk diatype-label moet in elke taal een eigen vertaling hebben. Dat gat bestond omdat de vertaaldekking per sleutel bewaakt en niet per gebruik — een Engelse bronstring ziet er voor die controle uit als een geldige bron.De woordafbreking in het Duits —
1f2e4e68(PR #729), en hier is de uitkomst anders dan verwacht. "Abschnittsüberschri / ft" was al gerepareerd op 20-07 (4e5fd096), ná je review maar vóór je dit issue schreef; het label past op 8,5pt.Maar de toets die dat bewaakte bewees niets. Hij eiste dat de berekende lettergrootte niet onder de ondergrens zakte, terwijl die berekening zélf bij die grens stopt — altijd waar. En een widgettest tekent in Ahem, waar elk teken een vierkant em is; daar zit de helft van de labels al op die ondergrens, dus ook een scherpere eis had niets kunnen onderscheiden. Hij keek bovendien alleen naar de Nederlandse bronlabels, terwijl jouw melding juist over een vertaling ging.
De toets laadt nu het gebundelde interfacefont en meet daarin, over alle 24 diatypen × 31 talen. Geen enkel label breekt midden in een woord.
Daarbij kwam één ding boven dat niemand had gezien: het Zweedse "Cockpit-instrumentpanel" telde als één onbreekbaar woord en duwde de kaart naar de kleinste maat. Flutter breekt echter op een koppelteken — nagemeten, niet aangenomen — dus dat label rendert weer op de volle grootte.
Wat er niet in zit: het regelnummer bij een kapotte
.md, want de parser draagt geen positie mee. Dat stond al als openstaand in de CHANGELOG en de probleemoplossingsgids.Sluiten.