[Accessibility] Cross desktop environment event capture for assistive technologies.

Luke Yelavich luke.yelavich at canonical.com
Mon Dec 5 02:43:22 UTC 2016


Hey folks.
I am working on accessibility for Unity 8. One thing that we need to solve is 
input event capture/processing for Orca. Whilst things work well enough with 
Qt via its X QPA plugin, the Mir QPA plugin does not do any form of keyboard 
snooping, therefore when using Orca with Qt apps under Mir, Orca's commands 
cannot be used. I am pretty sure the same applies for Wayland as well. I know 
in the case of Qt's Mir support, the developers do not want to add any form 
of keyboard snooping such as is present in Gtk/Clutter/Qt via its X QPA 
plugin.

I'm wondering whether anybody has done any work to spec out a cross desktop 
solution for this problem. My understanding is that any solution would not 
involve working on Wayland/Mir directly, since the compositor/shell is the 
arbitor of all things input. Instead any solution would be implemented in the 
compositor/shell, so mutter, KWin, and the unity 8 shell.

Without having tried to spec something out myself, I don't think it would be 
that complex, probably something over DBus that allows an assistive 
technology such as Orca to register its interest to process input events with 
the shell, at which point it is notified again via DBus when an input event 
needs processing, and signals the shell appropriately. I guess this si 
something that would need amending an atspi spec somewhere, or would this be 
more along the lines of XDG?

Thoughts, suggestions, and corrections welcome.

Luke


More information about the accessibility mailing list