zmike pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=66213df2f5a537b670cf48a52a71c8160fa4bb26

commit 66213df2f5a537b670cf48a52a71c8160fa4bb26
Author: Mike Blumenkrantz <zm...@samsung.com>
Date:   Wed Jul 10 14:24:51 2019 -0400

    edje: fix reapplying markup text on file/group change
    
    Summary:
    this was being stored as regular text when it was actually markup
    
    @fix
    
    Depends on D9208
    
    Reviewers: cedric
    
    Reviewed By: cedric
    
    Subscribers: #reviewers, #committers
    
    Tags: #efl
    
    Differential Revision: https://phab.enlightenment.org/D9209
---
 src/lib/edje/edje_load.c    | 5 ++++-
 src/lib/edje/edje_private.h | 1 +
 src/lib/edje/edje_util.c    | 3 ++-
 3 files changed, 7 insertions(+), 2 deletions(-)

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;
 }
 

-- 


Reply via email to