diff options
Diffstat (limited to 'xwinwrap.c')
| -rw-r--r-- | xwinwrap.c | 17 |
1 files changed, 16 insertions, 1 deletions
@@ -169,13 +169,14 @@ sigHandler (int sig) usage (void) { fprintf(stderr, "%s v%s- Modified by Shantanu Goel. Visit http://tech.shantanugoel.com for updates, queries and feature requests\n", NAME, VERSION); - fprintf (stderr, "\nUsage: %s [-g {w}x{h}+{x}+{y}] [-ni] [-argb] [-fs] [-s] [-st] [-sp] [-a] " + fprintf (stderr, "\nUsage: %s [-g {w}x{h}+{x}+{y}] [-ni] [-argb] [-fdt] [-fs] [-s] [-st] [-sp] [-a] " "[-b] [-nf] [-o OPACITY] [-sh SHAPE] [-ov]-- COMMAND ARG1...\n", NAME); fprintf (stderr, "Options:\n \ -g - Specify Geometry (w=width, h=height, x=x-coord, y=y-coord. ex: -g 640x480+100+100)\n \ -ni - Ignore Input\n \ -d - Desktop Window Hack. Provide name of the \"Desktop\" window as parameter \ -argb - RGB\n \ + -fdt - force WID window a desktop type window\n \ -fs - Full Screen\n \ -s - Sticky\n \ -st - Skip Taskbar\n \ @@ -252,6 +253,7 @@ main (int argc, char **argv) int fullscreen = 0; int noInput = 0; int noFocus = 0; + int set_desktop_type = 0; Atom state[256]; int nState = 0; int override = 0; @@ -291,6 +293,10 @@ main (int argc, char **argv) { argb = 1; } + else if (strcmp (argv[i], "-fdt") == 0) + { + set_desktop_type = 1; + } else if (strcmp (argv[i], "-fs") == 0) { state[nState++] = XInternAtom (dpy, "_NET_WM_STATE_FULLSCREEN", 0); @@ -454,6 +460,15 @@ main (int argc, char **argv) XA_ATOM, 32, PropModeReplace, (unsigned char *) state, nState); + if (set_desktop_type) { + Atom type; + type = XInternAtom (dpy, "_NET_WM_WINDOW_TYPE_DESKTOP", 0); + + XChangeProperty (dpy, win, XInternAtom (dpy, "_NET_WM_WINDOW_TYPE", 1), + XA_ATOM, 32, PropModeReplace, + (unsigned char *) &type, 1); + } + if (shape) { mask = XCreatePixmap(dpy, win, width, height, 1); |
