nvda
nvda copied to clipboard
Use value of `aria-label*` to provide accessible name for tables in Firefox
Link to issue number:
Fixes #5183
Summary of the issue:
In Firefox, tables labelled with aria-label
or aria-labelledby
(where the referenced element is not visible) do not have a virtual buffer node inserted with the accessible name of the table.
Description of user facing changes
Tables now have this node inserted in Firefox, as they already do in Chrome.
Description of development approach
Since Firefox returns the empty string if no description is given (rather than null
as returned by Chrome), update gecko_ia2.cpp
to check for the empty string as well as null
.
Testing strategy:
Manually tested with the following snippet in Chrome and Firefox:
data:text/html,<p>Table for testing follows:</p><table aria-label="Foo"><tr><th>Test 1</th><th>Test 2</th></tr></table>
Known issues with pull request:
None.
Code Review Checklist:
- [x] Documentation:
- Change log entry
- User Documentation
- Developer / Technical Documentation
- Context sensitive help for GUI changes
- [x] Testing:
- Unit tests
- System (end to end) tests
- Manual testing
- [x] UX of all users considered:
- Speech
- Braille
- Low Vision
- Different web browsers
- Localization in other languages / culture than English
- [x] API is compatible with existing add-ons.
- [x] Security precautions taken.