angular / angular/components

bug(cdk/menu): menu is closed on mousedown event

Ouverte
#27,878 2 commentaires 2 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Accessibility area: cdk/menu P3
Langage dominant
TypeScript
Étoiles
25k
Forks
6.8k
Merge moyen
1 j 8 h
PR mergées (30 j)
91

Description

Is this a regression?
  • Yes, this behavior used to work in the previous version
The previous version in which this bug was not present was

14

Description

When menu is opened, using standalone trigger, it is closed by clicking outside the menu on mousedown event.

Reproduction
  1. Go to the CDK menu examples page: https://material.angular.io/cdk/menu/examples.
  2. Open the menu using "Click me!" button under "Menu with Standalone Trigger".
  3. Click outside the menu.
Expected Behavior

Menu should be closed using mouseup event to comply with WCAG Level A - 2.5.2 criterion (https://www.w3.org/TR/WCAG21/#pointer-cancellation)

Actual Behavior

Menu is closed with mousedown event.
The same bahavior appears in CDK v15 - https://v15.material.angular.io/cdk/menu/examples
But not in v14 - https://v14.material.angular.io/cdk/menu/examples

Also latest Material Menu component works as expected - https://material.angular.io/components/menu/examples

Environment
  • Angular: 15, 16
  • CDK/Material: 15, 16
  • Browser(s): latest Chrome, Firefox, Safari
  • Operating System (e.g. Windows, macOS, Ubuntu): macOS (14.0 and 13.6)

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

L’issue pointe vers la page d’exemples de menus de CDK et son exemple standalone-trigger. Reproduisez d’abord le comportement outside-click, puis suivez la gestion des événements du menu CDK ; le travail est terminé lorsque le menu se ferme sur mouseup plutôt que sur mousedown, conformément au comportement WCAG attendu de Pointer-Cancellation et aux exemples de menus v14 et Material fonctionnels.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
angular, typescript
Domaine
accessibility, frontend
Type d'issue
Bug
Difficulté
3/5
Temps estimé
1-2 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.