(svn r7061) -[win32] Feature: Remember the window size between restarts when quit in fullscreen mode.

pull/155/head
Darkvater 18 years ago
parent 7e8576bfaf
commit e922f05723

@ -34,6 +34,7 @@ bool _double_size;
bool _window_maximize; bool _window_maximize;
uint _display_hz; uint _display_hz;
uint _fullscreen_bpp; uint _fullscreen_bpp;
static uint16 _bck_resolution[2];
static void MakePalette(void) static void MakePalette(void)
{ {
@ -257,6 +258,13 @@ static LRESULT CALLBACK WndProcGdi(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lP
HandleExitGameRequest(); HandleExitGameRequest();
return 0; return 0;
case WM_DESTROY:
if (_window_maximize) {
_cur_resolution[0] = _bck_resolution[0];
_cur_resolution[1] = _bck_resolution[1];
}
return 0;
case WM_LBUTTONDOWN: case WM_LBUTTONDOWN:
SetCapture(hwnd); SetCapture(hwnd);
_left_button_down = true; _left_button_down = true;
@ -392,6 +400,10 @@ 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[0] = _cur_resolution[0];
_bck_resolution[1] = _cur_resolution[1];
}
ClientSizeChanged(LOWORD(lParam), HIWORD(lParam)); ClientSizeChanged(LOWORD(lParam), HIWORD(lParam));
} }
return 0; return 0;

Loading…
Cancel
Save