summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorali-alzyod <ali198724@gmail.com>2021-01-29 09:05:50 +0200
committerali-alzyod <ali198724@gmail.com>2021-01-29 09:05:51 +0200
commite138962dd75ca15ce4599edbb5d7b2a0946b2c1c (patch)
treef89537f5eb8c299ba59aa5deb9a9a7c0e9e63b65
parent6a3522352b305923fd860505e09a28aed3a5e577 (diff)
downloadefl-e138962dd75ca15ce4599edbb5d7b2a0946b2c1c.tar.gz
evas_textblock: allow default font size to be set without fontname
Reviewers: woohyun, bowonryu, id213sin Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D12211
-rw-r--r--src/lib/evas/canvas/evas_object_textblock.c4
-rw-r--r--src/tests/evas/evas_test_textblock.c22
2 files changed, 26 insertions, 0 deletions
diff --git a/src/lib/evas/canvas/evas_object_textblock.c b/src/lib/evas/canvas/evas_object_textblock.c
index b206d09bb1..f44dfaab5c 100644
--- a/src/lib/evas/canvas/evas_object_textblock.c
+++ b/src/lib/evas/canvas/evas_object_textblock.c
@@ -4372,6 +4372,10 @@ _layout_format_push(Ctxt *c, Evas_Object_Textblock_Format *fmt,
(int)(((double) _FMT_INFO(size)) * evas_obj->cur->scale),
fmt->font.bitmap_scalable);
}
+ else if (_FMT_INFO(size)) // if font size specified alone, without font
+ {
+ fmt->font.size = _FMT_INFO(size);
+ }
if (_FMT_INFO(gfx_filter_name))
{
if (!fmt->gfx_filter)
diff --git a/src/tests/evas/evas_test_textblock.c b/src/tests/evas/evas_test_textblock.c
index f78c2888d1..40dbb70967 100644
--- a/src/tests/evas/evas_test_textblock.c
+++ b/src/tests/evas/evas_test_textblock.c
@@ -5203,6 +5203,27 @@ EFL_START_TEST(efl_text_font_source)
}
EFL_END_TEST
+EFL_START_TEST(efl_text_default_format)
+{
+ Evas *evas;
+ Eo *txt;
+ evas = EVAS_TEST_INIT_EVAS();
+ txt = efl_add(EFL_CANVAS_TEXTBLOCK_CLASS, evas);
+
+ Eina_Size2D size;
+
+ efl_text_markup_set(txt, "<font=Sans>Hello</font>");
+
+ efl_text_font_size_set(txt, 80);
+ efl_text_color_set(txt, 255, 255, 255, 255);
+ size = efl_canvas_textblock_size_native_get(txt);
+
+ ck_assert_int_gt(size.h, 20);
+ efl_del(txt);
+ evas_free(evas);
+}
+EFL_END_TEST
+
void evas_test_textblock(TCase *tc)
{
tcase_add_test(tc, evas_textblock_simple);
@@ -5246,5 +5267,6 @@ void evas_test_textblock(TCase *tc)
tcase_add_test(tc, efl_text_style);
tcase_add_test(tc, efl_text_markup);
tcase_add_test(tc, efl_text_font_source);
+ tcase_add_test(tc, efl_text_default_format);
}