Make window rules frame perfect

This moves window initialization earlier in the manage sequence.
Previously, it was on the Window's first manage() call, but this is
after the layout has already been calculated, which matters both because
of tags and whether the window starts floating or not.

Now, initialization is handled in a separate function that gets called
in Output.calculatePrimaryStackLayout() instead.
This commit is contained in:
Ben Buhse 2026-02-17 16:51:57 -06:00
commit c4da4ef30a
No known key found for this signature in database
GPG key ID: 7916ACFCD38FD0B4
3 changed files with 30 additions and 20 deletions

View file

@ -2,7 +2,6 @@
These are in rough order of my priority, though no promises I do them in this order.
- [ ] Support window rules (float/tags/SSD by app-id/title)
- [ ] Support overriding config location
- [ ] Support configuring primary vs secondary stack side
- [ ] Support switch handling (e.g. lid close)
@ -31,3 +30,4 @@ These are in rough order of my priority, though no promises I do them in this or
- [x] Add options to the tag overlay
- [x] Add options to the bar
- [x] Make a Rect struct to combine x, y, width, and height
- [x] Support window rules (float/tags by app-id/title)