allow NULL object in e_comp_object_util_autoclose()
this can be used to unset the current autoclose object in the case where the object is known to evade normal autoclose detection mechanisms
This commit is contained in:
parent
3304ea7b6c
commit
887ccb4f83
|
@ -4200,14 +4200,13 @@ _e_comp_object_autoclose_del(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_O
|
||||||
E_API void
|
E_API void
|
||||||
e_comp_object_util_autoclose(Evas_Object *obj, E_Comp_Object_Autoclose_Cb del_cb, E_Comp_Object_Key_Cb cb, const void *data)
|
e_comp_object_util_autoclose(Evas_Object *obj, E_Comp_Object_Autoclose_Cb del_cb, E_Comp_Object_Key_Cb cb, const void *data)
|
||||||
{
|
{
|
||||||
SOFT_ENTRY();
|
|
||||||
|
|
||||||
if (e_comp->autoclose.obj)
|
if (e_comp->autoclose.obj)
|
||||||
{
|
{
|
||||||
if (e_comp->autoclose.obj == obj) return;
|
if (e_comp->autoclose.obj == obj) return;
|
||||||
evas_object_event_callback_del_full(e_comp->autoclose.obj, EVAS_CALLBACK_DEL, _e_comp_object_autoclose_del, e_comp);
|
evas_object_event_callback_del_full(e_comp->autoclose.obj, EVAS_CALLBACK_DEL, _e_comp_object_autoclose_del, e_comp);
|
||||||
_e_comp_object_autoclose_cleanup(0);
|
_e_comp_object_autoclose_cleanup(0);
|
||||||
}
|
}
|
||||||
|
if (!obj) return;
|
||||||
e_comp->autoclose.obj = obj;
|
e_comp->autoclose.obj = obj;
|
||||||
e_comp->autoclose.del_cb = del_cb;
|
e_comp->autoclose.del_cb = del_cb;
|
||||||
e_comp->autoclose.key_cb = cb;
|
e_comp->autoclose.key_cb = cb;
|
||||||
|
|
Loading…
Reference in New Issue