diff options
author | AlexHolly <alexander.holland@live.de> | 2017-10-20 21:24:41 +0200 |
---|---|---|
committer | AlexHolly <alexander.holland@live.de> | 2017-10-20 22:25:12 +0200 |
commit | d46093b9742bbd063caa6b2636be5238b7da1218 (patch) | |
tree | fa1676509ff9a180c1ddfe47622f786f5ee1b736 /scene/gui | |
parent | efe9a6ff5a55e1533a223dbaf43e7b7c20810b33 (diff) |
fix LineEdit drag selection to the left
Diffstat (limited to 'scene/gui')
-rw-r--r-- | scene/gui/line_edit.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/scene/gui/line_edit.cpp b/scene/gui/line_edit.cpp index ed8eff436c..56ec791a1a 100644 --- a/scene/gui/line_edit.cpp +++ b/scene/gui/line_edit.cpp @@ -1036,9 +1036,11 @@ void LineEdit::set_cursor_position(int p_pos) { Ref<StyleBox> style = get_stylebox("normal"); Ref<Font> font = get_font("font"); - if (cursor_pos < window_pos) { + if (cursor_pos <= window_pos) { /* Adjust window if cursor goes too much to the left */ - set_window_pos(cursor_pos); + if (window_pos > 0) + set_window_pos(window_pos - 1); + } else if (cursor_pos > window_pos) { /* Adjust window if cursor goes too much to the right */ int window_width = get_size().width - style->get_minimum_size().width; |