in general, any time e_icon_object_set is used, it's wrong. e_icon doesn't handle these cases and fails in every case other than the initial _set() call.

SVN revision: 74209
This commit is contained in:
Mike Blumenkrantz 2012-07-20 06:53:52 +00:00
parent 3b3403b127
commit f66e16178c
1 changed files with 3 additions and 8 deletions

View File

@ -2916,14 +2916,9 @@ _e_gadcon_client_cb_menu_pre(void *data, E_Menu *m __UNUSED__, E_Menu_Item *mi)
if (!(gcc = data)) return;
if (gcc->client_class->func.icon)
{
Evas_Object *ic;
// e menu ASSUMES... EXPECTS the icon to be an.... e_icon! make it so.
ic = gcc->client_class->func.icon
((E_Gadcon_Client_Class *)gcc->client_class,
mi->menu->evas);
mi->icon_object = e_icon_add(mi->menu->evas);
e_icon_object_set(mi->icon_object, ic);
// e menu ASSUMES... EXPECTS the icon to be an.... e_icon!
// if it's not, spankies for whoever wrote the icon callback!
mi->icon_object = gcc->client_class->func.icon ((E_Gadcon_Client_Class *)gcc->client_class, mi->menu->evas);
}
else
e_util_menu_item_theme_icon_set(mi, "preferences-gadget"); // FIXME: Needs icon in theme