bu5hm4n pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=1c9762d8cae61935ac69303b1b8814cd0a28e2ef

commit 1c9762d8cae61935ac69303b1b8814cd0a28e2ef
Author: Marcel Hollerbach <marcel-hollerb...@t-online.de>
Date:   Tue Jul 18 16:16:18 2017 +0200

    elm_widget: do not register disabled logical nodes
    
    this reduces the load of useless logical trees that
    
    ref T5753
---
 src/lib/elementary/elm_widget.c | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c
index c14e711fb5..4e9a3a72f0 100644
--- a/src/lib/elementary/elm_widget.c
+++ b/src/lib/elementary/elm_widget.c
@@ -315,7 +315,19 @@ _focus_state_eval(Eo *obj, Elm_Widget_Smart_Data *pd)
      }
 
    if (!should && pd->logical.child_count > 0)
-     should = EINA_TRUE;
+     {
+        should = EINA_TRUE;
+
+        if (_tree_unfocusable(obj))
+          should = EINA_FALSE;
+
+        if (_tree_disabled(obj))
+          should = EINA_FALSE;
+
+        if (!evas_object_visible_get(obj))
+          should = EINA_FALSE;
+
+     }
 
    if ( //check if we have changed the manager
         (pd->focus.manager != manager && should) ||

-- 


Reply via email to