You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Fix copy fidelity: store text verbatim (no leading/trailing trim) so
paste from history reproduces what the user actually copied.
- Fix multi-monitor placement: panel opens on the cursor's screen,
not NSScreen.main.
- Commit explicit `Clip Board.entitlements` with network.client and
network.server set to false — reviewers can diff the signed binary
against a source-controlled entitlements file with
`codesign -d --entitlements -`.
- Launch-at-login now defaults to OFF on fresh installs and only
reconciles with SMAppService when the user has explicitly set the
preference (no silent auto-registration).
- Move ImageStore thumbnail downscale off the main thread.
- Hoist ContentView snapshot off body-recompute path (onChange-driven).
- Tighten logger privacy on error.localizedDescription to `.private`.
- Cap AppIconProvider cache at 200 IDs (was unbounded).
- Cache AppPaths URLs (no per-access fileExists syscall).
- Drop dead HotkeyManager.unregisterHotkey().
- Drop ENABLE_TESTABILITY=YES (no test target consumes it).
- Fix MACOSX_DEPLOYMENT_TARGET inconsistency (project 26.0 → 14.0).
- Drop emoji from CFBundleDisplayName.
- Docs: correct sandboxed app-support path in README; add pasteboard
plaintext caveat and entitlements verification command in SECURITY.md.
Copy file name to clipboardExpand all lines: CHANGELOG.md
+31Lines changed: 31 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,6 +2,37 @@
2
2
3
3
All notable changes to this project are documented here. Format loosely follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/); versioning follows [Semantic Versioning](https://semver.org/).
4
4
5
+
## [1.2.2] — 2026-05-30
6
+
7
+
### Fixed
8
+
9
+
-**Copy fidelity.** Leading/trailing whitespace on copied text is no longer stripped from the stored item. Previously, copying ` --flag` or ` :` would lose the leading space when pasted back from history; now items are stored byte-identical to what hit the clipboard. (Empty/whitespace-only copies are still skipped, and dedupe still applies — but on the raw value.)
10
+
-**Multi-monitor panel placement.** The floating panel now opens on the screen the cursor is on, not the screen with the key window. Triggering the hotkey from a secondary display no longer clamps the panel onto your primary display.
11
+
-**Thumbnail downscale moved off the main thread.** ImageIO downscale for newly captured screenshots now runs on the persistence I/O queue, eliminating a UI hitch when capturing large images.
12
+
13
+
### Changed
14
+
15
+
-**Launch-at-Login defaults to OFF.** Fresh installs no longer silently register themselves as a LaunchServices job; users opt in explicitly via the menu. Existing installs are unaffected (the stored preference takes precedence).
16
+
-**App display name is now plain "Clip Board"** (dropped the `📎` emoji from `CFBundleDisplayName` — it rendered inconsistently in Spotlight/mini-bar contexts).
17
+
-**Snapshot computation hoisted out of view body.** The filter/partition pass now runs only when its inputs (items, search text, visible limit) actually change, instead of on every hover/selection tick.
18
+
19
+
### Security / hygiene
20
+
21
+
-**Explicit `Clip Board.entitlements` checked in.**`com.apple.security.network.client` and `com.apple.security.network.server` are now explicitly `false` in a source-controlled file — reviewers can diff the signed binary's entitlements against the repo's source of truth with `codesign -d --entitlements - "Clip Board.app"`.
22
+
-**Logger privacy tightened.**`error.localizedDescription` values are now logged with `privacy: .private` so disk paths or framework-derived text don't appear in system logs as `.public`.
23
+
-**AppIconProvider cache capped** at 200 distinct bundle IDs (was unbounded).
24
+
-**Sandboxed path corrected in docs.** The README and source comments now reflect that history actually lives under the app's sandbox container, not `~/Library/Application Support`.
25
+
-**Pasteboard plaintext caveat** added to `SECURITY.md` (window between auto-paste and the next copy).
26
+
27
+
### Removed
28
+
29
+
- Dead `HotkeyManager.unregisterHotkey()` (never called).
30
+
- Unused `import Combine` in `UIViews.swift`.
31
+
-`ENABLE_TESTABILITY = YES` from Debug config (no test target consumes it).
32
+
- Inconsistent `MACOSX_DEPLOYMENT_TARGET = 26.0` at the project level (target was 14.0; project now matches).
0 commit comments