[FWD: where to start with ATK?]



Hi:

I recently composed an email in reply to a developer who wanted to find
out how to ensure that his GTK+-based application was accessible.  Some
other readers of this list may find this information useful and may not
be aware of the links below, so I am forwarding the information.  Note
that I am BCCing a sun-internal list, so some non-members of the
accessibility lists may receive this email as well.

best regards,

Bill

----------------------
Hi Al:

You might try looking at the GNOME developer's site for more information
on GNOME/GTK+ programming generally

http://developer.gnome.org and http://developer.gnome.org/projects/gap
for more information on accessibility.  There is a document linked from
that page which explains in varying detail what's required to make
GTK+/GNOME applications accessible
http://developer.gnome.org/projects/gap/guide/gad/

Basically, if your app uses only stock GTK+ widgets and doesn't do any
specialized event handling or other unusual techniques, it should "just
work" with accessibility.  If on the other hand your application
contains custom widgets, you will need to do some work to make sure that
they appropriately support ATK; there is a presentation on this topic at
http://developer.gnome.org/projects/gap/presentations/GUAD3C/making-apps-accessible/start.html

If you really need to implement ATK for custom widgets, there's a more
recent paper given at this year's GUADEC which hasn't been posted yet,
but is available on request, so please ask if you need this information.

On the same projects/gap page there is a link to 'testing application
accessibility'.

To test, you ideally need to do a sort of application-test using the
"at-poke" (gnome cvs, module at-poke) to visualize the hierarchy your
application is exposing, and the "event-listener-test" tool (gnome cvs,
module at-spi, directory "test") to confirm that your application is
emitting the necessary events.  Unfortunately there is no comprehensive
guide to which events 'should' be emitted, you will need to do your own
analysis of what your application is doing and what events are
appropriate based on the event definitions in the ATK API documentation
(also available from GNOME cvs; if you build ATK with gtk-doc enabled,
you will get autogenerated API docs).

best regards,

Bill







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