Re: Accessability Interfaces

Ian Pascoe wrote:
Hi all

Some thoughts that have been kind of troubling me over the past.

There have been various postings in the past about compatability , or lack
of it, with various applications.  The most notable being that of Firefox
just recently.  In my ignorance, should the community be aiming to get those
projects that run and maintain development languages to provide the
necessary interfaces in the output so that the wheel doesn't need to be
re-invented each time for the application development projects?
Firefox is using ATK as its accessibility interface (or, rather, it is including ATK as its exported accessibility interface on Linux/Unix/Solaris). Because Firefox is cross-platform, and also needs to speak MSAA on the Windows platform, is uses a different accessibility interface based on something called nsiAccessible internally. However, by design, nsiAccessible maps rather well onto ATK, and ATK has been a major influence in the evolution of the mozilla-specific nsiAccessible interface.

To clarify - ATK itself is available on Windows, but it not a standard part of a Windows installation, so in that respect ATK is already "cross-platform". However, existing Windows assistive technologies use a mixture of Microsoft's MSAA and proprietary interfaces to do their job, so Firefox needs handle the export of its accessibility info differently on the two platforms. On Linux/Unix/Solaris, the information is exported via ATK. also uses ATK as its accessibility interface now. ATK is an "in process" interface, so in order for the ATK information to be available to assistive technologies it must be "exported" via some interprocess communication technology. AT-SPI is the standard interface for this, and a component called "atk-bridge" takes care of the details of turning in-process ATK calls into their equivalent AT-SPI equivalents.
I am aware that this is a GNOME list, but is the basic API used to drive
accessability the same that other projects are using or is it GNOME
In the above sense, this technology is not Gnome specific, since the same technique is used for Firefox,, and some other components such as recent RealPlayer and (I believe) recent versions of the Acrobat PDF reader.

However, the existing atk-bridge does rely on some "gnome technologies", i.e. it uses Gnome libraries which are present on most distributions but may be missing from some distros, for instance some KDE-centric distros.

KDE 4 is planning to support AT-SPI, but they wish to do so without using Gnome libraries or CORBA. This will take some effort to sort out, since it means sacrificing binary compatibility with existing AT-SPI implementations. I know they wish to do this in a way that preserves the functionality of existing AT-SPI clients like orca, LSR, GOK, Dasher, gnopernicus, as much as possible, but it is not clear when this work will be readily available.
Lastly, are the accessability modules like Orca specific to GNOME or will
they work cross GUIs?  I ask only out of curiosity as I'd like to try out a
few of the mainstream, and some of the backwater distros that are out there.
In theory orca could work with any distro which provides the necessary dependencies, and can work with other GUIs as well; however the distros need to do the work to make sure the necessary components are bundled and tested. ATK is not bound to any specific GUI toolkit - while it is a dependency of GTK+, it does not require GTK+ in order to work, so any GUI toolkit is free to implement ATK as Firefox and have done.

Best regards,


gnome-accessibility-list mailing list
gnome-accessibility-list gnome org

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]