Re: [g-a-devel] How does at-spi communicate with gail ??
- From: Bill Haneman <Bill Haneman Sun COM>
- To: Vamsi <krishna vamsi wipro com>
- Cc: gnome-accessibility-devel gnome org
- Subject: Re: [g-a-devel] How does at-spi communicate with gail ??
- Date: Thu, 16 Mar 2006 13:17:21 +0000
It sounds as is you are getting some familiarity with the code and
architecture - great!
I am not sure that I would agree with your last statement "Event
listeners are the main interface to interact with the gail". I believe
that the accessibility hierarchy is equally important. If you look at
Accessibility_Registry.idl you will see that the currently loaded
accessible applications can be listed by querying the Registry, and each
application has a 'root' Application object (atk_get_root()) which is
the parent container for a tree of Accessible objects (AtkObjects, when
seen from the in-process persective). These objects represent the
various user interface elements of the live application, and assistive
technologies can interact with them directly and programmatically via
AT-SPI. Such AT-SPI requests are implemented by 'gail' implementation
code, after having been converted from the out-of-process AT-SPI calls
into in-process ATK calls by the atk-bridge.
Try checking out cvs module "at-poke" and running it with some
applications; this should help familiarize you with the interfaces and
On Thu, 2006-03-16 at 10:31, Vamsi wrote:
> Hi Bill Haneman,
> Thank You for the Fast response and sorry for the late reply :-) , i
> had to dig into the code to get some understanding....and putting the
> same in words...
> 1. When export GTK_MODULES=gai:atk-bridge
> From Gail :
> Module gets initialized with gtk_module_init of the gail, this will in
> turn call the gail_accessibility_module_init which will register with
> the registry for what widget or what widget type which function to be
> called with the help of
> atk_registry_set_factory_type( get_the_registry, widget_type,
> From atk-bridge:
> Module gets initialized with gtk_module_init, this will call the
> atk-bridge_init and this will initialize the bonobo and registers the
> applications and activates the event listeners.
> Bonobo inturn activates the at-spi.
> I have some vague idea here.. please correct me if i'm wrong
> Even listeners are the main interface to interact with the gail, these
> listeners are connected with spi functions which converts the ATK
> objects into Accessible objects and sends them to the at-spi throguh
> bonobo/corba, i mean Accessible objects are sent accross to at-spi with
> like corba objects.
> Thank You.
> Bill Haneman wrote:
> >Hi Vamsi:
> >The atk-bridge contains the answer to both of your questions. It is
> >both the service which adapts the in-process ATK interfaces (implemented
> >by gail) to the out-of-process AT-SPI interfaces, exported via CORBA
> >IPC. If you look closely at at-spi/atk-bridge/bridge.c, you will see
> >where the connections take place.
> >It is also the code which registers each application with the
> >at-spi-registryd Registry service, when the application initially starts
> >up, via gnome_accessibility_module_init().
> >Here's a process-space diagram showing how apps, the AT-SPI registry,
> >and assistive technologies communicate:
> >On Tue, 2006-03-14 at 22:58, Vamsi wrote:
> >>Hi List,
> >>I'm trying to understand how the accessibility works !! i have some
> >>doubts regarding the same.
> >>1. How does the at-spi, atk-bridge and gail communicate with each other.
> >> do they corba(bonobo) to communicate, if yes i have not seen any
> >>corba related code in gail then how it is passing the info to at-spi
> >>along with atk-bridge ??
> >>2. When we launch an application on the desktop how does it registers
> >>itself with at-spi registryd. how the communication is getting
> >>transferred from application to at-spi ??
> >>Thank You.
> >>Gnome-accessibility-devel mailing list
> >>Gnome-accessibility-devel gnome org
> Gnome-accessibility-devel mailing list
> Gnome-accessibility-devel gnome org
] [Thread Prev