diff options
author | Marcel Hollerbach <marcel-hollerbach@t-online.de> | 2017-07-24 17:58:13 +0200 |
---|---|---|
committer | Marcel Hollerbach <marcel-hollerbach@t-online.de> | 2017-07-24 23:40:38 +0200 |
commit | 6f0b79fe4b9552f3b3f29f72241ed6b79ce3532c (patch) | |
tree | b4330a783c8646d4e368c9604f80d4d1b40e6edc | |
parent | b49df7128aef02f3b75804d9102163ed4ff5ad8a (diff) | |
download | efl-6f0b79fe4b9552f3b3f29f72241ed6b79ce3532c.tar.gz |
elm_widget: call the events after eval outself with new manager/parent
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
-rw-r--r-- | src/lib/elementary/elm_widget.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c index 3a446d5677..ede91bf82c 100644 --- a/src/lib/elementary/elm_widget.c +++ b/src/lib/elementary/elm_widget.c @@ -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); } /** |