-
Notifications
You must be signed in to change notification settings - Fork 12
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
In Forms mode JAWS incorrectly emits semantic role of list boxes #768
Comments
The problem goes much further:
In both cases, the output always depends on whether the list/listbox receives the focus or a listitem/option This results in 2 further problems:
|
It is even worse in NVDA, where every listbox and list is output as a list. The difference is only recognisable in VPC mode by
While the problem in JAWS only occurs in forms mode, it occurs in NVDA in both forms and VPC mode. |
The test case provided is faulty. 2 issues
A test case with these 2 issues fixed results in JAWS announcing the |
The bug is still not fixed as of JAWS 2024 May's update. Lists and list boxes are completely different semantic roles with different meaning and different usage. @stevefaulkner The fixes you mentioned change nothing. IT is not possible to get role "listbox" in Forms mode with any markup. If you can create a markup where JAWS emits "list box" as a semantic role in Forms mode, I would be happy to see such example. IMHO it is not possible with JAWS 2024 at all, up to and including May's update. |
re-opened, think its a low priority, but an issue never the less. |
Summary
In Forms mode, JAWS users use Tab to jump between items. JAWS emits the semantic role of list boxes as "list", but the role should be "list box" instead.
odan_397_incorrect_list_role.txt
--- JAWS transcript ---
list
with 2 items
Apple
1 of 2
--- end of JAWS transcript ---
As you can see, the role of the element emitted as "List", not as the "list box".
Expected result
Expected JAWS transcript should inform blind users about a widget with the role "listbox" instead of static list of the list items.
--- Expected JAWS transcript ---
list box
with 2 items
Apple
1 of 2
--- end of expected JAWS transcript ---
Actual result
Insert-Control-F5 correctly shows this widget as a list box.
Navigation in Virtual PC Cursor mode correctly shows this widget as list box (using both, arrow keys and Quick Navigation keys).
But in the Forms mode JAWS shows this object as a static list of list items - different semantic role.
Additional Information
ARIA specification defines two different roles:
https://www.w3.org/TR/wai-aria-1.1/#list
A list role defines "A section containing listitem elements."
https://www.w3.org/TR/wai-aria-1.1/#listbox
A listbox role defines "A widget that allows the user to select one or more items from a list of choices...
List boxes contain children whose role is option."
Thus, "list" is the section showing static content. on the page.
But "listbox" is the widget with appropriate navigation, selection and (optionally) actions.
So, if an element <ul> has a role="listbox" then it is a widget with the role "listbox", not a static page section with static list items.
Please, emit role "list box", not "list" for listboxes in Forms mode like JAWS does in Virtual mode, and in the list of form fields after Insert-F5.
JAWS version and build number
JAWS version 2024.2308.124.400
The same for JAWS 2023 August release: JAWS version 2023.2307.37.400
Operating System and version
Microsoft Windows 10 Professional Version 22H2 (OS Build 19045.3448), System Type x64
Browser and version:
Google Chrome Version 116.0.5845.188
The text was updated successfully, but these errors were encountered: