From 46bf4a3830b96d93e6f8e70882090713174fb7ef Mon Sep 17 00:00:00 2001 From: "duna.oh" Date: Wed, 21 Sep 2022 10:38:01 +0900 Subject: [PATCH] e_comp_wl: move a code checking 'cur_mouse_action' value If 'cur_mouse_action' is not null, E20 should not send events to clients. So its value should be checked right before sending wayland events. This patch allows the cursor to follow mouse movement when user is doing mouse action such as resizing/moving windows). Change-Id: Ia53521b1bd4d07400dba8280fad8cde3ea7cf9e4 --- src/bin/e_comp_wl.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c index 7b9e435..3892d66 100644 --- a/src/bin/e_comp_wl.c +++ b/src/bin/e_comp_wl.c @@ -957,6 +957,7 @@ _e_comp_wl_device_send_axis(const char *dev_name, Evas_Device_Class dev_class, E wl_fixed_t f_value; if (!ec) return; + if (ec->cur_mouse_action) return; if (e_object_is_del(E_OBJECT(ec))) return; if (!ec->comp_data || !ec->comp_data->surface) return; @@ -1232,6 +1233,7 @@ _e_comp_wl_send_touch_move(E_Client *ec, int idx, int canvas_x, int canvas_y, ui wl_fixed_t x, y; if (!ec) return; + if (ec->cur_mouse_action) return; if (e_object_is_del(E_OBJECT(ec))) return; if (!ec->comp_data || !ec->comp_data->surface) return; @@ -1256,6 +1258,7 @@ _e_comp_wl_send_mouse_move(E_Client *ec, int x, int y, unsigned int timestamp) Eina_List *l; if (!ec) return; + if (ec->cur_mouse_action) return; if (e_object_is_del(E_OBJECT(ec))) return; if (!ec->comp_data || !ec->comp_data->surface) return; @@ -1308,7 +1311,6 @@ _e_comp_wl_evas_cb_mouse_move(void *data, Evas *evas EINA_UNUSED, Evas_Object *o e_comp->wl_comp_data->ptr.y = wl_fixed_from_int(ev->cur.canvas.y); if (!(ec = data)) return; - if (ec->cur_mouse_action) return; if (e_object_is_del(E_OBJECT(ec))) return; if ((ec->ignored) && (!ec->remote_surface.provider)) return; if (!ec->comp_data || !ec->comp_data->surface) return; -- 2.7.4