Blog on NVDA web access grant work

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Blog on NVDA web access grant work

Michael Curran
Hi all,

As some of you may know, NV Access (the supporting organisation of NVDA) has
received a grant from the Mozilla Foundation. This grant is to enable myself
and Jamie (the other person working on the grant) to improve NVDA's support
for viewing content in Mozilla Gecko (in such apps as Firefox, Thunderbird,
and Chatzilla).

Many thanks go to Frank Heker and others of the Mozilla Foundation for
providing the grant, and of course thanks also go to Vic and Aaron for
helping us with getting the grant proposal written up properly.

I have started a blog for both NVDA and the web access grant work, and it
can be found at:
http://www.nvda-project.org/blog/

I have made one post so far, which outlines the current problems with NVDA's
support, and also covers what Jamie and I have been able to get done in the
first two or so weeks of the grant.

Although this grant focuses soley on Mozilla Gecko, the code written will be
modular enough, so that it wil be quite easy to also later improve support
for other Web Browsers and Document readers (as NVDA must be able to work
with more than one browser / reader if its to be a useful tool for the
blindness community). Where possible, it will also be built as a stand-alone
library so that other Assistive technologies can also make use of the code.

I plan to write blog entries to do with the web access grant probably once
every two weeks or so.

More information about NVDA (the free and Open source screen reader for
Windows) can be found at:
http://www.nvda-project.org/

More information about NV Access can be found at:
http://www.nvaccess.org/

If anyone has any questions or thoughts about the grant, please feel free to
email myself, or submit comments to the blog entries.

Mick

 

_______________________________________________
dev-accessibility mailing list
[hidden email]
https://lists.mozilla.org/listinfo/dev-accessibility
Reply | Threaded
Open this post in threaded view
|

Re: Blog on NVDA web access grant work

Aaron Leventhal-3
Mick, thank you for the very thorough status update. It's great to see this
amount of thoughtfulness go into NVDA.

One question, when you say 5403 DOM nodes were counted, do you mean IAccessible
nodes, which are a subset of the DOM? Or are you visiting every ISimpleDOMNode?

Also with IAccessibleText in Firefox 3 you could cut down even further on the
number of nodes you visit -- there is no need to visit the leaf nodes of
ROLE_TEXT since that text is already available in the parent IAccessibleText.
Then if you QI to IAccessibleHyperText you can use the getLink() method you can
get all of the embedded objects. Yes, it's a bit odd but for important reasons
getLink() does not only get link children -- it returns any object embedded in
the text.

http://developer.mozilla.org/en/docs/Accessibility:Architecture

It's at least worth considering going to the newer interfaces right away.

- Aaron

Michael Curran wrote:

> Hi all,
>
> As some of you may know, NV Access (the supporting organisation of NVDA)
> has received a grant from the Mozilla Foundation. This grant is to
> enable myself and Jamie (the other person working on the grant) to
> improve NVDA's support for viewing content in Mozilla Gecko (in such
> apps as Firefox, Thunderbird, and Chatzilla).
>
> Many thanks go to Frank Heker and others of the Mozilla Foundation for
> providing the grant, and of course thanks also go to Vic and Aaron for
> helping us with getting the grant proposal written up properly.
>
> I have started a blog for both NVDA and the web access grant work, and
> it can be found at:
> http://www.nvda-project.org/blog/
>
> I have made one post so far, which outlines the current problems with
> NVDA's support, and also covers what Jamie and I have been able to get
> done in the first two or so weeks of the grant.
>
> Although this grant focuses soley on Mozilla Gecko, the code written
> will be modular enough, so that it wil be quite easy to also later
> improve support for other Web Browsers and Document readers (as NVDA
> must be able to work with more than one browser / reader if its to be a
> useful tool for the blindness community). Where possible, it will also
> be built as a stand-alone library so that other Assistive technologies
> can also make use of the code.
>
> I plan to write blog entries to do with the web access grant probably
> once every two weeks or so.
>
> More information about NVDA (the free and Open source screen reader for
> Windows) can be found at:
> http://www.nvda-project.org/
>
> More information about NV Access can be found at:
> http://www.nvaccess.org/
>
> If anyone has any questions or thoughts about the grant, please feel
> free to email myself, or submit comments to the blog entries.
>
> Mick
>
>
>
_______________________________________________
dev-accessibility mailing list
[hidden email]
https://lists.mozilla.org/listinfo/dev-accessibility
Reply | Threaded
Open this post in threaded view
|

Re: Blog on NVDA web access grant work

Michael Curran
Hi Aaron,

For now MSAA Walker is purely MSAA based. So when I say DOM nodes, I just
mean IAccessibles; Sorry, I should have been more clearer then.

Thanks for pointing out about the embeded object stuff, eventually the code
will take this in to account, when we actually start writing a specific
traverser just for IA2/IAccessible/Gecko, Rather than just pure MSAA. The
initial tests were really more just to test in-process verses
out-of-process, not really taking any particular API in to account.

Also I guess we really need to decide how we will cope with the differences
between Firefox 2 and 3. We want to fully use IA2 and the new ff3 changes to
their advantage, but at the same time it would still be nice if NVDA could
still keep its support for ff2. What this would mean then is that we'd
probably need some logic that does one thing if there's no IA2 support, and
one thing that does something when there is IA2 support.

I'm not too sure what the policy is on this, but how much  pure MSAA stuff
is going to stay the same in ff3? I'm just also thinking of times when for
some reason the ia2proxy dll can not be registered due to user privilages,
it would still be nice if we could still maintain the same accessiblity that
early ff3 / ff2 gave us.

Mick


----- Original Message -----
From: "Aaron Leventhal" <[hidden email]>
Newsgroups: mozilla.dev.accessibility
To: "Michael Curran" <[hidden email]>
Cc: <[hidden email]>; "Development for NonVisual
Desktop Access" <[hidden email]>; <[hidden email]>
Sent: Thursday, July 26, 2007 10:00 PM
Subject: Re: Blog on NVDA web access grant work


> Mick, thank you for the very thorough status update. It's great to see
> this amount of thoughtfulness go into NVDA.
>
> One question, when you say 5403 DOM nodes were counted, do you mean
> IAccessible nodes, which are a subset of the DOM? Or are you visiting
> every ISimpleDOMNode?
>
> Also with IAccessibleText in Firefox 3 you could cut down even further on
> the number of nodes you visit -- there is no need to visit the leaf nodes
> of ROLE_TEXT since that text is already available in the parent
> IAccessibleText. Then if you QI to IAccessibleHyperText you can use the
> getLink() method you can get all of the embedded objects. Yes, it's a bit
> odd but for important reasons getLink() does not only get link children --  
> it returns any object embedded in the text.
>
> http://developer.mozilla.org/en/docs/Accessibility:Architecture
>
> It's at least worth considering going to the newer interfaces right away.
>
> - Aaron
>
> Michael Curran wrote:
>> Hi all,
>>
>> As some of you may know, NV Access (the supporting organisation of NVDA)
>> has received a grant from the Mozilla Foundation. This grant is to enable
>> myself and Jamie (the other person working on the grant) to improve
>> NVDA's support for viewing content in Mozilla Gecko (in such apps as
>> Firefox, Thunderbird, and Chatzilla).
>>
>> Many thanks go to Frank Heker and others of the Mozilla Foundation for
>> providing the grant, and of course thanks also go to Vic and Aaron for
>> helping us with getting the grant proposal written up properly.
>>
>> I have started a blog for both NVDA and the web access grant work, and it
>> can be found at:
>> http://www.nvda-project.org/blog/
>>
>> I have made one post so far, which outlines the current problems with
>> NVDA's support, and also covers what Jamie and I have been able to get
>> done in the first two or so weeks of the grant.
>>
>> Although this grant focuses soley on Mozilla Gecko, the code written will
>> be modular enough, so that it wil be quite easy to also later improve
>> support for other Web Browsers and Document readers (as NVDA must be able
>> to work with more than one browser / reader if its to be a useful tool
>> for the blindness community). Where possible, it will also be built as a
>> stand-alone library so that other Assistive technologies can also make
>> use of the code.
>>
>> I plan to write blog entries to do with the web access grant probably
>> once every two weeks or so.
>>
>> More information about NVDA (the free and Open source screen reader for
>> Windows) can be found at:
>> http://www.nvda-project.org/
>>
>> More information about NV Access can be found at:
>> http://www.nvaccess.org/
>>
>> If anyone has any questions or thoughts about the grant, please feel free
>> to email myself, or submit comments to the blog entries.
>>
>> Mick
>>
>>
>>
>
>

_______________________________________________
dev-accessibility mailing list
[hidden email]
https://lists.mozilla.org/listinfo/dev-accessibility
Reply | Threaded
Open this post in threaded view
|

Re: Blog on NVDA web access grant work

Aaron Leventhal-3
In reply to this post by Aaron Leventhal-3
Hi Mick,

The MSAA tree is mostly the same in Firefox 3. You will see some container
accessible objects that weren't there in Firefox 2. For example, we now expose
an object for anything that is styled with display:block (something that is
styled to have a hard line break before and after it). There are also now
ROLE_WHITESPACE objects as leaf nodes, which indicate a <br> (another kind of
hard line break).

- Aaron

Michael Curran wrote:

> Hi Aaron,
>
> For now MSAA Walker is purely MSAA based. So when I say DOM nodes, I
> just mean IAccessibles; Sorry, I should have been more clearer then.
>
> Thanks for pointing out about the embeded object stuff, eventually the
> code will take this in to account, when we actually start writing a
> specific traverser just for IA2/IAccessible/Gecko, Rather than just pure
> MSAA. The initial tests were really more just to test in-process verses
> out-of-process, not really taking any particular API in to account.
>
> Also I guess we really need to decide how we will cope with the
> differences between Firefox 2 and 3. We want to fully use IA2 and the
> new ff3 changes to their advantage, but at the same time it would still
> be nice if NVDA could still keep its support for ff2. What this would
> mean then is that we'd probably need some logic that does one thing if
> there's no IA2 support, and one thing that does something when there is
> IA2 support.
>
> I'm not too sure what the policy is on this, but how much  pure MSAA
> stuff is going to stay the same in ff3? I'm just also thinking of times
> when for some reason the ia2proxy dll can not be registered due to user
> privilages, it would still be nice if we could still maintain the same
> accessiblity that early ff3 / ff2 gave us.
>
> Mick
>
>
> ----- Original Message ----- From: "Aaron Leventhal"
> <[hidden email]>
> Newsgroups: mozilla.dev.accessibility
> To: "Michael Curran" <[hidden email]>
> Cc: <[hidden email]>; "Development for NonVisual
> Desktop Access" <[hidden email]>; <[hidden email]>
> Sent: Thursday, July 26, 2007 10:00 PM
> Subject: Re: Blog on NVDA web access grant work
>
>
>> Mick, thank you for the very thorough status update. It's great to see
>> this amount of thoughtfulness go into NVDA.
>>
>> One question, when you say 5403 DOM nodes were counted, do you mean
>> IAccessible nodes, which are a subset of the DOM? Or are you visiting
>> every ISimpleDOMNode?
>>
>> Also with IAccessibleText in Firefox 3 you could cut down even further
>> on the number of nodes you visit -- there is no need to visit the leaf
>> nodes of ROLE_TEXT since that text is already available in the parent
>> IAccessibleText. Then if you QI to IAccessibleHyperText you can use
>> the getLink() method you can get all of the embedded objects. Yes,
>> it's a bit odd but for important reasons getLink() does not only get
>> link children --  it returns any object embedded in the text.
>>
>> http://developer.mozilla.org/en/docs/Accessibility:Architecture
>>
>> It's at least worth considering going to the newer interfaces right away.
>>
>> - Aaron
>>
>> Michael Curran wrote:
>>> Hi all,
>>>
>>> As some of you may know, NV Access (the supporting organisation of
>>> NVDA) has received a grant from the Mozilla Foundation. This grant is
>>> to enable myself and Jamie (the other person working on the grant) to
>>> improve NVDA's support for viewing content in Mozilla Gecko (in such
>>> apps as Firefox, Thunderbird, and Chatzilla).
>>>
>>> Many thanks go to Frank Heker and others of the Mozilla Foundation
>>> for providing the grant, and of course thanks also go to Vic and
>>> Aaron for helping us with getting the grant proposal written up
>>> properly.
>>>
>>> I have started a blog for both NVDA and the web access grant work,
>>> and it can be found at:
>>> http://www.nvda-project.org/blog/
>>>
>>> I have made one post so far, which outlines the current problems with
>>> NVDA's support, and also covers what Jamie and I have been able to
>>> get done in the first two or so weeks of the grant.
>>>
>>> Although this grant focuses soley on Mozilla Gecko, the code written
>>> will be modular enough, so that it wil be quite easy to also later
>>> improve support for other Web Browsers and Document readers (as NVDA
>>> must be able to work with more than one browser / reader if its to be
>>> a useful tool for the blindness community). Where possible, it will
>>> also be built as a stand-alone library so that other Assistive
>>> technologies can also make use of the code.
>>>
>>> I plan to write blog entries to do with the web access grant probably
>>> once every two weeks or so.
>>>
>>> More information about NVDA (the free and Open source screen reader
>>> for Windows) can be found at:
>>> http://www.nvda-project.org/
>>>
>>> More information about NV Access can be found at:
>>> http://www.nvaccess.org/
>>>
>>> If anyone has any questions or thoughts about the grant, please feel
>>> free to email myself, or submit comments to the blog entries.
>>>
>>> Mick
>>>
>>>
>>>
>>
>>
>
_______________________________________________
dev-accessibility mailing list
[hidden email]
https://lists.mozilla.org/listinfo/dev-accessibility
Reply | Threaded
Open this post in threaded view
|

Re: Blog on NVDA web access grant work

Steve Lee-3
In reply to this post by Michael Curran
On 26/07/07, Michael Curran <[hidden email]> wrote:
> when we actually start writing a specific
> traverser just for IA2/IAccessible/Gecko, Rather than just pure MSAA.On 26/07/07, Michael Curran <[hidden email]> wrote:
> traverser just for IA2/IAccessible/Gecko, Rather than just pure MSAA.

I think a Windows + IA2 port of pyatspi would be really useful for the
community.
http://live.gnome.org/GAP/PythonATSPI

It provides really easy pythonic access to the tree (a little like
ElementTree for XML) and events. It's out-process but performs
client-side caching. There are other little niceties like losely
defined state/role names allowing for extensibility.

There's a couple of 'find node' utility functions and I'm thinking of
creating a basic XPath like search to augment the 'child index' based
paths.

So far I found initial playing with it in accerciser's ipython console
that it is easy to use (Eitan says it made accerciser easy to
implement and I can see why he would say that). However I have not
done much with the event side yet.

I'm not sure how easy it would be to port to IA2. It use pyOrbit to do
the heavy lifting of converting the AT/SPI IDL to a python module and
then does some clever runtime introspection and mixin to give pythonic
access to the tree and interfaces. Peter Parente did a great job. The
most different/difficult part may be MSAA events (no registry
equivalent).

Steve Lee
--
Open Source Assistive Technology Software
PowerTalk - your presentations can speak for themselves
www.fullmeasure.co.uk
_______________________________________________
dev-accessibility mailing list
[hidden email]
https://lists.mozilla.org/listinfo/dev-accessibility