forked from enlightenment/efl
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
This commit is contained in:
parent
2a970046bc
commit
e3557ec944
|
@ -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));
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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)
|
||||
{
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue