Commit Graph

7 Commits

Author SHA1 Message Date
Davide
14ce23f25b
Improve confusing footer modifiers ()
There was duplication and a ugly `#if os(macOS)` with some footers
explicitly rendered on macOS with .themeFooter() (now .themeSubtitle()).

Move this logic to the .themeSection() modifiers by adding a
`forcesFooter` parameter. When true, a fake footer is added on macOS as
the last row of a section.
2024-12-01 23:23:51 +01:00
Davide
0a1886fe31
Handle all connection attempts in AppCoordinator ()
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
Davide
f87cc1da0b
Fix OpenVPN/WireGuard import error messages ()
OpenVPN parser was indirectly swallowing WireGuard errors.
2024-12-01 21:33:58 +01:00
Davide
1a25102ec3
Add guidance for OpenVPN provider credentials ()
Some providers require specific credentials for OpenVPN, different from
account credentials. Update the API index with this information to show
an information footer and possibly a link to the OpenVPN credentials.

Also, fix the OTP footer not appearing on macOS.
2024-11-29 15:25:22 +01:00
Davide
8c305688cc
Always use setLater for paywall
Fixes 
2024-11-29 00:13:00 +01:00
Davide
63496725c8
Transparent logo in version screen ()
Looks better on macOS and allows gradient on tvOS.
2024-11-28 22:59:37 +01:00
Davide
7af703c164
Move app library to the root ()
Makes it easier to search among app files and library files.
2024-11-28 17:45:18 +01:00