Konstantin Kondratyuk kondratyuk@etersoft.ru writes:
@@ -2575,11 +2576,24 @@ void WINPOS_SysCommandSizeMove( HWND hwnd, WPARAM wParam ) if(!iconic && !DragFullWindows) draw_moving_frame( hdc, &sizingRect, thickframe ); capturePoint = pt;
/* convert to screen coordinates */if(parent){POINT* p = (POINT*) &newRect;ClientToScreen( parent, p );ClientToScreen( parent, ++p );converted = TRUE;}/* determine the hit location */ if (hittest >= HTLEFT && hittest <= HTBOTTOMRIGHT) wpSizingHit = WMSZ_LEFT + (hittest - HTLEFT); SendMessageW( hwnd, WM_SIZING, wpSizingHit, (LPARAM)&newRect );/* convert back to client coordinates id needed */if(converted)MapWindowPoints( 0, parent, (POINT*)&newRect, 2 );
You should be using MapWindowPoints for the first case too, and there's no need for that extra boolean variable.