passepartout-apple/Passepartout
Davide 0a1886fe31
Handle all connection attempts in AppCoordinator (#968)
Let the AppCoordinator take care of the connection requirements via
modals:

- onInteractiveLogin() - now presented on AppError
- onProviderEntityRequired()
- onPurchaseRequired()
- Any other connection error

Subviews must not use tunnel.connect(), rather they route connection
requests via the ConnectionFlow callbacks. In particular, migrate to the
AppCoordinator the connection logic from:

- TunnelToggleButton.perform()
- ProviderEntitySelector.onSelect()

onInteractiveLogin() and onPurchaseRequired() are now handled
internally, while onProviderEntityRequired() is kept public because it's
how subviews may present the entity selector.

Extras:

- Avoid modals overlap with a 500ms delay
- Shrink interactive login size on macOS
2024-12-01 22:34:41 +01:00
..
App Transparent logo in version screen (#963) 2024-11-28 22:59:37 +01:00
Intents Fix extra team prefix in keychain group (#721) 2024-10-11 03:45:20 +02:00
LoginItem Add explicit environment objects to TableColumn (#873) 2024-11-15 01:47:52 +01:00
Shared Handle all connection attempts in AppCoordinator (#968) 2024-12-01 22:34:41 +01:00
Tests Localize WireGuard errors (#934) 2024-11-25 11:34:31 +01:00
Tunnel Log verification failure in tunnel 2024-11-19 22:46:18 +01:00
UITests Update SwiftLint/SwiftGen YAML 2024-11-28 19:54:50 +01:00
Config.xcconfig Share migrated TV profiles (#918) 2024-11-23 13:33:02 +01:00
Passepartout.xctestplan Parallelize all tests 2024-11-24 20:15:10 +01:00