Gerard Patel gerard.patel@nerim.net writes:
Using this patch : --- winpos.c.orig Wed Nov 7 10:41:32 2001 +++ winpos.c Thu Nov 8 00:44:29 2001 @@ -955,7 +955,20 @@ ShowCaret(winpos->hwnd); }
- if (!(winpos->flags & SWP_NOACTIVATE)) SetActiveWindow( winpos->hwnd );
if (!(winpos->flags & SWP_NOACTIVATE))
{
SetActiveWindow( winpos->hwnd );
if (!(wndPtr = WIN_FindWndPtr(winpos->hwnd))) return FALSE;
/* child windows get WM_CHILDACTIVATE message */
if( (wndPtr->dwStyle & (WS_CHILD | WS_POPUP)) == WS_CHILD )
{
WIN_ReleaseWndPtr(wndPtr);
SendMessageA(winpos->hwnd, WM_CHILDACTIVATE, 0, 0L);
}
else
WIN_ReleaseWndPtr(wndPtr);
}
/* And last, send the WM_WINDOWPOSCHANGED message */
seems to fix the problem. It may be too simple though :-)
No actually it's pretty much the right thing. I have applied a slightly simplified version of your patch, thanks for the report.