diff --git a/src/client.c b/src/client.c index cd2225d..6b553a2 100644 --- a/src/client.c +++ b/src/client.c @@ -242,7 +242,7 @@ client_focus(Client *c) sel->flags &= ~AboveFlag; frame_update(sel); - mouse_grabbuttons(sel, False); + mouse_grabbuttons(sel, !conf.focus_pclick); } if((sel = c)) diff --git a/src/config.c b/src/config.c index d303fd3..5f6873e 100644 --- a/src/config.c +++ b/src/config.c @@ -148,6 +148,7 @@ conf_misc_section(char *src) conf.raisefocus = get_opt(src, "false", "raisefocus").bool; conf.raiseswitch = get_opt(src, "false", "raiseswitch").bool; conf.focus_fmouse = get_opt(src, "true", "focus_follow_mouse").bool; + conf.focus_pclick = get_opt(src, "true", "focus_pointer_click").bool; conf.status_timing = get_opt(src, "1", "status_timing").num; conf.status_path = get_opt(src, "", "status_path").str; conf.autostart_path = get_opt(src, "", "autostart_path").str; diff --git a/src/structs.h b/src/structs.h index 93cec8b..7f7f0bc 100644 --- a/src/structs.h +++ b/src/structs.h @@ -341,6 +341,7 @@ typedef struct Bool raisefocus; Bool raiseswitch; Bool focus_fmouse; + Bool focus_pclick; Bool ignore_next_client_rules; uint pad; int status_timing; diff --git a/wmfsrc.in b/wmfsrc.in index b18fd93..ae39555 100644 --- a/wmfsrc.in +++ b/wmfsrc.in @@ -7,6 +7,10 @@ font = "dejavu-10" raisefocus = false focus_follow_mouse = true + # focus_pointer_click: click on unfocused client area: + # true -- default, set focus + # false -- click go to client; including dockapps + focus_pointer_click = true status_timing = 1 #seconds [/misc]