summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRĂ©mi Verschelde <rverschelde@gmail.com>2019-05-06 10:17:22 +0200
committerGitHub <noreply@github.com>2019-05-06 10:17:22 +0200
commit1a3a0e3d953bd716f128f0f73261e02058e00a4c (patch)
tree05f7c3977dde1f7a3eeddc633becfdf9999b642d
parent9123db748ed80f6ea2a6decf3f5f0bf52cb74a16 (diff)
parentc6310e9a7e11067b4a0a49e11f93b11e60f97675 (diff)
Merge pull request #28679 from megalike/fix_mac_os_delete_char_hotkeys
Support Mac OS default delete char hotkeys
-rw-r--r--scene/gui/text_edit.cpp20
1 files changed, 13 insertions, 7 deletions
diff --git a/scene/gui/text_edit.cpp b/scene/gui/text_edit.cpp
index ec714dc8a3..10bd9e2a8b 100644
--- a/scene/gui/text_edit.cpp
+++ b/scene/gui/text_edit.cpp
@@ -2277,24 +2277,30 @@ void TextEdit::_gui_input(const Ref<InputEvent> &p_gui_input) {
}
#ifdef APPLE_STYLE_KEYS
if (k->get_control() && !k->get_shift() && !k->get_alt() && !k->get_command()) {
- uint32_t move_cursor_key = KEY_UNKNOWN;
+ uint32_t remap_key = KEY_UNKNOWN;
switch (k->get_scancode()) {
case KEY_F: {
- move_cursor_key = KEY_RIGHT;
+ remap_key = KEY_RIGHT;
} break;
case KEY_B: {
- move_cursor_key = KEY_LEFT;
+ remap_key = KEY_LEFT;
} break;
case KEY_P: {
- move_cursor_key = KEY_UP;
+ remap_key = KEY_UP;
} break;
case KEY_N: {
- move_cursor_key = KEY_DOWN;
+ remap_key = KEY_DOWN;
+ } break;
+ case KEY_D: {
+ remap_key = KEY_DELETE;
+ } break;
+ case KEY_H: {
+ remap_key = KEY_BACKSPACE;
} break;
}
- if (move_cursor_key != KEY_UNKNOWN) {
- k->set_scancode(move_cursor_key);
+ if (remap_key != KEY_UNKNOWN) {
+ k->set_scancode(remap_key);
k->set_control(false);
}
}