applets/taskmanager: Use consistent dispatch for Meta+<1-9> shortcuts

Note

Companion MR: plasma-workspace!6848 (merged)

This MR moves the Meta+<1-9> shortcut registration and dispatch into the taskmanager's Backend class, unifying it with the cycling and move shortcuts added in !3819 (merged).

What changes

The Meta+1–9 shortcuts are now registered in Backend::setupShortcuts() using the same KActionCollection. Dispatch uses the priority order:

  1. Non-screen-filtered taskbar with the active task
  2. Screen-filtered taskbar with the active task
  3. (fallback) First non-screen-filtered instance (for launching pinned apps when no window is active)
  4. (fallback) First available instance

The shortcut action IDs match the old shellcorona-based implementation, so existing user customizations are preserved.

Why

Previously, the cycling/move shortcuts used one dispatch strategy while Meta+1–9 used a completely separate code path in shellcorona.cpp (primary-screen-first). This unifies them and removes the need for the shell to know about the taskmanager applet's QML internals.

Following up on previous discussion with @ngraham and @mart's earlier suggestion to keep this logic in the applet.

Edited by Salman Farooq

Merge request reports

Loading