devilhorns pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=bb0c94d04ac40453540ec243fc0dfe39fddcba61

commit bb0c94d04ac40453540ec243fc0dfe39fddcba61
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Thu Sep 10 13:25:54 2015 -0400

    ecore-wl2: Start on code for pointer leave event
    
    Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/ecore_wl2/ecore_wl2_input.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/src/lib/ecore_wl2/ecore_wl2_input.c 
b/src/lib/ecore_wl2/ecore_wl2_input.c
index 77d063e..ee95a21 100644
--- a/src/lib/ecore_wl2/ecore_wl2_input.c
+++ b/src/lib/ecore_wl2/ecore_wl2_input.c
@@ -25,6 +25,7 @@ _pointer_cb_enter(void *data, struct wl_pointer *pointer 
EINA_UNUSED, unsigned i
    if (!window) return;
 
    input->focus.pointer = window;
+
    /* TODO: send mouse in event */
 }
 
@@ -32,9 +33,21 @@ static void
 _pointer_cb_leave(void *data, struct wl_pointer *pointer EINA_UNUSED, unsigned 
int serial, struct wl_surface *surface)
 {
    Ecore_Wl2_Input *input;
+   Ecore_Wl2_Window *window;
 
    input = data;
    if (!input) return;
+
+   input->focus.pointer = NULL;
+
+   /* trap for a surface that was just destroyed */
+   if (!surface) return;
+
+   /* find the window which this surface belongs to */
+   window = _ecore_wl2_display_window_surface_find(input->display, surface);
+   if (!window) return;
+
+   /* TODO: send mouse out event */
 }
 
 static void

-- 


Reply via email to