fix: smartgap shouldn't affect by non-tiling window

This commit is contained in:
DreamMaoMao 2025-07-07 14:02:00 +08:00
parent f67a7a1c8b
commit f57e898b35
3 changed files with 64 additions and 54 deletions

View file

@ -413,6 +413,7 @@ struct Monitor {
int gamma_lut_changed;
int asleep;
unsigned int visible_clients;
unsigned int visible_tiling_clients;
struct wlr_scene_optimized_blur *blur;
char last_surface_ws_name[256];
};
@ -1472,6 +1473,7 @@ arrange(Monitor *m, bool want_animation) {
return;
m->visible_clients = 0;
m->visible_tiling_clients = 0;
wl_list_for_each(c, &clients, link) {
if (c->iskilling)
continue;
@ -1489,6 +1491,10 @@ arrange(Monitor *m, bool want_animation) {
m->visible_clients++;
}
if (ISTILED(c)) {
m->visible_tiling_clients++;
}
if (!c->is_clip_to_hide || !ISTILED(c) ||
!is_scroller_layout(c->mon)) {
c->is_clip_to_hide = false;