XReparentWindow() XReparentWindow()
Name
XReparentWindow - insert a window between another window and its parent.
Synopsis
XReparentWindow(display, win, parent, x, y)
Display *display;
Window win;
Window parent;
int x, y;
Arguments
display Specifies a connection to an X server; returned from XOpenDisplay().
win Specifies the ID of the window to be reparented.
parent Specifies the window ID of the new parent window.
x Specify the coordinates of the window relative to the new parent.
y
Description
XReparentWindow() modifies the window hierarchy by placing window win as a child of window parent. This function is usually used by a win-
dow manager to put a decoration window behind each application window. In the case of the window manager, the new parent window must first
be created as a child of the root window.
If win is mapped, an XUnmapWindow() request is performed on it automatically. win is then removed from its current position in the hierar-
chy, and is inserted as a child of the specified parent. win is placed on top in the stacking order with respect to siblings.
A ReparentNotify event is then generated. The override_redirect member of the structure returned by this event is set to either True or
False. Window manager clients normally should ignore this event if this member is set to True.
Finally, if the window was originally mapped, an XMapWindow() request is performed automatically.
Descendants of win remain descendants of win; they are not reparented to the old parent of win.
Normal exposure processing on formerly obscured windows is performed. The server might not generate exposure events for regions from the
initial unmap that are immediately obscured by the final map. The request fails if the new parent is not on the same screen as the old
parent, or if the new parent is the window itself or an inferior of the window.
Errors
BadMatch parent not on same screen as old parent of win.
win has a ParentRelative background and parent is not the same depth as win.
parent is win or an inferior of win.
BadWindow parent is InputOnly and win is not.
See Also
XCirculateSubwindows(), XCirculateSubwindowsDown(), XCirculateSubwindowsUp(), XConfigureWindow(), XLowerWindow(), XMoveResizeWindow(),
XMoveWindow(), XQueryTree(), XRaiseWindow(), XResizeWindow(), XRestackWindows().
Xlib - Window Manipulation XReparentWindow()