PlasmaZones v3.0.11
Changed
- Layer-shell state setters skip unchanged values across configure events (#522): KWin re-emits
zwlr_layer_surface_v1configure events on every virtual-desktop switch, andapplyPropertieswas unconditionally re-sending the full layer-shell state (anchor, layer, exclusive zone, keyboard interactivity, margin, size, exclusive edge) — six to seven protocol messages per surface per configure. The applied state is now cached per surface and each setter only fires when its source property has actually changed.
Fixed
- Focus-follows-mouse activated tiled windows underneath an active popup (#461, #521): the 3.0.10 FFM fix made auto-focus-follow-mouse consistent for the common case but missed the case where an excluded or untracked window (emoji picker, notification popup, krunner) was active inside a zone. Moving the cursor across the underlying tiled window's visible area still activated that tiled window, sending the just-opened popup straight to the background.
handleCursorMovednow also checks the currently active window — if it is an excluded app, dialog, popup, keep-above overlay, or below the min-size threshold, FFM pauses on the cursor's screen until a tileable window becomes active. - Stale pending-restore entries for excluded apps grew session.json and logged on every daemon start (#461, #521): runtime gates already refused to honor pending restores for excluded apps, but the dead entries persisted on disk in
PendingRestoreQueuesandAutotilePendingRestoresand reappeared on every restart. Both engines now prune their on-disk queues against the current exclusion lists at startup and whenever the lists change. - Drag artifacts, post-snap flicker, and a gray decoration ring during snap drags (#516, #523): the zone-preview
PassiveShellmapped on the Overlay layer fullscreen during a drag, masking KWin's Translucency-while-moving effect. On hybrid Intel+NVIDIA setups (CachyOS, Plasma 6.6.5, NVIDIA 595) this also forced a slower compositional path that produced the visible drag artifacts and post-snap flicker. The PassiveShell role is now downgraded to the Top layer — the same layer KDE's own panels live on — which coexists with the translucency effect. Fullscreen apps on Overlay still draw above the zone preview correctly.
Installation
Arch Linux (AUR):
yay -S plasmazones # or plasmazones-binArch Linux (manual):
sudo pacman -U plasmazones-3.0.11-*-x86_64.pkg.tar.zstKDE Neon / Debian-based:
sudo dpkg -i plasmazones_3.0.11-*_amd64.deb
sudo apt-get install -f # Install dependencies if neededFedora (COPR):
sudo dnf copr enable fuddlesworth/PlasmaZones
sudo dnf install plasmazonesFedora (manual RPM):
# Fedora 43
sudo dnf install plasmazones-3.0.11-*.fc43.x86_64.rpm
# Fedora 44
sudo dnf install plasmazones-3.0.11-*.fc44.x86_64.rpmopenSUSE Tumbleweed (manual RPM):
sudo zypper install plasmazones-3.0.11-*.x86_64.rpmopenSUSE Tumbleweed (OBS):
sudo zypper addrepo https://download.opensuse.org/repositories/home:fuddlesworth/openSUSE_Tumbleweed/home:fuddlesworth.repo
sudo zypper refresh
sudo zypper install plasmazonesUniversal Linux (AppDir):
For Fedora Atomic, Steam Deck, or non-root user installation:
tar xzf plasmazones-3.0.11-linux-x86_64.tar.gz
cd plasmazones-linux-x86_64
./install.shNixOS (flake):
# flake.nix inputs
plasmazones.url = "github:fuddlesworth/PlasmaZones";
# configuration.nix
programs.plasmazones.enable = true;NixOS (standalone):
Download plasmazones.nix from the release assets, then:
# configuration.nix
environment.systemPackages = [
(pkgs.callPackage ./plasmazones.nix {})
];Post-Installation
systemctl --user enable --now plasmazones.service
systemsettings kcm_plasmazones