diff --git a/src/PowderToyFontEditor.cpp b/src/PowderToyFontEditor.cpp index 12bbb9d9d..0cf5222f4 100644 --- a/src/PowderToyFontEditor.cpp +++ b/src/PowderToyFontEditor.cpp @@ -244,7 +244,7 @@ void EventProcess(SDL_Event event) engine->Exit(); break; case SDL_KEYDOWN: - if (event.key.keysym.mod & KMOD_GUI) + if (SDL_GetModState() & KMOD_GUI) { break; } @@ -254,13 +254,17 @@ void EventProcess(SDL_Event event) 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) + if (SDL_GetModState() & 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: + if (SDL_GetModState() & KMOD_GUI) + { + break; + } engine->onTextInput(ByteString(event.text.text).FromUtf8()); break; case SDL_MOUSEWHEEL: diff --git a/src/PowderToySDL.cpp b/src/PowderToySDL.cpp index bb6e84e47..ef17d8cea 100644 --- a/src/PowderToySDL.cpp +++ b/src/PowderToySDL.cpp @@ -402,7 +402,7 @@ void EventProcess(SDL_Event event) engine->Exit(); break; case SDL_KEYDOWN: - if (event.key.keysym.mod & KMOD_GUI) + if (SDL_GetModState() & KMOD_GUI) { break; } @@ -412,13 +412,17 @@ void EventProcess(SDL_Event event) 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) + if (SDL_GetModState() & 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: + if (SDL_GetModState() & KMOD_GUI) + { + break; + } engine->onTextInput(ByteString(event.text.text).FromUtf8()); break; case SDL_MOUSEWHEEL: