11

Jonathan Ridell said in a blog post that there were accessibility problems with Qt. I would just like to know what those problems are. Thank you very much and keep up the excelent work. Ubuntu Rocks!

3 Answers 3

3

I haven't done any development in Qt, but my gloss on the subject of accessibility there is that the concern might be a bit overblown. My understanding is that while GTK has built-in ATK support, Qt has to use a 'bridge' component to tie its native system to the accepted Linux accessibility framework.

Update -- I might have been premature in calling this issue overblown. For instance, as user9237 says, it doesn't look like AT-SPI was really ever implemented. So the trolltech doc quoted looks to be a bit "optimistic" . Here is an interesting blog post, unfortunately still a bit old, covering a lot of these issues : Qt/KDE and the state of free accessibility.

Here's Mark Doffman's code site for Qt AT-SPI. Of which he says,

This project is a Qt plugin that bridges the QAccessible API’s to the AT-SPI 2 protocol enabling Qt applications to be used with Orca, Accerciser, and GOK.

The possibly bogus Trolltech/Nokia link:

Here's what Qt docs say about Qt accessibility (from trolltech/nokia):

Accessibility support in Qt consists of a generic interface, implemented for a technology >on each platform: MSAA on Windows, Mac OS X accessibility on the Mac, and Unix/X11 AT-SPI >on Linux. Qt's accessibility interface closely follows the MSAA (Microsoft Active >Accessibility) standard, which most clients support. Other technologies used by Qt >provide similar functionality.*

A slightly newer document gives an overview of Qt accessibility.

By contrast, here's a quick run-down on accessibility interfaces from the Gnome project:
GAIL (GNOME Accessibility Implementation Library) is an implementation of the accessibility interfaces defined by ATK. GTK is a toolkit which is already mapped to ATK by the GAIL module. License, download and other information can be found here. The GAIL source code also serves as an excellent tutorial for advanced ATK usage. In addition, you may be interested in the GAIL Reference Manual.

2

The quote in the first answer seems incorrect http://doc.qt.nokia.com/latest/accessible.html

"Qt supports Microsoft Active Accessibility (MSAA) on Windows and Mac OS X Accessibility on Mac OS X. On Unix/X11, support is preliminary."

AT-SPI support was never implemented for Qt on Linux (because it would require writing CORBA bindings). dbus AT-SPI is now available and could be implemented if someone had the time, sadly nobody has so far.

1

Accessibility on Linux used to be a problem for Qt due to the AT-SPI support requiring CORBA.

This is now fixed: starting with Ubuntu 11.10, Qt comes with accessibility support based on the dbus AT-SPI. Accessibility is available for classic QWidget-based applications as well as QML applications.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .