<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dmenu, branch master</title>
<subtitle>dmenu fork - https://tools.suckless.org/dmenu/</subtitle>
<link rel='alternate' type='text/html' href='http://normalmode.org/malf/x/dmenu/'/>
<entry>
<title>patch: numbers</title>
<updated>2026-01-17T21:44:04+00:00</updated>
<author>
<name>Malfurious</name>
<email>m@lfurio.us</email>
</author>
<published>2024-03-06T05:24:26+00:00</published>
<link rel='alternate' type='text/html' href='http://normalmode.org/malf/x/dmenu/commit/?id=da4772f595c0e414c32b3bd4bb4673c4b2f56aa2'/>
<id>da4772f595c0e414c32b3bd4bb4673c4b2f56aa2</id>
<content type='text'>
Adds text which displays the number of matched and total items in the
top right corner of dmenu.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Adds text which displays the number of matched and total items in the
top right corner of dmenu.
</pre>
</div>
</content>
</entry>
<entry>
<title>patch: alpha</title>
<updated>2026-01-17T21:44:04+00:00</updated>
<author>
<name>Malfurious</name>
<email>m@lfurio.us</email>
</author>
<published>2024-03-06T04:55:30+00:00</published>
<link rel='alternate' type='text/html' href='http://normalmode.org/malf/x/dmenu/commit/?id=11f97f2e491b84e8d5e1ad2ccb27fe7a9fc0466b'/>
<id>11f97f2e491b84e8d5e1ad2ccb27fe7a9fc0466b</id>
<content type='text'>
This patch adds translucency to the dmenu window, while keeping the text
in it opaque, just like the alpha patch for st.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch adds translucency to the dmenu window, while keeping the text
in it opaque, just like the alpha patch for st.
</pre>
</div>
</content>
</entry>
<entry>
<title>config: Set colors (match dwm)</title>
<updated>2026-01-17T21:35:29+00:00</updated>
<author>
<name>Malfurious</name>
<email>m@lfurio.us</email>
</author>
<published>2024-03-06T04:45:15+00:00</published>
<link rel='alternate' type='text/html' href='http://normalmode.org/malf/x/dmenu/commit/?id=fbc4f7063ef1e23514c72aea82323f442ffe1e4e'/>
<id>fbc4f7063ef1e23514c72aea82323f442ffe1e4e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>bump version to 5.4</title>
<updated>2025-08-09T12:33:40+00:00</updated>
<author>
<name>Hiltjo Posthuma</name>
<email>hiltjo@codemadness.org</email>
</author>
<published>2025-08-09T12:33:40+00:00</published>
<link rel='alternate' type='text/html' href='http://normalmode.org/malf/x/dmenu/commit/?id=d893c63cdd927c33b9b8c9bc52aaa284199a650a'/>
<id>d893c63cdd927c33b9b8c9bc52aaa284199a650a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>XUngrabKeyboard() instead of XUngrabKey()</title>
<updated>2025-03-17T20:01:05+00:00</updated>
<author>
<name>Adam Purkrt</name>
<email>adam@purkrt.cz</email>
</author>
<published>2025-03-15T18:53:56+00:00</published>
<link rel='alternate' type='text/html' href='http://normalmode.org/malf/x/dmenu/commit/?id=b1e217b29aab8936e9831961943676acd9cdcdd8'/>
<id>b1e217b29aab8936e9831961943676acd9cdcdd8</id>
<content type='text'>
XUngrabKey(), which is currently used in cleanup(), is not the right
counterpart to XGrabKeyboard(), which is used in grabkeyboard(),
called from main().

XUngrabKeyboard() is the function to use, as grabbing the whole
keyboard is different to grabbing individual keys.

With the current code the keyboard gets ungrabbed, as far as I can tell,
only by the final XCloseDisplay() in cleanup(), as the XUngrabKey()
there effectively does nothing.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
XUngrabKey(), which is currently used in cleanup(), is not the right
counterpart to XGrabKeyboard(), which is used in grabkeyboard(),
called from main().

XUngrabKeyboard() is the function to use, as grabbing the whole
keyboard is different to grabbing individual keys.

With the current code the keyboard gets ungrabbed, as far as I can tell,
only by the final XCloseDisplay() in cleanup(), as the XUngrabKey()
there effectively does nothing.
</pre>
</div>
</content>
</entry>
<entry>
<title>remove extra newline</title>
<updated>2024-10-30T12:03:25+00:00</updated>
<author>
<name>Hiltjo Posthuma</name>
<email>hiltjo@codemadness.org</email>
</author>
<published>2024-10-30T12:03:25+00:00</published>
<link rel='alternate' type='text/html' href='http://normalmode.org/malf/x/dmenu/commit/?id=86f0b5119eaa39943013d009967432ffd9d18365'/>
<id>86f0b5119eaa39943013d009967432ffd9d18365</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Avoid unsigned integer underflow in drw_text()</title>
<updated>2024-10-30T12:02:57+00:00</updated>
<author>
<name>Hiltjo Posthuma</name>
<email>hiltjo@codemadness.org</email>
</author>
<published>2024-10-30T12:02:57+00:00</published>
<link rel='alternate' type='text/html' href='http://normalmode.org/malf/x/dmenu/commit/?id=dd3d348ae86065edf2d1e2a1bc920685dc4982fc'/>
<id>dd3d348ae86065edf2d1e2a1bc920685dc4982fc</id>
<content type='text'>
Patch by Raymond Cole &lt;rc@wolog.xyz&gt;, thanks.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Patch by Raymond Cole &lt;rc@wolog.xyz&gt;, thanks.
</pre>
</div>
</content>
</entry>
<entry>
<title>util.c: output function might override errno and thus affect perror()</title>
<updated>2024-10-27T19:08:46+00:00</updated>
<author>
<name>Hiltjo Posthuma</name>
<email>hiltjo@codemadness.org</email>
</author>
<published>2024-10-27T19:08:46+00:00</published>
<link rel='alternate' type='text/html' href='http://normalmode.org/malf/x/dmenu/commit/?id=545031a076d4b5712442a8fc2d983f1e9d9f4f79'/>
<id>545031a076d4b5712442a8fc2d983f1e9d9f4f79</id>
<content type='text'>
Original patch by Raymond Cole with some modifications, thanks!
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Original patch by Raymond Cole with some modifications, thanks!
</pre>
</div>
</content>
</entry>
<entry>
<title>drw.c: use the same pattern as ellipsis_width to check for infinite recursion</title>
<updated>2024-07-14T09:43:01+00:00</updated>
<author>
<name>Hiltjo Posthuma</name>
<email>hiltjo@codemadness.org</email>
</author>
<published>2024-07-14T09:40:20+00:00</published>
<link rel='alternate' type='text/html' href='http://normalmode.org/malf/x/dmenu/commit/?id=475d8093cb8d29d5756937bfa9e0b3b9e415f632'/>
<id>475d8093cb8d29d5756937bfa9e0b3b9e415f632</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>render invalid utf8 sequences as U+FFFD</title>
<updated>2024-07-14T09:42:58+00:00</updated>
<author>
<name>NRK</name>
<email>nrk@disroot.org</email>
</author>
<published>2024-07-04T21:27:47+00:00</published>
<link rel='alternate' type='text/html' href='http://normalmode.org/malf/x/dmenu/commit/?id=59936c7d972587a47d61161279bb8e8abc0b02f3'/>
<id>59936c7d972587a47d61161279bb8e8abc0b02f3</id>
<content type='text'>
previously drw_text would do the width calculations as if
invalid utf8 sequences were replaced with U+FFFD but would pass
the invalid utf8 sequence to xft to render where xft would just
cut it off at the first invalid byte.

this change makes invalid utf8 render as U+FFFD and avoids
sending invalid sequences to xft. the following can be used to
check the behavior before and after the patch:

	$ printf "0\xef1234567\ntest" | dmenu

Ref: https://lists.suckless.org/dev/2407/35646.html
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
previously drw_text would do the width calculations as if
invalid utf8 sequences were replaced with U+FFFD but would pass
the invalid utf8 sequence to xft to render where xft would just
cut it off at the first invalid byte.

this change makes invalid utf8 render as U+FFFD and avoids
sending invalid sequences to xft. the following can be used to
check the behavior before and after the patch:

	$ printf "0\xef1234567\ntest" | dmenu

Ref: https://lists.suckless.org/dev/2407/35646.html
</pre>
</div>
</content>
</entry>
</feed>
