manage.c, config.h, fns.h: implement ALWAYDRAW option
Iris Lightshard nilix@nilfm.cc
PGP Signature
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmBJiJUACgkQO3+8IhRO Y5hqZw//fdYxnqk9xEEirff1jY2YX1hXEHqRBUj3aohAJMK+eM3WmCSzFwl87yEr X5wik8Lmr5ZBERK7ePL5ojBfahamfMsJEgtWR+n8OHRz33W0oNRlIeD2wfsEgBn8 /bFWKmlCLkQzj/efxn/Q34yYRNZgVoWIbgxGNcmDzHRnKjHDxNHtCtnHgQV2Sxzf rofoelcU/tn/RQer1Hg0X+a9EvhtbBIwxKC7qJBSsVTZzHw0dqkzeYOvRA/ofYBV zcxuT6JTATL3W1iwJjBx1kUvvV3k8FOn2eISF+In6QTQ2TWvKgZfa/T0+9EDAbBE IRg/csjEVf+D1iMZbFJwSfWXZv80tGUlpz66RtZ84/B4it/1Zz9Q+MqZuKAwmz9p vPGMm4FvNMgGth+enqykSRyiV49hrhTC+9iNcGWGSOAoRErlHtgk+hqN+burovhv 2KFHBGoF06+tHnqfc1n44zDNeR9QuMDrdd4pgUTJu05yTiBgEUkk7EhzbkpOVte+ E0DPkUNjVARdCB6P7y1zwGztwKQpjIa3rtsO8Ds+SWhcoFIotiDisGeG4dJgvA9r ebtwWAQJm/1aNgFHb98BmH7KPoUaOH8ElsNbIeYaZLDznJkiJtSom73WPkMH/C07 dqAifOng5aSFtXg35H3/IUc/pCnr4/pSuMQhxPcVa0cvSLzES2c= =NSay -----END PGP SIGNATURE-----
M
manage.c
→
manage.c
@@ -44,7 +44,11 @@
if (XGetClassHint(dpy, c->window, &class) != 0) { /* ``Success'' */ c->instance = class.res_name; c->class = class.res_class; +#ifdef ALWAYSDRAW + c->is9term = shouldalwaysdraw(c); +#else c->is9term = 0; +#endif if (isNew) { c->is9term = strstr(c->class, "term") || strstr(c->class, "Term") || strstr(c->class, "urxvt") || strstr(c->class, "URxvt") ||@@ -554,3 +558,18 @@ c->proto |= Plosefocus;
XFree((char*)p); } + +#ifdef ALWAYSDRAW +int shouldalwaysdraw(Client* c) { + static char* alwaysdraw[] = ALWAYSDRAW; + char** a = alwaysdraw; + + while (*a) { + if (c && c->class && strstr(c->class, *a)) { + return 1; + } + ++a; + } + return 0; +} +#endif