patternfly / patternfly/patternfly-react

Page: tabIndex default value (mainTabIndex=-1) which prevents keyboard scroll

Open
#5,920 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

A11y Breaking change :boom:
Dominant language
TypeScript
Stars
862
Forks
392
Avg merge
4d 8h
Merged PRs (30d)
9

Description

Describe the issue. What is the expected and unexpected behavior?
mainTabIndex=-1 as a default value prevents keyboard scroll. tlabindex should be removed. Having a tabindex on a container essentially breaks focus and keyboard scroll for all non-focusable containers below it. eg topology details side panel.

Any contributions to the main content should not have to deal with adding their own tabindex attribute to their scroll containers.

Above notes from the pr: https://github.com/openshift/console/pull/9140#issuecomment-854134911

workaround is to set the mainTabIndex to null.

Please provide the steps to reproduce. Feel free to link CodeSandbox or another tool.

https://github.com/openshift/console/pull/9140#issuecomment-8541349113

Is this a bug or enhancement? If this issue is a bug, is this issue blocking you or is there a work-around?
Bug
What is your product and what release version are you targeting?
OpenShift 4.9

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the referenced PatternFly React pull request #9140 and its linked issue comment to locate the mainTabIndex default. Remove the default tabindex behavior, then verify that keyboard scrolling works for non-focusable containers without requiring a mainTabIndex workaround.

Written by the indexing model from the issue text.

Assessment

Tech stack
react, typescript
Domain
accessibility, frontend
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.