From ca7fa61537a23d500ee985378c02d08d72493af8 Mon Sep 17 00:00:00 2001 From: "duna.oh" Date: Tue, 29 Aug 2023 08:41:14 +0900 Subject: [PATCH] e_comp_wl: update pointer's position when mouse_in Mouse_In events are sent before Mouse_Move events. This commit is to update pointer's position(ptr.x/y) when Mouse_In cb. There was a bug that E20 decided whether pointer's position is inside of a client(or region) in Mouse_In cb and it failed since position is not updated yet in Mouse_In cb. Change-Id: I63136fcb83a32e599bacc6a74b3efd8540a6d8bb --- src/bin/e_comp_wl.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c index 77042e675d..f06f7707f5 100644 --- a/src/bin/e_comp_wl.c +++ b/src/bin/e_comp_wl.c @@ -1223,6 +1223,10 @@ _e_comp_wl_evas_cb_mouse_in(void *data, Evas *evas EINA_UNUSED, Evas_Object *obj uint32_t serial; ev = event; + + e_comp_wl->ptr.x = wl_fixed_from_int(ev->canvas.x); + e_comp_wl->ptr.y = wl_fixed_from_int(ev->canvas.y); + if (!(ec = data)) return; if (e_object_is_del(E_OBJECT(ec))) return; struct wl_resource *surface = e_comp_wl_client_surface_get(ec); -- 2.34.1