summaryrefslogtreecommitdiff
path: root/src/lib/edje/edje_text.c
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@samsung.com>2014-04-22 13:19:09 -0400
committerMike Blumenkrantz <zmike@samsung.com>2014-04-25 10:52:15 -0400
commit5f376fde368d3ea2b429790c31a753ccad00317d (patch)
treef8710d49232da7517a46b91f5e1c38b2f56901f7 /src/lib/edje/edje_text.c
parentd498f6f7230ab2987c8f29481e0a273a624a2bb6 (diff)
edje now correctly supports text.source and text.text_source for swallowed parts
fix T1186
Diffstat (limited to 'src/lib/edje/edje_text.c')
-rw-r--r--src/lib/edje/edje_text.c20
1 files changed, 14 insertions, 6 deletions
diff --git a/src/lib/edje/edje_text.c b/src/lib/edje/edje_text.c
index 8e1697d..4add65f 100644
--- a/src/lib/edje/edje_text.c
+++ b/src/lib/edje/edje_text.c
@@ -198,15 +198,23 @@ _edje_text_recalc_apply(Edje *ed, Edje_Real_Part *ep,
198 198
199 if (ep->typedata.text->text_source) 199 if (ep->typedata.text->text_source)
200 { 200 {
201 text = edje_string_get(&(((Edje_Part_Description_Text *)ep->typedata.text->text_source->chosen_description)->text.text)); 201 Edje_Part_Description_Text *et;
202 if (ep->typedata.text->text_source->typedata.text->text) text = ep->typedata.text->text_source->typedata.text->text; 202 Edje_Real_Part *rp2;
203
204 et = _edje_real_part_text_text_source_description_get(ep, &rp2);
205 text = edje_string_get(&(et->text.text));
206 if (rp2->typedata.text->text) text = rp2->typedata.text->text;
203 } 207 }
204 if (ep->typedata.text->source) 208 if (ep->typedata.text->source)
205 { 209 {
206 font = edje_string_get(&(((Edje_Part_Description_Text *)ep->typedata.text->source->chosen_description)->text.font)); 210 Edje_Part_Description_Text *et;
207 size = ((Edje_Part_Description_Text *)ep->typedata.text->source->chosen_description)->text.size; 211 Edje_Real_Part *rp2;
208 if (ep->typedata.text->source->typedata.text->font) font = ep->typedata.text->source->typedata.text->font; 212
209 if (ep->typedata.text->source->typedata.text->size > 0) size = ep->typedata.text->source->typedata.text->size; 213 et = _edje_real_part_text_source_description_get(ep, &rp2);
214 font = edje_string_get(&(et->text.font));
215 size = et->text.size;
216 if (rp2->typedata.text->font) font = rp2->typedata.text->font;
217 if (rp2->typedata.text->size > 0) size = rp2->typedata.text->size;
210 } 218 }
211 219
212 if (!text) text = ""; 220 if (!text) text = "";