From 16de98fbf857c97b133469946ebf34487ed0e8a5 Mon Sep 17 00:00:00 2001 From: krolyxon Date: Sun, 5 Jun 2022 12:25:53 +0530 Subject: [PATCH] pertag patch --- README.md | 3 +- dwm | Bin 66448 -> 75184 bytes dwm.c | 88 +++++++++++- patch/dwm-pertag-20200914-61bb8b2.diff | 177 +++++++++++++++++++++++++ 4 files changed, 261 insertions(+), 7 deletions(-) mode change 100644 => 100755 dwm create mode 100644 patch/dwm-pertag-20200914-61bb8b2.diff diff --git a/README.md b/README.md index a5706ad..e503ae8 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,7 @@ 2. [fullgaps](https://dwm.suckless.org/patches/fullgaps/) patch for adding gaps between windows. 3. [scratchpad](https://dwm.suckless.org/patches/scratchpad/) patch for scratchpad 4. [bar height](https://dwm.suckless.org/patches/bar_height/) for changing bar's height -5. [swallow](https://dwm.suckless.org/patches/swallow/) patch for swallowing windows (have reversed the patch right now.) +5. [pertag](https://dwm.suckless.org/patches/pertag/) for layout for each tag. +6. [swallow](https://dwm.suckless.org/patches/swallow/) patch for swallowing windows (have reversed the patch right now.) ### MAKE SURE TO INSTALL ``libxft-bgra`` OR DWM WILL CRASH diff --git a/dwm b/dwm old mode 100644 new mode 100755 index 0dde7f9c3cc79fd6fe6db7e801e5755295d61655..987dd589e53d72ab5e2aa8641b70c11762c72f1b GIT binary patch literal 75184 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 literal 66448 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

vTX};u<|E33j!h=5xJRIySq<`m; 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 31 ? -1 : 1]; }; @@ -656,6 +667,7 @@ Monitor * createmon(void) { Monitor *m; + unsigned int i; m = ecalloc(1, sizeof(Monitor)); m->tagset[0] = m->tagset[1] = 1; @@ -667,6 +679,20 @@ createmon(void) m->lt[0] = &layouts[0]; m->lt[1] = &layouts[1 % LENGTH(layouts)]; strncpy(m->ltsymbol, layouts[0].symbol, sizeof m->ltsymbol); + m->pertag = ecalloc(1, sizeof(Pertag)); + m->pertag->curtag = m->pertag->prevtag = 1; + + for (i = 0; i <= LENGTH(tags); i++) { + m->pertag->nmasters[i] = m->nmaster; + m->pertag->mfacts[i] = m->mfact; + + m->pertag->ltidxs[i][0] = m->lt[0]; + m->pertag->ltidxs[i][1] = m->lt[1]; + m->pertag->sellts[i] = m->sellt; + + m->pertag->showbars[i] = m->showbar; + } + return m; } @@ -995,7 +1021,7 @@ grabkeys(void) void incnmaster(const Arg *arg) { - selmon->nmaster = MAX(selmon->nmaster + arg->i, 0); + selmon->nmaster = selmon->pertag->nmasters[selmon->pertag->curtag] = MAX(selmon->nmaster + arg->i, 0); arrange(selmon); } @@ -1578,9 +1604,9 @@ void setlayout(const Arg *arg) { if (!arg || !arg->v || arg->v != selmon->lt[selmon->sellt]) - selmon->sellt ^= 1; + selmon->sellt = selmon->pertag->sellts[selmon->pertag->curtag] ^= 1; if (arg && arg->v) - selmon->lt[selmon->sellt] = (Layout *)arg->v; + selmon->lt[selmon->sellt] = selmon->pertag->ltidxs[selmon->pertag->curtag][selmon->sellt] = (Layout *)arg->v; strncpy(selmon->ltsymbol, selmon->lt[selmon->sellt]->symbol, sizeof selmon->ltsymbol); if (selmon->sel) arrange(selmon); @@ -1599,7 +1625,7 @@ setmfact(const Arg *arg) f = arg->f < 1.0 ? arg->f + selmon->mfact : arg->f - 1.0; if (f < 0.05 || f > 0.95) return; - selmon->mfact = f; + selmon->mfact = selmon->pertag->mfacts[selmon->pertag->curtag] = f; arrange(selmon); } @@ -1779,7 +1805,7 @@ tile(Monitor *m) void togglebar(const Arg *arg) { - selmon->showbar = !selmon->showbar; + selmon->showbar = selmon->pertag->showbars[selmon->pertag->curtag] = !selmon->showbar; updatebarpos(selmon); XMoveResizeWindow(dpy, selmon->barwin, selmon->wx, selmon->by, selmon->ww, bh); arrange(selmon); @@ -1840,9 +1866,33 @@ void toggleview(const Arg *arg) { unsigned int newtagset = selmon->tagset[selmon->seltags] ^ (arg->ui & TAGMASK); + int i; if (newtagset) { selmon->tagset[selmon->seltags] = newtagset; + + if (newtagset == ~0) { + selmon->pertag->prevtag = selmon->pertag->curtag; + selmon->pertag->curtag = 0; + } + + /* test if the user did not select the same tag */ + if (!(newtagset & 1 << (selmon->pertag->curtag - 1))) { + selmon->pertag->prevtag = selmon->pertag->curtag; + for (i = 0; !(newtagset & 1 << i); i++) ; + selmon->pertag->curtag = i + 1; + } + + /* apply settings for this view */ + selmon->nmaster = selmon->pertag->nmasters[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]; + selmon->lt[selmon->sellt^1] = selmon->pertag->ltidxs[selmon->pertag->curtag][selmon->sellt^1]; + + if (selmon->showbar != selmon->pertag->showbars[selmon->pertag->curtag]) + togglebar(NULL); + focus(NULL); arrange(selmon); } @@ -2137,11 +2187,37 @@ updatewmhints(Client *c) void view(const Arg *arg) { + int i; + unsigned int tmptag; + if ((arg->ui & TAGMASK) == selmon->tagset[selmon->seltags]) return; selmon->seltags ^= 1; /* toggle sel tagset */ - if (arg->ui & TAGMASK) + if (arg->ui & TAGMASK) { selmon->tagset[selmon->seltags] = arg->ui & TAGMASK; + selmon->pertag->prevtag = selmon->pertag->curtag; + + if (arg->ui == ~0) + selmon->pertag->curtag = 0; + else { + for (i = 0; !(arg->ui & 1 << i); i++) ; + selmon->pertag->curtag = i + 1; + } + } else { + tmptag = selmon->pertag->prevtag; + selmon->pertag->prevtag = selmon->pertag->curtag; + selmon->pertag->curtag = tmptag; + } + + selmon->nmaster = selmon->pertag->nmasters[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]; + selmon->lt[selmon->sellt^1] = selmon->pertag->ltidxs[selmon->pertag->curtag][selmon->sellt^1]; + + if (selmon->showbar != selmon->pertag->showbars[selmon->pertag->curtag]) + togglebar(NULL); + focus(NULL); arrange(selmon); } diff --git a/patch/dwm-pertag-20200914-61bb8b2.diff b/patch/dwm-pertag-20200914-61bb8b2.diff new file mode 100644 index 0000000..c8d7fbc --- /dev/null +++ b/patch/dwm-pertag-20200914-61bb8b2.diff @@ -0,0 +1,177 @@ +diff --git a/dwm.c b/dwm.c +index 664c527..ac8e4ec 100644 +--- a/dwm.c ++++ b/dwm.c +@@ -111,6 +111,7 @@ typedef struct { + void (*arrange)(Monitor *); + } Layout; + ++typedef struct Pertag Pertag; + struct Monitor { + char ltsymbol[16]; + float mfact; +@@ -130,6 +131,7 @@ struct Monitor { + Monitor *next; + Window barwin; + const Layout *lt[2]; ++ Pertag *pertag; + }; + + typedef struct { +@@ -272,6 +274,15 @@ static Window root, wmcheckwin; + /* configuration, allows nested code to access above variables */ + #include "config.h" + ++struct Pertag { ++ unsigned int curtag, prevtag; /* current and previous tag */ ++ int nmasters[LENGTH(tags) + 1]; /* number of windows in master area */ ++ 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 */ ++ int showbars[LENGTH(tags) + 1]; /* display bar for the current tag */ ++}; ++ + /* compile-time check if all tags fit into an unsigned int bit array. */ + struct NumTags { char limitexceeded[LENGTH(tags) > 31 ? -1 : 1]; }; + +@@ -632,6 +643,7 @@ Monitor * + createmon(void) + { + Monitor *m; ++ unsigned int i; + + m = ecalloc(1, sizeof(Monitor)); + m->tagset[0] = m->tagset[1] = 1; +@@ -642,6 +654,20 @@ createmon(void) + m->lt[0] = &layouts[0]; + m->lt[1] = &layouts[1 % LENGTH(layouts)]; + strncpy(m->ltsymbol, layouts[0].symbol, sizeof m->ltsymbol); ++ m->pertag = ecalloc(1, sizeof(Pertag)); ++ m->pertag->curtag = m->pertag->prevtag = 1; ++ ++ for (i = 0; i <= LENGTH(tags); i++) { ++ m->pertag->nmasters[i] = m->nmaster; ++ m->pertag->mfacts[i] = m->mfact; ++ ++ m->pertag->ltidxs[i][0] = m->lt[0]; ++ m->pertag->ltidxs[i][1] = m->lt[1]; ++ m->pertag->sellts[i] = m->sellt; ++ ++ m->pertag->showbars[i] = m->showbar; ++ } ++ + return m; + } + +@@ -967,7 +993,7 @@ grabkeys(void) + void + incnmaster(const Arg *arg) + { +- selmon->nmaster = MAX(selmon->nmaster + arg->i, 0); ++ selmon->nmaster = selmon->pertag->nmasters[selmon->pertag->curtag] = MAX(selmon->nmaster + arg->i, 0); + arrange(selmon); + } + +@@ -1502,9 +1528,9 @@ void + setlayout(const Arg *arg) + { + if (!arg || !arg->v || arg->v != selmon->lt[selmon->sellt]) +- selmon->sellt ^= 1; ++ selmon->sellt = selmon->pertag->sellts[selmon->pertag->curtag] ^= 1; + if (arg && arg->v) +- selmon->lt[selmon->sellt] = (Layout *)arg->v; ++ selmon->lt[selmon->sellt] = selmon->pertag->ltidxs[selmon->pertag->curtag][selmon->sellt] = (Layout *)arg->v; + strncpy(selmon->ltsymbol, selmon->lt[selmon->sellt]->symbol, sizeof selmon->ltsymbol); + if (selmon->sel) + arrange(selmon); +@@ -1523,7 +1549,7 @@ setmfact(const Arg *arg) + f = arg->f < 1.0 ? arg->f + selmon->mfact : arg->f - 1.0; + if (f < 0.05 || f > 0.95) + return; +- selmon->mfact = f; ++ selmon->mfact = selmon->pertag->mfacts[selmon->pertag->curtag] = f; + arrange(selmon); + } + +@@ -1702,7 +1728,7 @@ tile(Monitor *m) + void + togglebar(const Arg *arg) + { +- selmon->showbar = !selmon->showbar; ++ selmon->showbar = selmon->pertag->showbars[selmon->pertag->curtag] = !selmon->showbar; + updatebarpos(selmon); + XMoveResizeWindow(dpy, selmon->barwin, selmon->wx, selmon->by, selmon->ww, bh); + arrange(selmon); +@@ -1741,9 +1767,33 @@ void + toggleview(const Arg *arg) + { + unsigned int newtagset = selmon->tagset[selmon->seltags] ^ (arg->ui & TAGMASK); ++ int i; + + if (newtagset) { + selmon->tagset[selmon->seltags] = newtagset; ++ ++ if (newtagset == ~0) { ++ selmon->pertag->prevtag = selmon->pertag->curtag; ++ selmon->pertag->curtag = 0; ++ } ++ ++ /* test if the user did not select the same tag */ ++ if (!(newtagset & 1 << (selmon->pertag->curtag - 1))) { ++ selmon->pertag->prevtag = selmon->pertag->curtag; ++ for (i = 0; !(newtagset & 1 << i); i++) ; ++ selmon->pertag->curtag = i + 1; ++ } ++ ++ /* apply settings for this view */ ++ selmon->nmaster = selmon->pertag->nmasters[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]; ++ selmon->lt[selmon->sellt^1] = selmon->pertag->ltidxs[selmon->pertag->curtag][selmon->sellt^1]; ++ ++ if (selmon->showbar != selmon->pertag->showbars[selmon->pertag->curtag]) ++ togglebar(NULL); ++ + focus(NULL); + arrange(selmon); + } +@@ -2038,11 +2088,37 @@ updatewmhints(Client *c) + void + view(const Arg *arg) + { ++ int i; ++ unsigned int tmptag; ++ + if ((arg->ui & TAGMASK) == selmon->tagset[selmon->seltags]) + return; + selmon->seltags ^= 1; /* toggle sel tagset */ +- if (arg->ui & TAGMASK) ++ if (arg->ui & TAGMASK) { + selmon->tagset[selmon->seltags] = arg->ui & TAGMASK; ++ selmon->pertag->prevtag = selmon->pertag->curtag; ++ ++ if (arg->ui == ~0) ++ selmon->pertag->curtag = 0; ++ else { ++ for (i = 0; !(arg->ui & 1 << i); i++) ; ++ selmon->pertag->curtag = i + 1; ++ } ++ } else { ++ tmptag = selmon->pertag->prevtag; ++ selmon->pertag->prevtag = selmon->pertag->curtag; ++ selmon->pertag->curtag = tmptag; ++ } ++ ++ selmon->nmaster = selmon->pertag->nmasters[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]; ++ selmon->lt[selmon->sellt^1] = selmon->pertag->ltidxs[selmon->pertag->curtag][selmon->sellt^1]; ++ ++ if (selmon->showbar != selmon->pertag->showbars[selmon->pertag->curtag]) ++ togglebar(NULL); ++ + focus(NULL); + arrange(selmon); + }