From eebdffb5657591c6c8f697ba9b2996b74d96e6e0 Mon Sep 17 00:00:00 2001 From: davidpkj Date: Sun, 27 Aug 2023 20:36:17 +0200 Subject: Custom changes to multihead functionality --- dwm.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'dwm.c') diff --git a/dwm.c b/dwm.c index bce09fd..6470b69 100644 --- a/dwm.c +++ b/dwm.c @@ -2072,15 +2072,25 @@ sendmon(Client *c, Monitor *m) { if (c->mon == m) return; + + int hadfocus = (c == selmon->sel); + unfocus(c, 1); detach(c); detachstack(c); + arrange(c->mon); c->mon = m; c->tags = m->tagset[m->seltags]; /* assign tags of target monitor */ attach(c); attachstack(c); - focus(NULL); - arrange(NULL); + arrange(m); + + if (hadfocus) { + focus(c); + restack(m); + } else { + focus(NULL); + } } void -- cgit v1.2.3