Quiring, Sam wrote:
Greetings,
Over in the Mozilla accessibility mailing list
([email protected]
<mailto:[email protected]>) I asked how to determine
the topmost object under the mouse, the object that would get the
event if the user clicked? Aaron Leventhal answered "MSAA and AT-SPI
have a way to get the accessible object at a point". With some help I
eventually discovered the at-spi
routine AccessibleComponent_getAccessibleAtPoint(), which has worked
great until today.
I have a GTK window on the screen and the mouse is hovering over a
Text box. Below is a dump of part of the at-spi accessibility tree
representing that area of the window. The mouse is at (x,y) = (1060,
538). This is inside the text object shown at the last line of the dump.
I call AccessibleComponent_getAccessibleAtPoint(...,1060, 538) on the
"page tab list" object and it returns NULL. Given the data in the
dump, I can see how this might have happened: there are exactly 2
children of "page tab list" and neither contain (1060, 538):
child 2/2 (n:,d:,r:page tab list) Box[756,508,506,170] [actions: ]
[subs: Component Selection ] (children: 2)
child 1/2 (n:,d:,r:page tab) Box[-2147483648,-2147483648,0,0]
[actions: ] [subs: Component Text ] (children: 1)
child 2/2 (n:,d:,r:page tab) Box[756,508,0,0] [actions: ] [subs:
Component Text ] (children: 1)
Probably because these component doesn't have the right value. Are these
text view?
Li
but if we look further, we can see that deeper descendents do contain
(1060, 538), including the text box at the bottom of the dump, which
is what I was looking for.
Is this a bug in AccessibleComponent_getAccessibleAtPoint()? If not,
is there another routine I should be calling to get the accessible
object at a point?
-Sam
*_key: Box[x, y, width, height]_*
child 2/2 (n:,d:,r:page tab list) Box[756,508,506,170] [actions: ]
[subs: Component Selection ] (children: 2)
child 2/2 - [states: enabled, sensitive, showing, visible]
child 1/2 (n:,d:,r:page tab) Box[-2147483648,-2147483648,0,0]
[actions: ] [subs: Component Text ] (children: 1)
child 2/2 (n:,d:,r:page tab) Box[756,508,0,0] [actions: ] [subs:
Component Text ] (children: 1)
child 1/1 (n:,d:,r:filler) Box[756,508,506,170] [actions: ] [subs:
Component ] (children: 2)
child 1/2 (n:,d:,r:scroll pane) Box[762,514,494,122] [actions: ]
[subs: Component ] (children: 2)
child 1/2 (n:,d:,r:viewport) Box[762,514,476,122] [actions: ]
[subs: Component ] (children: 1)
child 1/1 (n:,d:,r:panel) Box[764,516,472,385] [actions: ]
[subs: Component ] (children: 12)
child 1/12 (n:,d:,r:panel) Box[1162,528,68,56] [actions: ]
[subs: Component ] (children: 1)
...
child 11/12 (n:,d:,r:panel) Box[912,528,250,25] [actions:
] [subs: Component ] (children: 1)
child 1/1 (n:,d:,r:text) Box[912,528,250,25] [actions:
activate] [subs: Action Component EditableText Text ] (children: 0)
------------------------------------------------------------------------
_______________________________________________
Gnome-accessibility-devel mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gnome-accessibility-devel
_______________________________________________
Gnome-accessibility-devel mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gnome-accessibility-devel