GNOME Bugzilla – Bug 736821
a11y: Most of the accessible tree is not exposed, and is partially wrong
Last modified: 2014-09-18 13:39:21 UTC
STEPS TO REPRODUCE IT
Open accerciser with gnome-shell 3.13.92. Under gnome-shell, you should see a tree with a lot of elements. They are just three, and two are of role window. On clutter, right now, only the stage uses that role. That would imply that gnome-shell is using two clutter stages, but that is not the case.
Due this, although some events, like focus changes, are properly emitted, and exposed by Orca, other like selection changes are not due the missing accessibles. That makes alt+tab and ctrl+alt+tab fairly totally inaccessible. And probably there are other features not accessible.
This is a collateral effect of bug 735908. After the change I also removed setting/unsetting NO_AT_BRIDGE around meta_init, assuming that they would not be needed anymore. So that part of the patch was just cleaning. The fact that everything was working after removing them seemed to confirm my theory. Two weeks later, while testing 3.13.92 just in case, I found this bug, so obviously I was wrong.
Patch is coming.
Created attachment 286409 [details] [review]
a11y: Set again NO_AT_BRIDGE=1 before calling meta_init
This prevents the call of gtk_init_xx to load the bridge, that affects the bridge being loaded.
All this would not be required if a proper API is implemented as mentioned on bug 735908. Due the freezes, that would be postponed to next cycle.
Setting target, as right now the accessibility support is mostly broken.
The patch is just re-adding two lines that were on gnome-shell during years, so I assume that it would be easy to get it approved. If it is approved I will send the freeze break request.
Review of attachment 286409 [details] [review]:
Fine by me.
(In reply to comment #1)
> All this would not be required if a proper API is implemented as mentioned on
> bug 735908.
Not sure if I can follow, but: Is there a dedicated ticket to track the request for a proper API (as bug 735908 is closed)?
And r-t approval one of two here already for the patch in comment 3.
(In reply to comment #4)
> (In reply to comment #1)
> > All this would not be required if a proper API is implemented as mentioned on
> > bug 735908.
> Not sure if I can follow, but: Is there a dedicated ticket to track the request
> for a proper API (as bug 735908 is closed)?
What I mean is that eventually, a new API would allow to avoid the need to set that envvar, and to force setting the AtkUtil as bug 735908 needed to do. There is not still a ticket for that new API. That work would be postponed for the next cycle, and probably will just open it when I have something to show.
> And r-t approval one of two here already for the patch in comment 3.
(In reply to comment #3)
> Review of attachment 286409 [details] [review]:
> Fine by me.
Freeze break request accepted:
Patch committed. Closing bug.