From 5dc8fa66909f21329e398facda20e77528e8ac85 Mon Sep 17 00:00:00 2001 From: Carlos Garnacho Date: Thu, 19 Jun 2014 23:10:33 +0200 Subject: [PATCH] events: Hook MetaGestureTracker to display event processing Events aren't actually consumed by the MetaGestureTracker, but it rather defines whether the event will reach clients, or the stage. --- src/core/events.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/core/events.c b/src/core/events.c index fb789e293..df5dc4481 100644 --- a/src/core/events.c +++ b/src/core/events.c @@ -106,6 +106,7 @@ meta_display_handle_event (MetaDisplay *display, MetaWindow *window; gboolean bypass_clutter = FALSE, bypass_wayland = FALSE; MetaWaylandCompositor *compositor = NULL; + MetaGestureTracker *tracker; if (meta_is_wayland_compositor ()) { @@ -141,6 +142,15 @@ meta_display_handle_event (MetaDisplay *display, } } + tracker = meta_display_get_gesture_tracker (display); + + if (meta_gesture_tracker_handle_event (tracker, event)) + { + bypass_wayland = TRUE; + bypass_clutter = meta_gesture_tracker_consumes_event (tracker, event); + goto out; + } + if (display->grab_window == window && meta_grab_op_is_moving_or_resizing (display->grab_op)) {