https://bugs.documentfoundation.org/show_bug.cgi?id=156657

--- Comment #11 from Joanmarie Diggs <[email protected]> ---
I see that I said I'm comment more on ARIA and then promptly forgot to do so.
Apologies!

There's a grid example from the ARIA WG in which only part of the full table is
exposed. Properties are used to communicate the attributes of the full table to
ATs. See
https://www.w3.org/WAI/ARIA/apg/patterns/grid/examples/data-grids/#rps_label.

What happens in browsers, at least for ATK and IA2, is that the accessible
table interface reflects the actual table based on the DOM. In other words, if
the <table> element has 6 rows and 6 columns, that is what the table interface
returns. And only those 36 cells are in the accessibility tree. ATs use the
actual table (via the table interface) to provide navigation, e.g. cell-up,
cell-down, cell-right, cell-left, etc. *in browse mode*.

The ARIA properties are exposed in a different fashion as dictated by the
Core-AAM. See, for example, https://w3c.github.io/core-aam/#aria-rowcount. ATs
use these properties to present the functional/conceptual row to the user (e.g.
to say "row 16" if the user navigates to the end of the example table which
physically has only six rows).

In large grids, it's expected that the user will NOT be in browse mode. That's
why the grid is expected to provide its own keyboard navigation. See
https://www.w3.org/WAI/ARIA/apg/patterns/grid/examples/data-grids/#kbd_label.

With this in mind, I think you could expose a tiny subset of the Calc table and
use the ARIA properties to ensure screen readers say the right thing. I
personally wouldn't worry about scenarios like jumping to the end of the entire
row in browse mode. Users should use Calc's native keyboard shortctus, of which
there are many, for table navigation.

IF there's a huge outcry that all browse mode table navigation must work in
Calc, I think the thing to do might be to create new API in ATK/AT-SPI2 and IA2
for navigation. But that might not even happen.

HTH.

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to