float sub-windows matching a rule

Currently when a rule that doesn't make windows floating matches, even
sub-windows of float type get tiled rather than just the main window.
This is inconsistent with dwm and other compositors. Fix this by making
these windows floating after applying rules.

Fixes #1142.
This commit is contained in:
Guido Cella 2025-06-14 22:27:25 +02:00
parent 67ff29eb95
commit ea263a0ed5

3
dwl.c
View file

@ -483,7 +483,6 @@ applyrules(Client *c)
const Rule *r;
Monitor *mon = selmon, *m;
c->isfloating = client_is_float_type(c);
appid = client_get_appid(c);
title = client_get_title(c);
@ -499,6 +498,8 @@ applyrules(Client *c)
}
}
}
c->isfloating |= client_is_float_type(c);
setmon(c, mon, newtags);
}