[Kde-accessibility] An accessible Qt? I think not.
Peter Korn
Peter.Korn at Sun.COM
Wed Nov 16 02:30:55 CET 2005
Hi Leo,
> ...
>
> Me too :) I am a newbie at all this stuff, but it certainly is
> interesting. Playing with Inspect32 is fascinating, it is amazing how
> much information can be retrieved from the MSAA framework (and I
> suspect any other accessibility framework) if it is properly
> supported. Names, default actions, screen positions, and the widget's
> parents and children. It even works for web pages (at least Firefox
> does an excellent job of exposing the DOM of a page through MSAA).
>
> That's why I was surprised to read Peter Korn's statement that
> "Microsoft Active Accessibility (MSAA) - fails to provide most of the
> information needed for screen reading and other AT uses, and is being
> supplanted in future Windows releases." I don't profess to know how
> current screen readers are getting their info, but from my experience
> it seems like MSAA is perfectly good at exposing the necessary
> information.
>
> For example, if MSAA is properly supported, I can grab all the menus
> and menu items from an application without ever activating those
> menus. This allows me to present those menus in a way that is easier
> to navigate with low-precision input devices. Like so:
> http://mushroomstamp.ca/menus.png
The problem is that MSAA isn't really applicable to the content region of
complex apps. Nor does it expose text attribute information, or character
bounds information. Thus if I want to write an MSAA-based screen reader, how
can I get the content region of, say, OpenOffice.org? If my screen magnifier
is simply responding to caret movement events, then MSAA is arguably
sufficient, but not if I want to drive my magnifier in sync with my reader
(e.g. products like those from Texthelp). Also if you look at a program like
GOK that provides editing commands in a dynamic editing keyboard, again you
need more information than MSAA provides.
Fundamentally MSAA has three problems:
1. it doesn't do enough
2. it isn't extensible (no easy way to add new capabilities to it)
3. because of (1) and (2), it gets overloaded to try to do things it
really can't, and so AT vendors and app vendors have app-specific
MSAA implementations (rather than going generally just to the API),
which means you loose much of the value of having a standard
accessibility API
Regards,
Peter Korn
Accessibility Architect,
Sun Microsystems, Inc.
More information about the kde-accessibility
mailing list