Accessibility review of Ubiquity

Registered by Jason Warner

So, with the ongoing work to make unity more accessible, and to make the whole accessibility experience better, one area that hasn't been given enough attention is the installer. Given that it uses webkit for the slideshow, and has some nice looking, but not 100% accessible layouts, users often get confused about what the installer is asking them, and in the case of Orca, they need to review the entire window to get an idea of where they are. Added to that, some labels aren't tagged properly in the backend for accessibility purposes.

Since ubiquity will likely be moving to pygi/gtk3, this is a good time to go over it, and add more atk code where its needed to make things work better. If we can also do something to make the slideshow available somehow, that would also be useful.

Blueprint information

Luke Yelavich
Needs approval
Series goal:
Accepted for oneiric
Milestone target:
milestone icon ubuntu-11.10-beta-1
Started by
Luke Yelavich


Work items (oneiric-alpha-2):
[themuso] Contact design to find out about whether they would want the presence of the accessibility profiles to be visually indicated: DONE
[themuso] Contact design to get their preference as to whether we play a sound at the maybe-ubiquity screen, or whether we wait for a period of time, and then speak information regarding the activation of accessibility profiles in all of espeak's supported languages: DONE
[themuso] Refactor casper accessibility profile scripts to be callable from ubiquity running in the live FS: DONE

Work items (oneiric-alpha-3):
[themuso] Come up with a list of keyboard shortcuts to launch the lesser visual imparement, moderate visual imparement, blindness, and Braille accessibility profiles, and run them by design: DONE
[themuso] Enlist help from Evan and design to create a new dialog box, to set up Braille displays that connect via serial/bluetooth: POSTPONED
[themuso] Write the backend code to set up brltty with the selected options from the new Braille setup dialog box: POSTPONED

Work items:
[themuso] Refactor accessibility code in ubiquity-dm to start at-spi-registryd (from at-spi2) at the maybe-ubiquity screen: DONE
[themuso] Contact the GNOME accessibility community to ask about mouse gesture suggestions for enabling the motor imparement profiles: POSTPONED
[themuso] Implement launching of accessibility profiles using gestures/keyboard shortcuts in GTK and QT UIs: POSTPONED
[themuso] Implement access to indicators via the keyboard: POSTPONED
[themuso] Enable accessibility and caret navigation for ubiquity's webkit slideshow display: DONE
[maco.m] Check widgets in QT ubiquity UI, and enable them for accessibility if necessary: POSTPONED

Braille UI improvement WIs postponed. The whole way that Braille/Brltty works with the user session really needs an overhaul, and its not likely to be done any time soon, or even for the LTS, however its something I would like to tackle in the not so distant future. Braille stuff currently runs as root which is somewhat unsafe, and leaves a socket open to everybody. So in short, Brltty needs to be brought into the per-user session world before we consider writing nice UIs, since we will only have to write them again in another part of the system later.

Meeting notes:
Majority of installer is accessible except for the "Prepare" screen (where asked about updates/power/etc)
  - timezone window as well -- doesn't read popout for different cities with same/similar names if typed
 - better "accessible name" settings would be nice too, rather than reading the variable names (maco & Cheri have started on this)
Changing way of accessing accessibility profiles - run by design for a way to indicate that mouse gestures are available for pointer users
How do we let the user know that we are at the point to enter the shortcut?
    Play drum sound at "try/install" screen
    How to get user to select their language

Slideshow is designed for visual users, may not be strictly appropriate for screen reader users
    Longer slide delay (or make sensitive to screenreader progress)
Set up Braille display from try/install screen too
Luke to look into getting to keyboard indicator
KDE frontend needs to pass on some info to the installed system to enable KAccessible by default


Work Items

Dependency tree

* Blueprints in grey have been implemented.