diff --git a/src/action/client.h b/src/action/client.h index 5b0be9d8..41ca0663 100644 --- a/src/action/client.h +++ b/src/action/client.h @@ -126,9 +126,10 @@ void client_add_tab_bar_node(Client *c) { MangoCustomDecorate->node_data = c; MangoCustomDecorate->node_type = MANGO_TITLE_NODE; MangoCustomDecorate->type = CustomDecorate; - uint32_t layer = c->isfloating || c->isfullscreen ? LyrTop - : c->ismaximizescreen ? LyrMaximize - : LyrTile; + uint32_t layer = c->isoverlay ? LyrOverlay + : c->isfloating || c->isfullscreen ? LyrTop + : c->ismaximizescreen ? LyrMaximize + : LyrTile; c->tab_bar_node = mango_tab_bar_node_create( MangoCustomDecorate, layers[layer], config.tabdata, 0, 0); @@ -230,9 +231,10 @@ void client_reparent_group(Client *c) { if (!c->group_prev && !c->group_next) return; - int32_t layer = c->isfloating || c->isfullscreen ? LyrTop - : c->ismaximizescreen ? LyrMaximize - : LyrTile; + int32_t layer = c->isoverlay ? LyrOverlay + : c->isfloating || c->isfullscreen ? LyrTop + : c->ismaximizescreen ? LyrMaximize + : LyrTile; Client *head = c; while (head->group_prev) diff --git a/src/dispatch/bind_define.h b/src/dispatch/bind_define.h index 424cf7f6..b8b142ae 100644 --- a/src/dispatch/bind_define.h +++ b/src/dispatch/bind_define.h @@ -1541,6 +1541,8 @@ int32_t toggleoverlay(const Arg *arg) { wlr_scene_node_reparent(&c->scene->node, layers[c->isfloating ? LyrTop : LyrTile]); } + + client_reparent_group(c); setborder_color(c); return 0; }