FreedomScientific / standards-support

Contains documentation for Vispero software support of Web standards
https://freedomscientific.github.io/standards-support/
GNU General Public License v3.0
110 stars 12 forks source link

JAWS "List of Elements" hotkeys do not display all information for form fields inside tables #846

Closed ztfine2 closed 2 months ago

ztfine2 commented 3 months ago

Summary

When a table contains one or more form fields (e.g., a single input or button, or a group of multiple inputs), those form fields are not adequately labeled unless both 1. a rowheader is present and 2. the input (or group) is itself directly labeled using the column and row header cells.

Expected result

In the "List of edit buttons," "List of form fields," etc lists, I expect that elements have proper columnheader and rowheader context.

Actual result

In most cases (except the one described above), one or more context pieces are missing.

Example

https://codepen.io/Zachary-Fine/pen/JjqgYEO Notice that, in all the rows except body rows 1 and 3, the edit boxes do not have proper labeling. In most cases, buttons are not given proper context either. The exception is in rows 1 and 3, in the case where a button is inside a labeled group.

Additional Information

JAWS version and build number

JAWS v2023.2402.1

Operating System and version

Windows 10, version 22H2, OS build 19045.4529

Browser and version:

Google Chrome - 126.0.6478.127 (Official Build) (64-bit) (cohort: Stable)

JAWS-test commented 2 months ago

I don't see a JAWS problem here. JAWS displays the labelling of the elements correctly in the element list. Rowheader and columnheader do not automatically result in a label. This could be changed in the future: https://github.com/w3c/aria/issues/2148

ztfine2 commented 2 months ago

Default row/columnheader label associations would certainly work for these examples, but the problem here seems to be that labels (from aria-labelledby) on groups within a table cell are not recognized by JAWS. The edit box in the second row ("Labelledby without rowheader") / third column ("col 3") does not have a label - using Ins+F5 shows that it is listed as "Unlabeled1 edit".

image

stevefaulkner commented 2 months ago

The edit box in the second row ("Labelledby without rowheader") / third column ("col 3") does not have a label - using Ins+F5 shows that it is listed as "Unlabeled1 edit".

that is because it is unlabeled. When viewed in the chrome accessibility tree it has no accessible name textbox ""

JAWS-test commented 2 months ago

@stevefaulkner @ztfine2

What is noticeable in the example here is a small irregularity in the JAWS element overview:

A separate ticket can be created for this problem because it has nothing to do with the table.