diff options
author | davidpkj <davidpenkow1@gmail.com> | 2023-08-27 20:36:17 +0200 |
---|---|---|
committer | davidpkj <davidpenkow1@gmail.com> | 2023-08-27 20:36:17 +0200 |
commit | eebdffb5657591c6c8f697ba9b2996b74d96e6e0 (patch) | |
tree | 177ec85bffe2269075159fc3af3f0c86ae4e286e | |
parent | eb71fa427a8dc424417e860619ee06538b0016bb (diff) |
Custom changes to multihead functionality
-rw-r--r-- | config.h | 7 | ||||
-rw-r--r-- | dwm.c | 14 |
2 files changed, 14 insertions, 7 deletions
@@ -107,13 +107,10 @@ static const Key keys[] = { { MODKEY, XK_d, incnmaster, {.i = -1 } }, { MODKEY|ShiftMask, XK_d, incnmaster, {.i = +1 } }, { MODKEY, XK_z, zoom, {0} }, - { MODKEY, XK_Tab, view, {0} }, { MODKEY, XK_0, view, {.ui = ~0 } }, { MODKEY|ShiftMask, XK_0, tag, {.ui = ~0 } }, - { MODKEY, XK_comma, focusmon, {.i = -1 } }, - { MODKEY, XK_period, focusmon, {.i = +1 } }, - { MODKEY|ShiftMask, XK_comma, tagmon, {.i = -1 } }, - { MODKEY|ShiftMask, XK_period, tagmon, {.i = +1 } }, + { MODKEY, XK_Tab, focusmon, {.i = +1 } }, + { MODKEY|ShiftMask, XK_Tab, tagmon, {.i = +1 } }, { MODKEY, XK_b, togglebar, {0} }, { MODKEY|ShiftMask, XK_b, tabmode, {-1} }, @@ -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 |