wmenu, branch HEAD[fork] efficient dynamic menu for wayland
268df9fa4fc2adb896b1c0a0f41b19727d0b51662025-06-15T21:38:05Z2025-06-15T21:38:05Zcustom widthdrkhshme@drkhsh.atcommit 268df9fa4fc2adb896b1c0a0f41b19727d0b5166
parent 0a38d45abba5b04775b000a8deafb141d230687b
Author: drkhsh <me@drkhsh.at>
Date: Sun, 15 Jun 2025 23:38:05 +0200
custom width
0a38d45abba5b04775b000a8deafb141d230687b2025-04-29T19:23:10Z2025-04-29T19:23:10ZVersion 0.2.0adnanome@adnano.cocommit 0a38d45abba5b04775b000a8deafb141d230687b
parent fc69aa6e2bccca461a0bd0c10b448b64ccda1d42
Author: adnano <me@adnano.co>
Date: Tue, 29 Apr 2025 15:23:10 -0400
Version 0.2.0
fc69aa6e2bccca461a0bd0c10b448b64ccda1d422025-03-01T12:04:00Z2025-03-01T12:04:00ZRender menu after surface enter eventadnanome@adnano.cocommit fc69aa6e2bccca461a0bd0c10b448b64ccda1d42
parent eec775fad7f7b090e6de2dbfe0c242129fddba41
Author: adnano <me@adnano.co>
Date: Sat, 1 Mar 2025 07:04:00 -0500
Render menu after surface enter event
This fixes an issue where the first visible frame is blurry on
fractional scale displays.
eec775fad7f7b090e6de2dbfe0c242129fddba412025-02-21T17:09:16Z2025-02-21T17:09:16ZRevert "Render frame on surface enter"adnanome@adnano.cocommit eec775fad7f7b090e6de2dbfe0c242129fddba41
parent e2542d34ed15308545125fac9bf324b32e7cf578
Author: adnano <me@adnano.co>
Date: Fri, 21 Feb 2025 12:09:16 -0500
Revert "Render frame on surface enter"
This reverts commit e2542d34ed15308545125fac9bf324b32e7cf578.
This commit causes crashes on some systems.
e2542d34ed15308545125fac9bf324b32e7cf5782024-12-16T15:56:51Z2024-12-16T15:56:51ZRender frame on surface enteradnanome@adnano.cocommit e2542d34ed15308545125fac9bf324b32e7cf578
parent 3ad4b5ca3f9f66c71ec521d0d7261228ec7b4631
Author: adnano <me@adnano.co>
Date: Mon, 16 Dec 2024 10:56:51 -0500
Render frame on surface enter
This ensures that the menu is rendered with the correct scale.
Fixes #14
3ad4b5ca3f9f66c71ec521d0d7261228ec7b46312024-11-06T19:31:46Z2024-11-08T20:28:11ZSimplify render_menuM Stoecklcode@mstoeckl.comcommit 3ad4b5ca3f9f66c71ec521d0d7261228ec7b4631
parent 48ec172b4bd51da0736c24d84c72b574e4107b31
Author: M Stoeckl <code@mstoeckl.com>
Date: Wed, 6 Nov 2024 14:31:46 -0500
Simplify render_menu
48ec172b4bd51da0736c24d84c72b574e4107b312024-11-01T23:35:39Z2024-11-01T23:35:39ZREADME: Update meson instructionsadnanome@adnano.cocommit 48ec172b4bd51da0736c24d84c72b574e4107b31
parent 0947765fc9a4f6fc4287acfcd2efcaf4fef1ffb8
Author: adnano <me@adnano.co>
Date: Fri, 1 Nov 2024 19:35:39 -0400
README: Update meson instructions
0947765fc9a4f6fc4287acfcd2efcaf4fef1ffb82024-10-31T14:27:47Z2024-11-01T23:33:53ZOnly call render_menu once per frameM Stoecklcode@mstoeckl.comcommit 0947765fc9a4f6fc4287acfcd2efcaf4fef1ffb8
parent 260eaba88ec8f54fe2bdbe391b18fcd2db70836f
Author: M Stoeckl <code@mstoeckl.com>
Date: Thu, 31 Oct 2024 10:27:47 -0400
Only call render_menu once per frame
An actual surface is not needed to estimate font sizes; a 1x1 image
will do, as long as the cairo context has the same options.
260eaba88ec8f54fe2bdbe391b18fcd2db70836f2024-10-31T13:23:26Z2024-10-31T13:30:09ZOptimize menu sortingM Stoecklcode@mstoeckl.comcommit 260eaba88ec8f54fe2bdbe391b18fcd2db70836f
parent 12b8f83be447379eded03c6109fe944945cd48aa
Author: M Stoeckl <code@mstoeckl.com>
Date: Thu, 31 Oct 2024 09:23:26 -0400
Optimize menu sorting
Sorting and deduplicating elements after all items have been registered
improves the time complexity of constructing the item list from O(n^2)
to O(n log n). On a system with about 4000 menu items, this reduces
startup time from about 0.21 seconds to 0.13 seconds.
12b8f83be447379eded03c6109fe944945cd48aa2024-08-03T22:26:59Z2024-08-03T22:26:59ZDisplay over fullscreen applicationsadnanome@adnano.cocommit 12b8f83be447379eded03c6109fe944945cd48aa
parent 8b2381126319b8e50bcd697b6a7be5bf0ee7e226
Author: adnano <me@adnano.co>
Date: Sat, 3 Aug 2024 18:26:59 -0400
Display over fullscreen applications
8b2381126319b8e50bcd697b6a7be5bf0ee7e2262024-06-10T00:33:37Z2024-06-10T00:33:37ZVersion 0.1.9adnanome@adnano.cocommit 8b2381126319b8e50bcd697b6a7be5bf0ee7e226
parent 7d717b3696e8295f1236bb5c6c69417f14394883
Author: adnano <me@adnano.co>
Date: Sun, 9 Jun 2024 20:33:37 -0400
Version 0.1.9
7d717b3696e8295f1236bb5c6c69417f143948832024-06-10T00:30:58Z2024-06-10T00:30:58ZStreamline menu callbacksadnanome@adnano.cocommit 7d717b3696e8295f1236bb5c6c69417f14394883
parent a0df7959f9182a87a833d0a7f653f5ac8a2b5d0e
Author: adnano <me@adnano.co>
Date: Sun, 9 Jun 2024 20:30:58 -0400
Streamline menu callbacks
a0df7959f9182a87a833d0a7f653f5ac8a2b5d0e2024-06-03T01:49:46Z2024-06-09T23:02:32ZMake wmenu-run behave like dmenu_runNAHTAIV3Lrbeckettvt@gmail.comcommit a0df7959f9182a87a833d0a7f653f5ac8a2b5d0e
parent 0fa9c359493b35ef0dda3b64f121fbe333f90f1a
Author: NAHTAIV3L <rbeckettvt@gmail.com>
Date: Sun, 2 Jun 2024 21:49:46 -0400
Make wmenu-run behave like dmenu_run
0fa9c359493b35ef0dda3b64f121fbe333f90f1a2024-05-25T23:10:07Z2024-05-25T23:10:07ZUpdate README.mdadnanome@adnano.cocommit 0fa9c359493b35ef0dda3b64f121fbe333f90f1a
parent 30abca4f301a3e851d020119f654586c56c70263
Author: adnano <me@adnano.co>
Date: Sat, 25 May 2024 19:10:07 -0400
Update README.md
30abca4f301a3e851d020119f654586c56c702632024-05-05T14:13:01Z2024-05-05T14:13:01ZDon't ignore stdin in password modeadnanome@adnano.cocommit 30abca4f301a3e851d020119f654586c56c70263
parent 15d7c7bcc29e66f174c4de2420d371a9737ac6e4
Author: adnano <me@adnano.co>
Date: Sun, 5 May 2024 10:13:01 -0400
Don't ignore stdin in password mode
This makes password mode work for wmenu and wmenu-run without special
cases.
15d7c7bcc29e66f174c4de2420d371a9737ac6e42024-05-05T01:44:59Z2024-05-05T01:44:59ZRevert "Remove wmenu -P flag"adnanome@adnano.cocommit 15d7c7bcc29e66f174c4de2420d371a9737ac6e4
parent 963a677631f00b9b259e101a5e3dad85da6ccbf2
Author: adnano <me@adnano.co>
Date: Sat, 4 May 2024 21:44:59 -0400
Revert "Remove wmenu -P flag"
This reverts commit c05ab7520b452ee3b8bd974a18511dc370cbeabe.
963a677631f00b9b259e101a5e3dad85da6ccbf22024-05-05T01:42:31Z2024-05-05T01:42:31ZVersion 0.1.8adnanome@adnano.cocommit 963a677631f00b9b259e101a5e3dad85da6ccbf2
parent c05ab7520b452ee3b8bd974a18511dc370cbeabe
Author: adnano <me@adnano.co>
Date: Sat, 4 May 2024 21:42:31 -0400
Version 0.1.8
c05ab7520b452ee3b8bd974a18511dc370cbeabe2024-05-05T01:41:21Z2024-05-05T01:41:21ZRemove wmenu -P flagadnanome@adnano.cocommit c05ab7520b452ee3b8bd974a18511dc370cbeabe
parent 81d46e39120bcb7c24cec2105e05f3524e8bd548
Author: adnano <me@adnano.co>
Date: Sat, 4 May 2024 21:41:21 -0400
Remove wmenu -P flag
This flag causes some issues with wmenu-run. It will be revisited in the
next release.
81d46e39120bcb7c24cec2105e05f3524e8bd5482024-05-04T01:34:10Z2024-05-04T01:34:10Zdocs: Add wmenu-runadnanome@adnano.cocommit 81d46e39120bcb7c24cec2105e05f3524e8bd548
parent 8f958478111933f8b1ce8405203026c2cc91fde8
Author: adnano <me@adnano.co>
Date: Fri, 3 May 2024 21:34:10 -0400
docs: Add wmenu-run
8f958478111933f8b1ce8405203026c2cc91fde82024-05-04T01:23:08Z2024-05-04T01:23:08ZUpdate README.mdadnanome@adnano.cocommit 8f958478111933f8b1ce8405203026c2cc91fde8
parent e1816cc9a9ab7887dc2aa10b6244055546111049
Author: adnano <me@adnano.co>
Date: Fri, 3 May 2024 21:23:08 -0400
Update README.md
e1816cc9a9ab7887dc2aa10b62440555461110492024-05-03T23:31:11Z2024-05-03T23:31:11Zwmenu-run: Don't overwrite PATHadnanome@adnano.cocommit e1816cc9a9ab7887dc2aa10b6244055546111049
parent 8f19d6a8d2f34aeb4060d4374eb204b270ffbaa8
Author: adnano <me@adnano.co>
Date: Fri, 3 May 2024 19:31:11 -0400
wmenu-run: Don't overwrite PATH
8f19d6a8d2f34aeb4060d4374eb204b270ffbaa82024-05-03T23:10:28Z2024-05-03T23:10:28Zwmenu-run: Populate items from PATHadnanome@adnano.cocommit 8f19d6a8d2f34aeb4060d4374eb204b270ffbaa8
parent 92d3b294aeff5b36916782847bae4389c10e8f17
Author: adnano <me@adnano.co>
Date: Fri, 3 May 2024 19:10:28 -0400
wmenu-run: Populate items from PATH
92d3b294aeff5b36916782847bae4389c10e8f172024-05-03T01:41:26Z2024-05-03T01:41:26ZUpdate README.mdadnanome@adnano.cocommit 92d3b294aeff5b36916782847bae4389c10e8f17
parent 477c0419b4a06b286bf09405e44c5fdc36e44b2f
Author: adnano <me@adnano.co>
Date: Thu, 2 May 2024 21:41:26 -0400
Update README.md
477c0419b4a06b286bf09405e44c5fdc36e44b2f2024-05-03T01:40:46Z2024-05-03T01:40:46ZRemove wmenu_run scriptadnanome@adnano.cocommit 477c0419b4a06b286bf09405e44c5fdc36e44b2f
parent 41e8599392a543a537f15447e20fd7bc8d8f2297
Author: adnano <me@adnano.co>
Date: Thu, 2 May 2024 21:40:46 -0400
Remove wmenu_run script
41e8599392a543a537f15447e20fd7bc8d8f22972024-05-03T01:39:54Z2024-05-03T01:39:54ZAdd wmenu-run executableadnanome@adnano.cocommit 41e8599392a543a537f15447e20fd7bc8d8f2297
parent 1f221a73cf290ff509ef6c066ff692bb48f8625e
Author: adnano <me@adnano.co>
Date: Thu, 2 May 2024 21:39:54 -0400
Add wmenu-run executable
1f221a73cf290ff509ef6c066ff692bb48f8625e2024-05-02T22:45:49Z2024-05-02T22:45:49ZFix destruction of pool buffersadnanome@adnano.cocommit 1f221a73cf290ff509ef6c066ff692bb48f8625e
parent 6284eea24b44d05260f96fe842fa9dd752185942
Author: adnano <me@adnano.co>
Date: Thu, 2 May 2024 18:45:49 -0400
Fix destruction of pool buffers
6284eea24b44d05260f96fe842fa9dd7521859422024-05-02T21:03:07Z2024-05-02T21:03:07ZSeparate menu state from Wayland stateadnanome@adnano.cocommit 6284eea24b44d05260f96fe842fa9dd752185942
parent 6a39269d2e73273de324ed156eba71e5bdcd9602
Author: adnano <me@adnano.co>
Date: Thu, 2 May 2024 17:03:07 -0400
Separate menu state from Wayland state
6a39269d2e73273de324ed156eba71e5bdcd96022024-05-02T18:44:09Z2024-05-02T18:44:09ZDrop wmenu -x optionadnanome@adnano.cocommit 6a39269d2e73273de324ed156eba71e5bdcd9602
parent e4c4627eebc57a6af5812c69f6dc3f9992d9c770
Author: adnano <me@adnano.co>
Date: Thu, 2 May 2024 14:44:09 -0400
Drop wmenu -x option
e4c4627eebc57a6af5812c69f6dc3f9992d9c7702024-04-09T08:12:49Z2024-04-14T21:22:09Zmake menu height accurate to dwm, dmenu, and dwl's bar patchsewnsewn@disroot.orgcommit e4c4627eebc57a6af5812c69f6dc3f9992d9c770
parent cf6f5b9d06d72ded0b077d6770854d0003c1b4aa
Author: sewn <sewn@disroot.org>
Date: Tue, 9 Apr 2024 11:12:49 +0300
make menu height accurate to dwm, dmenu, and dwl's bar patch
cf6f5b9d06d72ded0b077d6770854d0003c1b4aa2024-04-07T12:51:57Z2024-04-07T12:51:57ZSupport xdg_activation_v1 protocoladnanome@adnano.cocommit cf6f5b9d06d72ded0b077d6770854d0003c1b4aa
parent 41b2e8b1e1d1415a43baa6393b7237e7e77468eb
Author: adnano <me@adnano.co>
Date: Sun, 7 Apr 2024 08:51:57 -0400
Support xdg_activation_v1 protocol
41b2e8b1e1d1415a43baa6393b7237e7e77468eb2024-03-25T12:20:36Z2024-03-25T12:20:36Zmenu: Avoid adding zero-size pagesadnanome@adnano.cocommit 41b2e8b1e1d1415a43baa6393b7237e7e77468eb
parent ac25b0733885b545578092c5da74c9a3122529d6
Author: adnano <me@adnano.co>
Date: Mon, 25 Mar 2024 08:20:36 -0400
menu: Avoid adding zero-size pages
Ensure that pages always have at least one item, even if that item is
too big to fit on any page.
ac25b0733885b545578092c5da74c9a3122529d62024-03-10T15:07:46Z2024-03-17T11:49:14Zadd wmenu_run script, similar to dmenu_run scriptsewnsewn@disroot.orgcommit ac25b0733885b545578092c5da74c9a3122529d6
parent 9e9284666c9fcf3278ad17f98a247658db8b2269
Author: sewn <sewn@disroot.org>
Date: Sun, 10 Mar 2024 18:07:46 +0300
add wmenu_run script, similar to dmenu_run script
based off the works of sinanmohd, modified to be simpler and better
to read, with shellcheck.
Co-authored-by: sinanmohd <sinan@firemail.cc>
9e9284666c9fcf3278ad17f98a247658db8b22692024-03-10T15:00:48Z2024-03-17T11:33:55Zport dmenu password patchsewnsewn@disroot.orgcommit 9e9284666c9fcf3278ad17f98a247658db8b2269
parent 6ad7a303ef2ff130b84cfa718ace423a3101dbbb
Author: sewn <sewn@disroot.org>
Date: Sun, 10 Mar 2024 18:00:48 +0300
port dmenu password patch
6ad7a303ef2ff130b84cfa718ace423a3101dbbb2024-03-17T11:01:23Z2024-03-17T11:01:23ZDon't destroy wl_data_offer twiceadnanome@adnano.cocommit 6ad7a303ef2ff130b84cfa718ace423a3101dbbb
parent 4e151795bf8f15e38999a42cb71ddc63423ffe12
Author: adnano <me@adnano.co>
Date: Sun, 17 Mar 2024 07:01:23 -0400
Don't destroy wl_data_offer twice
The data offer is destroyed after it is used. There is no need to
destroy it again.
This also fixes an issue where calling wl_data_offer_destroy with a NULL
data offer would segfault.
4e151795bf8f15e38999a42cb71ddc63423ffe122024-03-02T16:49:47Z2024-03-02T16:49:47ZVersion 0.1.7adnanome@adnano.cocommit 4e151795bf8f15e38999a42cb71ddc63423ffe12
parent f7e6e0b4bf3bca6dbc2b6c7e81cb013be43c6c06
Author: adnano <me@adnano.co>
Date: Sat, 2 Mar 2024 11:49:47 -0500
Version 0.1.7
f7e6e0b4bf3bca6dbc2b6c7e81cb013be43c6c062024-03-02T16:31:13Z2024-03-02T16:31:13ZFree memory associated with the menu on exitadnanome@adnano.cocommit f7e6e0b4bf3bca6dbc2b6c7e81cb013be43c6c06
parent b247119ab3ad46760ac85428309230200d9f6c61
Author: adnano <me@adnano.co>
Date: Sat, 2 Mar 2024 11:31:13 -0500
Free memory associated with the menu on exit
b247119ab3ad46760ac85428309230200d9f6c612024-03-02T12:32:43Z2024-03-02T12:32:43ZRename text_len to input_lenadnanome@adnano.cocommit b247119ab3ad46760ac85428309230200d9f6c61
parent ff4d1f8f8ee392d52b71858fce658f70ee26f434
Author: adnano <me@adnano.co>
Date: Sat, 2 Mar 2024 07:32:43 -0500
Rename text_len to input_len
ff4d1f8f8ee392d52b71858fce658f70ee26f4342024-03-02T01:54:12Z2024-03-02T01:54:12ZFix output selection with -o flagadnanome@adnano.cocommit ff4d1f8f8ee392d52b71858fce658f70ee26f434
parent bbfbf8f36c1e7dd1912d0646a3ae271a8c69e6b9
Author: adnano <me@adnano.co>
Date: Fri, 1 Mar 2024 20:54:12 -0500
Fix output selection with -o flag
bbfbf8f36c1e7dd1912d0646a3ae271a8c69e6b92024-02-27T17:00:10Z2024-02-27T17:00:10ZRevert "Simplify movewordedge"adnanome@adnano.cocommit bbfbf8f36c1e7dd1912d0646a3ae271a8c69e6b9
parent 9f6a36d73fb185db5b903c7a4e4cabed2990accd
Author: adnano <me@adnano.co>
Date: Tue, 27 Feb 2024 12:00:10 -0500
Revert "Simplify movewordedge"
This reverts commit 8bcad262a4d047140767d9467ac5526bb768a95e.
9f6a36d73fb185db5b903c7a4e4cabed2990accd2024-02-27T16:40:34Z2024-02-27T16:40:34ZDrop unnecessary TODO commentadnanome@adnano.cocommit 9f6a36d73fb185db5b903c7a4e4cabed2990accd
parent 0db7efe2324a4b2656fa117d9c7bdf84fc7fcbc1
Author: adnano <me@adnano.co>
Date: Tue, 27 Feb 2024 11:40:34 -0500
Drop unnecessary TODO comment
0db7efe2324a4b2656fa117d9c7bdf84fc7fcbc12024-02-27T16:34:17Z2024-02-27T16:34:17ZSimplify read_menu_itemsadnanome@adnano.cocommit 0db7efe2324a4b2656fa117d9c7bdf84fc7fcbc1
parent e8782db9c840e42827dafa4ec1ca9849f91b9b59
Author: adnano <me@adnano.co>
Date: Tue, 27 Feb 2024 11:34:17 -0500
Simplify read_menu_items
e8782db9c840e42827dafa4ec1ca9849f91b9b592024-02-27T16:23:12Z2024-02-27T16:23:12ZMove menu and rendering logic into separate filesadnanome@adnano.cocommit e8782db9c840e42827dafa4ec1ca9849f91b9b59
parent 1104e8e51b366e7804b94365f8d6a84752693538
Author: adnano <me@adnano.co>
Date: Tue, 27 Feb 2024 11:23:12 -0500
Move menu and rendering logic into separate files
1104e8e51b366e7804b94365f8d6a847526935382024-02-27T13:50:29Z2024-02-27T13:50:29ZUpdate LICENSEadnanome@adnano.cocommit 1104e8e51b366e7804b94365f8d6a84752693538
parent 18895cd72b25654ca0f727dc60480b53fed2c904
Author: adnano <me@adnano.co>
Date: Tue, 27 Feb 2024 08:50:29 -0500
Update LICENSE
18895cd72b25654ca0f727dc60480b53fed2c9042024-02-27T13:49:09Z2024-02-27T13:49:09ZRemove unused includesadnanome@adnano.cocommit 18895cd72b25654ca0f727dc60480b53fed2c904
parent 906f7ccee81881754c023db0389c8510c0218ec8
Author: adnano <me@adnano.co>
Date: Tue, 27 Feb 2024 08:49:09 -0500
Remove unused includes
906f7ccee81881754c023db0389c8510c0218ec82024-02-27T13:37:17Z2024-02-27T13:37:17ZImprove formatting of docsadnanome@adnano.cocommit 906f7ccee81881754c023db0389c8510c0218ec8
parent f609762c4e39a4542c0b9b55965d245a79ed91d7
Author: adnano <me@adnano.co>
Date: Tue, 27 Feb 2024 08:37:17 -0500
Improve formatting of docs
f609762c4e39a4542c0b9b55965d245a79ed91d72024-02-27T13:17:38Z2024-02-27T13:17:38ZAdd C-Y keybinding to docsadnanome@adnano.cocommit f609762c4e39a4542c0b9b55965d245a79ed91d7
parent 8bcad262a4d047140767d9467ac5526bb768a95e
Author: adnano <me@adnano.co>
Date: Tue, 27 Feb 2024 08:17:38 -0500
Add C-Y keybinding to docs
8bcad262a4d047140767d9467ac5526bb768a95e2024-02-27T13:07:16Z2024-02-27T13:07:16ZSimplify movewordedgeadnanome@adnano.cocommit 8bcad262a4d047140767d9467ac5526bb768a95e
parent c37c3fe38e77398fba65d169c664f569fbab9760
Author: adnano <me@adnano.co>
Date: Tue, 27 Feb 2024 08:07:16 -0500
Simplify movewordedge
c37c3fe38e77398fba65d169c664f569fbab97602024-02-27T05:49:58Z2024-02-27T12:54:20ZAdd dmenu's Meta (Alt) keybindingsAmin Bandalibandali@kelar.orgcommit c37c3fe38e77398fba65d169c664f569fbab9760
parent 04dfc063795c56a5fdb3096bf8fe0b4123c3c28d
Author: Amin Bandali <bandali@kelar.org>
Date: Tue, 27 Feb 2024 00:49:58 -0500
Add dmenu's Meta (Alt) keybindings
This change adds dmenu's mixture of Emacs+vim-style Meta keybindings.
Also 'Page_Up' and 'Page_Down' were deprecated in upstream xkbcommon,
so replace them with the new 'Prior' and 'Next' names respectively.
04dfc063795c56a5fdb3096bf8fe0b4123c3c28d2024-02-27T05:10:34Z2024-02-27T12:51:52ZAdd token matching like dmenuAmin Bandalibandali@kelar.orgcommit 04dfc063795c56a5fdb3096bf8fe0b4123c3c28d
parent 96b3c0ef266494e6a8c0a91d1726f8dcde95d55d
Author: Amin Bandali <bandali@kelar.org>
Date: Tue, 27 Feb 2024 00:10:34 -0500
Add token matching like dmenu
This change ports dmenu's token matching of space-separated input to
wmenu to match the behaviour of dmenu, with a slightly more verbose
but hopefully more readable implementation.
96b3c0ef266494e6a8c0a91d1726f8dcde95d55d2024-02-26T21:44:23Z2024-02-26T21:44:23ZAdd more rendering functionsadnanome@adnano.cocommit 96b3c0ef266494e6a8c0a91d1726f8dcde95d55d
parent f9167689dcd4ab0231bacdcdf0173747fb6a738b
Author: adnano <me@adnano.co>
Date: Mon, 26 Feb 2024 16:44:23 -0500
Add more rendering functions
f9167689dcd4ab0231bacdcdf0173747fb6a738b2024-02-26T21:31:41Z2024-02-26T21:31:41ZCheck if selection is not null before dereferencingadnanome@adnano.cocommit f9167689dcd4ab0231bacdcdf0173747fb6a738b
parent c6025455ec7a5a2ce0367097d465c7188759886b
Author: adnano <me@adnano.co>
Date: Mon, 26 Feb 2024 16:31:41 -0500
Check if selection is not null before dereferencing
c6025455ec7a5a2ce0367097d465c7188759886b2024-02-26T21:31:04Z2024-02-26T21:31:04ZAdd functions to render pages of itemsadnanome@adnano.cocommit c6025455ec7a5a2ce0367097d465c7188759886b
parent 628a5d82eedb93401e71f08c8ad976294ba6453e
Author: adnano <me@adnano.co>
Date: Mon, 26 Feb 2024 16:31:04 -0500
Add functions to render pages of items
628a5d82eedb93401e71f08c8ad976294ba6453e2024-02-26T21:14:04Z2024-02-26T21:14:04ZRefactor rendering codeadnanome@adnano.cocommit 628a5d82eedb93401e71f08c8ad976294ba6453e
parent da25fbfb275e5f9ffa7fff3ff1cd1d6f16c652b1
Author: adnano <me@adnano.co>
Date: Mon, 26 Feb 2024 16:14:04 -0500
Refactor rendering code
da25fbfb275e5f9ffa7fff3ff1cd1d6f16c652b12024-02-26T20:05:37Z2024-02-26T20:05:37ZDon't set selection if there are no pagesadnanome@adnano.cocommit da25fbfb275e5f9ffa7fff3ff1cd1d6f16c652b1
parent 7284f5958bea340e25598562821b73db3c26ee63
Author: adnano <me@adnano.co>
Date: Mon, 26 Feb 2024 15:05:37 -0500
Don't set selection if there are no pages
7284f5958bea340e25598562821b73db3c26ee632024-02-26T20:03:42Z2024-02-26T20:03:42ZDon't match items in insertadnanome@adnano.cocommit 7284f5958bea340e25598562821b73db3c26ee63
parent 48f4a1d2ed523ae8b0c0c6b97561d96a3d5ab369
Author: adnano <me@adnano.co>
Date: Mon, 26 Feb 2024 15:03:42 -0500
Don't match items in insert
48f4a1d2ed523ae8b0c0c6b97561d96a3d5ab3692024-02-26T19:50:09Z2024-02-26T19:50:09ZAdd comments to menuadnanome@adnano.cocommit 48f4a1d2ed523ae8b0c0c6b97561d96a3d5ab369
parent ce43ccfb75525aba40c2c3be82e5d9b129b047eb
Author: adnano <me@adnano.co>
Date: Mon, 26 Feb 2024 14:50:09 -0500
Add comments to menu
ce43ccfb75525aba40c2c3be82e5d9b129b047eb2024-02-26T19:42:11Z2024-02-26T19:42:11ZAdd some comments to item and pageadnanome@adnano.cocommit ce43ccfb75525aba40c2c3be82e5d9b129b047eb
parent ee43ebb7832bdd3a8c47b58c08d5ccff8dda7005
Author: adnano <me@adnano.co>
Date: Mon, 26 Feb 2024 14:42:11 -0500
Add some comments to item and page
ee43ebb7832bdd3a8c47b58c08d5ccff8dda70052024-02-26T19:40:18Z2024-02-26T19:40:18ZRename menu_state to menuadnanome@adnano.cocommit ee43ebb7832bdd3a8c47b58c08d5ccff8dda7005
parent 086211c83c6f9110512d32633290d0a93401411a
Author: adnano <me@adnano.co>
Date: Mon, 26 Feb 2024 14:40:18 -0500
Rename menu_state to menu
086211c83c6f9110512d32633290d0a93401411a2024-02-26T19:29:53Z2024-02-26T19:29:53ZDon't return -1 from render_horizontal_itemadnanome@adnano.cocommit 086211c83c6f9110512d32633290d0a93401411a
parent e23e2154719f07a8b052669a75ca239850fd3b1f
Author: adnano <me@adnano.co>
Date: Mon, 26 Feb 2024 14:29:53 -0500
Don't return -1 from render_horizontal_item
e23e2154719f07a8b052669a75ca239850fd3b1f2024-02-26T19:14:11Z2024-02-26T19:14:11ZRename menu_item to itemadnanome@adnano.cocommit e23e2154719f07a8b052669a75ca239850fd3b1f
parent deab01baf12f48e30f9b6638cc4b5a16e7333b9a
Author: adnano <me@adnano.co>
Date: Mon, 26 Feb 2024 14:14:11 -0500
Rename menu_item to item
deab01baf12f48e30f9b6638cc4b5a16e7333b9a2024-02-26T19:08:18Z2024-02-26T19:08:18ZMark functions as staticadnanome@adnano.cocommit deab01baf12f48e30f9b6638cc4b5a16e7333b9a
parent 9edefe1344725274bd05cafb448804f5a6ce737b
Author: adnano <me@adnano.co>
Date: Mon, 26 Feb 2024 14:08:18 -0500
Mark functions as static
9edefe1344725274bd05cafb448804f5a6ce737b2024-02-26T19:06:42Z2024-02-26T19:06:42ZRename item_group to pageadnanome@adnano.cocommit 9edefe1344725274bd05cafb448804f5a6ce737b
parent 07ac84239ef655cf53ac14f9dcce330a6e7e9791
Author: adnano <me@adnano.co>
Date: Mon, 26 Feb 2024 14:06:42 -0500
Rename item_group to page
07ac84239ef655cf53ac14f9dcce330a6e7e97912024-02-26T17:40:11Z2024-02-26T17:40:11ZRefactor item paging logicadnanome@adnano.cocommit 07ac84239ef655cf53ac14f9dcce330a6e7e9791
parent d23a2c563a5e9b722a07c22d33f1898793627a40
Author: adnano <me@adnano.co>
Date: Mon, 26 Feb 2024 12:40:11 -0500
Refactor item paging logic
Determine which items go on which page ahead of time to avoid
calculating it every time. This also fixes an issue where paging from
the back doesn't give the same results as paging from the front.
d23a2c563a5e9b722a07c22d33f1898793627a402024-02-26T15:47:35Z2024-02-26T15:47:35ZSimplify match scrollingadnanome@adnano.cocommit d23a2c563a5e9b722a07c22d33f1898793627a40
parent 906b55019e50558e7d2ee0b26b9732b64b6306e1
Author: adnano <me@adnano.co>
Date: Mon, 26 Feb 2024 10:47:35 -0500
Simplify match scrolling
906b55019e50558e7d2ee0b26b9732b64b6306e12024-02-26T15:43:52Z2024-02-26T15:43:52ZKeep track of end of match listadnanome@adnano.cocommit 906b55019e50558e7d2ee0b26b9732b64b6306e1
parent 542c307ef23a97f6f0ed255df51fcbe9b23ed07c
Author: adnano <me@adnano.co>
Date: Mon, 26 Feb 2024 10:43:52 -0500
Keep track of end of match list
542c307ef23a97f6f0ed255df51fcbe9b23ed07c2024-02-26T11:59:09Z2024-02-26T11:59:09ZIgnore unrecognized Ctrl keybindingsadnanome@adnano.cocommit 542c307ef23a97f6f0ed255df51fcbe9b23ed07c
parent cb884725f61b31e861f667d7517978ea55d1279f
Author: adnano <me@adnano.co>
Date: Mon, 26 Feb 2024 06:59:09 -0500
Ignore unrecognized Ctrl keybindings
Currently, unrecognized Ctrl keybindings are treated as if Ctrl wasn't
pressed. For example, Ctrl+q results in q being typed. Instead, ignore
these keypresses.
cb884725f61b31e861f667d7517978ea55d1279f2024-02-25T19:49:53Z2024-02-26T11:31:38ZUpdate keybindings to more closely follow dmenuAmin Bandalibandali@kelar.orgcommit cb884725f61b31e861f667d7517978ea55d1279f
parent 5ef1e637bfe3b9e2f58cc15d8a0dd0256e1b93d0
Author: Amin Bandali <bandali@kelar.org>
Date: Sun, 25 Feb 2024 14:49:53 -0500
Update keybindings to more closely follow dmenu
There's no need to distinguish between vertical and horizontal mode
for the directional keys. By not doing so we match dmenu's behaviour
and also reduce code duplication.
5ef1e637bfe3b9e2f58cc15d8a0dd0256e1b93d02024-02-04T20:47:18Z2024-02-04T20:47:18ZMake scdoc dependency optionaladnanome@adnano.cocommit 5ef1e637bfe3b9e2f58cc15d8a0dd0256e1b93d0
parent 1ef3f6a9b6eb51d08ac1ad3a6deb7bbf8dd573d9
Author: adnano <me@adnano.co>
Date: Sun, 4 Feb 2024 15:47:18 -0500
Make scdoc dependency optional
1ef3f6a9b6eb51d08ac1ad3a6deb7bbf8dd573d92024-01-22T00:50:34Z2024-01-22T00:50:34ZVersion 0.1.6adnanome@adnano.cocommit 1ef3f6a9b6eb51d08ac1ad3a6deb7bbf8dd573d9
parent d139ebae8fd3d545f586470ff04008f311e47c12
Author: adnano <me@adnano.co>
Date: Sun, 21 Jan 2024 19:50:34 -0500
Version 0.1.6
d139ebae8fd3d545f586470ff04008f311e47c122023-12-28T16:59:02Z2023-12-28T16:59:02Zpool-buffer: Fix type conversion issuesadnanome@adnano.cocommit d139ebae8fd3d545f586470ff04008f311e47c12
parent 69a7078e019261b26c31b61724a0f3bc517ab624
Author: adnano <me@adnano.co>
Date: Thu, 28 Dec 2023 11:59:02 -0500
pool-buffer: Fix type conversion issues
69a7078e019261b26c31b61724a0f3bc517ab6242023-12-28T16:42:50Z2023-12-28T16:42:50ZCheck the return value of pipeadnanome@adnano.cocommit 69a7078e019261b26c31b61724a0f3bc517ab624
parent 3ec74a0f2f7aebbedffaa74b6caa3d8299f65f08
Author: adnano <me@adnano.co>
Date: Thu, 28 Dec 2023 11:42:50 -0500
Check the return value of pipe
On some systems, pipe is declared with the attribute warn_unused_result,
so we have to check the return value.
3ec74a0f2f7aebbedffaa74b6caa3d8299f65f082023-12-28T16:28:08Z2023-12-28T16:28:08Zpool-buffer: Reduce struct paddingadnanome@adnano.cocommit 3ec74a0f2f7aebbedffaa74b6caa3d8299f65f08
parent d77ff0e64de510cf0aaec92107339f5b8c997702
Author: adnano <me@adnano.co>
Date: Thu, 28 Dec 2023 11:28:08 -0500
pool-buffer: Reduce struct padding
d77ff0e64de510cf0aaec92107339f5b8c9977022023-12-28T16:26:38Z2023-12-28T16:26:38ZFix various type issuesadnanome@adnano.cocommit d77ff0e64de510cf0aaec92107339f5b8c997702
parent ad40b9173cf2d9596d2747be7c1c3210f3dcb12f
Author: adnano <me@adnano.co>
Date: Thu, 28 Dec 2023 11:26:38 -0500
Fix various type issues
ad40b9173cf2d9596d2747be7c1c3210f3dcb12f2023-12-25T13:33:30Z2023-12-25T13:33:30ZVersion 0.1.5adnanome@adnano.cocommit ad40b9173cf2d9596d2747be7c1c3210f3dcb12f
parent e120b9156e758e881db5c13055c17999c62cfbd3
Author: adnano <me@adnano.co>
Date: Mon, 25 Dec 2023 08:33:30 -0500
Version 0.1.5
e120b9156e758e881db5c13055c17999c62cfbd32023-10-26T18:34:17Z2023-10-31T19:12:41ZFix build failure when compiling in releasePiotr Stefańskistefanskipiotr15@gmail.comcommit e120b9156e758e881db5c13055c17999c62cfbd3
parent adf5cda6e18dd1b0ce9fbde71200f79a816ecb91
Author: Piotr Stefański <stefanskipiotr15@gmail.com>
Date: Thu, 26 Oct 2023 20:34:17 +0200
Fix build failure when compiling in release
Compiling with --buildtype=release fails with message:
../main.c:935:17: error: argument 2 null where non-null expected [-Werror=nonnull]
935 | memcpy(state->text + state->cursor, s, n);
GCC only produces this error with optimizations enabled. Looking at
the build output I assume this happens because it tries to inline the
function.
adf5cda6e18dd1b0ce9fbde71200f79a816ecb912023-07-28T07:01:34Z2023-07-28T07:01:34ZImplement clipboard paste supportadnanome@adnano.cocommit adf5cda6e18dd1b0ce9fbde71200f79a816ecb91
parent e3da93aed8e9650a7c1a9b4e1c2e959cd47d7234
Author: adnano <me@adnano.co>
Date: Fri, 28 Jul 2023 03:01:34 -0400
Implement clipboard paste support
References: https://todo.sr.ht/~adnano/wmenu/4
e3da93aed8e9650a7c1a9b4e1c2e959cd47d72342023-07-15T22:55:07Z2023-07-15T22:55:07ZBump version to 0.1.4adnanome@adnano.cocommit e3da93aed8e9650a7c1a9b4e1c2e959cd47d7234
parent 554f3e7445234b5a60dd403aed9ef0db7437eb90
Author: adnano <me@adnano.co>
Date: Sat, 15 Jul 2023 18:55:07 -0400
Bump version to 0.1.4
554f3e7445234b5a60dd403aed9ef0db7437eb902023-07-15T22:51:45Z2023-07-15T22:51:45Zpango: Remove unused format specifieradnanome@adnano.cocommit 554f3e7445234b5a60dd403aed9ef0db7437eb90
parent ccca01d3cd6b7cc13cd9d65896f6d577acf7eee7
Author: adnano <me@adnano.co>
Date: Sat, 15 Jul 2023 18:51:45 -0400
pango: Remove unused format specifier
ccca01d3cd6b7cc13cd9d65896f6d577acf7eee72023-07-13T03:40:39Z2023-07-15T22:35:17ZRender after reading stdinMykyta Holubakhahilobakho@gmail.comcommit ccca01d3cd6b7cc13cd9d65896f6d577acf7eee7
parent 62e9584977639782d1d9288d8220069595e34ddc
Author: Mykyta Holubakha <hilobakho@gmail.com>
Date: Thu, 13 Jul 2023 06:40:39 +0300
Render after reading stdin
This allows seeing option list without doing any input, like in original dmenu.
62e9584977639782d1d9288d8220069595e34ddc2023-07-13T03:40:38Z2023-07-15T22:35:15ZDrop render_frame on surface_enterMykyta Holubakhahilobakho@gmail.comcommit 62e9584977639782d1d9288d8220069595e34ddc
parent 9fb3ffa5221e91f61ad5476c5cf226ab8789ed3e
Author: Mykyta Holubakha <hilobakho@gmail.com>
Date: Thu, 13 Jul 2023 06:40:38 +0300
Drop render_frame on surface_enter
9fb3ffa5221e91f61ad5476c5cf226ab8789ed3e2023-06-04T20:51:26Z2023-06-05T13:33:20ZFix crash when some line contains %Nikita Ivanovnikita.vyach.ivanov@gmail.comcommit 9fb3ffa5221e91f61ad5476c5cf226ab8789ed3e
parent bbd82569bb5dd72fa98b8229f1ca137551ec1bdb
Author: Nikita Ivanov <nikita.vyach.ivanov@gmail.com>
Date: Sun, 4 Jun 2023 22:51:26 +0200
Fix crash when some line contains %
bbd82569bb5dd72fa98b8229f1ca137551ec1bdb2023-03-20T23:03:03Z2023-03-20T23:03:03Zreadme: Tweak wordingadnanome@adnano.cocommit bbd82569bb5dd72fa98b8229f1ca137551ec1bdb
parent 5959a421aab2624e77d2d4bb952873b75af6444c
Author: adnano <me@adnano.co>
Date: Mon, 20 Mar 2023 19:03:03 -0400
readme: Tweak wording
5959a421aab2624e77d2d4bb952873b75af6444c2023-03-20T22:44:48Z2023-03-20T22:44:48ZUpdate README.mdadnanome@adnano.cocommit 5959a421aab2624e77d2d4bb952873b75af6444c
parent 7c1e28b201ed52e42ddd8b114fdfbad0720d86d2
Author: adnano <me@adnano.co>
Date: Mon, 20 Mar 2023 18:44:48 -0400
Update README.md
7c1e28b201ed52e42ddd8b114fdfbad0720d86d22023-02-26T12:45:37Z2023-02-26T12:50:54ZFix potential buffer overflowadnanome@adnano.cocommit 7c1e28b201ed52e42ddd8b114fdfbad0720d86d2
parent a7df5b270d5aea3a38e7dbc9a27bcfd059b8bc61
Author: adnano <me@adnano.co>
Date: Sun, 26 Feb 2023 07:45:37 -0500
Fix potential buffer overflow
Calling strncpy where the size of the string to copy is equal to the
size of the destination can potentially lead to a buffer overflow. To
fix this, copy only what is needed with memcpy, and explicitly terminate
the string with a null character.
a7df5b270d5aea3a38e7dbc9a27bcfd059b8bc612023-02-07T18:42:56Z2023-02-07T18:42:56ZBump versionadnanome@adnano.cocommit a7df5b270d5aea3a38e7dbc9a27bcfd059b8bc61
parent 5ed249e3f3505cdf8e1f50f6a3ad4f10d4746600
Author: adnano <me@adnano.co>
Date: Tue, 7 Feb 2023 13:42:56 -0500
Bump version
5ed249e3f3505cdf8e1f50f6a3ad4f10d47466002023-02-01T14:37:02Z2023-02-01T14:37:02ZFix buffer size not divisible by scaleadnanome@adnano.cocommit 5ed249e3f3505cdf8e1f50f6a3ad4f10d4746600
parent 5db5b3a7c7a342815226ad4262368577539e3df9
Author: adnano <me@adnano.co>
Date: Wed, 1 Feb 2023 09:37:02 -0500
Fix buffer size not divisible by scale
5db5b3a7c7a342815226ad4262368577539e3df92022-12-03T15:49:24Z2022-12-03T15:49:24Zdocs: Document new bindingsadnanome@adnano.cocommit 5db5b3a7c7a342815226ad4262368577539e3df9
parent 272540c7fbc008ff7eaf2257d5c54fd2151c69a6
Author: adnano <me@adnano.co>
Date: Sat, 3 Dec 2022 10:49:24 -0500
docs: Document new bindings
272540c7fbc008ff7eaf2257d5c54fd2151c69a62022-12-02T17:00:26Z2022-12-02T17:00:28ZDrop xdg-output-unstable-v1adnanome@adnano.cocommit 272540c7fbc008ff7eaf2257d5c54fd2151c69a6
parent 38b4bae4bd4b2f96c3ddfa69880dc50c0affb8d9
Author: adnano <me@adnano.co>
Date: Fri, 2 Dec 2022 12:00:26 -0500
Drop xdg-output-unstable-v1
Closes: https://todo.sr.ht/~adnano/wmenu/2
38b4bae4bd4b2f96c3ddfa69880dc50c0affb8d92022-12-02T16:35:30Z2022-12-02T16:35:30ZFix move to end of wordadnanome@adnano.cocommit 38b4bae4bd4b2f96c3ddfa69880dc50c0affb8d9
parent 972277a5e0a4d92810c84afe3a6b278b3f8bbd54
Author: adnano <me@adnano.co>
Date: Fri, 2 Dec 2022 11:35:30 -0500
Fix move to end of word
972277a5e0a4d92810c84afe3a6b278b3f8bbd542022-12-02T15:08:24Z2022-12-02T15:09:32ZSupport basic Emacs-style line-editing bindingsadnanome@adnano.cocommit 972277a5e0a4d92810c84afe3a6b278b3f8bbd54
parent 8cc6a22737ba801cc4b5846af3e33f348abfc52e
Author: adnano <me@adnano.co>
Date: Fri, 2 Dec 2022 10:08:24 -0500
Support basic Emacs-style line-editing bindings
Implements: https://todo.sr.ht/~adnano/wmenu/3
8cc6a22737ba801cc4b5846af3e33f348abfc52e2022-12-02T14:29:15Z2022-12-02T14:29:15ZSupport number pad keysadnanome@adnano.cocommit 8cc6a22737ba801cc4b5846af3e33f348abfc52e
parent 01a343ed121efdc2181e34c1192f96d53f8a5a86
Author: adnano <me@adnano.co>
Date: Fri, 2 Dec 2022 09:29:15 -0500
Support number pad keys
01a343ed121efdc2181e34c1192f96d53f8a5a862022-04-17T17:53:11Z2022-04-17T17:53:11ZREADME: Mention Swayadnanome@adnano.cocommit 01a343ed121efdc2181e34c1192f96d53f8a5a86
parent f8aa02f55bd33c70fda3276a6f60c7ef5cfe99d8
Author: adnano <me@adnano.co>
Date: Sun, 17 Apr 2022 13:53:11 -0400
README: Mention Sway
f8aa02f55bd33c70fda3276a6f60c7ef5cfe99d82022-04-15T08:50:45Z2022-04-17T17:45:24ZREADME: add contributing sectionlemontreelemontree@subnet.emailcommit f8aa02f55bd33c70fda3276a6f60c7ef5cfe99d8
parent 1f9b23e41238bc51574f7dd4470a788430e5ab5f
Author: lemontree <lemontree@subnet.email>
Date: Fri, 15 Apr 2022 10:50:45 +0200
README: add contributing section
1f9b23e41238bc51574f7dd4470a788430e5ab5f2022-04-17T17:27:28Z2022-04-17T17:27:28ZAdjust line heightadnanome@adnano.cocommit 1f9b23e41238bc51574f7dd4470a788430e5ab5f
parent decd2452deddb9c8a4bdcb1a0184cd056b01a5a0
Author: adnano <me@adnano.co>
Date: Sun, 17 Apr 2022 13:27:28 -0400
Adjust line height
decd2452deddb9c8a4bdcb1a0184cd056b01a5a02022-04-17T17:15:07Z2022-04-17T17:15:09ZImplement vertical list supportadnanome@adnano.cocommit decd2452deddb9c8a4bdcb1a0184cd056b01a5a0
parent 2f1c189d535c2d8dce74ec44c670305f00e4a30c
Author: adnano <me@adnano.co>
Date: Sun, 17 Apr 2022 13:15:07 -0400
Implement vertical list support
Implements: https://todo.sr.ht/~adnano/wmenu/1
2f1c189d535c2d8dce74ec44c670305f00e4a30c2022-01-16T13:32:58Z2022-01-16T13:32:58ZInitial commitadnanome@adnano.cocommit 2f1c189d535c2d8dce74ec44c670305f00e4a30c
Author: adnano <me@adnano.co>
Date: Sun, 16 Jan 2022 08:32:58 -0500
Initial commit