From 4395c02b9634b353d57a630db69b188394bb148b Mon Sep 17 00:00:00 2001 From: Tifaine Inguere Date: Thu, 24 Jul 2014 16:53:53 +0200 Subject: [PATCH] waylandsink : Allow surface to catch input events If waylandsink is the owner of the display then it is in charge of catching input events on the surface. https://bugzilla.gnome.org/show_bug.cgi?id=733682 Signed-off-by: Tifaine Inguere Reviewed-by: Benjamin Gaignard --- ext/wayland/wlwindow.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/ext/wayland/wlwindow.c b/ext/wayland/wlwindow.c index a4da2c6..ab7edda 100644 --- a/ext/wayland/wlwindow.c +++ b/ext/wayland/wlwindow.c @@ -252,6 +252,15 @@ gst_wl_window_resize_video_surface (GstWlWindow * window, gboolean commit) wl_surface_commit (window->video_surface); } + if (gst_wl_window_is_toplevel (window)) { + struct wl_region *region; + + region = wl_compositor_create_region (window->display->compositor); + wl_region_add(region, 0, 0, window->render_rectangle.w, window->render_rectangle.h); + wl_surface_set_input_region (window->area_surface, region); + wl_region_destroy (region); + } + /* this is saved for use in wl_surface_damage */ window->surface_width = res.w; window->surface_height = res.h; -- 2.7.4