mirror of
https://github.com/bakkeby/dwm-flexipatch
synced 2024-11-09 01:10:26 +00:00
Adding proposed changes to have different gaps on a per tag basis ref. #106
This commit is contained in:
parent
4b22fdc0c3
commit
521f87af13
@ -15,6 +15,8 @@ Refer to [https://dwm.suckless.org/](https://dwm.suckless.org/) for details on t
|
||||
|
||||
### Changelog:
|
||||
|
||||
2021-04-04 - Added option for having different gaps on a per tag basis
|
||||
|
||||
2021-03-31 - Added tapresize patch (contributed by [verschmelzen](https://github.com/verschmelzen))
|
||||
|
||||
2021-03-29 - Removed alwaysfullscreen patch (merged into dwm 6.2)
|
||||
|
@ -22,6 +22,9 @@ struct Pertag {
|
||||
#if VANITYGAPS_PATCH
|
||||
int enablegaps[NUMTAGS + 1];
|
||||
#endif // VANITYGAPS_PATCH
|
||||
#if PERTAG_VANITYGAPS_PATCH && VANITYGAPS_PATCH
|
||||
unsigned int gaps[NUMTAGS + 1];
|
||||
#endif // PERTAG_VANITYGAPS_PATCH | VANITYGAPS_PATCH
|
||||
};
|
||||
|
||||
void
|
||||
@ -56,6 +59,13 @@ pertagview(const Arg *arg)
|
||||
selmon->lt[selmon->sellt] = selmon->pertag->ltidxs[selmon->pertag->curtag][selmon->sellt];
|
||||
selmon->lt[selmon->sellt^1] = selmon->pertag->ltidxs[selmon->pertag->curtag][selmon->sellt^1];
|
||||
|
||||
#if PERTAG_VANITYGAPS_PATCH && VANITYGAPS_PATCH
|
||||
selmon->gappoh = (selmon->pertag->gaps[selmon->pertag->curtag] & 0xff) >> 0;
|
||||
selmon->gappov = (selmon->pertag->gaps[selmon->pertag->curtag] & 0xff00) >> 8;
|
||||
selmon->gappih = (selmon->pertag->gaps[selmon->pertag->curtag] & 0xff0000) >> 16;
|
||||
selmon->gappiv = (selmon->pertag->gaps[selmon->pertag->curtag] & 0xff000000) >> 24;
|
||||
#endif // PERTAG_VANITYGAPS_PATCH | VANITYGAPS_PATCH
|
||||
|
||||
#if FLEXTILE_DELUXE_LAYOUT
|
||||
selmon->ltaxis[LAYOUT] = selmon->pertag->ltaxis[selmon->pertag->curtag][LAYOUT];
|
||||
selmon->ltaxis[MASTER] = selmon->pertag->ltaxis[selmon->pertag->curtag][MASTER];
|
||||
|
@ -1,7 +1,7 @@
|
||||
/* Settings */
|
||||
#if !PERTAG_PATCH
|
||||
#if !PERTAG_VANITYGAPS_PATCH || !PERTAG_PATCH
|
||||
static int enablegaps = 1;
|
||||
#endif // PERTAG_PATCH
|
||||
#endif // PERTAG_VANITYGAPS_PATCH | PERTAG_PATCH
|
||||
|
||||
static void
|
||||
setgaps(int oh, int ov, int ih, int iv)
|
||||
@ -15,6 +15,12 @@ setgaps(int oh, int ov, int ih, int iv)
|
||||
selmon->gappov = ov;
|
||||
selmon->gappih = ih;
|
||||
selmon->gappiv = iv;
|
||||
|
||||
#if PERTAG_VANITYGAPS_PATCH && PERTAG_PATCH
|
||||
selmon->pertag->gaps[selmon->pertag->curtag] =
|
||||
((oh & 0xFF) << 0) | ((ov & 0xFF) << 8) | ((ih & 0xFF) << 16) | ((iv & 0xFF) << 24);
|
||||
#endif // PERTAG_VANITYGAPS_PATCH | PERTAG_PATCH
|
||||
|
||||
arrange(selmon);
|
||||
}
|
||||
|
||||
@ -60,13 +66,13 @@ setgapsex(const Arg *arg)
|
||||
iv = (arg->i & 0x7f);
|
||||
|
||||
/* Auto enable gaps if disabled */
|
||||
#if PERTAG_PATCH
|
||||
#if PERTAG_VANITYGAPS_PATCH && PERTAG_PATCH
|
||||
if (!selmon->pertag->enablegaps[selmon->pertag->curtag])
|
||||
selmon->pertag->enablegaps[selmon->pertag->curtag] = 1;
|
||||
#else
|
||||
if (!enablegaps)
|
||||
enablegaps = 1;
|
||||
#endif // PERTAG_PATCH
|
||||
#endif // PERTAG_VANITYGAPS_PATCH | PERTAG_PATCH
|
||||
|
||||
setgaps(oh, ov, ih, iv);
|
||||
}
|
||||
@ -75,11 +81,11 @@ setgapsex(const Arg *arg)
|
||||
static void
|
||||
togglegaps(const Arg *arg)
|
||||
{
|
||||
#if PERTAG_PATCH
|
||||
#if PERTAG_VANITYGAPS_PATCH && PERTAG_PATCH
|
||||
selmon->pertag->enablegaps[selmon->pertag->curtag] = !selmon->pertag->enablegaps[selmon->pertag->curtag];
|
||||
#else
|
||||
enablegaps = !enablegaps;
|
||||
#endif // PERTAG_PATCH
|
||||
#endif // PERTAG_VANITYGAPS_PATCH | PERTAG_PATCH
|
||||
arrange(NULL);
|
||||
}
|
||||
|
||||
|
@ -721,6 +721,11 @@
|
||||
*/
|
||||
#define PERTAG_PATCH 0
|
||||
|
||||
/* Option to store gaps on a per tag basis rather than on a per monitor basis.
|
||||
* Depends on both pertag and vanitygaps patches being enabled.
|
||||
*/
|
||||
#define PERTAG_VANITYGAPS_PATCH 0
|
||||
|
||||
/* This controls whether or not to also store bar position on a per
|
||||
* tag basis, or leave it as one bar per monitor.
|
||||
*/
|
||||
|
Loading…
Reference in New Issue
Block a user