Control+click was treated as multi-select and a window click listener dismissed the menu before Pin/Delete could run; fire menu actions on mousedown and close only on outside pointerdown.
50 lines
1.8 KiB
Markdown
50 lines
1.8 KiB
Markdown
# Launch at login (start when Mac loads)
|
||
|
||
maCopy can register itself as a macOS **Login Item** so it starts when you log in.
|
||
|
||
## In the app (preferred)
|
||
|
||
1. Build and install a real app bundle (dev mode often cannot register Login Items reliably):
|
||
|
||
```bash
|
||
npm run tauri build
|
||
open src-tauri/target/release/bundle/macos/maCopy.app
|
||
```
|
||
|
||
2. Menu bar tray → **Settings…** → turn on **Launch at login**.
|
||
|
||
3. Confirm in System Settings → **General** → **Login Items & Extensions** → maCopy is listed.
|
||
|
||
Turning the toggle off removes the Login Item.
|
||
|
||
## How it works
|
||
|
||
- Settings UI calls `@tauri-apps/plugin-autostart` (`enable` / `disable` / `isEnabled`).
|
||
- Preference is also stored in SQLite (`launch_at_login`) for display consistency.
|
||
- Backend plugin is initialized with `MacosLauncher::LaunchAgent`.
|
||
|
||
## Manual fallback
|
||
|
||
If the toggle fails:
|
||
|
||
1. System Settings → General → Login Items → **+** → choose `maCopy.app`
|
||
2. Or: right-click maCopy in the Dock (while open) → Options → **Open at Login**
|
||
3. Or install a LaunchAgent (also restarts after crash/`kill`, but not after a normal Quit):
|
||
|
||
`~/Library/LaunchAgents/macopy.plist` → `/Applications/maCopy.app/Contents/MacOS/macopy`
|
||
with `RunAtLoad` + `KeepAlive` (`SuccessfulExit` = false).
|
||
|
||
## Requirements for it to stick
|
||
|
||
| Need | Why |
|
||
|---|---|
|
||
| Installed `.app` under `/Applications` (or a stable path) | Login Items point at a path; rebuilds under `target/` get orphaned |
|
||
| Quit `tauri dev` when testing login | Don’t mix debug binary paths with the release app |
|
||
| Accessibility still granted after update | Auto-paste needs Privacy → Accessibility → maCopy |
|
||
|
||
## Verify after reboot
|
||
|
||
1. Restart Mac / log out and in
|
||
2. Copy some text
|
||
3. Press `` Ctrl+` `` — picker should appear without launching manually
|