Skip to content

About

KDE Plasma 5 task manager applet that splits window buttons into two areas by window position

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

TaskManager Split

Status: v1.0.0 — first stable release. Tested on KDE Plasma 5.24.7 and 5.27, X11 and Wayland. Plasma 6 is not supported. The optional Agent Watcher ships disabled by default.

TaskManager Split is a KDE Plasma 5 panel applet that replaces the standard Task Manager and divides open-window tasks into two areas according to each window's on-screen position.

What it does

  • Spatial task list: buttons are laid out based on where each window actually sits on the screen, not just in one long row.
  • Positional split: a window whose center is left of the screen midpoint appears in the left area; a window to the right appears in the right area. Moving a window across the midpoint moves its button to the other area in real time.
  • Works on vertical panels too: top/bottom areas follow the same midpoint logic, with a configurable rule for whether classification follows the panel orientation or always uses left/right screen position.
  • Per-monitor filtering: each applet instance shows only the windows on the monitor that contains its panel, and re-classifies them when a window moves between monitors.
  • Folders: group windows into named folders that live inside the split areas, with optional auto-capture of newly opened windows into the current folder.
  • Optional Agent Watcher: show busy/free status for Pi agents running inside terminal windows, as colored circles on the task button.

Screenshots

Horizontal split (hero) Second horizontal view
Horizontal split — tasks divided by window position Second horizontal split view
Vertical panel Settings
Vertical panel — top/bottom areas Settings dialog
Light theme — horizontal Light theme — vertical
Light theme — horizontal split Light theme — vertical panel

Features

  • Task list: one non-wrapping row on a horizontal panel (column on a vertical panel); items that do not fit go to the overflow dropdown instead of resizing the panel.
  • Positional split: horizontal panels use left/right areas, vertical panels use configurable top/bottom areas. Tie-break: center <= screenCenter belongs to the first area. The split is automatic; window area assignment is always geometry-derived and never manually settable.
  • Per-monitor filtering: each instance shows only the windows of its own monitor; a window moving between monitors is re-classified against the destination screen midpoint without being treated as newly opened.
  • Task controls: click an inactive task to activate it; click the already-active task to minimize/restore; context menu offers Rename, folder actions, and Close. Stock Task Manager extras (pinning, jump lists, MPRIS, virtual desktops) are not included.
  • Active-window highlight: the active window's button is visually distinct.
  • Local rename: session-only custom titles that survive the application changing its own title, with an explicit reset to the real title.
  • Minimized-window side stability: minimized windows keep their last known side; restoring causes no wrong-area flicker.
  • Overflow: an ellipsis-only button fixed at the area's trailing edge; the dropdown lists hidden items with icons and elided labels.
  • Folders: create from the context menu or by dragging; entering a folder shows only its windows; deleting a folder returns windows to root without closing them; auto-capture (on by default) captures newly opened windows into the current folder. Folder definitions and ordering persist across panel restarts; window-to-folder assignments and custom titles do not.

Experimental (off by default)

  • Agent Watcher: busy/free circles for supported AI-agent workflows in terminal windows (red = busy, green = free; multiple agents as individual or segmented circles, overflow as +N). While disabled it runs no polling timer, reads no file, and alters no button. Requires the optional Pi adapter (see installation below); on Wayland it is a silent no-op.
  • Manual drag ordering: reordering and drop-to-folder via drag-and-drop, persisted per area. Uses internal Plasma drag-and-drop APIs that may not be stable across Plasma 5.24–5.27; loaded only when the setting is enabled.

Configuration keys

Persistent settings live in the standard Plasma KConfig schema. Some are exposed directly in the applet's settings page; others (foldersJson, manualOrderJson) are populated automatically by the applet runtime.

Key Type Default Description
splitEnabled bool true Enable positional split mode
splitLogic string Follow panel orientation Split rule: Follow panel orientation or Always left/right screen position
autoCaptureNewWindows bool true Capture newly opened windows into the current folder
foldersJson string "" Persistent folder definitions and ordering
showAgentWatcher bool false Enable Agent Watcher indicator
agentIndicatorStyle string Individual circles Individual circles or Segmented circle
enableExperimentalDrag bool false Enable experimental task/folder drag-and-drop
manualOrderJson string "" Unified per-area manual order populated by drag reorder

Project facts

Item Value
Target KDE Plasma 5.24 LTS through 5.27 LTS; Qt 5.15.x
Display servers X11 primary; Plasma Wayland supported
Plasma 6 Not supported by this release
Packaging kpackagetool5 -t Plasma/Applet — architecture-independent QML, no build step
Plugin ID com.github.serhiq.taskmanagersplit
Source https://github.com/serhiq/taskmanager-split
Bug reports https://github.com/serhiq/taskmanager-split/issues
Display name TaskManager Split
Author Ovcharenko Ekaterina
License GPL-2.0-or-later (see LICENSE and SPDX headers in source files)
Changelog CHANGELOG.md
Specification SPECIFICATION.md
Version 1.0.0

Installation

kpackagetool5 -t Plasma/Applet --install .

To upgrade an existing installation:

kpackagetool5 -t Plasma/Applet --upgrade .

To remove:

kpackagetool5 -t Plasma/Applet --remove com.github.serhiq.taskmanagersplit

After installation, add the applet to a panel from the panel toolbox or widget list.

The widget is also available from the KDE Store (category Plasma 5 Applets): right-click the panel → Add Widgets… → Get New Widgets… → search for TaskManager Split.

Optional Pi adapter for Agent Watcher

cd extensions/taskmanager-split-status
./install.sh
# Reload the Pi agent or restart the Pi process to load the extension.

Relationship to the prototype

This repository is a clean-room rewrite, not a fork. An earlier monolithic prototype was used only as behavioral reference; its architecture was intentionally not carried over.

License

This project is licensed under the GNU General Public License v2.0 or later. See the LICENSE file and SPDX headers in individual source files for details.

About

KDE Plasma 5 task manager applet that splits window buttons into two areas by window position

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages