From 3bffcda8336866666701204eedfbe2645521697b Mon Sep 17 00:00:00 2001 From: DreamMaoMao <2523610504@qq.com> Date: Fri, 19 Jun 2026 11:04:44 +0800 Subject: [PATCH] opt: ov_tab_mode not conflict ov_jump_mode --- src/dispatch/bind_define.h | 3 ++- src/ipc/ipc.h | 3 ++- src/mango.c | 9 +++++---- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/dispatch/bind_define.h b/src/dispatch/bind_define.h index 61762271..ffcee760 100644 --- a/src/dispatch/bind_define.h +++ b/src/dispatch/bind_define.h @@ -1731,7 +1731,8 @@ int32_t toggleoverview(const Arg *arg) { Client *sel = arg->tc ? arg->tc : selmon->sel; - if (selmon->isoverview && config.ov_tab_mode && arg->i != 1 && sel) { + if (selmon->isoverview && config.ov_tab_mode && !selmon->is_jump_mode && + arg->i != 1 && sel) { focusstack(&(Arg){.i = 1}); return 0; } diff --git a/src/ipc/ipc.h b/src/ipc/ipc.h index 5221ca75..9ac1a7b2 100644 --- a/src/ipc/ipc.h +++ b/src/ipc/ipc.h @@ -164,7 +164,8 @@ static cJSON *build_client_json(Client *c) { cJSON_AddNumberToObject(obj, "y", c->geom.y); cJSON_AddNumberToObject(obj, "width", c->geom.width); cJSON_AddNumberToObject(obj, "height", c->geom.height); - cJSON_AddNumberToObject(obj, "scroller_proportion", (double)c->scroller_proportion); + cJSON_AddNumberToObject(obj, "scroller_proportion", + (double)c->scroller_proportion); return obj; } diff --git a/src/mango.c b/src/mango.c index cfc4736f..badbe0e5 100644 --- a/src/mango.c +++ b/src/mango.c @@ -1747,10 +1747,11 @@ void applyrules(Client *c) { // the hit size if (!c->iscustompos && (!client_is_x11(c) || (c->geom.x == 0 && c->geom.y == 0))) { - struct wlr_box pending_center_geom = c->iscustomsize ? c->float_geom : c->geom; + struct wlr_box pending_center_geom = + c->iscustomsize ? c->float_geom : c->geom; c->float_geom = c->geom = setclient_coordinate_center(c, mon, pending_center_geom, 0, 0); - } else if(!c->iscustomsize) { + } else if (!c->iscustomsize) { c->float_geom = c->geom; } @@ -4204,8 +4205,8 @@ void keypress(struct wl_listener *listener, void *data) { wlr_idle_notifier_v1_notify_activity(idle_notifier, seat); // ov tab mode detect moe key release - if (config.ov_tab_mode && !locked && group == kb_group && - event->state == WL_KEYBOARD_KEY_STATE_RELEASED && + if (config.ov_tab_mode && !selmon->is_jump_mode && !locked && + group == kb_group && event->state == WL_KEYBOARD_KEY_STATE_RELEASED && (keycode == 133 || keycode == 37 || keycode == 64 || keycode == 50 || keycode == 134 || keycode == 105 || keycode == 108 || keycode == 62) && selmon && selmon->sel) {