-
Bug
-
Resolution: Fixed
-
Low
-
8.13.0
-
Severity 3 - Minor
-
Issue Summary
The "Destination branch" combobox functionality is inaccessible for screen reader users.
Steps to Reproduce
- Navigate to the "View Pull Request" page
- Navigate to the "Show more pull request actions" button and activate it.
- Navigate to the "Edit" option and activate it.
- Navigate to "Destination branch" combobox
- Try to access the custom mentioned combobox. Observe it is not accessible.
- Try to navigate to native comboboxes in read mode and observe that it is missing an accessible name.
Screenshot

Actual Results
The role is not provided for the "Destination branch" custom combobox. In addition, a label is not provided for the mentioned combobox.
Following problems found with custom combobox →
- The custom combobox is missing the role of combobox.
- There is no accessible name for this combobox.
- role=”option” is missing for combobox options.
Due to this, screen reader users may not be able to use the functionality effectively.
Expected Results
Making custom combobox accessible →
- role="combobox" to the <input> element to announce the correct role for this field.
- aria-expanded property to the <input> element and toggle its value programmatically to true/ false depending on the expanded/ collapsed state of combobox.
- <div> element with role=”listbox” and a unique id.
- “aria-owns” attribute to <input> element having value of id property of <div> element.
- role=”option” and unique id to the <div> elements present for options present for combobx.
- aria-activedescendant property to the <input> element having value as id property of <li> element
- A visible label such as “Select for an author” should be provided for Combobox using <label> element. Additionally “for“ and “id” attribute should be used to associate the label with its corresponding input field.
For details on implementation, please see this example →https://www.w3.org/WAI/ARIA/apg/patterns/combobox/examples/combobox-autocomplete-list/
Workaround
Currently, there is no known workaround for this behaviour.
Environment
MacBook Pro (16-inch, 2019)
macOS 13.4.1 (c) (22F770820d)
Chrome - Version 115.0.5790.170 (Official Build) (x86_64)
Firefox- Version 114.0 (64-bit)
Safari- Version 16.5.2 (18615.2.9.11.10)
JAWS- Version 2023.2306.28
NVDA- Version 2022.2.2
Voiceover - Version Latest