forked from enlightenment/enlightenment
if gadget wizard returns a zero id, remove gadget from site and destroy
This commit is contained in:
parent
4c58940291
commit
446860b68a
|
@ -324,6 +324,15 @@ _gadget_object_free(E_Object *eobj)
|
|||
if (zgc->id == -1) _gadget_free(zgc);
|
||||
}
|
||||
|
||||
static void
|
||||
_gadget_remove(E_Gadget_Config *zgc)
|
||||
{
|
||||
evas_object_smart_callback_call(zgc->site->layout, "gadget_removed", zgc->gadget);
|
||||
zgc->site->gadget_list = eina_inlist_remove(zgc->site->gadget_list, EINA_INLIST_GET(zgc));
|
||||
zgc->site->gadgets = eina_list_remove(zgc->site->gadgets, zgc);
|
||||
_gadget_free(zgc);
|
||||
}
|
||||
|
||||
static void
|
||||
_gadget_wizard_end(void *data, int id)
|
||||
{
|
||||
|
@ -331,7 +340,10 @@ _gadget_wizard_end(void *data, int id)
|
|||
|
||||
zgc->id = id;
|
||||
evas_object_smart_callback_call(zgc->site->layout, "gadget_site_unlocked", NULL);
|
||||
if (id)
|
||||
_gadget_object_finalize(zgc);
|
||||
else
|
||||
_gadget_remove(zgc);
|
||||
}
|
||||
|
||||
static Eina_Bool
|
||||
|
@ -854,15 +866,6 @@ _gadget_act_configure(E_Object *obj, const char *params EINA_UNUSED, E_Binding_E
|
|||
return EINA_TRUE;
|
||||
}
|
||||
|
||||
static void
|
||||
_gadget_remove(E_Gadget_Config *zgc)
|
||||
{
|
||||
evas_object_smart_callback_call(zgc->site->layout, "gadget_removed", zgc->gadget);
|
||||
zgc->site->gadget_list = eina_inlist_remove(zgc->site->gadget_list, EINA_INLIST_GET(zgc));
|
||||
zgc->site->gadgets = eina_list_remove(zgc->site->gadgets, zgc);
|
||||
_gadget_free(zgc);
|
||||
}
|
||||
|
||||
static void
|
||||
_gadget_menu_remove(void *data, E_Menu *m EINA_UNUSED, E_Menu_Item *mi EINA_UNUSED)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue