opt: optimize scroller_prefer_center judge when kill a client

This commit is contained in:
DreamMaoMao 2025-09-19 11:34:45 +08:00
parent 6ee6e51660
commit b1e221c365
2 changed files with 10 additions and 8 deletions

View file

@ -379,10 +379,11 @@ void vertical_scroller(Monitor *m) {
if (need_scroller) {
if (scroller_focus_center ||
((!m->prevsel ||
(m->prevsel->scroller_proportion * max_client_height) +
(root_client->scroller_proportion * max_client_height) >
m->w.height - 2 * scroller_structs - cur_gappiv) &&
ISTILED(m->prevsel) && scroller_prefer_center)) {
(ISTILED(m->prevsel) &&
(m->prevsel->scroller_proportion * max_client_height) +
(root_client->scroller_proportion * max_client_height) >
m->w.height - 2 * scroller_structs - cur_gappiv)) &&
scroller_prefer_center)) {
target_geom.y = m->w.y + (m->w.height - target_geom.height) / 2;
} else {
target_geom.y = root_client->geom.y > m->w.y + (m->w.height) / 2