Support Mac OS default delete char hotkeys

This commit is contained in:
megalike 2019-05-04 17:05:49 +03:00
parent 84401e8cdf
commit c6310e9a7e

View file

@ -2277,24 +2277,30 @@ void TextEdit::_gui_input(const Ref<InputEvent> &p_gui_input) {
} }
#ifdef APPLE_STYLE_KEYS #ifdef APPLE_STYLE_KEYS
if (k->get_control() && !k->get_shift() && !k->get_alt() && !k->get_command()) { 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()) { switch (k->get_scancode()) {
case KEY_F: { case KEY_F: {
move_cursor_key = KEY_RIGHT; remap_key = KEY_RIGHT;
} break; } break;
case KEY_B: { case KEY_B: {
move_cursor_key = KEY_LEFT; remap_key = KEY_LEFT;
} break; } break;
case KEY_P: { case KEY_P: {
move_cursor_key = KEY_UP; remap_key = KEY_UP;
} break; } break;
case KEY_N: { 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; } break;
} }
if (move_cursor_key != KEY_UNKNOWN) { if (remap_key != KEY_UNKNOWN) {
k->set_scancode(move_cursor_key); k->set_scancode(remap_key);
k->set_control(false); k->set_control(false);
} }
} }