Release Notes
These docs track the latest source. Current source version: v0.9.26.
v0.9.26 highlights
- Shape Pen recognizes lines, circles, ovals, rectangles, and triangles as you draw, with a live preview and adjustable recognition sensitivity. Other strokes stay freehand; undoing a recognized shape restores its original ink.
- Solid boards support Cartesian and isometric grid paper. Shape Pen can snap recognized shapes to nearby board-paper lines and points.
- A Laser Pointer tool draws glowing strokes that fade away after use. Laser ink stays out of saved sessions, undo history, captures, and exports.
- Selection properties add quick colors, independent fill and border colors, thickness and opacity controls, arrow styles, presets, locking, stacking, duplication, and deletion. Double-click a shape to open its properties; double-click text or a sticky note to edit it.
- The Pen feel panel combines smoothing and Shape Pen sensitivity with level meters and a live smoothing preview. Pen, Marker, and Shape Pen retain fractional coordinates for smoother ink on scaled displays; zero-level dots give direct access to unsmoothed ink and precise shape detection.
- The daemon remembers the last named session across hiding and reopening the overlay. The Session menu can return to the home session. Session operations run in the background, with stronger save, recovery, and conflict handling.
- Capture and input fixes cover KDE portal Freeze and Zoom on mixed-scale displays, late output discovery, GTK popup transparency, keyboard focus, tablet and touch ownership, and clipboard fallback saves during shutdown.
Session compatibility
New saves use session format 8 to preserve fractional stroke coordinates. Existing sessions still load, and opening one does not rewrite it. Once saved in format 8, it cannot be opened by older Wayscriber versions; keep a copy of an older session before saving if you need to return to an earlier release.
v0.9.25 highlights
- Capture regions with the native interactive picker, snap to windows, resize the selection, and review annotated previews before copying or saving. Region band cuts let you remove unwanted horizontal or vertical strips.
- Shortcut change:
Ctrl+Shift+Cnow opens the interactive capture picker. Screen text recognition is available withCtrl+Shift+X, with progress and keyboard guidance in the selector. - Spotlight can magnify the area beneath it, with interactive controls. Freehand
strokes can be smoothed on release, arrows have configurable styles, and text
controls include font stepping with
Shift+Tand improved halo contrast. - The command palette follows the selected theme and adapts navigation to small viewports. GTK toolbar sliders support keyboard adjustment and accessibility, and board thumbnails reuse rendered content while preserving Spotlight sampling.
- Session Save As and snapshot replacement have stronger transaction and recovery handling. The configurator protects unsaved drafts on reload and close, and prevents conflicting actions while a document operation is in progress.
- Capture, freeze, zoom, keyboard focus, and helper-process ownership received reliability fixes, including rejection of stale captures after output changes.
- Both main AUR recipes now include the desktop launcher and icons. AUR updates wait for the GitHub release assets to be published.
Source builds now require Rust 1.98.1. Prebuilt package requirements remain glibc 2.39 and GTK 4.12; the configurator requires libadwaita 1.4 or newer.
Validation note
A context-menu rendering regression runs separately from the parallel test suite because concurrent native font rendering can trigger a Cairo/FreeType crash. The isolated assertions remain covered; this release does not claim to fix the upstream native-library race.
v0.9.23 highlights
- Runtime UI preferences now live in
runtime-ui.toml, whileconfig.tomlremains the authored configuration. Saves preserve comments and formatting, write only the setting that changed, detect races and external edits, and keep rollback and recovery paths safe. - The annotation workspace has a new top-strip layout with configurable status-bar contents, Focus Mode, persistent chrome controls, a layout-cycle button, discoverable hidden controls, improved popover navigation, and a zoom-control surface.
- Text tools now support Wayland IME input, key repeat, caret editing, selection, and clipboard operations. The configurable input HUD can show keystrokes and clicks during presentations.
- Drawing tools gained tapered arrows, blur-redaction styles, a spotlight tool, RGBA colors, and persistent recent colors.
- About and update notices are more useful and privacy-conscious, with opt-out controls and diagnostics. Release binaries now embed GTK4 layer-shell support, with Nix packaging parity checks and broader daemon, capture, and event-loop reliability improvements.
About window and update notices
- The About window was rebuilt: themed chrome that follows
[ui] theme, an icon header with version and build metadata, keyboard-navigable link rows (Tab/Enter/Esc), and a “Copy diagnostics” button that puts build, install source, desktop, and compiled features on the clipboard in one paste. The window now sizes itself to its content. - Links point only at wayscriber.com — website, documentation, release notes, and update instructions. The GitHub link is gone.
- Wayscriber can now tell you that a newer release exists. It never installs anything: the notice appears as a card in the About window, an item in the tray menu, and at most one desktop notification per release (suppressed while the overlay is active), each opening the Updating instructions for your install method.
- The check is one HTTPS request for a static file, made through the system
curl/wget, with no Wayscriber or user identifier; the HTTP client’s version is suppressed too. Configure it under[updates], disable it per run withWAYSCRIBER_DISABLE_UPDATE_CHECK=1, or compile it out entirely withWAYSCRIBER_NO_UPDATE_CHECK=1. wayscriber --check-updateruns the check on demand and prints the result.- About is reachable from the overlay itself now: a chrome button on the top strip
(hideable from Customize), an entry in the overflow’s Settings… popover, a
clickable pill in the F1 help overlay footer, and a command-palette entry. The
bindable action is
open_about, unbound by default. Opening About closes the overlay, since About is a normal window and the overlay draws above those.
Interface overhaul
- The default UI is now a set of detached top-strip islands with a contextual style pill instead of a permanent side palette. The pill follows the active tool and hosts color, size, opacity, fill, text, eraser, and selected-object controls.
- A 3–5-slot presets island sits between Tools and History. Filled slots apply saved profiles; empty slots save the current profile. Quick colors now live only in the style pill.
- The status bar is an interactive chip HUD: board/page, color, tool, and Help segments open their corresponding surfaces. Frozen, zoom, pan, and editing states stack above it as badges.
F2cycles the top strip full → micro chip → hidden.F9directly toggles toolbar visibility. Idle islands fade after four seconds and respect reduced motion.- Clear moved into overflow: click for a brief Undo action, or Shift+click to clear immediately. Canvas, Session, and Settings open from overflow popovers. Canvas contains Boards, Pages, Advanced, Zoom, and Step Undo/Redo sections.
- A persistent bottom-right zoom chip shows the live percentage with zoom-out, zoom-in,
Fit, and (while zoomed) Lock controls. It follows the existing
show_zoom_actionstoggle, so no new config key is required. side_layout = "panel"temporarily restores the deprecated four-pane side palette;layout_moderemains the independent Simple/Regular/Advanced complexity setting. Panel users receive a once-per-session map to every replacement surface.
Runtime UI preferences
- Direct overlay preferences now survive restarts without broad
config.tomlrewrites. Toolbar pin/minimized state, the active legacy pane and collapsed sections, individual item visibility/order, and board pins live in generated$XDG_DATA_HOME/wayscriber/runtime-ui.tomlstate; configured values remain the authored startup defaults. - Runtime-state writes detect external file changes, symlink/path retargeting, and uncertain write outcomes instead of overwriting blindly. The overlay blocks further runtime preference changes when recovery is required.
- Overlay Settings shows the complete state and recovery-artifact paths and provides retry, adopt-disk, reset, and invalid/unsupported-file recovery flows. Newer formats stay read-only, and destructive reset requires confirmation after preserving the original bytes.
Faster tool selection
- The radial menu is now an eight-direction fixed compass. Hold middle-click, flick toward a tool, and release to commit; a center release cancels.
- The opened menu includes tool glyphs and live shortcut badges, a catalog-backed shape sub-ring, recent colors, and a draggable outer size ring.
- An optional ink-preview cursor shows the current color and width, active tool glyph, and an automatic contrast outline.
Finding features and shortcuts
- The command palette adds action icons, category headers, fuzzy matching, shortcut editing, Save Preset 1–5 actions, responsive query updates, and recents persisted across restarts.
- The Help overlay is fuzzy-searchable, clickable, and limited to one or two columns. Its footer can replay the guided tour.
- The tour reads current keybindings instead of hard-coded shortcuts and now teaches color/thickness changes, radial flicking, and Boards & Pages. Staggered later-session hints introduce the status-bar picker, Canvas popover, and zoom chip. A rate-limited shortcut coach can offer occasional hints afterward.
- Notifications now prioritize critical warnings and undo actions over routine info and hints, with deduplication and rate limits.
Appearance and accessibility
- Overlay and toolbar chrome share one accent and token-driven dark/light theme.
[ui] reduced_motion = "on"disables UI animation.autois reserved for future system-preference detection and currently leaves motion enabled.- Swatches, keycaps, popovers, panels, and selection states use shared visual primitives across the GTK4 and builtin Cairo toolbar frontends.
Other recent additions
- The screen eyedropper samples the displayed desktop through a magnified pixel loupe.
Press
I, use the contextual color controls, or search the command palette. - Light passthrough defaults to
F6while the overlay has focus; compositor/globalwayscriber --light-*commands remain the reliable way to control it after input is passing through. - Default builds use GTK4 toolbars on supported layer-shell compositors and fall back to the builtin Cairo frontend where that path cannot run.
Release history is maintained on GitHub: