From 3974cb3dc171b4319d74d4aa31789ba55cb62d6c Mon Sep 17 00:00:00 2001 From: Tom Hacohen Date: Wed, 13 Feb 2013 12:42:44 +0000 Subject: [PATCH] Evas textblock: Fixed a selection bug introduced in my previous commit. I matched against the wrong values so it never included items in the middle even when needed. SVN revision: 83869 --- src/lib/evas/canvas/evas_object_textblock.c | 2 +- src/tests/evas/evas_test_textblock.c | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/lib/evas/canvas/evas_object_textblock.c b/src/lib/evas/canvas/evas_object_textblock.c index ec8dc4524c..50c0be8aec 100644 --- a/src/lib/evas/canvas/evas_object_textblock.c +++ b/src/lib/evas/canvas/evas_object_textblock.c @@ -9574,7 +9574,7 @@ _evas_textblock_cursor_range_in_line_geometry_get( while (it && (it != it2)) { - if ((start <= it->text_pos) && (it->text_pos <= end)) + if ((it1->text_pos <= it->text_pos) && (it->text_pos <= it2->text_pos)) { max_x = it->x + it->adv; } diff --git a/src/tests/evas/evas_test_textblock.c b/src/tests/evas/evas_test_textblock.c index 2c76c47baf..c8dac7344e 100644 --- a/src/tests/evas/evas_test_textblock.c +++ b/src/tests/evas/evas_test_textblock.c @@ -1433,6 +1433,18 @@ START_TEST(evas_textblock_geometries) fail_if(eina_list_count(rects) != 2); + EINA_LIST_FREE(rects, tr) + free(tr); + + /* Same run different styles */ + evas_object_textblock_text_markup_set(tb, "testtest2test3"); + + evas_textblock_cursor_pos_set(cur, 3); + evas_textblock_cursor_pos_set(main_cur, 11); + rects = evas_textblock_cursor_range_geometry_get(cur, main_cur); + + fail_if(eina_list_count(rects) != 3); + EINA_LIST_FREE(rects, tr) free(tr);