// gcc show-window.c -o show-window -lX11 -Wall -g
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include <X11/Xlib.h>
#include <X11/Xlibint.h>

int main(int argc, char *argv[]) {
    int ret;
    Display *dpy;
    XSetWindowAttributes attr;
    unsigned long window;

    assert(argc == 2);
    window = strtoul(argv[1], NULL, 16);
    assert(window > 0);
    
    dpy = XOpenDisplay(NULL);
    assert(dpy);

    attr.override_redirect = True;
    ret = XChangeWindowAttributes(dpy,
                                  window,
                                  CWOverrideRedirect,
                                  &attr);
    assert(ret);

    ret = XMapWindow(dpy,
                     window);
    assert(ret);

    ret = XRaiseWindow(dpy,
                       window);
    assert(ret);

    ret = XMoveResizeWindow(dpy,
                            window,
                            152,
                            81,
                            702,
                            411);
    assert(ret);

    ret = XSetInputFocus(dpy,
                         window,
                         RevertToParent,
                         CurrentTime);
    assert(ret);
    
    XCloseDisplay(dpy);
    
    
    return 0;
}

