v0.9.23
What's Changed
- fix(test): avoid function pointer identity assumption in release builds by @devmobasa in #277
- Prevent damage-region merge stalls on dense canvases by @devmobasa in #278
- Wake the event loop when persistence work completes by @devmobasa in #279
- Wake daemon and overlay event loops on signal delivery by @devmobasa in #280
- fix(tray): detect Omarchy as a Quickshell icon host by @devmobasa in #281
- perf(runtime): wake Wayland for bounded GTK toolbar feedback by @devmobasa in #282
- perf(runtime): wake Wayland for clipboard completions by @devmobasa in #283
- perf(runtime): wake Wayland for capture completions by @devmobasa in #284
- Make configurator saves lossless and conflict-safe by @devmobasa in #285
- refactor(toolbar): share top toolbar specification across frontends by @devmobasa in #286
- refactor(domain): centralize shared value types by @devmobasa in #288
- perf(configurator): keep the UI responsive during blocking jobs by @devmobasa in #289
- chore(repo): remove stale sources and enforce module-graph coverage by @devmobasa in #290
- feat(daemon): harden protocol v2 and centralize process ownership by @devmobasa in #291
- fix(capture): synchronize GTK toolbar surfaces before screen capture by @devmobasa in #292
- fix(capture): harden overlay suppression synchronization by @devmobasa in #294
- Preserve config comments and formatting during runtime saves by @devmobasa in #295
- feat(ui): overhaul the annotation workspace and interaction model by @devmobasa in #296
- Improve Canvas popover navigation and zoom controls by @devmobasa in #297
- fix(config): limit runtime saves to the changed setting by @devmobasa in #298
- Add hidden toolbar recovery hint by @devmobasa in #299
- feat: persist runtime UI preferences separately from config by @devmobasa in #300
- feat(ui): make hidden chrome discoverable and recoverable by @devmobasa in #301
- feat(ui): add Focus Mode and persistent chrome controls by @devmobasa in #302
- feat(command-palette): highlight query matches and soften the panel shadow by @devmobasa in #303
- fix(toolbar): stabilize popovers and fit Advanced settings by @devmobasa in #304
- feat(text): add Wayland IME support and key repeat by @devmobasa in #305
- feat(text): add caret editing, selection, and clipboard support by @devmobasa in #306
- feat(palette): recolor quick-color swatches from the picker by @devmobasa in #307
- feat: tapered arrows, blur redaction styles, and a spotlight tool by @devmobasa in #308
- build(nix): add nixpkgs recipe parity checks by @devmobasa in #309
- feat(color-picker): add RGBA support and persistent recents by @devmobasa in #310
- Redesign About window and add opt-out update notifications by @devmobasa in #311
- feat(status): make status bar contents configurable by @devmobasa in #312
- perf(toolbar-gtk): remove multi-second settings toggle stalls by @devmobasa in #313
- feat: add a configurable input HUD for keystrokes and clicks by @devmobasa in #315
- fix(packaging): embed gtk4-layer-shell in release binaries by @devmobasa in #316
- fix(config): preserve authored config during runtime updates by @devmobasa in #317
- Fix inline toolbar flicker from stale swapchain damage by @devmobasa in #319
- Make config.toml edits explicit, lossless, and race-safe by @devmobasa in #320
- Prevent toolbar persistence loss during capture, recovery, and shutdown by @devmobasa in #321
- Add a layout-cycle button to the top toolbar by @devmobasa in #322
- Harden persistence and improve runtime UI reliability by @devmobasa in #323
- Fix runtime UI preference persistence and rollback by @devmobasa in #324
Full Changelog: v0.9.22...v0.9.23