window handles miss-match with IAccessible2::windowHandle and gecko 1.9

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

window handles miss-match with IAccessible2::windowHandle and gecko 1.9

Michael Curran
Hi all,

Although IAccessible2::get_windowHandle has now been fixed in Gecko 1.9, as
in it no longer throws an exception, I am finding in some places the window
handle actually seems to be wrong.

Example: getting an IAccessible2 object from accessibleObjectFromEvent, the
window handle I passed to it is not the window handle
IAccessible2::get_windowHandle returns.

I am assuming that they *should* be the same?

I am noticing that sometimes if I do an accessibleObjectFromEvent on the
content window of a Gecko application (MozillaContentWindowClass) the window
handle IAccessible2::get_windowHandle returns is of the window class
MozillaWindowclass, not MozillaContentWindowClass, which is also a dead give
away that the handles do not match.

I thought at first this problem was only happening in the content window,
but after writing yet another small c++ program to test this kind of stuff,
I am finding that doing an AccessibleObjectFromEvent on the main
MozillaUIWindowClass window, yields an IAccessible2 object who's
get_windowHandle is also different to the window I gave
AccessibleObjectFromEvent.

If this is a bug I'm happy to enter it in to bugzilla and provide any
evidence etc.

This problem is important to NVDA as if I do want to use
IAccessible2::get_windowHandle at all, virtualBuffers have a tendency to die
or be loaded twice, as obviously this window that get_windowHandle is giving
back either doesn't exist after a while, or somewhere in NVDA it doesn't
match with what it should be.

Mick


 

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

Re: window handles miss-match with IAccessible2::windowHandle and gecko 1.9

Marco Zehe-3
Hi Mick,

Michael Curran wrote:
> Although IAccessible2::get_windowHandle has now been fixed in Gecko 1.9,
> as in it no longer throws an exception, I am finding in some places the
> window handle actually seems to be wrong.
>
> Example: getting an IAccessible2 object from accessibleObjectFromEvent,
> the window handle I passed to it is not the window handle
> IAccessible2::get_windowHandle returns.

I just checked in NSAccessibleWrap::Get_WindowHandle, and it calls
GetOwnerWindow. There is only one GetOwnerWindow function defined:
NSAccessNode::GetOwnerWindow, which will give you the window handle for
the root DocAccessible.

This is just for information, I don't know if this is actually desired
behaviour.

Marco

_______________________________________________
dev-accessibility mailing list
[hidden email]
https://lists.mozilla.org/listinfo/dev-accessibility