From 7be712808aec726a6c8a3500c9c53402e4b27f0a Mon Sep 17 00:00:00 2001 From: ayuanx Date: Sun, 7 Feb 2010 08:34:46 +0000 Subject: [PATCH] Makes ESC always toggle full screen as requested in Issue 2225 git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5025 8ced0084-cf51-0410-be5f-012b33b47a6e --- Source/Plugins/Plugin_VideoDX9/Src/EmuWindow.cpp | 10 +++++++--- Source/Plugins/Plugin_VideoOGL/Src/OS/Win32.cpp | 10 +++++++--- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/Source/Plugins/Plugin_VideoDX9/Src/EmuWindow.cpp b/Source/Plugins/Plugin_VideoDX9/Src/EmuWindow.cpp index 09ca597675..043f1e3ee4 100644 --- a/Source/Plugins/Plugin_VideoDX9/Src/EmuWindow.cpp +++ b/Source/Plugins/Plugin_VideoDX9/Src/EmuWindow.cpp @@ -94,6 +94,9 @@ LRESULT CALLBACK WndProc( HWND hWnd, UINT iMsg, WPARAM wParam, LPARAM lParam ) switch (LOWORD(wParam)) { case VK_ESCAPE: + ToggleFullscreen(hWnd); + return 0; +/* if (g_Config.bFullscreen) { // Pressing Esc switches to Windowed in Fullscreen mode @@ -106,6 +109,7 @@ LRESULT CALLBACK WndProc( HWND hWnd, UINT iMsg, WPARAM wParam, LPARAM lParam ) PostMessage(m_hMain, WM_USER, WM_USER_STOP, 0); return 0; } +*/ break; case '3': // OSD keys case '4': @@ -395,14 +399,14 @@ void ToggleFullscreen(HWND hParent, bool bForceFull) RECT rcdesktop; GetWindowRect(GetDesktopWindow(), &rcdesktop); - // Set new window style FS -> Windowed - SetWindowLong(hParent, GWL_STYLE, style); - // SetWindowPos to the center of the screen int X = (rcdesktop.right-rcdesktop.left)/2 - (rc.right-rc.left)/2; int Y = (rcdesktop.bottom-rcdesktop.top)/2 - (rc.bottom-rc.top)/2; SetWindowPos(hParent, NULL, X, Y, rc.right-rc.left, rc.bottom-rc.top, SWP_NOREPOSITION | SWP_NOZORDER); + // Set new window style FS -> Windowed + SetWindowLong(hParent, GWL_STYLE, style); + // Re-Enable the cursor ShowCursor(TRUE); g_Config.bFullscreen = false; diff --git a/Source/Plugins/Plugin_VideoOGL/Src/OS/Win32.cpp b/Source/Plugins/Plugin_VideoOGL/Src/OS/Win32.cpp index 01d4cbb24e..2236949286 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/OS/Win32.cpp +++ b/Source/Plugins/Plugin_VideoOGL/Src/OS/Win32.cpp @@ -243,6 +243,9 @@ void OnKeyDown(WPARAM wParam) switch (LOWORD( wParam )) { case VK_ESCAPE: + ToggleFullscreen(m_hWnd); + return; +/* if (!g_Config.RenderToMainframe) { if (g_Config.bFullscreen) @@ -258,6 +261,7 @@ void OnKeyDown(WPARAM wParam) return; } } +*/ break; case '3': // OSD keys case '4': @@ -499,14 +503,14 @@ void ToggleFullscreen(HWND hParent, bool bForceFull) RECT rcdesktop; GetWindowRect(GetDesktopWindow(), &rcdesktop); - // Set new window style FS -> Windowed - SetWindowLongPtr(hParent, GWL_STYLE, style); - // SetWindowPos to the center of the screen int X = (rcdesktop.right-rcdesktop.left)/2 - (rc.right-rc.left)/2; int Y = (rcdesktop.bottom-rcdesktop.top)/2 - (rc.bottom-rc.top)/2; SetWindowPos(hParent, NULL, X, Y, rc.right-rc.left, rc.bottom-rc.top, SWP_NOREPOSITION | SWP_NOZORDER); + // Set new window style FS -> Windowed + SetWindowLongPtr(hParent, GWL_STYLE, style); + // Re-Enable the cursor ShowCursor(TRUE); g_Config.bFullscreen = false;