diff --git a/data/elementary/themes/edc/efl/button.edc b/data/elementary/themes/edc/efl/button.edc index 0f24ebbf7e..cf86312688 100644 --- a/data/elementary/themes/edc/efl/button.edc +++ b/data/elementary/themes/edc/efl/button.edc @@ -331,7 +331,7 @@ group { name: "efl/button"; data.item: "version" "123"; target: "base"; } program { name: "button_text_visible"; - signal: "efl,state,text,set"; source: "efl"; + signal: "efl,text,set"; source: "efl"; script { new m = get_int(btmode); m |= LABEL; set_int(btmode, m); @@ -339,7 +339,7 @@ group { name: "efl/button"; data.item: "version" "123"; } } program { name: "button_text_hidden"; - signal: "efl,state,text,unset"; source: "efl"; + signal: "efl,text,unset"; source: "efl"; script { new m = get_int(btmode); m &= ~LABEL; set_int(btmode, m); @@ -347,7 +347,7 @@ group { name: "efl/button"; data.item: "version" "123"; } } program { name: "button_icon_visible"; - signal: "efl,state,content,set"; source: "efl"; + signal: "efl,content,set"; source: "efl"; script { new m = get_int(btmode); m |= ICON; set_int(btmode, m); @@ -355,7 +355,7 @@ group { name: "efl/button"; data.item: "version" "123"; } } program { name: "button_icon_hidden"; - signal: "efl,state,content,unset"; source: "efl"; + signal: "efl,content,unset"; source: "efl"; script { new m = get_int(btmode); m &= ~ICON; set_int(btmode, m); @@ -713,7 +713,7 @@ group { name: "efl/button:anchor"; data.item: "version" "123"; action: SIGNAL_EMIT "efl,action,click" "efl"; } program { name: "button_text_visible"; - signal: "efl,state,text,set"; source: "efl"; + signal: "efl,text,set"; source: "efl"; script { new m = get_int(btmode); m |= LABEL; set_int(btmode, m); @@ -721,7 +721,7 @@ group { name: "efl/button:anchor"; data.item: "version" "123"; } } program { name: "button_text_hidden"; - signal: "efl,state,text,unset"; source: "efl"; + signal: "efl,text,unset"; source: "efl"; script { new m = get_int(btmode); m &= ~LABEL; set_int(btmode, m); @@ -729,7 +729,7 @@ group { name: "efl/button:anchor"; data.item: "version" "123"; } } program { name: "button_icon_visible"; - signal: "efl,state,content,set"; source: "efl"; + signal: "efl,content,set"; source: "efl"; script { new m = get_int(btmode); m |= ICON; set_int(btmode, m); @@ -737,7 +737,7 @@ group { name: "efl/button:anchor"; data.item: "version" "123"; } } program { name: "button_icon_hidden"; - signal: "efl,state,content,unset"; source: "efl"; + signal: "efl,content,unset"; source: "efl"; script { new m = get_int(btmode); m &= ~ICON; set_int(btmode, m); diff --git a/data/elementary/themes/edc/efl/check.edc b/data/elementary/themes/edc/efl/check.edc index 62d85ed085..5aabedee9e 100644 --- a/data/elementary/themes/edc/efl/check.edc +++ b/data/elementary/themes/edc/efl/check.edc @@ -268,7 +268,7 @@ group { "efl/check"; data.item: "version" "123"; target: "indicator"; } program { - signal: "efl,state,text,set"; source: "efl"; + signal: "efl,text,set"; source: "efl"; script { new m = get_int(btmode); m |= LABEL; set_int(btmode, m); @@ -276,7 +276,7 @@ group { "efl/check"; data.item: "version" "123"; } } program { - signal: "efl,state,text,unset"; source: "efl"; + signal: "efl,text,unset"; source: "efl"; script { new m = get_int(btmode); m &= ~LABEL; set_int(btmode, m); @@ -284,7 +284,7 @@ group { "efl/check"; data.item: "version" "123"; } } program { - signal: "efl,state,content,set"; source: "efl"; + signal: "efl,content,set"; source: "efl"; script { new m = get_int(btmode); m |= ICON; set_int(btmode, m); @@ -292,7 +292,7 @@ group { "efl/check"; data.item: "version" "123"; } } program { - signal: "efl,state,content,unset"; source: "efl"; + signal: "efl,content,unset"; source: "efl"; script { new m = get_int(btmode); m &= ~ICON; set_int(btmode, m); @@ -864,7 +864,7 @@ group { "efl/check:toggle"; data.item: "version" "123"; target: "glow_but"; } program { - signal: "efl,state,text,set"; source: "efl"; + signal: "efl,text,set"; source: "efl"; script { new m = get_int(btmode); m |= LABEL; set_int(btmode, m); @@ -872,7 +872,7 @@ group { "efl/check:toggle"; data.item: "version" "123"; } } program { - signal: "efl,state,text,unset"; source: "efl"; + signal: "efl,text,unset"; source: "efl"; script { new m = get_int(btmode); m &= ~LABEL; set_int(btmode, m); @@ -880,7 +880,7 @@ group { "efl/check:toggle"; data.item: "version" "123"; } } program { - signal: "efl,state,content,set"; source: "efl"; + signal: "efl,content,set"; source: "efl"; script { new m = get_int(btmode); m |= ICON; set_int(btmode, m); @@ -888,7 +888,7 @@ group { "efl/check:toggle"; data.item: "version" "123"; } } program { - signal: "efl,state,content,unset"; source: "efl"; + signal: "efl,content,unset"; source: "efl"; script { new m = get_int(btmode); m &= ~ICON; set_int(btmode, m); diff --git a/data/elementary/themes/edc/efl/popup.edc b/data/elementary/themes/edc/efl/popup.edc index 462fe29365..44557dc944 100644 --- a/data/elementary/themes/edc/efl/popup.edc +++ b/data/elementary/themes/edc/efl/popup.edc @@ -157,13 +157,13 @@ group { "efl/popup/backwall"; data.item: "version" "123"; programs { program { - signal: "efl,state,content,set"; source: "efl"; + signal: "efl,content,set"; source: "efl"; action: STATE_SET "content_visible" 0.0; target: "base"; target: "efl.content"; } program { - signal: "efl,state,content,unset"; source: "efl"; + signal: "efl,content,unset"; source: "efl"; action: STATE_SET "default" 0.0; target: "base"; target: "efl.content"; diff --git a/data/elementary/themes/edc/efl/progress.edc b/data/elementary/themes/edc/efl/progress.edc index 23f3e07432..d319097727 100644 --- a/data/elementary/themes/edc/efl/progress.edc +++ b/data/elementary/themes/edc/efl/progress.edc @@ -505,7 +505,7 @@ group { "efl/progressbar/horizontal"; target: "efl.text.status"; } program { name: "text-visible"; - signal: "efl,state,text,set"; source: "efl"; + signal: "efl,text,set"; source: "efl"; script { new m = get_int(slmode); m |= LABEL; set_int(slmode, m); @@ -513,7 +513,7 @@ group { "efl/progressbar/horizontal"; } } program { name: "text-hidden"; - signal: "efl,state,text,unset"; source: "efl"; + signal: "efl,text,unset"; source: "efl"; script { new m = get_int(slmode); m &= ~LABEL; set_int(slmode, m); @@ -521,7 +521,7 @@ group { "efl/progressbar/horizontal"; } } program { name: "icon-visible"; - signal: "efl,state,content,set"; source: "efl"; + signal: "efl,content,set"; source: "efl"; script { new m = get_int(slmode); m |= ICON; set_int(slmode, m); @@ -529,7 +529,7 @@ group { "efl/progressbar/horizontal"; } } program { name: "icon-hidden"; - signal: "efl,state,content,unset"; source: "efl"; + signal: "efl,content,unset"; source: "efl"; script { new m = get_int(slmode); m &= ~ICON; set_int(slmode, m); @@ -1079,7 +1079,7 @@ group { "efl/progressbar/vertical"; target: "efl.text.status"; } program { name: "text-visible"; - signal: "efl,state,text,set"; source: "efl"; + signal: "efl,text,set"; source: "efl"; script { new m = get_int(slmode); m |= LABEL; set_int(slmode, m); @@ -1087,7 +1087,7 @@ group { "efl/progressbar/vertical"; } } program { name: "text-hidden"; - signal: "efl,state,text,unset"; source: "efl"; + signal: "efl,text,unset"; source: "efl"; script { new m = get_int(slmode); m &= ~LABEL; set_int(slmode, m); @@ -1095,7 +1095,7 @@ group { "efl/progressbar/vertical"; } } program { name: "icon-visible"; - signal: "efl,state,content,set"; source: "efl"; + signal: "efl,content,set"; source: "efl"; script { new m = get_int(slmode); m |= ICON; set_int(slmode, m); @@ -1103,7 +1103,7 @@ group { "efl/progressbar/vertical"; } } program { name: "icon-hidden"; - signal: "efl,state,content,unset"; source: "efl"; + signal: "efl,content,unset"; source: "efl"; script { new m = get_int(slmode); m &= ~ICON; set_int(slmode, m); diff --git a/data/elementary/themes/edc/efl/radio.edc b/data/elementary/themes/edc/efl/radio.edc index c2fc2141c5..06b064cd4c 100644 --- a/data/elementary/themes/edc/efl/radio.edc +++ b/data/elementary/themes/edc/efl/radio.edc @@ -235,7 +235,7 @@ group { "efl/radio"; target: "indicator"; } program { - signal: "efl,state,text,set"; source: "efl"; + signal: "efl,text,set"; source: "efl"; script { new m = get_int(btmode); m |= LABEL; set_int(btmode, m); @@ -243,7 +243,7 @@ group { "efl/radio"; } } program { - signal: "efl,state,text,unset"; source: "efl"; + signal: "efl,text,unset"; source: "efl"; script { new m = get_int(btmode); m &= ~LABEL; set_int(btmode, m); @@ -251,7 +251,7 @@ group { "efl/radio"; } } program { - signal: "efl,state,content,set"; source: "efl"; + signal: "efl,content,set"; source: "efl"; script { new m = get_int(btmode); m |= ICON; set_int(btmode, m); @@ -259,7 +259,7 @@ group { "efl/radio"; } } program { - signal: "efl,state,content,unset"; source: "efl"; + signal: "efl,content,unset"; source: "efl"; script { new m = get_int(btmode); m &= ~ICON; set_int(btmode, m); diff --git a/data/elementary/themes/edc/efl/tab_bar.edc b/data/elementary/themes/edc/efl/tab_bar.edc index 6573bfe7c2..8f1a10549e 100644 --- a/data/elementary/themes/edc/efl/tab_bar.edc +++ b/data/elementary/themes/edc/efl/tab_bar.edc @@ -484,7 +484,7 @@ group { "efl/tab_bar/tab"; target: "highlight"; } program { name: "st1"; - signal: "efl,state,text,unset"; source: "efl"; + signal: "efl,text,unset"; source: "efl"; script { new m = get_int(btmode); m &= ~LABEL; set_int(btmode, m); @@ -492,7 +492,7 @@ group { "efl/tab_bar/tab"; } } program { name: "st2"; - signal: "efl,state,text,set"; source: "efl"; + signal: "efl,text,set"; source: "efl"; script { new m = get_int(btmode); m |= LABEL; set_int(btmode, m); diff --git a/src/lib/elementary/efl_ui_layout.c b/src/lib/elementary/efl_ui_layout.c index 2d73dee6f0..98f76e1749 100644 --- a/src/lib/elementary/efl_ui_layout.c +++ b/src/lib/elementary/efl_ui_layout.c @@ -244,23 +244,30 @@ _defer_version_signal(Efl_Ui_Layout_Data *sd, Eina_Stringshare *old_sig, Eina_St /* common content cases for layout objects: icon and text */ static inline void -_signals_emit(Eo *obj, +_signals_emit(Efl_Ui_Layout_Data *sd, const char *type, Eina_Bool set) { char buf[1024]; - if (elm_widget_is_legacy(obj)) + if (elm_widget_is_legacy(sd->obj)) { snprintf(buf, sizeof(buf), "elm,state,%s,%s", type, set ? "visible" : "hidden"); - efl_layout_signal_emit(obj, buf, "elm"); + efl_layout_signal_emit(sd->obj, buf, "elm"); } else { - snprintf(buf, sizeof(buf), "efl,state,%s,%s", type, - set ? "set" : "unset"); - efl_layout_signal_emit(obj, buf, "efl"); + char buf2[1024]; + char *use = buf; + if (sd->version >= 123) // efl,state,(content|text),(set|unset) -> efl,(content|text),(set|unset) + use = buf2; + snprintf(buf, sizeof(buf), "efl,state,%s,%s", type, set ? "set" : "unset"); + snprintf(buf2, sizeof(buf2), "efl,%s,%s", type, set ? "set" : "unset"); + if (efl_finalized_get(sd->obj)) + efl_layout_signal_emit(sd->obj, use, "efl"); + else + _defer_version_signal(sd, eina_stringshare_add(buf), eina_stringshare_add(buf2), 123); } } @@ -311,7 +318,7 @@ _icon_signal_emit(Efl_Ui_Layout_Data *sd, type = sub_d->part; } - _signals_emit(sd->obj, type, visible); + _signals_emit(sd, type, visible); /* themes might need immediate action here */ efl_layout_signal_process(sd->obj, EINA_FALSE); @@ -359,7 +366,7 @@ _text_signal_emit(Efl_Ui_Layout_Data *sd, type = sub_d->part; } - _signals_emit(sd->obj, type, visible); + _signals_emit(sd, type, visible); /* TODO: is this right? It was like that, but IMO it should be removed: */