From daa98e867d5340fac9ee087e637be38f653b01fe Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Thu, 27 Mar 2014 09:59:48 -0400 Subject: [PATCH] fix lots of edje emits on non-edje objects --- src/bin/e_comp_object.c | 3 ++- src/bin/e_entry.c | 4 ++-- src/bin/e_fm.c | 3 --- src/bin/e_menu.c | 12 ++++++------ src/bin/e_widget_toolbar.c | 4 ++-- src/modules/ibar/e_mod_main.c | 8 ++++---- src/modules/tasks/e_mod_main.c | 3 ++- src/modules/winlist/e_winlist.c | 8 ++++---- 8 files changed, 22 insertions(+), 23 deletions(-) diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c index 30f0c28fe..76771339c 100644 --- a/src/bin/e_comp_object.c +++ b/src/bin/e_comp_object.c @@ -2788,7 +2788,8 @@ e_comp_object_signal_emit(Evas_Object *obj, const char *sig, const char *src) //INF("EMIT %p: %s %s", cw->ec, sig, src); edje_object_signal_emit(cw->shobj, sig, src); if (cw->frame_object) edje_object_signal_emit(cw->frame_object, sig, src); - if (cw->frame_icon) edje_object_signal_emit(cw->frame_icon, sig, src); + if (cw->frame_icon && e_icon_edje_get(cw->frame_icon)) + edje_object_signal_emit(e_icon_edje_get(cw->frame_icon), sig, src); EINA_INLIST_REVERSE_FOREACH(_e_comp_object_movers, prov) { if (!e_util_glob_match(sig, prov->sig)) continue; diff --git a/src/bin/e_entry.c b/src/bin/e_entry.c index e8e0c550f..874d0b905 100644 --- a/src/bin/e_entry.c +++ b/src/bin/e_entry.c @@ -275,7 +275,7 @@ e_entry_focus(Evas_Object *entry) if ((sd->enabled) && (!sd->noedit)) evas_object_focus_set(sd->entry_object, EINA_TRUE); edje_object_signal_emit(sd->entry_object, "e,state,focused", "e"); - edje_object_signal_emit(sd->scroll_object, "e,state,focused", "e"); + edje_object_signal_emit(e_scrollframe_edje_object_get(sd->scroll_object), "e,state,focused", "e"); edje_object_part_text_cursor_end_set(sd->entry_object, ENTRY_PART_NAME, EDJE_CURSOR_MAIN); if ((sd->enabled) && (!sd->noedit)) @@ -302,7 +302,7 @@ e_entry_unfocus(Evas_Object *entry) return; edje_object_signal_emit(sd->entry_object, "e,state,unfocused", "e"); - edje_object_signal_emit(sd->scroll_object, "e,state,unfocused", "e"); + edje_object_signal_emit(e_scrollframe_edje_object_get(sd->scroll_object), "e,state,unfocused", "e"); evas_object_focus_set(sd->entry_object, EINA_FALSE); edje_object_signal_emit(sd->entry_object, "e,action,hide,cursor", "e"); sd->focused = EINA_FALSE; diff --git a/src/bin/e_fm.c b/src/bin/e_fm.c index a1aeca2a6..bc6bec0e3 100644 --- a/src/bin/e_fm.c +++ b/src/bin/e_fm.c @@ -4888,7 +4888,6 @@ _e_fm2_icon_realize(E_Fm2_Icon *ic) /* FIXME: while listing dirs need to use icons in-place and not * unrealize and re-realize */ edje_object_signal_emit(ic->obj, "e,state,selected", "e"); - edje_object_signal_emit(ic->obj_icon, "e,state,selected", "e"); selectraise = edje_object_data_get(ic->obj, "selectraise"); if ((selectraise) && (!strcmp(selectraise, "on"))) evas_object_stack_below(ic->obj, ic->sd->drop); @@ -5049,7 +5048,6 @@ _e_fm2_icon_select(E_Fm2_Icon *ic) _e_fm2_icon_entry_widget_accept(ic->sd->iop_icon); edje_object_signal_emit(ic->obj, "e,state,selected", "e"); - edje_object_signal_emit(ic->obj_icon, "e,state,selected", "e"); evas_object_stack_below(ic->obj, ic->sd->drop); selectraise = edje_object_data_get(ic->obj, "selectraise"); if ((selectraise) && (!strcmp(selectraise, "on"))) @@ -5075,7 +5073,6 @@ _e_fm2_icon_deselect(E_Fm2_Icon *ic) _e_fm2_icon_entry_widget_del(ic); edje_object_signal_emit(ic->obj, "e,state,unselected", "e"); - edje_object_signal_emit(ic->obj_icon, "e,state,unselected", "e"); stacking = edje_object_data_get(ic->obj, "stacking"); selectraise = edje_object_data_get(ic->obj, "selectraise"); if ((selectraise) && (!strcmp(selectraise, "on"))) diff --git a/src/bin/e_menu.c b/src/bin/e_menu.c index bf6c294ae..1de74d0e5 100644 --- a/src/bin/e_menu.c +++ b/src/bin/e_menu.c @@ -880,11 +880,11 @@ e_menu_item_toggle_set(E_Menu_Item *mi, int tog) edje_object_signal_emit(mi->bg_object, "e,state,on", "e"); if (mi->icon_bg_object) edje_object_signal_emit(mi->icon_bg_object, "e,state,on", "e"); - if (mi->label_object) + if (mi->label_object && eo_isa(mi->submenu_object, EDJE_OBJ_CLASS)) edje_object_signal_emit(mi->label_object, "e,state,on", "e"); - if (mi->submenu_object) + if (mi->submenu_object && eo_isa(mi->submenu_object, EDJE_OBJ_CLASS)) edje_object_signal_emit(mi->submenu_object, "e,state,on", "e"); - if (mi->toggle_object) + if (mi->toggle_object && eo_isa(mi->submenu_object, EDJE_OBJ_CLASS)) edje_object_signal_emit(mi->toggle_object, "e,state,on", "e"); if (mi->menu->bg_object) edje_object_signal_emit(mi->menu->bg_object, "e,state,on", "e"); @@ -896,11 +896,11 @@ e_menu_item_toggle_set(E_Menu_Item *mi, int tog) edje_object_signal_emit(mi->bg_object, "e,state,off", "e"); if (mi->icon_bg_object) edje_object_signal_emit(mi->icon_bg_object, "e,state,off", "e"); - if (mi->label_object) + if (mi->label_object && eo_isa(mi->submenu_object, EDJE_OBJ_CLASS)) edje_object_signal_emit(mi->label_object, "e,state,off", "e"); - if (mi->submenu_object) + if (mi->submenu_object && eo_isa(mi->submenu_object, EDJE_OBJ_CLASS)) edje_object_signal_emit(mi->submenu_object, "e,state,off", "e"); - if (mi->toggle_object) + if (mi->toggle_object && eo_isa(mi->submenu_object, EDJE_OBJ_CLASS)) edje_object_signal_emit(mi->toggle_object, "e,state,off", "e"); if (mi->menu->bg_object) edje_object_signal_emit(mi->menu->bg_object, "e,state,off", "e"); diff --git a/src/bin/e_widget_toolbar.c b/src/bin/e_widget_toolbar.c index 612958c57..d5e263ecc 100644 --- a/src/bin/e_widget_toolbar.c +++ b/src/bin/e_widget_toolbar.c @@ -533,12 +533,12 @@ _e_wid_focus_hook(Evas_Object *obj) if (!(wd = e_widget_data_get(obj))) return; if (e_widget_focus_get(obj)) { - edje_object_signal_emit(wd->o_base, "e,state,focused", "e"); + edje_object_signal_emit(e_scrollframe_edje_object_get(wd->o_base), "e,state,focused", "e"); evas_object_focus_set(obj, EINA_TRUE); } else { - edje_object_signal_emit(wd->o_base, "e,state,unfocused", "e"); + edje_object_signal_emit(e_scrollframe_edje_object_get(wd->o_base), "e,state,unfocused", "e"); evas_object_focus_set(obj, EINA_FALSE); } } diff --git a/src/modules/ibar/e_mod_main.c b/src/modules/ibar/e_mod_main.c index d963ccdfb..78e380c5f 100644 --- a/src/modules/ibar/e_mod_main.c +++ b/src/modules/ibar/e_mod_main.c @@ -1003,12 +1003,12 @@ _ibar_icon_signal_emit(IBar_Icon *ic, char *sig, char *src) { if (ic->o_holder) edje_object_signal_emit(ic->o_holder, sig, src); - if (ic->o_icon) - edje_object_signal_emit(ic->o_icon, sig, src); + if (ic->o_icon && e_icon_edje_get(ic->o_icon)) + edje_object_signal_emit(e_icon_edje_get(ic->o_icon), sig, src); if (ic->o_holder2) edje_object_signal_emit(ic->o_holder2, sig, src); - if (ic->o_icon2) - edje_object_signal_emit(ic->o_icon2, sig, src); + if (ic->o_icon2 && e_icon_edje_get(ic->o_icon)) + edje_object_signal_emit(e_icon_edje_get(ic->o_icon2), sig, src); } static void diff --git a/src/modules/tasks/e_mod_main.c b/src/modules/tasks/e_mod_main.c index d39ded0e1..1eb6d706f 100644 --- a/src/modules/tasks/e_mod_main.c +++ b/src/modules/tasks/e_mod_main.c @@ -656,7 +656,8 @@ static void _tasks_item_signal_emit(Tasks_Item *item, char *sig, char *src) { if (item->o_item) edje_object_signal_emit(item->o_item, sig, src); - if (item->o_icon) edje_object_signal_emit(item->o_icon, sig, src); + if (item->o_icon && e_icon_edje_get(item->o_icon)) + edje_object_signal_emit(e_icon_edje_get(item->o_icon), sig, src); } static Config_Item * diff --git a/src/modules/winlist/e_winlist.c b/src/modules/winlist/e_winlist.c index 5339ec5ed..5eaf6a301 100644 --- a/src/modules/winlist/e_winlist.c +++ b/src/modules/winlist/e_winlist.c @@ -929,8 +929,8 @@ _e_winlist_activate(void) if (!_win_selected) return; ww = _win_selected->data; edje_object_signal_emit(ww->bg_object, "e,state,selected", "e"); - if (ww->icon_object) - edje_object_signal_emit(ww->icon_object, + if (ww->icon_object && e_icon_edje_get(ww->icon_object)) + edje_object_signal_emit(e_icon_edje_get(ww->icon_object), "e,state,selected", "e"); if ((ww->client->iconic) && @@ -1030,8 +1030,8 @@ _e_winlist_deactivate(void) ww->was_iconified = 0; edje_object_part_text_set(_bg_object, "e.text.label", ""); edje_object_signal_emit(ww->bg_object, "e,state,unselected", "e"); - if (ww->icon_object) - edje_object_signal_emit(ww->icon_object, + if (ww->icon_object && e_icon_edje_get(ww->icon_object)) + edje_object_signal_emit(e_icon_edje_get(ww->icon_object), "e,state,unselected", "e"); if (!ww->client->lock_focus_in) evas_object_focus_set(ww->client->frame, 0);