(svn r24189) -Fix: when going to fullscreen and back, restore to the resolution you were, not to the fullscreen resolution (Windows only)

This commit is contained in:
truebrain 2012-04-30 16:49:26 +00:00
parent 39912b7bde
commit 353fd97de6

View File

@ -296,6 +296,9 @@ bool VideoDriver_Win32::MakeWindow(bool full_screen)
} else if (_wnd.fullscreen) { } else if (_wnd.fullscreen) {
/* restore display? */ /* restore display? */
ChangeDisplaySettings(NULL, 0); ChangeDisplaySettings(NULL, 0);
/* restore the resolution */
_wnd.width = _bck_resolution.width;
_wnd.height = _bck_resolution.height;
} }
#endif #endif
@ -628,7 +631,7 @@ static LRESULT CALLBACK WndProcGdi(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lP
/* Set maximized flag when we maximize (obviously), but also when we /* Set maximized flag when we maximize (obviously), but also when we
* switched to fullscreen from a maximized state */ * switched to fullscreen from a maximized state */
_window_maximize = (wParam == SIZE_MAXIMIZED || (_window_maximize && _fullscreen)); _window_maximize = (wParam == SIZE_MAXIMIZED || (_window_maximize && _fullscreen));
if (_window_maximize) _bck_resolution = _cur_resolution; if (_window_maximize || _fullscreen) _bck_resolution = _cur_resolution;
ClientSizeChanged(LOWORD(lParam), HIWORD(lParam)); ClientSizeChanged(LOWORD(lParam), HIWORD(lParam));
} }
return 0; return 0;