Skip to content

feat(app): keep the clipboard in step with the device - #61

Merged
Mastersam07 merged 2 commits into
devfrom
feat/pasteboard-sync
Sep 24, 2026
Merged

Mastersam07 merged 2 commits into
devfrom
feat/pasteboard-sync

Conversation

@Mastersam07

@Mastersam07 Mastersam07 commented Sep 24, 2026 •

Copy link
Copy Markdown
Owner

What: The Mac's clipboard and a booted device's now stay in step. Copies made on the Mac reach the device on their own, a copy made inside a device is on the Mac by the time you switch to another app, and Edit gains Automatically Sync Pasteboard with Get and Send Pasteboard as its manual halves. The sync is on by default and remembered between launches.

It runs on SimPasteboardPlus, reached through the mach port the device vends for the service its own listener class names. Only the Mac to device direction is automatic, which is why the device's clipboard is fetched when the app stops being frontmost rather than left to arrive by itself.

The automatic direction carries the Mac's copies to the device. The device's
copies only come back when asked for, so the connection also reconciles the two
sides, keeping whichever is newer rather than letting a pull overwrite a copy the
user just made on the Mac.
One connection per open device, kept while the window is up, since the automatic
syncing runs on it. The sync is on by default and remembered.

Only the Mac to device direction is automatic, so the device's clipboard is
fetched when the app stops being frontmost, which is when a copy made inside a
device is about to be pasted elsewhere. Get and Send Pasteboard are the manual
halves and are greyed while the sync is on, as in Simulator.app.
@Mastersam07
Mastersam07 merged commit 05e0b77 into dev Sep 24, 2026
2 checks passed
@Mastersam07
Mastersam07 deleted the feat/pasteboard-sync branch September 24, 2026 22:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant