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

add partial support for Aero Snap

This commit is contained in:
FunkyFr3sh 2023-08-22 16:01:14 +02:00
parent d2c4fc47d9
commit 634ec34aac

View File

@ -49,6 +49,28 @@ LRESULT CALLBACK fake_WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam
{
return DefWindowProc(hWnd, uMsg, wParam, lParam);
}
case WM_GETMINMAXINFO:
{
if (g_ddraw->windowed && g_ddraw->width)
{
MINMAXINFO* mmi = (MINMAXINFO*)lParam;
RECT rc = { 0, 0, g_ddraw->width, g_ddraw->height };
AdjustWindowRectEx(
&rc,
real_GetWindowLongA(g_ddraw->hwnd, GWL_STYLE),
GetMenu(g_ddraw->hwnd) != NULL,
real_GetWindowLongA(g_ddraw->hwnd, GWL_EXSTYLE));
mmi->ptMinTrackSize.x = rc.right - rc.left;
mmi->ptMinTrackSize.y = rc.bottom - rc.top;
return 0;
}
return DefWindowProc(hWnd, uMsg, wParam, lParam);
}
case WM_NCACTIVATE:
{
if (g_ddraw->noactivateapp)
@ -377,10 +399,25 @@ LRESULT CALLBACK fake_WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam
{
if (wParam == SIZE_RESTORED)
{
if (in_size_move && !g_ddraw->render.thread)
if (in_size_move)
{
/* User resized window */
if (!g_ddraw->render.thread)
{
g_config.window_rect.right = LOWORD(lParam);
g_config.window_rect.bottom = HIWORD(lParam);
}
else /* Aero Snap resized window */
{
g_config.window_rect.right = LOWORD(lParam);
g_config.window_rect.bottom = HIWORD(lParam);
if (g_config.window_rect.right != g_ddraw->render.width ||
g_config.window_rect.bottom != g_ddraw->render.height)
{
dd_SetDisplayMode(g_ddraw->width, g_ddraw->height, g_ddraw->bpp, 0);
}
}
}
/*
else if (g_ddraw->wine)