Keyboard navigation unreachable dashboard sections
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 13.8k
- Forks
- 1.4k
- Avg merge
- 17h 58m
- Merged PRs (30d)
- 5
Description
Bug description
In the dashboard, there are many sections and individual components currently not accessible by sequential keyboard navigation. This means it's hard and sometimes impossible for users using screen readers to interface with Gitpod beyond creating a workspace.
Affected components
OrganizationSelector(when closed, while it is open, it's inner options are focusable)- the feedback button in the menu
UserMenu- Regenerate & Delete context menu items on the Access tokens page
<ContextMenu>- Workspace list caret for expanding to include inactive workspaces
<Dropdown>- A
<Modal>'s close button - see https://github.com/gitpod-io/gitpod/pull/15809 - The
Copybutton inside of an<InputWithCopy>
Components with double-focus
In some places, a user has to double-click Tab to go over a component. This happens most often on buttons which are also links.
Examples include:
- The
/projectsInvite Members button - The New access token button on
/user/tokens - View Usage inside of
/user/billing
Related issues
- A sister issue to https://github.com/gitpod-io/gitpod/issues/16723
Further reading
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the affected dashboard entry points in components/dashboard/src/menu/OrganizationSelector.tsx, Menu.tsx, components/ContextMenu.tsx, DropDown.tsx, Workspaces.tsx, Modal.tsx, InputWithCopy.tsx, and PersonalAccessTokens.tsx. Reproduce the dashboard, access-token, projects, and billing flows with sequential Tab navigation. Done means each listed control is reachable without double focus, including the InputWithCopy Copy button and modal close button.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- accessibility, frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100