This is an automated email from the git hooks/post-receive script.

git pushed a commit to branch master
in repository enlightenment.

View the commit online.

commit 234207c19f15a690a37747b9d517d9fbe2cc79fe
Author: Carsten Haitzler <[email protected]>
AuthorDate: Wed Jun 24 18:29:28 2026 +0100

    pointer focus - fix top wiondow find in timer+job fix after in ev
    
    @fix
---
 src/bin/e_comp_x.c | 68 ++++++++++++++++++++++++++++++++----------------------
 1 file changed, 41 insertions(+), 27 deletions(-)

diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c
index 2de08967f..28516c009 100644
--- a/src/bin/e_comp_x.c
+++ b/src/bin/e_comp_x.c
@@ -2633,35 +2633,49 @@ _e_comp_x_e_client_obj_get(Evas_Object *o)
 static Eina_Bool
 _e_comp_x_mouse_in_fix_check_timer_cb(void *data EINA_UNUSED)
 {
-   E_Client *ec = NULL;
-   Eina_List *l, *in_list;
-   Evas_Object *o;
-   int x, y;
+  E_Client *ec = NULL;
+  Eina_List *l, *in_list = NULL;
+  Evas_Object *o;
+  int x, y;
 
-   mouse_in_fix_check_timer = NULL;
-   if (e_grabinput_key_win_get() || e_grabinput_mouse_win_get())
-     return EINA_FALSE;
-   ecore_evas_pointer_xy_get(e_comp->ee, &x, &y);
+  mouse_in_fix_check_timer = NULL;
+  if (e_grabinput_key_win_get() || e_grabinput_mouse_win_get())
+    return EINA_FALSE;
+  ecore_evas_pointer_xy_get(e_comp->ee, &x, &y);
 
-   in_list = evas_tree_objects_at_xy_get(e_comp->evas, NULL, x, y);
-   EINA_LIST_FOREACH(in_list, l, o)
-     {
-        ec = _e_comp_x_e_client_obj_get(o);
-        if (ec)
-          {
-             if ((!e_client_util_desk_visible
-                  (ec, e_desk_current_get(e_zone_current_get())))) continue;
-             break;
-          }
-     }
-   eina_list_free(in_list);
-   if (ec)
-     {
-        mouse_client = ec;
-        if (mouse_in_job) ecore_job_del(mouse_in_job);
-        mouse_in_job = ecore_job_add(_e_comp_x_mouse_in_job, NULL);
-     }
-   return EINA_FALSE;
+  o = evas_object_top_at_xy_get(e_comp->evas, x, y, EINA_FALSE, EINA_FALSE);
+  ec = _e_comp_x_e_client_obj_get(o);
+  if (ec)
+    {
+      if ((!e_client_util_desk_visible
+           (ec, e_desk_current_get(e_zone_current_get())))) ec = NULL;
+    }
+  if (!ec)
+    {
+      in_list = evas_tree_objects_at_xy_get(e_comp->evas, NULL, x, y);
+      EINA_LIST_FOREACH(in_list, l, o)
+        {
+          ec = _e_comp_x_e_client_obj_get(o);
+          if (ec)
+            {
+              if ((!e_client_util_desk_visible
+                   (ec, e_desk_current_get(e_zone_current_get()))))
+                {
+                  ec = NULL;
+                  continue;
+                }
+              break;
+            }
+        }
+      eina_list_free(in_list);
+    }
+  if (ec)
+    {
+      mouse_client = ec;
+      if (mouse_in_job) ecore_job_del(mouse_in_job);
+      mouse_in_job = ecore_job_add(_e_comp_x_mouse_in_job, NULL);
+    }
+  return EINA_FALSE;
 }
 
 static Eina_Bool

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.

Reply via email to