summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Hirt <hirt.danny@gmail.com>2018-09-07 12:36:57 +0300
committerDaniel Hirt <hirt.danny@gmail.com>2018-09-07 14:00:35 +0300
commit36f78d56f7122eef055b7cbd63e002cd17e22654 (patch)
treed3bc3bcf97c32cff33f76a7ed493560a8b0f011a
parent1ec65ba45c141a9af8cc1eb4dfaf342c2312a68a (diff)
downloadefl-36f78d56f7122eef055b7cbd63e002cd17e22654.tar.gz
Ui text interactive: swap cursors on cursors_get if needed
-rw-r--r--src/lib/elementary/efl_ui_internal_text_interactive.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/lib/elementary/efl_ui_internal_text_interactive.c b/src/lib/elementary/efl_ui_internal_text_interactive.c
index 933f331e87..30a1624582 100644
--- a/src/lib/elementary/efl_ui_internal_text_interactive.c
+++ b/src/lib/elementary/efl_ui_internal_text_interactive.c
@@ -1422,8 +1422,17 @@ _efl_ui_internal_text_interactive_efl_text_interactive_selection_allowed_get(con
EOLIAN static void
_efl_ui_internal_text_interactive_efl_text_interactive_selection_cursors_get(const Eo *obj EINA_UNUSED, Efl_Ui_Internal_Text_Interactive_Data *pd, Efl_Text_Cursor_Cursor **start, Evas_Textblock_Cursor **end)
{
- if (start) *start = pd->sel_start;
- if (end) *end = pd->sel_end;
+ if (efl_text_cursor_position_get(obj, pd->sel_start) >
+ efl_text_cursor_position_get(obj, pd->sel_end))
+ {
+ if (start) *start = pd->sel_end;
+ if (end) *end = pd->sel_start;
+ }
+ else
+ {
+ if (start) *start = pd->sel_start;
+ if (end) *end = pd->sel_end;
+ }
}
EOLIAN static void