🚨 Critical bug fix for Windows users. On 1.42.0, opening the mini player on Windows could stall Tauri's event loop: the mini would appear as a blank white window, neither the main window nor the mini could be closed, and the only way out was killing the process via Task Manager. Please update immediately if you're on Windows 1.42.0. macOS and Linux were not affected.
Fixed
- Mini player no longer hangs the app on Windows (@Psychotoxical): Creating the second WebView2 webview lazily from the
open_mini_playerinvoke handler reliably froze the app on Windows — the mini opened blank, both windows became unresponsive, and the user had to kill the process from Task Manager. The builder +main.minimize()combo racing against WebView2's first paint was the trigger. The mini webview is now pre-built hidden in Tauri's.setup()on Windows, so the first open is a pure show/hide instead of creation + minimize.open_mini_playeris simpler on all platforms, the minimize-main dance around show/hide is skipped on Windows, and Windows also goes back to the native window decorations (the earlierdecorations: falsemini titlebar was part of the hang surface). - Mini player syncs immediately on first open (@Psychotoxical): With the mini pre-created on Windows, the mount-time
mini:readyevent could race past the main window's bridge listener and leave the mini without a snapshot when the user actually opened it. The mini now also re-emitsmini:readyon every window focus, so opening the mini always triggers a fresh sync regardless of startup ordering.
Added
- Optional “Preload mini player” setting on Linux + macOS (@Psychotoxical): Settings → General → App behaviour. Off by default. When enabled, the mini player window is built hidden at app start so the first open is instant instead of waiting a few seconds for WebKit to boot + React to hydrate + the bridge snapshot to arrive. Costs one extra WebKit process in the background permanently (~50–100 MB RAM). Windows always preloads regardless of this toggle — it's how we work around the hang above, not an opt-in feature there.