components icon indicating copy to clipboard operation
components copied to clipboard

bug(menu)[matMenuTriggerFor]: Trigger does not update ARIA values correctly in OnPush components (Accessibility)

Open kryoussef opened this issue 1 year ago • 5 comments
trafficstars

Is this a regression?

  • [x] Yes, this behavior used to work in the previous version

The previous version in which this bug was not present was

No response

Description

It seems like the issue : 26262 has not been resolved, The Trigger does not update aria values and misbehaves in OnPush components.

Reproduction

StackBlitz link: https://stackblitz.com/edit/angular-bqrgp1-p8dplp?file=src%2Fapp%2Fmenu-overview-example.ts Steps to reproduce:

  1. use NVDA Speech viewer
  2. open the menu and select items (multiple times) screen reader

Expected Behavior

When selecting an item menu-item from the menu, the aria-label and aria-expanded should be updated correctly, From the example above, NVDA should read item2 with menu being collapsed

Actual Behavior

As shown in the screenshot, when we click on the item2, NVDA is reading item1 with the menu being expanded

Environment

  • Angular: 17.3.7
  • CDK/Material: 17.3.7
  • Browser(s): Chrome
  • Operating System (e.g. Windows, macOS, Ubuntu): Windows

kryoussef avatar May 13 '24 14:05 kryoussef

I'm a bit confused about the setup here. It's using MatMenu even though the issue is talking about the CDK menu. Also the bindings you're mentioning are set up by your own component, not to Material/CDK ones so you'll have to call markForCheck there yourself.

crisbeto avatar May 14 '24 07:05 crisbeto

HEllo @crisbeto , The issue is : 26262 and the fixe is 26279 I will have to update the issue description

kryoussef avatar May 14 '24 08:05 kryoussef

I spent some time trying to reproduce it, but the aria-expanded was being updated as expected in the Stackblitz. Could there be something in your app that's interfering with it?

crisbeto avatar May 18 '24 08:05 crisbeto

Hello, as shown in this video, the aria-label is not updated and for accessibility, it is a problem, here is what NVDA reads while clocking or pressing enter on the menu trigger. https://github.com/angular/components/assets/168361048/cef03f46-a65f-4804-baa1-3d222bd88a26

kryoussef avatar Jun 27 '24 13:06 kryoussef

Hello @crisbeto , any update on this issue ?

kryoussef avatar Aug 23 '24 09:08 kryoussef