winex11.drv: map_window should honor iconic state
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:
> 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.
Sorry, I was embarassed by the following sentence about the WM_STATE in
the Inter-Client Communication Conventions Manual, section 184.108.40.206.
"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.
More information about the wine-devel