TextEdit: Moving between words now works across lines.

Fixes #10403
This commit is contained in:
Andreas Haas 2017-08-18 20:53:03 +02:00
parent 72be8876ea
commit 3f2d806b02
No known key found for this signature in database
GPG Key ID: B5FFAE1B65FBD2E1
1 changed files with 14 additions and 0 deletions

View File

@ -2248,6 +2248,13 @@ void TextEdit::_gui_input(const Ref<InputEvent> &p_gui_input) {
#endif
bool prev_char = false;
int cc = cursor.column;
if (cc == 0 && cursor.line > 0) {
cursor_set_line(cursor.line - 1);
cursor_set_column(text[cursor.line].length());
break;
}
while (cc > 0) {
bool ischar = _is_text_char(text[cursor.line][cc - 1]);
@ -2305,6 +2312,13 @@ void TextEdit::_gui_input(const Ref<InputEvent> &p_gui_input) {
#endif
bool prev_char = false;
int cc = cursor.column;
if (cc == text[cursor.line].length() && cursor.line < text.size() - 1) {
cursor_set_line(cursor.line + 1);
cursor_set_column(0);
break;
}
while (cc < text[cursor.line].length()) {
bool ischar = _is_text_char(text[cursor.line][cc]);