Toegankelijkheid: tab-label en resterende meldingen hardcoded Nederlands in elke interfacetaal (WCAG 3.1.2, voortborduurt op #576) #1251

Closed
opened 2026-08-04 23:09:26 +00:00 by brenno · 0 comments
Owner

Toegankelijkheid — sommige meldingen staan nog in het Nederlands, in elke interfacetaal

docs/ACCESSIBILITY.md (laatst herzien 2026-07-22) noemt dit als een overblijvende beperking en verwijst naar #576. #576 is gesloten, maar een deel van het probleem staat nog in de code — en voor iemand die de app niet in het Nederlands gebruikt is dit een toegankelijkheidsprobleem, geen cosmetiek.

Actuele stand (geverifieerd)

  • De classificatie-weigeringsteksten uit #576 zijn verholpen — lib/services/classification_enforcement_policy.dart bevat geen hardcoded Nederlandse weigeringsteksten meer.
  • Het tabblad-label staat nog hardcoded in het Nederlands: lib/state/tabs_provider_tab_info.dart:136String get _newTabLabel => const AppLocalizations(Locale('nl')).d('Nieuw');. Het eerste woord linksboven in het venster is "Nieuw" in elk van de 32 talen.

Waarom dit een toegankelijkheidsprobleem is

Een schermlezer kondigt het tabblad aan met "Nieuw" — in het Nederlands, ongeacht de interfacetaal. Voor een blinde gebruiker die de app in, zeg, het Engels bedient, is dat een onverwacht taal-wissel in de aankondiging: de stem schakelt over of spreekt een woord dat niet in de gekozen taal thuishoort. Dat breekt WCAG 3.1.2 (Taal van onderdelen) — een deel van de interface staat in een andere taal dan de rest, zonder dat de ondersteunende technologie dat weet.

Dit is bovendien de plek die #576 zelf noemde als "trivially screenshotted next to the 32-language claim" — een publieke belofte die de code niet waarmaakt.

Voorstel

Route het tab-label door de actieve l10n-context in plaats van een hardcoded Locale('nl'). Eén regel. De vertaalsleutel "Nieuw" bestaat al in alle 32 talen.

Scope

Raakt een publieke belogte (de 32-talen-belofte) — bewaker-blik gewenst, al is de richting duidelijk (de belofte waarmaken, niet bijstellen).

Relatie

Voortborduurt op #576 (gesloten). Het classificatie-gedeelte daaruit is opgelost; dit issue gaat alleen over wat er nog staat.

## Toegankelijkheid — sommige meldingen staan nog in het Nederlands, in elke interfacetaal `docs/ACCESSIBILITY.md` (laatst herzien 2026-07-22) noemt dit als een overblijvende beperking en verwijst naar #576. #576 is gesloten, maar een deel van het probleem staat nog in de code — en voor iemand die de app niet in het Nederlands gebruikt is dit een toegankelijkheidsprobleem, geen cosmetiek. ### Actuele stand (geverifieerd) - ✅ De classificatie-weigeringsteksten uit #576 zijn verholpen — `lib/services/classification_enforcement_policy.dart` bevat geen hardcoded Nederlandse weigeringsteksten meer. - ❌ Het tabblad-label staat nog hardcoded in het Nederlands: `lib/state/tabs_provider_tab_info.dart:136` — `String get _newTabLabel => const AppLocalizations(Locale('nl')).d('Nieuw');`. Het eerste woord linksboven in het venster is "Nieuw" in elk van de 32 talen. ### Waarom dit een toegankelijkheidsprobleem is Een schermlezer kondigt het tabblad aan met "Nieuw" — in het Nederlands, ongeacht de interfacetaal. Voor een blinde gebruiker die de app in, zeg, het Engels bedient, is dat een onverwacht taal-wissel in de aankondiging: de stem schakelt over of spreekt een woord dat niet in de gekozen taal thuishoort. Dat breekt WCAG 3.1.2 (Taal van onderdelen) — een deel van de interface staat in een andere taal dan de rest, zonder dat de ondersteunende technologie dat weet. Dit is bovendien de plek die #576 zelf noemde als *"trivially screenshotted next to the 32-language claim"* — een publieke belofte die de code niet waarmaakt. ### Voorstel Route het tab-label door de actieve `l10n`-context in plaats van een hardcoded `Locale('nl')`. Eén regel. De vertaalsleutel "Nieuw" bestaat al in alle 32 talen. ### Scope Raakt een publieke belogte (de 32-talen-belofte) — `bewaker`-blik gewenst, al is de richting duidelijk (de belofte waarmaken, niet bijstellen). ### Relatie Voortborduurt op #576 (gesloten). Het classificatie-gedeelte daaruit is opgelost; dit issue gaat alleen over wat er nog staat.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
LibreKAT/Ocideck#1251
No description provided.