|
Packit |
1470ea |
|
|
Packit |
1470ea |
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" type="topic" id="tech-atk" xml:lang="it">
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<info>
|
|
Packit |
1470ea |
<link type="guide" xref="tech" group="atk"/>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<revision pkgversion="3.0" date="2011-04-05" status="candidate"/>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<credit type="author copyright">
|
|
Packit |
1470ea |
<name>Shaun McCance</name>
|
|
Packit |
1470ea |
<email its:translate="no">shaunm@gnome.org</email>
|
|
Packit |
1470ea |
<years>2011–2012</years>
|
|
Packit |
1470ea |
</credit>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<include xmlns="http://www.w3.org/2001/XInclude" href="cc-by-sa-3-0.xml"/>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<desc>Accessibility toolkit to implement support for screen readers and
|
|
Packit |
1470ea |
other tools</desc>
|
|
Packit |
1470ea |
</info>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<title>ATK</title>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
Accessibility is the process of ensuring your application can be
|
|
Packit |
1470ea |
used by people with various disabilities. Disabilities come in many forms:
|
|
Packit |
1470ea |
visual impairments, movement impairments, hearing impairments, cognitive
|
|
Packit |
1470ea |
and language impairments, and seizure disorders. Many people have some
|
|
Packit |
1470ea |
sort of disability, and making your application accessible will allow
|
|
Packit |
1470ea |
more people to use it effectively, even if they are not disabled.
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
GNOME provides support for accessibility devices using the ATK framework,
|
|
Packit |
1470ea |
which stands for Accessibility Tool Kit. This framework defines a set of
|
|
Packit |
1470ea |
interfaces to which graphical interface components adhere. This allows, for
|
|
Packit |
1470ea |
instance, screen readers to read the text of an interface and interact with its
|
|
Packit |
1470ea |
controls. ATK support is built into GTK+ and the rest of the GNOME platform,
|
|
Packit |
1470ea |
so any application using GTK+ will have reasonable accessibility support for
|
|
Packit |
1470ea |
free.
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
ATK solves the problem of plugging many different kinds of widgets (text
|
|
Packit |
1470ea |
entries, text areas, buttons, menus) with many different types of accessibility
|
|
Packit |
1470ea |
technologies (screen readers, braille displays, sip-and-puff control devices).
|
|
Packit |
1470ea |
Instead of writing NxM interfaces, from each widget to each accessibility
|
|
Packit |
1470ea |
device, one just has to expose a widget through ATK's interfaces.
|
|
Packit |
1470ea |
Accessibility devices will in turn use these interfaces to query accessible
|
|
Packit |
1470ea |
widgets. For example, an aural screen reader and a braille display will both
|
|
Packit |
1470ea |
use a standard "get the text contents" interface in ATK for all widgets with
|
|
Packit |
1470ea |
textual information.
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
Nonetheless, you should be aware of accessibility issues when
|
|
Packit |
1470ea |
when developing your applications. Although GTK+ interfaces provide
|
|
Packit |
1470ea |
reasonable accessibility by default, you can often improve how well
|
|
Packit |
1470ea |
your program behaves with accessibility tools by providing additional
|
|
Packit |
1470ea |
information to ATK. If you develop custom widgets, you should ensure
|
|
Packit |
1470ea |
that they expose their properties to ATK. You should also avoid using
|
|
Packit |
1470ea |
sound, graphics, or color as the sole means of conveying information
|
|
Packit |
1470ea |
to the user; have redundant ways of providing this information instead of
|
|
Packit |
1470ea |
relying on the user being able to perceive a particular medium.
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
The GNOME desktop ships with a number of accessibility tools which enable
|
|
Packit |
1470ea |
users with disabilities to take full advantage of their desktop and
|
|
Packit |
1470ea |
applications. Applications that fully implement ATK will be able to work with
|
|
Packit |
1470ea |
the accessibility tools. These include a screen reader, a screen magnifier, an
|
|
Packit |
1470ea |
on-screen keyboard, and <app>Dasher</app>, an innovative predictive text entry
|
|
Packit |
1470ea |
tool.
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<list style="compact">
|
|
Packit |
1470ea |
<item><link href="http://developer.gnome.org/accessibility-devel-guide/">GNOME Accessibility for Developers</link> </item>
|
|
Packit |
1470ea |
<item><link href="https://developer.gnome.org/atk/stable/">ATK Reference</link> </item>
|
|
Packit |
1470ea |
</list>
|
|
Packit |
1470ea |
</page>
|