From 7fce9f3fd0bc8b434a130ca29661e5319e3bd9f4 Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Fri, 7 Jun 2024 09:26:55 -0700 Subject: [PATCH] Minor cleanup for SDL style --- src/video/windows/SDL_windowsevents.c | 44 +++++++++++++-------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/src/video/windows/SDL_windowsevents.c b/src/video/windows/SDL_windowsevents.c index f40d679de4..9fa10954a6 100644 --- a/src/video/windows/SDL_windowsevents.c +++ b/src/video/windows/SDL_windowsevents.c @@ -641,8 +641,9 @@ WIN_KeyboardHookProc(int nCode, WPARAM wParam, LPARAM lParam) if (nCode < 0 || nCode != HC_ACTION) { return CallNextHookEx(NULL, nCode, wParam, lParam); } + if (hookData->scanCode == 0x21d) { - // Skip fake LCtrl when RAlt is pressed + /* Skip fake LCtrl when RAlt is pressed */ return 1; } @@ -700,36 +701,35 @@ WIN_KeyboardHookProc(int nCode, WPARAM wParam, LPARAM lParam) #endif /*!defined(__XBOXONE__) && !defined(__XBOXSERIES__)*/ -// Return 1 if spruious LCtrl is pressed -// LCtrl is sent when RAltGR is pressed -int skip_bad_lcrtl(WPARAM wParam, LPARAM lParam) +/* Return SDL_TRUE if spurious LCtrl is pressed. LCtrl is sent when RAltGR is pressed. */ +static SDL_bool SkipAltGrLeftControl(WPARAM wParam, LPARAM lParam) { MSG next_msg; DWORD msg_time; - if (wParam != VK_CONTROL) { - return 0; - } - // Is this an extended key (i.e. right key)? - if (lParam & 0x01000000) - return 0; - // Here is a trick: "Alt Gr" sends LCTRL, then RALT. We only - // want the RALT message, so we try to see if the next message - // is a RALT message. In that case, this is a false LCTRL! + if (wParam != VK_CONTROL) { + return SDL_FALSE; + } + + /* Is this an extended key (i.e. right key)? */ + if (lParam & 0x01000000) { + return SDL_FALSE; + } + + /* Here is a trick: "Alt Gr" sends LCTRL, then RALT. We only + want the RALT message, so we try to see if the next message + is a RALT message. In that case, this is a false LCTRL! */ msg_time = GetMessageTime(); if (PeekMessage(&next_msg, NULL, 0, 0, PM_NOREMOVE)) { if (next_msg.message == WM_KEYDOWN || next_msg.message == WM_SYSKEYDOWN) { - if (next_msg.wParam == VK_MENU && - (next_msg.lParam & 0x01000000) && - next_msg.time == msg_time) { - // Next message is a RALT down message, which - // means that this is NOT a proper LCTRL message! - return 1; + if (next_msg.wParam == VK_MENU && (next_msg.lParam & 0x01000000) && next_msg.time == msg_time) { + /* Next message is a RALT down message, which means that this is NOT a proper LCTRL message! */ + return SDL_TRUE; } } } - return 0; + return SDL_FALSE; } LRESULT CALLBACK @@ -1049,7 +1049,7 @@ WIN_WindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) SDL_Scancode code = WindowsScanCodeToSDLScanCode(lParam, wParam); const Uint8 *keyboardState = SDL_GetKeyboardState(NULL); - if (skip_bad_lcrtl(wParam, lParam)) { + if (SkipAltGrLeftControl(wParam, lParam)) { returnCode = 0; break; } @@ -1076,7 +1076,7 @@ WIN_WindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) SDL_Scancode code = WindowsScanCodeToSDLScanCode(lParam, wParam); const Uint8 *keyboardState = SDL_GetKeyboardState(NULL); - if (skip_bad_lcrtl(wParam, lParam)) { + if (SkipAltGrLeftControl(wParam, lParam)) { returnCode = 0; break; }