Adding sendmon_keepfocus patch

This commit is contained in:
bakkeby 2020-06-24 17:12:54 +02:00
parent ce12e07163
commit 9574035849
3 changed files with 15 additions and 2 deletions

View File

@ -15,7 +15,7 @@ Refer to [https://dwm.suckless.org/](https://dwm.suckless.org/) for details on t
### Changelog: ### Changelog:
2020-06-24 - Added resizepoint and statusbutton patches 2020-06-24 - Added resizepoint, statusbutton and sendmon_keepfocus patches
2020-06-21 - Added floatpos and bar_height patches 2020-06-21 - Added floatpos and bar_height patches
@ -369,6 +369,9 @@ Refer to [https://dwm.suckless.org/](https://dwm.suckless.org/) for details on t
- [selfrestart](https://dwm.suckless.org/patches/selfrestart/) - [selfrestart](https://dwm.suckless.org/patches/selfrestart/)
- restart dwm without the unnecessary dependency of an external script - restart dwm without the unnecessary dependency of an external script
- sendmon_keepfocus
- minor patch that allow clients to keep focus when being sent to another monitor
- [setborderpx](https://dwm.suckless.org/patches/statuspadding/) - [setborderpx](https://dwm.suckless.org/patches/statuspadding/)
- this patch allows border pixels to be changed during runtime - this patch allows border pixels to be changed during runtime

9
dwm.c
View File

@ -2897,6 +2897,9 @@ sendmon(Client *c, Monitor *m)
unfocus(c, 1); unfocus(c, 1);
detach(c); detach(c);
detachstack(c); detachstack(c);
#if SENDMON_KEEPFOCUS_PATCH && !EXRESIZE_PATCH
arrange(c->mon);
#endif // SENDMON_KEEPFOCUS_PATCH
c->mon = m; c->mon = m;
#if EMPTYVIEW_PATCH #if EMPTYVIEW_PATCH
c->tags = (m->tagset[m->seltags] ? m->tagset[m->seltags] : 1); c->tags = (m->tagset[m->seltags] ? m->tagset[m->seltags] : 1);
@ -2915,10 +2918,14 @@ sendmon(Client *c, Monitor *m)
arrange(m); arrange(m);
focus(c); focus(c);
restack(m); restack(m);
#elif SENDMON_KEEPFOCUS_PATCH
arrange(m);
focus(c);
restack(m);
#else #else
focus(NULL); focus(NULL);
arrange(NULL); arrange(NULL);
#endif // EXRESIZE_PATCH #endif // EXRESIZE_PATCH / SENDMON_KEEPFOCUS_PATCH
#if SWITCHTAG_PATCH #if SWITCHTAG_PATCH
if (c->switchtag) if (c->switchtag)
c->switchtag = 0; c->switchtag = 0;

View File

@ -507,6 +507,9 @@
*/ */
#define SELFRESTART_PATCH 0 #define SELFRESTART_PATCH 0
/* This patch allow clients to keep focus when being sent to another monitor. */
#define SENDMON_KEEPFOCUS_PATCH 0
/* This patch allows border pixels to be changed during runtime. /* This patch allows border pixels to be changed during runtime.
* https://dwm.suckless.org/patches/setborderpx/ * https://dwm.suckless.org/patches/setborderpx/
*/ */