Closed Bug 1728676 Opened 3 years ago Closed 11 months ago

Table interfaces broken/not exposed when table roles used in SVG

Categories

(Core :: Disability Access APIs, defect)

defect

Tracking

()

RESOLVED FIXED
116 Branch
Tracking Status
firefox116 --- verified
firefox117 --- verified

People

(Reporter: Jamie, Assigned: Jamie)

References

(Blocks 3 open bugs, )

Details

Attachments

(1 file)

Originally filed as NVDA issue: https://github.com/nvaccess/nvda/issues/12767

STR (with the NVDA screen reader):

  1. Visit https://cdpn.io/aardrian/debug/xxqYyaa
  2. Press 2 to navigate to the heading "3. SVG with Table Roles".
  3. Press T to navigate to the table that immediately follows that heading.
  4. Navigate into the table and then move among cells using Ctrl + Alt + arrow key.
    • Actual behavior: NVDA reports "Not in a table cell".
    • Expected behavior: I can navigate the SVG as any other well-formed HTML table.

I investigated this briefly. The IAccessibleTable and IAccessibleTable2 interfaces are exposed on the table, but calling nRows, nColumns, etc. returns CO_E_OBJNOTCONNECTED. On the cells, the IAccessibleTableCell interface isn't exposed at all.

I'm not sure whether this is Windows specific or not; I haven't dug into that.

Bug 1832228 should make fixing this a lot easier. However, we'll need to call MaybeCreateSpecificARIAAccessible when handling the creation of SVG elements as well as HTML elements.

Actually, I wonder whether we can call MaybeCreateSpecificARIAAccessible much earlier in CreateAccessible and thus avoid duplicate calls.

Depends on: 1832228

Previously, the code to create ARIAGridCellAccessible only ran for HTML elements.
This meant that ARIA cells weren't exposed correctly in SVG.
This code has now been moved outside of the HTML check so that it works for SVG as well.

Assignee: nobody → jteh
Status: NEW → ASSIGNED
Pushed by smolnar@mozilla.com:
https://hg.mozilla.org/mozilla-central/rev/78204d8945ed
Correctly expose ARIA table cells in SVG. r=nlapre
Status: ASSIGNED → RESOLVED
Closed: 11 months ago
Resolution: --- → FIXED
Target Milestone: --- → 116 Branch
Flags: qe-verify+

I was able to reproduce the issue on Win10x64 using FF build 93.0a1(20210901214553) and the steps from description and got: NVDA reports "Not in a table cell".
But I see no difference between the old build and latest 116.0 (20230724170120) or Nightly 117.0a1(20230726154100). Is there something that I am missing? Thank you.

Flags: needinfo?(jteh)

Hi! I'm guessing the piece you're probably missing is in step 4:

  1. Navigate into the table and then move among cells using Ctrl + Alt + arrow key.

When you press t to move to the table, you land on the caption, which is not a cell and thus won't allow table cell navigation. To "navigate into the table" and move to the first cell, you'll need to press down arrow after pressing t. At that point, you should be able to use control+alt+arrows to move around the cells.

Sorry for the lack of clarity.

Flags: needinfo?(jteh)

I was able to reproduce the issue on Win10x64 using FF build 93.0a1(20210901214553) using the steps from description and the steps from comment #6. Indeed there is a difference now using the steps from last comment. Thank you James for your help.
Verified as fixed on Win10x64 using FF builds 116.0 (20230724170120) and 117.0a1(20230727034425).

Flags: qe-verify+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: