New issue
Advanced search Search tips

Issue 864012 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jul 19
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 1
Type: Bug
Team-Accessibility



Sign in to add a comment

A11y: NVDA: Calendar.google.com schedule view table rows are out of order

Project Member Reported by dsexton@chromium.org, Jul 16

Issue description

Chrome: 69.0.3493.0 
Firefox: 62
NVDA: 2018.2.1
JAWS: 2018

Steps to repro: 
# With NVDA running, open calendar.google.com in Chrome
# Insure that there are several appointments throughout the week -  3 to 5 per day
# Change to schedule view if necessary
# Press 't' twice to get to the schedule table
# Use alt+ctrl+down arrow to read the table
# Notice that NVDA reports days out of order

Expected: NVDA reads the rows as they appear

Actual: NVDA reads the first two or three for a day then moves to the next day. After cycling through the week, NVDA continues with the skipped appointments from Monday.

Does not repro in JAWS+Firefox, JAWS+Chrome, NVDA+Firefox

Bisect:
The change is caught in this bisect, but before this change, the table nav with NVDA would not allow a user to use table nav commands to read beyond the first two rows.
Therefore, reverting changes would not fix this issue.

You are probably looking for a change made after 553353 (known good), but no later than 553354 (first known bad).
CHANGELOG URL:
The script might not always return single CL as suspect as some perf builds might get missing due to failure.
  https://chromium.googlesource.com/chromium/src/+log/e3cf0f7886f3174453e3101bb7d7c3057e761c33..65582a0a4cdbd7200afa163cdfb542236e5c3a55

 
This is actually great news, because I was deliberately rewriting a lot of table code to simplify it and hopefully fix some legacy bugs. I anticipated we might find some regressions but the goal is that now they'll be much easier to fix.

In this case I'm hopeful that it's closer to correct and we can fix the remaining issues quickly!

I can definitely reproduce the problem that the table was quite broken before, but when I use NVDA with Canary I'm now able to access the whole table. I'm not able to reproduce the bug you're talking about where days are appearing in the wrong order.

Can you give a bit more detail? Does it matter which column you go down? What does it say for the row numbers as you're moving down?

Also if you navigate the table as text instead of using table commands, are things in the right order?

OK, I figured it out. It happens when the table is built up dynamically, I think it's because it adds the rows for one calendar, then inserts rows from a different calendar, and so on. There's a bug causing us to not renumber the rows after an insert.

Great catch, thanks.

Status: Started (was: Assigned)
Fix uploaded: https://chromium-review.googlesource.com/c/chromium/src/+/1142392

Project Member

Comment 4 by bugdroid1@chromium.org, Jul 19

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

commit cd0d9861ee13bec2f79b6be872f8e7aa3ab759f8
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Thu Jul 19 08:51:43 2018

Update an entire table when part of it changes.

Otherwise rows and cells aren't renumbered properly. We can possibly make
this more efficient in the future by only computing cell row and column
indexes downstream, but for now this is necessary.

Bug:  864012 
Change-Id: I270481c78ee6e10bdf0140c5f4d221af3918c0fc
Reviewed-on: https://chromium-review.googlesource.com/1142392
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Alice Boxhall <aboxhall@chromium.org>
Cr-Commit-Position: refs/heads/master@{#576423}
[modify] https://crrev.com/cd0d9861ee13bec2f79b6be872f8e7aa3ab759f8/content/browser/accessibility/dump_accessibility_tree_browsertest.cc
[modify] https://crrev.com/cd0d9861ee13bec2f79b6be872f8e7aa3ab759f8/content/renderer/accessibility/render_accessibility_impl.cc
[add] https://crrev.com/cd0d9861ee13bec2f79b6be872f8e7aa3ab759f8/content/test/data/accessibility/aria/aria-grid-dynamic-add-row-expected-blink.txt
[add] https://crrev.com/cd0d9861ee13bec2f79b6be872f8e7aa3ab759f8/content/test/data/accessibility/aria/aria-grid-dynamic-add-row.html

Status: Fixed (was: Started)

Sign in to add a comment