From 74d24c3cd931fb6e8c2e3599404988de9b0d03d7 Mon Sep 17 00:00:00 2001 From: DreamMaoMao <2523610504@qq.com> Date: Mon, 23 Mar 2026 10:01:34 +0800 Subject: [PATCH] opt: avoid repeatedly setting full-screen requests --- src/mango.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/mango.c b/src/mango.c index 93c049f4..529417fe 100644 --- a/src/mango.c +++ b/src/mango.c @@ -5236,6 +5236,10 @@ void setfullscreen(Client *c, int32_t fullscreen) // 用自定义全屏代理自 if (c->mon->isoverview) return; + if (fullscreen == c->isfullscreen) { + return; + } + int32_t old_fullscreen_state = c->isfullscreen; c->isfullscreen = fullscreen; @@ -5243,9 +5247,12 @@ void setfullscreen(Client *c, int32_t fullscreen) // 用自定义全屏代理自 if (fullscreen) { - c->ismaximizescreen = 0; - exit_scroller_stack(c); + if (c->ismaximizescreen) { + client_set_maximized(c, false); + c->ismaximizescreen = 0; + } + exit_scroller_stack(c); c->isfakefullscreen = 0; c->bw = 0;