26 lines
593 B
C
26 lines
593 B
C
void
|
|
checkfloatingrules(Client *c)
|
|
{
|
|
const char *class, *instance;
|
|
unsigned int i;
|
|
const Rule *r;
|
|
XClassHint ch = { NULL, NULL };
|
|
|
|
XGetClassHint(dpy, c->win, &ch);
|
|
class = ch.res_class ? ch.res_class : broken;
|
|
instance = ch.res_name ? ch.res_name : broken;
|
|
|
|
for (i = 0; i < LENGTH(rules); i++) {
|
|
r = &rules[i];
|
|
if ((!r->title || strstr(c->name, r->title))
|
|
&& (!r->class || strstr(class, r->class))
|
|
&& (!r->instance || strstr(instance, r->instance)))
|
|
c->isfloating = r->isfloating;
|
|
}
|
|
if (ch.res_class)
|
|
XFree(ch.res_class);
|
|
if (ch.res_name)
|
|
XFree(ch.res_name);
|
|
}
|
|
|