thoughtbot / thoughtbot/administrate
`role=link` breaks screen readers' table navigation commands
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 6k
- Forks
- 1.1k
- PR merge metrics
- No merged PRs in 30d
Description
I haven't used a screen reader; creating this issue to see if we can finalize suggestions made in #2245
@metamoni created #2245 to get rid of redundant ARIA roles but the link role used in tables is referenced by CSS that makes the row show up as clickable.
role=link was introduced along with tabindex=0 in #1557 to make the whole row clickable when possible, leaving links in the individual cell contents are a fallback (see comment).
References:
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 with app/views/administrate/application/_collection.html.erb, where the table row receives role=link, and app/assets/stylesheets/administrate/base/_tables.scss, where that role controls clickable-row styling. Read the referenced discussion in #2245 and the origin in #1557, then verify the chosen change with table navigation in a screen reader while preserving the intended row-click behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- css, html, rails
- Domain
- accessibility, frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100