mumble
mumble copied to clipboard
Mumble inaccessible to blind users
Hi, I'm a fully blind computer user using Mac OS 10.9. In order to access a computer, I use a screen-reader called VoiceOver, which reads on-screen text using synthetic speech. This software is already part of Mac OS, and can easily be enabled on any Mac by pressing Command+F5. Unfortunately, the Mumble GUI has been designed in a way that VoiceOver is unable to read any window content and will simply say 'unknown' within the Mumble program. No controls, labels, or any other UI elements are currently visible to VoiceOver, making it impossible for blind users to utilize this great VoIP software. The main issue is most likely the QT framework. Unfortunately, QT isn't very friendly in regards to accessibility, however in recent versions this has been improved with more accessibility-related properties becoming available to developers. Please, would it be possible to investigate this further and possibly (hopefully) implement some degree of accessibility? Many thanks!
Thank you very much for taking the time to report this.
We want to improve the accessibility of Mumble, and specific reports like these are very helpful.
With 1.3.0 we are switching from Qt 4.8 to Qt 5.
Related Qt documentation:
- http://qt-project.org/doc/qt-4.8/accessible.html
- http://qt-project.org/doc/qt-5/accessible.html
Hi Jan, that sounds very good to me! Are there any early builds available that utilize the newer QT version and related accessibility fixes? Thanks!
You could install a 1.3.0 Snapshot and see if the move to Qt 5 itself changed anything. I wouldn’t bet on it though. Not sure what kind of improvements you were referring to with “newer Qt versions got better”.
I'm testing with the windows 8.1 built in screen reader and it seems to read everything fine using the latest snapshot (1.3.0~343~gc0d7aad)
Note that there is not a Qt 5-enabled build available for OS X yet. The build is currently failing. This is because the parts of the build that tries to build products for a specific architecture doesn't work quite the same in Qt 5.
Hi Mikkel, thanks for the info regarding the QT build for OS X! I do think this should improve a lot once Mumble for OS X uses QT5. I’ve seen some programs that have been updated to QT5, which led to those programs being much more accessible. For example, the official Bitcoin client was totally inaccessible prior to QT 5. Now, it uses QT 5.2.1 and has become much more accessible because of that (I don’t think the Bitcoin devs have done a lot of accessibility work themselves). While it could still be necessary to tweak certain things after the QT 5 upgrade, I think things will get a lot easier than they are at this time. So, it would be very kind if you could update this ticket once an OS X build using QT 5 is available, thanks a lot! Robin
Will do.
I expect it to be available within the next 24 hours.
Qt 5 build now available:
Download: http://mumble.info/snapshot/Mumble-1.3.0~344~g19996c5~snapshot.dmg PGP sig: http://mumble.info/snapshot/Mumble-1.3.0~344~g19996c5~snapshot.dmg.sig
Hi Mikkel, I’ve just tested the QT 5 build and am happy to confirm that accessibility is now much better than before! It’s actually possible to access GUI contents with VoiceOver, and it seems like most elements have proper text labels. However, there are also parts that are currently inaccessible / unusable. For example, in the connection window it’s not possible to choose any servers and establish a connection. However, I was able to use the ‚Add server‘ button to enter a server and port manually, and afterwards I was able to connect just fine. However, after connecting there wasn’t too much I could do - for example, I was unable to select any channels or talk to anyone… :-( So, it definitely looks much better now with QT 5, but it seems like some coding would be necessary to incorporate more accessibility-related functionality. At this point, it looks like many things are usable with VoiceOver, but not enough to effectively use it for communication. Thanks for the effort so far, it would be extremely wonderful if this could be worked on over time!
Thank you very much for the accessibility support so far, especially now that Mumble is becoming the only viable crossplatform self-hosted voice chat solution!
Under Windows (both x86 and 64) the latest available Mumble snapshot seems to have a qt-related bug, where it makes the caller application crash when closing a window. This is related to the QT accessibility support and it only happens if a screen reader is running. The crash can occur, for example, if the server window is closed, either by hitting the cancel or the connect buttons. This makes it impossible to connect orto use Mumble under Windows with access technology. As a solution, upgrading to QT 5.3 or higher might fix the issue as it was the case with a similar voice chat application which also uses QT 5. The following is a crashdump using the x86 version on Windows 8.1 using the open source NVDA screen reader. https://dl.dropboxusercontent.com/u/2870116/mumble.dmp
Another minor issue is that Mumble's chat input field blocks the tab or shift+tab keys from navigating away from the textbox, essentially making the user unable to navigate back to the channel tree, or to other controls in the window. I understand that the tab key is used for name completion, however a way should be provided to navigate away (e.g. ctrl+tab).
Please let me know if I should make separate tickets, in case you'd like to deal with these on a per ticket basis.
Hi, since quite a lot of time has passed since I opened this ticket, I just wanted to ask whether accessibility-related work is still in progress… I just tested the latest development snapshot, 1.3.0~511~ge469bd6~snapshot. I discovered that the initial audio assistant was mostly accessible, and I could go through that and make adjustments without too much trouble. However, once in the main window I discovered that connecting to a server is pretty much impossible, as most of that window is inaccessible… I managed to connect to a server with much trial and error, but once connected I couldn’t do anything… I think I could read 1 or 2 channel names, but that was it… The menu war items are fully accessible though, so maybe if the connection window cannot be made accessible, it might be an idea to put an option in there that brings up a simple window for the IP / hostname, port and user name, and will automatically connect to the server once those fields have been filled and submitted… The same could perhaps be done for the channels, offer a text field where a channel name can be entered which will then join that channel and allow the user to speak with other connected users… Still wouldn’t be a perfect solution, but it would at least make Mumble more usable for screen reader users. Thanks! Robin=
This is still a big issue with the newest dev builds, unfortunately (using "Mumble-1.3.0~939~ge074953~snapshot"). The server connection window is still inaccessible (and I expect the rest of it is similar to Robin's experience).
I'm new to the Mumble codebase, Qt development, and OS X in general, so I'm probably not going to be much help, but I'm going to take a closer look and see what can be done. Please don't expect much though! If someone with more experience than me wants to take a look into this, please do - it's really causing issues.
Hi Sophira, thanks for your response and for confirming the issues! I’ve also looked at dev builds from time to time and I’m aware of the issue with the connection window. However, unfortunately that’s not the only problem! I once received help from a sighted friend who connected me to a server, unfortunately I then found that there was pretty much nothing that was accessible afterwards. So, while an accessible connection window would certainly be a step in the right direction, this sadly wouldn’t really make Mumble more usable for us. Making Mumble more accessible would require greater commitment to this issue from the core devs, however if we look at the fact that this issue has been open for almost 2 years without any noteworthy improvements to Mumble, it is clear that this commitment is clearly lacking. Best regards, Robin