http://bugs.winehq.org/show_bug.cgi?id=33124
Bug #: 33124 Summary: SetWindowPlacement() unexpectedly clips coordinates when applied to a child window Product: Wine Version: 1.4.1 Platform: x86 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: user32 AssignedTo: wine-bugs@winehq.org ReportedBy: jtuc@users.sourceforge.net Classification: Unclassified
Observed behavior: Regardless of whether a window handle represents a top-level or child window, SetWindowPlacement() clips passed-in coordinates according to screen bounds.
Expected behavior: Clipping of passed-in coordinates should not happen for child windows.
http://bugs.winehq.org/show_bug.cgi?id=33124
--- Comment #1 from Austin English austinenglish@gmail.com 2013-03-05 13:24:18 CST --- Please retest in 1.5.25.
http://bugs.winehq.org/show_bug.cgi?id=33124
--- Comment #2 from jtuc@users.sourceforge.net 2013-03-06 00:58:13 CST --- 1.5.25 makes no difference.
Related issue: GetWindowPlacement() should set WINDOWPLACEMENT::flags to the value that was provided upon a preceding call to SetWindowPlacement(). In other words, WINDOWPLACEMENT::flags should be part of the HWND's internal state.
The WPF_SETMINPOSITION flag should not control whether or not to copy coordinates from WINDOWPLACEMENT::ptMinPosition to the HWND's internal state. These should always be copied. WPF_SETMINPOSITION should rather be considered later when the window is actually about to minimize, to decide whether to apply the coordinates provided in WINDOWPLACEMENT::ptMinPosition.
Above shoulds result from empirical evidence on native XP and Vista.
http://bugs.winehq.org/show_bug.cgi?id=33124
--- Comment #3 from jtuc@users.sourceforge.net 2013-03-09 03:49:06 CST --- I've worked around this for now:
https://bitbucket.org/jtuc/winmerge2011/diff/Src/Common/FloatState.cpp?diff2...
https://bugs.winehq.org/show_bug.cgi?id=33124
--- Comment #4 from Austin English austinenglish@gmail.com --- This is your friendly reminder that there has been no bug activity for over 700 days. Is this still an issue in current (1.7.36 or newer) wine?