opt: always give priority to determining whether to set overlay layer for overlay window
This commit is contained in:
19
src/maomao.c
19
src/maomao.c
@@ -5214,8 +5214,12 @@ setfloating(Client *c, int floating) {
|
|||||||
if (!c || !c->mon || !client_surface(c)->mapped || c->iskilling)
|
if (!c || !c->mon || !client_surface(c)->mapped || c->iskilling)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
wlr_scene_node_reparent(&c->scene->node,
|
if(c->isoverlay) {
|
||||||
layers[c->isfloating ? LyrFloat : LyrTile]);
|
wlr_scene_node_reparent(&c->scene->node, layers[LyrOverlay]);
|
||||||
|
} else {
|
||||||
|
wlr_scene_node_reparent(&c->scene->node,
|
||||||
|
layers[c->isfloating ? LyrFloat : LyrTile]);
|
||||||
|
}
|
||||||
|
|
||||||
target_box = c->geom;
|
target_box = c->geom;
|
||||||
|
|
||||||
@@ -5329,9 +5333,14 @@ void setfullscreen(Client *c, int fullscreen) // 用自定义全屏代理自带
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
client_set_fullscreen(c, fullscreen);
|
client_set_fullscreen(c, fullscreen);
|
||||||
wlr_scene_node_reparent(&c->scene->node, layers[fullscreen ? LyrFloat
|
|
||||||
: c->isfloating ? LyrFloat
|
if(c->isoverlay) {
|
||||||
: LyrTile]);
|
wlr_scene_node_reparent(&c->scene->node, layers[LyrOverlay]);
|
||||||
|
} else {
|
||||||
|
wlr_scene_node_reparent(&c->scene->node, layers[fullscreen ? LyrFloat
|
||||||
|
: c->isfloating ? LyrFloat
|
||||||
|
: LyrTile]);
|
||||||
|
}
|
||||||
|
|
||||||
if (fullscreen) {
|
if (fullscreen) {
|
||||||
if (c->isfloating)
|
if (c->isfloating)
|
||||||
|
|||||||
Reference in New Issue
Block a user