opt: not reset tagset when show scratchpad

This commit is contained in:
DreamMaoMao 2025-09-27 08:48:24 +08:00
parent 22b1b660e5
commit 03eee2f4f1
2 changed files with 7 additions and 3 deletions

View file

@ -415,10 +415,10 @@ void restore_minimized(const Arg *arg) {
wl_list_for_each(c, &clients, link) {
if (c->isminied) {
show_hide_client(c);
c->is_scratchpad_show = 0;
c->is_in_scratchpad = 0;
c->isnamedscratchpad = 0;
show_hide_client(c);
setborder_color(c);
arrange(c->mon, false);
focusclient(c, 0);

View file

@ -4601,8 +4601,12 @@ void setsel(struct wl_listener *listener, void *data) {
void show_hide_client(Client *c) {
unsigned int target = get_tags_first_tag(c->oldtags);
tag_client(&(Arg){.ui = target}, c);
// c->tags = c->oldtags;
if (!c->is_in_scratchpad) {
tag_client(&(Arg){.ui = target}, c);
} else {
c->tags = c->oldtags;
arrange(c->mon, false);
}
c->isminied = 0;
wlr_foreign_toplevel_handle_v1_set_minimized(c->foreign_toplevel, false);
focusclient(c, 1);