sparrow
sparrow copied to clipboard
Accessibility Issues with Sparrow Wallet Install and entering backup seed phrase
Screen Reader Accessibility Issues in Sparrow Wallet
Issue Description
While preparing a demo for a bitcoin.design presentation on screen reader use with bitcoin wallets, problems were incidentally uncovered in Sparrow wallet.
Several screen reader accessibility issues were identified using the NVDA screen reader in the Sparrow Wallet desktop application on Windows that make it challenging for blind and visually impaired users to effectively use the software video reference: https://www.youtube.com/watch?v=QR8A2jjbYhE
Accessibility Barriers
1. Modal Setup Instructions Not Properly Conveyed
- Issue: When advancing through setup screens, focus automatically moves to the next control, bypassing the newly revealed instructional content in the modal above. Screen reader users may miss setup instructions.
- Impact: Users may proceed without awareness of key instructions, leading to confusion during setup.
- WCAG References:
2. Lack of Semantic Grouping for Wallet Types
- Issue: Wallet type options and their associated controls lack proper semantic grouping and programmatically associated descriptions.
- Impact: Screen reader users may have difficulty understanding the relationships between wallet options and their descriptions, making selections challenging.
- WCAG Reference: Related to WCAG 2.2 Success Criterion 1.3.1 Info and Relationships (Level A)
3. Inaccessible Seed Phrase Backup Forms
- Issue: The backup seed phrase form fields do not have programmatically associated labels and do not announce the number/position of the word being entered when a field receives focus.
- Impact: Users may have difficulty verifying they are entering seed words in the correct order, which could lead to errors.
- WCAG Reference: Related to WCAG 2.2 Success Criterion 3.3.2 Labels or Instructions (Level A)
Priority
Medium-High - Addressing these issues would significantly improve the experience for visually impaired users of Sparrow Wallet.
Technical Resources
For implementing JavaFX accessibility improvements, the following resources may be helpful:
- JavaFX Accessibility API Documentation - Reference for AccessibleRole, AccessibleAttribute and other key accessibility classes
- JEP 204: JavaFX Accessibility - Background on JavaFX accessibility implementation
- Accessibility Properties Guide - Java accessibility configuration options
Additional Resources
Bitcoin Universal Design Guide
For guidance on applying WCAG 2.2 to non-web ICT like desktop applications, refer to EN 301 549 V3.2.1.
Thanks for opening the issue, and the useful video.
As a demonstration (to myself if no-one else) I improved a couple of the highlighted areas fairly quickly in e6973132. The import option panes in the Import Dialog are now read by the screen reader, as well as the word numbers in the BIP39 entry textfields.
I would welcome PRs to set setAccessibleText on controls in other areas of the app that can improve things for visually impaired users.
Thank you for the quick response and patch! I will definitely take a look at other areas soon and let you know if I find other areas for improvement in this regard and if possible submit a PR as well.