On Fri, 20 Oct 2000 09:39:19 -0500, you wrote:
> -in SWP_DoNCCalcSize, When determining if the client area
> changed, use values relative to the window itself, not its parent.
>
Unforunately this last change:
--- /opt/cvs-commit/wine/windows/winpos.c 2000/10/13 17:07:08
1.74
+++ /opt/cvs-commit/wine/windows/winpos.c 2000/10/23 00:36:06
1.75
@@ -2513,9 +2533,14 @@
/* FIXME: WVR_ALIGNxxx */
- if( pNewClientRect->left != wndPtr->rectClient.left ||
- pNewClientRect->top != wndPtr->rectClient.top )
+ /* check if client area moved relative to the window */
+ if ( ( (wndPtr->rectClient.left - pNewClientRect->left) !=
+ (wndPtr->rectWindow.left - pNewWindowRect->left) ) ||
+ ( (wndPtr->rectClient.top - pNewClientRect->top) !=
+ (wndPtr->rectWindow.top - pNewWindowRect->top) ) )
+ {
pWinpos->flags &= ~SWP_NOCLIENTMOVE;
+ }
if( (pNewClientRect->right - pNewClientRect->left !=
wndPtr->rectClient.right - wndPtr->rectClient.left) ||
breaks Agent-32. Of the three panes making the main windows client
area, only one is visible apparently overlaying the other two.
I traced the cause of this that for these windows (client area is
moved, bot not relative to the window) as a result form the lacking
SWP_NOCLIENTMOVE do not get a WM_MOVE message sent in DefWindowProc().
>From the comments in the code I understand that SWP_NOCLIENTMOVE is an
(undocumented) windows bit. Since the definition of it was changed by
the patch, I wonder if it was verified that the change reflects real
windows behaviour?
Rein.
--
Rein Klazes
[EMAIL PROTECTED]