pub fn restack(&self, handles: &[WindowHandle<X11rbWindowHandle>]) -> Result<()> {
        let mut conf = xproto::ConfigureWindowAux::default();
        for i in 1..handles.len() {
            let Some(WindowHandle(X11rbWindowHandle(window))) = handles.get(i) else {
                continue;
            };

            conf.stack_mode = Some(xproto::StackMode::BELOW);
            conf.sibling = handles.get(i - 1).copied().map(|h| {
                let WindowHandle(X11rbWindowHandle(w)) = h;
                w
            });
            xproto::configure_window(&self.conn, *window, &conf)?;
        }
        Ok(())
    }
Restacks the windows to the order of the vec.
display-servers/x11rb-display-server/src/xwrap/window.rs