[program-l] Re: UIA in jaws 11 public beta

  • From: Jacob Kruger <Jacob.Kruger@xxxxxxxxxxxx>
  • To: "program-l@xxxxxxxxxxxxx" <program-l@xxxxxxxxxxxxx>
  • Date: Fri, 4 Sep 2009 13:07:57 +0200

Done already.

No worries - it's in my best interests if they make this type of thing work.

Stay well

Jacob Kruger
jacob.kruger@xxxxxxxxxxxx

From: program-l-bounce@xxxxxxxxxxxxx [mailto:program-l-bounce@xxxxxxxxxxxxx] On 
Behalf Of Justin Daubenmire
Sent: Friday, September 04, 2009 1:06 PM
To: program-l@xxxxxxxxxxxxx
Subject: [program-l] Re: UIA in jaws 11 public beta

Hi Jacob,

You'll want to report this to freedom scientific on the public beta testing 
form.

/Justin
----- Original Message -----
From: Jacob Kruger<mailto:Jacob.Kruger@xxxxxxxxxxxx>
To: program-l@xxxxxxxxxxxxx<mailto:program-l@xxxxxxxxxxxxx>
Sent: Friday, September 04, 2009 4:59 AM
Subject: [program-l] Re: UIA in jaws 11 public beta

Ok, also return nothing in jaws 11as well, and FWIW, the one, 
GetObjectContainerHelp has the following description:
This function returns the AccDescription property of the container of an MSAA 
object if it has one.
This is also trying either to make it use MSAA, or try decide for itself.
Stay well

Jacob Kruger
jacob.kruger@xxxxxxxxxxxx<mailto:jacob.kruger@xxxxxxxxxxxx>

From: program-l-bounce@xxxxxxxxxxxxx [mailto:program-l-bounce@xxxxxxxxxxxxx] On 
Behalf Of Jacob Kruger
Sent: Friday, September 04, 2009 10:48 AM
To: program-l@xxxxxxxxxxxxx
Subject: [program-l] Re: UIA in jaws 11 public beta

Well, FWIW, while in the small standard windows app, the two jaws scripting 
functions now tried, GetObjectContainerHelp and GetObjectDescription basically 
call the standard controls a button and textbox, in the WPF app they don't 
return anything whether I tell them to automatically find the info, or 
specifically use MSAA, so, no go there - will try it out in jaws 11 as well.

Stay well

Jacob Kruger
jacob.kruger@xxxxxxxxxxxx

From: program-l-bounce@xxxxxxxxxxxxx [mailto:program-l-bounce@xxxxxxxxxxxxx] On 
Behalf Of Travis Roth
Sent: Tuesday, September 01, 2009 3:54 PM
To: program-l@xxxxxxxxxxxxx
Subject: [program-l] Re: UIA in jaws 11 public beta

Jacob,

I just wanted to mention JAWS operates in a couple of ways.
The first way, is using its off screen model (OSM). This is what a lot of its 
functions use and return info from. For example GetWindowSubTypeCode(). This 
function does not link to MSAA information in my experience. For example, in a 
.Net edit box GetWindowSubtypeCode() will often return unknown, while the MSAA 
functions will return it is a textbox.

So the first trick is to figure out if you're needing to deal with the OSM, or 
MSAA/UIAutomation. In your case, it'd be the latter. The next trick, is then to 
use the corresponding functions.

A problem I have had with MSAA, and thus I suspect others have had, was always 
its inconsistent implementation. In the simple controls like buttons, it was 
fairly straight forward and you could find the accessibility information in the 
same place, e.g., accName and accRole of the object. In more complex controls, 
for example the Visual Studio 2005 code editor, the accessibility information 
was all over the place, different objects in the MSAA hierarchy returning 
different pieces. Oftentimes frustration has been expressed Why can't JAWS do 
better with MSAA? Figure it out automatically if the info is there?
That'd be nice, but I suspect some consistency would help. When I looked at the 
VS.Net 2005 code editor's MSAA objects and pieced together info from different 
objects to sort out what the current  line with focus was, what character on 
the line had focus, etc., I could see how difficult this would be for any 
screen reader to figure out automatically. It'd take quite the artificial 
intelligence for when each custom control puts the MSAA info in its own custom 
place.
Hopefully UIAutomation will improve on this. That is what it is intended to do. 
I have not had enough experience with it one way or the other at this point.
In short though, that is a bit what you are up against. Step one wil be to 
figure out if you're using OSM functions of JAWS, or the accessibility API 
functions (MSAA/UIAutomation) functions. Step 2 will be to figure out of the 
given control, where it is hiding the relevant information in the object 
hierarchy, and can JAWS find it on its own, or will it need to be told where 
exactly it is hiding. Again, hopefully with UIAutomation this will be more 
consistent, so say when JAWS encounters a rich text edit field it'll know where 
to look.

Anyways, not sure if this helps you but there's a little background...


From: program-l-bounce@xxxxxxxxxxxxx [mailto:program-l-bounce@xxxxxxxxxxxxx] On 
Behalf Of Jacob Kruger
Sent: Tuesday, September 01, 2009 3:27 AM
To: program-l@xxxxxxxxxxxxx
Subject: [program-l] Re: UIA in jaws 11 public beta

Ok, just tried it out on some of my WPF apps including the menu system etc., 
and it also doesn't seem able to read menu items with system functionality 
included in them, such as cut, copy and paste.

Also tried out a bit of my current jaws scripting testing, which I suppose use 
the older functions since I started them off testing within jaws 10, but they 
also say unknown window type for certain standard controls like text box, 
button, etc. will
 Have to look into the UI Automation script attributes and see how that works, 
but will let you know.

Stay well

Jacob Kruger
jacob.kruger@xxxxxxxxxxxx

From: program-l-bounce@xxxxxxxxxxxxx [mailto:program-l-bounce@xxxxxxxxxxxxx] On 
Behalf Of Justin Daubenmire
Sent: Tuesday, September 01, 2009 1:36 AM
To: program-l@xxxxxxxxxxxxx
Subject: [program-l] UIA in jaws 11 public beta

Hey all,

Jaws 11 public beta is available.

For programmers, jaws 11 has UIA/wpf support....

UIA Support

User Interface Automation (UIA) support is available in JAWS 11 and later. UIA 
is successor to the older Microsoft Active Accessibility (MSAA) framework.
It is an Application Programming Interface (API) for User Interface (UI) 
accessibility that is designed to help Assistive Technology products such as 
JAWS
and MAGic to interact with standard and custom UI elements of applications or 
the operating system.

Please test it out on wpf applications or UIA in general, maybe even visual 
studio 2010, and please submit any bugs you find to freedom scientific.

The jaws scripting language has support now for UIA so I am curious to see how 
it helps out in scripting visual studio 2010 so please forward this email onto 
jaws scripters who may be interested in scripting vs 2010.


Public jaws 11 beta download is here:


http://freedomscientific.com/downloads/jaws/JAWS-public-beta.asp


/Justin

No virus found in this incoming message.
Checked by AVG - www.avg.com
Version: 8.5.409 / Virus Database: 270.13.72/2337 - Release Date: 08/31/09 
05:50:00

No virus found in this incoming message.
Checked by AVG - www.avg.com
Version: 8.5.409 / Virus Database: 270.13.76/2342 - Release Date: 09/02/09 
18:03:00

No virus found in this incoming message.
Checked by AVG - www.avg.com
Version: 8.5.409 / Virus Database: 270.13.76/2344 - Release Date: 09/03/09 
18:05:00

No virus found in this incoming message.
Checked by AVG - www.avg.com
Version: 8.5.409 / Virus Database: 270.13.76/2344 - Release Date: 09/03/09 
18:05:00

Other related posts: