fixed wrong tagging stuff
This commit is contained in:
		| @@ -13,7 +13,7 @@ | ||||
|  | ||||
| /* tagging */ | ||||
| const char tags[][MAXTAGLEN] = { "1", "2", "3", "4", "5", "6", "7", "8", "www" }; | ||||
| Bool seltags[LENGTH(tags)] = {[0] = True}; | ||||
| Bool initags[LENGTH(tags)] = {[0] = True}; | ||||
| Rule rules[] = { | ||||
| 	/* class:instance:title regex	tags regex	isfloating */ | ||||
| 	{ "Firefox",			"www",		False }, | ||||
|   | ||||
							
								
								
									
										26
									
								
								dwm.c
									
									
									
									
									
								
							
							
						
						
									
										26
									
								
								dwm.c
									
									
									
									
									
								
							| @@ -297,7 +297,7 @@ applyrules(Client *c) { | ||||
| 	if(ch.res_name) | ||||
| 		XFree(ch.res_name); | ||||
| 	if(!matched_tag) | ||||
| 		memcpy(c->tags, monitors[monitorat(-1, -1)].seltags, sizeof seltags); | ||||
| 		memcpy(c->tags, monitors[monitorat(-1, -1)].seltags, sizeof initags); | ||||
| 	if (!matched_monitor) | ||||
| 		c->monitor = monitorat(-1, -1); | ||||
| } | ||||
| @@ -1056,7 +1056,7 @@ manage(Window w, XWindowAttributes *wa) { | ||||
| 	XWindowChanges wc; | ||||
|  | ||||
| 	c = emallocz(sizeof(Client)); | ||||
| 	c->tags = emallocz(sizeof seltags); | ||||
| 	c->tags = emallocz(sizeof initags); | ||||
| 	c->win = w; | ||||
|  | ||||
| 	applyrules(c); | ||||
| @@ -1100,7 +1100,7 @@ manage(Window w, XWindowAttributes *wa) { | ||||
| 	if((rettrans = XGetTransientForHint(dpy, w, &trans) == Success)) | ||||
| 		for(t = clients; t && t->win != trans; t = t->next); | ||||
| 	if(t) | ||||
| 		memcpy(c->tags, t->tags, sizeof seltags); | ||||
| 		memcpy(c->tags, t->tags, sizeof initags); | ||||
| 	if(!c->isfloating) | ||||
| 		c->isfloating = (rettrans == Success) || c->isfixed; | ||||
| 	attach(c); | ||||
| @@ -1181,7 +1181,7 @@ movemouse(Client *c) { | ||||
| 			else if(abs((m->way + m->wah) - (ny + c->h + 2 * c->border)) < SNAP) | ||||
| 				ny = m->way + m->wah - c->h - 2 * c->border; | ||||
| 			resize(c, nx, ny, c->w, c->h, False); | ||||
| 			memcpy(c->tags, monitors[monitorat(nx, ny)].seltags, sizeof seltags); | ||||
| 			memcpy(c->tags, monitors[monitorat(nx, ny)].seltags, sizeof initags); | ||||
| 			break; | ||||
| 		} | ||||
| 	} | ||||
| @@ -1591,11 +1591,11 @@ setup(void) { | ||||
| 		} | ||||
|  | ||||
| 		monitors[i].id = i; | ||||
| 		monitors[i].seltags = emallocz(LENGTH(tags)*sizeof(char*)); | ||||
| 		monitors[i].prevtags = emallocz(LENGTH(tags)*sizeof(char*)); | ||||
| 		monitors[i].seltags = emallocz(sizeof initags); | ||||
| 		monitors[i].prevtags = emallocz(sizeof initags); | ||||
|  | ||||
| 		memcpy(monitors[i].seltags, seltags, sizeof seltags); | ||||
| 		memcpy(monitors[i].prevtags, seltags, sizeof seltags); | ||||
| 		memcpy(monitors[i].seltags, initags, sizeof initags); | ||||
| 		memcpy(monitors[i].prevtags, initags, sizeof initags); | ||||
|  | ||||
| 		/* init appearance */ | ||||
| 		monitors[i].dc.norm[ColBorder] = getcolor(NORMBORDERCOLOR); | ||||
| @@ -1950,7 +1950,7 @@ view(const char *arg) { | ||||
|  | ||||
| 	Monitor *m = &monitors[monitorat(-1, -1)]; | ||||
|  | ||||
| 	memcpy(m->prevtags, seltags, sizeof seltags); | ||||
| 	memcpy(m->prevtags, m->seltags, sizeof initags); | ||||
| 	for(i = 0; i < LENGTH(tags); i++) | ||||
| 		m->seltags[i] = (NULL == arg); | ||||
| 	m->seltags[idxoftag(arg)] = True; | ||||
| @@ -1963,9 +1963,9 @@ viewprevtag(const char *arg) { | ||||
|  | ||||
| 	Monitor *m = &monitors[monitorat(-1, -1)]; | ||||
|  | ||||
| 	memcpy(tmp, m->seltags, sizeof seltags); | ||||
| 	memcpy(m->seltags, m->prevtags, sizeof seltags); | ||||
| 	memcpy(m->prevtags, tmp, sizeof seltags); | ||||
| 	memcpy(tmp, m->seltags, sizeof initags); | ||||
| 	memcpy(m->seltags, m->prevtags, sizeof initags); | ||||
| 	memcpy(m->prevtags, tmp, sizeof initags); | ||||
| 	arrange(); | ||||
| } | ||||
|  | ||||
| @@ -2011,7 +2011,7 @@ movetomonitor(const char *arg) { | ||||
| 	if (sel) { | ||||
| 		sel->monitor = arg ? atoi(arg) : (sel->monitor+1) % mcount; | ||||
|  | ||||
| 		memcpy(sel->tags, monitors[sel->monitor].seltags, sizeof seltags); | ||||
| 		memcpy(sel->tags, monitors[sel->monitor].seltags, sizeof initags); | ||||
| 		resize(sel, monitors[sel->monitor].wax, monitors[sel->monitor].way, sel->w, sel->h, True); | ||||
| 		arrange(); | ||||
| 	} | ||||
|   | ||||
		Reference in New Issue
	
	Block a user