Re: [orca-list] Java applications with Orca?



Hi Krishnakant:

On Monday 25 January 2010 06:57 PM, Willie Walker wrote:
Correct -- the Java Access Bridge for GNOME (JABG) talks to the AT-SPI infrastructure directly using the Java platform bindings for CORBA. With the Bonobo/CORBA dependency being planned for removal from GNOME projects, JABG will also go away. In it's place is a new layer known as the Java ATK Wrapper (JAW -- no pun intended).
So can it make java accessibility on swing based apps as accessible as the gtk apps implementing atk?

There are kind of three aspects to this: 1) the Swing toolkit itself, 2) the layer to the bridge, and 3) the assistive technology.

At a very high level, the Swing toolkit and GTK+ can be viewed quite similarly. When it comes to more detail, however, we might be dealing with different object models (comboboxes leap to mind) and different event models or ordering. We face similar issues when dealing with other toolkits, such as those provided by Firefox and OpenOffice.

Then, there's the layer to the bridge. The Java Access Bridge for GNOME speaks with CORBA directly. Assuming a bug-free layer in the Java platform's CORBA implementation, this wouldn't be so bad. Unfortunately, there are bugs, and these bugs were bad enough so as to hinder progress on developing reliable support in Orca (the assistive technology). Furthermore, the bugs in the Java CORBA implementation are rather elusive and, after spending countless hours trying to find them, we never were able to resolve the problem. Nor were we able to make effective workarounds in the Orca scripts for Java Swing.

With the Java ATK Wrapper (JAW), we've managed to isolate the problems into things that we can more easily debug and control.

Now, that leaves a script for Orca. If the Swing toolkit's object and event models are quite similar to GTK+, then the script for Orca will remain rather simple. If either model differs, then we will need to fill out the Orca script adapt to the differences.

JAW talks to the ATK layer of the AT-SPI, with the net result being that the IPC mechanism (CORBA, D-Bus, etc.) will be handled by the bridge mechanism used by ATK. With GNOME 2.28.x and earlier, ATK bridge used CORBA. For GNOME 2.30 and later, we're planning on moving to D-Bus.


Using this, how stable is the current status of that project?
I am interested to try some swing based apps?
I would like to know if there are any pitfalls.

It's coming along well. There are still some issues -- you are definitely welcome to experiment and help us identify issues.

Thanks!

Will




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