mirror of
https://github.com/mintycube/dwm.git
synced 2024-10-22 14:05:45 +02:00
Adding option to enable gaps for monocle layout, ref. issue #11
This commit is contained in:
parent
e75decf7de
commit
58ab50845d
@ -545,13 +545,13 @@ flextile(Monitor *m)
|
||||
if (n == 0)
|
||||
return;
|
||||
|
||||
#if VANITYGAPS_PATCH
|
||||
#if VANITYGAPS_PATCH && !VANITYGAPS_MONOCLE_PATCH
|
||||
/* No outer gap if full screen monocle */
|
||||
if (abs(m->ltaxis[MASTER]) == MONOCLE && (abs(m->ltaxis[LAYOUT]) == NO_SPLIT || n <= m->nmaster)) {
|
||||
oh = 0;
|
||||
ov = 0;
|
||||
}
|
||||
#endif // VANITYGAPS_PATCH
|
||||
#endif // VANITYGAPS_PATCH && !VANITYGAPS_MONOCLE_PATCH
|
||||
|
||||
(&flexlayouts[abs(m->ltaxis[LAYOUT])])->arrange(m, m->wx + ov, m->wy + oh, m->wh - 2*oh, m->ww - 2*ov, ih, iv, n);
|
||||
return;
|
||||
|
@ -1,3 +1,21 @@
|
||||
#if VANITYGAPS_PATCH && VANITYGAPS_MONOCLE_PATCH
|
||||
void
|
||||
monocle(Monitor *m)
|
||||
{
|
||||
unsigned int n;
|
||||
int oh, ov, ih, iv;
|
||||
Client *c;
|
||||
|
||||
getgaps(m, &oh, &ov, &ih, &iv, &n);
|
||||
|
||||
#if !MONOCLESYMBOL_PATCH
|
||||
if (n > 0) /* override layout symbol */
|
||||
snprintf(m->ltsymbol, sizeof m->ltsymbol, "[%d]", n);
|
||||
#endif // MONOCLESYMBOL_PATCH
|
||||
for (c = nexttiled(m->clients); c; c = nexttiled(c->next))
|
||||
resize(c, m->wx + ov, m->wy + oh, m->ww - 2 * c->bw - 2 * ov, m->wh - 2 * c->bw - 2 * oh, 0);
|
||||
}
|
||||
#else
|
||||
void
|
||||
monocle(Monitor *m)
|
||||
{
|
||||
@ -16,3 +34,4 @@ monocle(Monitor *m)
|
||||
for (c = nexttiled(m->clients); c; c = nexttiled(c->next))
|
||||
resize(c, m->wx, m->wy, m->ww - 2 * c->bw, m->wh - 2 * c->bw, 0);
|
||||
}
|
||||
#endif // VANITYGAPS_PATCH
|
@ -112,7 +112,7 @@ incrivgaps(const Arg *arg)
|
||||
);
|
||||
}
|
||||
|
||||
#if CENTEREDMASTER_LAYOUT || CENTEREDFLOATINGMASTER_LAYOUT || COLUMNS_LAYOUT || DECK_LAYOUT || FIBONACCI_DWINDLE_LAYOUT || FIBONACCI_SPIRAL_LAYOUT || GAPPLESSGRID_LAYOUT || NROWGRID_LAYOUT || HORIZGRID_LAYOUT || BSTACK_LAYOUT || BSTACKHORIZ_LAYOUT || GRIDMODE_LAYOUT || FLEXTILE_DELUXE_LAYOUT || TILE_LAYOUT
|
||||
#if CENTEREDMASTER_LAYOUT || CENTEREDFLOATINGMASTER_LAYOUT || COLUMNS_LAYOUT || DECK_LAYOUT || FIBONACCI_DWINDLE_LAYOUT || FIBONACCI_SPIRAL_LAYOUT || GAPPLESSGRID_LAYOUT || NROWGRID_LAYOUT || HORIZGRID_LAYOUT || BSTACK_LAYOUT || BSTACKHORIZ_LAYOUT || GRIDMODE_LAYOUT || FLEXTILE_DELUXE_LAYOUT || TILE_LAYOUT || (VANITYGAPS_MONOCLE_PATCH && MONOCLE_LAYOUT)
|
||||
static void
|
||||
getgaps(Monitor *m, int *oh, int *ov, int *ih, int *iv, unsigned int *nc)
|
||||
{
|
||||
|
@ -10,7 +10,7 @@ static void incrivgaps(const Arg *arg);
|
||||
static void togglegaps(const Arg *arg);
|
||||
|
||||
/* Internals */
|
||||
#if CENTEREDMASTER_LAYOUT || CENTEREDFLOATINGMASTER_LAYOUT || COLUMNS_LAYOUT || DECK_LAYOUT || FIBONACCI_DWINDLE_LAYOUT || FIBONACCI_SPIRAL_LAYOUT || GAPPLESSGRID_LAYOUT || NROWGRID_LAYOUT || HORIZGRID_LAYOUT || BSTACK_LAYOUT || BSTACKHORIZ_LAYOUT || GRIDMODE_LAYOUT || FLEXTILE_DELUXE_LAYOUT || TILE_LAYOUT
|
||||
#if CENTEREDMASTER_LAYOUT || CENTEREDFLOATINGMASTER_LAYOUT || COLUMNS_LAYOUT || DECK_LAYOUT || FIBONACCI_DWINDLE_LAYOUT || FIBONACCI_SPIRAL_LAYOUT || GAPPLESSGRID_LAYOUT || NROWGRID_LAYOUT || HORIZGRID_LAYOUT || BSTACK_LAYOUT || BSTACKHORIZ_LAYOUT || GRIDMODE_LAYOUT || FLEXTILE_DELUXE_LAYOUT || TILE_LAYOUT || (VANITYGAPS_MONOCLE_PATCH && MONOCLE_LAYOUT)
|
||||
static void getgaps(Monitor *m, int *oh, int *ov, int *ih, int *iv, unsigned int *nc);
|
||||
#endif
|
||||
static void setgaps(int oh, int ov, int ih, int iv);
|
@ -580,6 +580,12 @@
|
||||
*/
|
||||
#define VANITYGAPS_PATCH 0
|
||||
|
||||
/* This patch adds outer gaps for the monocle layout.
|
||||
* Most gaps patches tries to avoid gaps on the monocle layout, as it is often used as a
|
||||
* fullscreen mode, hence this is enabled separately from the main vanitygaps patch.
|
||||
*/
|
||||
#define VANITYGAPS_MONOCLE_PATCH 0
|
||||
|
||||
/* Follow a window to the tag it is being moved to.
|
||||
* https://dwm.suckless.org/patches/viewontag/
|
||||
*/
|
||||
|
Loading…
Reference in New Issue
Block a user