Skip to content

Grids: column headers accessibility issues #15962

@ddaribo

Description

@ddaribo

Description

Child of #15836.
Discussing the accessibility state of the grid headers, the following items were outlined:

  1. FIX aria-activedescendant on headers + TEST ❗(likely a regression)
  2. Add aria-sort on column headers + update SPEC
  3. Icons should be aria-hidden (i.e. not read by SR/UA)
  • igniteui-angular version: 20.0.x, 19.2.x
  • browser: any

Steps to reproduce

  1. Use a screen reader and go through the grid headers.

TL;DR: What the SR announces would depend on its mode.
NVDA has two modes - Browse (default) and Focus. Browse targets static content, while focus - interactive, such as forms and grids. The latter should be used when navigating the grid to leverage its own keyboard navigation. The browse mode behavior varies per SR. The equivalent in JAWS, I believe, would be whether the "Virtual PC cursor" is on (browse) or off (focus/interaction mode), and in Narrator - Scan on and off.
Additionally, the expectation would be that the SR automatically enters the target mode (focus in the case of the grid), when landing elements of ceratin roles (columnheader, gridcell, etc.). NVDA/Narrator currently don't do this, probably because of the messed activedescendant.

Result

Nothing is announced when traversing the headers.

Expected result

Announce the column title, its sorting state and other related features, such as selection, expansion state (if the header is a group parent), etc.

Attachments

Attach a sample if available, and screenshots, if applicable.

Metadata

Metadata

Assignees

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions