Skip to content

v0.4.1

Latest

Choose a tag to compare

@JuhLabs JuhLabs released this 21 Jul 09:31

Bug-fix release, driven by reports from #60, #65 and #67.

Fixes

The radial menu opens at the cursor on GNOME Wayland. XWayland only refreshes its pointer position while the cursor sits over an X11 window, so on an all-Wayland GNOME desktop the overlay was positioning the menu from a stale reading. It now forces a fresh reading the same way the COSMIC and niri paths do, and reads the result in Qt's coordinate space so scaled displays land correctly too.

GNOME Shell 50. The bundled cursor helper extension declares support for Shell 50.

A second tap closes the menu again. The daemon emits its open signal twice for a single press, roughly 130us apart, and the duplicate reopened the menu that had just closed. The overlay now ignores the duplicate, which also removes a redundant open on every press.

Only one overlay runs at a time. On KDE, session restore and the launcher could each start an overlay, and the two fought over the same daemon signal, leaving the gesture button unresponsive. The overlay now takes a single instance lock on the session bus and a second copy exits immediately. Refs #60.

Thumb-wheel assignments take effect. The Buttons tab wrote the setting to a config key the daemon never read, so the wheel kept its previous mode, for example staying on zoom after being set to horizontal scroll. The dialog now also offers only the actions a rotational wheel can perform.

The screenshot action picks a tool that works. It defaulted to spectacle, which cannot capture outside KDE. KDE keeps spectacle; GNOME and other portal desktops use the freedesktop screenshot portal, with a helper that keeps the request alive until you finish the selection, since GNOME 42+ removed third-party access to the Shell screenshot API. flameshot remains a last resort.

Dependencies

serde 1.0.229, tokio 1.53.0, zbus 5.18.0. CI: actions/checkout 7, codeql-action 4.37.1.

Security and CI hygiene

Least-privilege permissions: on every workflow, and all GitHub Actions pinned to commit SHAs, addressing the OpenSSF Scorecard Token-Permissions and Pinned-Dependencies findings.

Notes

If you are on KDE and previously saw two juhradial-overlay.py processes, log out and back in once after updating, then check with ps -ef | grep juhradial. A single process is expected.