4.4 Stacking Order

Sibling windows can stack on top of each other. Windows above can obscure or occlude lower windows. This relationship between sibling windows is known as the stacking order. The window-priority function can be used to change the stacking order of a single window. CLX also provides functions to raise or lower children of a window. Raising a mapped window can generate :exposure events for the window and any mapped subwindows that were formerly obscured. Lowering a mapped window can generate :exposure events on any windows it formerly obscured.



circulate-window-down window Function
        
window
A window.

Lowers the highest mapped child of the specified window that partially or completely occludes another child to the bottom of the stack. Completely unobscured children are unaffected. Exposure processing is performed on formerly obscured windows.

If some other client has selected :substructure-redirect on the window, a :circulate-request event is generated, and no further processing is performed. Otherwise, the child window is lowered and a :circulate-notify event is generated if the window is actually restacked.



circulate-window-up window Function
        
window
A window.

Raises the lowest mapped child of the specified window that is partially or completely occluded by another child to the top of the stack. Completely unobscured children are unaffected. Exposure processing is performed on formerly obscured windows.

If another client has selected :substructure-redirect on the window, a :circulate-request event is generated, and no further processing is performed. Otherwise, the child window is raised and a :circulate-notify event is generated if the window is actually restacked.