diff options
author | Marcel Hollerbach <mail@marcel-hollerbach.de> | 2019-07-12 20:04:06 +0200 |
---|---|---|
committer | Marcel Hollerbach <mail@marcel-hollerbach.de> | 2019-07-25 20:42:39 +0200 |
commit | e3557ec944271902b92523beffbadc09c054e700 (patch) | |
tree | 311e23e8afad7b5a4f86b573c9d1d629e9a6914a | |
parent | 2a970046bc6355af59e0b4c0f7d44e0b44d764bb (diff) | |
download | efl-e3557ec944271902b92523beffbadc09c054e700.tar.gz |
efl_ui_spotlight_manager_*: cleanup canvas state on invalidate
this is needed so we can support a empty object which is not freed.
Sounds useless, but required by bindings, this fixes the issue described
in D9300.
Differential Revision: https://phab.enlightenment.org/D9306
4 files changed, 6 insertions, 6 deletions
diff --git a/src/lib/elementary/efl_ui_spotlight_manager_scroll.c b/src/lib/elementary/efl_ui_spotlight_manager_scroll.c index 1bc688b30d..778079d864 100644 --- a/src/lib/elementary/efl_ui_spotlight_manager_scroll.c +++ b/src/lib/elementary/efl_ui_spotlight_manager_scroll.c @@ -316,7 +316,7 @@ _efl_ui_spotlight_manager_scroll_efl_ui_spotlight_manager_animation_enabled_get( EOLIAN static void -_efl_ui_spotlight_manager_scroll_efl_object_destructor(Eo *obj, Efl_Ui_Spotlight_Manager_Scroll_Data *pd EINA_UNUSED) +_efl_ui_spotlight_manager_scroll_efl_object_invalidate(Eo *obj, Efl_Ui_Spotlight_Manager_Scroll_Data *pd EINA_UNUSED) { efl_event_callback_del(pd->group, EFL_GFX_ENTITY_EVENT_SIZE_CHANGED, _resize_cb, obj); efl_event_callback_del(pd->group, EFL_GFX_ENTITY_EVENT_POSITION_CHANGED, _move_cb, obj); @@ -329,7 +329,7 @@ _efl_ui_spotlight_manager_scroll_efl_object_destructor(Eo *obj, Efl_Ui_Spotlight efl_canvas_object_clipper_set(efl_pack_content_get(pd->container, i), NULL); } - efl_destructor(efl_super(obj, MY_CLASS)); + efl_invalidate(efl_super(obj, MY_CLASS)); } diff --git a/src/lib/elementary/efl_ui_spotlight_manager_scroll.eo b/src/lib/elementary/efl_ui_spotlight_manager_scroll.eo index 8ba9ac6597..942ad192ca 100644 --- a/src/lib/elementary/efl_ui_spotlight_manager_scroll.eo +++ b/src/lib/elementary/efl_ui_spotlight_manager_scroll.eo @@ -7,6 +7,6 @@ class @beta Efl.Ui.Spotlight.Manager_Scroll extends Efl.Ui.Spotlight.Manager Efl.Ui.Spotlight.Manager.switch_to; Efl.Ui.Spotlight.Manager.size {set;} Efl.Ui.Spotlight.Manager.animation_enabled {set; get;} - Efl.Object.destructor; + Efl.Object.invalidate; } } diff --git a/src/lib/elementary/efl_ui_spotlight_manager_stack.c b/src/lib/elementary/efl_ui_spotlight_manager_stack.c index ceff490f69..0df770db7c 100644 --- a/src/lib/elementary/efl_ui_spotlight_manager_stack.c +++ b/src/lib/elementary/efl_ui_spotlight_manager_stack.c @@ -231,12 +231,12 @@ _efl_ui_spotlight_manager_stack_efl_ui_spotlight_manager_size_set(Eo *obj, Efl_U } EOLIAN static void -_efl_ui_spotlight_manager_stack_efl_object_destructor(Eo *obj, Efl_Ui_Spotlight_Manager_Stack_Data *pd EINA_UNUSED) +_efl_ui_spotlight_manager_stack_efl_object_invalidate(Eo *obj, Efl_Ui_Spotlight_Manager_Stack_Data *pd EINA_UNUSED) { efl_event_callback_del(pd->group, EFL_GFX_ENTITY_EVENT_SIZE_CHANGED, _resize_cb, obj); efl_event_callback_del(pd->group, EFL_GFX_ENTITY_EVENT_POSITION_CHANGED, _move_cb, obj); - efl_destructor(efl_super(obj, MY_CLASS)); + efl_invalidate(efl_super(obj, MY_CLASS)); for (int i = 0; i < efl_content_count(pd->container); ++i) { diff --git a/src/lib/elementary/efl_ui_spotlight_manager_stack.eo b/src/lib/elementary/efl_ui_spotlight_manager_stack.eo index 999293bda7..c18fe31a8a 100644 --- a/src/lib/elementary/efl_ui_spotlight_manager_stack.eo +++ b/src/lib/elementary/efl_ui_spotlight_manager_stack.eo @@ -7,6 +7,6 @@ class @beta Efl.Ui.Spotlight.Manager_Stack extends Efl.Ui.Spotlight.Manager Efl.Ui.Spotlight.Manager.switch_to; Efl.Ui.Spotlight.Manager.size {set;} Efl.Ui.Spotlight.Manager.animation_enabled {set; get;} - Efl.Object.destructor; + Efl.Object.invalidate; } } |