New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 736542 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Dec 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 3
Type: Bug
Team-Accessibility



Sign in to add a comment

IAccessibleTableCell::get_columnHeaderCells returns the wrong header cells for the focused cell

Project Member Reported by nek...@chromium.org, Jun 23 2017

Issue description

Version: Chrome 61.
1. Create an HTML table and use aria-colindex to mark all the cells with their corresponding column number.
2. Create a header row with <th> ... </th>.
3. Mark the table with role="grid" and the cells in all but the first row with tabindex="0" to make them interactive.
4. Create a button that will hide some of the columns of the table when pressed.
5. Start Jaws 18.
6. Press the button that hides the columns.
7. Find a cell and press enter to go into forms mode.
8. Press tab and shift+tab to go back into the cell.
9. Observe that the wrong column header is being read.

Cause: When cells are added or removed, ui::AX_ATTR_TABLE_CELL_IDS and related table attributes are not updated. IAccessibleTableCell::get_columnHeaderCells works on the IDs that were stored before the columns where hidden, thus returning the wrong column headers.

 
Project Member

Comment 1 by bugdroid1@chromium.org, Jun 27 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/24930aec1c8e42945e1a008e0924fa95750ce84a

commit 24930aec1c8e42945e1a008e0924fa95750ce84a
Author: nektar <nektar@chromium.org>
Date: Tue Jun 27 23:32:27 2017

Updates table-like objects when cells are added or removed.

When a table, grid or tree grid is dynamically updated through JavaScript and some cells are added or removed, we would fire a children changed event on the affected table rows, but we were not re-calculating the attributes stored in the table-like object itself, such as the list of cell IDs. This caused some hard to debug errors.
R=dmazzoni@chromium.org
BUG= 736542 

Review-Url: https://codereview.chromium.org/2953363002
Cr-Commit-Position: refs/heads/master@{#482792}

[modify] https://crrev.com/24930aec1c8e42945e1a008e0924fa95750ce84a/content/browser/accessibility/dump_accessibility_events_browsertest.cc
[modify] https://crrev.com/24930aec1c8e42945e1a008e0924fa95750ce84a/content/browser/accessibility/dump_accessibility_tree_browsertest.cc
[modify] https://crrev.com/24930aec1c8e42945e1a008e0924fa95750ce84a/content/renderer/accessibility/render_accessibility_impl.cc
[add] https://crrev.com/24930aec1c8e42945e1a008e0924fa95750ce84a/content/test/data/accessibility/aria/table-column-hidden-expected-blink.txt
[add] https://crrev.com/24930aec1c8e42945e1a008e0924fa95750ce84a/content/test/data/accessibility/aria/table-column-hidden-expected-mac.txt
[add] https://crrev.com/24930aec1c8e42945e1a008e0924fa95750ce84a/content/test/data/accessibility/aria/table-column-hidden-expected-win.txt
[add] https://crrev.com/24930aec1c8e42945e1a008e0924fa95750ce84a/content/test/data/accessibility/aria/table-column-hidden.html

Labels: triage-lpalmaro

Comment 3 by nek...@chromium.org, Dec 10 2017

Labels: -triage-lpalmaro
Status: Fixed (was: Started)
Labels: win-a11y

Sign in to add a comment