Re: Accessability Interfaces

Out of interest do assistive technologies (AT) get to use an API or library (similar to ATK for the server applications) or do they use direct CORBA calls?
AT is very unlikely to use a particular GUI for any UI they present as that UI has to be accessible.

Steve Lee

On 11/8/06, Bill Haneman <Bill Haneman sun com> wrote:
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

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
> specific?
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

Best regards,

> Ian
> ------------------------------------------------------------------------
> _______________________________________________
> gnome-accessibility-list mailing list
> gnome-accessibility-list gnome org

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

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