Fabian Maurer <dark.shadow4(a)web.de> writes:
@@ -662,7 +662,17 @@ static HRGN send_ncpaint( HWND hwnd, HWND *child, UINT *flags ) if (type == SIMPLEREGION) { RECT window; + LONG screenx = GetSystemMetrics(SM_CXSCREEN); + LONG screeny = GetSystemMetrics(SM_CYSCREEN); + GetWindowRect( hwnd, &window ); + + /* Clamp the window region to screen bounds */ + if(window.right > screenx) window.right = screenx; + if(window.bottom > screeny) window.bottom = screeny; + if(window.left < 0) window.left = 0; + if(window.top < 0) window.top = 0;
This won't be correct for multi-monitor setups. That sort of thing should probably be handled on the server side. -- Alexandre Julliard julliard(a)winehq.org