<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title>dwm, branch HEAD</title>
<subtitle>dynamic window manager
</subtitle>
<entry>
<id>cfb8627a80a334f200f68c2c8f3e384313ebbaf5</id>
<published>2024-10-28T00:34:55Z</published>
<updated>2024-10-30T12:02:17Z</updated>
<title>Avoid unsigned integer underflow in drw_text()</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/cfb8627a80a334f200f68c2c8f3e384313ebbaf5.gph" />
<author>
<name>Raymond Cole</name>
<email>[email protected]</email>
</author>
<content>commit cfb8627a80a334f200f68c2c8f3e384313ebbaf5
parent fcb2476b693ca4c40ad32c7119e27bbeb856865c
Author: Raymond Cole &lt;[email protected]&gt;
Date:   Mon, 28 Oct 2024 00:34:55 +0000

Avoid unsigned integer underflow in drw_text()

</content>
</entry>
<entry>
<id>fcb2476b693ca4c40ad32c7119e27bbeb856865c</id>
<published>2024-10-27T19:10:07Z</published>
<updated>2024-10-27T19:10:07Z</updated>
<title>util.c: output function might override errno and thus affect perror()</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/fcb2476b693ca4c40ad32c7119e27bbeb856865c.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit fcb2476b693ca4c40ad32c7119e27bbeb856865c
parent 8933ebcf50024f4378a78e556b1ac08091197206
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Sun, 27 Oct 2024 20:10:07 +0100

util.c: output function might override errno and thus affect perror()

Original patch by Raymond Cole with some modifications, thanks!

</content>
</entry>
<entry>
<id>8933ebcf50024f4378a78e556b1ac08091197206</id>
<published>2024-10-05T11:01:49Z</published>
<updated>2024-10-05T11:06:08Z</updated>
<title>sync drw.{c,h} from dmenu</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/8933ebcf50024f4378a78e556b1ac08091197206.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 8933ebcf50024f4378a78e556b1ac08091197206
parent 5687f4696472ba6029bbba18e293e3e8b9e154ea
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Sat,  5 Oct 2024 13:01:49 +0200

sync drw.{c,h} from dmenu

- drw: minor improvement to the nomatches cache
- overhaul utf8decoding and render invalid utf8 sequences as U+FFFD.

Thanks NRK for these improvements!

</content>
</entry>
<entry>
<id>5687f4696472ba6029bbba18e293e3e8b9e154ea</id>
<published>2024-06-08T10:36:15Z</published>
<updated>2024-06-08T16:21:00Z</updated>
<title>Add missing void to updateclientlist definition</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/5687f4696472ba6029bbba18e293e3e8b9e154ea.gph" />
<author>
<name>Pontus Stenetorp</name>
<email>[email protected]</email>
</author>
<content>commit 5687f4696472ba6029bbba18e293e3e8b9e154ea
parent 061e9fe9a7db396c0c4f3d996c3908fb43a6d50c
Author: Pontus Stenetorp &lt;[email protected]&gt;
Date:   Sat,  8 Jun 2024 19:36:15 +0900

Add missing void to updateclientlist definition

Caught by -pedantic implying -Wstrict-prototypes for OpenBSD&#39;s 16.0.6 Clang.

</content>
</entry>
<entry>
<id>061e9fe9a7db396c0c4f3d996c3908fb43a6d50c</id>
<published>2024-03-19T11:13:16Z</published>
<updated>2024-03-19T11:13:16Z</updated>
<title>bump version to 6.5</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/061e9fe9a7db396c0c4f3d996c3908fb43a6d50c.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 061e9fe9a7db396c0c4f3d996c3908fb43a6d50c
parent 9f8855343c881bdc01b9fff5b956537ba1106b76
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Tue, 19 Mar 2024 12:13:16 +0100

bump version to 6.5

</content>
</entry>
<entry>
<id>9f8855343c881bdc01b9fff5b956537ba1106b76</id>
<published>2023-09-22T13:13:29Z</published>
<updated>2023-09-22T13:13:29Z</updated>
<title>Makefile: remove the options target</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/9f8855343c881bdc01b9fff5b956537ba1106b76.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 9f8855343c881bdc01b9fff5b956537ba1106b76
parent e81f17d4c196aaed6893fd4beed49991caa3e2a4
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Fri, 22 Sep 2023 15:13:29 +0200

Makefile: remove the options target

The Makefile used to suppress output (by using @), so this target made sense at
the time.

But the Makefile should be simple and make debugging with less abstractions or
fancy printing.  The Makefile was made verbose and doesn&#39;t hide the build
output, so remove this target.

Prompted by a question on the mailing list about the options target.

</content>
</entry>
<entry>
<id>e81f17d4c196aaed6893fd4beed49991caa3e2a4</id>
<published>2023-04-09T10:37:14Z</published>
<updated>2023-04-09T10:37:14Z</updated>
<title>restore SIGCHLD sighandler to default before spawning a program</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/e81f17d4c196aaed6893fd4beed49991caa3e2a4.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit e81f17d4c196aaed6893fd4beed49991caa3e2a4
parent 348f6559ab0d4793db196ffa56ba96ab95a594a6
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Sun,  9 Apr 2023 12:37:14 +0200

restore SIGCHLD sighandler to default before spawning a program

From sigaction(2):
A child created via fork(2) inherits a copy of its parent&#39;s signal dispositions.
During an execve(2), the dispositions of handled signals are reset to the default;
the dispositions of ignored signals are left unchanged.

This refused to start directly some programs from configuring in config.h:

static Key keys[] = {
       MODKEY,                       XK_o,      spawn,          {.v = cmd } },
};

Some reported programs that didn&#39;t start were: mpv, anki, dmenu_extended.

Reported by pfx.
Initial patch suggestion by Storkman.

</content>
</entry>
<entry>
<id>348f6559ab0d4793db196ffa56ba96ab95a594a6</id>
<published>2023-02-17T05:05:09Z</published>
<updated>2023-02-17T14:27:34Z</updated>
<title>config.mk: update to _XOPEN_SOURCE=700L</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/348f6559ab0d4793db196ffa56ba96ab95a594a6.gph" />
<author>
<name>NRK</name>
<email>[email protected]</email>
</author>
<content>commit 348f6559ab0d4793db196ffa56ba96ab95a594a6
parent 712d6639ff8e863560328131bbb92b248dc9cde7
Author: NRK &lt;[email protected]&gt;
Date:   Fri, 17 Feb 2023 11:05:09 +0600

config.mk: update to _XOPEN_SOURCE=700L

SA_NOCLDWAIT is marked as XSI in the posix spec [0] and FreeBSD and NetBSD
seems to more be strict about the feature test macro [1].

so update the macro to use _XOPEN_SOURCE=700L instead, which is equivalent to
_POSIX_C_SOURCE=200809L except that it also unlocks the X/Open System
Interfaces.

[0]: https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/signal.h.html#tag_13_42
[1]: https://lists.suckless.org/dev/2302/35111.html

Tested on:
* NetBSD 9.3 (fixed).
* FreeBSD 13 (fixed).
* Void Linux musl.
* Void Linux glibc.
* OpenBSD 7.2 (stable).
* Slackware 11.

Reported-by: beastie &lt;[email protected]&gt;

</content>
</entry>
<entry>
<id>712d6639ff8e863560328131bbb92b248dc9cde7</id>
<published>2023-01-28T11:53:48Z</published>
<updated>2023-01-28T12:34:43Z</updated>
<title>Use sigaction(SA_NOCLDWAIT) for SIGCHLD handling</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/712d6639ff8e863560328131bbb92b248dc9cde7.gph" />
<author>
<name>Chris Down</name>
<email>[email protected]</email>
</author>
<content>commit 712d6639ff8e863560328131bbb92b248dc9cde7
parent 89f9905714c1c1b2e8b09986dfbeca15b68d8af8
Author: Chris Down &lt;[email protected]&gt;
Date:   Sat, 28 Jan 2023 12:53:48 +0100

Use sigaction(SA_NOCLDWAIT) for SIGCHLD handling

signal() semantics are pretty unclearly specified. For example, depending on OS
kernel and libc, the handler may be returned to SIG_DFL (hence the inner call
to read the signal handler). Moving to sigaction() means the behaviour is
consistently defined.

Using SA_NOCLDWAIT also allows us to avoid calling the non-reentrant function
die() in the handler.

Some addditional notes for archival purposes:

* NRK pointed out errno of waitpid could also theoretically get clobbered.
* The original patch was iterated on and modified by NRK and Hiltjo:
 * SIG_DFL was changed to SIG_IGN, this is required, atleast on older systems
   such as tested on Slackware 11.
 * signals are not blocked using sigprocmask, because in theory it would
   briefly for example also ignore a SIGTERM signal. It is OK if waitpid() is (in
   theory interrupted).

POSIX reference:
&quot;Consequences of Process Termination&quot;:
https://pubs.opengroup.org/onlinepubs/9699919799/functions/_Exit.html#tag_16_01_03_01

</content>
</entry>
<entry>
<id>89f9905714c1c1b2e8b09986dfbeca15b68d8af8</id>
<published>2022-12-07T14:55:08Z</published>
<updated>2022-12-07T22:06:26Z</updated>
<title>grabkeys: Avoid missing events when a keysym maps to multiple keycodes</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/89f9905714c1c1b2e8b09986dfbeca15b68d8af8.gph" />
<author>
<name>Chris Down</name>
<email>[email protected]</email>
</author>
<content>commit 89f9905714c1c1b2e8b09986dfbeca15b68d8af8
parent ba56fe9fea0a28d8184a727a987836a0903e2682
Author: Chris Down &lt;[email protected]&gt;
Date:   Wed,  7 Dec 2022 14:55:08 +0000

grabkeys: Avoid missing events when a keysym maps to multiple keycodes

It&#39;s not uncommon for one keysym to map to multiple keycodes. For
example, the &quot;play&quot; button on my keyboard sends keycode 172, but my
bluetooth headphones send keycode 208, both of which map back to
XF86AudioPlay:

   % xmodmap -pke | grep XF86AudioPlay
   keycode 172 = XF86AudioPlay XF86AudioPause XF86AudioPlay XF86AudioPause
   keycode 208 = XF86AudioPlay NoSymbol XF86AudioPlay
   keycode 215 = XF86AudioPlay NoSymbol XF86AudioPlay

This is a problem because the current code only grabs a single one of
these keycodes, which means that events for any other keycode also
mapping to the bound keysym will not be handled by dwm. In my case, this
means that binding XF86AudioPlay does the right thing and correctly
handles my keyboard&#39;s keys, but does nothing on my headphones. I&#39;m not
the only person affected by this, there are other reports[0].

In order to fix this, we look at the mappings between keycodes and
keysyms at grabkeys() time and pick out all matching keycodes rather
than just the first one. The keypress() side of this doesn&#39;t need any
changes because the keycode gets converted back to a canonical keysym
before any action is taken.

0: https://github.com/cdown/dwm/issues/11

</content>
</entry>
<entry>
<id>ba56fe9fea0a28d8184a727a987836a0903e2682</id>
<published>2022-10-28T14:37:56Z</published>
<updated>2022-10-28T14:37:56Z</updated>
<title>Revert &quot;Remove dmenumon variable&quot;</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/ba56fe9fea0a28d8184a727a987836a0903e2682.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit ba56fe9fea0a28d8184a727a987836a0903e2682
parent 50ad171eea9db5ccb36fce2592e047c3282975ff
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Fri, 28 Oct 2022 16:37:56 +0200

Revert &quot;Remove dmenumon variable&quot;

This reverts commit c2b748e7931e5f28984efc236f9b1a212dbc65e8.

Revert back this change. It seems to not be an edge-case anymore since
multiple users have asked about this new behaviour now.

</content>
</entry>
<entry>
<id>50ad171eea9db5ccb36fce2592e047c3282975ff</id>
<published>2022-10-04T17:35:13Z</published>
<updated>2022-10-04T17:35:13Z</updated>
<title>bump version to 6.4</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/50ad171eea9db5ccb36fce2592e047c3282975ff.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 50ad171eea9db5ccb36fce2592e047c3282975ff
parent 970f37697358574e127019eb0ee2f5725ec05ce0
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Tue,  4 Oct 2022 19:35:13 +0200

bump version to 6.4

</content>
</entry>
<entry>
<id>970f37697358574e127019eb0ee2f5725ec05ce0</id>
<published>2022-09-16T21:06:47Z</published>
<updated>2022-09-17T13:32:41Z</updated>
<title>remove workaround for a crash with color emojis on some systems, now fixed in libXft 2.3.5</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/970f37697358574e127019eb0ee2f5725ec05ce0.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 970f37697358574e127019eb0ee2f5725ec05ce0
parent c2b748e7931e5f28984efc236f9b1a212dbc65e8
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Fri, 16 Sep 2022 23:06:47 +0200

remove workaround for a crash with color emojis on some systems, now fixed in libXft 2.3.5

https://gitlab.freedesktop.org/xorg/lib/libxft/-/blob/libXft-2.3.5/NEWS

</content>
</entry>
<entry>
<id>c2b748e7931e5f28984efc236f9b1a212dbc65e8</id>
<published>2022-08-26T12:48:46Z</published>
<updated>2022-08-28T09:39:43Z</updated>
<title>Remove dmenumon variable</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/c2b748e7931e5f28984efc236f9b1a212dbc65e8.gph" />
<author>
<name>Stein</name>
<email>[email protected]</email>
</author>
<content>commit c2b748e7931e5f28984efc236f9b1a212dbc65e8
parent 84d7322113c2bf023f5eaa8537fb0e72d4105046
Author: Stein &lt;[email protected]&gt;
Date:   Fri, 26 Aug 2022 14:48:46 +0200

Remove dmenumon variable

Reasoning: Since 2011 dmenu has been capable of working out which
monitor currently has focus in a Xinerama setup, making the use
of the -m flag more or less redundant.

This is easily demonstrated by using dmenu in any other window
manager.

There used to be a nodmenu patch that provided these changes:
https://git.suckless.org/sites/commit/ed68e3629de4ef2ca2d3f8893a79fb570b4c0cbc.html

but this was removed on the basis that it was very easy to work
out and apply manually if needed.

The proposal here is to remove this dependency from dwm. The
mechanism of the dmenumon variable could be provided via a patch
if need be.

The edge case scenario that dmenu does not handle on its own, and
the effect of removing this mechanism, is that if the user trigger
focusmon via keybindings to change focus to another monitor that
has no clients, then dmenu will open on the monitor containing the
window with input focus (or the monitor with the mouse cursor if
no windows have input focus).

If this edge case is important to cover then this can be addressed
by setting input focus to selmon-&gt;barwin in the focus function if
there is no client to give focus to (rather than giving focus back
to the root window).

</content>
</entry>
<entry>
<id>84d7322113c2bf023f5eaa8537fb0e72d4105046</id>
<published>2022-08-18T16:13:08Z</published>
<updated>2022-08-19T09:47:22Z</updated>
<title>config.def.h: make keys and buttons const</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/84d7322113c2bf023f5eaa8537fb0e72d4105046.gph" />
<author>
<name>NRK</name>
<email>[email protected]</email>
</author>
<content>commit 84d7322113c2bf023f5eaa8537fb0e72d4105046
parent 5799dd1fca6576b662d299e210cd5933b29d502d
Author: NRK &lt;[email protected]&gt;
Date:   Thu, 18 Aug 2022 22:13:08 +0600

config.def.h: make keys and buttons const

pretty much all other variables are declared as const when they&#39;re not
modified.

</content>
</entry>
<entry>
<id>5799dd1fca6576b662d299e210cd5933b29d502d</id>
<published>2022-08-15T12:31:22Z</published>
<updated>2022-08-17T11:33:57Z</updated>
<title>Remove blw variable in favour of calculating the value when needed</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/5799dd1fca6576b662d299e210cd5933b29d502d.gph" />
<author>
<name>Stein</name>
<email>[email protected]</email>
</author>
<content>commit 5799dd1fca6576b662d299e210cd5933b29d502d
parent 44adafe0069e73aa03a3829d7bb39591cd8b3f1d
Author: Stein &lt;[email protected]&gt;
Date:   Mon, 15 Aug 2022 14:31:22 +0200

Remove blw variable in favour of calculating the value when needed

The purpose and reasoning behind the bar layout width (blw) variable
in dwm the way it is today may not be immediately obvious.

The use of the variable makes more sense when looking at commit
2ce37bc from 2009 where blw was initialised in the setup function
and it represented the maximum of all available layout symbols.

       for(blw = i = 0; LENGTH(layouts) &gt; 1 &amp;&amp; i &lt; LENGTH(layouts); i++) {
               w = TEXTW(layouts[i].symbol);
               blw = MAX(blw, w);
       }

As such the layout symbol back then was fixed in size and both drawbar
and buttonpress depended on this variable.

The the way the blw variable is set today in drawbar means that it
merely caches the size of the layout symbol for the last bar drawn.

While unlikely to happen in practice it is possible that the last bar
drawn is not that of the currently selected monitor, which can result
in misaligned button clicks if there is a difference in layout symbol
width between monitors.

</content>
</entry>
<entry>
<id>44adafe0069e73aa03a3829d7bb39591cd8b3f1d</id>
<published>2022-08-11T09:15:55Z</published>
<updated>2022-08-12T07:02:34Z</updated>
<title>Make floating windows spawn within the monitor&#39;s window area</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/44adafe0069e73aa03a3829d7bb39591cd8b3f1d.gph" />
<author>
<name>Stein</name>
<email>[email protected]</email>
</author>
<content>commit 44adafe0069e73aa03a3829d7bb39591cd8b3f1d
parent a859676ead17017bbe81b4989b2f2e0b00a0b4ba
Author: Stein &lt;[email protected]&gt;
Date:   Thu, 11 Aug 2022 11:15:55 +0200

Make floating windows spawn within the monitor&#39;s window area

This is a follow-up on this thread:
https://lists.suckless.org/hackers/2208/18462.html

The orginal code had constraints such that if a window&#39;s starting
attributes (position and size) were to place the window outside of
the edges of the monitor, then the window would be moved into view
at the closest monitor edge.

There was an exception to this where if a top bar is used then the
window should not obscure the bar if present, which meant to place
the window within the window area instead.

The proposed change here makes it the general rule that floating
windows should spawn within the window area rather than within the
monitor area. This makes it simple and consistent with no
exceptions and it makes the intention of the code clear.

This has the benefit of making the behaviour consistent regardless
of whether the user is using a top bar or a bottom bar.

Additionally this will have an effect on patches that modify the
size of the window area. For example if the insets patch is used to
reserve space on the left hand side of the monitor for a dock or a
vertical bar then new floating clients will not obscure that area.

</content>
</entry>
<entry>
<id>a859676ead17017bbe81b4989b2f2e0b00a0b4ba</id>
<published>2022-08-09T08:38:08Z</published>
<updated>2022-08-10T13:31:21Z</updated>
<title>Simplify client y-offset correction</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/a859676ead17017bbe81b4989b2f2e0b00a0b4ba.gph" />
<author>
<name>Stein</name>
<email>[email protected]</email>
</author>
<content>commit a859676ead17017bbe81b4989b2f2e0b00a0b4ba
parent e0dee911455cee739a5b05a994828f4a37a2764d
Author: Stein &lt;[email protected]&gt;
Date:   Tue,  9 Aug 2022 10:38:08 +0200

Simplify client y-offset correction

The reasoning behind the original line may be lost to time as
it does not make much sense checking the position on the x-axis
to determine how to position the client on the y-axis.

In the context of multi-monitor setups the monitor y position
(m-&gt;my) may be greater than 0 (say 500), in which case the window
could be placed out of view if:
  - the window attributes have a 0 value for the y position and
  - we end up using the y position of bh (e.g. 22)

If the aim is to avoid a new floating client covering the bar then
restricting y position to be at least that of the window area
(m-&gt;wy) should cover the two cases of using a top bar and using a
bottom bar.

</content>
</entry>
<entry>
<id>e0dee911455cee739a5b05a994828f4a37a2764d</id>
<published>2022-08-08T08:43:09Z</published>
<updated>2022-08-08T08:43:09Z</updated>
<title>sync code-style patch from libsl</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/e0dee911455cee739a5b05a994828f4a37a2764d.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit e0dee911455cee739a5b05a994828f4a37a2764d
parent 5e76e7e21da042c493c59235ca82d7275f20a7e4
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Mon,  8 Aug 2022 10:43:09 +0200

sync code-style patch from libsl

</content>
</entry>
<entry>
<id>5e76e7e21da042c493c59235ca82d7275f20a7e4</id>
<published>2022-08-05T22:27:13Z</published>
<updated>2022-08-06T14:09:01Z</updated>
<title>code-style: simplify some checks</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/5e76e7e21da042c493c59235ca82d7275f20a7e4.gph" />
<author>
<name>NRK</name>
<email>[email protected]</email>
</author>
<content>commit 5e76e7e21da042c493c59235ca82d7275f20a7e4
parent 5b2e5e7a4001479e4dc3e245f96e49f7ea0da658
Author: NRK &lt;[email protected]&gt;
Date:   Sat,  6 Aug 2022 04:27:13 +0600

code-style: simplify some checks

main change here is making the `zoom()` logic saner. the rest of the
changes are just small stuff which accumulated on my local branch.

pop() must not be called with NULL. and `zoom()` achieves this, but in a
very (unnecessarily) complicated way:

if c == NULL then nexttiled() will return NULL as well, so we enter this
branch:

       if (c == nexttiled(selmon-&gt;clients))

in here the !c check fails and the function returns before calling pop()

               if (!c || !(c = nexttiled(c-&gt;next)))
                       return;

however, none of this was needed. we can simply return early if c was NULL.
Also `c` is set to `selmon-&gt;sel` so we can use `c` in the first check
instead which makes things shorter.

</content>
</entry>
<entry>
<id>5b2e5e7a4001479e4dc3e245f96e49f7ea0da658</id>
<published>2022-07-29T23:26:04Z</published>
<updated>2022-08-02T16:08:51Z</updated>
<title>spawn: reduce 2 lines, change fprintf() + perror() + exit() to die(&quot;... :&quot;)</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/5b2e5e7a4001479e4dc3e245f96e49f7ea0da658.gph" />
<author>
<name>explosion-mental</name>
<email>[email protected]</email>
</author>
<content>commit 5b2e5e7a4001479e4dc3e245f96e49f7ea0da658
parent 786f6e2a6f8466ad94706781bc93bc6eb6e69512
Author: explosion-mental &lt;[email protected]&gt;
Date:   Fri, 29 Jul 2022 18:26:04 -0500

spawn: reduce 2 lines, change fprintf() + perror() + exit() to die(&quot;... :&quot;)

when calling die and the last character of the string corresponds to
&#39;:&#39;, die() will call perror(). See util.c

Also change EXIT_SUCCESS to EXIT_FAILURE

</content>
</entry>
<entry>
<id>786f6e2a6f8466ad94706781bc93bc6eb6e69512</id>
<published>2022-08-01T09:42:44Z</published>
<updated>2022-08-02T16:04:56Z</updated>
<title>unmanage: stop listening for events for unmanaged windows</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/786f6e2a6f8466ad94706781bc93bc6eb6e69512.gph" />
<author>
<name>Stein</name>
<email>[email protected]</email>
</author>
<content>commit 786f6e2a6f8466ad94706781bc93bc6eb6e69512
parent e03248a4d5feaaacb130416be6e467a04de81f78
Author: Stein &lt;[email protected]&gt;
Date:   Mon,  1 Aug 2022 11:42:44 +0200

unmanage: stop listening for events for unmanaged windows

This is in particular to avoid flickering in dwm (and high CPU usage)
when hovering the mouse over a tabbed window that was previously
managed by dwm.

Consider the following two scenarios:

1)

We start tabbed (window 0xc000003), tabbed is managed by the
window manager.
We start st being embedded into tabbed.

$ st -w 0xc000003

What happens here is that:
  - tabbed gets a MapRequest for the st window
  - tabbed reparents the st window
  - tabbed will receive X events for the window

The window manager will have no awareness of the st window and the
X server will not send X events to the window manager relating to
the st window.

There is no flickering or any other issues relating to focus.

2)

We start tabbed (window 0xc000003), tabbed is managed by the
window manager.
We start st as normal (window 0xd400005).

What happens here is that:
  - the window manager gets a MapRequest for the st window
  - dwm manages the st window as a normal client
  - dwm will receive X events for the window

Now we use xdotool to trigger a reparenting of the st window into
tabbed.

$ xdotool windowreparent 0xd400005 0xc000003

What happens here is that:
  - tabbed gets a MapRequest for the st window
  - tabbed reparents the st window
  - the window manager gets an UnmapNotify
  - the window manager no longer manages the st window
  - both the window manager and tabbed will receive X events
    for the st window

In dwm move the mouse cursor over the tabbed window.

What happens now is that:
  - dwm will receive a FocusIn event for the tabbed window
  - dwm will set input focus for the tabbed window
  - tabbed will receive a FocusIn event for the main window
  - tabbed will give focus to the window on the currently selected
    tab
  - which again triggers a FocusIn event which dwm receives
  - dwm determines that the window that the FocusIn event is for
    (0xd400005) is not the currently selected client (tabbed)
  - dwm sets input focus for the tabbed window
  - this causes an infinite loop as long as the mouse cursor hovers
    the tabbed window, resulting in flickering and high CPU usage

The fix here is to tell the X server that we are no longer interested
in receiving events for this window when the window manager stops
managing the window.

</content>
</entry>
<entry>
<id>e03248a4d5feaaacb130416be6e467a04de81f78</id>
<published>2022-07-22T07:18:52Z</published>
<updated>2022-07-22T07:18:52Z</updated>
<title>Revert &quot;do not call signal-unsafe function inside sighanlder&quot;</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/e03248a4d5feaaacb130416be6e467a04de81f78.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit e03248a4d5feaaacb130416be6e467a04de81f78
parent 6613d9f9a1a5630bab30bc2b70bdc793977073ee
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Fri, 22 Jul 2022 09:18:52 +0200

Revert &quot;do not call signal-unsafe function inside sighanlder&quot;

This reverts commit 6613d9f9a1a5630bab30bc2b70bdc793977073ee.

Discussed on the mailinglist:
https://lists.suckless.org/hackers/2207/18405.html

</content>
</entry>
<entry>
<id>6613d9f9a1a5630bab30bc2b70bdc793977073ee</id>
<published>2022-07-14T01:26:40Z</published>
<updated>2022-07-15T18:53:58Z</updated>
<title>do not call signal-unsafe function inside sighanlder</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/6613d9f9a1a5630bab30bc2b70bdc793977073ee.gph" />
<author>
<name>NRK</name>
<email>[email protected]</email>
</author>
<content>commit 6613d9f9a1a5630bab30bc2b70bdc793977073ee
parent 9bffa845faa181fb3afe05f3dc86ad79c80736be
Author: NRK &lt;[email protected]&gt;
Date:   Thu, 14 Jul 2022 07:26:40 +0600

do not call signal-unsafe function inside sighanlder

die() calls vprintf, fputc and exit; none of these are
async-signal-safe, see `man 7 signal-safety`.

</content>
</entry>
<entry>
<id>9bffa845faa181fb3afe05f3dc86ad79c80736be</id>
<published>2022-07-14T01:27:34Z</published>
<updated>2022-07-15T18:53:56Z</updated>
<title>use named parameter for func prototype</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/9bffa845faa181fb3afe05f3dc86ad79c80736be.gph" />
<author>
<name>NRK</name>
<email>[email protected]</email>
</author>
<content>commit 9bffa845faa181fb3afe05f3dc86ad79c80736be
parent d3f93c7c1a13a2a78f04fb41ad1935525df948db
Author: NRK &lt;[email protected]&gt;
Date:   Thu, 14 Jul 2022 07:27:34 +0600

use named parameter for func prototype

all the other prototypes use names.

</content>
</entry>
<entry>
<id>d3f93c7c1a13a2a78f04fb41ad1935525df948db</id>
<published>2022-05-10T17:07:56Z</published>
<updated>2022-05-10T17:07:56Z</updated>
<title>sync latest drw.{c,h} changes from dmenu</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/d3f93c7c1a13a2a78f04fb41ad1935525df948db.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit d3f93c7c1a13a2a78f04fb41ad1935525df948db
parent cd0773cee9bad694dc9a6b1355a32bbe61abadff
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Tue, 10 May 2022 19:07:56 +0200

sync latest drw.{c,h} changes from dmenu

</content>
</entry>
<entry>
<id>cd0773cee9bad694dc9a6b1355a32bbe61abadff</id>
<published>2022-05-01T16:37:54Z</published>
<updated>2022-05-01T16:37:54Z</updated>
<title>Makefile: add manual path for OpenBSD</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/cd0773cee9bad694dc9a6b1355a32bbe61abadff.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit cd0773cee9bad694dc9a6b1355a32bbe61abadff
parent 8b48e309735f5fe49d35f86e967f4b5dea2a2f2d
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Sun,  1 May 2022 18:37:54 +0200

Makefile: add manual path for OpenBSD

Reported by fossy &lt;[email protected]&gt;, thanks

</content>
</entry>
<entry>
<id>8b48e309735f5fe49d35f86e967f4b5dea2a2f2d</id>
<published>2022-04-26T08:42:23Z</published>
<updated>2022-04-26T13:50:55Z</updated>
<title>manage: Make sure c-&gt;isfixed is applied before floating checks</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/8b48e309735f5fe49d35f86e967f4b5dea2a2f2d.gph" />
<author>
<name>Chris Down</name>
<email>[email protected]</email>
</author>
<content>commit 8b48e309735f5fe49d35f86e967f4b5dea2a2f2d
parent a83dc2031050d786ddf5f329b57d658a931c94b7
Author: Chris Down &lt;[email protected]&gt;
Date:   Tue, 26 Apr 2022 09:42:23 +0100

manage: Make sure c-&gt;isfixed is applied before floating checks

Commit 8806b6e23793 (&quot;manage: propertynotify: Reduce cost of unused size
hints&quot;) mistakenly removed an early size hints update that&#39;s needed to
populate c-&gt;isfixed for floating checks at manage() time. This resulted
in fixed (size hint min dimensions == max dimensions) subset of windows
not floating when they should.

See https://lists.suckless.org/dev/2204/34730.html for discussion.

</content>
</entry>
<entry>
<id>a83dc2031050d786ddf5f329b57d658a931c94b7</id>
<published>2022-04-26T13:50:32Z</published>
<updated>2022-04-26T13:50:32Z</updated>
<title>LICENSE: add Chris Down</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/a83dc2031050d786ddf5f329b57d658a931c94b7.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit a83dc2031050d786ddf5f329b57d658a931c94b7
parent a4771de5ba54a38b062a7d748635f21c141b5c7e
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Tue, 26 Apr 2022 15:50:32 +0200

LICENSE: add Chris Down

</content>
</entry>
<entry>
<id>a4771de5ba54a38b062a7d748635f21c141b5c7e</id>
<published>2022-04-26T08:30:59Z</published>
<updated>2022-04-26T08:30:59Z</updated>
<title>Revert &quot;manage: For isfloating/oldstate check/set, ensure trans client actually exists&quot;</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/a4771de5ba54a38b062a7d748635f21c141b5c7e.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit a4771de5ba54a38b062a7d748635f21c141b5c7e
parent d93ff48803f04f1363bf303af1d7e6ccc5cb8d3f
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Tue, 26 Apr 2022 10:30:59 +0200

Revert &quot;manage: For isfloating/oldstate check/set, ensure trans client actually exists&quot;

This reverts commit bece862a0fc4fc18ef9065b18cd28e2032d0d975.

It caused a regression, for example:
https://lists.suckless.org/hackers/2203/18220.html

</content>
</entry>
<entry>
<id>d93ff48803f04f1363bf303af1d7e6ccc5cb8d3f</id>
<published>2022-02-21T14:58:28Z</published>
<updated>2022-04-16T14:59:03Z</updated>
<title>Update monitor positions also on removal</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/d93ff48803f04f1363bf303af1d7e6ccc5cb8d3f.gph" />
<author>
<name>Santtu Lakkala</name>
<email>[email protected]</email>
</author>
<content>commit d93ff48803f04f1363bf303af1d7e6ccc5cb8d3f
parent 8806b6e2379372900e3d9e0bf6604bc7f727350b
Author: Santtu Lakkala &lt;[email protected]&gt;
Date:   Mon, 21 Feb 2022 16:58:28 +0200

Update monitor positions also on removal

When monitors are removed, the coordinates of existing monitors may
change, if the removed monitors had smaller coordinates than the
remaining ones.

Remove special case handling so that the same update-if-necessary loop
is run also in the case when monitors are removed.

</content>
</entry>
<entry>
<id>8806b6e2379372900e3d9e0bf6604bc7f727350b</id>
<published>2022-03-17T15:56:13Z</published>
<updated>2022-04-16T14:37:46Z</updated>
<title>manage: propertynotify: Reduce cost of unused size hints</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/8806b6e2379372900e3d9e0bf6604bc7f727350b.gph" />
<author>
<name>Chris Down</name>
<email>[email protected]</email>
</author>
<content>commit 8806b6e2379372900e3d9e0bf6604bc7f727350b
parent bece862a0fc4fc18ef9065b18cd28e2032d0d975
Author: Chris Down &lt;[email protected]&gt;
Date:   Thu, 17 Mar 2022 15:56:13 +0000

manage: propertynotify: Reduce cost of unused size hints

This patch defers all size hint calculations until they are actually
needed, drastically reducing the number of calls to updatesizehints(),
which can be expensive when called repeatedly (as it currently is during
resizes).

In my unscientific testing this reduces calls to updatesizehints() by
over 90% during a typical work session. There are no functional changes
for users other than an increase in responsiveness after resizes and
a reduction in CPU time.

In slower environments or X servers, this patch also offers an
improvement in responsiveness that is often tangible after resizing a
client that changes hints during resizes.

There are two main motivations to defer this work to the time of hint
application:

1. Some clients, especially terminals using incremental size hints,
  resend XA_WM_NORMAL_HINTS events on resize to avoid fighting with the
  WM or mouse resizing. For example, some terminals like urxvt clear
  PBaseSize and PResizeInc during XResizeWindow and restore them
  afterwards.

  For this reason, after the resize is concluded, we typically receive
  a backlogged XA_WM_NORMAL_HINTS message for each update period with
  movement, which is useless. In some cases one may get hundreds or
  thousands of XA_WM_NORMAL_HINTS messages on large resizes, and
  currently all of these result in a separate updatesizehints() call,
  of which all but the final one are immediately outdated.

  (We can&#39;t just blindly discard these messages during resizes like we
  do for EnterNotify, because some of them might actually be for other
  windows, and may not be XA_WM_NORMAL_HINTS events.)

2. For users which use resizehints=0 most of these updates are unused
  anyway -- in the normal case where the client is not floating these
  values won&#39;t be used, so there&#39;s no need to calculate them up front.

A synthetic test using the mouse to resize a floating terminal window
from roughly 256x256 to 1024x1024 and back again shows that the number
of calls to updatesizehints() goes from over 500 before this patch (one
for each update interval with movement) to 2 after this patch (one for
each hint application), with no change in user visible behaviour.

This also reduces the delay before dwm is ready to process new events
again after a large resize on such a client, as it avoids the thundering
herd of updatesizehints() calls when hundreds of backlogged
XA_WM_NORMAL_HINTS messages appear at once after a resize is finished.

</content>
</entry>
<entry>
<id>bece862a0fc4fc18ef9065b18cd28e2032d0d975</id>
<published>2022-02-21T06:10:56Z</published>
<updated>2022-03-13T16:32:56Z</updated>
<title>manage: For isfloating/oldstate check/set, ensure trans client actually exists</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/bece862a0fc4fc18ef9065b18cd28e2032d0d975.gph" />
<author>
<name>Miles Alan</name>
<email>[email protected]</email>
</author>
<content>commit bece862a0fc4fc18ef9065b18cd28e2032d0d975
parent 60e9a14998bfe8666c641f7c27fec18e85ac7494
Author: Miles Alan &lt;[email protected]&gt;
Date:   Mon, 21 Feb 2022 01:10:56 -0500

manage: For isfloating/oldstate check/set, ensure trans client actually exists

In certain instances trans may be set to a window that doesn&#39;t actually
map to a client via wintoclient; in this case it doesn&#39;t make sense
to set isfloating/oldstate since trans is essentially invalid in that
case / correlates to the above condition check where trans is set /
XGetTransientForHint is called.

</content>
</entry>
<entry>
<id>60e9a14998bfe8666c641f7c27fec18e85ac7494</id>
<published>2022-03-11T14:40:05Z</published>
<updated>2022-03-13T09:49:43Z</updated>
<title>fix mem leak in cleanup()</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/60e9a14998bfe8666c641f7c27fec18e85ac7494.gph" />
<author>
<name>NRK</name>
<email>[email protected]</email>
</author>
<content>commit 60e9a14998bfe8666c641f7c27fec18e85ac7494
parent d39e2f3441fe18aba8d1a62c08918a411ec6f237
Author: NRK &lt;[email protected]&gt;
Date:   Fri, 11 Mar 2022 20:40:05 +0600

fix mem leak in cleanup()

maybe leak isn&#39;t the best word, given that the object lives for the
entire duration of the program&#39;s lifetime.

however, all elements of scheme are free-ed, can&#39;t think of any reason
why scheme itself should be an exception.

</content>
</entry>
<entry>
<id>d39e2f3441fe18aba8d1a62c08918a411ec6f237</id>
<published>2022-01-07T11:39:18Z</published>
<updated>2022-01-07T11:39:18Z</updated>
<title>bump version to 6.3</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/d39e2f3441fe18aba8d1a62c08918a411ec6f237.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit d39e2f3441fe18aba8d1a62c08918a411ec6f237
parent 8657affa2a61e85ca8df76b62e43cb02897d1d80
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Fri,  7 Jan 2022 12:39:18 +0100

bump version to 6.3

</content>
</entry>
<entry>
<id>8657affa2a61e85ca8df76b62e43cb02897d1d80</id>
<published>2021-12-18T16:58:23Z</published>
<updated>2021-12-19T15:16:30Z</updated>
<title>drawbar: Don&#39;t expend effort drawing bar if it is occluded</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/8657affa2a61e85ca8df76b62e43cb02897d1d80.gph" />
<author>
<name>Chris Down</name>
<email>[email protected]</email>
</author>
<content>commit 8657affa2a61e85ca8df76b62e43cb02897d1d80
parent a786211d6cb794fba0ea406d86002c7618998afc
Author: Chris Down &lt;[email protected]&gt;
Date:   Sat, 18 Dec 2021 16:58:23 +0000

drawbar: Don&#39;t expend effort drawing bar if it is occluded

I noticed that a non-trivial amount of dwm&#39;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-&gt;showbar when
updating the monitor bar margins, but don&#39;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&#39;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&#39;ll redraw the bar as normal as part of expose().

</content>
</entry>
<entry>
<id>a786211d6cb794fba0ea406d86002c7618998afc</id>
<published>2021-08-20T21:09:48Z</published>
<updated>2021-08-20T21:09:48Z</updated>
<title>Revert &quot;Improve speed of drw_text when provided with large strings&quot;</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/a786211d6cb794fba0ea406d86002c7618998afc.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit a786211d6cb794fba0ea406d86002c7618998afc
parent 716233534b35f74dba5a46ade8f1a6f8cc72fea4
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Fri, 20 Aug 2021 23:09:48 +0200

Revert &quot;Improve speed of drw_text when provided with large strings&quot;

This reverts commit 716233534b35f74dba5a46ade8f1a6f8cc72fea4.

It causes issues with truncation of characters when the text does not fit and
so on.  The patch should be reworked and properly tested.

</content>
</entry>
<entry>
<id>716233534b35f74dba5a46ade8f1a6f8cc72fea4</id>
<published>2021-08-09T16:24:14Z</published>
<updated>2021-08-09T16:25:19Z</updated>
<title>Improve speed of drw_text when provided with large strings</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/716233534b35f74dba5a46ade8f1a6f8cc72fea4.gph" />
<author>
<name>Miles Alan</name>
<email>[email protected]</email>
</author>
<content>commit 716233534b35f74dba5a46ade8f1a6f8cc72fea4
parent 138b405f0c8aa24d8a040cc1a1cf6e3eb5a0ebc7
Author: Miles Alan &lt;[email protected]&gt;
Date:   Mon,  9 Aug 2021 18:24:14 +0200

Improve speed of drw_text when provided with large strings

Calculates len &amp; ew in drw_font_getexts loop by incrementing instead of
decrementing; as such avoids proportional increase in time spent in loop
based on provided strings size.

</content>
</entry>
<entry>
<id>138b405f0c8aa24d8a040cc1a1cf6e3eb5a0ebc7</id>
<published>2021-07-12T21:44:16Z</published>
<updated>2021-07-14T09:26:37Z</updated>
<title>Add a configuration option for fullscreen locking</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/138b405f0c8aa24d8a040cc1a1cf6e3eb5a0ebc7.gph" />
<author>
<name>Quentin Rameau</name>
<email>[email protected]</email>
</author>
<content>commit 138b405f0c8aa24d8a040cc1a1cf6e3eb5a0ebc7
parent 67d76bdc68102df976177de351f65329d8683064
Author: Quentin Rameau &lt;[email protected]&gt;
Date:   Mon, 12 Jul 2021 23:44:16 +0200

Add a configuration option for fullscreen locking

Some people are annoyed to have this new behaviour forced for some
application which use fake fullscreen.

</content>
</entry>
<entry>
<id>67d76bdc68102df976177de351f65329d8683064</id>
<published>2020-07-02T19:18:30Z</published>
<updated>2021-03-29T17:16:27Z</updated>
<title>Do not allow focus to drift from fullscreen client via focusstack()</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/67d76bdc68102df976177de351f65329d8683064.gph" />
<author>
<name>Chris Down</name>
<email>[email protected]</email>
</author>
<content>commit 67d76bdc68102df976177de351f65329d8683064
parent 61bb8b2241d4db08bea4261c82e27cd9797099e7
Author: Chris Down &lt;[email protected]&gt;
Date:   Thu,  2 Jul 2020 20:18:30 +0100

Do not allow focus to drift from fullscreen client via focusstack()

It generally doesn&#39;t make much sense to allow focusstack() to navigate
away from the selected fullscreen client, as you can&#39;t even see which
client you&#39;re selecting behind it.

I have had this up for a while on the wiki as a separate patch[0], but
it seems reasonable to avoid this behaviour in dwm mainline, since I&#39;m
struggling to think of any reason to navigate away from a fullscreen
client other than a mistake.

0: https://dwm.suckless.org/patches/alwaysfullscreen/

</content>
</entry>
<entry>
<id>61bb8b2241d4db08bea4261c82e27cd9797099e7</id>
<published>2020-03-03T22:23:53Z</published>
<updated>2020-08-21T14:13:22Z</updated>
<title>Fix x coordinate calculation in buttonpress.</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/61bb8b2241d4db08bea4261c82e27cd9797099e7.gph" />
<author>
<name>Ian Remmler</name>
<email>[email protected]</email>
</author>
<content>commit 61bb8b2241d4db08bea4261c82e27cd9797099e7
parent bb2e7222baeec7776930354d0e9f210cc2aaad5f
Author: Ian Remmler &lt;[email protected]&gt;
Date:   Tue,  3 Mar 2020 16:23:53 -0600

Fix x coordinate calculation in buttonpress.

</content>
</entry>
<entry>
<id>bb2e7222baeec7776930354d0e9f210cc2aaad5f</id>
<published>2020-07-08T16:05:50Z</published>
<updated>2020-07-08T16:05:50Z</updated>
<title>dwm.1: fix wrong text in man page</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/bb2e7222baeec7776930354d0e9f210cc2aaad5f.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit bb2e7222baeec7776930354d0e9f210cc2aaad5f
parent f04cac6d6e39cd9e3fc4fae526e3d1e8df5e34b2
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Wed,  8 Jul 2020 18:05:50 +0200

dwm.1: fix wrong text in man page

</content>
</entry>
<entry>
<id>f04cac6d6e39cd9e3fc4fae526e3d1e8df5e34b2</id>
<published>2020-06-11T13:28:32Z</published>
<updated>2020-06-11T16:32:21Z</updated>
<title>Fix memory leaks in drw</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/f04cac6d6e39cd9e3fc4fae526e3d1e8df5e34b2.gph" />
<author>
<name>Alex Flierl</name>
<email>[email protected]</email>
</author>
<content>commit f04cac6d6e39cd9e3fc4fae526e3d1e8df5e34b2
parent f09418bbb6651ab4c299cfefbe1d18de401f630e
Author: Alex Flierl &lt;[email protected]&gt;
Date:   Thu, 11 Jun 2020 15:28:32 +0200

Fix memory leaks in drw

The function drw_fontset_free in drw.c was never called.

</content>
</entry>
<entry>
<id>f09418bbb6651ab4c299cfefbe1d18de401f630e</id>
<published>2020-04-23T07:50:54Z</published>
<updated>2020-04-25T11:31:02Z</updated>
<title>dwm crashes when opening 50+ clients (tile layout)</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/f09418bbb6651ab4c299cfefbe1d18de401f630e.gph" />
<author>
<name>bakkeby</name>
<email>[email protected]</email>
</author>
<content>commit f09418bbb6651ab4c299cfefbe1d18de401f630e
parent ed3ab6b4fceded0e9f2d22372df49a2bbd58de66
Author: bakkeby &lt;[email protected]&gt;
Date:   Thu, 23 Apr 2020 09:50:54 +0200

dwm crashes when opening 50+ clients (tile layout)

Many users new to dwm find themselves caught out by being kicked out to the login manager (dwm crashing) when they open 50+ clients for demonstration purposes. The number of clients reported varies depending on the resolution of the monitor.

The cause of this is due to how the default tile layout calculates the height of the next client based on the position of the previous client. Because clients have a minimum size the (ty) position can exceed that of the window height, resulting in (m-&gt;wh - ty) becoming negative. The negative height stored as an unsigned int results in a very large height ultimately resulting in dwm crashing.

This patch adds safeguards to prevent the ty and my positions from exceeding that of the window height.

</content>
</entry>
<entry>
<id>ed3ab6b4fceded0e9f2d22372df49a2bbd58de66</id>
<published>2020-04-22T14:48:27Z</published>
<updated>2020-04-22T18:33:39Z</updated>
<title>drawbar: Don&#39;t shadow sw global</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/ed3ab6b4fceded0e9f2d22372df49a2bbd58de66.gph" />
<author>
<name>Chris Down</name>
<email>[email protected]</email>
</author>
<content>commit ed3ab6b4fceded0e9f2d22372df49a2bbd58de66
parent f087d20e6e60a49c756936b4312f5d194d8e63b4
Author: Chris Down &lt;[email protected]&gt;
Date:   Wed, 22 Apr 2020 15:48:27 +0100

drawbar: Don&#39;t shadow sw global

This jarred me a bit while reading the code, since &quot;sw&quot; 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.

</content>
</entry>
<entry>
<id>f087d20e6e60a49c756936b4312f5d194d8e63b4</id>
<published>2020-04-22T14:48:08Z</published>
<updated>2020-04-22T18:33:26Z</updated>
<title>getatomprop: Add forward declaration</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/f087d20e6e60a49c756936b4312f5d194d8e63b4.gph" />
<author>
<name>Chris Down</name>
<email>[email protected]</email>
</author>
<content>commit f087d20e6e60a49c756936b4312f5d194d8e63b4
parent a8e9513783f335b1ac7255e40a663adfffc4b475
Author: Chris Down &lt;[email protected]&gt;
Date:   Wed, 22 Apr 2020 15:48:08 +0100

getatomprop: Add forward declaration

No functional changes, but for every other function we have a forward
declaration here. getatomprop should be no exception.

</content>
</entry>
<entry>
<id>a8e9513783f335b1ac7255e40a663adfffc4b475</id>
<published>2020-04-20T15:41:52Z</published>
<updated>2020-04-20T15:56:41Z</updated>
<title>setmfact: Unify bounds for compile-time and runtime mfact</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/a8e9513783f335b1ac7255e40a663adfffc4b475.gph" />
<author>
<name>Chris Down</name>
<email>[email protected]</email>
</author>
<content>commit a8e9513783f335b1ac7255e40a663adfffc4b475
parent c82db690cc0c4624dad4dc6ae899020799ec84db
Author: Chris Down &lt;[email protected]&gt;
Date:   Mon, 20 Apr 2020 16:41:52 +0100

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-&gt;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-&gt;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.

</content>
</entry>
<entry>
<id>c82db690cc0c4624dad4dc6ae899020799ec84db</id>
<published>2020-04-03T13:36:32Z</published>
<updated>2020-04-03T13:36:32Z</updated>
<title>config.mk: fix POSIX_C_SOURCE macro for feature test for snprintf()</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/c82db690cc0c4624dad4dc6ae899020799ec84db.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit c82db690cc0c4624dad4dc6ae899020799ec84db
parent cb3f58ad06993f7ef3a7d8f61468012e2b786cab
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Fri,  3 Apr 2020 15:36:32 +0200

config.mk: fix POSIX_C_SOURCE macro for feature test for snprintf()

The feature test was incorrect:
_POSIX_C_SOURCE=2

&quot;The value 2 or greater additionally exposes definitions for POSIX.2-1992.&quot;
http://man7.org/linux/man-pages/man7/feature_test_macros.7.html

A higher value is needed (atleast 1995):
https://pubs.opengroup.org/onlinepubs/9699919799/functions/snprintf.html

FreeBSD feature test macro:
on
https://github.com/freebsd/freebsd/blob/master/include/stdio.h line 297

This was already fixed in dmenu.

This fixes a warning on FreeBSD, reported by Plasmoduck on IRC, thanks.

</content>
</entry>
<entry>
<id>cb3f58ad06993f7ef3a7d8f61468012e2b786cab</id>
<published>2019-02-02T12:50:42Z</published>
<updated>2019-02-02T12:50:42Z</updated>
<title>Prepare 6.2 release.</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/cb3f58ad06993f7ef3a7d8f61468012e2b786cab.gph" />
<author>
<name>Anselm R Garbe</name>
<email>[email protected]</email>
</author>
<content>commit cb3f58ad06993f7ef3a7d8f61468012e2b786cab
parent b69c870a3076d78ab595ed1cd4b41cf6b03b2610
Author: Anselm R Garbe &lt;[email protected]&gt;
Date:   Sat,  2 Feb 2019 04:50:42 -0800

Prepare 6.2 release.

</content>
</entry>
<entry>
<id>b69c870a3076d78ab595ed1cd4b41cf6b03b2610</id>
<published>2018-06-02T15:15:42Z</published>
<updated>2018-06-02T15:15:42Z</updated>
<title>pledge: add rpath promise for the ugly Xft font fallback</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/b69c870a3076d78ab595ed1cd4b41cf6b03b2610.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit b69c870a3076d78ab595ed1cd4b41cf6b03b2610
parent e78b4a9207d92956cee3e5bc3f70b5acabe72e5c
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Sat,  2 Jun 2018 17:15:42 +0200

pledge: add rpath promise for the ugly Xft font fallback

</content>
</entry>
<entry>
<id>e78b4a9207d92956cee3e5bc3f70b5acabe72e5c</id>
<published>2018-06-02T15:04:44Z</published>
<updated>2018-06-02T15:10:28Z</updated>
<title>Makefile: just show the compiler output</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/e78b4a9207d92956cee3e5bc3f70b5acabe72e5c.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit e78b4a9207d92956cee3e5bc3f70b5acabe72e5c
parent 3cd4023fb35d0aeb6e888bfdc1845f2f0251ad20
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Sat,  2 Jun 2018 17:04:44 +0200

Makefile: just show the compiler output

Don&#39;t be fancy and just show the actual output so debugging is simpler.

</content>
</entry>
<entry>
<id>3cd4023fb35d0aeb6e888bfdc1845f2f0251ad20</id>
<published>2018-06-02T13:12:42Z</published>
<updated>2018-06-02T14:56:10Z</updated>
<title>Do not strip at link stage</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/3cd4023fb35d0aeb6e888bfdc1845f2f0251ad20.gph" />
<author>
<name>Klemens Nanni</name>
<email>[email protected]</email>
</author>
<content>commit 3cd4023fb35d0aeb6e888bfdc1845f2f0251ad20
parent f40f86fa873bc4acccdf3d929aa0f786993ae31d
Author: Klemens Nanni &lt;[email protected]&gt;
Date:   Sat,  2 Jun 2018 15:12:42 +0200

Do not strip at link stage

Building with debug symbols is worthless unless LDFLAGS are manually
adjusted as well.

</content>
</entry>
<entry>
<id>f40f86fa873bc4acccdf3d929aa0f786993ae31d</id>
<published>2018-05-25T05:56:27Z</published>
<updated>2018-05-25T09:49:30Z</updated>
<title>Pledge on OpenBSD</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/f40f86fa873bc4acccdf3d929aa0f786993ae31d.gph" />
<author>
<name>Klemens Nanni</name>
<email>[email protected]</email>
</author>
<content>commit f40f86fa873bc4acccdf3d929aa0f786993ae31d
parent c3a2e016bb65c00bd44b6461b1b1bbaa61f20093
Author: Klemens Nanni &lt;[email protected]&gt;
Date:   Fri, 25 May 2018 07:56:27 +0200

Pledge on OpenBSD

</content>
</entry>
<entry>
<id>c3a2e016bb65c00bd44b6461b1b1bbaa61f20093</id>
<published>2018-05-25T04:56:36Z</published>
<updated>2018-05-25T04:56:36Z</updated>
<title>config.def.h: ClkTagBar missing from comment</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/c3a2e016bb65c00bd44b6461b1b1bbaa61f20093.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit c3a2e016bb65c00bd44b6461b1b1bbaa61f20093
parent c8e9479186dd7e3a0d6dc938369ab3bf7dc4a1d0
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Fri, 25 May 2018 06:56:36 +0200

config.def.h: ClkTagBar missing from comment

by Christopher Drelich &lt;[email protected]&gt;

Patch was mangled on the ML, also adjusted the order to be the same as
the enum in dwm.c

</content>
</entry>
<entry>
<id>c8e9479186dd7e3a0d6dc938369ab3bf7dc4a1d0</id>
<published>2018-05-02T22:09:50Z</published>
<updated>2018-05-12T17:19:20Z</updated>
<title>Function declarations in correct order.</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/c8e9479186dd7e3a0d6dc938369ab3bf7dc4a1d0.gph" />
<author>
<name>Christopher Drelich</name>
<email>[email protected]</email>
</author>
<content>commit c8e9479186dd7e3a0d6dc938369ab3bf7dc4a1d0
parent 10dfa65860d770cbce2cdaf67618f44f726a27c3
Author: Christopher Drelich &lt;[email protected]&gt;
Date:   Wed,  2 May 2018 18:09:50 -0400

Function declarations in correct order.

In dwm.c function declarations are in alphabetical order except for
updategeom(). There doesn&#39;t appear to be any reason for this, so this
patch corrects that, and now all function declarations are in
alphabetical order.

</content>
</entry>
<entry>
<id>10dfa65860d770cbce2cdaf67618f44f726a27c3</id>
<published>2018-05-12T17:14:19Z</published>
<updated>2018-05-12T17:14:19Z</updated>
<title>remove old TODO and BUGS entries</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/10dfa65860d770cbce2cdaf67618f44f726a27c3.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 10dfa65860d770cbce2cdaf67618f44f726a27c3
parent 3bd8466e93b2c81be86e67c6ecdda4e1d240fe4b
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Sat, 12 May 2018 19:14:19 +0200

remove old TODO and BUGS entries

the bug in the dwm man page is an (ancient) Java issue.

Thanks David and quinq for the patches and feedback!

</content>
</entry>
<entry>
<id>3bd8466e93b2c81be86e67c6ecdda4e1d240fe4b</id>
<published>2018-03-14T20:03:11Z</published>
<updated>2018-03-14T20:03:11Z</updated>
<title>update README: remove mentioning the old dextra repo</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/3bd8466e93b2c81be86e67c6ecdda4e1d240fe4b.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 3bd8466e93b2c81be86e67c6ecdda4e1d240fe4b
parent 76c8c16d79d4fd2a3e776800637d211e4dc8e50a
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Wed, 14 Mar 2018 21:03:11 +0100

update README: remove mentioning the old dextra repo

Thanks Christopher Drelich &lt;[email protected]&gt;

</content>
</entry>
<entry>
<id>76c8c16d79d4fd2a3e776800637d211e4dc8e50a</id>
<published>2018-03-14T17:58:06Z</published>
<updated>2018-03-14T20:02:06Z</updated>
<title>All functions in alphabetical order except for this one.</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/76c8c16d79d4fd2a3e776800637d211e4dc8e50a.gph" />
<author>
<name>Christopher Drelich</name>
<email>[email protected]</email>
</author>
<content>commit 76c8c16d79d4fd2a3e776800637d211e4dc8e50a
parent 3cb34830eb25ebda15a23d8391fd69cddb4fc024
Author: Christopher Drelich &lt;[email protected]&gt;
Date:   Wed, 14 Mar 2018 13:58:06 -0400

All functions in alphabetical order except for this one.

</content>
</entry>
<entry>
<id>3cb34830eb25ebda15a23d8391fd69cddb4fc024</id>
<published>2018-03-14T16:44:53Z</published>
<updated>2018-03-14T16:46:48Z</updated>
<title>ColBorder has been moved to the enum with ColFg and ColBg.</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/3cb34830eb25ebda15a23d8391fd69cddb4fc024.gph" />
<author>
<name>Christopher Drelich</name>
<email>[email protected]</email>
</author>
<content>commit 3cb34830eb25ebda15a23d8391fd69cddb4fc024
parent db2236001c1cb042a2f24052849da96578273b1c
Author: Christopher Drelich &lt;[email protected]&gt;
Date:   Wed, 14 Mar 2018 17:44:53 +0100

ColBorder has been moved to the enum with ColFg and ColBg.

</content>
</entry>
<entry>
<id>db2236001c1cb042a2f24052849da96578273b1c</id>
<published>2017-12-27T12:36:53Z</published>
<updated>2017-12-27T12:36:53Z</updated>
<title>dont NUL terminate _NET_WM_NAME</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/db2236001c1cb042a2f24052849da96578273b1c.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit db2236001c1cb042a2f24052849da96578273b1c
parent 3756f7f6b8dccf7a31789ffaf073a76fd1a87eb9
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Wed, 27 Dec 2017 13:36:53 +0100

dont NUL terminate _NET_WM_NAME

Reported by Kernc, thanks!

&quot;This makes a particular program that uses libwnck [1] fail after:

   Wnck-WARNING **: Property _NET_WM_NAME contained invalid UTF-8

in this code [2] because the returned string contains a &#39;\0&#39; and the
documentation for g_utf8_validate() [3] explicitly states that when
string length is provided, no nul bytes are allowed.&quot;

It is not entirely clear it is incorrect, other WM&#39;s seem to not
NUL terminate it either though.

</content>
</entry>
<entry>
<id>3756f7f6b8dccf7a31789ffaf073a76fd1a87eb9</id>
<published>2017-11-03T20:20:48Z</published>
<updated>2017-11-03T20:20:48Z</updated>
<title>sync dmenu drw.{c,h} code: use Clr* (was Scm)</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/3756f7f6b8dccf7a31789ffaf073a76fd1a87eb9.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 3756f7f6b8dccf7a31789ffaf073a76fd1a87eb9
parent 99f78fa553f9ddb23fab73e47a408d66ca7f974c
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Fri,  3 Nov 2017 21:20:48 +0100

sync dmenu drw.{c,h} code: use Clr* (was Scm)

</content>
</entry>
<entry>
<id>99f78fa553f9ddb23fab73e47a408d66ca7f974c</id>
<published>2017-11-03T15:36:32Z</published>
<updated>2017-11-03T20:14:58Z</updated>
<title>gettextprop: check result of XGetTextProperty (undefined behaviour for XFree)</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/99f78fa553f9ddb23fab73e47a408d66ca7f974c.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 99f78fa553f9ddb23fab73e47a408d66ca7f974c
parent a9b6a312a77b9cc81ca8b08a95c09e9f7948d7a6
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Fri,  3 Nov 2017 16:36:32 +0100

gettextprop: check result of XGetTextProperty (undefined behaviour for XFree)

</content>
</entry>
<entry>
<id>a9b6a312a77b9cc81ca8b08a95c09e9f7948d7a6</id>
<published>2017-11-03T16:58:38Z</published>
<updated>2017-11-03T19:40:34Z</updated>
<title>Set class name on status bar</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/a9b6a312a77b9cc81ca8b08a95c09e9f7948d7a6.gph" />
<author>
<name>Omar Sandoval</name>
<email>[email protected]</email>
</author>
<content>commit a9b6a312a77b9cc81ca8b08a95c09e9f7948d7a6
parent 6aa8e37efe22c8a2a7713d9a437491c564c04b7e
Author: Omar Sandoval &lt;[email protected]&gt;
Date:   Fri,  3 Nov 2017 09:58:38 -0700

Set class name on status bar

This is useful for configuring compositors to ignore the status bar
window.

</content>
</entry>
<entry>
<id>6aa8e37efe22c8a2a7713d9a437491c564c04b7e</id>
<published>2017-10-10T21:10:45Z</published>
<updated>2017-10-11T07:46:28Z</updated>
<title>simplify isfixed conditions</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/6aa8e37efe22c8a2a7713d9a437491c564c04b7e.gph" />
<author>
<name>Daniel Cousens</name>
<email>[email protected]</email>
</author>
<content>commit 6aa8e37efe22c8a2a7713d9a437491c564c04b7e
parent ceac8c91ff3bf45ae53135658d6f560cb2335133
Author: Daniel Cousens &lt;[email protected]&gt;
Date:   Wed, 11 Oct 2017 08:10:45 +1100

simplify isfixed conditions

</content>
</entry>
<entry>
<id>ceac8c91ff3bf45ae53135658d6f560cb2335133</id>
<published>2017-05-08T19:08:27Z</published>
<updated>2017-05-08T19:08:27Z</updated>
<title>yet another cleanup</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/ceac8c91ff3bf45ae53135658d6f560cb2335133.gph" />
<author>
<name>Anselm R Garbe</name>
<email>[email protected]</email>
</author>
<content>commit ceac8c91ff3bf45ae53135658d6f560cb2335133
parent 5b238c8dab945023b6a16a6c9f642b11137f2204
Author: Anselm R Garbe &lt;[email protected]&gt;
Date:   Mon,  8 May 2017 21:08:27 +0200

yet another cleanup

The previous patches introduced some unclean space-based indentation
patterns. This patch fixes them.

</content>
</entry>
<entry>
<id>5b238c8dab945023b6a16a6c9f642b11137f2204</id>
<published>2017-01-07T16:21:30Z</published>
<updated>2017-03-28T18:23:38Z</updated>
<title>Don&#39;t restrict snap in mousemove</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/5b238c8dab945023b6a16a6c9f642b11137f2204.gph" />
<author>
<name>Markus Teich</name>
<email>[email protected]</email>
</author>
<content>commit 5b238c8dab945023b6a16a6c9f642b11137f2204
parent 022d07605412bc5bd9726f74af9355c562ba4957
Author: Markus Teich &lt;[email protected]&gt;
Date:   Sat,  7 Jan 2017 17:21:30 +0100

Don&#39;t restrict snap in mousemove

This also fixes a bug where client windows only switch to floating mode when the
mouse is dragged in one specific direction.

</content>
</entry>
<entry>
<id>022d07605412bc5bd9726f74af9355c562ba4957</id>
<published>2017-01-07T16:21:29Z</published>
<updated>2017-03-28T18:23:34Z</updated>
<title>Button passthrough when client is not focused</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/022d07605412bc5bd9726f74af9355c562ba4957.gph" />
<author>
<name>Markus Teich</name>
<email>[email protected]</email>
</author>
<content>commit 022d07605412bc5bd9726f74af9355c562ba4957
parent 2952b68db88f38be8d34b80c7a7d2c7eb5b2484d
Author: Markus Teich &lt;[email protected]&gt;
Date:   Sat,  7 Jan 2017 17:21:29 +0100

Button passthrough when client is not focused

Before this change it is not possible to press a button in a client on the first
click if the client is not yet focused. The first click on the button would
only focus the client and a second click on the button is needed to activate it.
This situation can occur when moving the mouse over a client (therefore focusing
it) and then moving the focus to another client with keyboard shortcuts.

After this commit the behavior is fixed and button presses on unfocused clients
are passed to the client correctly.

</content>
</entry>
<entry>
<id>2952b68db88f38be8d34b80c7a7d2c7eb5b2484d</id>
<published>2017-01-07T16:21:28Z</published>
<updated>2017-03-28T18:23:28Z</updated>
<title>cleanup</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/2952b68db88f38be8d34b80c7a7d2c7eb5b2484d.gph" />
<author>
<name>Markus Teich</name>
<email>[email protected]</email>
</author>
<content>commit 2952b68db88f38be8d34b80c7a7d2c7eb5b2484d
parent bb3bd6fec37174e8d4bb9457ca815c00609e5157
Author: Markus Teich &lt;[email protected]&gt;
Date:   Sat,  7 Jan 2017 17:21:28 +0100

cleanup

- unify multi-line expression alignment style.
- unify multi-line function call alignment style.
- simplify client moving on monitor count decrease.
- clarify comment for focusin().
- remove old confusing comment about input focus fix in focusmon(). The
 explanation is already in the old commit message, so no need to keep it in the
 code.
- remove old comment describing even older state of the code in focus().
- unify comment style.
- break up some long lines.
- fix some typos and grammar.

</content>
</entry>
<entry>
<id>bb3bd6fec37174e8d4bb9457ca815c00609e5157</id>
<published>2016-12-05T09:16:46Z</published>
<updated>2016-12-05T09:16:46Z</updated>
<title>applied Markus&#39; tagset purge of alternative view on _NET_ACTIVE_WINDOW event</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/bb3bd6fec37174e8d4bb9457ca815c00609e5157.gph" />
<author>
<name>Anselm R Garbe</name>
<email>[email protected]</email>
</author>
<content>commit bb3bd6fec37174e8d4bb9457ca815c00609e5157
parent e63bf229485a576d68975dd4eb00c210394133ae
Author: Anselm R Garbe &lt;[email protected]&gt;
Date:   Mon,  5 Dec 2016 10:16:46 +0100

applied Markus&#39; tagset purge of alternative view on _NET_ACTIVE_WINDOW event

</content>
</entry>
<entry>
<id>e63bf229485a576d68975dd4eb00c210394133ae</id>
<published>2016-12-05T09:09:49Z</published>
<updated>2016-12-05T09:09:49Z</updated>
<title>applied Ivan Delalande&#39;s NET_SUPPORTING_WM_CHECK patch for gtk3 compatibility</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/e63bf229485a576d68975dd4eb00c210394133ae.gph" />
<author>
<name>Anselm R Garbe</name>
<email>[email protected]</email>
</author>
<content>commit e63bf229485a576d68975dd4eb00c210394133ae
parent 5376947571040a4654384ea8889a54cc2313cca7
Author: Anselm R Garbe &lt;[email protected]&gt;
Date:   Mon,  5 Dec 2016 10:09:49 +0100

applied Ivan Delalande&#39;s NET_SUPPORTING_WM_CHECK patch for gtk3 compatibility

</content>
</entry>
<entry>
<id>5376947571040a4654384ea8889a54cc2313cca7</id>
<published>2016-12-05T09:05:00Z</published>
<updated>2016-12-05T09:05:00Z</updated>
<title>applied Ian Remmler&#39;s man page adjustment suggestions</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/5376947571040a4654384ea8889a54cc2313cca7.gph" />
<author>
<name>Anselm R Garbe</name>
<email>[email protected]</email>
</author>
<content>commit 5376947571040a4654384ea8889a54cc2313cca7
parent 975c8983762246b50026d43079c60a78b341f81c
Author: Anselm R Garbe &lt;[email protected]&gt;
Date:   Mon,  5 Dec 2016 10:05:00 +0100

applied Ian Remmler&#39;s man page adjustment suggestions

</content>
</entry>
<entry>
<id>975c8983762246b50026d43079c60a78b341f81c</id>
<published>2016-12-05T09:01:33Z</published>
<updated>2016-12-05T09:01:33Z</updated>
<title>applied Markus&#39; decouple color-scheme patch</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/975c8983762246b50026d43079c60a78b341f81c.gph" />
<author>
<name>Anselm R Garbe</name>
<email>[email protected]</email>
</author>
<content>commit 975c8983762246b50026d43079c60a78b341f81c
parent a137a86a234476bc3c7128fecbf845e6fc1de995
Author: Anselm R Garbe &lt;[email protected]&gt;
Date:   Mon,  5 Dec 2016 10:01:33 +0100

applied Markus&#39; decouple color-scheme patch

</content>
</entry>
<entry>
<id>a137a86a234476bc3c7128fecbf845e6fc1de995</id>
<published>2016-12-05T08:54:20Z</published>
<updated>2016-12-05T08:54:20Z</updated>
<title>applied Markus&#39; clarify status text padding patch</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/a137a86a234476bc3c7128fecbf845e6fc1de995.gph" />
<author>
<name>Anselm R Garbe</name>
<email>[email protected]</email>
</author>
<content>commit a137a86a234476bc3c7128fecbf845e6fc1de995
parent 839c7f6939368fe5784058975ee95062cc88d4c3
Author: Anselm R Garbe &lt;[email protected]&gt;
Date:   Mon,  5 Dec 2016 09:54:20 +0100

applied Markus&#39; clarify status text padding patch

</content>
</entry>
<entry>
<id>839c7f6939368fe5784058975ee95062cc88d4c3</id>
<published>2016-11-14T10:49:17Z</published>
<updated>2016-11-15T16:35:33Z</updated>
<title>LICENSE: update people</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/839c7f6939368fe5784058975ee95062cc88d4c3.gph" />
<author>
<name>Quentin Rameau</name>
<email>[email protected]</email>
</author>
<content>commit 839c7f6939368fe5784058975ee95062cc88d4c3
parent 7a59cd14573b2ead4e69a609e27992f0b7493b19
Author: Quentin Rameau &lt;[email protected]&gt;
Date:   Mon, 14 Nov 2016 11:49:17 +0100

LICENSE: update people

</content>
</entry>
<entry>
<id>7a59cd14573b2ead4e69a609e27992f0b7493b19</id>
<published>2016-11-14T10:18:27Z</published>
<updated>2016-11-15T16:35:30Z</updated>
<title>dwm.1: add keybinding for spawning dmenu</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/7a59cd14573b2ead4e69a609e27992f0b7493b19.gph" />
<author>
<name>Quentin Rameau</name>
<email>[email protected]</email>
</author>
<content>commit 7a59cd14573b2ead4e69a609e27992f0b7493b19
parent 24849acada79977cea6acd2d8741d2bd00891ff6
Author: Quentin Rameau &lt;[email protected]&gt;
Date:   Mon, 14 Nov 2016 11:18:27 +0100

dwm.1: add keybinding for spawning dmenu

</content>
</entry>
<entry>
<id>24849acada79977cea6acd2d8741d2bd00891ff6</id>
<published>2016-11-05T10:34:52Z</published>
<updated>2016-11-05T10:34:52Z</updated>
<title>die() on calloc failure</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/24849acada79977cea6acd2d8741d2bd00891ff6.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 24849acada79977cea6acd2d8741d2bd00891ff6
parent ab9571bbc5f6fb04fd583238a665a7e830fc1397
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Sat,  5 Nov 2016 11:34:52 +0100

die() on calloc failure

thanks Markus Teich and David!

</content>
</entry>
<entry>
<id>ab9571bbc5f6fb04fd583238a665a7e830fc1397</id>
<published>2016-08-12T12:35:25Z</published>
<updated>2016-08-12T12:36:35Z</updated>
<title>die() consistency: always add newline</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/ab9571bbc5f6fb04fd583238a665a7e830fc1397.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit ab9571bbc5f6fb04fd583238a665a7e830fc1397
parent 56a31dc4a7be459e3a1ea06d45427e1a4087a1a6
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Fri, 12 Aug 2016 14:35:25 +0200

die() consistency: always add newline

</content>
</entry>
<entry>
<id>56a31dc4a7be459e3a1ea06d45427e1a4087a1a6</id>
<published>2016-06-28T16:04:56Z</published>
<updated>2016-06-28T16:04:56Z</updated>
<title>config.def.h: style improvement, use color Scheme enum</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/56a31dc4a7be459e3a1ea06d45427e1a4087a1a6.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 56a31dc4a7be459e3a1ea06d45427e1a4087a1a6
parent 7af4d439bdb5a2e40aca69446a3367bd71431c45
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Tue, 28 Jun 2016 18:04:56 +0200

config.def.h: style improvement, use color Scheme enum

</content>
</entry>
<entry>
<id>7af4d439bdb5a2e40aca69446a3367bd71431c45</id>
<published>2016-05-22T20:33:56Z</published>
<updated>2016-06-26T11:52:36Z</updated>
<title>import new drw from libsl and minor fixes.</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/7af4d439bdb5a2e40aca69446a3367bd71431c45.gph" />
<author>
<name>Markus Teich</name>
<email>[email protected]</email>
</author>
<content>commit 7af4d439bdb5a2e40aca69446a3367bd71431c45
parent cd2d7549b3ae5ec234b45d85608f79f4d3aaa851
Author: Markus Teich &lt;[email protected]&gt;
Date:   Sun, 22 May 2016 22:33:56 +0200

import new drw from libsl and minor fixes.

- better scaling for occupied tag squares.
- draw statusline first to omitt some complicated calculations.

</content>
</entry>
<entry>
<id>cd2d7549b3ae5ec234b45d85608f79f4d3aaa851</id>
<published>2016-05-25T23:33:11Z</published>
<updated>2016-06-24T03:38:58Z</updated>
<title>Configure geometry before applying rules</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/cd2d7549b3ae5ec234b45d85608f79f4d3aaa851.gph" />
<author>
<name>Eric Pruitt</name>
<email>[email protected]</email>
</author>
<content>commit cd2d7549b3ae5ec234b45d85608f79f4d3aaa851
parent 3465bed290abc62cb2e69a8096084ba6b8eb4956
Author: Eric Pruitt &lt;[email protected]&gt;
Date:   Wed, 25 May 2016 16:33:11 -0700

Configure geometry before applying rules

Configuring geometry before applying rules makes it possible to have
more complex constraints in applyrules that depend on the initial window
dimensions and location.

</content>
</entry>
<entry>
<id>3465bed290abc62cb2e69a8096084ba6b8eb4956</id>
<published>2015-12-19T19:25:26Z</published>
<updated>2015-12-19T19:25:26Z</updated>
<title>fix fullscreen clients not resized on X display resolution change</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/3465bed290abc62cb2e69a8096084ba6b8eb4956.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 3465bed290abc62cb2e69a8096084ba6b8eb4956
parent 4ec3a673ff81275a9157d6801ea4a2b17031e5ba
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Sat, 19 Dec 2015 20:25:26 +0100

fix fullscreen clients not resized on X display resolution change

patch provided by Bert Münnich &lt;ber.t_AT_posteo.de&gt;, thanks!

</content>
</entry>
<entry>
<id>4ec3a673ff81275a9157d6801ea4a2b17031e5ba</id>
<published>2015-12-19T19:04:19Z</published>
<updated>2015-12-19T19:20:26Z</updated>
<title>Shut up glibc about _BSD_SOURCE being deprecated</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/4ec3a673ff81275a9157d6801ea4a2b17031e5ba.gph" />
<author>
<name>Quentin Rameau</name>
<email>[email protected]</email>
</author>
<content>commit 4ec3a673ff81275a9157d6801ea4a2b17031e5ba
parent 5ed9c481968a45f5032f1011d92ab8d5237aeba1
Author: Quentin Rameau &lt;[email protected]&gt;
Date:   Sat, 19 Dec 2015 20:04:19 +0100

Shut up glibc about _BSD_SOURCE being deprecated

</content>
</entry>
<entry>
<id>5ed9c481968a45f5032f1011d92ab8d5237aeba1</id>
<published>2015-11-08T22:11:48Z</published>
<updated>2015-11-08T22:11:48Z</updated>
<title>code-style consistency</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/5ed9c481968a45f5032f1011d92ab8d5237aeba1.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 5ed9c481968a45f5032f1011d92ab8d5237aeba1
parent 3c91283ede911916452345d545435b08dce9d556
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Sun,  8 Nov 2015 23:11:48 +0100

code-style consistency

</content>
</entry>
<entry>
<id>3c91283ede911916452345d545435b08dce9d556</id>
<published>2015-11-08T21:48:43Z</published>
<updated>2015-11-08T21:48:43Z</updated>
<title>unboolification</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/3c91283ede911916452345d545435b08dce9d556.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 3c91283ede911916452345d545435b08dce9d556
parent e941181f464e43765bab98509ef6524e688a46ff
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Sun,  8 Nov 2015 22:48:43 +0100

unboolification

</content>
</entry>
<entry>
<id>e941181f464e43765bab98509ef6524e688a46ff</id>
<published>2015-11-08T19:38:00Z</published>
<updated>2015-11-08T19:38:00Z</updated>
<title>sort include + whitespace fix</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/e941181f464e43765bab98509ef6524e688a46ff.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit e941181f464e43765bab98509ef6524e688a46ff
parent 43e82adf0dc37411fdcc6406b3cdf5d572387b9f
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Sun,  8 Nov 2015 20:38:00 +0100

sort include + whitespace fix

</content>
</entry>
<entry>
<id>43e82adf0dc37411fdcc6406b3cdf5d572387b9f</id>
<published>2015-11-07T13:04:49Z</published>
<updated>2015-11-08T19:35:25Z</updated>
<title>separate program-specific c99 bool and X11</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/43e82adf0dc37411fdcc6406b3cdf5d572387b9f.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 43e82adf0dc37411fdcc6406b3cdf5d572387b9f
parent 42cf1c7d8f94e1c51a71761ab24414c2f49dac26
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Sat,  7 Nov 2015 14:04:49 +0100

separate program-specific c99 bool and X11

True, False are X11-specific (int), make sure to use c99 stdbool for
program-specific things.

</content>
</entry>
<entry>
<id>42cf1c7d8f94e1c51a71761ab24414c2f49dac26</id>
<published>2015-11-08T15:52:53Z</published>
<updated>2015-11-08T15:52:53Z</updated>
<title>Makefile: package all files with make dist</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/42cf1c7d8f94e1c51a71761ab24414c2f49dac26.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 42cf1c7d8f94e1c51a71761ab24414c2f49dac26
parent dce4fb373757727374d00c857ec0dfd225bbeafd
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Sun,  8 Nov 2015 16:52:53 +0100

Makefile: package all files with make dist

</content>
</entry>
<entry>
<id>dce4fb373757727374d00c857ec0dfd225bbeafd</id>
<published>2015-11-07T13:09:08Z</published>
<updated>2015-11-07T13:31:21Z</updated>
<title>setfullscreen: don&#39;t process the property twice</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/dce4fb373757727374d00c857ec0dfd225bbeafd.gph" />
<author>
<name>Quentin Rameau</name>
<email>[email protected]</email>
</author>
<content>commit dce4fb373757727374d00c857ec0dfd225bbeafd
parent 646b351cc79845f4cc77415dfff474b9ae0053d9
Author: Quentin Rameau &lt;[email protected]&gt;
Date:   Sat,  7 Nov 2015 14:09:08 +0100

setfullscreen: don&#39;t process the property twice

Some clients try to set _NET_WM_STATE_FULLSCREEN even when the window is
already in fullscreen.
For example, c-&gt;oldstate was set two times in a raw and window would
then always be floating.
We must check that it&#39;s not the case before processing it.
(original patch modified with suggestion from Markus Teich
&lt;[email protected]&gt;)

</content>
</entry>
<entry>
<id>646b351cc79845f4cc77415dfff474b9ae0053d9</id>
<published>2015-10-20T21:34:49Z</published>
<updated>2015-10-20T21:38:31Z</updated>
<title>sync updated drw code from dmenu</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/646b351cc79845f4cc77415dfff474b9ae0053d9.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 646b351cc79845f4cc77415dfff474b9ae0053d9
parent e3b7e1d620e18818222c1e5033356ae29dd49e7f
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Tue, 20 Oct 2015 23:34:49 +0200

sync updated drw code from dmenu

important:
- drw_rect: didn&#39;t use w and h, change the dwm code accordingly.
- drw_text: text is NULL is not allowed, use drw_rect().

</content>
</entry>
<entry>
<id>e3b7e1d620e18818222c1e5033356ae29dd49e7f</id>
<published>2015-10-20T21:30:31Z</published>
<updated>2015-10-20T21:38:31Z</updated>
<title>dwm: use ecalloc, prevent theoretical overflow</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/e3b7e1d620e18818222c1e5033356ae29dd49e7f.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit e3b7e1d620e18818222c1e5033356ae29dd49e7f
parent 04db03a4e69eba88c56c12128340125fb0ef1960
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Tue, 20 Oct 2015 23:30:31 +0200

dwm: use ecalloc, prevent theoretical overflow

</content>
</entry>
<entry>
<id>04db03a4e69eba88c56c12128340125fb0ef1960</id>
<published>2015-10-20T21:28:30Z</published>
<updated>2015-10-20T21:38:20Z</updated>
<title>cleanup, dont use c++ style comments</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/04db03a4e69eba88c56c12128340125fb0ef1960.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 04db03a4e69eba88c56c12128340125fb0ef1960
parent 4a4817b3aa84ac61d6071674d3bbc1af7f69cdb7
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Tue, 20 Oct 2015 23:28:30 +0200

cleanup, dont use c++ style comments

- signal: print error string.
- die: start message with lower-case (consistency).
- bump version to 2015.

</content>
</entry>
<entry>
<id>4a4817b3aa84ac61d6071674d3bbc1af7f69cdb7</id>
<published>2015-10-20T21:27:31Z</published>
<updated>2015-10-20T21:27:31Z</updated>
<title>dwm: cleanup: free schemes and cursors as array</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/4a4817b3aa84ac61d6071674d3bbc1af7f69cdb7.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 4a4817b3aa84ac61d6071674d3bbc1af7f69cdb7
parent 7e1182ce555985ff2c5860d88403888eabc6ee4b
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Tue, 20 Oct 2015 23:27:31 +0200

dwm: cleanup: free schemes and cursors as array

</content>
</entry>
<entry>
<id>7e1182ce555985ff2c5860d88403888eabc6ee4b</id>
<published>2015-10-20T21:10:54Z</published>
<updated>2015-10-20T21:10:54Z</updated>
<title>config.h: use common default font, pass Xft font name to dmenu</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/7e1182ce555985ff2c5860d88403888eabc6ee4b.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 7e1182ce555985ff2c5860d88403888eabc6ee4b
parent 40529e1469b399114048185e1d5b7237b1cc7f3e
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Tue, 20 Oct 2015 23:10:54 +0200

config.h: use common default font, pass Xft font name to dmenu

dmenu uses Xft now (soon to be released).

</content>
</entry>
<entry>
<id>40529e1469b399114048185e1d5b7237b1cc7f3e</id>
<published>2015-10-20T21:01:49Z</published>
<updated>2015-10-20T21:01:49Z</updated>
<title>config.mk: add $FREETYPELIBS and $FREETYPEINC, simpler to override (ports and *BSDs)</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/40529e1469b399114048185e1d5b7237b1cc7f3e.gph" />
<author>
<name>Hiltjo Posthuma</name>
<email>[email protected]</email>
</author>
<content>commit 40529e1469b399114048185e1d5b7237b1cc7f3e
parent 14343e69cc596b847f71f1e825d3019ab1a29aa8
Author: Hiltjo Posthuma &lt;[email protected]&gt;
Date:   Tue, 20 Oct 2015 23:01:49 +0200

config.mk: add $FREETYPELIBS and $FREETYPEINC, simpler to override (ports and *BSDs)

</content>
</entry>
<entry>
<id>14343e69cc596b847f71f1e825d3019ab1a29aa8</id>
<published>2015-03-06T04:26:11Z</published>
<updated>2015-03-13T20:44:22Z</updated>
<title>Add Xft and follback-fonts support to graphics lib</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/14343e69cc596b847f71f1e825d3019ab1a29aa8.gph" />
<author>
<name>Eric Pruitt</name>
<email>[email protected]</email>
</author>
<content>commit 14343e69cc596b847f71f1e825d3019ab1a29aa8
parent 35db6d8afc3fd9f80166feac6c1e4adf71d553c3
Author: Eric Pruitt &lt;[email protected]&gt;
Date:   Thu,  5 Mar 2015 20:26:11 -0800

Add Xft and follback-fonts support to graphics lib

</content>
</entry>
<entry>
<id>35db6d8afc3fd9f80166feac6c1e4adf71d553c3</id>
<published>2014-11-23T14:25:35Z</published>
<updated>2014-11-23T14:25:35Z</updated>
<title>removed .hgtags, thanks Dimitris for spotting</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/35db6d8afc3fd9f80166feac6c1e4adf71d553c3.gph" />
<author>
<name>Anselm R Garbe</name>
<email>[email protected]</email>
</author>
<content>commit 35db6d8afc3fd9f80166feac6c1e4adf71d553c3
parent 3d1090ba896319368c4771b88d325fcee368a608
Author: Anselm R Garbe &lt;[email protected]&gt;
Date:   Sun, 23 Nov 2014 15:25:35 +0100

removed .hgtags, thanks Dimitris for spotting

</content>
</entry>
<entry>
<id>3d1090ba896319368c4771b88d325fcee368a608</id>
<published>2014-08-11T05:24:29Z</published>
<updated>2014-08-11T05:24:29Z</updated>
<title>applied Hiltjo&#39;s resize/move limitation</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/3d1090ba896319368c4771b88d325fcee368a608.gph" />
<author>
<name>Anselm R Garbe</name>
<email>[email protected]</email>
</author>
<content>commit 3d1090ba896319368c4771b88d325fcee368a608
parent 18248ebf4b9465b837e717dcd14a5202a98248e0
Author: Anselm R Garbe &lt;[email protected]&gt;
Date:   Mon, 11 Aug 2014 07:24:29 +0200

applied Hiltjo&#39;s resize/move limitation

&quot;Limit the amount of updates when resizing or moving a window in floating
mode to 60 times per second. This makes resizing and moving alot smoother
and by limiting it it also uses alot less resources on my machine.

</content>
</entry>
<entry>
<id>18248ebf4b9465b837e717dcd14a5202a98248e0</id>
<published>2014-05-29T16:05:17Z</published>
<updated>2014-05-29T16:05:17Z</updated>
<title>same as before with dwm.c as well</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/18248ebf4b9465b837e717dcd14a5202a98248e0.gph" />
<author>
<name>Anselm R Garbe</name>
<email>[email protected]</email>
</author>
<content>commit 18248ebf4b9465b837e717dcd14a5202a98248e0
parent b468873b2b71d351ed7b5a4c75f62060999c46eb
Author: Anselm R Garbe &lt;[email protected]&gt;
Date:   Thu, 29 May 2014 18:05:17 +0200

same as before with dwm.c as well

</content>
</entry>
<entry>
<id>b468873b2b71d351ed7b5a4c75f62060999c46eb</id>
<published>2014-05-29T16:02:12Z</published>
<updated>2014-05-29T16:02:12Z</updated>
<title>updated copyright notice in LICENSE file</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/b468873b2b71d351ed7b5a4c75f62060999c46eb.gph" />
<author>
<name>Anselm R Garbe</name>
<email>[email protected]</email>
</author>
<content>commit b468873b2b71d351ed7b5a4c75f62060999c46eb
parent cdec9782a1789bd5c3a84772fd59abb9da288597
Author: Anselm R Garbe &lt;[email protected]&gt;
Date:   Thu, 29 May 2014 18:02:12 +0200

updated copyright notice in LICENSE file

</content>
</entry>
<entry>
<id>cdec9782a1789bd5c3a84772fd59abb9da288597</id>
<published>2013-08-27T18:39:21Z</published>
<updated>2013-08-27T18:39:21Z</updated>
<title>applied Lukas&#39; focus suggestion at startup, thanks</title>
<link rel="alternate" href="gopher://suckless.org/1/git/dwm/commit/cdec9782a1789bd5c3a84772fd59abb9da288597.gph" />
<author>
<name>Anselm R Garbe</name>
<email>[email protected]</email>
</author>
<content>commit cdec9782a1789bd5c3a84772fd59abb9da288597
parent 6af273771cb0e28e4394c78ab0322f77025a57f3
Author: Anselm R Garbe &lt;[email protected]&gt;
Date:   Tue, 27 Aug 2013 20:39:21 +0200

applied Lukas&#39; focus suggestion at startup, thanks

</content>
</entry>
</feed>