Skip to content

Halley v0.2.0 — Focus, Maximize, Shadows, Slots, and TTY Fixes

Choose a tag to compare

@saltnpepper97 saltnpepper97 released this 28 Apr 15:41
· 126 commits to main since this release

Added

  • NEW: Focus cycling with default Alt+Tab / Alt+Shift+Tab bindings and a modal overlay switcher showing window previews, app icons, monitor labels, and keyboard hints.
  • NEW: Field-scoped maximize with default mod+m, dedicated maximize animation config, monitor-local restore behavior, and pinned-state preservation.
  • NEW: Cluster slot actions for monitor-local slots 1–10, bound by default to mod+1..9 and mod+0.
  • NEW: Configurable compositor shadows for windows, nodes, and overlays, with generated defaults plus parser support for per-layer blur, spread, offset, and color.
  • NEW: Bootstrap config merging so existing user configs pick up new template sections, options, and default keybinds without overwriting custom rules, env, or autostart.
  • NEW: Display-manager session support with shipped Wayland session assets and a native halley --session launch path for SDDM and other display managers.

Changed

  • MAJOR: Focus cycling is now modal until binding modifiers are released, then commits the selected window, restores fullscreen state as needed, and recenters the pointer.
  • MAJOR: Overlap-policy windows now render above fullscreen without immediately forcing fullscreen apps out of fullscreen.
  • MAJOR: Maximize sessions are smoother and stricter, with camera zoom transitions, blocked pan/zoom/move/resize while active, reliable restore, and safer rapid re-toggle behavior.
  • MAJOR: Cluster slot switching is smarter, panning to target cores, collapsing the current cluster before switching, and toggling the current slot back to a core.
  • MAJOR: Drag edge-panning is smoother, using camera smoothing plus zoom-aware, pressure-scaled movement.
  • MAJOR: Shipped configs now include current shadow defaults, plus split-config gather guidance for cleaner config organization.
  • Collapsed surface nodes now use the same two-step click flow as core nodes.
  • Display-manager startup now runs halley --session directly.

Fixed

  • MAJOR FIX: Native TTY/DRM stability improved with cleaner scanout recovery after page-flip failures, stalled frame timeouts, and recoverable pending-output release.
  • MAJOR FIX: Hotplug handling no longer stalls rendering, replacing periodic DRM topology polling with udev-driven rescans.
  • MAJOR FIX: Fullscreen + overlap-policy behavior is much safer, so overlap-rule windows can open above fullscreen without breaking fullscreen locks, zoom locks, pointer panning locks, or direct scanout unnecessarily.
  • MAJOR FIX: Display-manager launches now survive SDDM startup correctly, and autostart commands can resolve user-bin apps like gessod, stasis, and halley-aperture.
  • MAJOR FIX: Deferred overlap rules no longer break maximize mode while late rules are still resolving.
  • Fixed drag edge-pan timing so render timing variance no longer causes inconsistent pan jumps.
  • Fixed hover focus spawning so empty monitor space under the pointer becomes the default spawn target.
  • Improved DRM vblank pacing, explicit-sync handling, texture reuse, and EGL/GL renderer logging.
  • Preserved gather resolution when config files need Halley’s inline keybind fallback, including recursively gathered files.