Multi-select, paste-to-app, resizable window, polished UI

- Max history default increased to 10K, options: 1K/5K/10K/50K
- Tray icon uses with_id to prevent duplicates on hot-reload
- Selecting an entry now pastes directly into the previous app
  via osascript Cmd+V simulation after hiding the window
- Multi-select: Ctrl+Click toggles, Shift+Arrow extends range,
  Cmd+A selects all, Enter pastes all selected
- Window is resizable, size persists in SQLite across opens
- Window position setting: cursor, center, or any screen corner
- UI cleanup: tighter spacing, cleaner dividers, compact search,
  type badges (TXT/IMG/FILE), PIN label, tabular timestamps
- Context menu shows multi-item labels ("Paste 3 items")
- All tests updated and passing (27 Rust + 33 TypeScript)

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-05-12 14:01:03 -04:00
co-authored by Cursor
parent b643f50d76
commit 55ee81fc6d
36 changed files with 580 additions and 244 deletions
+11 -1
View File
@@ -17,7 +17,9 @@
"title": "maCopy",
"width": 420,
"height": 560,
"resizable": false,
"resizable": true,
"minWidth": 320,
"minHeight": 300,
"decorations": false,
"visible": false,
"alwaysOnTop": true,
@@ -39,6 +41,14 @@
"core:window:allow-set-focus",
"core:window:allow-close",
"core:window:allow-is-visible",
"core:window:allow-set-size",
"core:window:allow-set-position",
"core:window:allow-inner-size",
"core:window:allow-outer-size",
"core:window:allow-center",
"core:window:allow-current-monitor",
"core:window:allow-cursor-position",
"core:window:allow-start-dragging",
"core:event:default",
"core:event:allow-emit",
"core:event:allow-listen",