From 68527379e26d6e27db0b9ba60bf1770bf8ddc474 Mon Sep 17 00:00:00 2001 From: Chris Michael Date: Wed, 7 Oct 2015 10:33:32 -0400 Subject: [PATCH] ecore-wl2: Don't reset window->input on keyboard or pointer leave events Signed-off-by: Chris Michael --- src/lib/ecore_wl2/ecore_wl2_input.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/lib/ecore_wl2/ecore_wl2_input.c b/src/lib/ecore_wl2/ecore_wl2_input.c index 1b5195ee74..95933f9a1e 100644 --- a/src/lib/ecore_wl2/ecore_wl2_input.c +++ b/src/lib/ecore_wl2/ecore_wl2_input.c @@ -511,8 +511,6 @@ _pointer_cb_leave(void *data, struct wl_pointer *pointer EINA_UNUSED, unsigned i window = _ecore_wl2_display_window_surface_find(input->display, surface); if (!window) return; - window->input = NULL; - _ecore_wl2_input_mouse_out_send(input, window); } @@ -525,14 +523,14 @@ _pointer_cb_motion(void *data, struct wl_pointer *pointer EINA_UNUSED, unsigned input = data; if (!input) return; - /* get currently focused window */ - window = input->focus.pointer; - if (!window) return; - input->timestamp = timestamp; input->pointer.sx = wl_fixed_to_double(sx); input->pointer.sy = wl_fixed_to_double(sy); + /* get currently focused window */ + window = input->focus.pointer; + if (!window) return; + /* NB: Unsure if we need this just yet, so commented out for now */ /* if ((input->pointer.sx > window->geometry.w) || */ /* (input->pointer.sy > window->geometry.h)) */ @@ -752,7 +750,6 @@ _keyboard_cb_leave(void *data, struct wl_keyboard *keyboard EINA_UNUSED, unsigne _ecore_wl2_input_focus_out_send(input, window); - window->input = NULL; input->focus.keyboard = NULL; }