@@ -133,12 +133,13 @@ static void sigHandler (int sig)
133
133
static void usage (void )
134
134
{
135
135
fprintf (stderr , "%s \n" , NAME );
136
- fprintf (stderr , "\nUsage: %s [-g {w}x{h}+{x}+{y}] [-ni] [-argb] [-fs] [-s] [-st] [-sp] [-a] "
136
+ fprintf (stderr , "\nUsage: %s [-g {w}x{h}+{x}+{y}] [-ni] [-argb] [-fdt] [- fs] [-s] [-st] [-sp] [-a] [-d ] "
137
137
"[-b] [-nf] [-o OPACITY] [-sh SHAPE] [-ov]-- COMMAND ARG1...\n" , NAME );
138
138
fprintf (stderr , "Options:\n \
139
139
-g - Specify Geometry (w=width, h=height, x=x-coord, y=y-coord. ex: -g 640x480+100+100)\n \
140
140
-ni - Ignore Input\n \
141
141
-argb - RGB\n \
142
+ -fdt - force WID window a desktop type window\n \
142
143
-fs - Full Screen\n \
143
144
-un - Undecorated\n \
144
145
-s - Sticky\n \
@@ -275,6 +276,7 @@ int main(int argc, char **argv)
275
276
bool have_argb_visual = false;
276
277
bool noInput = false;
277
278
bool argb = false;
279
+ bool set_desktop_type = false;
278
280
bool fullscreen = false;
279
281
bool noFocus = false;
280
282
bool override = false;
@@ -309,6 +311,10 @@ int main(int argc, char **argv)
309
311
{
310
312
argb = true;
311
313
}
314
+ else if (strcmp (argv [i ], "-fdt" ) == 0 )
315
+ {
316
+ set_desktop_type = true;
317
+ }
312
318
else if (strcmp (argv [i ], "-fs" ) == 0 )
313
319
{
314
320
fullscreen = 1 ;
@@ -526,7 +532,12 @@ int main(int argc, char **argv)
526
532
xa = ATOM (_NET_WM_WINDOW_TYPE );
527
533
528
534
Atom prop ;
529
- prop = ATOM (_NET_WM_WINDOW_TYPE_NORMAL );
535
+ if (set_desktop_type )
536
+ {
537
+ prop = ATOM (_NET_WM_WINDOW_TYPE_DESKTOP );
538
+ } else {
539
+ prop = ATOM (_NET_WM_WINDOW_TYPE_NORMAL );
540
+ }
530
541
531
542
XChangeProperty (display , window .window , xa , XA_ATOM , 32 ,
532
543
PropModeReplace , (unsigned char * ) & prop , 1 );
0 commit comments