wayland: manually activate/deactivate stage when taking/dropping grab

Desktop / GNOME / Mutter - Ray Strode [redhat.com] - 28 March 2015 10:20 UTC

clutter currently never emits activated or deactivated signals on the stage object when using the EGL backend. Since the stage never gets activated, accessibility tools, like orca, don't work.

This commit makes mutter take on the responsibility, by tracking when the stage gains/loses focus, and then synthesizing stage CLUTTER_STAGE_STATE_ACTIVATED state events.

A limitation of this approach is that clutter's own notion of the stage activeness won't reflect mutter's notion of the stage activeness. This isn't a problem, in practice, and can be addressed in the medium-term after making changes to clutter.

https://bugzilla.gnome.org/show_bug.cgi?id=746670

9f17c05 wayland: manually activate/deactivate stage when taking/dropping grab
src/backends/meta-stage.c | 66 +++++++++++++++++++++++++++++++++++++++++++++
src/backends/meta-stage.h | 3 +++
src/core/display.c | 4 +++
3 files changed, 73 insertions(+)

Upstream: git.gnome.org


  • Share