Skip to content
Nathan edited this page Feb 22, 2026 · 5 revisions

PlasmaZones Wiki

Welcome to the PlasmaZones wiki — the central place for user-facing and developer documentation.

PlasmaZones is an advanced window zone management tool for KDE Plasma 6. Define zones on your screen, drag windows into them, and they resize to fit. GPU-accelerated shader overlays, audio-reactive effects, multi-monitor support, and full System Settings integration.


Guides

  • Scripting Guide — Automate PlasmaZones with shell scripts or Python: layout switching, window management, multi-monitor setups, event-driven automation via D-Bus.
  • Shader Guide — Create custom GLSL shaders for zone overlays: metadata, parameters, fragment/vertex templates, audio integration, user textures, multipass, and built-in examples.

API Reference

  • D-Bus API Reference — Complete API docs for the PlasmaZones daemon D-Bus service.
    • LayoutManager — Layout CRUD, screen/virtual-desktop/activity assignments, quick layout slots, editor
    • Overlay — Zone overlay visibility, highlighting, zone detection, window tracking, Snap Assist, Zone Selector
    • Screen — Screen enumeration, metadata, add/remove/geometry-change notifications
    • Settings — Load/save/reset config, get/set by key, Zone Selector settings, shader parameter translation
    • WindowDrag — Drag lifecycle (KWin → daemon): start, move, stop; snap geometry response
    • WindowTracking — Window–zone tracking, pre-snap geometry, floating state, zone geometry, auto-snap, restore, navigation feedback

Key Features

  • Window Snapping — Drag with modifier key or always-active mode; multi-zone snapping; app-to-zone auto-snap rules
  • Layout Editor — Visual canvas with 12 built-in templates, undo/redo, split/fill/duplicate, grid snapping
  • Shader Effects — 9 built-in GPU-accelerated effects with audio reactivity (CAVA), user textures, and multipass rendering
  • Snap Assist — After snapping, see remaining empty zones with window candidates for one-click placement
  • Zone Selector — Drag to screen edge to reveal a layout picker
  • Layout PickerMeta+Alt+Space to browse and switch layouts visually
  • Navigation OSD — Brief feedback overlays for keyboard navigation actions
  • Multi-Monitor — Per-monitor, per-virtual-desktop, and per-activity layouts
  • System Settings — Full KCM module with 7 tabs, built-in update checker

Quick Links

Clone this wiki locally