diff --git a/src/specific/s_fmv.c b/src/specific/s_fmv.c index 9054aee50..534eee0dc 100644 --- a/src/specific/s_fmv.c +++ b/src/specific/s_fmv.c @@ -25,12 +25,13 @@ #include "game/gamebuf.h" #include "game/input.h" #include "game/output.h" +#include "game/shell.h" #include "game/viewport.h" #include "global/vars_platform.h" #include "log.h" #include "specific/s_audio.h" -#include "specific/s_shell.h" #include "specific/s_output.h" +#include "specific/s_shell.h" #include "ddraw/Interop.hpp" @@ -2191,16 +2192,22 @@ static void S_FMV_EventLoop(VideoState *is) break; case SDL_KEYUP: + if (event.key.keysym.sym == SDLK_PRINTSCREEN) { + Shell_MakeScreenshot(); + break; + } + if (event.key.keysym.sym == SDLK_ESCAPE) { is->abort_request = true; break; } - const Uint8 *keyboard_state = SDL_GetKeyboardState(NULL); - if (keyboard_state[SDL_SCANCODE_LALT] - && keyboard_state[SDL_SCANCODE_RETURN]) { + if (event.key.keysym.sym == SDLK_RETURN + && event.key.keysym.mod & KMOD_LALT) { S_Shell_ToggleFullscreen(); + break; } + break; case SDL_WINDOWEVENT: