diff options
author | Ignacio Etcheverry <ignalfonsore@gmail.com> | 2016-06-23 23:03:32 +0200 |
---|---|---|
committer | Ignacio Etcheverry <ignalfonsore@gmail.com> | 2016-06-24 14:26:40 +0200 |
commit | f1e75527222b0e01e04c64db26e5f1e0a0017922 (patch) | |
tree | c589f96d6e8b03bc57ad743b5235ad79f45e4f3d | |
parent | 60fa2b98151ae2fc87d77ef52372eec82f7754dd (diff) |
Fix weird deselection behaviour with text field
- TextEdit will now deselect if Ctrl+Left/Right is pressed
- TextEdit and LineEdit no longer deselect text when Alt is pressed (except with Apple style keys)
-rw-r--r-- | scene/gui/line_edit.cpp | 3 | ||||
-rw-r--r-- | scene/gui/text_edit.cpp | 12 |
2 files changed, 15 insertions, 0 deletions
diff --git a/scene/gui/line_edit.cpp b/scene/gui/line_edit.cpp index 52ef57cf1c..88dbd33e55 100644 --- a/scene/gui/line_edit.cpp +++ b/scene/gui/line_edit.cpp @@ -294,6 +294,9 @@ void LineEdit::_input_event(InputEvent p_event) { } case KEY_LEFT: { +#ifndef APPLE_STYLE_KEYS + if (!k.mod.alt) +#endif shift_selection_check_pre(k.mod.shift); #ifdef APPLE_STYLE_KEYS diff --git a/scene/gui/text_edit.cpp b/scene/gui/text_edit.cpp index 9342d077eb..6fd6137ac8 100644 --- a/scene/gui/text_edit.cpp +++ b/scene/gui/text_edit.cpp @@ -2065,6 +2065,12 @@ void TextEdit::_input_event(const InputEvent& p_input_event) { if (k.mod.shift) _pre_shift_selection(); +#ifdef APPLE_STYLE_KEYS + else +#else + else if (!k.mod.alt) +#endif + deselect(); #ifdef APPLE_STYLE_KEYS if (k.mod.command) { @@ -2118,6 +2124,12 @@ void TextEdit::_input_event(const InputEvent& p_input_event) { if (k.mod.shift) _pre_shift_selection(); +#ifdef APPLE_STYLE_KEYS + else +#else + else if (!k.mod.alt) +#endif + deselect(); #ifdef APPLE_STYLE_KEYS if (k.mod.command) { |