소스 검색

applied improved version of Martti Kühne's dmenu/multi monitor approach from dwm, no dmenuspawn required

Anselm R Garbe 12 년 전
부모
커밋
6af273771c
2개의 변경된 파일4개의 추가작업 그리고 1개의 파일을 삭제
  1. 2 1
      config.def.h
  2. 2 0
      dwm.c

+ 2 - 1
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[] = {

+ 2 - 0
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));