diff options
author | Daniel Hirt <hirt.danny@gmail.com> | 2017-08-21 12:43:19 +0300 |
---|---|---|
committer | Daniel Hirt <hirt.danny@gmail.com> | 2017-08-21 12:46:10 +0300 |
commit | 9490d3e9679e05cc52bf9f0647dc8ba8fe33b855 (patch) | |
tree | 71cc929886e260a6e6909dd2363eece37fde17fe | |
parent | e2724b300d55738b043d5779f4f0be465c8ee55e (diff) | |
download | efl-9490d3e9679e05cc52bf9f0647dc8ba8fe33b855.tar.gz |
move obstacles logic to proper place
-rw-r--r-- | src/lib/evas/canvas/evas_object_textblock.c | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/src/lib/evas/canvas/evas_object_textblock.c b/src/lib/evas/canvas/evas_object_textblock.c index 37f8230140..daf4fde4b2 100644 --- a/src/lib/evas/canvas/evas_object_textblock.c +++ b/src/lib/evas/canvas/evas_object_textblock.c @@ -2868,6 +2868,7 @@ struct _Ctxt Textblock_Position position; Evas_Textblock_Align_Auto align_auto : 2; Eina_Bool width_changed : 1; + Eina_Bool handle_obstacles; }; static void _layout_text_add_logical_item(Ctxt *c, Evas_Object_Textblock_Text_Item *ti, Eina_List *rel); @@ -5461,9 +5462,6 @@ _layout_par(Ctxt *c) char *line_breaks = NULL; char *word_breaks = NULL; - /* Obstacles logic */ - Eina_Bool handle_obstacles = EINA_FALSE; - if (!c->par->logical_items) return 2; @@ -5507,13 +5505,6 @@ _layout_par(Ctxt *c) return 0; } - /* Update all obstacles */ - if (c->o->obstacle_changed || c->width_changed) - { - _layout_obstacles_update(c); - handle_obstacles = EINA_TRUE; - } - c->par->text_node->dirty = EINA_FALSE; c->par->text_node->is_new = EINA_FALSE; c->par->rendered = EINA_FALSE; @@ -5618,7 +5609,7 @@ _layout_par(Ctxt *c) } } - if (handle_obstacles && !obs) + if (c->handle_obstacles && !obs) { obs = _layout_item_obstacle_get(c, it); } @@ -6349,6 +6340,12 @@ _layout(const Evas_Object *eo_obj, int w, int h, int *w_ret, int *h_ret) c->obs_infos = NULL; c->hyphen_ti = NULL; + /* Update all obstacles */ + if (c->o->obstacle_changed || c->width_changed) + { + _layout_obstacles_update(c); + c->handle_obstacles = EINA_TRUE; + } /* Start of logical layout creation */ /* setup default base style */ { |