mirror of
https://github.com/FunkyFr3sh/cnc-ddraw.git
synced 2025-03-15 06:04:49 +01:00
#107 fix adjmouse with borderless opengl (scrolling bug in Casino Empire)
This commit is contained in:
parent
747f49d35f
commit
2508643fe8
13
src/dd.c
13
src/dd.c
@ -463,6 +463,7 @@ HRESULT dd_SetDisplayMode(DWORD dwWidth, DWORD dwHeight, DWORD dwBPP, DWORD dwFl
|
||||
InterlockedExchange((LONG*)&g_ddraw->cursor.y, dwHeight / 2);
|
||||
|
||||
BOOL border = g_ddraw->border;
|
||||
BOOL nonexclusive = FALSE;
|
||||
|
||||
if (g_ddraw->fullscreen)
|
||||
{
|
||||
@ -478,7 +479,7 @@ HRESULT dd_SetDisplayMode(DWORD dwWidth, DWORD dwHeight, DWORD dwBPP, DWORD dwFl
|
||||
|
||||
/* prevent OpenGL from going automatically into fullscreen exclusive mode */
|
||||
if (g_ddraw->renderer == ogl_render_main)
|
||||
g_ddraw->render.height++;
|
||||
nonexclusive = TRUE;
|
||||
|
||||
}
|
||||
}
|
||||
@ -594,11 +595,6 @@ HRESULT dd_SetDisplayMode(DWORD dwWidth, DWORD dwHeight, DWORD dwBPP, DWORD dwFl
|
||||
}
|
||||
}
|
||||
|
||||
if (g_ddraw->nonexclusive && !g_ddraw->windowed && g_ddraw->renderer == ogl_render_main)
|
||||
{
|
||||
g_ddraw->render.height++;
|
||||
}
|
||||
|
||||
g_ddraw->render.viewport.width = g_ddraw->render.width;
|
||||
g_ddraw->render.viewport.height = g_ddraw->render.height;
|
||||
g_ddraw->render.viewport.x = 0;
|
||||
@ -645,6 +641,11 @@ HRESULT dd_SetDisplayMode(DWORD dwWidth, DWORD dwHeight, DWORD dwBPP, DWORD dwFl
|
||||
g_ddraw->render.unscale_w = ((float)g_ddraw->width / g_ddraw->render.viewport.width);
|
||||
g_ddraw->render.unscale_h = ((float)g_ddraw->height / g_ddraw->render.viewport.height);
|
||||
|
||||
if (nonexclusive || (g_ddraw->nonexclusive && !g_ddraw->windowed && g_ddraw->renderer == ogl_render_main))
|
||||
{
|
||||
g_ddraw->render.height++;
|
||||
}
|
||||
|
||||
if (g_ddraw->windowed)
|
||||
{
|
||||
MSG msg; /* workaround for "Not Responding" window problem in cnc games */
|
||||
|
Loading…
x
Reference in New Issue
Block a user