fix(Tabs): prevent tablist role from stealing focus #7905
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Closes #7892
when the
tablist
role is applied to an element, it becomes focusable on click. In Safari, clicking on a Carbon tab within the tab container was stealing focus away from the tab and adding browser default outlines to the element withrole="tablist"
. This PR overrides the browser styles and explicitly callsfocus()
on the selected tab to ensure focus remains on the selected tab (non-Safari browsers did not need this to keep focus on the selected tab)Testing / Reviewing
Ensure the correct element is focused in Safari after selecting tabs via mouse and ensure no behavioral regressions appear in non-Safari browsers