nvda
nvda copied to clipboard
Text range reported instead of Name in Microsoft Edge when UIA is enabled
Steps to reproduce:
Complete following steps with "UIA for Microsoft edge and other chromium browsers" is set to "Yes" and "no" from the NVDA's advance setting panel.
- In edge, open the attached file or go to https://codepen.io/reefturner/pen/wvdpqYd (change view to 'full')
- Press
h
to jump to "welcome" heading. - Press
f
to jump to button, note speech.
Actual behavior:
"NVDA 2020.4" announced. This is the descendent text given to the button, not the label.
Expected behavior:
Announce "NVDA 2021.1" NVDA should read the label given using aria-label. Note: When the "UIA for Microsoft edge and for other chromium browsers" is set to the default or "no" value, it works as expected.
Other info:
Confirmed with Accessibility Insights for windows Name is exposed correctly by UIA with Edge. NVDA is reporting the text range for the button.
System configuration
NVDA installed/portable/running from source:
Installed
NVDA version:
NVDA 2021.1
Windows version:
Windows 21H1
Name and version of other software in use when reproducing the issue:
Microsoft EdgeVersion 92.0.902.55 (Official build) (64-bit)
Other information about your system:
Other questions
Does the issue still occur after restarting your computer?
Yes
Have you tried any other versions of NVDA? If so, please report their behaviors.
the feature was not available in the previous versions.
If add-ons are disabled, is your problem still occurring?
Yes
Does the issue still occur after you run the COM Registration Fixing Tool in NVDA's tools menu?
Yes
Please remove the ".txt" extention from the file. NVDATest.html.txt
I can reproduce the issue as described, the sample is now also available here: https://codepen.io/reefturner/pen/wvdpqYd
The specific example relates to the Name
property, and does not exercise the Description
property.
One thing to note to prevent misleading others, the accessible name and description computation is for "user agent" software to interpret web standards. "User Agent" commonly refers to a browser, IE Edge. The browser interprets the web content, and is expected to use the name / description computation to expose name and description via API's to "Assistive technology (AT)" such as NVDA. In this case the comparison is the behavior of NVDA when using the UIA API or IAccessible API.
I have checked (with Accessibility Insights for windows), and can confirm Name
is exposed correctly by UIA with Edge. We are indeed reporting the text range for the button. UIA in Edge is still an experimental feature (thus not the default). However, we do aim to fix bugs such as this.
I'm going to modify the title to clarify.
cc: @tomaszw, @aursulis just that you know this issue will affect the HP browser as well, and will very probably lead to major confusions for users because aria label will often not be reported when using browse mode. Browse mode is the navigation mode used most often by users when exploring websites with screen readers.