Skip to content

Clipmo 0.2.3

Choose a tag to compare

@jacksonkasi1 jacksonkasi1 released this 03 Aug 05:58
· 65 commits to main since this release
0110782

Fixes

  • Quick View now shows every clipboard entry the moment Ctrl+Shift+V opens it, even when items were copied while the palette was hidden or while its webview was still hydrating. The new Quick View readiness contract guarantees the native window does not reveal itself until the first SQLite read has landed, so a hidden Quick View is guaranteed to catch up on its next open.
  • Clipboard entries are no longer dropped between an in-flight refresh and a newer one: every refresh bumps a generation counter and only the latest result is allowed to commit.
  • Real-time updates from a paste, favorite toggle, delete, history clear, or clip-updated broadcast now reach both windows in lockstep, including the file/image snapshot that lands after the background managed-storage copy finishes.
  • Image and file-kind thumbnails no longer show the browser's broken-image symbol. Every is wrapped in a SafeImage that falls back to the kind-appropriate icon on error.
  • Files copied through Explorer that are themselves images (PNG/JPG/JPEG/GIF/BMP/WEBP) now generate a managed thumbnail in the same way that image screenshots do, and that thumbnail is shown in the Quick View row, the full-window row, and the details pane.
  • Custom Clipmo storage locations are still rendered correctly because the asset protocol scope is granted in lockstep with the storage root.

How the Quick View readiness contract works

  • A new quick_data_hydrated AtomicBool in AppState flips to true only after the Quick webview's first SQLite read has committed.
  • The native show path refuses to reveal the window until both quick_frontend_ready and quick_data_hydrated are true; a race during startup or a clipdeck:quick-opened event that fires before the React listeners were installed is impossible to lose.
  • A new
    equestResync action is dispatched on Quick View open, on focus regain, and on the visibility transition, so a Quick View that was merely occluded (not closed) also resyncs.
  • New signal_quick_data_hydrated and quick_readiness_state Tauri commands expose the contract to the frontend so any mismatch is visible in the console and not silent.

Tests

  • 107 frontend tests pass; typecheck and build are clean.
  • 85 Rust tests pass (including new tests for is_image_path, the image thumbnail generator, the managed thumbnail handling for image files, and the storage migration that copies the new humb_path field).
  • Full Windows installer smoke test on the CI runner.

Direct download

  • Clipmo 0.2.3 x64-setup.exe — SHA-256 \A26A04D8DF11825AD4DA1DAE3ECC1E3E16DF3D9924156375C1D326693CCDCA59, signed NSIS installer, ~2.30 MB.

Full Changelog