Monday, April 5, 2010

Visual Studio 2010 Accessibility

I've been trying to work with visual studio 2010 RC for the last few days. Below is what I've found so far.
Configurations tried:
vs 2010 RC on windows xp
vs 2010 RC on windows 7 64 bit

screen readers: NVDA 2010.1 RC1 JFW 11.0.756

NVDA:
- NVDA reads most text out of the box.
- NVDA is not able to identify any collapsed regions in the text window and only speaks the expanded regions.
- NVDA is not able to identify any breakpoints placed on any code lines (am not sure if I need to turn on some feature in NVDA for it to announce graphics/icons).
- NVDA also does not speak line numbers.
- NVDA is not able to correctly read or navigate watch windows like "autos", "locals", "watch1" etc. This is very critical for me.
- NVDA is able to correctly read autocomplete and intellisense.
- NVDA does not have mouse control keys but the object navigation seems to be able to pick up everything. I am still learning how to use this sensibly.


JFW
- jaws is not able to read any text in the code editor window by default. This seems to be because jaws doesn't understand the foreground and background colors used (I am using c# environment settings). Trying to assign a custom highlight color only gives black on black at all times.
- I can remedy this by going into Tools|Options|Fonts and colors in VS and then setting the foreground and background colors for all the text elements in this list to blue on white. After doing this, jaws is able to read almost all the text in the code editor window.
- Jaws still cannot read the braces ({}) in the code for some reason. There is probably some element that I didn't correctly change the color for - although I checked several times.
- Jaws cannot identify collapsed regions inside the code editor.
- jaws cannot read any breakpoints (it was able to identify breakpoints in VS 2008 and earlier).
- Jaws does not read line numbers.
- jaws is able to properly read and navigate the various watch windows like "autos", "locals", "watch1" etc.
- jaws is able to read autocomplete and intellisense correctly.
- Routing jaws cursor to keyboard seems to behave strangely. The jaws cursor is placed in the same window but not close to the keyboard focus.


I don't need to use the visual designer to layout controls etc. and haven't tested that. From the little interraction I had with the designer, neither jaws nor NVDA could read anything there.
I also need to use the various properties windows more to find out if they are accessible.

If other people have used other screen readers like window eyes with VS 2010 and can report on those, it will be really useful.

3 comments:

Unknown said...

VS 2010 text editor does not work with Zoomtext at all. Quite debilitating!

Unknown said...

Actually I find it quite ironic and frustrating that MS punt VS 2010 as having new features that help us develop accessible applications, but the very tool to create them with is crippled in terms of accessibility.

Manish said...

Some of the above problems have been resolved with the latest release of jaws 11.0.1430. It is still not completely there though. The problem is at both ends - VS and screen readers. Visual studio is built using WPF which exposes accessibility information using UIA. Screen readers are however, only now beginning to figure out how to correctly use UIA and are not able to make the most of the exposed accessibility information. Having said that, MS could have partnered with some of the AT vendors to help them come up to speed with the new features and ensure that when VS 2010 is released, it works well with at least 1 popular AT if not all.