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

Issue 785347 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: Dec 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 1
Type: Bug-Regression
Team-Accessibility



Sign in to add a comment

Live regions should not speak if you click on them

Project Member Reported by dmazz...@chromium.org, Nov 15 2017

Issue description

1. Load a web page with a live region, e.g.:

<h1 aria-live="polite">
  This is a live region
</h1>

2. Click on the live region with the mouse.

NVDA and JAWS should not speak in response to a click. They may speak the text ONCE in response to moving the mouse over the element, just like any other text. Speaking it repeatedly on hover would also be a bug.

This regressed here: crrev.com/2957973003, when we started firing live region events on too many events. We need to limit them to when a node has text, and when that text is either created, delete, or changes. When a node changes but the text doesn't change we shouldn't fire a live region event.

 
Project Member

Comment 1 by bugdroid1@chromium.org, Nov 17 2017

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

commit f51324e71030221b7908c7b8b1efe29cee360079
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Fri Nov 17 18:34:14 2017

Only fire live region events on text changes.

This fixes a regression where just clicking on text in some
live regions caused it to announce. The problem was that
we rewrote live region event firing (crrev.com/2957973003)
and made it fire an event it any time a node in a live region
was updated, but we need to limit the scope to only:

* A node with text is added
* A node with text is removed
* A node's text changes

Added some new tests and more Windows test expectations
to cover this, and also manually tested this page to
make sure everything there continues to work:

https://minorninth.github.io/aria-live-region-tests/live_region_tests.html

Bug:  785347 
Change-Id: Id6fea0f32695234edbbf1493b7dfa40111e5f6a3
Reviewed-on: https://chromium-review.googlesource.com/772290
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Aaron Leventhal <aleventhal@chromium.org>
Cr-Commit-Position: refs/heads/master@{#517486}
[modify] https://crrev.com/f51324e71030221b7908c7b8b1efe29cee360079/content/browser/accessibility/dump_accessibility_events_browsertest.cc
[add] https://crrev.com/f51324e71030221b7908c7b8b1efe29cee360079/content/test/data/accessibility/event/live-region-add-expected-win.txt
[add] https://crrev.com/f51324e71030221b7908c7b8b1efe29cee360079/content/test/data/accessibility/event/live-region-change-expected-win.txt
[add] https://crrev.com/f51324e71030221b7908c7b8b1efe29cee360079/content/test/data/accessibility/event/live-region-create-expected-win.txt
[modify] https://crrev.com/f51324e71030221b7908c7b8b1efe29cee360079/content/test/data/accessibility/event/live-region-create.html
[add] https://crrev.com/f51324e71030221b7908c7b8b1efe29cee360079/content/test/data/accessibility/event/live-region-ignores-click-expected-win.txt
[add] https://crrev.com/f51324e71030221b7908c7b8b1efe29cee360079/content/test/data/accessibility/event/live-region-ignores-click.html
[add] https://crrev.com/f51324e71030221b7908c7b8b1efe29cee360079/content/test/data/accessibility/event/live-region-remove-expected-win.txt
[modify] https://crrev.com/f51324e71030221b7908c7b8b1efe29cee360079/ui/accessibility/ax_event_generator.cc
[modify] https://crrev.com/f51324e71030221b7908c7b8b1efe29cee360079/ui/accessibility/ax_event_generator_unittest.cc

Status: Fixed (was: Started)
Labels: win-a11y
Google Chrome 65.0.3325.2 (Official Build) canary (64-bit) (cohort: 64-Bit)
Windows 10 Enterprise Version 1607 Build 14393.2007
NVDA 2017.4
JAWS 2018.1801.18 Private Beta 

Steps to repro: 
# Load JAWS
# Load minimum test case into Chrome Canary: 
<html>
<h1 aria-live="polite">
  This is a live region
</h1>
</html> 

# Navigate to text using keystrokes to ensure that text is read, works 
# Move the mouse over the text and click on it
Nothing is spoken, works as intended

#Close JAWS, open NVDA, repeat
NVDA said "this is a live region" every time I move my mouse over the region. I was able to make it say it 10 times in a row after very slight mouse movements over the text, which differed from JAWS. Clicking the text did not cause it to speak so the original bug is fixed in that regard. 

I'd like to have @dmazzoni review this because I feel like we're in a gray area. Here are my comments based on what's written above. 

"They may speak the text ONCE in response to moving the mouse over the element, just like any other text. Speaking it repeatedly on hover would also be a bug." > This is not speaking on hover, and indeed it is speaking when moving the mouse over the element, so that makes me want to verify the bug as fixed. 

"We need to limit them to when a node has text, and when that text is either created, delete, or changes. When a node changes but the text doesn't change we shouldn't fire a live region event." > The text wasn't created, deleted, or changed in any way and yet NVDA still speaks many times. That makes me want to set the bug to be available for further review. 

Please let me know what you think! Thanks, Laura 

  

 

Please take a fresh look, here are some things I'd like to see:

1. Test Chrome 61, that's before this regressed.
2. Test Chrome 62, that's when it broke.
3. Test Chrome 64, that's when it was fixed.
4. Test the latest Chrome Canary

The first thing I'd like to confirm is that the experience is the same in 61, 64, and latest, and that it was broken in 62.

If there are other changes, let's list them and understand them. But I want to separate out (1) things that regressed, from (2) things that may not be working correctly but have been working that way for a while.

For anything in the category of (2), please also test with Firefox and give its behavior, and if it's different, let's file a new Chrome bug.

Comment 6 Deleted

I can no longer reproduce this issue.
70.0.3538.77 (Official Build) (64-bit) (cohort: 70_77_Win)
Google Chrome 72.0.3595.0 (Official Build) canary (64-bit) (cohort: Clang-64)
Windows 10 
NVDA 2018
JAWS 2018
Steps I followed:
#Save the live region content as a html page
# Load the content test case into Chrome Canary: 
<html>
<head>
<title>live region test</title>
</head>
<body>
<h1 aria-live="polite">

This is Live Region Test

</h1>
</body>
</html>
# Open JAWS and place the focus on the text using keystrokes to ensure that text is read aloud
# Move the mouse over the text and click on it
# Works as intended as nothing is read aloud
Results: Nothing is read aloud
# Repeat all above steps for NVDA
Results: Nothing is read aloud on mouse hover or on placing the focus on the text.

live region text bug 785347.html
144 bytes View Download
Status: Verified (was: Fixed)

Sign in to add a comment