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

Issue 760364 link

Starred by 2 users

Issue metadata

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



Sign in to add a comment

Form elements whose disabled or required status changes dynamically are not correctly reflected in the accessibility tree

Project Member Reported by nek...@chromium.org, Aug 29 2017

Issue description

What steps will reproduce the problem?
1. Load Jaws or NVDA.
2. Use the following HTML snippet:
data:text/html,<input type=radio id="radio" disabled="true">radio button<br><button onclick="document.getElementById('radio').disabled = false;">Enable radio button</button>

3. Click the button to enable the radio button.

What is the expected result?
Screen reader should not say "unavailable" or "disabled" or something similar after the radio button.

What happens instead?
Screen reader still announces the radio button as disabled.

Please note that this bug occurs on other controls, not only radio buttons.

 
EstimatedDays: 0
Summary: Form elements whose disabled or required status changes dynamically are not correctly reflected in the accessibility tree (was: Form elements whose disabled status changes dynamically are not correctly reflected in the accessibility tree)
Cc: -nek...@chromium.org
Owner: nek...@chromium.org
Status: Started (was: Available)
Patch uploaded.
Project Member

Comment 3 by bugdroid1@chromium.org, Sep 14 2017

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

commit 550c61d765e2799fb99ac80d81178c1f05ad4aea
Author: Nektarios Paisios <nektar@chromium.org>
Date: Thu Sep 14 03:22:26 2017

Correctly reports the required and disabled states after they changed dynamically.

Makes completing HTML forms a much better experience as previously the unavailable and required states would seemingly be announced randomly.
R=aleventhal@chromium.org
TESTED=Manually with Jaws NVDA and VoiceOver, browser tests

Bug:  760364 
Change-Id: Ia3678314142cf32a916e64b81b4a92d7e118caa1
Reviewed-on: https://chromium-review.googlesource.com/648550
Reviewed-by: Dimitri Glazkov <dglazkov@chromium.org>
Reviewed-by: Aaron Leventhal <aleventhal@chromium.org>
Commit-Queue: Nektarios Paisios <nektar@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501857}
[modify] https://crrev.com/550c61d765e2799fb99ac80d81178c1f05ad4aea/content/browser/accessibility/browser_accessibility_com_win.cc
[modify] https://crrev.com/550c61d765e2799fb99ac80d81178c1f05ad4aea/content/browser/accessibility/dump_accessibility_events_browsertest.cc
[add] https://crrev.com/550c61d765e2799fb99ac80d81178c1f05ad4aea/content/test/data/accessibility/event/aria-disabled-changed-expected-mac.txt
[add] https://crrev.com/550c61d765e2799fb99ac80d81178c1f05ad4aea/content/test/data/accessibility/event/aria-disabled-changed-expected-win.txt
[add] https://crrev.com/550c61d765e2799fb99ac80d81178c1f05ad4aea/content/test/data/accessibility/event/aria-disabled-changed.html
[add] https://crrev.com/550c61d765e2799fb99ac80d81178c1f05ad4aea/content/test/data/accessibility/event/aria-required-changed-expected-mac.txt
[add] https://crrev.com/550c61d765e2799fb99ac80d81178c1f05ad4aea/content/test/data/accessibility/event/aria-required-changed-expected-win.txt
[add] https://crrev.com/550c61d765e2799fb99ac80d81178c1f05ad4aea/content/test/data/accessibility/event/aria-required-changed.html
[add] https://crrev.com/550c61d765e2799fb99ac80d81178c1f05ad4aea/content/test/data/accessibility/event/form-disabled-changed-expected-mac.txt
[add] https://crrev.com/550c61d765e2799fb99ac80d81178c1f05ad4aea/content/test/data/accessibility/event/form-disabled-changed-expected-win.txt
[add] https://crrev.com/550c61d765e2799fb99ac80d81178c1f05ad4aea/content/test/data/accessibility/event/form-disabled-changed.html
[add] https://crrev.com/550c61d765e2799fb99ac80d81178c1f05ad4aea/content/test/data/accessibility/event/form-required-changed-expected-mac.txt
[add] https://crrev.com/550c61d765e2799fb99ac80d81178c1f05ad4aea/content/test/data/accessibility/event/form-required-changed-expected-win.txt
[add] https://crrev.com/550c61d765e2799fb99ac80d81178c1f05ad4aea/content/test/data/accessibility/event/form-required-changed.html
[modify] https://crrev.com/550c61d765e2799fb99ac80d81178c1f05ad4aea/third_party/WebKit/Source/core/html/HTMLFormControlElement.cpp

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

Status: Fixed (was: Started)

Sign in to add a comment