We are happy to give you a release of the Qt Accessiblity bridge for Linux. The bridge provides the platform integration with the platform’s accessibility interface. It is still tagged as alpha but works surprisingly well here, so we’d like to get feedback from you.
The biggest change compared to earlier version is improvements in the way DBus is used. This leads to huge improvements when it comes to memory and cpu.
In order to play nice and make Qt applications accessible we chose to implement AT-SPI2 which is used by GNOME so that Qt, KDE and GNOME applications will be accessible in the same way with the same tools. The first goal is to get a nice experience with Orca, the GNOME screen reader.
Get it:
You need a working AT-SPI2 stack on your distro of choice. Chances are that there are packages. You probably need packages like at-spi2-core, at-spi2-atk, python-pyatspi2 and Orca (screen reader).
It may be required to tell GNOME to switch over to using at-spi2 instead of 1.
gconftool-2 --set /desktop/gnome/interface/at-spi-dbus --type bool true
gconftool-2 --set /desktop/gnome/interface/at-spi-corba --type bool false
For GNOME apps to be accessible you may need:
export GTK_MODULES=gail:atk-bridge
Once you have the GNOME apps working, get Qt up and running:
Use Qt from gitorious and make sure to use the 4.8 branch.
Install the bridge from gitorious, use the master branch.
In order to let Qt load the bridge you need to export an environment variable:
export QT_ACCESSIBILITY=1
And voila! Orca should now happily read Qt applications
If you find things that don’t quite work yet (such as expanding tree cells being rather not very reliable), head over to bugreports.qt.nokia.com and file a bug.
Related posts:
Congratulations for that achievement. Amazing work!
Good job Frederick ! It’s a step forward for having a freedesktop accesible
Awesome work! Can’t wait to get support for this into simon as well!
bla bla bla. I wish I could see any progress toward windows development improvement
@David: There were several Windows fixes due to this work on Linux. We are getting this to work on all platforms. Consider that accessibility was not there on Linux at all. I think this is a great improvement for Qt Accessibility which will work on all platforms now. Of course there is some Windows work left to do
@Frederik, sorry friend, we have nothing to say except thanks for your work (which we get for free
). I just feel a bit discomfort for the fact that Windows, which has the largest market share, users and devs gets the least attention from Qt devs.
Forget it, just my thoughts
BTW, I acknowledge that, unfortunatelly I have never commited any kind of work to Qt, but not because I’m too lazy, but because I lack required C++ skills.
Improving the accessibility on Linux is allways a good thing. David is right in that QT is still quite inaccessible on Windows. e.g. we were unable to get a table control to work properly with NVDA. Maybe I could help improving accessibility in QT but how?
@Heiko yes, we would love to improve table support on windows. I implemented IAccessible2 table2 for Linux. We started an experimental IAccessible2 implementation for Windows which needs more work. If you are interested in contributing and checking out this work send me a mail or join #qt-labs on freenode (my nick is fregl).
Great work, thanks!
Where can we expect proper release (and not only git snapshots)?
Hi Frederik!
Let me say: great job! =)
1) I have been developing a dictionary application where I would like to use text-to-speech functionality.
Are there plans for text-to-speech classes in the Qt Accessibility project ? It would be a better approach than using low-level festival, espeak and other libraries.
2) Are there any plans to get things merged back from the KDE accessibility project ?
Thank you again!
@Rezza: the bridge currently depends on Qt 4.8. So a release makes more sense when we will also release 4.8. Also there are issues to be expected, so I would like to not say this is the official final release.
@Laszlo: currently there are no plans for text to speech. We coordinate with KDE though and they have Jovie as text to speech solution and Simon for speech to text. Also speech dispatcher is a project to abstract the different synthesizer apis.
What would you like to see merged from KDE Accessibility?
This is an awesome step forward for Linux accessibility. I cannot wait to use apps like Virtualbox, and not have to depend on the command line. Good work Frederick.