From 1bf6603baa06df64bd12b176b38128879c9cebd9 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Mon, 9 Feb 2015 14:35:11 -0500 Subject: [PATCH] force wl client cursor clients to hide when unset from pointer --- src/bin/e_comp_wl.c | 8 +++++++- src/bin/e_comp_wl_input.c | 1 + 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c index c042ddbf6..0d0c99f52 100644 --- a/src/bin/e_comp_wl.c +++ b/src/bin/e_comp_wl.c @@ -205,7 +205,13 @@ _e_comp_wl_evas_cb_mouse_out(void *data, Evas *evas EINA_UNUSED, Evas_Object *ob ecore_evas_cursor_get(e_comp->ee, &o, NULL, NULL, NULL); if (e_comp->pointer->o_ptr != o) - e_pointer_object_set(e_comp->pointer, NULL, 0, 0); + { + E_Client *pec; + + pec = e_comp_object_client_get(o); + if (pec) pec->hidden = 1; + e_pointer_object_set(e_comp->pointer, NULL, 0, 0); + } } if (e_object_is_del(E_OBJECT(ec))) return; diff --git a/src/bin/e_comp_wl_input.c b/src/bin/e_comp_wl_input.c index baab45ab1..fbbffdcf3 100644 --- a/src/bin/e_comp_wl_input.c +++ b/src/bin/e_comp_wl_input.c @@ -49,6 +49,7 @@ _e_comp_wl_input_pointer_cb_cursor_set(struct wl_client *client, struct wl_resou } /* ignore cursor changes during resize/move I guess */ if (e_client_action_get()) return; + ec->hidden = 0; e_pointer_object_set(e_comp->pointer, ec->frame, x, y); }