From: Junseok Kim Date: Thu, 7 Nov 2024 05:55:05 +0000 (+0900) Subject: e_client: Makes consistency of dragging position X-Git-Tag: accepted/tizen/unified/20241115.152437~13 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1f0f86f5aa31575af6fe93751c77f714b10f320d;p=platform%2Fupstream%2Fenlightenment.git e_client: Makes consistency of dragging position There was a problem that drag enter is not delivered to clients using input rect when dragging. The coordinates of the input rects are stored as the client's surface local coordinates. And the position of the pointer from ecore_event based on coordinates of canvas. During dragging, there was a inconsistency in coordinates while using these two values directly, and It cause issue that did not deliver the drag enter event. To fix this issue, Make consistency of the coordinates between input rect and pointer position by adding the position of the surface into input rect position. Change-Id: Ia4d2c28bf037d3c7c02986b29b72539b993f947b --- diff --git a/src/bin/core/e_client.c b/src/bin/core/e_client.c index 0203e22e13..f960a3ce02 100644 --- a/src/bin/core/e_client.c +++ b/src/bin/core/e_client.c @@ -1903,10 +1903,10 @@ _e_client_under_pointer_input_helper(E_Desk *desk, int x, int y) { EINA_LIST_FREE(list, rect) { - ir_x = rect->x; - ir_y = rect->y; - ir_w = rect->w; - ir_h = rect->h; + ir_x = cx + rect->x; + ir_y = cy + rect->y; + ir_w = cx + rect->w; + ir_h = cy + rect->h; if (e_client_transform_core_enable_get(cec)) {