about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorAnselm R Garbe <anselm@garbe.us>2013-08-02 22:40:20 +0200
committerAnselm R Garbe <anselm@garbe.us>2013-08-02 22:40:20 +0200
commit6af273771cb0e28e4394c78ab0322f77025a57f3 (patch)
tree10da45a8b23a944ea3504729775dd9681abd7548
parent4fb31e08968c5058362021887fab4bbea746aecf (diff)
downloaddwm-6af273771cb0e28e4394c78ab0322f77025a57f3.tar.gz
applied improved version of Martti Kühne's dmenu/multi monitor approach from dwm, no dmenuspawn required
-rw-r--r--config.def.h3
-rw-r--r--dwm.c2
2 files changed, 4 insertions, 1 deletions
diff --git a/config.def.h b/config.def.h
index 2fde8bc..875885b 100644
--- a/config.def.h
+++ b/config.def.h
@@ -50,7 +50,8 @@ static const Layout layouts[] = {
 #define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } }
 
 /* commands */
-static const char *dmenucmd[] = { "dmenu_run", "-fn", font, "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL };
+static char dmenumon[2] = "0"; /* component of dmenucmd, manipulated in spawn() */
+static const char *dmenucmd[] = { "dmenu_run", "-m", dmenumon, "-fn", font, "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL };
 static const char *termcmd[]  = { "st", NULL };
 
 static Key keys[] = {
diff --git a/dwm.c b/dwm.c
index 314adf4..6f716e9 100644
--- a/dwm.c
+++ b/dwm.c
@@ -1569,6 +1569,8 @@ sigchld(int unused) {
 
 void
 spawn(const Arg *arg) {
+	if(arg->v == dmenucmd)
+		dmenumon[0] = '0' + selmon->num;
 	if(fork() == 0) {
 		if(dpy)
 			close(ConnectionNumber(dpy));