Add force desktop window type flag (#4)
* Add force desktop window type flag This flag places xwinwrap behind desktop icons on ubuntu * Update README.md
This commit is contained in:
parent
099ea746da
commit
ec32e9b725
|
@ -20,11 +20,12 @@ make clean
|
|||
### Usage
|
||||
|
||||
```
|
||||
Usage: xwinwrap [-g {w}x{h}+{x}+{y}] [-ni] [-argb] [-fs] [-s] [-st] [-sp] [-a] [-b] [-nf] [-o OPACITY] [-sh SHAPE] [-ov]-- COMMAND ARG1...
|
||||
Usage: xwinwrap [-g {w}x{h}+{x}+{y}] [-ni] [-argb] [-fdt] [-fs] [-s] [-st] [-sp] [-a] [-d] [-b] [-nf] [-o OPACITY] [-sh SHAPE] [-ov]-- COMMAND ARG1...
|
||||
Options:
|
||||
-g - Specify Geometry (w=width, h=height, x=x-coord, y=y-coord. ex: -g 640x480+100+100)
|
||||
-ni - Ignore Input
|
||||
-argb - RGB
|
||||
-fdt - force WID window a desktop type window
|
||||
-fs - Full Screen
|
||||
-un - Undecorated
|
||||
-s - Sticky
|
||||
|
@ -36,6 +37,7 @@ Options:
|
|||
-o - Opacity value between 0 to 1 (ex: -o 0.20)
|
||||
-sh - Shape of window (choose between rectangle, circle or triangle. Default is rectangle)
|
||||
-ov - Set override_redirect flag (For seamless desktop background integration in non-fullscreenmode)
|
||||
-d - Daemonize
|
||||
-debug - Enable debug messages
|
||||
```
|
||||
Example
|
||||
|
|
15
xwinwrap.c
15
xwinwrap.c
|
@ -133,12 +133,13 @@ static void sigHandler (int sig)
|
|||
static void usage (void)
|
||||
{
|
||||
fprintf(stderr, "%s \n", NAME);
|
||||
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] [-d] "
|
||||
"[-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 \
|
||||
-argb - RGB\n \
|
||||
-fdt - force WID window a desktop type window\n \
|
||||
-fs - Full Screen\n \
|
||||
-un - Undecorated\n \
|
||||
-s - Sticky\n \
|
||||
|
@ -275,6 +276,7 @@ int main(int argc, char **argv)
|
|||
bool have_argb_visual = false;
|
||||
bool noInput = false;
|
||||
bool argb = false;
|
||||
bool set_desktop_type = false;
|
||||
bool fullscreen = false;
|
||||
bool noFocus = false;
|
||||
bool override = false;
|
||||
|
@ -309,6 +311,10 @@ int main(int argc, char **argv)
|
|||
{
|
||||
argb = true;
|
||||
}
|
||||
else if (strcmp (argv[i], "-fdt") == 0)
|
||||
{
|
||||
set_desktop_type = true;
|
||||
}
|
||||
else if (strcmp (argv[i], "-fs") == 0)
|
||||
{
|
||||
fullscreen = 1;
|
||||
|
@ -526,7 +532,12 @@ int main(int argc, char **argv)
|
|||
xa = ATOM(_NET_WM_WINDOW_TYPE);
|
||||
|
||||
Atom prop;
|
||||
prop = ATOM(_NET_WM_WINDOW_TYPE_NORMAL);
|
||||
if (set_desktop_type)
|
||||
{
|
||||
prop = ATOM(_NET_WM_WINDOW_TYPE_DESKTOP);
|
||||
} else {
|
||||
prop = ATOM(_NET_WM_WINDOW_TYPE_NORMAL);
|
||||
}
|
||||
|
||||
XChangeProperty(display, window.window, xa, XA_ATOM, 32,
|
||||
PropModeReplace, (unsigned char *) &prop, 1);
|
||||
|
|
Loading…
Reference in New Issue