Skip to content

webui: [ChatFormPickerPopover][a11y] add tabindex and aria-hidden to popover trigger#22699

Open
vignesh191 wants to merge 1 commit intoggml-org:masterfrom
vignesh191:popoverTabIndexIssue
Open

webui: [ChatFormPickerPopover][a11y] add tabindex and aria-hidden to popover trigger#22699
vignesh191 wants to merge 1 commit intoggml-org:masterfrom
vignesh191:popoverTabIndexIssue

Conversation

@vignesh191
Copy link
Copy Markdown

Overview

I was using my keyboard to navigate the webUI (Tab and Shift+Tab). There was a hidden <button data-slot="popover-trigger"> in ChatFormPickerPopover that you couldn't see, but you could still tab to it and screen readers would announce it.

When Enter is clicked the popover would seemingly open out of nowhere saying: No MCP resources available. The button has to stick around because bits-ui uses it as the positioning anchor for the popover content, so removing it isn't an option.

Adding tabindex={-1} takes it out of the tab order, and aria-hidden="true" hides it from screen readers. Together, it's now invisible to every keyboard interaction and the a11y tree for screen readers, while still doing its positioning job :)

Additional information

You can reproduce this issue in the local Storybook instance: ChatScreenForm > Default. Hit Shift+Tab, then hit Enter. check document.activeElement in the console. For keyboard users this behavior is unusual and does not flow naturally through the order of focusable elements.

image

Requirements

  • I have read and agree with the contributing guidelines - Yes
  • AI usage disclosure: Yes, AI helped me understand the webui/ repo's structure and made the diff after I picked the most viable fix.

Copy link
Copy Markdown
Contributor

@allozaur allozaur left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great catch! Thanks :)

@allozaur allozaur requested a review from ServeurpersoCom May 5, 2026 15:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants