XIconifyWindow(3)
πΈ NAME πΈ
okay bestie, welcome to XIconifyWindow(3) from the XLIB FUNCTIONS corner π
β and these three functions are literally here to manipulate top-level windows β¨. The squad is XIconifyWindow, XWithdrawWindow, and XReconfigureWMWindow. No cap, that's the whole vibe.
π SYNTAX π
Status XIconifyWindow(Display *display, Window w, int screen_number);
Status XWithdrawWindow(Display *display, Window w, int screen_number);
Status XReconfigureWMWindow(Display *display, Window w, int
screen_number, unsigned int value_mask, XWindowChanges *values);
π ARGUMENTS π
displayβ Specifies the connection to the X server. Your little link to the X server, basically π«Ά.screen_numberβ Specifies the appropriate screen number on the host server. Pick the right screen, bestie π₯οΈ.value_maskβ Specifies which values are to be set using information in thevaluesstructure. This mask is the bitwise inclusive OR of the valid configure window values bits β¨.valuesβ Specifies theXWindowChangesstructure. It's giving "here's the configuration data" π.wβ Specifies the window. The main character window in question π.
π₯ DESCRIPTION π₯
The XIconifyWindow function sends a WM_CHANGE_STATE ClientMessage event with a format of 32 and a first data element of IconicState (as described in section 4.1.4 of the Inter-Client Communication Conventions Manual) and a window of w to the root window of the specified screen with an event mask set to SubstructureNotifyMask|SubstructureRedirectMask. Window managers may elect to receive this message and if the window is in its normal state, may treat it as a request to change the window's state from normal to iconic. If the WM_CHANGE_STATE property cannot be interned, XIconifyWindow does not send a message and returns a zero status. It returns a nonzero status if the client message is sent successfully; otherwise, it returns a zero status. So yeah β successful send = nonzero, failed send = zero, and no message at all if the property can't be interned π.
The XWithdrawWindow function unmaps the specified window and sends a synthetic UnmapNotify event to the root window of the specified screen. Window managers may elect to receive this message and may treat it as a request to change the window's state to withdrawn. When a window is in the withdrawn state, neither its normal nor its iconic representations is visible π. It returns a nonzero status if the UnmapNotify event is successfully sent; otherwise, it returns a zero status. Also important: XWithdrawWindow can generate a BadWindow error π.
The XReconfigureWMWindow function issues a ConfigureWindow request on the specified top-level window. If the stacking mode is changed and the request fails with a BadMatch error, the error is trapped by Xlib and a synthetic ConfigureRequestEvent containing the same configuration parameters is sent to the root of the specified window. Window managers may elect to receive this event and treat it as a request to reconfigure the indicated window. It returns a nonzero status if the request or event is successfully sent; otherwise, it returns a zero status. And heads up: XReconfigureWMWindow can generate BadValue and BadWindow errors β οΈ.
π¦ DIAGNOSTICS π¦
BadValueβ Some numeric value falls outside the range of values accepted by the request. Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. It's giving "number said no" π.BadWindowβ A value for aWindowargument does not name a definedWindow. That window is not giving defined-window energy, bestie π.
π SEE ALSO π
XChangeWindowAttributes(3)XConfigureWindow(3)XCreateWindow(3)XDestroyWindow(3)XRaiseWindow(3)XMapWindow(3)XUnmapWindow(3)Xlib - C Language X Interface
made with π by the X Version 11 / libX11 1.8.14 girlies, page: XIconifyWindow(3) β mwah, slay, go read the whole Xlib docs bestie π«Άβ¨
π¦ where this page comes from
- alpine 3.24: libx11-doc 1.8.14-r0 Β· X11
- arch rolling: libx11 1.8.14-1 Β· MIT AND X11
- nixos 26.05: libx11 1.8.14
- nixpkgs unstable: libx11 1.8.14
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms