Why
Once #1.1 lands, users need a place to see, add, rename, reorder, set a default, and remove saved bridges. Today the only entry point for managing connection configs is the first-launch onboarding flow — there is no in-app screen to manage saved bridges.
What
- New file
Shellbee/Features/Settings/SavedBridgesView.swift.
- List rows show: name, host, last-connected timestamp, "Default" badge, "Active" badge.
- Per-row swipe actions: Rename, Set Default, Remove. Tap a non-active row → call
environment.connect(config:) for that bridge.
- Header button: "Add Bridge" → reuses the existing
Features/Connection/ onboarding flow but in "add" mode (saves to ConnectionHistory without auto-connecting). Add a mode: .firstLaunch | .addAdditional parameter to the connection screen.
- Link from
MainSettingsView.swift under the Connection section ("Saved Bridges" row).
- Empty state: "No saved bridges yet" with an Add Bridge call-to-action (used after a user removes everything).
Files
- New:
Shellbee/Features/Settings/SavedBridgesView.swift
- Edit:
Shellbee/Features/Settings/MainSettingsView.swift — add nav link.
- Edit:
Shellbee/Features/Connection/* (esp. the root view + view model) — accept a mode parameter; suppress auto-connect in .addAdditional.
- Remember to add the new file to the widget target's
membershipExceptions in Shellbee.xcodeproj/project.pbxproj if it imports AppEnvironment.
Verification
- Build & run on simulator. Add three bridges; rename one; remove one; set a different default; relaunch — list and default persist.
- Tap a non-active bridge → app reconnects to it; switcher reflects active state.
- For the "add without connecting" path, point the second entry at a junk host. Confirm it's saved without forcing a connection error UI.
Phase
Phase 1 of multi-bridge support. Depends on #1.1.
Why
Once #1.1 lands, users need a place to see, add, rename, reorder, set a default, and remove saved bridges. Today the only entry point for managing connection configs is the first-launch onboarding flow — there is no in-app screen to manage saved bridges.
What
Shellbee/Features/Settings/SavedBridgesView.swift.environment.connect(config:)for that bridge.Features/Connection/onboarding flow but in "add" mode (saves toConnectionHistorywithout auto-connecting). Add amode: .firstLaunch | .addAdditionalparameter to the connection screen.MainSettingsView.swiftunder the Connection section ("Saved Bridges" row).Files
Shellbee/Features/Settings/SavedBridgesView.swiftShellbee/Features/Settings/MainSettingsView.swift— add nav link.Shellbee/Features/Connection/*(esp. the root view + view model) — accept amodeparameter; suppress auto-connect in.addAdditional.membershipExceptionsinShellbee.xcodeproj/project.pbxprojif it importsAppEnvironment.Verification
Phase
Phase 1 of multi-bridge support. Depends on #1.1.