user32.dll fix and test ShowOwnedPopups
Vitaliy Margolen
wine-devel at kievinfo.com
Wed May 11 22:53:29 CDT 2005
Wednesday, May 11, 2005, 8:02:11 PM, you wrote:
> "Vitaliy Margolen" <wine-patch at kievinfo.com> wrote:
>> ShowOwnedPopups should handle none WS_POPUP style windows as well.
>> And actually show/hide windows.
>> Match names for WM_SHOWWINDOW status codes to MSDN
>> @@ -2701,6 +2701,7 @@ BOOL WINAPI ShowOwnedPopups( HWND owner,
>> * regardless of the state of the owner
>> */
>> SendMessageW(win_array[count], WM_SHOWWINDOW, SW_SHOW, SW_PARENTOPENING);
>> + ShowWindow(win_array[count], SW_SHOW);
>> continue;
>> }
>> }
>> @@ -2715,6 +2716,7 @@ BOOL WINAPI ShowOwnedPopups( HWND owner,
>> * regardless of the state of the owner
>> */
>> SendMessageW(win_array[count], WM_SHOWWINDOW, SW_HIDE, SW_PARENTCLOSING);
>> + ShowWindow(win_array[count], SW_HIDE);
> Then each owned window will receive 2 WM_SHOWWINDOW messages. Are you sure
> that Windows does it that way? I'd advise to write a message test to verify it.
That's exactly what happens. Window receives two WM_SHOWWINDOW messages. One
with lparam indicating a reason for show/hide. And another one with lparam=0,
which indicates native calls ShowWindow and not SetWindowPos directly.
As for the tests, I could, but I don't think it's that critical. As you can see,
I just verified that window has to be shown/hidden and not just to receive a
message.
Vitaliy.
More information about the wine-devel
mailing list