metalfrom.eu/apps/web/site
Nicolas FRYDER 1fd0c8933b fix(a11y): les modales du site public déclaraient aria-modal sans piéger le focus
Les deux modales (groupes sans coordonnées, mentions légales / FAQ) portent
role="dialog" et aria-modal="true" — ce qui affirme aux lecteurs d'écran que
tout le reste de la page est inerte. C'était faux : aucune gestion du focus.

Concrètement, à l'ouverture le focus restait derrière le voile, la tabulation
ressortait sur des commandes invisibles, et la fermeture ne rendait pas le
focus à son point de départ. Un utilisateur au clavier se retrouvait perdu
dans une page dont on venait de lui dire qu'elle était inaccessible.

Le dashboard admin faisait déjà tout cela correctement ; on porte le même
traitement, factorisé en openBackdrop / closeBackdrop puisque les modales du
site public sont des éléments statiques que l'on bascule, et non créés à la
volée comme côté admin.

Non couvert par un test : le site public n'a aucun harnais de bout en bout —
les 89 parcours Playwright ne visent que l'admin.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-22 13:57:58 +02:00
..
app.js fix(a11y): les modales du site public déclaraient aria-modal sans piéger le focus 2026-08-22 13:57:58 +02:00
apple-touch-icon.png chore: initial commit — snapshot VPS 2026-06-27 2026-06-27 08:53:39 +00:00
favicon-96x96.png chore: initial commit — snapshot VPS 2026-06-27 2026-06-27 08:53:39 +00:00
favicon.ico chore: initial commit — snapshot VPS 2026-06-27 2026-06-27 08:53:39 +00:00
favicon.svg chore: initial commit — snapshot VPS 2026-06-27 2026-06-27 08:53:39 +00:00
index.html fix(web): SRI sur les dépendances CDN et timeout des appels API 2026-08-20 16:44:26 +02:00
locales.js feat(i18n): +10 langues (hu, da, fi, sk, hr, sl, lt, lv, et, nb) 2026-07-02 19:47:36 +02:00
pure.js fix(web): la carte se vidait en silence dès qu'on dézoomait au niveau monde 2026-08-22 13:55:54 +02:00
site.webmanifest chore: initial commit — snapshot VPS 2026-06-27 2026-06-27 08:53:39 +00:00
styles.css fix(ui): topbar z-index 1002 pour que le dropdown langue passe au-dessus de la carte 2026-07-01 21:13:24 +02:00
web-app-manifest-192x192.png chore: initial commit — snapshot VPS 2026-06-27 2026-06-27 08:53:39 +00:00
web-app-manifest-512x512.png chore: initial commit — snapshot VPS 2026-06-27 2026-06-27 08:53:39 +00:00