summaryrefslogtreecommitdiff
path: root/qubes-dwm-6.2/dwm-rmaster-pertag-6.1.diff
diff options
context:
space:
mode:
Diffstat (limited to 'qubes-dwm-6.2/dwm-rmaster-pertag-6.1.diff')
-rw-r--r--qubes-dwm-6.2/dwm-rmaster-pertag-6.1.diff63
1 files changed, 63 insertions, 0 deletions
diff --git a/qubes-dwm-6.2/dwm-rmaster-pertag-6.1.diff b/qubes-dwm-6.2/dwm-rmaster-pertag-6.1.diff
new file mode 100644
index 0000000..8ef3c01
--- /dev/null
+++ b/qubes-dwm-6.2/dwm-rmaster-pertag-6.1.diff
@@ -0,0 +1,63 @@
+First apply rmaster, then pertag, then this patch for rmaster-pertag
+
+--- a/dwm.c
++++ b/dwm.c
+@@ -136,6 +136,7 @@ struct Monitor {
+ char ltsymbol[16];
+ float mfact;
+ int nmaster;
++ int rmaster;
+ int num;
+ int by; /* bar geometry */
+ int mx, my, mw, mh; /* screen size */
+@@ -143,7 +144,6 @@ struct Monitor {
+ unsigned int seltags;
+ unsigned int sellt;
+ unsigned int tagset[2];
+- int rmaster;
+ int showbar;
+ int topbar;
+ Client *clients;
+@@ -322,6 +322,7 @@ static Window root, wmcheckwin;
+ struct Pertag {
+ unsigned int curtag, prevtag; /* current and previous tag */
+ int nmasters[LENGTH(tags) + 1]; /* number of windows in master area */
++ int rmasters[LENGTH(tags) + 1]; /* rmasters per tag */
+ float mfacts[LENGTH(tags) + 1]; /* mfacts per tag */
+ unsigned int sellts[LENGTH(tags) + 1]; /* selected layouts */
+ const Layout *ltidxs[LENGTH(tags) + 1][2]; /* matrix of tags and layouts indexes */
+@@ -787,6 +788,7 @@ createmon(void)
+
+ for (i = 0; i <= LENGTH(tags); i++) {
+ m->pertag->nmasters[i] = m->nmaster;
++ m->pertag->rmasters[i] = m->rmaster;
+ m->pertag->mfacts[i] = m->mfact;
+
+ m->pertag->ltidxs[i][0] = m->lt[0];
+@@ -2076,8 +2078,10 @@ void
+ togglermaster(const Arg *arg)
+ {
+ selmon->rmaster = !selmon->rmaster;
++ selmon->pertag->rmasters[selmon->pertag->curtag] = selmon->rmaster;
+ /* now mfact represents the left factor */
+ selmon->mfact = 1.0 - selmon->mfact;
++ selmon->pertag->mfacts[selmon->pertag->curtag] = selmon->mfact;
+ if (selmon->lt[selmon->sellt]->arrange)
+ arrange(selmon);
+ }
+@@ -2120,6 +2124,7 @@ toggleview(const Arg *arg)
+
+ /* apply settings for this view */
+ selmon->nmaster = selmon->pertag->nmasters[selmon->pertag->curtag];
++ selmon->rmaster = selmon->pertag->rmasters[selmon->pertag->curtag];
+ selmon->mfact = selmon->pertag->mfacts[selmon->pertag->curtag];
+ selmon->sellt = selmon->pertag->sellts[selmon->pertag->curtag];
+ selmon->lt[selmon->sellt] = selmon->pertag->ltidxs[selmon->pertag->curtag][selmon->sellt];
+@@ -2572,6 +2577,7 @@ view(const Arg *arg)
+ }
+
+ selmon->nmaster = selmon->pertag->nmasters[selmon->pertag->curtag];
++ selmon->rmaster = selmon->pertag->rmasters[selmon->pertag->curtag];
+ selmon->mfact = selmon->pertag->mfacts[selmon->pertag->curtag];
+ selmon->sellt = selmon->pertag->sellts[selmon->pertag->curtag];
+ selmon->lt[selmon->sellt] = selmon->pertag->ltidxs[selmon->pertag->curtag][selmon->sellt];