- Add 4th 'Original' quality tier to export UI
- Change non-source export to use source-relative scaling (0.6x, 0.75x, 0.9x)
- Update i18n for new quality label
- Accept 'high' in project normalization
Fixes blurry export and makes quality more intuitive
Replaces single hardcoded avc1.640033 with a 5-step fallback chain
(High 5.1 → Main 5.1 → Baseline 5.1 → Main 3.1 → Baseline 3.1).
Each codec is tried with hardware acceleration first, then software.
The final error message now includes which codecs were attempted, the
output dimensions, and a suggestion to lower the quality setting.
- Add countdownInProgress flag in IPC handler to reject concurrent starts
- Add countdownActive state in renderer to block re-entry
- Disable Record button while countdown is active
- Add tray.on('click') to call focusOrCreateMainWindow() so left-click
on the systray icon opens/focuses the app on all platforms (was
previously only possible via right-click → Open).
- On Linux/Wayland, compositors often ignore focus() for security;
Electron's tray does not yet handle ProvideXdgActivationToken like
Qt apps (e.g. Telegram). Workaround: when the HUD exists but is
not focused, destroy and recreate it so the new window receives
focus (creation path works). Applied only for the HUD overlay, not
the editor.
- Reorder: show() before restore(), then moveTop(), focus() for
more reliable raise-on-restore.
Made-with: Cursor
Added `-target` flag to swiftc compilation to explicitly specify arm64-apple-macos14.0 or x86_64-apple-macos14.0 based on process architecture, ensuring proper binary compilation for darwin-arm64 native helpers.
When cursor-monitor.exe is missing, fails to spawn, or exits early,
keep cursorVisualType as 'arrow' instead of undefined. This prevents
the frontend from falling back to heuristic cursor type inference
which can produce incorrect results.
Build a standalone C++ helper (same pattern as wgc-capture) that polls
GetCursorInfo() every 50ms and emits STATE:<type> to stdout — identical
protocol to the macOS Swift helper. Windows recordings now capture
correct cursor types (text, pointer, resize, etc.) instead of always
falling back to arrow.