Mercurial > dwm-meillo
comparison tag.c @ 336:2a65e8b3d21a
implemented class:inst:title matching
author | Anselm R. Garbe <arg@10kloc.org> |
---|---|
date | Wed, 23 Aug 2006 12:08:37 +0200 |
parents | 96d09fd98e89 |
children | ae0affabdc02 |
comparison
equal
deleted
inserted
replaced
335:aca8281c7415 | 336:2a65e8b3d21a |
---|---|
76 } | 76 } |
77 | 77 |
78 void | 78 void |
79 settags(Client *c) | 79 settags(Client *c) |
80 { | 80 { |
81 char classinst[256]; | 81 char prop[512]; |
82 unsigned int i, j; | 82 unsigned int i, j; |
83 regmatch_t tmp; | 83 regmatch_t tmp; |
84 Bool matched = False; | 84 Bool matched = False; |
85 XClassHint ch; | 85 XClassHint ch; |
86 | 86 |
87 if(XGetClassHint(dpy, c->win, &ch)) { | 87 if(XGetClassHint(dpy, c->win, &ch)) { |
88 snprintf(classinst, sizeof(classinst), "%s:%s", | 88 snprintf(prop, sizeof(prop), "%s:%s:%s", |
89 ch.res_class ? ch.res_class : "", | 89 ch.res_class ? ch.res_class : "", |
90 ch.res_name ? ch.res_name : ""); | 90 ch.res_name ? ch.res_name : "", c->name); |
91 for(i = 0; !matched && i < len; i++) | 91 for(i = 0; !matched && i < len; i++) |
92 if(rreg[i].clregex && !regexec(rreg[i].clregex, classinst, 1, &tmp, 0)) { | 92 if(rreg[i].clregex && !regexec(rreg[i].clregex, prop, 1, &tmp, 0)) { |
93 c->isfloat = rule[i].isfloat; | 93 c->isfloat = rule[i].isfloat; |
94 for(j = 0; rreg[i].tregex && j < ntags; j++) { | 94 for(j = 0; rreg[i].tregex && j < ntags; j++) { |
95 if(!regexec(rreg[i].tregex, tags[j], 1, &tmp, 0)) { | 95 if(!regexec(rreg[i].tregex, tags[j], 1, &tmp, 0)) { |
96 matched = True; | 96 matched = True; |
97 c->tags[j] = True; | 97 c->tags[j] = True; |