From a8fc099a725543649fe3aab76943c14bdcd860fc Mon Sep 17 00:00:00 2001 From: Rob Bradford Date: Sun, 4 Aug 2013 14:01:10 +0100 Subject: [PATCH] wayland: Only try and process keyboard events when focussed When combining Clutter with GTK+ we can receive events for surfaces which in the client side we do not have focussed. --- gdk/wayland/gdkdevice-wayland.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gdk/wayland/gdkdevice-wayland.c b/gdk/wayland/gdkdevice-wayland.c index 862942cae7..61cf9bc58c 100644 --- a/gdk/wayland/gdkdevice-wayland.c +++ b/gdk/wayland/gdkdevice-wayland.c @@ -897,6 +897,8 @@ keyboard_handle_leave (void *data, return; if (!GDK_IS_WINDOW (wl_surface_get_user_data (surface))) return; + if (!device->keyboard_focus) + return; _gdk_wayland_display_update_serial (wayland_display, serial); @@ -1106,6 +1108,9 @@ keyboard_handle_key (void *data, GdkWaylandDisplay *wayland_display = GDK_WAYLAND_DISPLAY (device->display); + if (!device->keyboard_focus) + return; + device->repeat_count = 0; _gdk_wayland_display_update_serial (wayland_display, serial); deliver_key_event (data, time, key + 8, state_w);