FreedomScientific / standards-support

Contains documentation for Vispero software support of Web standards
https://freedomscientific.github.io/standards-support/
GNU General Public License v3.0
105 stars 11 forks source link

JAWS ignores the Accessible Name of headings #777

Open LaurenceRLewis opened 8 months ago

LaurenceRLewis commented 8 months ago

Summary

HTML heading has aria-labelledby and id. SVG has aria-label and aria-hidden set to true and ID. Aria-labelledby on the heading is pointing to the ID of the SVG and the ID of the heading.

Expected result

JAWS announces: [Heading Level] (SVG name) (Heading name).

Actual result

JAWS announces: [Heading Level] (Heading name)

Example

A test case that demonstrates the issue

  1. Run JAWS
  2. Navigate to the heading

Additional Information

Works as expected running NVDA, VoiceOver and TalkBack. Full name is exposed in the Accessibility Tree

JAWS version and build number

Operating System and version

Browser and version:

JAWS-test commented 8 months ago

The problem has nothing to do with SVG and aria-hidden and not even with aria-labelledby. It is just a general problem: JAWS always ignores the Accessible Name of a heading and uses only the text content. This can be easily checked by using an aria-label on a heading. I suggest that you (@LaurenceRLewis) adjust the title of this issue to make it clear that this is a general problem and not a specific one

LaurenceRLewis commented 8 months ago

@JAWS-test Title updated.

General problem or not JAWS is still not speaking the information available in the accessibility tree of the browsers. 😊

JAWS-test commented 8 months ago

JAWS is still not speaking the information available in the accessibility tree of the browsers

Yes, that is exactly the problem. But your title suggests that the problem only occurs with SVG with aria-hidden. This makes the problem smaller and more specific than it is. The problem always occurs, i.e. JAWS always ignores the Accessible Name of a heading. This is a very serious and general problem of JAWS. The title should be "JAWS ignores the Accessible Name of headings".

stevefaulkner commented 8 months ago

@BrettLewisVispero I can reproduce this in JAWS 2024. test case: https://cdpn.io/pen/debug/PoVbXLd

  1. heading with aria-labelledby
  2. heading with aria-label

In both cases JAWS ignores the accessible name provided via ARIA and reads only the on screen text.

BrettLewisVispero commented 8 months ago

Imported into ADO as bug 49061

stevefaulkner commented 8 months ago

@LaurenceRLewis can you provide any examples of this pattern in the wild?

LaurenceRLewis commented 7 months ago

@stevefaulkner I discovered the bug when testing a pattern in our design system. I have not looked for, or seen it in the wild.