diff --git a/src/lib/edje/edje_load.c b/src/lib/edje/edje_load.c index 786dae00d9..0e257a902d 100644 --- a/src/lib/edje/edje_load.c +++ b/src/lib/edje/edje_load.c @@ -1683,7 +1683,10 @@ _edje_object_file_set_internal(Evas_Object *obj, const Eina_File *file, const ch switch (eud->u.string.type) { case EDJE_TEXT_TYPE_NORMAL: - edje_object_part_text_set(obj, eud->part, eud->u.string.text); + efl_text_set(efl_part(obj, eud->part), eud->u.string.text); + break; + case EDJE_TEXT_TYPE_MARKUP: + efl_text_markup_set(efl_part(obj, eud->part), eud->u.string.text); break; case EDJE_TEXT_TYPE_ESCAPED: edje_object_part_text_escaped_set(obj, eud->part, eud->u.string.text); diff --git a/src/lib/edje/edje_private.h b/src/lib/edje/edje_private.h index cedc4d6fa6..c8362dbb56 100644 --- a/src/lib/edje/edje_private.h +++ b/src/lib/edje/edje_private.h @@ -2085,6 +2085,7 @@ struct _Edje_Signal_Callback typedef enum { EDJE_TEXT_TYPE_NORMAL, + EDJE_TEXT_TYPE_MARKUP, EDJE_TEXT_TYPE_ESCAPED, EDJE_TEXT_TYPE_UNESCAPED } Edje_Text_Type; diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c index e73da61d54..827c95c0d1 100644 --- a/src/lib/edje/edje_util.c +++ b/src/lib/edje/edje_util.c @@ -2114,7 +2114,8 @@ _edje_efl_text_text_set(Eo *obj, Edje *ed, const char *part, const char *text, } int_ret = _edje_object_part_text_raw_generic_set(ed, obj, rp, part, text, set_markup, legacy); - _edje_user_define_string(ed, part, rp->typedata.text->text, EDJE_TEXT_TYPE_NORMAL); + _edje_user_define_string(ed, part, rp->typedata.text->text, + set_markup ? EDJE_TEXT_TYPE_MARKUP : EDJE_TEXT_TYPE_NORMAL); return int_ret; }