winex11.drv: map_window should honor iconic state

Alexander Lakhin exclusion at gmail.com
Sun Feb 13 02:30:09 CST 2011


13.02.2011 00:06, Alexandre Julliard writes:
> Alexander Lakhin<exclusion at gmail.com>  writes:
>
>> I've checked XWMHints just before XMapWindow call and received the correct initial_state (IconicState) and flags (StateHint set) there.
>> But the window still displayed not in a minimized state. To isolate the issue I tried the following code snippet:
>> ...
>>    XWMHints *wm_hints = XAllocWMHints();
>>    wm_hints->initial_state = IconicState;
>>    wm_hints->flags = StateHint;
>>    XSetWMHints( display, win, wm_hints );
>>
>>    XMapWindow( display, win );
>> ...
>> And the window was not minimized again. After some research I found the following explanation to it:
>> http://mail.gnome.org/archives/wm-spec-list/2001-December/msg00020.html
> No, this has nothing to do with it. While IconicState can mean different
> things for different window managers, it shouldn't make a difference
> whether it's set as initial state or changed after the fact. If initial
> state is set correctly then the bug is in your window manager.
>
Hello, Alexandre.
Sorry, I was embarassed by the following sentence about the WM_STATE in 
the Inter-Client Communication Conventions Manual, section 4.1.3.1.
"The state field describes the window manager’s idea of the state the 
window is in, which may not
match the client’s idea as expressed in the initial_state field of the 
WM_HINTS property ..."
I thought that "may not" here introduces some ambiguity and allows a 
window manager to distinct these two properties. But now I understand 
that it is indeed quirky to differentiate two and it's rather a defect 
of the window manager than Wine's.
(For your information, I use compiz).
Thanks for your feedback.

Best regards,
Alexander






More information about the wine-devel mailing list