juanca / react-aria-components

React ARIA-compliant Components
https://juanca.github.io/react-aria-components
MIT License
6 stars 3 forks source link

Grid: keyboard accessibility in interactive mode #20

Closed juanca closed 6 years ago

juanca commented 6 years ago

Follow up to keyboard accessibility in browse mode

P.S. The PR description started off the same but has been updated with new findings and better perspective.

Motivation

According to the accessibility standards, a composite widget needs to have keyboard navigation. This implies three things:

Due to high probability of keyboard shortcut conflict between the grid and its grid cells, the grid is in "browse" mode until a grid cell is activated. While the grid cell is inactive, it does not respond to any key presses.

The grid component should support both modes: browse and interactive (wording can be updated later). This PR will only focus on interactive mode.

Technical changes and implications

juanca commented 6 years ago

Two bugs:

Some interesting investigations to do (as follow ups):

juanca commented 6 years ago

It's a little bit of a shame that tabbing through fields won't work (correct me if I'm wrong there), since that's what power-users coming from Excel / spreadsheets will be used to.

Exactly. I am working with a designer to explore different user experiences for power users. For example:

I think this still follows the spirit of the w3 ARIA spec since a user can get out of "tab hell" by disabling interactive mode and then tabbing out of the grid.

More to come!