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
This commit is contained in:
Mike Blumenkrantz 2016-03-07 14:40:27 -05:00
parent d83621f7e4
commit a346c622b6
1 changed files with 7 additions and 1 deletions

View File

@ -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.y,
cw->ec->client.w, cw->ec->client.h)) return;
}
e_client_mouse_in(cw->ec, ev->output.x, ev->output.y);
}