summaryrefslogtreecommitdiff
path: root/src/x11/events.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/x11/events.c')
-rw-r--r--src/x11/events.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/x11/events.c b/src/x11/events.c
index dc12b6e09..e32781d89 100644
--- a/src/x11/events.c
+++ b/src/x11/events.c
@@ -1882,11 +1882,15 @@ meta_x11_display_handle_xevent (MetaX11Display *x11_display,
XEvent *event)
{
MetaDisplay *display = x11_display->display;
- MetaBackend *backend = meta_get_backend ();
+ MetaContext *context = meta_display_get_context (display);
+ MetaBackend *backend = meta_context_get_backend (context);
Window modified;
gboolean bypass_compositor = FALSE, bypass_gtk = FALSE;
XIEvent *input_event;
MetaCursorTracker *cursor_tracker;
+#ifdef HAVE_WAYLAND
+ MetaWaylandCompositor *wayland_compositor;
+#endif
COGL_TRACE_BEGIN (MetaX11DisplayHandleXevent,
"X11Display (handle X11 event)");
@@ -1902,8 +1906,9 @@ meta_x11_display_handle_xevent (MetaX11Display *x11_display,
}
#ifdef HAVE_WAYLAND
- if (meta_is_wayland_compositor () &&
- meta_xwayland_handle_xevent (event))
+ wayland_compositor = meta_context_get_wayland_compositor (context);
+ if (wayland_compositor &&
+ meta_wayland_compositor_handle_xwayland_xevent (wayland_compositor, event))
{
bypass_gtk = bypass_compositor = TRUE;
goto out;