1
0
mirror of https://github.com/narzoul/DDrawCompat synced 2024-12-30 08:55:36 +01:00

Redraw window frame on SWP_FRAMECHANGED

This commit is contained in:
narzoul 2021-02-13 12:13:18 +01:00
parent 205f517845
commit 8b8a4e544f

View File

@ -37,7 +37,7 @@ namespace
bool isUser32ScrollBar(HWND hwnd);
void onCreateWindow(HWND hwnd);
void onDestroyWindow(HWND hwnd);
void onWindowPosChanged(HWND hwnd);
void onWindowPosChanged(HWND hwnd, const WINDOWPOS& wp);
void onWindowPosChanging(HWND hwnd, WINDOWPOS& wp);
void setWindowProc(HWND hwnd, WNDPROC wndProcA, WNDPROC wndProcW);
@ -57,7 +57,7 @@ namespace
break;
case WM_WINDOWPOSCHANGED:
onWindowPosChanged(hwnd);
onWindowPosChanged(hwnd, *reinterpret_cast<WINDOWPOS*>(lParam));
break;
}
@ -291,7 +291,7 @@ namespace
}
}
void onWindowPosChanged(HWND hwnd)
void onWindowPosChanged(HWND hwnd, const WINDOWPOS& wp)
{
for (auto notifyFunc : g_windowPosChangeNotifyFuncs)
{
@ -302,6 +302,12 @@ namespace
{
Gdi::Window::updateAll();
}
if (wp.flags & SWP_FRAMECHANGED)
{
RECT r = { -1, -1, 0, 0 };
RedrawWindow(hwnd, &r, nullptr, RDW_INVALIDATE | RDW_FRAME);
}
}
void onWindowPosChanging(HWND hwnd, WINDOWPOS& wp)