From dbe4e78257f01ee83b68b3588380a6e419489160 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tam=C3=A1s=20B=C3=A1lint=20Misius?= Date: Mon, 8 Mar 2021 20:42:44 +0100 Subject: [PATCH] Ignore key events with KMOD_GUI set As those are probably not meant for us. --- src/PowderToyFontEditor.cpp | 8 ++++++++ src/PowderToySDL.cpp | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/src/PowderToyFontEditor.cpp b/src/PowderToyFontEditor.cpp index 7388a2514..12bbb9d9d 100644 --- a/src/PowderToyFontEditor.cpp +++ b/src/PowderToyFontEditor.cpp @@ -244,12 +244,20 @@ void EventProcess(SDL_Event event) engine->Exit(); break; case SDL_KEYDOWN: + if (event.key.keysym.mod & KMOD_GUI) + { + break; + } if (!event.key.repeat && event.key.keysym.sym == 'q' && (event.key.keysym.mod&KMOD_CTRL)) engine->ConfirmExit(); else engine->onKeyPress(event.key.keysym.sym, event.key.keysym.scancode, event.key.repeat, event.key.keysym.mod&KMOD_SHIFT, event.key.keysym.mod&KMOD_CTRL, event.key.keysym.mod&KMOD_ALT); break; case SDL_KEYUP: + if (event.key.keysym.mod & KMOD_GUI) + { + break; + } engine->onKeyRelease(event.key.keysym.sym, event.key.keysym.scancode, event.key.repeat, event.key.keysym.mod&KMOD_SHIFT, event.key.keysym.mod&KMOD_CTRL, event.key.keysym.mod&KMOD_ALT); break; case SDL_TEXTINPUT: diff --git a/src/PowderToySDL.cpp b/src/PowderToySDL.cpp index 8f0cf9516..bb6e84e47 100644 --- a/src/PowderToySDL.cpp +++ b/src/PowderToySDL.cpp @@ -402,12 +402,20 @@ void EventProcess(SDL_Event event) engine->Exit(); break; case SDL_KEYDOWN: + if (event.key.keysym.mod & KMOD_GUI) + { + break; + } if (!event.key.repeat && event.key.keysym.sym == 'q' && (event.key.keysym.mod&KMOD_CTRL)) engine->ConfirmExit(); else engine->onKeyPress(event.key.keysym.sym, event.key.keysym.scancode, event.key.repeat, event.key.keysym.mod&KMOD_SHIFT, event.key.keysym.mod&KMOD_CTRL, event.key.keysym.mod&KMOD_ALT); break; case SDL_KEYUP: + if (event.key.keysym.mod & KMOD_GUI) + { + break; + } engine->onKeyRelease(event.key.keysym.sym, event.key.keysym.scancode, event.key.repeat, event.key.keysym.mod&KMOD_SHIFT, event.key.keysym.mod&KMOD_CTRL, event.key.keysym.mod&KMOD_ALT); break; case SDL_TEXTINPUT: