Alexander Lakhinexclusion@gmail.com writes:
- data->iconic = (new_style& WS_MINIMIZE) != 0;
if (!data->embedded) { update_net_wm_states( display, data ); sync_window_style( display, data ); wine_tsx11_lock(); XMapWindow( display, data->whole_window );
if (data->iconic)
XIconifyWindow( display, data->whole_window, DefaultScreen(display) );
This is handled by setting the initial window state in the wm hints. If there's somewhere that the state isn't set correctly, that's what should be fixed.
Hello, Alexandre.
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
So it seems that the only way to minimize a window is to call XIconifyWindow.
Best regards, Alexander