Skip to content

Release v0.2.6

Choose a tag to compare

@github-actions github-actions released this 05 Aug 10:48
· 70 commits to main since this release
v0.2.6: full output hotplug — connect, disconnect, reconfigure

Outputs that connect after daemon startup are now automatically detected.
A LayerSurface, wgpu surface, and render state are created for each new
output, with wallpaper restored from the per-output persistence cache.

Disconnected outputs are cleaned up: playback is stopped, render states
are removed from the shared map, and LayerSurfaces are released.

Output resolution, scale, and transform changes reconfigure the wgpu
surface on the fly without requiring a daemon restart.

wallr monitor list stays synchronized with live output state.

Structural changes:
- WaylandState now holds layer_shell, compositor, and DaemonHotplug
  context directly, enabling output callbacks to manage render states.
- Render-state map is shared as Arc<Mutex<HashMap<>> between the Wayland
  event loop and the IPC handler.
- Sync create_render_state_for_output function reuses the existing
  adapter, avoiding async requirements in the Wayland callback context.
- File watcher uses the shared render-state map so newly connected
  outputs automatically receive watched wallpapers.