Add configurable Plasma panel scroll and click actions

This commit is contained in:
ajp_anton
2026-09-07 19:47:47 +00:00
parent ed2bb7f92c
commit f5988605c8
29 changed files with 1707 additions and 0 deletions
+50
View File
@@ -0,0 +1,50 @@
# Panel Actions
Configurable scroll actions across Plasma panels, with optional empty-space
click actions. Starts automatically at login, without adding a visible widget.
Open **Panel Actions** from the application menu, Fedora Tools settings, or run
`plasma-panel-actions --settings`. Settings apply to all panels and are stored
in `~/.config/plasma-panel-actionsrc`; saved changes apply immediately.
Log out and back in after installing or updating. This starts the session
helper and ensures Plasma loads the installed version of the native plugin.
Scroll areas are empty space, task buttons and pinned apps, the application
launcher, clock, system tray, and other widgets. All default to volume control.
Other choices are screen brightness, keyboard backlight, virtual desktops, and
normal widget behaviour. Actions use Plasma's existing shortcuts, including its
usual volume/brightness steps and on-screen indicators.
Left and middle clicks, and double clicks, on empty space can toggle mute, show
the desktop, open Overview, play/pause media, launch an installed application,
or run a custom shell command as the current user. All default to normal
behaviour. Commands are user-authored shell code: only enter commands you trust.
For a task-manager shortcut, set left double click to **Launch application →
System Monitor** (if installed). Other widgets'
clicks, right-click menus, and popup scrolling remain unchanged. Dragging does
not trigger a click action, and overrides pause in Panel Edit Mode.
Double clicks use the desktop's timing and movement tolerance. Assigning a
double-click action delays the corresponding single action until the interval
expires; a double click runs only the double action. With single click set to
Normal behaviour and a double action assigned, a single click does nothing.
Optionally add **Panel Actions Spacer** from the widget chooser to reserve
empty space. It expands into remaining space while giving other widgets their
preferred width, down to a configurable minimum (48 logical pixels by default).
Move it in Panel Edit Mode like any other widget. It is transparent outside
Edit Mode, with no icon or popup. Standard spacers and unused Task Manager
space also count as empty space; the optional spacer is not required for them.
The session helper attaches an invisible controller to each panel and restores
it after Plasma restarts or panels are added. It watches for changes, rather
than polling. The controller handles panel input inside Plasma, leaving popup
and application windows alone. No system files are patched.
Requires Plasma 6.7 and Qt 6.8 or newer. Area detection follows Plasma's panel
layout and Task Manager delegates; changes to those internals may require an
update. Brightness actions depend on hardware support. Firmware-controlled
keyboard-backlight Auto modes can override manual adjustments; select a fixed
level with the keyboard first. Virtual desktop actions
need more than one desktop. Horizontal scrolling is consumed without an action
in areas with an override. Smooth scrolling is accumulated into discrete steps.