X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fat-spi2-atk.git;a=blobdiff_plain;f=README;h=c46a5962c40cbb04d8fb37681a8d544f6370c0fd;hp=5ef9ea25592f6e44cb461f30282eec867bb1ace3;hb=b86f97047caa9b20f4838186f34c8fa90094e90c;hpb=c77c8ca3303474b0bc17aa4ca46ef1ff7fa4dc2c diff --git a/README b/README index 5ef9ea2..c46a596 100644 --- a/README +++ b/README @@ -1,8 +1,10 @@ -README +at-spi version 1.9.0 -at-spi version 1.6.0 +This version of at-spi requires atk 1.17.0 or later. -*** Welcome to the Gnome Accessibility Project! *** +This version of at-spi is a MAJOR break from previous versions. +It has been completely rewritten to use D-Bus rather than +ORBIT / CORBA for its transport protocol. If you have not already done so, please visit @@ -15,37 +17,44 @@ Contents of this package ================================== The directories within this package are arranged as follows: - idl : this directory contains the interface definitions + idl : This directory contains the interface definitions (in Interface Definition Language) for the accessibility support interfaces exposed by the AT central registry, accessible applications, and UI components. - Though IDL is often associated with CORBA, and this - implementation of the at-spi is CORBA-based, these - interfaces are not CORBA-specific, rather they define - the abstract "contract" between accessible application - and client assistive technology. - - Assistive Technologies will not normally be concerned - with the underlying implementation details of the IDL. - - libspi : this directory contains implementation-specific - code which connects the in-process ATK interfaces - (implemented by GTK+ and, potentially, by other - native-code UI toolkits) to the interprocess SPI. - It also contains implementation code used by the - central accessibility registry. These sources are - used to build libspi.so, a shared object library which - is used by accessibility clients and servers alike. - This interfaces exposed in this library are ordinarily - not directly used by AT, but are used by the C bindings, - thus AT must dynamically link to this library. - - registryd : this directory contains code specific to the + + This is possibly historic. The idl formed the basis + for the XML protocol definitions now located + in the directory "xml". + + xml : This directory contains XML documents describing + the D-Bus protocol in a subset of Telepathy XML. + + tools : Miscellaneous tools. Mostly for converting protocol + XML into D-Bus introspection, 'C' types and documentation. + + droute : Contains a framework for registering objects + with a D-Bus connection and for routing messages to + the implementing object. + + Used by the ATK adaptor. + + dbind : Library to ease making D-Bus method calls, contains + marshalling code to convert function arguments + and a provided D-Bus signature into a D-Bus message. + + Used by cspi. + + spi-common : Contains 'C' types derived from the D-Bus + protocol specification. These types are used by + both the registry daemon and the ATK adaptor. + Structures are mainly related to events. + + registryd : This directory contains code specific to the central accessibility registry, and the registry executable is built in this directory. - atk-bridge : this directory contains code that bridges + atk-adaptor : This directory contains code that bridges the at-spi to the GTK+ toolkit, and which is loaded at runtime by GTK+-based Gnome applications. The 'bridge' automatically registers GTK+-2.0 @@ -55,84 +64,9 @@ The directories within this package are arranged as follows: the registry to register handlers for specific event types. - cspi : this directory contains the C bindings for use by - ATs, and the code which adapts the implementation-specific - code to the C bindings API. The header file - "spi.h" contains the API declarations used by AT clients. - - tests : this directory should be called 'examples', since - it contains not only test programs, but examples - of how to use the AT-SPI. The sample program - "simple-at.c" is currently the primary example of - how the C bindings API should be used. - - docs : this directory contains documentation for the AT-SPI. - Documentation is currently limited to API documentation - for the C bindings API, and is built from sources - via the 'gtk-doc' system. - -Building the documentation ============================ - -Pre-built versions of the HTML documentation are available at -http://developer.gnome.org/projects/gap/tech-docs/at-spi-docs/book1.html. -However the documentation in the docs directory is the most up-to-date. -Building the docs requires docbook and jade, see the 'gtk-doc' -package (from Gnome CVS) for more information. - -Use of the AT-SPI ====================================== - -Accessible applications will register with this registry service -(via bonobo-activation) and adaptive/assistive technologies will -register with the service as well, to indicate their interest in -receiving UI events. ATs can also use the registry's services -programmatically to query accessible applications. - -Running the test programs: ============================ - -At the moment the only clients and are two test at clients -('at' and 'simple-at'). There is also a test app ('app) in -the 'tests' subdirectory. - -If you have a working ORBit2/bonobo-activation installation you can -run the tests after adding the registryd directory to the -bonobo-activation directory list with bonobo-activation-sysconf, -or by installing Accessibility_Registry.server in your -bonobo-activation 'servers' directory. - -You can then run './at' and './app' from the 'test' directory, to see -'app' register as an application, and 'at' as a listening client. -Bonobo should take care of the job of bootstrapping the registry daemon -('registryd') for you. These test programs use the bonobo/CORBA -C bindings directly. - -The third test program, "simple-at", is a better illustration of how -most actual AT should use the at-spi, via the C bindings library -(documented online at -http://developer.gnome.org/projects/gap/tech-docs/at-spi-docs/book1.html). -Though 'simple-at' will work with the test application 'app', -a better demonstration of the AT-SPI can be made after installing -libspi and libcspi (via 'make install'). If you set the GTK_MODULES -environment variable to "gail:atk-bridge", any GTK+2.0 -application run subsequently will register with the at-spi registry, -and 'simple-at' will register for and receive focus and -buttonpress events from those applications. - -At the moment application and at deregistration are not 100% reliable, -so if you get you are advised to kill the registry daemon if you exit either 'at' or 'app' -instances, via the 'bonobo-slay' command. You may run as many instances -of each application or sample AT client as you like, concurrently - -you may find it useful to do so in separate terminal windows. - -'at' connects to the registry as an event listener, then queries the -service for the number of virtual desktops (currently always 0 or 1), -and queries each desktop for the accessible applications it is running. -It then prints out the name of each such application (as reported by the -application's accessibility interfaces), and then waits to receive events. - -'app' connects to the registry as an application, then dispatches an -event which the registry should relay to all registered listeners. -Thus instances of 'app' run after 'at' should cause the 'at' instances -to receive events. - - --Bill + cspi : The client (AT) side interface - 'C' bindings. + + registryd : The registry daemon code. The registry daemon + keeps a register of accessible applications and presents + this to clients (ATs). + It is also responsible for delivering device events.