You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Refining and improving the "Add Tags" widget from #188 :
"As a keyboard-only user or screen reader user, I want to be able to comfortably and efficiently use the tag drawer to tag content."
Acceptance Criteria:
Everything in the "Add Tags" widget can be done comfortably with a keyboard.
Moving the cursor around with the arrow keys will select/focus on different chips. Specifically, the X receives the focus.
Each chip's X should have an aria-label that says e.g. "Course evaluations, click to remove"
Pressing BACKSPACE in the "Add Tags" text field once will focus on the chip before the cursor. Pressing it a second time will delete that chip. Pressing DELETE will also delete any focused/selected chip.
See video below for an example from Jira.
If the user types anything (e.g. types a letter), the focus always jumps to the end (after all the chips). Search keywords cannot be typed before/between the chips.
Moving around the tag tree is done using arrow keys:
up/down - go up or down.
Left - if leaf or already collapsed: jump to parent tag. Otherwise: collapse the current level.
Right - expand the current tag if possible.
Enter - if current tag has children: expand/collapse. If leaf: add tag.
Space - add tag (or undo adding if it's already added). Same as clicking the checkbox.
With the keyboard, each tag should be focused as a single widget (the checkbox, the label, and the expand arrow).
The Load More / Cancel / Add Tags actions must all be usable via keyboard.
When a tag anywhere in the tree is focused, pressing TAB should move the focus to the "Load More" link at the bottom, then to "Cancel" then to "Add Tags". The only way to move among rows/tags in the tag tree area is using the arrow keys.
Whenever the user first tabs into the tag tree dropdown the screen reader should say aloud: "[Unchecked/implicit/checked] Tag: [Name of the tag]. Use the arrow keys to move among the tags in this taxonomy. Press space to select a tag."
Note: Much of this functionality already exists in React Select.
Screen.Recording.2024-01-25.at.12.48.43.PM.mov
The text was updated successfully, but these errors were encountered:
@bradenmacdonald What automated tests should this task add? Specifically, do we need tests that navigate using the keyboard as described in the ACs? Or is it enough to rely on React Select's a11y and just use "click" in the tests?
@pomegranited Great question. It depends how much of this we have to implement ourselves. If we're largely using React-Select's functionality, we don't have to duplicate its own a11y tests. But anything we implement ourselves, we should have at least happy path tests that explicitly use keyboard commands like this example. i.e. that move around with the TAB and arrow keys, use SPACE/ENTER, etc.
Refining and improving the "Add Tags" widget from #188 :
"As a keyboard-only user or screen reader user, I want to be able to comfortably and efficiently use the tag drawer to tag content."
Acceptance Criteria:
aria-label
that says e.g. "Course evaluations, click to remove"Note: Much of this functionality already exists in React Select.
Screen.Recording.2024-01-25.at.12.48.43.PM.mov
The text was updated successfully, but these errors were encountered: