Commit Graph

387 Commits

Author SHA1 Message Date
Davide De Rosa 3046f0a6a8 Add new translations
XXX: patch late with Google Translate

- de
- fr
- ru
- zh-Hans
2019-11-02 17:48:48 +01:00
Davide De Rosa 41030d2d17 Prepare Info.plist for localization 2019-11-02 12:18:44 +01:00
Davide De Rosa 0b23f011c4 Add specific flag to assume full version in beta
To skip in-app testing.
2019-11-02 11:46:16 +01:00
Davide De Rosa c938023483 Infer beta build from App Store receipt URL 2019-11-02 11:42:33 +01:00
Davide De Rosa 02d9d860b3 Use modern notification structure 2019-11-02 11:34:26 +01:00
Davide De Rosa f9093715a8 Reload affected tables on reload receipt 2019-11-02 11:28:35 +01:00
Davide De Rosa ebbcaa674b Restrict "Feedback" sections to beta/paying users
Act as a rudimental spam filter.
2019-11-02 11:21:32 +01:00
Davide De Rosa 14edeab889 Fix license header 2019-11-02 11:19:16 +01:00
Davide De Rosa a9065bf9b7 Move Flags from Core to app 2019-11-02 11:18:43 +01:00
Davide De Rosa 5a7adf0721 Interpret originalAppVersion as build number 2019-11-01 16:17:30 +01:00
Davide De Rosa b77f677671 Present purchase as full screen 2019-11-01 16:17:30 +01:00
Davide De Rosa 1e6c5ba91b Design purchase screen
- Required product
- Full version
- Restore purchases
2019-11-01 16:17:30 +01:00
Davide De Rosa 6e46757d99 Verify feature/provider eligibility
Limit hosts to 2.
2019-10-31 09:36:09 +01:00
Davide De Rosa e99cc3669d Add stubs for purchase screen
With macro for presenting it everywhere.
2019-10-31 09:36:08 +01:00
Davide De Rosa f936cffe5e Finish up ProductManager implementation
- Reload receipt on updated transactions (e.g. promo code)
- Implement restore purchases (refresh receipt before restoring)
2019-10-31 09:35:58 +01:00
Davide De Rosa 026a94065c Read features from app store receipt
- Use Kvitto to parse App Store receipt
- Infer feature/provider eligibility from features
- Assume full version in beta
- Read receipt even if no products were purchased
2019-10-31 09:32:25 +01:00
Davide De Rosa e62aae16fc Add new in-app purchases
- Rename Donation to Product accordingly
- Infer product from provider name
2019-10-30 15:21:37 +01:00
Davide De Rosa 1d7cdc7f19 Move trust actions to separate functions 2019-10-28 10:44:51 +01:00
Davide De Rosa 302e281399 Rename dismiss() to close() for consistency 2019-10-28 10:44:51 +01:00
Davide De Rosa aea5dc330c Reuse delay() function as global macro 2019-10-28 09:55:18 +01:00
Davide De Rosa 5f3ebfd9fe Drop VersionViewController
Reuse from Convenience.
2019-10-28 09:53:32 +01:00
Davide De Rosa b5710cd84b Use .current instead of Theme.current
Class name is redundant for static members.
2019-10-25 19:31:02 +02:00
Davide De Rosa 03649b56f3 Use theme accent for cell checkmarks
Probably a regression after Convenience integration.
2019-10-25 19:31:01 +02:00
Davide De Rosa b5b8ad7077 Hide DNS servers/domains if empty 2019-10-25 19:10:07 +02:00
Davide De Rosa d9788d93b6 Handle multiple domains in network settings 2019-10-25 19:10:07 +02:00
Davide De Rosa defda27835 Show multiple search domains in server network 2019-10-25 19:10:07 +02:00
Davide De Rosa 6ad44216fc Refactor single search domain to TunnelKit update 2019-10-25 19:10:06 +02:00
Davide De Rosa 5387f7c597 Use consistent case in pool subtitle 2019-10-23 18:53:27 +02:00
Davide De Rosa dfa711b335 Customize PAC in network settings 2019-10-23 13:08:04 +02:00
Davide De Rosa 18ff4b69a5 Revert Organizer on launch
Status in Organizer is wrong on first launch.
2019-10-23 12:03:41 +02:00
Davide De Rosa e0a9fadac4 Add server network screen 2019-10-23 11:59:30 +02:00
Davide De Rosa 458041bdc8 Add cells to disclose server settings
TODO: server network.
2019-10-23 11:19:00 +02:00
Davide De Rosa 70a7bd02d7 Parse and import configuration URL from picker 2019-10-22 23:58:31 +02:00
Davide De Rosa 9bff8629b3 Present picker for .ovpn files
Do not auto-dismiss anymore if no imported files available.

XXX: use generic file types due to idiotic iOS 13 bug still unfixed.
2019-10-22 23:58:31 +02:00
Davide De Rosa a8f37cfd82 Add item to open configuration file 2019-10-22 23:58:31 +02:00
Davide De Rosa c034a6457c Show Organizer on launch (do not collapse)
Makes sure that service.delegate is always set to Organizer on
launch.
2019-10-22 23:47:19 +02:00
Davide De Rosa d550461c60 Deselect imported host row regardless 2019-10-22 23:04:39 +02:00
Davide De Rosa 68da29474b Refactor import logic into HostImporter
Cover the parsing steps + passphrase. Leave name and credentials
as is.
2019-10-22 23:03:46 +02:00
Davide De Rosa 0c8ccd8cc3 Add FAQ link in Organizer (home) 2019-10-22 14:25:29 +02:00
Davide De Rosa edeec13ccb Mention FAQ on external file error message 2019-10-22 14:22:01 +02:00
Davide De Rosa 2ef67e73c3 Reword location access motivation 2019-10-22 09:35:06 +02:00
Davide De Rosa fdba9f3815 Auto-trust Wi-Fi only when requesting access
Delegate may invoked in other scenarios. Do nothing in that case.
2019-10-21 00:31:31 +02:00
Davide De Rosa 0893a686da Always deselect after add current Wi-Fi 2019-10-21 00:26:52 +02:00
Davide De Rosa 5ae4abf401 Externalize location alert strings 2019-10-21 00:20:04 +02:00
Davide De Rosa 9b96707d5b Improve interaction after changing location auth
- Auto-add Wi-Fi after granting location access
- Show alert when location access is denied

TODO: localize.
2019-10-21 00:18:16 +02:00
Davide De Rosa fbe7d776e7 Request location access for trusted networks
Policy changed in iOS 13.
2019-10-21 00:05:25 +02:00
Davide De Rosa 802a4a4586 Move trust current Wi-Fi to function 2019-10-20 23:55:37 +02:00
Davide De Rosa 11efab195a Fix NordVPN dark logo again
See c37bbf80f1
2019-10-17 19:30:49 +02:00
Davide De Rosa 1916b88243 Update Convenience for review URL 2019-10-11 18:10:23 +02:00
Davide De Rosa fc0d21a2ed Relax IP address keyboard
Sub-optimal due to illegal characters. Improve later.

Fixes #103
2019-10-11 13:48:41 +02:00