only enable/disable clients from the specified monitor in arrange()

also fix a crash when m is null, this can only happen when selmon is NULL
This commit is contained in:
Leonardo Hernández Hernández 2022-09-06 00:10:00 -05:00
parent 14a1e3e2a2
commit 14c010a0d6
Failed to generate hash of commit

5
dwl.c
View file

@ -496,9 +496,10 @@ arrange(Monitor *m)
{ {
Client *c; Client *c;
wl_list_for_each(c, &clients, link) wl_list_for_each(c, &clients, link)
wlr_scene_node_set_enabled(c->scene, VISIBLEON(c, c->mon)); if (c->mon == m)
wlr_scene_node_set_enabled(c->scene, VISIBLEON(c, m));
if (m->lt[m->sellt]->arrange) if (m && m->lt[m->sellt]->arrange)
m->lt[m->sellt]->arrange(m); m->lt[m->sellt]->arrange(m);
motionnotify(0); motionnotify(0);
} }