Merge pull request #583 from 0xwal/fix/fakefullscreen

fix: fakefullscreen toggle from fullscreen state
This commit is contained in:
DreamMaoMao 2026-01-17 15:49:46 +08:00 committed by GitHub
commit 48737bb58c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -4661,10 +4661,11 @@ void setfakefullscreen(Client *c, int32_t fakefullscreen) {
c->isfakefullscreen = fakefullscreen;
if (!c->mon)
return;
if (c->isfullscreen)
setfullscreen(c, 0);
else
client_set_fullscreen(c, fakefullscreen);
client_set_fullscreen(c, fakefullscreen);
}
void setfullscreen(Client *c, int32_t fullscreen) // 用自定义全屏代理自带全屏
@ -4687,6 +4688,8 @@ void setfullscreen(Client *c, int32_t fullscreen) // 用自定义全屏代理自
if (c->isfloating)
c->float_geom = c->geom;
c->isfakefullscreen = 0;
c->bw = 0;
wlr_scene_node_raise_to_top(&c->scene->node); // 将视图提升到顶层
if (!is_scroller_layout(c->mon) || c->isfloating)
@ -4695,7 +4698,6 @@ void setfullscreen(Client *c, int32_t fullscreen) // 用自定义全屏代理自
} else {
c->bw = c->isnoborder ? 0 : borderpx;
c->isfullscreen = 0;
c->isfakefullscreen = 0;
if (c->isfloating)
setfloating(c, 1);
}