diff -waur pwm-20030528/clientwin.c pwm/clientwin.c --- pwm-20030528/clientwin.c 2003-05-28 23:55:08.000000000 +0200 +++ pwm/clientwin.c 2003-06-12 22:18:39.000000000 +0200 @@ -123,7 +123,7 @@ static void get_initial_winprops(Window win, int *frame_id_ret, int *ws_ret, - int *flags) + int *flags, int *frameflags) { int ws=-1, frame_id=0; WWinProp *winprop; @@ -137,6 +137,8 @@ *flags|=CWIN_WILD; else if(winprop->wildmode==WILDMODE_NO) *flags&=~CWIN_WILD; + if(winprop->unfocusable) + *frameflags|=WTHING_UNFOCUSABLE; } get_integer_property(win, wglobal.atom_workspace_num, &ws); @@ -387,7 +389,7 @@ get_mwm_hints(win, &(cwin->flags)); #endif - get_initial_winprops(win, &frame_id, &ws, &(cwin->flags)); + get_initial_winprops(win, &frame_id, &ws, &(cwin->flags), &frameflags); #ifndef CF_NO_WILD_WINDOWS if(CWIN_IS_WILD(cwin)){ diff -waur pwm-20030528/frame.c pwm/frame.c --- pwm-20030528/frame.c 2003-05-28 23:55:08.000000000 +0200 +++ pwm/frame.c 2003-06-12 22:12:42.000000000 +0200 @@ -76,7 +76,7 @@ WTHING_INIT(frame, WTHING_FRAME); - flags&=WFRAME_NO_BAR|WFRAME_NO_BORDER; + flags&=WFRAME_NO_BAR|WFRAME_NO_BORDER|WTHING_UNFOCUSABLE; flags|=WFRAME_HIDDEN|WFRAME_SHADE; frame->flags=flags; diff -waur pwm-20030528/readconfig.c pwm/readconfig.c --- pwm-20030528/readconfig.c 2003-05-28 23:55:08.000000000 +0200 +++ pwm/readconfig.c 2003-06-12 22:27:09.000000000 +0200 @@ -855,6 +855,13 @@ return TRUE; } +static bool opt_winprop_unfocusable(Tokenizer *tokz, int n, Token *toks) +{ + tmp_winprop->unfocusable = 1; + + return TRUE; +} + static bool begin_winprop(Tokenizer *tokz, int n, Token *toks) { @@ -973,6 +980,7 @@ {"workspace", "l", opt_winprop_workspace, NULL}, {"dockpos", "l", opt_winprop_dockpos, NULL}, {"wildmode", "i", opt_winprop_wildmode, NULL}, + {"unfocusable", NULL, opt_winprop_unfocusable, NULL}, {"#end", NULL, end_winprop, NULL}, {"#cancel", NULL, cancel_winprop, NULL}, diff -waur pwm-20030528/winprops.h pwm/winprops.h --- pwm-20030528/winprops.h 2003-05-28 23:55:08.000000000 +0200 +++ pwm/winprops.h 2003-06-12 20:59:11.000000000 +0200 @@ -28,6 +28,7 @@ int init_workspace; int dockpos; int wildmode; + int unfocusable; struct _WWinProp *next, *prev; } WWinProp;