mirror of
https://github.com/FunkyFr3sh/cnc-ddraw.git
synced 2025-03-24 17:49:52 +01:00
fix wayland bug (linux)
This commit is contained in:
parent
9ba2a78588
commit
0f20a1a25f
28
src/dd.c
28
src/dd.c
@ -1015,13 +1015,29 @@ HRESULT dd_SetDisplayMode(DWORD dwWidth, DWORD dwHeight, DWORD dwBPP, DWORD dwFl
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((!d3d9_active || g_config.nonexclusive) &&
|
if (!d3d9_active || g_config.nonexclusive)
|
||||||
ChangeDisplaySettings(&g_ddraw->render.mode, CDS_FULLSCREEN) != DISP_CHANGE_SUCCESSFUL)
|
|
||||||
{
|
{
|
||||||
g_ddraw->render.run = FALSE;
|
if (ChangeDisplaySettings(&g_ddraw->render.mode, CDS_FULLSCREEN) != DISP_CHANGE_SUCCESSFUL)
|
||||||
g_config.windowed = TRUE;
|
{
|
||||||
g_config.fullscreen = TRUE;
|
g_ddraw->render.run = FALSE;
|
||||||
return dd_SetDisplayMode(dwWidth, dwHeight, dwBPP, dwFlags);
|
g_config.windowed = TRUE;
|
||||||
|
g_config.fullscreen = TRUE;
|
||||||
|
return dd_SetDisplayMode(dwWidth, dwHeight, dwBPP, dwFlags);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
Fix wayland bug:
|
||||||
|
ChangeDisplaySettings fails silently - enable borderless mode in case display resolution was not changed
|
||||||
|
*/
|
||||||
|
if (g_config.is_wine &&
|
||||||
|
(g_ddraw->render.mode.dmPelsWidth != real_GetSystemMetrics(SM_CXSCREEN) ||
|
||||||
|
g_ddraw->render.mode.dmPelsHeight != real_GetSystemMetrics(SM_CYSCREEN)))
|
||||||
|
{
|
||||||
|
g_ddraw->render.run = FALSE;
|
||||||
|
g_config.windowed = TRUE;
|
||||||
|
g_config.fullscreen = TRUE;
|
||||||
|
return dd_SetDisplayMode(dwWidth, dwHeight, dwBPP, dwFlags);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (g_config.is_wine)
|
if (g_config.is_wine)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user