xmenu, branch HEADdrop-down menu for X11
a159bf9580d0f862819b9bb132a50c2bc645d0332023-10-02T09:04:13Z2023-10-02T09:04:13ZPerform font substitute according to fontconfigWilly Goiffondev@z3bra.orgcommit a159bf9580d0f862819b9bb132a50c2bc645d033
parent cee4923f600997aed880b33c886e4300288169e6
Author: Willy Goiffon <dev@z3bra.org>
Date: Mon, 2 Oct 2023 11:04:13 +0200
Perform font substitute according to fontconfig
cee4923f600997aed880b33c886e4300288169e62020-10-28T10:04:52Z2020-10-28T10:05:34ZFigure out DPI while loading fontWilly Goiffondev@z3bra.orgcommit cee4923f600997aed880b33c886e4300288169e6
parent 505a6b3bd489b7d60ead607b4e4755134301b55b
Author: Willy Goiffon <dev@z3bra.org>
Date: Wed, 28 Oct 2020 11:04:52 +0100
Figure out DPI while loading font
505a6b3bd489b7d60ead607b4e4755134301b55b2020-05-23T16:01:25Z2020-05-23T16:01:25ZRemove useless headers from xmenu.cWilly Goiffondev@z3bra.orgcommit 505a6b3bd489b7d60ead607b4e4755134301b55b
parent cfe26f791c3ecbe16beab4e44248f38823417164
Author: Willy Goiffon <dev@z3bra.org>
Date: Sat, 23 May 2020 18:01:25 +0200
Remove useless headers from xmenu.c
Headers are already imported in font.h, no need to import them twice.
cfe26f791c3ecbe16beab4e44248f388234171642019-12-11T12:40:45Z2019-12-11T12:40:45ZGrab mouse press so it is not reported to parentWilly Goiffondev@z3bra.orgcommit cfe26f791c3ecbe16beab4e44248f38823417164
parent 8f9be12c94925f9ded2dc48f78dbaf98cd437d4e
Author: Willy Goiffon <dev@z3bra.org>
Date: Wed, 11 Dec 2019 13:40:45 +0100
Grab mouse press so it is not reported to parent
8f9be12c94925f9ded2dc48f78dbaf98cd437d4e2019-12-05T07:21:04Z2019-12-05T07:21:04ZRefactorize code based on -d flagWilly Goiffondev@z3bra.orgcommit 8f9be12c94925f9ded2dc48f78dbaf98cd437d4e
parent a4ae7032b6547f29e21c8f94a0b36836bbe64af8
Author: Willy Goiffon <dev@z3bra.org>
Date: Thu, 5 Dec 2019 08:21:04 +0100
Refactorize code based on -d flag
a4ae7032b6547f29e21c8f94a0b36836bbe64af82019-12-05T07:19:07Z2019-12-05T07:19:07ZFlush X connection before waiting for eventsWilly Goiffondev@z3bra.orgcommit a4ae7032b6547f29e21c8f94a0b36836bbe64af8
parent 2887ba0d41f031f54f256aa5adbfacaa421ab2a4
Author: Willy Goiffon <dev@z3bra.org>
Date: Thu, 5 Dec 2019 08:19:07 +0100
Flush X connection before waiting for events
2887ba0d41f031f54f256aa5adbfacaa421ab2a42019-11-23T10:36:10Z2019-11-23T10:36:10ZImprove behavior when root window is grabbedWilly Goiffondev@z3bra.orgcommit 2887ba0d41f031f54f256aa5adbfacaa421ab2a4
parent bf59d1b7d425a118abedc02bd29fd04a55460bfd
Author: Willy Goiffon <dev@z3bra.org>
Date: Sat, 23 Nov 2019 11:36:10 +0100
Improve behavior when root window is grabbed
* only respond to a single mouse button (hardcoded)
* clear selection when moving outside the menu
bf59d1b7d425a118abedc02bd29fd04a55460bfd2019-11-21T12:58:51Z2019-11-21T12:58:51ZUse item list provided at runtime rather than hardcode itWilly Goiffondev@z3bra.orgcommit bf59d1b7d425a118abedc02bd29fd04a55460bfd
parent 9db050cb33f34dcdd6862d71240b7e1593bfcaa5
Author: Willy Goiffon <dev@z3bra.org>
Date: Thu, 21 Nov 2019 13:58:51 +0100
Use item list provided at runtime rather than hardcode it
9db050cb33f34dcdd6862d71240b7e1593bfcaa52019-11-21T12:53:24Z2019-11-21T12:53:24ZActively grab the pointer on the menu windowWilly Goiffondev@z3bra.orgcommit 9db050cb33f34dcdd6862d71240b7e1593bfcaa5
parent b02590ceeb90f07ab4ffe23bfa71ae1c8d096e9a
Author: Willy Goiffon <dev@z3bra.org>
Date: Thu, 21 Nov 2019 13:53:24 +0100
Actively grab the pointer on the menu window
This is made so no other application will receive our pointer events
on parents of the window , like one monitoring pointer events on the
root window.
b02590ceeb90f07ab4ffe23bfa71ae1c8d096e9a2019-11-20T17:49:06Z2019-11-20T17:49:06ZAdd monitoring of events on root windowWilly Goiffondev@z3bra.orgcommit b02590ceeb90f07ab4ffe23bfa71ae1c8d096e9a
parent 61c19bc23c3509c5b1e32afe95f335516fd39d32
Author: Willy Goiffon <dev@z3bra.org>
Date: Wed, 20 Nov 2019 18:49:06 +0100
Add monitoring of events on root window
This will let the menu run as a daemon watching click events on the root
window and pop the menu on such events.
This saves a click compared to firing the application from an external
programming that's listenning for events.
61c19bc23c3509c5b1e32afe95f335516fd39d322019-11-20T13:04:43Z2019-11-20T13:04:43ZMove window creation and event loop outside the main()Willy Goiffondev@z3bra.orgcommit 61c19bc23c3509c5b1e32afe95f335516fd39d32
parent c6811f6a13d0f8b361c2860ae1c38ac88ac341ec
Author: Willy Goiffon <dev@z3bra.org>
Date: Wed, 20 Nov 2019 14:04:43 +0100
Move window creation and event loop outside the main()
c6811f6a13d0f8b361c2860ae1c38ac88ac341ec2019-11-20T11:21:15Z2019-11-20T11:21:15ZMake calculated width/height available globallyWilly Goiffondev@z3bra.orgcommit c6811f6a13d0f8b361c2860ae1c38ac88ac341ec
parent 8bac6abcc55ccd2e2a7e20349aa87362becbd683
Author: Willy Goiffon <dev@z3bra.org>
Date: Wed, 20 Nov 2019 12:21:15 +0100
Make calculated width/height available globally
8bac6abcc55ccd2e2a7e20349aa87362becbd6832019-11-20T07:53:16Z2019-11-20T07:53:16ZDefine menu size based on menu entriesWilly Goiffondev@z3bra.orgcommit 8bac6abcc55ccd2e2a7e20349aa87362becbd683
parent 9ecad90506da66bd70fa52789aa60e8af79f5a02
Author: Willy Goiffon <dev@z3bra.org>
Date: Wed, 20 Nov 2019 08:53:16 +0100
Define menu size based on menu entries
9ecad90506da66bd70fa52789aa60e8af79f5a022019-11-20T07:45:24Z2019-11-20T07:45:24ZCleanup fonts on program terminationWilly Goiffondev@z3bra.orgcommit 9ecad90506da66bd70fa52789aa60e8af79f5a02
parent ef10488524d19fc455dafb8fc84fbbe898ae0c85
Author: Willy Goiffon <dev@z3bra.org>
Date: Wed, 20 Nov 2019 08:45:24 +0100
Cleanup fonts on program termination
ef10488524d19fc455dafb8fc84fbbe898ae0c852019-11-20T07:37:14Z2019-11-20T07:37:14ZFree the malloc() !Willy Goiffondev@z3bra.orgcommit ef10488524d19fc455dafb8fc84fbbe898ae0c85
parent 72ba8a895a8f50ca3cd6ce21688683d3e421114c
Author: Willy Goiffon <dev@z3bra.org>
Date: Wed, 20 Nov 2019 08:37:14 +0100
Free the malloc() !
72ba8a895a8f50ca3cd6ce21688683d3e421114c2019-11-20T07:37:03Z2019-11-20T07:37:03ZDo not select any entry when moving outside the windowWilly Goiffondev@z3bra.orgcommit 72ba8a895a8f50ca3cd6ce21688683d3e421114c
parent 3d49be3451b8f2caa0e1df5ad23af9791fb5a5b3
Author: Willy Goiffon <dev@z3bra.org>
Date: Wed, 20 Nov 2019 08:37:03 +0100
Do not select any entry when moving outside the window
3d49be3451b8f2caa0e1df5ad23af9791fb5a5b32019-11-20T07:36:29Z2019-11-20T07:36:29ZHilight entries rather than outline themWilly Goiffondev@z3bra.orgcommit 3d49be3451b8f2caa0e1df5ad23af9791fb5a5b3
parent 6e984bc6d761614be9bb1da31217a40fbb587ccd
Author: Willy Goiffon <dev@z3bra.org>
Date: Wed, 20 Nov 2019 08:36:29 +0100
Hilight entries rather than outline them
6e984bc6d761614be9bb1da31217a40fbb587ccd2019-11-19T17:17:56Z2019-11-19T17:17:56ZSelect and print what's under cursor on exitWilly Goiffondev@z3bra.orgcommit 6e984bc6d761614be9bb1da31217a40fbb587ccd
parent 8f3bd60df8e72fdbbcef34f94578590ccb791a38
Author: Willy Goiffon <dev@z3bra.org>
Date: Tue, 19 Nov 2019 18:17:56 +0100
Select and print what's under cursor on exit
8f3bd60df8e72fdbbcef34f94578590ccb791a382019-11-19T07:57:36Z2019-11-19T07:57:36ZRespond to various X events received on windowWilly Goiffondev@z3bra.orgcommit 8f3bd60df8e72fdbbcef34f94578590ccb791a38
parent 9a12b6f436404472e429ded821d4b60020f2594b
Author: Willy Goiffon <dev@z3bra.org>
Date: Tue, 19 Nov 2019 08:57:36 +0100
Respond to various X events received on window
9a12b6f436404472e429ded821d4b60020f2594b2019-11-18T08:44:23Z2019-11-18T08:46:21ZFill-in default attributes not given in the font queryWilly Goiffondev@z3bra.orgcommit 9a12b6f436404472e429ded821d4b60020f2594b
parent f7955cfb26803170f6152a69f459abcef180c88b
Author: Willy Goiffon <dev@z3bra.org>
Date: Mon, 18 Nov 2019 09:44:23 +0100
Fill-in default attributes not given in the font query
f7955cfb26803170f6152a69f459abcef180c88b2019-11-18T08:38:46Z2019-11-18T08:46:21ZAdapt window size based to the menu entriesWilly Goiffondev@z3bra.orgcommit f7955cfb26803170f6152a69f459abcef180c88b
parent fd1386309fc2b03ccb4387c28cce4ad852bb2c2b
Author: Willy Goiffon <dev@z3bra.org>
Date: Mon, 18 Nov 2019 09:38:46 +0100
Adapt window size based to the menu entries
fd1386309fc2b03ccb4387c28cce4ad852bb2c2b2019-11-18T07:15:46Z2019-11-18T08:46:16ZReplace venam's xcbft.h by my own implementationWilly Goiffondev@z3bra.orgcommit fd1386309fc2b03ccb4387c28cce4ad852bb2c2b
parent 8695651f358780a5fe85ac4f5b5a0a8ac5e5a4d6
Author: Willy Goiffon <dev@z3bra.org>
Date: Mon, 18 Nov 2019 08:15:46 +0100
Replace venam's xcbft.h by my own implementation
The main advantage is that I understand mine better :)
There are less abstract structure types used to save stuff like face
and glyphsets.
This might be a more rigid model, but it suits our needs better.
8695651f358780a5fe85ac4f5b5a0a8ac5e5a4d62019-11-09T00:14:19Z2019-11-09T00:14:19ZPrint random text in the window using fontconfigWilly Goiffondev@z3bra.orgcommit 8695651f358780a5fe85ac4f5b5a0a8ac5e5a4d6
parent 769a43b6022669b39f11685961727945be3a016c
Author: Willy Goiffon <dev@z3bra.org>
Date: Sat, 9 Nov 2019 01:14:19 +0100
Print random text in the window using fontconfig
Thanks venam!!
https://venam.nixers.net/blog/unix/2018/09/02/fonts-xcb.html
769a43b6022669b39f11685961727945be3a016c2019-11-08T22:05:57Z2019-11-08T22:05:57ZInitialize font through fontconfig + freetypeWilly Goiffondev@z3bra.orgcommit 769a43b6022669b39f11685961727945be3a016c
parent 7ee5c0bf82d7491c1f62d381fcde373ec154d066
Author: Willy Goiffon <dev@z3bra.org>
Date: Fri, 8 Nov 2019 23:05:57 +0100
Initialize font through fontconfig + freetype
7ee5c0bf82d7491c1f62d381fcde373ec154d0662019-11-08T21:11:42Z2019-11-08T21:23:28ZCreate a window on screenWilly Goiffondev@z3bra.orgcommit 7ee5c0bf82d7491c1f62d381fcde373ec154d066
parent 6aa884a39d72c6c64ccb4efdf2417c90df0fef72
Author: Willy Goiffon <dev@z3bra.org>
Date: Fri, 8 Nov 2019 22:11:42 +0100
Create a window on screen
6aa884a39d72c6c64ccb4efdf2417c90df0fef722019-11-08T20:33:28Z2019-11-08T21:10:23ZInitial commitWilly Goiffondev@z3bra.orgcommit 6aa884a39d72c6c64ccb4efdf2417c90df0fef72
Author: Willy Goiffon <dev@z3bra.org>
Date: Fri, 8 Nov 2019 21:33:28 +0100
Initial commit