allow to have game window bigger than screen size
This commit is contained in:
parent
8372627b82
commit
aca18912b3
3 changed files with 45 additions and 3 deletions
16
src/dd.c
16
src/dd.c
|
@ -719,7 +719,7 @@ HRESULT dd_SetDisplayMode(DWORD dwWidth, DWORD dwHeight, DWORD dwBPP, DWORD dwFl
|
|||
|
||||
if (ChangeDisplaySettings(&g_ddraw->render.mode, CDS_TEST) != DISP_CHANGE_SUCCESSFUL)
|
||||
{
|
||||
/* everything failed, use windowed mode instead */
|
||||
/* everything failed, use windowed/borderless mode instead */
|
||||
g_ddraw->render.width = g_ddraw->width;
|
||||
g_ddraw->render.height = g_ddraw->height;
|
||||
|
||||
|
@ -727,6 +727,20 @@ HRESULT dd_SetDisplayMode(DWORD dwWidth, DWORD dwHeight, DWORD dwBPP, DWORD dwFl
|
|||
g_ddraw->render.mode.dmPelsHeight = g_ddraw->render.height;
|
||||
|
||||
g_ddraw->windowed = TRUE;
|
||||
|
||||
if (g_ddraw->render.width <= real_GetSystemMetrics(SM_CXSCREEN) &&
|
||||
g_ddraw->render.height <= real_GetSystemMetrics(SM_CYSCREEN))
|
||||
{
|
||||
/* Switch to borderless mode if window fits into screen */
|
||||
g_ddraw->fullscreen = TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* Make window titlebar visible if window does not fit into screen */
|
||||
g_config.window_rect.left = -32000;
|
||||
g_config.window_rect.top =
|
||||
real_GetSystemMetrics(SM_CYCAPTION) + real_GetSystemMetrics(SM_CYSIZEFRAME);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue