Merge remote-tracking branch 'upstream/master'
This commit is contained in:
11
README.md
11
README.md
@@ -19,6 +19,10 @@ Browsing patches? There is a [map of patches](https://coggle.it/diagram/X9IiSSM6
|
||||
|
||||
### Changelog:
|
||||
|
||||
2023-12-22 - Added the do-not-die-on-color-allocation-failure patch
|
||||
|
||||
2023-12-01 - Added the sendmoncenter patch
|
||||
|
||||
2023-11-12 - Added the focusmaster-return patch variant
|
||||
|
||||
2023-06-27 - Added the focusfollowmouse and unmanaged patches
|
||||
@@ -357,6 +361,10 @@ Browsing patches? There is a [map of patches](https://coggle.it/diagram/X9IiSSM6
|
||||
- i.e. if topbar is 0 then dmenu will appear at the bottom and if 1 then dmenu will appear at
|
||||
the top
|
||||
|
||||
- do-not-die-on-color-allocation-failure
|
||||
- avoids dwm terminating (dying) on color allocation failures
|
||||
- useful for the xrdb (xresources) and status2d patches
|
||||
|
||||
- [dragcfact](https://github.com/bakkeby/patches/wiki/dragcfact/)
|
||||
- lets you resize clients' size (i.e. modify cfact) by holding modkey + shift + right-click
|
||||
and dragging the mouse
|
||||
@@ -650,6 +658,9 @@ Browsing patches? There is a [map of patches](https://coggle.it/diagram/X9IiSSM6
|
||||
- [selfrestart](https://dwm.suckless.org/patches/selfrestart/)
|
||||
- restart dwm without the unnecessary dependency of an external script
|
||||
|
||||
- [sendmoncenter](https://dwm.suckless.org/patches/sendmoncenter/)
|
||||
- floating windows being sent to another monitor will be centered
|
||||
|
||||
- [sendmon\_keepfocus](https://github.com/bakkeby/patches/wiki/sendmon_keepfocus/)
|
||||
- minor patch that allow clients to keep focus when being sent to another monitor
|
||||
|
||||
|
35
README.org
35
README.org
@@ -79,6 +79,7 @@
|
||||
- [[#cycle-layouts][Cycle Layouts]]
|
||||
- [[#decoration-hints][Decoration Hints]]
|
||||
- [[#distribute-tags][Distribute Tags]]
|
||||
- [[#do-not-die-on-color-allocation-failure][Do Not Die on Color Allocation Failure]]
|
||||
- [[#drag-cfact][Drag CFact]]
|
||||
- [[#drag-mfact][Drag MFact]]
|
||||
- [[#dwmc][DWMC]]
|
||||
@@ -137,6 +138,7 @@
|
||||
- [[#seamless-restart][Seamless Restart]]
|
||||
- [[#selective-fake-fullscreen][Selective Fake Fullscreen]]
|
||||
- [[#self-restart][Self Restart]]
|
||||
- [[#send-monitor-center][Send Monitor Center]]
|
||||
- [[#send-monitor-keep-focus][Send Monitor Keep Focus]]
|
||||
- [[#set-border-pixels][Set Border Pixels]]
|
||||
- [[#shift-both][Shift Both]]
|
||||
@@ -304,6 +306,10 @@ Browsing patches? There is a [[https://coggle.it/diagram/X9IiSSM6PTWOM9Wz][map o
|
||||
|
||||
** Changelog
|
||||
|
||||
2023-12-22 - Added the do-not-die-on-color-allocation-failure patch
|
||||
|
||||
2023-12-01 - Added the sendmoncenter patch
|
||||
|
||||
2023-11-12 - Added the focusmaster-return patch variant
|
||||
|
||||
2023-06-27 - Added the focusfollowmouse and unmanaged patches
|
||||
@@ -627,6 +633,10 @@ Browsing patches? There is a [[https://coggle.it/diagram/X9IiSSM6PTWOM9Wz][map o
|
||||
- updates the position of dmenu to match that of the bar
|
||||
- i.e. if topbar is 0 then dmenu will appear at the bottom and if 1 then dmenu will appear at the top
|
||||
|
||||
- do-not-die-on-color-allocation-failure
|
||||
- avoids dwm terminating (dying) on color allocation failures
|
||||
- useful for the xrdb (xresources) and status2d patches
|
||||
|
||||
- [[https://github.com/bakkeby/patches/wiki/dragcfact/][dragcfact]]
|
||||
- lets you resize clients' size (i.e. modify cfact) by holding modkey + shift + right-click and dragging the mouse
|
||||
|
||||
@@ -878,6 +888,9 @@ Browsing patches? There is a [[https://coggle.it/diagram/X9IiSSM6PTWOM9Wz][map o
|
||||
- [[https://dwm.suckless.org/patches/selfrestart/][selfrestart]]
|
||||
- restart dwm without the unnecessary dependency of an external script
|
||||
|
||||
- [[https://dwm.suckless.org/patches/sendmoncenter/][sendmoncenter]]
|
||||
- floating windows being sent to another monitor will be centered
|
||||
|
||||
- [[https://github.com/bakkeby/patches/wiki/sendmon_keepfocus/][sendmon_keepfocus]]
|
||||
- minor patch that allow clients to keep focus when being sent to another monitor
|
||||
|
||||
@@ -1984,6 +1997,18 @@ https://dwm.suckless.org/patches/reorganizetags/
|
||||
#define DISTRIBUTETAGS_PATCH 0
|
||||
#+END_SRC
|
||||
|
||||
*** Do Not Die on Color Allocation Failure
|
||||
|
||||
By default dwm will terminate on color allocation failure and the behaviour is intended to catch and inform the user of color configuration issues.
|
||||
|
||||
Some patches like status2d and xresources / xrdb can change colours during runtime, which means that if a color can't be allocated at this time then the window manager will abruptly terminate.
|
||||
|
||||
This patch will ignore color allocation failures and continue on as normal. The effect of this is that the existing color, that was supposed to be replaced, will remain as-is.
|
||||
|
||||
#+BEGIN_SRC c :tangle patches.def.h
|
||||
#define DO_NOT_DIE_ON_COLOR_ALLOCATION_FAILURE_PATCH 0
|
||||
#+END_SRC
|
||||
|
||||
*** Drag CFact
|
||||
|
||||
Similarly to the dragmfact patch this allows you to click and drag clients to change the cfact to adjust the client's size in the stack. This patch depends on the cfacts patch.
|
||||
@@ -2740,6 +2765,16 @@ https://dwm.suckless.org/patches/selfrestart/
|
||||
#define SELFRESTART_PATCH 0
|
||||
#+END_SRC
|
||||
|
||||
*** Send Monitor Center
|
||||
|
||||
Floating windows being sent to another monitor will be centered.
|
||||
|
||||
https://dwm.suckless.org/patches/sendmoncenter/
|
||||
|
||||
#+BEGIN_SRC c :tangle patches.def.h
|
||||
#define SENDMON_CENTER_PATCH 0
|
||||
#+END_SRC
|
||||
|
||||
*** Send Monitor Keep Focus
|
||||
|
||||
This patch allow clients to keep focus when being sent to another monitor.
|
||||
|
8
drw.c
8
drw.c
@@ -337,14 +337,22 @@ drw_clr_create(
|
||||
#if BAR_ALPHA_PATCH
|
||||
if (!XftColorAllocName(drw->dpy, drw->visual, drw->cmap,
|
||||
clrname, dest))
|
||||
#if DO_NOT_DIE_ON_COLOR_ALLOCATION_FAILURE_PATCH
|
||||
fprintf(stderr, "warning, cannot allocate color '%s'", clrname);
|
||||
#else
|
||||
die("error, cannot allocate color '%s'", clrname);
|
||||
#endif // DO_NOT_DIE_ON_COLOR_ALLOCATION_FAILURE_PATCH
|
||||
|
||||
dest->pixel = (dest->pixel & 0x00ffffffU) | (alpha << 24);
|
||||
#else
|
||||
if (!XftColorAllocName(drw->dpy, DefaultVisual(drw->dpy, drw->screen),
|
||||
DefaultColormap(drw->dpy, drw->screen),
|
||||
clrname, dest))
|
||||
#if DO_NOT_DIE_ON_COLOR_ALLOCATION_FAILURE_PATCH
|
||||
fprintf(stderr, "warning, cannot allocate color '%s'", clrname);
|
||||
#else
|
||||
die("error, cannot allocate color '%s'", clrname);
|
||||
#endif // DO_NOT_DIE_ON_COLOR_ALLOCATION_FAILURE_PATCH
|
||||
|
||||
#if NO_TRANSPARENT_BORDERS_PATCH
|
||||
dest->pixel |= 0xff << 24;
|
||||
|
8
dwm.c
8
dwm.c
@@ -3383,6 +3383,14 @@ sendmon(Client *c, Monitor *m)
|
||||
#else
|
||||
c->tags = m->tagset[m->seltags]; /* assign tags of target monitor */
|
||||
#endif // EMPTYVIEW_PATCH
|
||||
#if SENDMON_CENTER_PATCH
|
||||
c->x = m->mx + (m->mw - WIDTH(c)) / 2;
|
||||
c->y = m->my + (m->mh - HEIGHT(c)) / 2;
|
||||
#if SAVEFLOATS_PATCH
|
||||
c->sfx = m->mx + (m->mw - c->sfw - 2 * c->bw) / 2;
|
||||
c->sfy = m->my + (m->mh - c->sfh - 2 * c->bw) / 2;
|
||||
#endif // SAVEFLOATS_PATCH
|
||||
#endif // SENDMON_CENTER_PATCH
|
||||
#if ATTACHABOVE_PATCH || ATTACHASIDE_PATCH || ATTACHBELOW_PATCH || ATTACHBOTTOM_PATCH
|
||||
attachx(c);
|
||||
#else
|
||||
|
@@ -145,6 +145,8 @@
|
||||
|
||||
#define DISTRIBUTETAGS_PATCH 0
|
||||
|
||||
#define DO_NOT_DIE_ON_COLOR_ALLOCATION_FAILURE_PATCH 0
|
||||
|
||||
#define DRAGCFACT_PATCH 0
|
||||
|
||||
#define DRAGMFACT_PATCH 0
|
||||
@@ -277,6 +279,8 @@
|
||||
|
||||
#define SELFRESTART_PATCH 0
|
||||
|
||||
#define SENDMON_CENTER_PATCH 0
|
||||
|
||||
#define SENDMON_KEEPFOCUS_PATCH 0
|
||||
|
||||
#define SETBORDERPX_PATCH 0
|
||||
|
Reference in New Issue
Block a user