Commit Graph

195 Commits

Author SHA1 Message Date
bakkeby
91291ceb9f Removing redundant statuscmds logic when both statuscmd and dwmblocks patches are applied 2020-05-05 19:50:28 +02:00
bakkeby
f028377c98 Adding dwmblocks patch 2020-05-02 14:58:23 +02:00
bakkeby
5911a9b7d7 Upgrade of the tagmonfixfs patch, allows e.g. fullscreen YouTube videos to be moved to an adjacent screen 2020-04-27 20:45:24 +02:00
bakkeby
14b7edd911 Expanded monitor rules patch to include nmaster, showbar and topbar options. 2020-04-26 16:29:44 +02:00
bakkeby
5848460fff Improved swallow and switchtag compatibility 2020-04-23 17:19:17 +02:00
bakkeby
7c4a0c347f Adding if conditions before freeing res_class and res_name in applyrules 2020-04-23 13:16:13 +02:00
bakkeby
1bed3b0093 drawbar: Don't shadow sw global
This jarred me a bit while reading the code, since "sw" usually refers
to the global screen geometry, but in drawbar() only it refers to
text-related geometry. Renaming it makes it more obvious that these are
not related.
2020-04-23 08:07:29 +02:00
bakkeby
2d8d5a0931 getatomprop: Add forward declaration
No functional changes, but for every other function we have a forward
declaration here. getatomprop should be no exception.
2020-04-23 08:00:22 +02:00
bakkeby
11b47dda99 setmfact: Unify bounds for compile-time and runtime mfact
There are two places that mfact can be set:

- In the mfact global, which is defined at compile time and passed
  into m->mfact during monitor setup. No bounds checks are performed,
  but the comment alongside it says that valid values are [0.05..0.95]:

      static const float mfact = 0.55; /* factor of master area size [0.05..0.95] */

- By setmfact, which adjusts m->mfact at runtime. It also does some
  minimum and maximum bounds checks, allowing [0.1..0.9]. Values outside
  of that range are ignored, and mfact is not adjusted.

These different thresholds mean that one cannot setmfact 0.95 or 0.05,
despite the comment above that lists the legal range for mfact.

Clarify this by enforcing the same bounds in setmfact at runtime as
those listed for mfact at compile time.
2020-04-20 18:40:25 +02:00
bakkeby
ec32a28380 [dwm][PATCH] statuscolors, fix status text width computation
This is an updated version of the statuscolors patch that fixes the
computation of the text width. The previous version of the patch
inculded all the byte codes that are used to select the color schemes
when computing the width, obaining a width that is larger than the real
width. This patch fixes that by adding up the widths of the individual
chunks, separated by the codes that select the color schemes.
2020-04-16 20:22:23 +02:00
bakkeby
f9a001dee7 [dwm][PATCH] Multiple scratchpads
This patch enables multiple scratchpads, each with one assigned window.
This enables the same scratchpad workflow that you have in i3.

Scratchpads are implemented as special tags, whose mask does not
apply to new spawned windows. To assign a window to a scratchpad you
have to set up a rule, as you do with regular tags.

Windows tagged with scratchpad tags can be set floating or not in the
rules array. Most users would probably want them floating (i3 style),
but having them tiled does also perfectly work and might fit better the
DWM approach. In case they are set floating, the patch moves them to the
center of the screen whenever the are shown. The patch can easily be
modified to make this last feature configurable in the rules array (see
the center patch).

The togglescratch function, borrowed from the previous scratchpad patch
and slightly modified, can be used to spawn a registered scratchpad
process or toggle its view. This function looks for a window tagged on
the selected scratchpad. If it is found its view is toggled. If it is
not found the corresponding registered command is spawned. The
config.def.h shows three examples of its use to spawn a terminal in the
first scratchpad tag, a second terminal running ranger on the second
scratchpad tag and the keepassxc application to manage passwords on a
third scratchpad tag.

If you prefer to spawn your scratchpad applications from the startup
script, you might opt for binding keys to toggleview instead, as
scratchpads are just special tags (you may even extend the TAGKEYS macro
to generalize the key bindings).
2020-04-16 16:39:22 +02:00
bakkeby
525dc0d107 Adding statuscmd patch ref. #23 2020-04-13 15:01:08 +02:00
bakkeby
c5e257d442 Simplifying the lose fullscreen patch 2020-04-05 11:10:38 +02:00
bakkeby
674c00594b Proposed fix for fake fullscreen clients ref. #15 2020-04-03 16:57:19 +02:00
bakkeby
a560b9cb53 Adding rounded corners patch 2020-03-31 10:21:45 +02:00
bakkeby
e9e32d28c7 Adding revamped dragmfact patch ref. #19 2020-03-27 20:46:54 +01:00
bakkeby
7bc3cf765e Adding stacker patch as requested ref. #17 2020-03-23 12:15:50 +01:00
bakkeby
39df3ca2ec Replacing SchemeSel background for systray with that of SchemeNorm 2020-03-22 19:39:08 +01:00
bakkeby
873b856428 FAKEFULLSCREEN_PATCH takes precedence over the FAKEFULLSCREEN_CLIENT_PATCH, ref. #13 2020-03-20 16:45:20 +01:00
bakkeby
e75decf7de Pertag togglegaps change ref. issue #11 2020-03-07 12:44:42 +01:00
bakkeby
4b45c6071f Adding vtcolors patch 2020-02-11 18:31:11 +01:00
bakkeby
69a7b2ad6b Fixing overlapping window name area when using barpadding patch ref. #9 2020-02-09 13:26:14 +01:00
bakkeby
4ddfdab30e Adding fsignal patch and moved dwmc signal settings to config.def.h 2020-02-02 11:41:34 +01:00
bakkeby
8f53248a0f [dwm][patch] swapfocus just focus next client after tag or toggletag 2020-01-30 09:43:10 +01:00
bakkeby
0da53e1e9b Correcting minor compilation errors in relation to hidevacanttags, barpadding and centeredwindowname patches 2020-01-29 13:17:15 +01:00
bakkeby
5e75da8dd1 Adding swapfocus patch 2020-01-29 11:31:52 +01:00
bakkeby
21ba1d7bb3 [dwm][PATCH] remember to free everything we create 2020-01-27 09:15:20 +01:00
bakkeby
3567e59e20 [dwm][PATCH] remove NULL guards for XFree 2020-01-27 09:13:13 +01:00
bakkeby
60209c98d7 Fixing minor annoyance with the switchtag patch. When closing a window the tag switches back to the previous tag. This fix prevents that from happening when the client has since moved to another monitor. 2020-01-25 18:37:35 +01:00
bakkeby
fa6e3d9500 Holdbar compatibility with barpadding, extrabar and statuspadding. 2020-01-24 20:41:08 +01:00
bakkeby
d04b3899fd Fix for using pertagbar patch, but no zoomswap patch 2020-01-24 11:25:32 +01:00
bakkeby
b866bf5319 Adding barpadding patch and moving patches.h to paches.def.h 2020-01-24 10:52:40 +01:00
bakkeby
bf4fdc6484 Fixes for missleading variable? #2 2020-01-15 13:23:51 +01:00
bakkeby
462445a378 Added [dwm][patch][dragmfact] Fix patch to work with multiple monitors 2019-12-15 09:31:52 +01:00
bakkeby
ab2c5fe5da Adding switchtag improvements 2019-11-26 20:23:58 +01:00
bakkeby
9b85650c1d Adding fakefullscreeenclient patch 2019-11-21 12:23:38 +01:00
bakkeby
42b66d4b29 Addressed some conflicts between CMDCUSTOMIZE and NODMENU patches as well as between EXRESIZE and MAXIMIZE patches 2019-11-04 15:17:19 +01:00
bakkeby
2112ea927f Adding exresize patch 2019-10-24 13:00:05 +02:00
bakkeby
d82be5a65d Adding nodmenu patch 2019-10-24 11:03:39 +02:00
bakkeby
4052783a63 Adding extrabar patch 2019-10-24 10:35:24 +02:00
bakkeby
9e53b46e35 Adding dragmfact patch 2019-10-24 09:52:11 +02:00
bakkeby
3726d8d1ea Adding swallow patch 2019-10-24 09:33:20 +02:00
bakkeby
71e61d180e Adding ispermanent patch 2019-10-22 14:33:22 +02:00
bakkeby
251b933b19 Adding interim patch to ignore xft errors when drawing text on the status bar 2019-10-11 19:43:02 +02:00
bakkeby
063fe26089 Adding spawn_cwd patch 2019-10-10 23:50:30 +02:00
bakkeby
2eb8bcdf15 Adding scratchpad patch 2019-10-10 23:33:04 +02:00
bakkeby
3c9eba037e Adding fakefullscreen patch 2019-10-08 23:15:11 +02:00
bakkeby
83242012da Fixed minor cross-compatibility issues for combo, holdbar, leftlayout, hidevacanttags, taggrid and activetagindicatorbar 2019-10-08 00:54:06 +02:00
bakkeby
ca8638128f Adding dwmc patch 2019-10-07 23:34:23 +02:00
bakkeby
2612060419 Adding sortscreens patch 2019-10-07 22:56:53 +02:00
bakkeby
fc28c6a7b2 Adding statuscolors patch 2019-10-07 00:46:23 +02:00
bakkeby
132ceee073 Added statusallmons patch, fixed minor cross-compatibility issues for killunsel, fullscreen, noborder, tagintostack patches 2019-10-06 23:43:51 +02:00
bakkeby
ac4269a4f2 Adding cmdcustomize patch 2019-10-05 23:56:43 +02:00
bakkeby
f096d003d9 Adding hidevacanttags patch 2019-10-05 23:44:18 +02:00
bakkeby
15a4c58924 Adding taggrid patch 2019-10-05 23:28:50 +02:00
bakkeby
a8049d86bb Adding tagintostack patch 2019-10-05 00:12:52 +02:00
bakkeby
69c6037b26 Adding noborder patch 2019-10-04 23:39:01 +02:00
bakkeby
2de0c0e307 Adding maximize patch 2019-10-04 22:46:47 +02:00
bakkeby
40000bba1c Adding quitonlyonempty patch and made monocle layout position configurable for fullscreen and warp patches 2019-10-03 22:58:58 +02:00
bakkeby
0a23ed6efd Adding restartsig and emptyview patches 2019-10-02 23:22:04 +02:00
bakkeby
37b1b54ab9 Adding fullscreen, holdbar and unfloatvisible patches 2019-10-02 00:03:21 +02:00
bakkeby
1cff033127 Adding leftlayout patch 2019-10-01 22:46:24 +02:00
bakkeby
009819e186 Replaced flextile with flextile-deluxe, refactored monitor rules to support predetermined layouts per tag 2019-09-30 23:52:51 +02:00
bakkeby
aee6e0edf6 Adding focusonclick patch 2019-09-16 00:32:28 +02:00
bakkeby
dc5d77e95f Adding urgentborder patch 2019-09-16 00:13:03 +02:00
bakkeby
49218e94b5 Adding viewontag patch 2019-09-15 23:42:47 +02:00
bakkeby
f8f67508d8 Adding xrdb patch 2019-09-15 22:45:22 +02:00
bakkeby
30e0a3b5e4 Adding sticky and warp patches 2019-09-15 00:46:00 +02:00
bakkeby
5501f81b9c Adding setborderpx patch 2019-09-14 23:28:04 +02:00
bakkeby
c5b830e6ab Adding titlecolor patch 2019-09-13 23:56:05 +02:00
bakkeby
9d82e39580 Adding activetagindicatorbar, alwaysfullscreen and autoresize patches 2019-09-13 00:06:54 +02:00
bakkeby
9e17c55d95 Adding ewmhtags patch 2019-09-12 00:48:29 +02:00
bakkeby
706e06be43 Adding combo patch 2019-09-11 23:35:43 +02:00
bakkeby
e89f262323 Adding monitor rules patch 2019-09-11 12:28:45 +02:00
bakkeby
5d33aebaaf Adding float border color patch 2019-09-11 00:51:37 +02:00
bakkeby
d0757568ee Minor tweaks to awesomebar patch (incl. alpha and systray compatibility) 2019-09-10 10:27:22 +02:00
bakkeby
d6517bf4f8 Adding awesomebar patch 2019-09-10 00:30:17 +02:00
bakkeby
4a17b880ad Adding alternativetags patch 2019-09-09 23:27:10 +02:00
bakkeby
20872921bc Adding flextile patch 2019-09-09 22:25:19 +02:00
bakkeby
e490af0eb2 Adding cfacts, vanitygaps patches and bottomstack layouts 2019-09-09 00:18:47 +02:00
bakkeby
747512af21 Adding center patch 2019-09-08 00:25:48 +02:00
bakkeby
8a71375fed Adding windowrolerule patch 2019-09-07 23:46:08 +02:00
bakkeby
c356be36b9 Adding statuspadding patch 2019-09-07 23:33:48 +02:00
bakkeby
ffe8da4273 Adding savefloats patch 2019-09-07 23:08:53 +02:00
bakkeby
2f4916a64e Adding resizecorners patch 2019-09-07 22:35:37 +02:00
bakkeby
27b6b4b024 Adding focusonnetactive and losefullscreen patches 2019-09-07 00:03:31 +02:00
bakkeby
ec546d7995 Adding fancybar patch 2019-09-06 23:47:06 +02:00
bakkeby
611460c6a6 Adding autostart patch 2019-09-06 23:37:30 +02:00
bakkeby
04a7b4de40 Adding attachabove, attachaside, attachbelow and attachbottom patches 2019-09-06 23:25:32 +02:00
bakkeby
1d7247ebb5 Adding tagmonfixfs patch 2019-09-05 23:39:25 +02:00
bakkeby
e681ab5dd9 Adding zoomswap patch (pertag compatible) 2019-09-05 23:19:23 +02:00
bakkeby
591caea975 Added pertag patch 2019-09-05 22:58:16 +02:00
bakkeby
cba0991170 Adding systray patch 2019-09-05 22:10:00 +02:00
bakkeby
2c9a889b22 Adding README.md 2019-09-05 13:35:52 +02:00
bakkeby
c34c536f3e Adding alpha patch 2019-09-05 00:16:39 +02:00