ComboboxInputTrigger puts the combobox states on a role-less div

Open
#551 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
35/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Stale
Tech stack
ruby

Research direction

Start on the 2.0 line with combobox_input_trigger.rb and compare the current markup with snapshot combobox/input_trigger. Run the golden HTML suite or inspect the combobox/* snapshots, then re-record them after the input owns the combobox states and review the resulting diff.

Written by the indexing model from the issue text.

Description

bug
  • Where: combobox_input_trigger.rb: aria-expanded and aria-haspopup="listbox" on the wrapper div; the <input> has no role="combobox", aria-controls or aria-activedescendant. Snapshot combobox/input_trigger.
  • Effect: ARIA 1.2 puts those states on the element with the combobox role; on a role-less div they are not conveyed, and the listbox relationship is never announced.
  • Fix: move role: "combobox", aria-haspopup, aria-expanded and aria-controls onto the input; re-record combobox/*.

Surfaced by the strict lane of the golden HTML suite (PR #548), which pins what 1.6 renders today — this defect included. Per maintainer decision (2026-09-19) main stays as is: this is addressed on the 2.0 line, and the golden snapshots that pin it are re-recorded there with the diff reviewed.

Source: design/v2/follow-up-issues.md.

Dominant language
Ruby
Stars
1k
Forks
67
Avg merge
2d 19h
Merged PRs (30d)
18

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.

More from ruby-ui/ruby_ui

All issues in ruby-ui/ruby_ui

Similar issues

More Ruby issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.