only delete gadcon stuff from a shelf if it isn't a dummy

SVN revision: 74633
This commit is contained in:
Mike Blumenkrantz 2012-07-31 09:48:02 +00:00
parent 873febc02b
commit 3b2587d064
1 changed files with 6 additions and 3 deletions

View File

@ -935,12 +935,9 @@ _e_shelf_free(E_Shelf *es)
if (!es->dummy) if (!es->dummy)
_e_shelf_bindings_del(es); _e_shelf_bindings_del(es);
e_gadcon_location_unregister(es->gadcon->location);
e_gadcon_location_free(es->gadcon->location);
e_zone_useful_geometry_dirty(es->zone); e_zone_useful_geometry_dirty(es->zone);
E_FREE_LIST(es->handlers, ecore_event_handler_del); E_FREE_LIST(es->handlers, ecore_event_handler_del);
e_object_del(E_OBJECT(es->gadcon));
if (es->hide_timer) if (es->hide_timer)
{ {
ecore_timer_del(es->hide_timer); ecore_timer_del(es->hide_timer);
@ -972,6 +969,12 @@ _e_shelf_free(E_Shelf *es)
evas_object_event_callback_del_full(es->o_base, EVAS_CALLBACK_RESIZE, evas_object_event_callback_del_full(es->o_base, EVAS_CALLBACK_RESIZE,
(Evas_Object_Event_Cb)_e_shelf_cb_dummy_moveresize, es); (Evas_Object_Event_Cb)_e_shelf_cb_dummy_moveresize, es);
} }
else
{
e_gadcon_location_unregister(es->gadcon->location);
e_gadcon_location_free(es->gadcon->location);
e_object_del(E_OBJECT(es->gadcon));
}
if (es->config_dialog) e_object_del(E_OBJECT(es->config_dialog)); if (es->config_dialog) e_object_del(E_OBJECT(es->config_dialog));
eina_stringshare_del(es->name); eina_stringshare_del(es->name);
eina_stringshare_del(es->style); eina_stringshare_del(es->style);