Navigating HTML content DOM and changing it using IAccessible only, without GECKO libraries

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

Navigating HTML content DOM and changing it using IAccessible only, without GECKO libraries

Meglio
Hi.

How can I navigate HTML content DOM tree and change its elements using
IAccessible windows functions only?

I'm using C++ to develop DLL to access and change HTML content of the
current tab.
Whether it is possible to access DOM using IAccessible only?

Anton

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

Re: Navigating HTML content DOM and changing it using IAccessible only, without GECKO libraries

Steve Lee-3
On 22/09/2007, Meglio <[hidden email]> wrote:
> How can I navigate HTML content DOM tree and change its elements using
> IAccessible windows functions only?

Hi Meglio, AFAIK that is not possible. You can browse the document and
to a limited degree interact with form controls.

The intent of accessibility APIs like IAccessible is to allow programs
such as Assistive Technology to monitor and control the UIs of
programs and present them in alternative forms. In the case of Firefox
that includes the document but IAccessible provides an alternative
view of it, and whilst it mostly parallels the DOM in some cases it
does not. The DOM is designed for accessing altering the document from
script, iAccessible is designed for providing as much access to it as
an AT might need.

IAccessibleAction provides a mechanism to perform actions that the
target app has decided to expose and is the closest you get to
manipulation of the document. These actions tend to be quite privative
such as press button or activate an edit. There is also an event
notification system to advise of changes to the target UI.

To investigate what you can do with IAccessible on Linux you can use
Accerciser to explore the document, monitor events and invoke actions.
(Hot off the press: Accerciser has been  bundled with the
just-released GNOME 2.20). On MS Windows you can use AccExplorer to do
much the same through Firefox's MSAA implementation. Note Firefox 3.0
also support iAccessible2 on Windows which builds on MSAA to create an
API much like iAccessible.

http://developer.mozilla.org/en/docs/Accessibility/AT-SPI_Support
http://live.gnome.org/Accerciser
http://www.linux-foundation.org/en/Accessibility/IAccessible2
http://msdn2.microsoft.com/en-us/library/ms697707.aspx

--
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
Reply | Threaded
Open this post in threaded view
|

Re: Navigating HTML content DOM and changing it using IAccessible only, without GECKO libraries

Meglio
In reply to this post by Meglio
Then whether I have the chance to achieve my goal by using Gecko? I'm
making C++ library and I can't understand what is the way to use Gecko
to connect to Firefox and to interact with it. Where can I read about
it?

Thanks

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

Re: Navigating HTML content DOM and changing it using IAccessible only, without GECKO libraries

Aaron Leventhal-3
In general you should be able to find our docs using your favorite search
engine. Here are the current MSAA docs. We haven't provided IAccessible2 docs
yet (for Firefox 3): http://www.mozilla.org/access/windows/at-apis

You can't change the DOM using MSAA.

But, if you're wanting to select options, check checkboxes etc (normal stuff a
user can do by typing), then that part is available via MSAA's do_defaultAction().

If you want to modify the contents of a textfield, you will need and
IAccessible2's AccessibleEditableText interface, supported in upcoming Firefox 3.

- Aaron

Meglio wrote:
> Then whether I have the chance to achieve my goal by using Gecko? I'm
> making C++ library and I can't understand what is the way to use Gecko
> to connect to Firefox and to interact with it. Where can I read about
> it?
>
> Thanks
>
_______________________________________________
dev-accessibility mailing list
[hidden email]
https://lists.mozilla.org/listinfo/dev-accessibility