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

Issue 763145 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: Sep 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 3
Type: Bug
Team-Accessibility



Sign in to add a comment

Change to HTML disabled property not reflected by a11y when not focused

Project Member Reported by ja...@nvaccess.org, Sep 7 2017

Issue description

Chrome Version: 63.0.3207.0 (Official Build) canary (64-bit)
OS: Windows 10 Version 1703 (OS Build 16251.0) 64-bit

What steps will reproduce the problem?
(1) Start Chrome and the NVDA screen reader.
(2) Open this URL:
data:text/html,before<input type="text" onInput="document.getElementById('button').disabled = false;"><button id="button" disabled>Go</button>
(3) Press control+home to move to the top of the document.
(4) Press tab once to focus the text input.
(5) Type "z".
(6) Press escape to switch to NVDA browse mode.
(7) Press b to move to the button.

What is the expected result?
NVDA should say "Go  button"

What happens instead?
NVDA says "Go  button  unavailable"

When you type into the text input, the disabled property on the button is set to false. However, the accessibility tree still reports that the button has the unavailable state and a state change event is not fired. Both of these things need to be fixed.

Note that if you use aria-disabled, the change is reflected and signalled properly:

data:text/html,before<input type="text" onInput="var b = document.getElementById('button'); b.setAttribute('aria-disabled', 'false'); b.disabled = false;"><button id="button" disabled aria-disabled="true">Go</button>

Impact: This makes it difficult for NVDA users to work with complex forms where the submit button is disabled until text is entered. After entering text, it is not possible to activate the button using NVDA browse mode, since the accessible still reports as being unavailable. This is particularly frustrating, for example, when commenting on GitHub issues.
 
Status: Available (was: Untriaged)
Chrome 63.0.3212.0 (Official Build) canary (64-bit) (cohort: 64-Bit)
Windows 10 Enterprise Version 10.0.14393 Build 14393.1593
NVDA 2017.3
JAWS 2018 Beta 
Firefox 55.0.3 (64-bit)

Hi Jamie, 

I am able to reproduce this issue in Chrome + NVDA only. Thanks for sending it in!


(1) Open NVDA + Chrome
(2) Open this URL:
data:text/html,before<input type="text" onInput="document.getElementById('button').disabled = false;"><button id="button" disabled>Go</button>
(3) Press control+home to move to the top of the document.
(4) Press tab once to focus the text input.
(5) Type "z".
(6) Press escape to switch to NVDA browse mode.
(7) Press b to move to the button.
(8) Repeat with NVDA + Firefox
(9) Repeat with JAWS + Chrome

Results:

Chrome + NVDA, can repro: "Go button  unavailable"
Firefox + NVDA, cannot repro" "Go button"
Chrome + JAWS, cannot repro" "Go button" 


Comment 2 by nek...@chromium.org, Sep 23 2017

Cc: nek...@chromium.org
Components: -UI>Accessibility UI>Accessibility>Compatibility
Owner: leberly@chromium.org
Status: Fixed (was: Available)
@leberly, could you verify my fix.
FYI, I also verified that this wasn't an issue with VoiceOver before my fix.

Status: Verified (was: Fixed)
Chrome 63.0.3233.0 (Official Build) canary (64-bit) (cohort: 64-Bit)
Windows 10 Enterprise Version 10.0.14393 Build 14393.1715
NVDA 2017.3

Verified, NVDA now says "Go button". Resolving this bug. 

Sign in to add a comment