diff options
| author | Anselm R Garbe <garbeam@gmail.com> | 2008-03-14 14:35:45 +0000 | 
|---|---|---|
| committer | Anselm R Garbe <garbeam@gmail.com> | 2008-03-14 14:35:45 +0000 | 
| commit | e237b2a76fb3dac1f43b91e5c7b6adb9ef04c9ed (patch) | |
| tree | da79e7fb7f8a05c3ec739aca9f62224d7adbbee7 | |
| parent | dd9ee6d248397dcd3483131808e5c967bad3900f (diff) | |
some changes towards 4.9
| -rw-r--r-- | config.anselm.h | 37 | ||||
| -rw-r--r-- | config.def.h | 13 | ||||
| -rw-r--r-- | config.mk | 2 | ||||
| -rw-r--r-- | dwm.c | 17 | 
4 files changed, 38 insertions, 31 deletions
| diff --git a/config.anselm.h b/config.anselm.h index aef5947..09cccd1 100644 --- a/config.anselm.h +++ b/config.anselm.h @@ -14,24 +14,15 @@  const char tags[][MAXTAGLEN] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };  Rule rules[] = { -	/* class:instance:title substr	tags ref	isfloating */ -	{ "Firefox",			tags[8],	False }, -	{ "Gimp",			NULL,		True }, -	{ "MPlayer",			NULL,		True }, -	{ "Acroread",			NULL,		True }, +	/* class	instance	title		tags ref	isfloating */ +	{ NULL,		NULL,		"Firefox",	tags[8],	False }, +	{ NULL,		NULL,		"Gimp",		NULL,		True }, +	{ NULL,		NULL,		"MPlayer",	NULL,		True }, +	{ NULL,		NULL,		"Acroread",	NULL,		True },  }; -/* layout(s) */ -#define RESIZEHINTS		True	/* False - respect size hints in tiled resizals */ -#define SNAP			32	/* snap pixel */ - -Layout layouts[] = { -	/* symbol		function	isfloating */ -	{ "[]|",		tileh,		False }, /* first entry is default */ -	{ "[]=",		tilev,		False }, -	{ "><>",		floating,	True }, -	{ "[M]",		monocle,	True }, -}; +/* geometry function */ +void (*setgeoms)(void) = setdefgeoms;  void  setanselmgeoms(void) { @@ -83,12 +74,24 @@ anselmgeoms(const char *arg) {  void  defgeoms(const char *arg) { -	setgeoms = setdefaultgeoms; +	setgeoms = setdefgeoms;  	setgeoms();  	updatebarpos();  	setlayout("[]=");  } +/* layout(s) */ +#define RESIZEHINTS		True	/* False - respect size hints in tiled resizals */ +#define SNAP			32	/* snap pixel */ + +Layout layouts[] = { +	/* symbol		function	isfloating */ +	{ "[]|",		tileh,		False }, /* first entry is default */ +	{ "[]=",		tilev,		False }, +	{ "><>",		floating,	True }, +	{ "[M]",		monocle,	True }, +}; +  /* key definitions */  #define MODKEY			Mod1Mask  Key keys[] = { diff --git a/config.def.h b/config.def.h index c1eedd4..4254c43 100644 --- a/config.def.h +++ b/config.def.h @@ -14,13 +14,16 @@  const char tags[][MAXTAGLEN] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };  Rule rules[] = { -	/* class:instance:title substr	tags ref	isfloating */ -	{ "Firefox",			tags[8],	False }, -	{ "Gimp",			NULL,		True }, -	{ "MPlayer",			NULL,		True }, -	{ "Acroread",			NULL,		True }, +	/* class	instance	title		tags ref	isfloating */ +	{ NULL,		NULL,		"Firefox",	tags[8],	False }, +	{ NULL,		NULL,		"Gimp",		NULL,		True }, +	{ NULL,		NULL,		"MPlayer",	NULL,		True }, +	{ NULL,		NULL,		"Acroread",	NULL,		True },  }; +/* geometry function */ +void (*setgeoms)(void) = setdefgeoms; +  /* layout(s) */  #define RESIZEHINTS		True	/* False - respect size hints in tiled resizals */  #define SNAP			32	/* snap pixel */ @@ -1,5 +1,5 @@  # dwm version -VERSION = 4.8 +VERSION = 4.9  # Customize below to fit your system @@ -99,7 +99,9 @@ typedef struct {  } Layout;   typedef struct { -	const char *prop; +	const char *class; +	const char *instance; +	const char *title;  	const char *tag;  	Bool isfloating;  } Rule; @@ -161,7 +163,7 @@ void restack(void);  void run(void);  void scan(void);  void setclientstate(Client *c, long state); -void setdefaultgeoms(void); +void setdefgeoms(void);  void setlayout(const char *arg);  void setup(void);  void spawn(const char *arg); @@ -224,7 +226,6 @@ Display *dpy;  DC dc = {0};  Layout *lt = NULL;  Window root, barwin; -void (*setgeoms)(void) = setdefaultgeoms;  /* configuration, allows nested code to access above variables */  #include "config.h" @@ -244,9 +245,9 @@ applyrules(Client *c) {  	XGetClassHint(dpy, c->win, &ch);  	for(i = 0; i < LENGTH(rules); i++) {  		r = &rules[i]; -		if(strstr(c->name, r->prop) -		|| (ch.res_class && strstr(ch.res_class, r->prop)) -		|| (ch.res_name && strstr(ch.res_name, r->prop))) +		if(strstr(c->name, r->title) +		|| (ch.res_class && r->class && strstr(ch.res_class, r->class)) +		|| (ch.res_name && r->instance && strstr(ch.res_name, r->instance)))  		{  			c->isfloating = r->isfloating;  			if(r->tag) { @@ -1051,7 +1052,7 @@ maprequest(XEvent *e) {  }  void -monocle(void) {  +monocle(void) {  	Client *c;  	for(c = clients; c; c = c->next) @@ -1390,7 +1391,7 @@ setclientstate(Client *c, long state) {  }  void -setdefaultgeoms(void) { +setdefgeoms(void) {  	/* screen dimensions */  	sx = 0; | 
