macOS client overlays, menus and notifications

This commit is contained in:
Ian Gulliver
2026-10-17 08:24:22 -07:00
parent b43cffab6d
commit 38d56139c3
17 changed files with 1297 additions and 101 deletions
+4 -2
View File
@@ -16,7 +16,9 @@
# M8 — macOS client
- macOS client overlays, menus and notifications
Switcher, keyboard help, alert and confirm overlays, Merge and Discard dialogs, Go menu shortcuts with the Ctrl variants and terminal passthrough, UNUserNotificationCenter notifications.
- macOS client strict memory safety
Turn on `.strictMemorySafety()` for the `Byre` target in `mac/Package.swift` and resolve what it flags (`@unchecked Sendable` on `Re`, `MainActor.assumeIsolated` in the key and click monitors, and anything else), so `swift build` is warning-free with it on.
- macOS client signing and SwiftData with iCloud sync
Sign `byre.app` with the paid developer team (provisioning profile, iCloud and CloudKit entitlements) in `mac/bundle.sh`, and move the app's persisted state (the `byre.server` origin, drafts, last visits) from `UserDefaults` to SwiftData with CloudKit sync, so the server address follows the user to every Mac.
- macOS client parity review
Side by side with the web client on the same server, window size and appearance, using disposable tasks: every tab, switcher, Inbox choice types, merge/discard dialogs, light/dark, narrow windows. Document build, install and storage in `docs/operations.md`.