Skip to content

Open from Scrollkeeper like Pluck - #9

Merged
scooper4711 merged 4 commits into
mainfrom
feat/scrollkeeper-index
Oct 19, 2026
Merged

scooper4711 merged 4 commits into
mainfrom
feat/scrollkeeper-index

Conversation

@scooper4711

@scooper4711 scooper4711 commented Oct 19, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • Mapsmith asks scrollkeeper://index?app=mapsmith for its list instead of reading maps.json, which a sandboxed app can't read.
  • Scrollkeeper stays in the background for open and download requests.
  • Download progress and failures come from mapsmith://handoff status links, replacing the one-second rereading of maps.json.
  • Info.plist declares the mapsmith scheme and imports the .scrollkeeperindex type.
  • Open from Scrollkeeper is a separate window, as in Pluck, instead of a sheet; it no longer needs a map window open.

Needs scooper4711/scrollkeeper#25 (Scrollkeeper PR "Hand Mapsmith its list and download status").

Testing

  • make lint: clean.
  • make coverage: 61 tests in 9 suites pass. MapsmithCore coverage is 98.0% lines and 89.2% regions (threshold 80%).
  • Tried in the installed app: the list loads, a status link opens no window, and Download and Open of a map pack showed the download's progress, closed the window and opened the map, with Mapsmith staying in front.

Closes #4

Scrollkeeper's list and status links arrive as open events while the
picker is up. With a sheet on the frontmost document window, SwiftUI
gave each one a new document window instead, which hid the picker and
failed to show the link as a map. A separate window, as in Pluck,
avoids that.
The list and status links Scrollkeeper sends arrive as open events.
SwiftUI handed them to the document window, which accepts every event,
and brought it in front of the picker. The picker now takes them while
it is open.
@scooper4711
scooper4711 merged commit 574d747 into main Oct 19, 2026
2 checks passed
@scooper4711
scooper4711 deleted the feat/scrollkeeper-index branch October 19, 2026 09:37
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.

Open from Scrollkeeper like Pluck

1 participant