From 132ceee07309efc81476a55a1ff80ebb9b594291 Mon Sep 17 00:00:00 2001 From: bakkeby Date: Sun, 6 Oct 2019 23:43:51 +0200 Subject: [PATCH] Added statusallmons patch, fixed minor cross-compatibility issues for killunsel, fullscreen, noborder, tagintostack patches --- README.md | 5 ++ dwm.c | 42 +++++++++++----- patch/fullscreen.c | 4 +- patch/killunsel.c | 7 ++- patch/vanitygaps.c | 4 +- patch/vanitygaps.h | 2 + patches.h | 117 +++++++++++++++++++++++---------------------- 7 files changed, 108 insertions(+), 73 deletions(-) diff --git a/README.md b/README.md index df82b38..8b39fef 100644 --- a/README.md +++ b/README.md @@ -13,6 +13,8 @@ Refer to [https://dwm.suckless.org/](https://dwm.suckless.org/) for details on t ### Changelog: +2019-10-06 - Added statusallmons patch, fixed minor cross-compatibility issues for killunsel, fullscreen, noborder, tagintostack patches + 2019-10-05 - Added killunsel, taggrid, hidevacanttags and cmdcustomize patches 2019-10-04 - Added maximize, movestack, monoclesymbol, noborder, tagall and tagintostack patches @@ -190,6 +192,9 @@ Refer to [https://dwm.suckless.org/](https://dwm.suckless.org/) for details on t - [setborderpx](https://dwm.suckless.org/patches/statuspadding/) - this patch allows border pixels to be changed during runtime + - [statusallmons](https://dwm.suckless.org/patches/statuspadding/) + - this patch draws and updates the statusbar on all monitors + - [statuspadding](https://dwm.suckless.org/patches/statuspadding/) - adds configuration options for horizontal and vertical padding in the status bar diff --git a/dwm.c b/dwm.c index 4834c97..e7e9db0 100644 --- a/dwm.c +++ b/dwm.c @@ -307,9 +307,9 @@ static void motionnotify(XEvent *e); #endif // FOCUSONCLICK_PATCH static void movemouse(const Arg *arg); static Client *nexttiled(Client *c); -#if !ZOOMSWAP_PATCH +#if !ZOOMSWAP_PATCH || TAGINTOSTACK_ALLMASTER_PATCH || TAGINTOSTACK_ONEMASTER_PATCH static void pop(Client *); -#endif // !ZOOMSWAP_PATCH +#endif // !ZOOMSWAP_PATCH / TAGINTOSTACK_ALLMASTER_PATCH / TAGINTOSTACK_ONEMASTER_PATCH static void propertynotify(XEvent *e); static void quit(const Arg *arg); static Monitor *recttomon(int x, int y, int w, int h); @@ -1201,10 +1201,12 @@ drawbar(Monitor *m) #if SYSTRAY_PATCH int stw = 0; #endif // SYSTRAY_PATCH + #if !HIDEVACANTTAGS_PATCH #if !ACTIVETAGINDICATORBAR_PATCH int boxs = drw->fonts->h / 9; #endif // ACTIVETAGINDICATORBAR_PATCH int boxw = drw->fonts->h / 6 + 2; + #endif // HIDEVACANTTAGS_PATCH unsigned int i, occ = 0, urg = 0; Client *c; @@ -1214,7 +1216,9 @@ drawbar(Monitor *m) #endif // SYSTRAY_PATCH /* draw status first so it can be overdrawn by tags later */ + #if !STATUSALLMONS_PATCH if (m == selmon) { /* status is only drawn on selected monitor */ + #endif // STATUSALLMONS_PATCH drw_setscheme(drw, scheme[SchemeNorm]); #if STATUSPADDING_PATCH sw = TEXTW(stext); @@ -1231,7 +1235,9 @@ drawbar(Monitor *m) drw_text(drw, m->ww - sw, 0, sw, bh, 0, stext, 0); #endif // SYSTRAY_PATCH #endif // STATUSPADDING_PATCH + #if !STATUSALLMONS_PATCH } + #endif // STATUSALLMONS_PATCH for (c = m->clients; c; c = c->next) { #if AWESOMEBAR_PATCH || FANCYBAR_PATCH @@ -1980,7 +1986,7 @@ nexttiled(Client *c) return c; } -#if !ZOOMSWAP_PATCH +#if !ZOOMSWAP_PATCH || TAGINTOSTACK_ALLMASTER_PATCH || TAGINTOSTACK_ONEMASTER_PATCH void pop(Client *c) { @@ -1989,7 +1995,7 @@ pop(Client *c) focus(c); arrange(c->mon); } -#endif // !ZOOMSWAP_PATCH +#endif // !ZOOMSWAP_PATCH / TAGINTOSTACK_ALLMASTER_PATCH / TAGINTOSTACK_ONEMASTER_PATCH void propertynotify(XEvent *e) @@ -2049,7 +2055,7 @@ quit(const Arg *arg) XQueryTree(dpy, root, junk, junk, &junk, &n); - if (n == quit_empty_window_count) { + if (n <= quit_empty_window_count) { #if RESTARTSIG_PATCH if (arg->i) restart = 1; @@ -2102,8 +2108,10 @@ resizeclient(Client *c, int x, int y, int w, int h) wc.border_width = c->bw; #if NOBORDER_PATCH if (((nexttiled(c->mon->clients) == c && !nexttiled(c->next)) - || &monocle == c->mon->lt[c->mon->sellt]->arrange) - && !c->isfullscreen && !c->isfloating) { + #if MONOCLE_LAYOUT + || &monocle == c->mon->lt[c->mon->sellt]->arrange + #endif // MONOCLE_LAYOUT + ) && !c->isfullscreen && !c->isfloating) { c->w = wc.width += c->bw * 2; c->h = wc.height += c->bw * 2; wc.border_width = 0; @@ -2819,14 +2827,14 @@ toggleview(const Arg *arg) } // collect (from last to first) references to all clients in the master area Client *c; - size_t i; - for (c = nexttiled(selmon->clients), i = 0; c && i < selmon->nmaster; c = nexttiled(c->next), ++i) - masters[selmon->nmaster - (i + 1)] = c; + size_t j; + for (c = nexttiled(selmon->clients), j = 0; c && j < selmon->nmaster; c = nexttiled(c->next), ++j) + masters[selmon->nmaster - (j + 1)] = c; // put the master clients at the front of the list // > go from the 'last' master to the 'first' - for (size_t i = 0; i < selmon->nmaster; ++i) - if (masters[i]) - pop(masters[i]); + for (j = 0; j < selmon->nmaster; ++j) + if (masters[j]) + pop(masters[j]); free(masters); // we also want to be sure not to mutate the focus @@ -3158,9 +3166,17 @@ updatesizehints(Client *c) void updatestatus(void) { + #if STATUSALLMONS_PATCH + Monitor* m; + #endif // STATUSALLMONS_PATCH if (!gettextprop(root, XA_WM_NAME, stext, sizeof(stext))) strcpy(stext, "dwm-"VERSION); + #if STATUSALLMONS_PATCH + for (m = mons; m; m = m->next) + drawbar(m); + #else drawbar(selmon); + #endif // STATUSALLMONS_PATCH #if SYSTRAY_PATCH if (showsystray) updatesystray(); diff --git a/patch/fullscreen.c b/patch/fullscreen.c index aace550..ac50f37 100644 --- a/patch/fullscreen.c +++ b/patch/fullscreen.c @@ -1,9 +1,9 @@ -Layout *last_layout = &layouts[0]; +Layout *last_layout; void fullscreen(const Arg *arg) { - if (selmon->showbar) { + if (selmon->showbar || last_layout == NULL) { for (last_layout = (Layout *)layouts; last_layout != selmon->lt[selmon->sellt]; last_layout++); setlayout(&((Arg) { .v = &layouts[MONOCLE_LAYOUT_POS] })); } else { diff --git a/patch/killunsel.c b/patch/killunsel.c index 9e06d53..1e15d2b 100644 --- a/patch/killunsel.c +++ b/patch/killunsel.c @@ -8,7 +8,12 @@ killunsel(const Arg *arg) for (i = selmon->clients; i; i = i->next) { if (ISVISIBLE(i) && i != selmon->sel) { - if (!sendevent(i, wmatom[WMDelete])) { + #if SYSTRAY_PATCH + if (!sendevent(i->win, wmatom[WMDelete], NoEventMask, wmatom[WMDelete], CurrentTime, 0, 0, 0)) + #else + if (!sendevent(i, wmatom[WMDelete])) + #endif // SYSTRAY_PATCH + { XGrabServer(dpy); XSetErrorHandler(xerrordummy); XSetCloseDownMode(dpy, DestroyAll); diff --git a/patch/vanitygaps.c b/patch/vanitygaps.c index b46944d..9b50c15 100644 --- a/patch/vanitygaps.c +++ b/patch/vanitygaps.c @@ -106,6 +106,7 @@ incrivgaps(const Arg *arg) ); } +#if CENTEREDFLOATINGMASTER_LAYOUT || DECK_LAYOUT || FIBONACCI_DWINDLE_LAYOUT || FIBONACCI_SPIRAL_LAYOUT || GAPPLESSGRID_LAYOUT || HORIZGRID_LAYOUT || BSTACK_LAYOUT || BSTACKHORIZ_LAYOUT || GRIDMODE_LAYOUT || FLEXTILE_DELUXE_LAYOUT static void getgaps(Monitor *m, int *oh, int *ov, int *ih, int *iv, unsigned int *nc) { @@ -122,4 +123,5 @@ getgaps(Monitor *m, int *oh, int *ov, int *ih, int *iv, unsigned int *nc) *ih = m->gappih*ie; // inner horizontal gap *iv = m->gappiv*ie; // inner vertical gap *nc = n; // number of clients -} \ No newline at end of file +} +#endif // CENTEREDFLOATINGMASTER_LAYOUT || DECK_LAYOUT || FIBONACCI_DWINDLE_LAYOUT || FIBONACCI_SPIRAL_LAYOUT || GAPPLESSGRID_LAYOUT || HORIZGRID_LAYOUT || BSTACK_LAYOUT || BSTACKHORIZ_LAYOUT || GRIDMODE_LAYOUT || FLEXTILE_DELUXE_LAYOUT \ No newline at end of file diff --git a/patch/vanitygaps.h b/patch/vanitygaps.h index 74486d1..861cba6 100644 --- a/patch/vanitygaps.h +++ b/patch/vanitygaps.h @@ -10,5 +10,7 @@ static void incrivgaps(const Arg *arg); static void togglegaps(const Arg *arg); /* Internals */ +#if CENTEREDFLOATINGMASTER_LAYOUT || DECK_LAYOUT || FIBONACCI_DWINDLE_LAYOUT || FIBONACCI_SPIRAL_LAYOUT || GAPPLESSGRID_LAYOUT || HORIZGRID_LAYOUT || BSTACK_LAYOUT || BSTACKHORIZ_LAYOUT || GRIDMODE_LAYOUT || FLEXTILE_DELUXE_LAYOUT static void getgaps(Monitor *m, int *oh, int *ov, int *ih, int *iv, unsigned int *nc); +#endif // CENTEREDFLOATINGMASTER_LAYOUT || DECK_LAYOUT || FIBONACCI_DWINDLE_LAYOUT || FIBONACCI_SPIRAL_LAYOUT || GAPPLESSGRID_LAYOUT || HORIZGRID_LAYOUT || BSTACK_LAYOUT || BSTACKHORIZ_LAYOUT || GRIDMODE_LAYOUT || FLEXTILE_DELUXE_LAYOUT static void setgaps(int oh, int ov, int ih, int iv); \ No newline at end of file diff --git a/patches.h b/patches.h index 7ddce63..426d816 100644 --- a/patches.h +++ b/patches.h @@ -21,13 +21,13 @@ /* The alpha patch adds transparency for the status bar. * https://dwm.suckless.org/patches/alpha/ */ -#define ALPHA_PATCH 0 +#define ALPHA_PATCH 1 /* This patch introduces alternative tags which can be switched on the fly for the * sole purpose of providing visual aid. * https://dwm.suckless.org/patches/alternativetags/ */ -#define ALTERNATIVE_TAGS_PATCH 0 +#define ALTERNATIVE_TAGS_PATCH 1 /* This patch prevents the focus to drift from the active fullscreen client when * using focusstack(). @@ -46,7 +46,7 @@ * This patch takes precedence over ATTACHBELOW_PATCH. * https://dwm.suckless.org/patches/attachaside/ */ -#define ATTACHASIDE_PATCH 0 +#define ATTACHASIDE_PATCH 1 /* This patch adds new clients below the selected client. * This patch takes precedence over ATTACHBOTTOM_PATCH. @@ -65,55 +65,55 @@ * than the original ~/.dwm folder. * https://dwm.suckless.org/patches/autostart/ */ -#define AUTOSTART_PATCH 0 +#define AUTOSTART_PATCH 1 /* By default, windows that are not visible when requesting a resize/move will not * get resized/moved. With this patch, they will. * https://dwm.suckless.org/patches/autoresize/ */ -#define AUTORESIZE_PATCH 0 +#define AUTORESIZE_PATCH 1 /* Enhanced taskbar that shows the titles of all visible windows in the status bar * and allows focus / hiding / unhiding of windows by clicking on the status bar. * Awesomebar takes precedence over fancybar. * https://dwm.suckless.org/patches/awesomebar/ */ -#define AWESOMEBAR_PATCH 0 +#define AWESOMEBAR_PATCH 1 /* This patch adds an iscentered rule to automatically center clients on the current monitor. * This patch takes precedence over centeredwindowname and fancybar patches. * https://dwm.suckless.org/patches/center/ */ -#define CENTER_PATCH 0 +#define CENTER_PATCH 1 /* This patch centers the WM_NAME of the currently selected window on the status bar. * Both fancybar and awesomebar patches take precedence over this patch. * https://dwm.suckless.org/patches/centeredwindowname/ */ -#define CENTEREDWINDOWNAME_PATCH 0 +#define CENTEREDWINDOWNAME_PATCH 1 /* This patch provides the ability to assign different weights to clients in their * respective stack in tiled layout. * https://dwm.suckless.org/patches/cfacts/ */ -#define CFACTS_PATCH 0 +#define CFACTS_PATCH 1 /* This patch allows color attributes to be set through the command line. * https://dwm.suckless.org/patches/cmdcustomize/ */ -#define CMDCUSTOMIZE 0 +#define CMDCUSTOMIZE 1 /* This patch tweaks the tagging interface so that you can select multiple tags for tag * or view by pressing all the right keys as a combo. For example to view tags 1 and 3, * hold MOD and then press and hold 1 and 3 together. * https://dwm.suckless.org/patches/combo/ */ -#define COMBO_PATCH 0 +#define COMBO_PATCH 1 /* The cyclelayouts patch lets you cycle through all your layouts. * https://dwm.suckless.org/patches/cyclelayouts/ */ -#define CYCLELAYOUTS_PATCH 0 +#define CYCLELAYOUTS_PATCH 1 /* This patch allows no tag at all to be selected. The result is that dwm will start with * no tag selected and when you start a client with no tag rule and no tag selected then @@ -127,7 +127,7 @@ * that request workspace information. For example polybar's xworkspaces module. * https://dwm.suckless.org/patches/ewmhtags/ */ -#define EWMHTAGS_PATCH 0 +#define EWMHTAGS_PATCH 1 /* This patch shows the titles of all visible windows in the status bar * (as opposed to showing only the selected one). @@ -142,7 +142,7 @@ * the right tag. * http://dwm.suckless.org/patches/focusadjacenttag/ */ -#define FOCUSADJACENTTAG_PATCH 0 +#define FOCUSADJACENTTAG_PATCH 1 /* Switch focus only by mouse click and not sloppy (focus follows mouse pointer). * https://dwm.suckless.org/patches/focusonclick/ @@ -154,25 +154,25 @@ * xdotool selectwindow -- set_window --urgency 1 * https://dwm.suckless.org/patches/focusurgent/ */ -#define FOCUSURGENT_PATCH 0 +#define FOCUSURGENT_PATCH 1 /* This patch allows a different border color to be chosen for floating windows. * https://dwm.suckless.org/patches/float_border_color/ */ -#define FLOAT_BORDER_COLOR_PATCH 0 +#define FLOAT_BORDER_COLOR_PATCH 1 /* By default, dwm responds to _NET_ACTIVE_WINDOW client messages by setting * the urgency bit on the named window. This patch activates the window instead. * https://dwm.suckless.org/patches/focusonnetactive/ */ -#define FOCUSONNETACTIVE_PATCH 0 +#define FOCUSONNETACTIVE_PATCH 1 /* Applies the monocle layout with the focused client on top and hides the bar. When pressed * again it shows the bar and restores the layout that was active before going fullscreen. * NB: This patch assumes that the third layout is monocle and that the bar is shown. * https://dwm.suckless.org/patches/fullscreen/ */ -#define FULLSCREEN_PATCH 0 +#define FULLSCREEN_PATCH 1 /* This patch prevents dwm from drawing tags with no clients (i.e. vacant) on the bar. * https://dwm.suckless.org/patches/hide_vacant_tags/ @@ -188,7 +188,7 @@ /* This patch adds a keybinding to kills all visible clients that are not selected. * https://dwm.suckless.org/patches/killunsel/ */ -#define KILLUNSEL_PATCH 0 +#define KILLUNSEL_PATCH 1 /* Moves the layout symbol in the status bar to the left hand side. * http://dwm.suckless.org/patches/leftlayout/ @@ -202,13 +202,13 @@ * in such scenarios the previous window loses fullscreen. * https://github.com/bakkeby/dwm-vanitygaps/blob/master/patches/dwm-losefullscreen-6.2.diff */ -#define LOSEFULLSCREEN_PATCH 0 +#define LOSEFULLSCREEN_PATCH 1 /* This patch adds helper functions for maximizing, horizontally and vertically, floating * windows using keybindings. * https://dwm.suckless.org/patches/maximize/ */ -#define MAXIMIZE_PATCH 0 +#define MAXIMIZE_PATCH 1 /* Adds rules per monitor, e.g. have default layouts per monitor. * The use case for this is if the second monitor is vertical (i.e. rotated) then @@ -216,23 +216,23 @@ * used for the main monitor. E.g. normal vertical split for main monitor and * horizontal split for the second. */ -#define MONITOR_RULES_PATCH 0 +#define MONITOR_RULES_PATCH 1 /* Always display the the monocle-symbol as defined in config.h if the monocle-layout * is activated. Do not display the number of open clients in the current tag. * https://dwm.suckless.org/patches/monoclesymbol/ */ -#define MONOCLESYMBOL_PATCH 0 +#define MONOCLESYMBOL_PATCH 1 /* This patch allows you to move clients around in the stack and swap them with the master. * https://dwm.suckless.org/patches/movestack/ */ -#define MOVESTACK_PATCH 0 +#define MOVESTACK_PATCH 1 /* Removes the border when there is only one window visible. * https://dwm.suckless.org/patches/noborder/ */ -#define NOBORDER_PATCH 0 +#define NOBORDER_PATCH 1 /* This patch makes it so dwm will only exit via quit() if no windows are open. * This is to prevent you accidentally losing all your work. @@ -244,17 +244,17 @@ * monitor (default). * https://dwm.suckless.org/patches/pertag/ */ -#define PERTAG_PATCH 0 +#define PERTAG_PATCH 1 /* This controls whether or not to also store bar position on a per * tag basis, or leave it as one bar per monitor. */ -#define PERTAGBAR_PATCH 0 +#define PERTAGBAR_PATCH 1 /* This patch provides a way to move clients up and down inside the client list. * https://dwm.suckless.org/patches/push/ */ -#define PUSH_PATCH 0 +#define PUSH_PATCH 1 /* This patch provides a way to move clients up and down inside the client list, * but does not push up or down into the master area (except that it does not take @@ -268,55 +268,60 @@ * patch the mouse is warped to the nearest corner and you resize from there. * https://dwm.suckless.org/patches/resizecorners/ */ -#define RESIZECORNERS_PATCH 0 +#define RESIZECORNERS_PATCH 1 /* Adds a keyboard shortcut to restart dwm or alternatively by using kill -HUP dwmpid. * Additionally dwm can quit cleanly by using kill -TERM dwmpid. * https://dwm.suckless.org/patches/restartsig/ */ -#define RESTARTSIG_PATCH 0 +#define RESTARTSIG_PATCH 1 /* This patch let's you rotate through the stack using keyboard shortcuts. * https://dwm.suckless.org/patches/rotatestack/ */ -#define ROTATESTACK_PATCH 0 +#define ROTATESTACK_PATCH 1 /* This patch aves size and position of every floating window before it is forced * into tiled mode. If the window is made floating again then the old dimensions * will be restored. * https://dwm.suckless.org/patches/save_floats/ */ -#define SAVEFLOATS_PATCH 0 +#define SAVEFLOATS_PATCH 1 /* Allows restarting dwm without the dependency of an external script. * https://dwm.suckless.org/patches/selfrestart/ */ -#define SELFRESTART_PATCH 0 +#define SELFRESTART_PATCH 1 /* This patch allows border pixels to be changed during runtime. * https://dwm.suckless.org/patches/setborderpx/ */ -#define SETBORDERPX_PATCH 0 +#define SETBORDERPX_PATCH 1 + +/* This patch draws and updates the statusbar on all monitors. + * https://dwm.suckless.org/patches/statusallmons/ + */ +#define STATUSALLMONS_PATCH 1 /* This patch adds configuration options for horizontal and vertical padding in the status bar. * https://dwm.suckless.org/patches/statuspadding/ */ -#define STATUSPADDING_PATCH 0 +#define STATUSPADDING_PATCH 1 /* Adds toggleable keyboard shortcut to make a client 'sticky', i.e. visible on all tags. * https://dwm.suckless.org/patches/sticky/ */ -#define STICKY_PATCH 0 +#define STICKY_PATCH 1 /* The systray patch adds systray for the status bar. * https://dwm.suckless.org/patches/systray/ */ -#define SYSTRAY_PATCH 0 +#define SYSTRAY_PATCH 1 /* Switch focus between the master and stack columns using a single keybinding. * https://dwm.suckless.org/patches/switchcol/ */ -#define SWITCHCOL_PATCH 0 +#define SWITCHCOL_PATCH 1 /* By default dwm allow you to set application specific rules so that you can have your browser, * for example, start up on tag 9 optionally on a given monitor when you open your browser it is @@ -329,17 +334,17 @@ * * https://github.com/bakkeby/dwm-vanitygaps/blob/master/patches/dwm-switchtag-6.2.diff */ -#define SWITCHTAG_PATCH 0 +#define SWITCHTAG_PATCH 1 /* Adds keyboard shortcuts to move all (or only floating) windows from one tag to another. * https://dwm.suckless.org/patches/tagall/ */ -#define TAGALL_PATCH 0 +#define TAGALL_PATCH 1 /* This patch allows you to move all visible windows on a monitor to an adjacent monitor. * https://github.com/bakkeby/dwm-vanitygaps/blob/master/patches/dwm-tagallmon-6.2.diff */ -#define TAGALLMON_PATCH 0 +#define TAGALLMON_PATCH 1 /* This patch adds an option to place tags in rows like in many other window managers. * https://dwm.suckless.org/patches/taggrid/ @@ -352,7 +357,7 @@ * takes precedence over the onemaster tagintostack patch. * https://dwm.suckless.org/patches/tagintostack/ */ -#define TAGINTOSTACK_ALLMASTER_PATCH 0 +#define TAGINTOSTACK_ALLMASTER_PATCH 1 /* This patch makes new clients attach into the stack area when you toggle a new tag into * view. This means your master area will remain unchanged when toggling views. @@ -368,41 +373,41 @@ * while remaining in fullscreen. * https://github.com/bakkeby/dwm-vanitygaps/blob/master/patches/dwm-tagmonfixfs-6.2.diff */ -#define TAGMONFIXFS_PATCH 0 +#define TAGMONFIXFS_PATCH 1 /* This patch allows you to swap all visible windows on one monitor with those of an * adjacent monitor. * https://github.com/bakkeby/dwm-vanitygaps/blob/master/patches/dwm-tagswapmon-6.2.diff */ -#define TAGSWAPMON_PATCH 0 +#define TAGSWAPMON_PATCH 1 /* Adds a new color scheme used by the (selected) window title in the bar. * https://dwm.suckless.org/patches/titlecolor/ */ -#define TITLECOLOR_PATCH 0 +#define TITLECOLOR_PATCH 1 /* This patch allows you to toggle fullscreen on and off using a single shortcut key. * https://github.com/bakkeby/dwm-vanitygaps/blob/master/patches/dwm-togglefullscreen-6.2.diff */ -#define TOGGLEFULLSCREEN_PATCH 0 +#define TOGGLEFULLSCREEN_PATCH 1 /* This patch resets isfloating on any visible windows that have it set. * Optionally also applies a layout. * https://dwm.suckless.org/patches/unfloatvisible/ */ -#define UNFLOATVISIBLE_PATCH 0 +#define UNFLOATVISIBLE_PATCH 1 /* This patch makes "urgent" windows have different colors. * https://dwm.suckless.org/patches/urgentborder/ */ -#define URGENTBORDER_PATCH 0 +#define URGENTBORDER_PATCH 1 /* This patch adds configurable gaps between windows differentiating between outer, inner, * horizontal and vertical gaps. * https://github.com/bakkeby/dwm-vanitygaps/blob/master/patches/dwm-vanitygaps-6.2.diff * https://github.com/bakkeby/dwm-vanitygaps/blob/master/patches/dwm-vanitygaps-cfacts-6.2.diff */ -#define VANITYGAPS_PATCH 0 +#define VANITYGAPS_PATCH 1 /* Follow a window to the tag it is being moved to. * https://dwm.suckless.org/patches/viewontag/ @@ -422,25 +427,25 @@ * or Google-chrome "browser" vs "pop-up". * https://github.com/bakkeby/dwm-vanitygaps/blob/master/patches/dwm-windowrolerule-6.2.diff */ -#define WINDOWROLERULE_PATCH 0 +#define WINDOWROLERULE_PATCH 1 /* The winview patch allows switching the view to that of a given client from the all-window * view (Mod-0) using a keyboard shortcut. * http://dwm.suckless.org/patches/winview/ */ -#define WINVIEW_PATCH 0 +#define WINVIEW_PATCH 1 /* Allows dwm to read colors from xrdb (.Xresources) during runtime. Compatible with * the float border color, awesomebar, urgentborder and titlecolor patches. * https://dwm.suckless.org/patches/xrdb/ */ -#define XRDB_PATCH 0 +#define XRDB_PATCH 1 /* The zoomswap patch allows a master and a stack window to swap places * rather than every window on the screen changing position. * https://dwm.suckless.org/patches/zoomswap/ */ -#define ZOOMSWAP_PATCH 0 +#define ZOOMSWAP_PATCH 1 /* Layouts */ @@ -483,7 +488,7 @@ * A revamped, more flexible, and over-the-top version of the original flextile layout. * https://dwm.suckless.org/patches/flextile/ (original) */ -#define FLEXTILE_DELUXE_LAYOUT 0 +#define FLEXTILE_DELUXE_LAYOUT 1 /* Gappless grid layout. * https://dwm.suckless.org/patches/gaplessgrid/ @@ -508,9 +513,9 @@ /* The default tile layout. * This can be optionally disabled in favour of other layouts. */ -#define TILE_LAYOUT 1 +#define TILE_LAYOUT 0 /* Monocle layout (default). * This can be optionally disabled in favour of other layouts. */ -#define MONOCLE_LAYOUT 1 +#define MONOCLE_LAYOUT 0