From: Daniel Liu Date: Fri, 7 May 2021 01:44:05 +0000 (-0400) Subject: Revert "fakefullscreen" X-Git-Url: https://git.danieliu.xyz/?a=commitdiff_plain;h=470df27dcffddb63eb598bcb47b3f282e7012ada;p=dwm.git Revert "fakefullscreen" This reverts commit 3b2a636ee4293351041fd5772ac85b1337e2bc0d, reversing changes made to c3a9912a953c69d16bcbbf5624e7ef6e3d4aa504. --- diff --git a/dwm.c b/dwm.c index 8b8c4c4..a7a27b8 100644 --- a/dwm.c +++ b/dwm.c @@ -121,7 +121,6 @@ typedef struct { void (*arrange)(Monitor *); } Layout; -typedef struct Pertag Pertag; struct Monitor { char ltsymbol[16]; float mfact; @@ -142,7 +141,6 @@ struct Monitor { Monitor *next; Window barwin; const Layout *lt[2]; - Pertag *pertag; }; typedef struct { @@ -317,15 +315,6 @@ static xcb_connection_t *xcon; /* 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]; }; @@ -731,7 +720,6 @@ Monitor * createmon(void) { Monitor *m; - unsigned int i; m = ecalloc(1, sizeof(Monitor)); m->tagset[0] = m->tagset[1] = 1; @@ -743,20 +731,6 @@ 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; } @@ -1085,16 +1059,7 @@ grabkeys(void) void incnmaster(const Arg *arg) { - unsigned int i; selmon->nmaster = MAX(selmon->nmaster + arg->i, 0); - for(i=0; itagset[selmon->seltags] & 1<pertag->nmasters[i+1] = selmon->nmaster; - - if(selmon->pertag->curtag == 0) - { - selmon->pertag->nmasters[0] = selmon->nmaster; - } arrange(selmon); } @@ -1701,26 +1666,11 @@ setgaps(const Arg *arg) void setlayout(const Arg *arg) { - unsigned int i; if (!arg || !arg->v || arg->v != selmon->lt[selmon->sellt]) selmon->sellt ^= 1; if (arg && arg->v) selmon->lt[selmon->sellt] = (Layout *)arg->v; strncpy(selmon->ltsymbol, selmon->lt[selmon->sellt]->symbol, sizeof selmon->ltsymbol); - - for(i=0; itagset[selmon->seltags] & 1<pertag->ltidxs[i+1][selmon->sellt] = selmon->lt[selmon->sellt]; - selmon->pertag->sellts[i+1] = selmon->sellt; - } - - if(selmon->pertag->curtag == 0) - { - selmon->pertag->ltidxs[0][selmon->sellt] = selmon->lt[selmon->sellt]; - selmon->pertag->sellts[0] = selmon->sellt; - } - if (selmon->sel) arrange(selmon); else @@ -1732,24 +1682,13 @@ void setmfact(const Arg *arg) { float f; - unsigned int i; if (!arg || !selmon->lt[selmon->sellt]->arrange) return; f = arg->f < 1.0 ? arg->f + selmon->mfact : arg->f - 1.0; - if (arg->f == 0.0) - f = mfact; if (f < 0.05 || f > 0.95) return; selmon->mfact = f; - for(i=0; itagset[selmon->seltags] & 1<pertag->mfacts[i+1] = f; - - if(selmon->pertag->curtag == 0) - { - selmon->pertag->mfacts[0] = f; - } arrange(selmon); } @@ -1932,16 +1871,7 @@ tile(Monitor *m) void togglebar(const Arg *arg) { - unsigned int i; selmon->showbar = !selmon->showbar; - for(i=0; itagset[selmon->seltags] & 1<pertag->showbars[i+1] = selmon->showbar; - - if(selmon->pertag->curtag == 0) - { - selmon->pertag->showbars[0] = selmon->showbar; - } updatebarpos(selmon); XMoveResizeWindow(dpy, selmon->barwin, selmon->wx + sp, selmon->by + vp, selmon->ww - 2 * sp, bh); arrange(selmon); @@ -1978,33 +1908,9 @@ 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); } @@ -2316,37 +2222,11 @@ 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); }