telerik / kendo-ui-core

An HTML5, jQuery-based widget library for building modern web apps.
http://www.telerik.com/kendo-ui
Other
2.54k stars 1.91k forks source link

In Kendo UI Grid, narrator is not reading the selection status of the row even if aria-selected="true" is added. #5520

Open jykukrej opened 4 years ago

jykukrej commented 4 years ago

Bug report Kendo UI Grid when focus is on the data present in the table, screen reader is not announcing the selection status of the row if it is selected so if the focus on the first column of the selected row only then it is reading selected.

Reproduction of the problem Open the basic usage demo and add aria-selected attribute to table row tag and select any row then you will observe that narrator is only reading "selected" when the focus is on the first column of the selected row.

Expected/desired behavior Narrator should read selected along with the row number whenever the row is selected.

Environment Kendo UI version: Kendo U1R1 2020 Browser: [all]

dmanova commented 4 years ago

When the grid option navigatable: true is set up the selected row gets attribute aria-selected="true" upon selection. You may check the source code in this demo page: https://demos.telerik.com/kendo-ui/grid/selection

Another way to implement row selection is demonstrated on https://demos.telerik.com/kendo-ui/grid/checkbox-selection that you may consider.

The attribute aria-selected is according to WAI-ARIA specification at https://www.w3.org/TR/wai-aria-1.1/#aria-selected . What could be causing this issue may be related to Narrator. It seems it is having some issues identifying the selected state when role="row" is used as described here: https://github.com/OfficeDev/office-ui-fabric-react/issues/6525

If you consider that Narrator is reading this attribute in other web applications and the issue is due to Kendo UI lack of functionality, please give us a detailed sample so we may identify the case and suggest another implementation that is working for you.

bnagasudha commented 4 years ago

We validated this - You may check the source code in this demo page: https://demos.telerik.com/kendo-ui/grid/selection But, even here though aria-selected is set to True on the Grid, screen reader (neither Edge + Narrator nor Chrome + NVDA) is reading out the information that the row is selected when we are navigating through the selected row. Could you please validate/share if it's working with any specific browser + screen reader combination?

dmanova commented 4 years ago

It seems the screen readers are not recognizing the selected state when applied at row level (e.g. role="row"), although it is according to WAI-ARIA standard. Even applied in a simple HTML table (not a Kendo grid ) this attribute is not read. What seems to be recognized by the screen readers is the cell selection (e.g.
role="gridcell"). This could be verified on the next table in this demo page - https://demos.telerik.com/kendo-ui/grid/selection I'm marking this issue as an Enhancement and further research is necessary.

elbazitay commented 3 years ago

Hi, This issue also exists in Kendu UI Treeview. There is separate bug for this?