From 242cfb3c2ff9f461e63be3f8d47ea94092d11a78 Mon Sep 17 00:00:00 2001 From: werapi Date: Mon, 20 Oct 2025 19:11:27 +0200 Subject: [PATCH] fix: ensure tag changes happen on correct monitor --- src/ext-protocol/foreign-toplevel.h | 2 +- src/mango.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/ext-protocol/foreign-toplevel.h b/src/ext-protocol/foreign-toplevel.h index fb44135..adfcd21 100644 --- a/src/ext-protocol/foreign-toplevel.h +++ b/src/ext-protocol/foreign-toplevel.h @@ -25,7 +25,7 @@ void handle_foreign_activate_request(struct wl_listener *listener, void *data) { } target = get_tags_first_tag(c->tags); - view(&(Arg){.ui = target}, true); + view_in_mon(&(Arg){.ui = target}, true, c->mon, true); focusclient(c, 1); wlr_foreign_toplevel_handle_v1_set_activated(c->foreign_toplevel, true); } diff --git a/src/mango.c b/src/mango.c index 218e502..c9f4bd0 100644 --- a/src/mango.c +++ b/src/mango.c @@ -5395,7 +5395,7 @@ urgent(struct wl_listener *listener, void *data) { if (focus_on_activate && !c->istagsilent && c != selmon->sel) { if (!(c->mon == selmon && c->tags & c->mon->tagset[c->mon->seltags])) - view(&(Arg){.ui = c->tags}, true); + view_in_mon(&(Arg){.ui = c->tags}, true, c->mon, true); focusclient(c, 1); } else if (c != focustop(selmon)) { if (client_surface(c)->mapped) @@ -5542,7 +5542,7 @@ void activatex11(struct wl_listener *listener, void *data) { if (focus_on_activate && !c->istagsilent && c != selmon->sel) { if (!(c->mon == selmon && c->tags & c->mon->tagset[c->mon->seltags])) - view(&(Arg){.ui = c->tags}, true); + view_in_mon(&(Arg){.ui = c->tags}, true, c->mon, true); wlr_xwayland_surface_activate(c->surface.xwayland, 1); focusclient(c, 1); need_arrange = true;