elm_widget: call the events after eval outself with new manager/parent
authorMarcel Hollerbach <marcel-hollerbach@t-online.de>
Mon, 24 Jul 2017 15:58:13 +0000 (17:58 +0200)
committerMarcel Hollerbach <marcel-hollerbach@t-online.de>
Mon, 24 Jul 2017 21:40:38 +0000 (23:40 +0200)
otherwise we might end up with a node_get error, since the widget where
the event is called on is still registered in the wrong manager

src/lib/elementary/elm_widget.c

index 3a446d5..ede91bf 100644 (file)
@@ -420,6 +420,8 @@ _full_eval(Eo *obj, Elm_Widget_Smart_Data *pd)
         _focus_state_eval(pd->logical.parent, new_pd);
      }
 
+   _focus_state_eval(obj, pd);
+
    if (old_parent != pd->logical.parent)
      {
         efl_event_callback_call(obj,
@@ -433,7 +435,6 @@ _full_eval(Eo *obj, Elm_Widget_Smart_Data *pd)
              EFL_UI_FOCUS_USER_EVENT_MANAGER_CHANGED, old_manager);
      }
 
-   _focus_state_eval(obj, pd);
 }
 
 /**