discomfitor pushed a commit to branch enlightenment-0.20.


commit a346c622b638b80e78dd5321d2668acd4095b4e2
Author: Mike Blumenkrantz <zm...@osg.samsung.com>
Date:   Mon Mar 7 14:40:27 2016 -0500

    reject x11 client mouse-in events on comp object based on frame geometry
    mousing over a window for an x11 client should always yield x11 mouse events
    in cases where mouse eventing is required; any events occurring on the comp
    object in other cases inside the xwindow region are able to be ignored
 src/bin/e_comp_object.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c
index ff356ba..43d4ed7 100644
--- a/src/bin/e_comp_object.c
+++ b/src/bin/e_comp_object.c
@@ -350,11 +350,17 @@ _e_comp_object_cb_signal_bind(void *data, Evas_Object 
*obj EINA_UNUSED, const ch
 /* handle evas mouse-in events on client object */
 static void
-_e_comp_object_cb_mouse_in(void *data, Evas *e EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_info)
+_e_comp_object_cb_mouse_in(void *data, Evas *e EINA_UNUSED, Evas_Object *obj, 
void *event_info)
    Evas_Event_Mouse_In *ev = event_info;
    E_Comp_Object *cw = data;
+   if (e_pixmap_is_x(cw->ec->pixmap))
+     {
+        if (!e_comp_object_frame_allowed(obj)) return;
+        if (E_INSIDE(ev->output.x, ev->output.y, cw->ec->client.x, 
+            cw->ec->client.w, cw->ec->client.h)) return;
+     }
    e_client_mouse_in(cw->ec, ev->output.x, ev->output.y);


Reply via email to