Mudlet: Make Mudlet's text window readable by screenreaders

Created on 15 Feb 2020  ·  7Comments  ·  Source: Mudlet/Mudlet

Brief summary of issue / Description of requested feature:

Currently when you use a screenreader, it is able to read menus and dialogs of Mudlet - but not the actual window where the game text is displayed.

This is because menus and dialogs in Mudlet are standard Qt widgets which already have support for accessibility, whereas the game text widget is a handcrafted and very fast widget for rendering text - which does not have a11y support yet.

This issue is about adding support to it: the TConsole / TTextEdit classes.

Steps to reproduce the issue / Reasons for adding feature:

  1. Better accessibility for screenreaders

Error output / Expected result of feature

Expected result is that NVDA on Windows, built-in macOS reader, KDE and Gnome's accessibility are able to read text as it comes from the game and the widget is navigatable (as in, to go back to read text) in a standard way - as an impaired player would expect.

Thus this shall be implemented using Qt's accessibility framework as that will automatically handle the OS-specific details for us: https://doc.qt.io/qt-5/accessible-qwidget.html

Extra information, such as Mudlet version, operating system and ideas for how to solve / implement:

Mudlet 4.4.0

Bountysource

This issue will be considered closed when at least 2 visually impaired users sign off on usability.

We're new to developer bounties and this is our first foray into it - so we expect a few bumps along the road :)

a11y enhancement

Most helpful comment

Okay, I'll see to finishing mpconley's work then. Will talk to you later.

All 7 comments

Beginning to tackle this. Expect a WIP /PoC next week !

Already said it on discord, but will say it here : Will take a looot longer than that ! :P

@mpconley has donated some work already - see if https://github.com/Mudlet/Mudlet/compare/add-mpconleys-accessibility-work helps you out.

Hey, sorry for all this , but work has piled up elsewhere and I've gone nowhere - I feel like it's unfair for me to claim I'm working on this and potentially reserve a bounty when I'm not. I'm abandoning this for now0, will come back in a month or so when things calm down.
Update : Will _not_ come back

Hate to look snide, but someone has to point the elephant in the room: you can do whatever you want with the textbox, but for a blind person, this app's value will still be outweighted by the entirety of its UI being a nightmare to use with keyboard alone. No, really, take a few minutes to memorize the relevant forms, close your eyes then try to create a script without touching the mouse. At least on Linux, you'll find that you can't even navigate them: the toolbar buttons you're so fond of don't receive focus, and there are text controls that capture the focus with no way to leave them. With scripts being unusable, the app isn't any more useful than, say, a telnet client. And you can't easily fix the usability - there's more than enough technical debt in the app to stall you for months if you try to. All in all, you should probably play to your strengths and ignore a11y altogether, lest you waste too much time on it and start bleeding the core user base.

We're aware it's a lot of work, but internalization was a lot of work and we've achieved it - and brought Mudlet to more people out there. We, people making the client, will achieve accessibility too.

Okay, I'll see to finishing mpconley's work then. Will talk to you later.

Was this page helpful?
0 / 5 - 0 ratings