Best Practice and HowTos for adding accessibility related information to applications?



Dear readers,

on the route to implementing automated UI tests in Sugar [1], I'm
currently working on providing additional information about widgets to
accessibility tools. Unfortunately, while I got the basic technology up
and running, I'm not having much luck at identifying _what_ information
I should expose and in what _form_. The only document that contains at
least some minor hints is the "GNOME Accessibility Developers
Guide" [2], but all it does is mention two examples [3,4] for
descriptions and roles. The ATK Best Practices wiki page [5] might have
been what I'm looking for, but it's just a list of things that _should_
be documented, rather than the documentation itself.

Is there any document I missed and that would tell me what attributes I
should add to the widgets used in Sugar and what values to give them?

Some concrete questions I already have:

1. Which attributes should be translated?

   Gnome#525226 has some discussion about whether accessibility-name
   and / or accessibility-description should be translated, but there's
   no conclusion.

   What parts of the ATK API should be filled with english texts and
   what parts should be filled with translated texts? How should
   automated tools (e.g. test suites) discover elements and what texts
   should tools for users (e.g. screen readers) present to the user?

2. How should accessible-name and accessible-description be worded?

   The only hint I could locate were two examples [3,4] for
   accessible-description: "Opens Preferences dialog" 

   Like with other parts of the UI, consistent wording is important to
   users. If different applications use different tense or different
   style (active/passive etc.), users can get confused. This is even
   more true for users with disabilities. Tools (like the test suite I'm
   going to work on) OTOH can easily cope, they only care about syntax
   (i.e. string literals), not semantics.

3. What attributes other than accessible-name, accessible-description
   and accessible-role are usually important to users and what values
   should they have?

4. The description of most attributes on AtkObject [7] is pretty
   weird. It says the properties are "used to notify that the
   [attribute] has changed". What does that mean? I would expect signals
   to be used for change notification, not properties. Do I need to do
   anything about those or will GTK already handle that for me in all
   cases?

Sascha

[1] https://wiki.sugarlabs.org/go/What_is_Sugar%3F
[2] http://developer.gnome.org/accessibility-devel-guide/3.0/index.html.en
[3] http://developer.gnome.org/accessibility-devel-guide/3.0/gad-coding-guidelines.html.en
[4] http://developer.gnome.org/accessibility-devel-guide/3.0/gad-api-examples.html.en
[5] https://live.gnome.org/Accessibility/ATK/BestPractices
[6] https://bugzilla.gnome.org/show_bug.cgi?id=525226
[7] http://developer.gnome.org/atk/stable/AtkObject.html
-- 
http://sascha.silbe.org/
http://www.infra-silbe.de/

Attachment: pgpKCr4UXNCEj.pgp
Description: PGP signature



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