summaryrefslogtreecommitdiff
path: root/platform/windows
diff options
context:
space:
mode:
authorMarcelo Fernandez <marcelofg55@gmail.com>2019-01-23 10:59:54 -0300
committerMarcelo Fernandez <marcelofg55@gmail.com>2019-01-23 10:59:54 -0300
commitdaf57bc81f44160103279c5c476e8a1c86563e4d (patch)
tree4e5f39ecb1ef83cca3ac7d498578d5ab20b86e6a /platform/windows
parent1953054fd8ca5d7a49d24cd9fe7641e955ca39bf (diff)
Fix ALT+F4 being ignored with MOUSE_MODE_CAPTURED on Windows
Diffstat (limited to 'platform/windows')
-rw-r--r--platform/windows/os_windows.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/platform/windows/os_windows.cpp b/platform/windows/os_windows.cpp
index 5cba34ac62..35f9d541ef 100644
--- a/platform/windows/os_windows.cpp
+++ b/platform/windows/os_windows.cpp
@@ -805,6 +805,13 @@ LRESULT OS_Windows::WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
gr_mem = alt_mem;
}
+ if (mouse_mode == MOUSE_MODE_CAPTURED) {
+ // When SetCapture is used, ALT+F4 hotkey is ignored by Windows, so handle it ourselves
+ if (wParam == VK_F4 && alt_mem && (uMsg == WM_KEYDOWN || uMsg == WM_SYSKEYDOWN)) {
+ if (main_loop)
+ main_loop->notification(MainLoop::NOTIFICATION_WM_QUIT_REQUEST);
+ }
+ }
/*
if (wParam==VK_WIN) TODO wtf is this?
meta_mem=uMsg==WM_KEYDOWN;