Commit Graph

312 Commits (master)

Author SHA1 Message Date
bakkeby adc05c2332 Upgrading winicon patch to v2.1 ref. #238 2 years ago
Bagellll ae67378b20
Tag-Sync patch (for syncing tags across all monitors) (#219)
* Tag-Sync patch
* Major compatibility updates
* SWITCHTAG/TAGSYNC compatibility
* tagsync: refactoring

Co-authored-by: bakkeby <bakkeby@gmail.com>
2 years ago
bakkeby 282dc2ad22 barpadding: adding vanitygaps variant 2 years ago
bakkeby 90e4dfc0cf Adding the isfreesize version of the sizehints patch ref. #229 2 years ago
bakkeby 5c80a54b62 Refactoring restack to allow it to work without having the bar as a reference ref. #214 2 years ago
bakkeby 094c8ff363 Add a configuration option for fullscreen locking
Some people are annoyed to have this new behaviour forced for some
application which use fake fullscreen.

Ref. https://git.suckless.org/dwm/commit/138b405f0c8aa24d8a040cc1a1cf6e3eb5a0ebc7.html
2 years ago
bakkeby 1920595795 drawbar: Don't expend effort drawing bar if it is occluded
I noticed that a non-trivial amount of dwm's work on my machine was from
drw_text, which seemed weird, because I have the bar disabled and we
only use drw_text as part of bar drawing.

Looking more closely, I realised that while we use m->showbar when
updating the monitor bar margins, but don't skip actually drawing the
bar if it is hidden. This patch skips drawing it entirely if that is the
case.

On my machine, this takes 10% of dwm's on-CPU time, primarily from
restack() and focus().

When the bar is toggled on again, the X server will generate an Expose
event, and we'll redraw the bar as normal as part of expose().

Ref. https://git.suckless.org/dwm/commit/8657affa2a61e85ca8df76b62e43cb02897d1d80.html
2 years ago
Utkarsh Verma 6667f1030b
Make sure it plays well with pertag patch 2 years ago
Utkarsh Verma 8f401e1d81
Add a new patch to integrate vanity gaps with bar padding 2 years ago
bakkeby 40d30e5d1b Adding the one line of bloat that would have saved a lot of time for a lot of people 3 years ago
bakkeby 63fed59d19 Adding taglabels patch ref. #199 3 years ago
bakkeby efb9cc721e onlyquitonempty: fix for compilation error when not using the restart sig patch ref. #196 3 years ago
bakkeby 67fc80803d onlyquitonempty: refactoring patch to only take client windows into
consideration when deciding whether or not to allow dwm to quit

As per the original patch
https://dwm.suckless.org/patches/onlyquitonempty/

it used XQueryTree to get a count of the number of windows open to
determine whether to allow the window manager to exit.

This meant that the empty quit count variable would have to take
into account background windows such as the bar, which has side
effects like plugging in another monitor could mean that you would
not longer be allowed to quit dwm until the monitor is removed.

Likewise a systray and each systray icon would give a +1 to the
number of windows in the system.

This is unintuitive to understand and convoluted to explain, hence
the refactoring here to use the more sane approach of only counting
the number of client windows that the window manager manages.

This is an old idea which was intentionally not added to
dwm-flexipatch due to the aim of staying true to the original patch
(as in if you were to patch that manually you would get the same
experience as you had when trying the patch out in dwm-flexipatch).

This is ref. discussion in #194.
3 years ago
bakkeby ec6a64a64f onlyquitonempty + cool_autostart: adding proposed compatibility improvements ref. #194 3 years ago
bakkeby 297412adf4 noborder: addressing issue reported in #193 3 years ago
bakkeby a42a81a711 Expanding directives ref. #182 3 years ago
bakkeby 7de6ee8375 savefloats: save centered float position for tiled windows when centered or alwayscentered patches are used ref. #182 3 years ago
bakkeby 22bbf1cb13 Adding alwayscenter patch ref. #182 3 years ago
bakkeby f8ae6714db Adding winicon patch 3 years ago
pepper-jelly b0070eac02 use portable macro 3 years ago
pepper-jelly 0733c39e0c sed source files to end with 1 new line 3 years ago
bakkeby c968fd9aae Renaming VIEW_SAME_TAG_GIVES_PREVIOUS_TAG_PATCH to TOGGLETAG_PATCH 3 years ago
bakkeby 246f8f7260 Adding togglelayout patch 3 years ago
bakkeby 9072ef28a4 Splitting SchemeHid to SchemeHidNorm and SchemeHidSel given that a hidden client may still be the selected client ref. #148 3 years ago
bakkeby 9a0fb6c83b vanitygaps: PERTAG_VANITYGAPS_PATCH to control both gaps and whether gaps are enabled per tag ref. #147 3 years ago
bakkeby e1f28aae25 vanitygaps: fix for gaps not being enabled by default when pertag is used ref. #147 3 years ago
bakkeby 7fe81a6280 fakefullscreen vs fakefullscreenclient compatibility, let fakefullscreen take precedence 3 years ago
bakkeby 0b5bc76eef toggelfullscreen: addressing focus change issue when exiting fullscreen properly 3 years ago
bakkeby fd958dc631 floatpos: allowing window size hints to be updated (this may interfere with window float positions) 3 years ago
bakkeby 9edce6b606 scratchpad_alt_1: upgrading and simplifying patch ref. #124 3 years ago
bakkeby 7b9460e770 fakefullscreenclient + stacker: fix for allowing focusstack when client is in fake fullscreen (issue introduced by alwaysfullscreen being merged upstream 3 years ago
bakkeby 77c45afe48 Addressing various memory leak issues ref. https://github.com/bakkeby/patches/issues/30 3 years ago
bakkeby 4bfda0327c anybar: misc improvements ref. #118 3 years ago
bakkeby eb66da79ca anybar: make sure to free the bar when unmanaging an external bar plus misc improvements ref. #118 3 years ago
bakkeby 6e80cb5f36 Upgrading statuscmd patch.
The original statuscmd patch has been renamed to statuscmd-nosignal
to separate the logic from the dwmblocks integration that involves
signals. I assume as the latter has become more popular it has replaced
the statuscmd in name.
3 years ago
bakkeby ac737f9dfc Adding xkb patch as per request #111 3 years ago
bakkeby 39df1ca4ad Initialise gaps for pertag arrays when monitor is created ref. #106 3 years ago
bakkeby 012d1f7639 Upgrading to 67d76b and removing alwaysfullscreen patch as it has been merged into mainstream dwm 6.2 3 years ago
bakkeby 72564eb394 Adding LG3D patch 3 years ago
bakkeby 0f9104285b Adding tab patch 3 years ago
bakkeby f5bbd9b4c3 riodraw: upgrading patch to include rio-spawning of windows 3 years ago
bakkeby 0f28402305 Adding placemouse patch 3 years ago
bakkeby 49839cf6f1 Proposed change to address overly large fake fullscreen 3 years ago
bakkeby e23b16e533 noborder: add support for 0 nmaster deck layout ref. #82 4 years ago
bakkeby e350e4d93d NetActiveWindow: make sure to unfocus previously selected window if moving to another monitor 4 years ago
bakkeby 7db8bb0ce9 noborder: Adding partial support for flextile-deluxe monocole layout, ref. #74 4 years ago
bakkeby 1b9e0d9a88 Rolling back workaround for systray not displaying when designated monitor is removed (ref. hotplugging issues) 4 years ago
bakkeby a947f8d667 systray: avoid dwm crashing when removing the monitor where the systray is running (fix ref. #70) 4 years ago
bakkeby f662f6e749 systray: avoid dwm crashing when removing the monitor where the systray is running (hotplugging issues) 4 years ago
bakkeby 45d05c6c48 Adding the _NET_CLIENT_LIST_STACKING patch 4 years ago
bakkeby c6c2f0109f noborder: the recorded height and width of the client should most likely not be changed when noborder is in effect 4 years ago
bakkeby f9a3c2f88c savefloats: disable restoring float position when using movemouse and resizemouse functions for a more intuitive behaviour 4 years ago
bakkeby 81ae102bb9 savefloats: set the _IS_FLOATING property also when restoring float position 4 years ago
bakkeby 21fd715afa swallow / arrange mismatch: swallow needs XMapWindow for the window being called beforehand, whereas arrange needs it called afterwards 4 years ago
bakkeby 016cdf3857 for new clients trigger arrange before XMapWindow to avoid visual glitches 4 years ago
bakkeby 56c81ddbfa warp: dragmfact + dragcfact compatibility
These set of changes introduce:
   a) a flag to ignore warp from happening while dragmfact or
      dragcfact is being used and
   b) a flag to force warp when killclient or showhideclient
      is used, to make for a more intuitive experience

ref. https://github.com/bakkeby/patches/issues/11
4 years ago
bakkeby 21bafa5e69 on_empty_keys: global isempty rather than per-monitor 4 years ago
bakkeby 6742783b87 center: minor nitpick for transient windows 4 years ago
bakkeby 37c212ad55 Adding on_empty_keys patch ref. #51 4 years ago
bakkeby fbacf17346 center: center windows by default if they are placed in the top right corner, ref. #52 4 years ago
bakkeby 795fcc3b51 scratchpads: when the scratchpad patch is added, the tagmask is altered, so to get a window onto all tags you have to do ~SPTAGSMASK instead of ~0 as otherwise it will interfere with the scratchpads, ref. #53 4 years ago
bakkeby 8726ae0aa9 Adding _IS_FLOATING xproperty patch for floating windows ref. #50 4 years ago
B4rc1 efeb5fcbf4 fixed warp patch for local monitor 4 years ago
bakkeby 00320fb842 Adding nomodbuttons patch 4 years ago
bakkeby 8aa21b0311 XKeycodeToKeysym --> XGetKeyboardMapping (XKeycodeToKeysym is allegedly deprecated) 4 years ago
bakkeby b8dc848918 Adding fakefullscreen client rule 4 years ago
bakkeby 01464c584e ignoreconfigurenotifyrequests --> ignoreconfigurerequests 4 years ago
bakkeby a7da48ca3d Add logic to ignore ConfigureNotify requests while a window is being moved or resized 4 years ago
bakkeby 32f9a73c0d scratchtags: allow moving / resizing scratchtag window to another monitor + minor comment 4 years ago
bakkeby fada5790a2 fakefullscreenclient: setfullscreen logic overhaul 4 years ago
bakkeby 819d06c5c9 swallow: arrange monitor if window is not swallowed 4 years ago
bakkeby 7b477bc7db fakefullscreen: fullscreen --> fake fullscreen can make the tiled window display on top of floating window 4 years ago
bakkeby c3e5910080 swallow: no good reason to call arrange if a client window is being swallowed 4 years ago
bakkeby dc9e57a6b6 swallow: upgrading to latest version with OpenBSD support 4 years ago
bakkeby 4a35cd2704 fakefullscreen: do not interfere with client message 4 years ago
bakkeby 104c9909b5 swallow: upgrading patch + fixing glitches 4 years ago
bakkeby 95c3014bd5 fakefullscreen: prevent focus from drifting away from client when going from fullscreen to fake fullscreen 4 years ago
bakkeby d91db5cd65 anybar: adding experimental support for having both anybar + dwm bar(s) in play 4 years ago
bakkeby 8994f375e8 anybar: initial commit 4 years ago
bakkeby f4a6866e8c barmodules: skip if widthfunc is NULL 4 years ago
bakkeby ed0e503a6b barmodules: skip if widthfunc is NULL 4 years ago
bakkeby c257e2e390 fakefullscreen: prevent focus from drifting away from client when going from fullscreen to fake fullscreen 4 years ago
bakkeby ff9811f73d Just some minor changes adding bar border patch ref. #41 4 years ago
bakkeby 4379517c25 Adding IPC v1.5.5 patch 4 years ago
bakkeby 260bd11a53 systray may not always exist 4 years ago
bakkeby 018721ca76 systray may not exist when a clientmessage is received, resulting in dwm crash 4 years ago
bakkeby f4f5ecab75 Scratchpads improvement (multi-monitor support) 4 years ago
bakkeby c14f40190e Assortment of fullscreen improvements 4 years ago
bakkeby 5f5dc7ab9c Assortment of fullscreen improvements (togglefullscreen / fakefullscreenclient / tagallmon / tagswapmon) 4 years ago
bakkeby dcf7b049ba Adding view same tag gives previous tag patch 4 years ago
bakkeby 1d19f4d309 Making warp preprocessor directive easier for flexipatch-finalizer to understand 4 years ago
bakkeby 0d743eddff flexwintitle: allow flexwintitle to control window borders 4 years ago
bakkeby b3d336322e Adding aspectresize patch 4 years ago
bakkeby e952cc9a81 Minor refactoring of warp and fullscreen patches, getting rid of MONOCLE_LAYOUT_POS setting 4 years ago
bakkeby f45acf8795 Added alttagsdecoration patch.
Unified tag icon handling while adding support for different icons per monitor.

In general LENGTH(tags) has been replaced with a NUMTAGS macro (defaulting to 9)
and the tags[] array has been replaced with a tagicons[][] array, access to which
is done through a single function tagicon.

This allows one central place where alternative tags, alttagsdecoration, or other
future tags logic is handled. This also gives a consistent display of tags
regardless of the module that presents tags.

Additionally the monitor index has been integrated into dwm for easier access.
4 years ago
bakkeby df57bdeb64 Identified and fixed a few more cross-compilation issues 4 years ago
bakkeby 939a407e25 Fixing wintitle and a few warning messages ref. #37 4 years ago
bakkeby 81f44b036c Simplified Pango integration by settling on common function signatures. 4 years ago
bakkeby eb782ae920 Added zoomfloating patch. Changed zoom and togglefloating functions to use c rather than selmon->sel. 4 years ago
bakkeby 91b6671981 Added zoomfloating patch. Changed zoom and togglefloating functions to use c rather than selmon->sel. 4 years ago