http://bugs.winehq.com/show_bug.cgi?id=1263
------- Additional Comments From fsteinel@flonet.net 2003-22-06 13:04 ------- Bug comments restored from Gmane.org:
Form resizing doesn't work properly in Microsoft Visual FoxPro versions 5, 6, 7, 8. Trying to grab the sides or corners of the form to resize does not work.
To reproduce this problem please download my demo application as listed in the URL field.
------- Additional Comments From dclark <at> akamail.com 2003-02-08 12:38 ------- Here is a small "fix", but not the right one. It is not clear to me yet whether the wrong value is being passed to this function, or that a more elaborate method needs to be used to determine what to do with it. But anyway, the patch at least demonstrates where the problem is. Index: dlls/x11drv/winpos.c =================================================================== RCS file: /home/wine/wine/dlls/x11drv/winpos.c,v retrieving revision 1.63 diff -u -r1.63 winpos.c --- dlls/x11drv/winpos.c 8 Jan 2003 21:09:26 -0000 1.63 +++ dlls/x11drv/winpos.c 8 Feb 2003 18:35:31 -0000 @@ -1901,11 +1903,17 @@ else /* SC_SIZE */ { if (!thickframe) return; - if ( hittest && hittest != HTSYSMENU ) hittest += 2; + ERR("Hittest A %ld\n", hittest); + if ( hittest && hittest != HTSYSMENU ) + { + if (hittest <= WMSZ_BOTTOMRIGHT) hittest += ( HTLEFT - WMSZ_LEFT ); + else hittest += 2; + } else { set_movesize_capture( hwnd ); hittest = start_size_move( hwnd, wParam, &capturePoint, style ); + ERR("Hittest B %ld\n", hittest); if (!hittest) { set_movesize_capture(0); @@ -1932,6 +1940,7 @@ } origRect = sizingRect;
+ ERR("Hittest C %ld\n", hittest); if (ON_LEFT_BORDER(hittest)) { mouseRect.left = max( mouseRect.left, sizingRect.right-maxTrack.x );
------- Additional Comments From pmcnett <at> pm-sc.com 2003-02-08 14:54 ------- Duane your patch worked beautifully on my end. I can now resize all VFP windows normally. However, it still doesn't handle the grab on the top edge of the window correctly, but all other edges and all corners grab just fine.
Thanks and hopefully this patch can get committed if it is found to be the correct one.
------- Additional Comments From dclark <at> akamail.com 2003-02-08 15:34 ------- It definitely isn't correct, since it breaks certain cases in other apps. I'm still trying to figure out exactly what should be done. All the MSDN says is that "the four low-order bits of the wParam parameter are used internally by the system", so not much help there :-)
------- Additional Comments From dclark <at> akamail.com 2003-02-08 17:08 ------- It looks like the correct fix is: http://www.winehq.com/hypermail/wine-patches/2003/02/0080.html
------- Additional Comments From pmcnett <at> pm-sc.com 2003-02-08 17:48 ------- Yes, that patch resolves the window resizing issue in Visual FoxPro, all versions. Great job, I definitely feel like I'm getting my money's worth with Wine! :)
As far as I'm concerned this bug can be marked as resolved, assuming that the patch makes it into the CVS tree.
------- Additional Comments From dclark <at> akamail.com 2003-02-24 18:21 ------- I think we can close this one. Fixed by: http://www.winehq.com/hypermail/wine-cvs/2003/02/0075.html
------- Additional Comments From dpaun <at> rogers.com 2003-03-25 17:46 ------- Fix some time ago. Closing.