Skip to content

Releases: AceMythos/ClipManager

v1.2.1

Choose a tag to compare

@AceMythos AceMythos released this 26 Sep 17:18

Fixed

File copies are now labelled correctly in the history popup.

EntryKind::File was declared and had a display label, but no code path ever constructed it. A file copied from COSMIC Files arrives as a bare path in text/plain, which detect_kind() classified as Text — so those entries showed up mislabelled.

detect_kind() now recognises file:// URIs and absolute or ~-relative paths.

Impact

Cosmetic only. Pasting behaviour is unchanged. Replaying the previous logic over existing history shows exactly two entries change label, both genuine file-copy paths.

Tests

13 unit tests, all passing. Two new:

  • file_paths_are_detected
  • detect_kind_still_behaves_for_other_kinds — guards against the new branch changing existing classifications

v1.2.0

Choose a tag to compare

@AceMythos AceMythos released this 26 Sep 17:03

Fixed

Image and file pastes were being destroyed. The applet re-offered every clipboard selection as text/plain plus optional text/html, silently discarding every other mime type. Copying an image in COSMIC Files and pasting it into a folder produced a Pasted Text.txt file containing the bare path, because Files offers x-special/gnome-copied-files and text/uri-list — both of which were being overwritten with plain text.

The applet now only claims clipboard ownership when it can faithfully re-serve the payload. Richer payloads (images, file lists) are left with the original owner.

48-hour cleanup could silently stop working. A ratio guard refused to prune once 91% or more of unpinned entries were past the cutoff — exactly what happens after any absence longer than the expiry window. A long absence and a forward clock jump are indistinguishable at startup, so instead of bailing out entirely, each pass now removes at most 200 entries and converges over a few passes. Pinned entries remain untouched.

Changed

  • Frosted glass UI — depth hierarchy, toned borders, shadows, spacing, rounder corners
  • Event-driven clipboard detection — replaced the 450 ms wl-paste poll with wl-paste --watch. Measured latency 59 ms, and roughly one process spawn per copy instead of ~6.7 per second
  • tracing wired up — surfaces previously silent save and wl-copy failures
  • README rewritten — documents pinned-entry behaviour, the clipboard passthrough, and known limitations
  • Cargo version synced with the tag lineage (it had been left at 0.1.0)

Tests

11 unit tests, covering both regressions above:

  • cosmic_file_copy_is_not_servable — real cosmic-files mime list
  • all_expired_still_prunes_up_to_the_cap — 500 expired entries now prune 200 instead of 0
  • repeated_passes_converge — asserts convergence in exactly 3 passes
  • pinned_are_never_victims_even_when_old

Requirements

wl-clipboard 2.2 or newer is now required, for wl-paste --watch.

v1.1.0

Choose a tag to compare

@AceMythos AceMythos released this 05 Jul 04:54

Icon now shows clipboard content instead of static icon

v1.0.0

Choose a tag to compare

@AceMythos AceMythos released this 04 Jul 08:02

Clipboard history applet for COSMIC desktop panel.

  • Search through clipboard history
  • Pin important items
  • Private mode to pause tracking
  • Auto-detect content type
  • Desktop notifications