OSGalaxy

published by dipesh on 2008-11-25 13:17:55 in the "Accessibility" category

For the case you, dear reader, are not subscribed to the KDE-accessibility mailinglist (tststs), we received a rather interesting mail just yesterday; Project Announce: AT-SPI D-Bus

That project is done by codethink and sponsored by Nokia and Mozilla (and Novell seems to be in there somehow too). Result will be (hopefully) also that each Qt- and KDE-application will be able to access optional the same accessibility-infrastructure like e.g. GNOME is using today. For this Qt4 provides the Qt Accessibility framework and the best; no additional work at the application-level is needed (well, with some exceptions as usual).

Yay, another good day Smiling

p.s. what's going on with freedesktop.org? Why does it take 6 month to provide an svn-account for that project and akonadi still waits for one since more then a year now iirc. Not enough admins or are the accounts managed using Active Directory?



> Read More... | Digg This!

published by richb on 2008-06-24 19:03:00 in the "Accessibility" category
Rich Burridge

The Daily WTF has an interesting post today.

A company had to relocate from the second to the first floor in their building. Unfortunately their server room couldn't be moved.

Here's the letter from building management explaining the situation:

Hi all.

As you all are aware, we have new tenants that have moved into the 2nd floor suites. The access to the server room is now via the women?s bathroom.

There will be a sign on the woman?s door that can be changed from OPEN to CLOSED and vice versa.

Should you need to enter the server room, please change the sign to CLOSED. Once you are done, please change it back to OPEN.

Once you enter the bathroom, you will be able to access the server room via the handicapped stall. Please close the stall door prior to entry, just in case someone doesn?t see that the bathroom is closed.

I know this isn?t ideal, but if we adhere to this protocol, I don?t think anyone will be disrupted.

Thanks! Let me know if you have any questions.

I have one. Do the AAPD know about this? If they don't, they will soon.

[]

[]



> Read More... | Digg This!

published by richb on 2008-06-09 13:25:25 in the "Accessibility" category
Rich Burridge

I got an Eee PC for my birthday; one of those with 1GB on memory and 8GB of "solid state" disk. I played around with the kiosk-mode Linux that came with it. I know you can fairly easily get out of that mode, but as I really didn't want to learn yet another version of Linux, I decided to install Ubuntu Hardy on it.

I upgraded my previous created Ubuntu Gutsy bootable thumb drive to contain Hardy. These instructions helped out (thanks Ryan). I did the:

$ sudo lilo -M /dev/sdd

at the end just to be safe.

There's still some problems:

  • Battery Monitor: "Battery may be broken: Your battery has a very low capacity (1%) which ..."
  • Wireless connection not working.
  • Microphone not working.
  • SD card reader not working.
  • Webcam not working.

but I'll leave them for another day. Hopefully this page should be a great help in fixing some of them.

For now, I've just hooked up the Eee to an external monitor, USB keyboard and mouse. I'm using a wired network connection and I've plugged in a nice set of speakers. I've also installed all the updates from the network repositories to get this up to GNOME 2.22.2.

I followed the Orca setup instructions and installed the nice Cepstral Callie voice, and voila! I have Orca running on yet another computer.

The potential here is that it's running on such a nice small portable machine though.

[]

[]

[]



> Read More... | Digg This!

published by richb on 2008-05-30 11:11:57 in the "Accessibility" category
Rich Burridge

Three accessibility related ones.

[]

[]



> Read More... | Digg This!

published by richb on 2008-05-28 18:13:29 in the "Accessibility" category
Rich Burridge

One of the things I like about working on Orca, is the challenge of trying to make a poorly designed application accessible to blind people.

Here's the bug. The GNOME lock screen application has started on the user's desktop. When they press any key, it invites them to type in a password. If they type in their password incorrectly, they will first see some text appearing in a label under the password text area saying "Checking...". Then this is replaced with some more text saying "Incorrect password." It then wiggles the dialog box from side to side a couple of times, then removes that text. It also clears out the password text area.

I mean, even if you are a sighted person and you'd wandered away from the screen for a few seconds, it's distinctly possible that you wouldn't have seen these messages and have any idea what happened.

For a blind person it's even worst. Nothing is spoken whilst this operation is happening (i.e. those labels don't get focus). Orca also has this feature called "flat review", where you can examine the contents of a window or a dialog component by component and see what their states are. That's not going to help here because the gnome-screensaver-dialog designers have decided that that useful information isn't needed after they've finished jiggling the dialog.

So what can you do? Well, we can write a Python script in Orca specifically for the gnome-screensaver-dialog application, to try to work around this. Every time the text caret is moved to (i.e focused in) the password text area, Orca gets an "object:state-changed:focused" event. This gets passed onto the onStateChanged callback in the Script class. In our gnome-screensaver-dialog script, we override the default behavior for that method.

Here's where the fun begins. Several other different types of "object:state-changed:..." events also arrive here, so we need to check that it's a "focused" type and the it's for a text area that has a role of "password text". Luckily there's only one of them in this application, so we don't need to get any more specific then that.

If it isn't an event we are interested in, we just pass it on to the parent class.

If it's an "object:state-changed:focused" event for the password text area, we walk back up the accessible component hierarchy for this dialog and get the parent of the parent of the parent of the object that had the event (i.e. the password text area). We know that that object has six children, and two of them are labels. Those are the ones we are interested in. So we iterate over the children and if it's a label and it has a name, then we speak the name. The name in this case will be set to "Checking..." and "Incorrect password" when those states occur.

It's hardly an exact science. It's yet another hack. This all works because we get a couple more "object:state-changed:focused" events at the right time and can extract this other information out. If the dialog is redesigned, and the hierarchy is no longer the same, then our script won't work. The real fix here would be to get the gnome-screensaver-dialog developers to redesign their code so that we didn't have to jump through hoops, but from past experience we don't always have the success we would like with this approach.

[]

[]



> Read More... | Digg This!

published by richb on 2008-05-01 07:24:53 in the "Accessibility" category
Rich Burridge

A couple of weeks ago, Maya, one of the xDesign folks at Sun, asked me if I'd like to be one of the contributors to the design @ Sun blog. In particular, blogging about accessibility related design.

I accepted. Today was my first post. As this is a serious topic oriented blog, they have a different setup that I do with my own blog. The potential posts are vetted and then scheduled to appear. It felt weird waiting about ten days for the post to see the light of day, but I guess I'll get used to it.

[]

[]



> Read More... | Digg This!

published by richb on 2008-04-25 14:22:34 in the "Accessibility" category
Rich Burridge

I've got an old Dell Dimension 8200 that's setup as a triple boot. As well as running Windows XP and Ubuntu Hardy, there is a partition available to install Solaris.

On Wednesday I burnt a copy of the OpenSolaris Developer Preview RC1 Live CD and installed that. I see that RC2 is now available. Doh!

(Serendipitously, the IPS network repository went live last night. This helped make life much easier and maybe even alleviates the need to do all of this again with RC2. Dunno).

Next I needed to download the Sun Studio 12 compilers. I just downloaded the compressed tarball (about 240 MB's), uncompressed it (about 950 MB's) and added a couple directories to my PATH and MANPATH. It sure would be nice if the compilers were packed with a finer granularity. I really don't want to have almost a gigabyte of stuff lying around if all I'm needing is a C compiler. Gnu compilers seem to have solved this problem.

Next I downloaded and installed the JDS CBE. From chatting with various folks on the #opensolaris IRC channel on freenode.net, I suspect I didn't need to do this. Anyhoo, I installed the SUNWhea and SUNWsfwhea package via the IPS network repository, then ran the CBE install script. I answered no for each of the extra packages it wanted to install for me, and then pointed it at the Sun Studio 12 C compiler that I'd just installed. This all seemed to install into /opt/jdsbld just fine. I added the /opt/jdsbld/bin directory to my PATH.

I then used svn to check out the latest Orca sources from SVN trunk and tried to run autogen.sh on it. This started to bitch because of missing pieces, so I ended up installing a few more packages from the IPS network repository (I don't remember all the names but they were for things like gnome-common devel, Gnu m4, Perl XML parser).

I was then able to successfully configure, build and install Orca (installing as root). When I ran Orca, it automatically went into setup mode and turned accessibility support on. I then logged out and back in again, and was able to run Orca.

With no speech.

This was because there was no sound. Before I started the operating system install, I ran the application that checks to see if all your hardware is supported. This complained that the driver for my sound card was missing. The sound device is an Ensoniq 5880 AudioPCI. One of the kind folks on #opensolaris suggested I try installing OSS. I then did just that, downloading the Solaris package and adding it and then rebooting. When it came back, I ran osstest and everything worked nicely.

I then installed a copy of Fonix DECtalk for Solaris, which I wanted to use as my text-to-speech engine.

After that, the next step was to check out the latest gnome-speech code from SVN trunk, and configure, build and install it. It found the DECtalk driver and when I restarted Orca, it burst into voice. Woo hoo!

I now have an OpenSolaris Developer Preview development environment for Orca.

[]

[]

[]



> Read More... | Digg This!

published by richb on 2008-03-06 17:56:29 in the "Accessibility" category
Rich Burridge

Something we've got to be thinking about soon is seeing what needs to be done to get Orca to run with Python 3.0, which is planned to be available in Auguest 2008.

So I thought I'd give it a try now with the current Python 3.0a3 download.

Building it was trivial:

  $ cd /home/richb/Python-3.0a3
  $ ./configure --prefix=/usr
  $ make
  $ sudo make install

Guido and team have even made the conversion trivial. There is a tool called 2to3 in the Tools directory that will do the refactor for you.

I checked out a clean copy of the Orca sources from SVN and converted it with:

  $ cd /home/richb/Python-3.0a3/Tools/2to3
  $ python refactor.py /home/richb/gnome/orca/trunk/src >/tmp/diffs

This generated about 115KB of patch diffs on standard out which I then applied to the Orca source code:

  $ cd /home/richb/gnome/orca/trunk
  $ patch -p0 </tmp/diffs

I then configured, built and installed Orca with:

  $ cd /home/richb/gnome/orca/trunk
  $ ./autogen.sh --prefix=/usr
  $ make
  $ sudo make install

As it was byte-compiling all the Orca Python modules it bitched about the following two problems:

orca.py", line 1306
    + Q_("option|main-window") + "]", end=' ')
                                         ^
SyntaxError: invalid syntax

orca_prefs.py", line 636
    os.close(os.open(initFile, os.O_CREAT, 0o700))
                                               ^
SyntaxError: invalid syntax

For the second one, it looks like "0o700" should be "o0700" but I couldn't work out what was wrong with the first one. The original code was:

    print "-e, --enable=[" 
        + Q_("option|speech") + "|" 
        + Q_("option|braille") + "|" 
        + Q_("option|braille-monitor") + "|" 
        + Q_("option|magnifier") + "|" 
        + Q_("option|main-window") + "]",

and it refactored it to:

    print("-e, --enable=[" 
        + Q_("option|speech") + "|" 
        + Q_("option|braille") + "|" 
        + Q_("option|braille-monitor") + "|" 
        + Q_("option|magnifier") + "|" 
        + Q_("option|main-window") + "]", end=' ')

According to the What's New in Python 3.0 web page, that seems okay. For now I've just removed the "end=' '" part and I have a successful install (with a minor run-time formatting error when you print out the usage message).

When I run Orca, everything seems to work fine. No tracebacks and Orca is happy brailling and speaking away.

What worries me is that when I check the version number of /usr/bin/python (which is the same binary as /usr/bin/python3.0) I get:

  $ /usr/bin/python3.0 --version
  Python 2.5.2

So I'm not convinced I've done everything correctly.

Still it was nice to know that the conversion should hopefully be fairly trouble free when we do it for real. I guess that comes from pylinting the code to within an inch of its life.

[]

[]



> Read More... | Digg This!

published by richb on 2008-03-03 09:12:03 in the "Accessibility" category
Rich Burridge

Lucas has just announced that the list of tasks in the GNOME Accessibility Outreach Program has now been published. If you are interested, consider signing up.

Interesting logo. It made me think of those Little Green Men Squeeze Toy Aliens that worship The Claw in Toy Story.

[]

[]



> Read More... | Digg This!

published by richb on 2008-02-27 07:00:40 in the "Accessibility" category
Rich Burridge

All accessibility related ones.

  • YouTube videos from India on Orca and Open Source Accessibility:

    Video #1

    Video #2.

    See the much more extensive commentary by Peter and Will on why this is great.

    Congratulations to Krishnakant Mane, (who is also an Orca community member) for his leadership in helping to bring free accessible solutions to India.

    Unlike Peter, I will comment on the start of the second video, which is a promotional video by ELCOT. There was a mail thread a little while ago on an internal bloggers alias about a post from a Sun employee that made you cringe. Well the start of this video (and the very end of it) made me cringe, but for a completely different reason.

  • GNOME Foundation Announces Program to Sponsor Accessibility Projects

    "BOSTON, Mass?February 27, 2008 ? The GNOME Foundation is running an accessibility outreach program, offering USD$50,000 to be split among individuals. This program will promote software accessibility awareness among the GNOME community as well as harden and improve the overall quality of the GNOME accessibility offering."

    Hopefully this will attract quality GNOME individuals. Those interested should check the project web site.

    (thanks Will).

  • Is Your Sidewalk Accessible?

    You learn something new every day.

    (thanks Calvin).

[]

[]



> Read More... | Digg This!

published by richb on 2008-02-21 13:42:16 in the "Accessibility" category

published by richb on 2008-02-15 09:04:36 in the "Accessibility" category
Rich Burridge

Over the last three or four weeks I've been triaging the huge number of GNOME accessibility bugs that we currently have. You can find the current list here.

It was even longer a month ago. There are several that have been closed out as they are no longer reproducible and, after a gentle prod, a few others have been closed as fixed using the patches that were attached to them (or a slightly modified version thereof).

But there are still a lot that remain. Here's the totals by product:

  1. orca
  2. gok
  3. gnome-themes
  4. Evolution
  5. atk
  6. at-spi gtk+
  7. nautilus
  8. gnopernicus
  9. metacity
  10. gnome-panel
  11. gnome-control-center
  12. epiphany gdm
  13. gnome-applet gnome-mag gnome-speech
  14. at-poke xscreensaver
  15. ekiga tracker vte
  16. gnome-media gtkhtml2 HIG
  17. gnome-desktop gnome-games gnome-screensaver GtkHtml rhythmbox
  18. balsa dasher f-spot glade3 gnome-main-menu gnome-session gnome-terminal libgnomecanvas libgnomeui libwnck planner totem
  19. accerciser anjuta bug-buddy bugzilla.gnome.org conglomerate devhelp dia doxygen evince Evolution.Data-Server gcalctool gconf-editor gdl gftp glade gnome-alsamixer gnome-user-daemon gnome-utils gnome-vfs gtkmm gucharmap java-gnome libglade libgnomedb ORBit2 printman sawfish system-monitor Tomboy xchat-gnome

Here's some notes:

  • The bug/enhancement list is generated by looking for bugs which have a keyword of "accessibility". There will be a lot of accessibility bugs out there which have omitted this keyword and therefore don't show up on this list. For example, there are 28 accerciser bugs and enhancements filed, but only one of them has the requisite keyword.

  • The Orca bug/enhancement count is misleading. There are currently 160 bugs/enhancements filed against Orca, but 59 are what we call "tracker" bugs. This is where we file an Orca bug that tracks another accessibility bug. The other bug might also be in the GNOME bug tracking database, but it could also be for other products like OpenOffice or Firefox, which use their own separate bug tracking systems. The Orca tracking bugs have "[blocked]" prefixed to their Summaries.

  • Some of these accessibility bugs have been open for almost six years.

So, for any GNOME maintainers reading this, I encourage you to try to get these bugs fixed. We (the accessibility team) quite often see "but I know nothing about accessibility" as comments on the bug reports. That's okay (well it isn't really, but let's not go there) and if that's the case, just let us know (via a comment on the bug) and we'll try to help you.

[]

[]

[]



> Read More... | Digg This!

published by richb on 2008-02-13 05:07:23 in the "Accessibility" category
Rich Burridge

There is an article by Will Walker on Orca in the March 2008 edition of Linux Journal. I was able to proof-read this a little while ago, and it's a great introduction to GNOME Desktop accessibility.

The same issue also features another accessibility related article by Eitan Isaacson on Accerciser.

Congratulations to both Will and Eitan.

[]

[]

[]

[]



> Read More... | Digg This!