Comment 1 for bug 886338

Revision history for this message
Paweł Stołowski (stolowski) wrote :

I've debugged a11y events received by Orca and nailed the problem down to the sequence of events it receives from unity-2d, and the notion of "visual" focus, tracked by Orca. When HUD is activated, Orca receives a series of events, including focus changes - it receives focus change for text input (HUD search entry), but eventually for some reason Qt/QML/qt-at-spi sends this:

object:state-changed:focused(1, 0, [panel | Dash])

meaning Orca considers [panel | Dash] as having focus.

When user moves cursor in HUD search entry, Orca receives text-caret-moved events:
object:text-caret-moved(0, 0, 0)
        source: [text |]
        host_application: [application | Unity 2D Shell]

but since it's not coming from an object that has focus, it's discarded (see Orca's sources, default.py, around line 3137).

Focus event created for [panel | Dash] may be related to object hierarchy. For now I couldn't find any "bug" or a simple workaround on unity-2d side. We may need to implement a custom Orca script for handling unity-2d a11y events (lots of packages already do this if you look into /usr/lib/python2.7/dist-packages/orca/scripts/apps and /usr/share/pyshared/orca/scripts/apps).