Re: D-Bus replacement for AT-SPI Accessibility

Hi All:

The ditching of Bonobo goes beyond AT-SPI. It also has an impact on gnome-speech and gnome-mag. This is a fair amount of work to pull off and we currently have a dearth of resources to do the work.

We're not at the "uh oh, we're completely screwed" point yet, however. The good thing is that this is all technically solvable and we mostly need talented warm bodies to do the work.

I've had some back channel communications with a number of folks and I've started a WIKI page here: If we can get some agreement on what is needed and a high level idea for how to do it, we can then start scoping out the solutions and work to find people/funding for the work.

So, please take a look at the WIKI and comment. In addition, please also note that a lot of the AT-SPI/D-Bus organization is currently being done via the OpenA11y group of the Linux Foundation level. The main reason for that is that we're working to make AT-SPI the accessibility infrastructure for the entire desktop, regardless of which toolkit is being used (e.g., GTK+, Qt, etc.).


Andre Klapper wrote:
CC'ing gnome-accessibility-list.

This is a must-fix for GNOME 2.30/3.0 as ORBit and Bonobo will be
removed (as already written).

It would be great if this could be discussed in the a11y community and
if you (plural) could come up with a plan (technical + schedule) in the
next weeks (before 2.27.1) defining how to achieve this goal in the next
13 months.


Am Dienstag, den 17.02.2009, 11:34 -0800 schrieb Peter Korn:

Thank you for all of your work (and your continuing work) in this area.

In addition to the list you enumerate below, we should also include on the to-do list:
 - modifying the Java to AT-SPI bridge which uses CORBA
- validation against other AT / AT tools which use AT-SPI in one form or another - Dasher, accerciser


Peter Korn
Accessibility Architect & Principal Engineer,
Sun Microsystems, Inc.

Hello everyone,

For a long while now I have been working on a D-Bus version of the Gnome
accessibility framework, AT-SPI. The project has taken longer than
expected, but much of the functionality is now in-place.

As everyone knows ORBit and Bonobo have been on the deprecated list for
a long time. I believe that the accessibility framework is one of the
last hold-outs using the CORBA libraries, so I'd be interested in
feedback about using D-Bus AT-SPI in future versions of Gnome.

One of the major goals of the project was not to break API of the client
side libraries. These are the accessibility libraries used by ATs such
as Orca and GOK. The idea was to provide a seamless transition to D-Bus
for the existing accessibility code-base. This aim has been somewhat

So far an Atk-Bridge Gtk module has been completed, allowing ATK
applications to expose their accessibility information over D-Bus
AT-SPI. The pyatspi client side libraries have been completed and are
API compatible with the existing pyatspi library. The AT-SPI registry
daemon has also been translated to D-Bus.

Missing from this picture are the cspi client libraries used by GOK and
LDTP. Cspi bindings have been started by Mike Gorse, but I am not sure
if he will have the time to continue working on them.

There is still a decent amount of work to do in making D-Bus AT-SPI
ready for Gnome. As well as the CSpi issue there is a large problem
regarding object lifetime. The AtkObject and CORBA AT-SPI Accessible
interfaces expected remote reference counting of accessible objects. For
good reasons AT-SPI D-Bus removed remote reference counting meaning it
is not possible to access the children of some containers. The proper
solution to this involves defining new interfaces for exposing large
containers. There has been much discussion on g-a-devel regarding this,
but, as yet, there has been no resolution.

In the far future I would like to see changes to the client side
accessibility APIs. I'm not a fan of Cspi, its a Glib library that
unlike ATK is not GObject based. Pyatspi is a fine API, but both have
the problem that they make synchronous method calls to remote processes.
 Possibly causing deadlock, or forcing us to re-enter the main-loop.

My involvement in D-Bus AT-SPI is going to continue, but as funding is
not guaranteed in the future, my time on the project may decrease.

I would like to know:

How important is the removal of ORBit / Bonobo to Gnome plans?

When moving to D-Bus AT-SPI how amenable are people to killing the Cspi
(This is a nasty one. It would require major changes to GOK)

When moving to D-Bus AT-SPI how amenable are people to deprecating Cspi?

What do we need to do to get this in to Gnome 3.0?

I'm also looking for any suggestions as to how I can encourage other
people to help with this project. I think it could be important to
Gnome, and as already stated, I may not be able to continue working on
it full-time.

The repository is available at:

A page detailing the current status of the project and instructions for
testing is located at

The mailing list for the project is
accessibility-atspi lists linux-foundation org

desktop-devel-list mailing list
desktop-devel-list gnome org
desktop-devel-list mailing list
desktop-devel-list gnome org

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