diff options
| author | Ivan Kanakarakis <ivan.kanak@gmail.com> | 2011-12-20 03:55:33 +0200 |
|---|---|---|
| committer | Ivan Kanakarakis <ivan.kanak@gmail.com> | 2011-12-20 03:56:30 +0200 |
| commit | 01d6b26fd36f6b29c90edc63d706e705ff923879 (patch) | |
| tree | eff88d827de72d0ab04125fce9f27ae5dd5ee816 | |
| parent | 59adff5ea7cf0ed5339eabc5c3958d16c6ebb5a7 (diff) | |
check for both class name strings when matching rules
typical output from `xprop` WM_CLASS line:
WM_CLASS(STRING) = "foo", "bar"
res_class referes to 'bar'
res_name referes to 'foo'
check both when matching rules
| -rw-r--r-- | monsterwm.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/monsterwm.c b/monsterwm.c index 94483db..34583cf 100644 --- a/monsterwm.c +++ b/monsterwm.c @@ -343,7 +343,8 @@ void maprequest(XEvent *e) { XClassHint ch = {0, 0}; if(XGetClassHint(dis, ev->window, &ch)) for(unsigned int i=0; i<LENGTH(rules); i++) { - if(strcmp(ch.res_class, rules[i].class)) continue; + if(strcmp(ch.res_class, rules[i].class) + && strcmp(ch.res_name, rules[i].class)) continue; int cd = current_desktop; save_desktop(cd); select_desktop(rules[i].desktop); |
