-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Bug: 🐛 introduit dans la version 7.2.0 avec l'ajout d'un focus sur collapse (DsfrAccordion) #999
Comments
Bonjour, merci, je vais le corriger bientôt. |
Alors, après des recherches, il se trouve que vous n’utilisez pas les accordéons comme recommandé par le DSFR :
Maintenant à votre place, je me poserais 2 questions :
D’autre part, le focus est important pour l’a11y, je ne vais donc pas l’enlever. |
Bonjour, Merci pour le retour ! En faite, les accordéons sont fermés en version mobile et sinon effectivement ouverts. Je vais voir quelle solution nous pouvons trouver avec notre designeuse |
Bonsoir, Je viens amener ma pierre à l'édifice. J'ai constaté également ce bug sur les Dans mon cas, j'ai du contenu type texte avant le premier lien, ce qui fait que le focus sur ce dernier fait ignorer au lecteur d'écran tout le texte qui le précède. Exemple : Ici le focus est représenté par l'outline orange. Pour ce qui est du composable // src/composables/useCollapsable.ts ligne 56
const onTransitionEnd = (expanded: boolean, focusFirstAnchor: boolean = true): void => {
collapsing.value = false
if (focusFirstAnchor) {
collapse.value?.querySelector('a')?.focus()
}
if (collapse.value && expanded === false) {
collapse.value.style.removeProperty('--collapse-max-height')
}
}
[...]
// src/components/DsfrAccordion/DsfrAccordion.vue ligne 79
@transitionend="onTransitionEnd(isActive, false)" Ce qui corrige le problème : |
Problème identique de notre coté mais pas en utilisant le DsfrAccordion directement, notre SideMenuList peut ouvrir et fermer des sections en fonction d'interaction utilisateur. Cela nous pose problème car ces ouvertures/fermetures sont asynchrones et peuvent survenir par exemple lorsqu'un utilisateur est en train de remplir un Input. Pour la Pr je suggérai que :
|
@ArnaudTA pour le Sidemenu, je suis pas sur que ça rentre dans le scope du composant d'avoir des champs texte quand tu regardes la doc. Et pour ton deuxième point ça implique d'ajouter la propagation de l'évènement Dans les deux cas c'est un peu hors scope de ma PR |
yep j'entends bien, de toutes façons on a patché la lib de notre coté en attendant cette PR ou une autre ça m'importe peu mais je te rejoint qu'il faut avoir plus de controle sur ce comportement |
Merci à tous pour vos commentaires et reproductions, animations et propositions ! Je ne suis pas l’auteur du composable @MaitreManuel j’espère que tu ne m’en voudras pas d’avoir pris le code de ta PR et de l’avoir utilisé dans la PR de @ArnaudTA... Pour une prochaine fois, veille bien à partir de la branche |
🎉 This issue has been resolved in version 8.1.0 🎉 The release is available on:
Your semantic-release bot 📦🚀 |
@yvalentin je veux bien votre retour sur cette correction :
Et mes excuses pour avoir jugé trop rapidement qu'il n'y avait rien à corriger. À bientôt |
@laruiss Je testerais la montée de version sur la 8.1.0 la semaine prochaine. Je ferai un retour à ce moment là. Merci |
@laruiss Pour nous, c'est tout bon. J'ai pu faire la monté de version en 8.1.1 Merci |
Bonjour,
Lors de la tentative de mise à jour de la lib sur la version 7.2.0, nous nous apercevons d'un dysfonctionnement avec le composant
dsfrAccordion
. Un focus automatique fait scroller la page jusqu'a un tag htmla
contenu dans l'accordion.Après recherche, nous détectons l'update de code suivant comme pouvant être en cause (j'ai testé avec la suppression du
focus()
et le comportement revient bien à la normal)Ceci a été introduit lors du commit suivant
2d7018f#diff-20e22350480b8eef0a8afed726c806a2650e2b5bcb4c99ecec84bbe884aecf44R60
Une demo du bug peut être vu ici:
https://tee-preprod-pr1481.osc-fr1.scalingo.io/aides-entreprise/act-pas-a-pas
The text was updated successfully, but these errors were encountered: