1
0
mirror of https://github.com/FunkyFr3sh/cnc-ddraw.git synced 2025-03-15 06:04:49 +01:00

fix for YR menu cursor lock bug in windowed mode

This commit is contained in:
FunkyFr3sh 2019-08-10 18:53:37 +02:00
parent 073dac298f
commit e41101f3d4
2 changed files with 27 additions and 4 deletions

View File

@ -4,7 +4,7 @@
#define VERSION_MAJOR 1
#define VERSION_MINOR 3
#define VERSION_BUILD 4
#define VERSION_REVISION 4
#define VERSION_REVISION 5
#define VERSION VERSION_MAJOR, VERSION_MINOR, VERSION_BUILD, VERSION_REVISION
#define VERSION_STRING ver_str(VERSION_MAJOR, VERSION_MINOR, VERSION_BUILD, VERSION_REVISION)

View File

@ -1499,11 +1499,34 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
}
break;
//Workaround for invisible menu on Load/Save/Delete in Tiberian Sun
case WM_PARENTNOTIFY:
{
if (!ddraw->handlemouse && LOWORD(wParam) == WM_DESTROY)
redrawCount = 2;
if (!ddraw->handlemouse)
{
switch (LOWORD(wParam))
{
case WM_DESTROY: //Workaround for invisible menu on Load/Save/Delete in Tiberian Sun
redrawCount = 2;
break;
case WM_LBUTTONDOWN:
case WM_MBUTTONDOWN:
case WM_RBUTTONDOWN:
case WM_XBUTTONDOWN:
{
if (!ddraw->devmode && !ddraw->locked)
{
int x = GET_X_LPARAM(lParam);
int y = GET_Y_LPARAM(lParam);
ddraw->cursor.x = (x - ddraw->render.viewport.x) * ddraw->render.unScaleW;
ddraw->cursor.y = (y - ddraw->render.viewport.y) * ddraw->render.unScaleH;
mouse_lock();
}
break;
}
}
}
break;
}
case WM_PAINT: