-
Notifications
You must be signed in to change notification settings - Fork 357
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bug - Wizard - Keyboard Navigation - High Visibility Accessibility issue #10249
Comments
@hellogreg @nikkimk |
The component is not screen reader-friendly. |
Hello, folks - let me know what I can do to escalate this issue. |
One solution if we're keeping the focus on the Next button is that we add an
That way the Next and Back buttons themselves can provide the feedback about the step change. |
I'd also suggest that the navigation use a roving tabindex pattern so that screenreader users can can use tab to skip over it and arrow keys to navigate within it, especially since some variants use a tree view. |
One potential work around for now would be utilizing a custom WizardFooter, and manually handling focus on the That would most likely require also wrapping step content in some wrapper that has a |
@nikkimk I like the idea of a roving tabindex pattern here as well. The wizard steps are essentially a tabset. CC: @adamjohnson |
I agree with @Arathy-s that moving focus to the first interactive item in the panel is desirable in this case (especially in the use case for Customer Portal). Hopefully, in the short term, something like @thatblindgeye 's workaround would help for now!
Yes. In addition to what @nikkimk said, having an element announce step status throughout the wizard (e.g., with |
And, yes, the main wizard nav is a great opportunity for incorporating roving tabindex. |
@thatblindgeye The workaround is a great idea, but I'd also suggest making a note of the accessibility issues with the other examples in the docs. Otherwise we could be propagating more accessibility issues.
|
Here's a codesandbox of a workaround that I threw together pretty quickly (and hackily 😆 ) that could be achieved. Note that I added a timeout so that the new content could render and then focus be placed on it. Overall this isn't something that seems to have a totally straight forward solution so there's been discussion around this. In regards to a roving tab index, I might worry whether that would interfere with wizard content that has a scrollbar, where the arrow keys are necessary to "scroll" the area but would also be necessary to "focus" the next element. I might be misinterpreting this, though. |
@cfbryan 👀 |
Hey @thatblindgeye I tried implementing the codesandbox of a workaround and it worked! 🎉 This solution resolves the keyboard navigation issue temporarily. And once the issue is resolved in the Patternfly Wizard component, we can remove this temporary fix and update the component. |
Describe the problem
Unable to navigate through the Wizard component using the keyboard.
This is an issue with
Please give a clear and concise description of the problem. Which components are affected?
On navigating the Wizard component through the keyboard, upon clicking the next/previous buttons, the focus remains on the wizard footer buttons even though there are interactive elements in the wizard's panel/body.
How do you reproduce the problem?
https://www.patternfly.org/2022.05/components/wizard/#anchors-for-nav-items
In this example, on navigating to the third step, the focus directly moves to the
Next
button at the bottom even though there is an interactive elementJoin the conversation
in the panel.Expected behaviour
Upon clicking the next/previous buttons, the focus should move to either the first interactive element in the wizard's main panel or (if there are no interactive elements) the main panel itself so that the user can navigate through the wizard easily
Is this issue blocking you?
The issue is blocking one of the highest-priority items.
Screenshots
If applicable, add screenshots to help explain the issue.
What is your environment?
What is your product and what release date are you targeting?
Customer Portal
Any other information?
The text was updated successfully, but these errors were encountered: