Commit Graph

351 Commits

Author SHA1 Message Date
Davide De Rosa
6c798c8b19 Bump build 2022-05-17 16:43:14 +02:00
Davide De Rosa
16d618df0e Show info menu in ProfileView on iPad/Mac
Use .navigationBarTrailing to avoid artifact on Catalyst (item
relocates when first clicked).

Rename menu files too.
2022-05-16 11:18:58 +02:00
Davide De Rosa
743facca6b Improve Catalyst appearance
- Revert to more "stable" iPad idiom

- Set accent color the proper way

- Use .tint when available

- Unify navigation style by idiom

- Retain navigation bars in sidebar/detail

- Lighten sidebar appearance

- Fix Menu style (dropdown -> button)

- Use native Picker (dropdown)

- Use switch toggles rather than checkboxes

- Replace .actionSheet with .alert

- Increase minimum row height

CAVEAT: on Mac with iPad idiom, having a Section in .sidebar
produces artifacts. Header keeps changing height for no reason.
Retain Section on iPad multitasking only to not break navigation.
2022-05-15 22:24:36 +02:00
Davide De Rosa
683a8e7d82 Attempt beta release 2022-05-05 11:07:49 +02:00
Davide De Rosa
092233b546 Attempt beta release 2022-05-04 23:16:01 +02:00
Davide De Rosa
c2676cbdf6 Attempt beta release 2022-05-04 19:03:22 +02:00
Davide De Rosa
9e9cd018eb Revert "Enable "DNS Settings" capability"
This reverts commit 75650b1f0a.
2022-05-04 09:01:27 +02:00
Davide De Rosa
3c0e511e84 Split again OrganizerView and ProfilesList
On iOS 14, Organizer scrolls abruptly on profile selection. It
looks like this was introduced by merging ProfilesList into
OrganizerView.

Try to revert merge to split observation responsibilities.

Drop unused AppManager in +Scene along the way.
2022-05-03 14:40:41 +02:00
Davide De Rosa
75650b1f0a Enable "DNS Settings" capability
Maybe fixes #182
2022-05-02 00:04:56 +02:00
Davide De Rosa
87f2ebfd9e Attempt beta release 2022-05-01 20:44:17 +02:00
Davide De Rosa
edc7cdf045 Merge List into OrganizerView
- Restore wrapping Section as it seems to fix multitasking

- Hide profiles section if empty
2022-05-01 19:19:31 +02:00
Davide De Rosa
0047d095fb Adjust navigation style to all devices
- Mac
    - Drop all styles
    - Tweak hide title bar
    - Hide navigation bar

- Restore single section for all profiles
    - Allows using NavigationLink safely
    - Indirectly fixes multitasking
    - Retains selection on profile activation
    - Clean up presentActiveProfile

- Leave active profile in its position
    - Fixes Mac flashing row selection on profile activation

- Unify profile row appearance
    - Use fixed .headline font
    - Add subtitles to inactive profiles
    - Use padding rather than fixed row height

CAVEATS:

- Do not preselect active profile on iPad launch, as doing so
seems to present two ProfileView on top of each other, one from
MainView and one from the NavigationLink.

- Do not touch .listStyle() of master view, as it seems to break
navigation esp. in iPad multitasking.
2022-04-29 19:29:47 +02:00
Davide De Rosa
cd854f8ebf Group profile actions into menus
- Organizer
    - Duplicate

- Profile
    - Rename
    - Siri
    - Uninstall (+ confirmation)
    - Delete (+ confirmation)
2022-04-27 09:53:42 +02:00
Davide De Rosa
4a0245d757 Rename AddHostView to .NameView
In preparation of future additions to flow.
2022-04-26 22:44:34 +02:00
Davide De Rosa
99e48119f7 Encapsulate calculation of former products
Use an interface (BuildProducts) that makes understandable and
easily extensibile how some in-app products are inferred by build
number.
2022-04-26 20:55:18 +02:00
Davide De Rosa
1ff19b331f Move VPNToggle to standalone view 2022-04-26 10:40:46 +02:00
Davide De Rosa
6434008ebd Make destructive buttons standalone
- Uninstall VPN

- Remove profile (add to ProfileView)

Create DestructiveButton with iOS 15 .role when available.
2022-04-25 16:34:22 +02:00
Davide De Rosa
deac70359f Reorganize and fix platform-specific fastlane data
Reuse all iOS metadata in macOS, except the app icon.
2022-04-25 11:21:19 +02:00
Davide De Rosa
c507c739bd Move WelcomeView to its own view 2022-04-23 10:25:31 +02:00
Davide De Rosa
d8e47cb7c0 Refactor strings and add new ones
- Move Localizable.strings above to share *.lproj folders

- Reorg menus into contextual/system

- Shorten titles of contextual menus

- Update sharing message with WireGuard

- Drop AlternativeTo

7 phrases left to translate into 9 languages.
2022-04-22 13:12:42 +02:00
Davide De Rosa
c9dfed676e Move VPN status below active profile
Rather than on the side. Similar to old subtitle table view cell.

Restore data count as well (when available).
2022-04-22 09:52:10 +02:00
Davide De Rosa
46050e0141 Refactor ProfileView a little bit
- Make welcome a computed property

- Reuse first header for consistency when loading

- Convert isDeleted to better isExisting (inverted)
2022-04-21 19:11:22 +02:00
Davide De Rosa
fd7c232ecc Unroll ProfileView toolbar items
Also leave them visible when disabled.
2022-04-21 19:03:14 +02:00
Davide De Rosa
d1c98006d3 Replace ReloadingContent with implicit animations
Infinite loop on init(), but horrible practice in general.

- DonateView
- PaywallView+Purchase

Also show a ProgressView while rows are loading.

DO NOT animate on .products value because animation won't work
if products are empty and stay empty after refresh. Instead,
observe .isRefreshingProducts.

Lastly, to avoid annoying animation when products are actually
available, do not refresh products if non-empty. They certainly
do not change during the application lifecycle.
2022-04-21 11:22:07 +02:00
Davide De Rosa
3f9ff50d0e Optimize Catalyst for Mac
- Fix missing PlugIns in Catalyst build

Hence the VPN failure, there was a "iOS" filter on embed.

- Fix complaint about file access permission

Seems to need R/W when importing VPN configuration files.
2022-04-19 16:48:42 +02:00
Davide De Rosa
bf65f76401 Merge project into iOS + macOS
Share views with both platforms initially. Will split specific
views step by step.
2022-04-19 16:14:23 +02:00
Davide De Rosa
2af28c158d Merge 'Views' folder 2022-04-19 10:12:52 +02:00
Davide De Rosa
ab0a2c8cb4 Reuse provider availability idea from 5d85699 2022-04-19 09:03:41 +02:00
Davide De Rosa
480738d126 Make shortcuts contextual in ProfileView
- Add toolbar item

- Target current profile

- Only list relevant shortcuts to profile
2022-04-19 08:41:07 +02:00
Davide De Rosa
18161ed1f1 Group Organizer modals into toolbar menus
- Drop status / navigation bars colors

- Restore large title on iPad

- Overlay organizer with "No profiles" when empty

- Uninstall VPN from ProfileView
2022-04-19 08:38:10 +02:00
Davide De Rosa
017182fe81 Rewrite ReloadingSection to be semantic only
Use Group instead of Section. Also fix elements not loading if
initially empty.
2022-04-18 19:51:28 +02:00
Davide De Rosa
0849fe6cc7 Attempt beta release 2022-04-13 19:49:58 +02:00
Davide De Rosa
5874ce4b9d Attempt beta release 2022-04-13 19:40:18 +02:00
Davide De Rosa
8026caa5ef Attempt beta release 2022-04-13 11:20:21 +02:00
Davide De Rosa
c7f7dd89a1 Attempt beta release
Update script.
2022-04-13 10:16:43 +02:00
Davide De Rosa
1532e8808b [ci skip] Address CI and ASC validation issues
- Skip tests until fixed wg-go issue

- Add golang step

- Set "Apple Development" at project level

- Set Catalyst platform for gym

- Drop TARGET env variable clashing with WireGuardKit

- Disable SwiftGen script phase

- Fix TunnelKit segfault on archive

- Xcode 13.2.1 compatibility
    Fix some issues with @MainActor
    Use #available instead of #unavailable

- Raise timeout from 10 to 15 minutes

- Update beta description

- Tunnel bundle ids cannot have periods

- CFBundleDisplayName required in tunnels
2022-04-13 10:00:29 +02:00
Davide De Rosa
4aba5f46aa Rewrite app in SwiftUI 2022-04-12 15:12:45 +02:00
Davide De Rosa
8f16bf376d Attempt beta release
Fix naive compile issue.
2022-02-04 14:18:01 +01:00
Davide De Rosa
e38a2598e2 Attempt beta release 2022-02-04 13:11:01 +01:00
Davide De Rosa
3c2966c836 Attempt beta release 2022-02-04 12:27:28 +01:00
Davide De Rosa
31361bf0d8 Attempt beta release 2022-02-04 12:19:18 +01:00
Davide De Rosa
08008dda23 Try lower macOS target to 10.14
Requires TunnelKit update.
2022-02-02 19:36:23 +01:00
Davide De Rosa
72044a5e41 Fix globbing in "Run Script" phases
See 549cd17dbd
2022-01-07 21:55:56 +01:00
Davide De Rosa
4c673338b7 Attempt beta release 2022-01-07 19:00:33 +01:00
Davide De Rosa
d55fb5dc0f Attempt beta release 2022-01-04 09:26:55 +01:00
Davide De Rosa
549cd17dbd Delete frameworks from all .appex 2021-12-17 14:47:45 +01:00
Davide De Rosa
05a460d55f Attempt beta release 2021-12-08 16:11:38 +01:00
Davide De Rosa
4f9bbac178 Attempt beta release 2021-12-04 11:53:51 +01:00
Davide De Rosa
97c6a6f356 Attempt beta release 2021-12-03 15:35:44 +01:00
Davide De Rosa
82aaa0b386 Attempt beta release 2021-11-30 16:40:28 +01:00
Davide De Rosa
6d541284a5 Attempt beta release 2021-11-30 12:49:46 +01:00
Davide De Rosa
51821660d2 Commit build number with beta
Pick base build number from env, not project. Can now drop
fetch-depth 0 from workflow, no needs for commits count.
2021-11-29 19:06:59 +01:00
Davide De Rosa
104c856e45 Fix PEM caching PR in TunnelKit 2021-11-25 12:23:28 +01:00
Davide De Rosa
46fef91f5c Revert to TunnelKit with OpenSSL
- Remove extra "Frameworks" in .appex
- Restore TLS security level 0
- Disable Bitcode for OpenSSL to link properly
2021-11-24 17:03:41 +01:00
Davide De Rosa
fd529752ee Revert iOS target to 12
TunnelKit only requires 12.
2021-11-18 13:10:44 +01:00
Davide De Rosa
b3de7f3a73 Bump build 2021-11-14 19:41:07 +01:00
Davide De Rosa
3ccdfc7626 Bump build 2021-11-12 10:30:25 +01:00
Davide De Rosa
8833c4dbab Update TunnelKit with BoringSSL
- Optimize package granularity and imports
- Adjust targets to smaller TunnelKit components
- Raise iOS target to 13
- Drop support for TLS security level
2021-11-11 15:45:09 +01:00
Davide De Rosa
7ecbd48e18 Do some project cleanup
- Update bundle
- Merge old CFG_* variables
- Drop useless Metal build settings
- Fix package warning about case
2021-11-11 15:06:43 +01:00
Davide De Rosa
ae1aa1a268 Reorganize project with SwiftPM
- Drop CocoaPods completely
- Make PassepartoutCore a Swift package
- Enable Bitcode to fix OpenSSL linkage (iOS)
- Update CI scripts without CocoaPods
2021-11-06 11:18:55 +01:00
Davide De Rosa
28d7517497 Fix building for test targets 2021-10-10 18:34:21 +02:00
Davide De Rosa
f6af9a3fb8 Bump build number 2021-10-05 20:48:26 +02:00
Davide De Rosa
40ab30365a Bump build 2021-10-05 08:01:13 +02:00
Davide De Rosa
ca1adb424a Bump base build number 2021-10-01 19:42:45 +02:00
Davide De Rosa
6dc748ab87 Bump base build number 2021-10-01 10:48:56 +02:00
Davide De Rosa
b0fff93c89 Update bundle/pods 2021-09-27 18:11:58 +02:00
Davide De Rosa
d1a1b555f8 Rename to LocalProduct to avoid StoreKit clash
Started happening with Xcode 13.
2021-09-27 18:01:42 +02:00
Davide De Rosa
dd7f144bb3 Move VPN.shared from TunnelKit to Core
Start moving legacy out of inner library.
2021-09-20 20:07:30 +02:00
Davide De Rosa
5cf593ed2b Move strings generation to Core
Also fix missing account guidance on iOS.
2021-08-09 10:06:09 +02:00
Davide De Rosa
0ebddc6a68 Drop unused app strings and redo SwiftGen
Prefix is now just L10n without strings filename.
2021-08-07 14:00:35 +02:00
Davide De Rosa
31cd5be376 Reuse generic guidance strings
Tell by credentials purpose (web or specific).
2021-07-30 17:58:27 +02:00
Davide De Rosa
6487d10cb9 Add missing translations 2021-04-16 16:29:20 +02:00
Davide De Rosa
394762f5d6 Restrict features with purchase screen
- Providers
- Trusted networks
2021-02-04 14:09:24 +01:00
Davide De Rosa
e59b6c8723 Upgrade Xcode project 2021-02-04 14:09:09 +01:00
Davide De Rosa
7d2ece0256 Share ProductManager in Core with conditionals
In order to share purchase review logic.

Refactor verification of product eligibility
2021-02-04 14:03:47 +01:00
Davide De Rosa
21e9f5c8cc Integrate new in-app purchases
- Share iOS bundle identifier with macOS
- Remove unused macOS donations (reuse iOS if needed)
- Add platform-specific "Full version"
- Skip fetching of legacy providers IAP
2021-02-04 14:03:47 +01:00
Davide De Rosa
dd3cac40c6 Bundle macOS app with iOS 2021-02-02 21:25:59 +01:00
Davide De Rosa
8e1c2aea32 Add it macOS translation 2021-01-26 18:05:56 +01:00
Davide De Rosa
9fa40f6ec6 Share configuration l10n in Descriptible 2021-01-13 08:20:10 +01:00
Davide De Rosa
5f83313b79 Bump base build number 2021-01-06 18:01:28 +01:00
Davide De Rosa
8d31bdc22f Fix Xcode version in CI
Xcode was 12 instead of 12.2 and therefore OpenSSL was failing on
Apple Silicon arch (MacOSX arm64).
2021-01-06 17:36:00 +01:00
Davide De Rosa
4c1fe20160 Upgrade Xcode project 2021-01-03 22:28:08 +01:00
Davide De Rosa
d4b7d47498 Merge macOS app and Core into repository
Temporarily drop env and fastlane.
2021-01-03 22:28:07 +01:00
Davide De Rosa
1213212332 Move ProductManager to Core 2020-12-27 16:56:25 +01:00
Davide De Rosa
6b07e7eb9e Fix wrong deployment target (14.2 -> 12.0) 2020-11-21 19:05:29 +01:00
Davide De Rosa
2f42099bd0 Update project and deprecated APIs 2020-11-15 22:21:31 +01:00
Davide De Rosa
267119b0fd Fix overridden deployment targets 2020-11-15 17:42:21 +01:00
Davide De Rosa
4887c27816 Update TunnelKit with VPN manager 2020-06-23 09:54:39 +02:00
Davide De Rosa
c033c208bd Upgrade project 2020-05-23 17:59:53 +02:00
Davide De Rosa
6159221d0b Add/update translations
Legitimate:

- es
- fr
- it
- pl
- ru
- zh-Hans
2019-12-11 12:28:03 +01:00
Davide De Rosa
28a7dcdcf7 Update providers via web service
Reload products after update. Always re-list products!

Had to fix web services in Convenience, completion handler not
invoked from main queue.
2019-11-28 11:34:01 +01:00
Davide De Rosa
97f458385c Update to API v3
- Dynamic providers
- Add index.json to API
2019-11-28 09:57:34 +01:00
Davide De Rosa
1fd2d18653 Refactor trusted networks code 2019-11-21 09:15:24 +01:00
Davide De Rosa
70783f9dda Reuse Credits from Convenience 2019-11-20 23:14:19 +01:00
Davide De Rosa
41030d2d17 Prepare Info.plist for localization 2019-11-02 12:18:44 +01:00
Davide De Rosa
a9065bf9b7 Move Flags from Core to app 2019-11-02 11:18:43 +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
e99cc3669d Add stubs for purchase screen
With macro for presenting it everywhere.
2019-10-31 09:36:08 +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
5f3ebfd9fe Drop VersionViewController
Reuse from Convenience.
2019-10-28 09:53:32 +01:00
Davide De Rosa
e0a9fadac4 Add server network screen 2019-10-23 11:59:30 +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
1c537727cb Enforce 64-bit archs
Work around "Too many symbol files" warning.
2019-10-11 14:37:27 +02:00
Davide De Rosa
aef0201b00 Revert strip symbols (who touched it?)
Raises "Too many symbols" issue when uploading to App Store Connect.
2019-10-11 13:38:12 +02:00
Davide De Rosa
2cd6677e16 Replace with Convenience entities
- About
- Alerts
- Dialogs
- InApp
- Reviewer
- SingleOptionViewController
- StrongTableModel
2019-10-11 12:43:05 +02:00
Davide De Rosa
4e6b9b358b Revert "Temporarily use automatic signing"
This reverts commit f3a8e4ae25.
2019-09-22 20:58:23 +02:00
Davide De Rosa
f3a8e4ae25 Temporarily use automatic signing 2019-09-11 10:03:48 +02:00
Davide De Rosa
c9f807babd Upgrade project to Xcode 11
Disable code signing for frameworks.
2019-09-11 10:03:48 +02:00
Davide De Rosa
3c62a967c9 Use TunnelKit 2.0.3
Had to update CocoaPods 1.6.0 to 1.7.5
2019-09-07 00:14:01 +02:00
Davide De Rosa
f90a84f1a4 Reuse Issue from Core 2019-09-05 22:50:56 +02:00
Davide De Rosa
3b9e3879ca Move InAppHelper to Core 2019-08-16 00:24:05 +02:00
Davide De Rosa
2c3e19eec1 Add zh-Hans to project localizations
Forgotten as usual!
2019-08-11 16:01:10 +02:00
Davide De Rosa
57c23085fb Add Settings bundle to leverage language selector
New in iOS 13.

Fixes #90
2019-07-27 10:01:59 +02:00
Davide De Rosa
2e362bf553 Reuse Core extensions
- NetworkChoice.choices()
- OpenVPN.* available options
- ConnectionProfile.clientNetworkSettings
2019-06-23 00:17:37 +02:00
Davide De Rosa
282728ae1e Move app-related strings in
Move Core strings to app target.

SwiftGen uses same bundle by default. No problem because Core
does not (and should not) any string internally.
2019-06-23 00:11:56 +02:00
Davide De Rosa
0bb5f1d9c0 Remove again spurious pt-br 2019-06-19 15:12:42 +02:00
Davide De Rosa
c6e54de869 Fix strict pt localization 2019-06-13 10:19:07 +02:00
Davide De Rosa
08b3230b2c Work around Xcode breaking l10n
Localized intents are imported incorrectly, with .strings
files separate from the .intentdefinition. HARD TO BELIEVE (not
so much with such a broken IDE), when this happens, everything
breaks, including Localizable.strings. For some obscure reason,
the English strings are still reachable.

Workaround:

- Import Intents.intentdefinition
- Remove Intents.strings from project (reference only)
- Re-enable each localization for Intents.intentdefinition
- When asked, select "Use file"

See dc2de46327
2019-05-28 08:41:24 +02:00
Davide De Rosa
ff57e4fd2c Remove Core test target 2019-05-28 08:41:24 +02:00
Davide De Rosa
04a00fdb98 Remove spurious macOS framework 2019-05-28 08:41:24 +02:00
Davide De Rosa
ef300e07d2 Fix Swift version globally 2019-05-28 07:01:49 +02:00
Davide De Rosa
0a21237a47 Fix missing es localization
Delete stale directory.
2019-05-28 06:54:04 +02:00
Davide De Rosa
0bdfc2313b Update pods 2019-05-27 00:15:51 +02:00
Davide De Rosa
6ef7a97098 Symlink to submodules
Easier to switch to other directories.
2019-05-27 00:14:14 +02:00
Davide De Rosa
6ec7785d31 Isolate future submodules
- API
- Core

Prepend API version prefix to bundle path.
2019-05-27 00:14:14 +02:00
Davide De Rosa
dc2de46327 Reimport Passepartout Resources
Normalize localized intents.
2019-05-27 00:14:13 +02:00
Davide De Rosa
84eb9d09c4 Rename Core targets
Fix import in Core umbrella header.
2019-05-27 00:13:33 +02:00
Davide De Rosa
e50ed97b3f Translate es application 2019-05-27 00:06:49 +02:00
Davide De Rosa
190eab152c Translate es intents 2019-05-26 21:52:05 +02:00
Davide De Rosa
641890f4ab Integrate fr localization 2019-05-26 08:35:43 +02:00
Davide De Rosa
60b967ee3a Make provisioning ids dynamic via .xcconfig 2019-05-25 18:29:10 +02:00
Davide De Rosa
4197a33ec8 Integrate sv localization 2019-05-25 10:02:09 +02:00
Davide De Rosa
2dd8e5613a Integrate el localization
Shorten app subtitle for char limit.
2019-05-21 15:35:11 +02:00
Davide De Rosa
98f8b04f39 Integrate nl localization
Copy missing files from en-US.

Had to shorten app subtitle for char limit.
2019-05-20 14:17:45 +02:00
Davide De Rosa
ef4bdcafa8 Reorder files 2019-05-17 13:07:18 +02:00
Davide De Rosa
c6fbdca342 Move network settings to ad-hoc screen
Can now set gateway/DNS/proxy settings explicitly.

- Read from .ovpn (hosts only)
- Pull from server (PUSH_REPLY)
- Set manually
2019-05-01 23:00:28 +02:00
Davide De Rosa
d9a0ebd923 Upgrade API to v2 (entities) 2019-04-25 21:30:43 +02:00
Davide De Rosa
24ea18b7a0 Restore pt-BR localization
Lost in some conflict...
2019-04-25 18:31:26 +02:00
Davide De Rosa
69515ee6a3 Add ru translations 2019-04-23 15:45:56 +02:00
Davide De Rosa
c68d6b44cc Add de translation 2019-04-23 14:35:29 +02:00
Davide De Rosa
fd9a165817 Use Locale for country names too
I hadn't thought it before!
2019-04-13 18:55:45 +02:00
Davide De Rosa
cf8f0984a3 Cache pool models, do not rebuild each time
Invalidate on new infrastructure.
2019-04-11 23:38:16 +02:00
Davide De Rosa
e0c8b478bb Unzip NordVPN external resources to cache 2019-04-11 19:11:08 +02:00
Davide De Rosa
35605ba89f Download resource with progress HUD 2019-04-11 19:01:59 +02:00
Davide De Rosa
4add7a695c Migrate to Swift 5
Last time was probably incomplete.
2019-04-11 16:51:12 +02:00
Davide De Rosa
bb299335ad Add activity cell 2019-04-08 22:59:24 +02:00
Davide De Rosa
26453f9612 Add donation view controller 2019-04-07 15:29:10 +02:00
Davide De Rosa
895c19328e Add in-app donation identifiers 2019-04-07 15:29:10 +02:00
Davide De Rosa
c542722f47 Regroup storyboard implementations 2019-04-07 08:52:16 +02:00
Davide De Rosa
920c704359 Externalize About storyboard 2019-04-07 08:52:16 +02:00
Davide De Rosa
0ba072c6dd Normalize intent localization 2019-04-06 22:46:30 +02:00
Davide De Rosa
97a72c7c02 Create PoolGroup for logical country/area grouping
When multiple nums (#) exist within a group.
2019-04-06 16:20:01 +02:00
Davide De Rosa
805737caea Translate all strings
Use "e-mail" everywhere.
2019-04-05 22:31:04 +02:00
Davide De Rosa
e01f95d23b Translate intents 2019-04-05 19:49:20 +02:00
Davide De Rosa
cbf6525354 Reorganize project for multiple languages 2019-04-05 19:49:20 +02:00
Davide De Rosa
7d417e14ee Add pool country flags 2019-04-05 11:59:39 +02:00
Davide De Rosa
b9de756253 Move provider logos to own assets 2019-04-05 10:17:29 +02:00
Davide De Rosa
f97b8447d9 Show provider logos in Organizer and Wizard 2019-04-05 00:52:36 +02:00
Davide De Rosa
ab5517dcba Rename ParsingResult to Result
From ConfigurationParser in TunnelKit.
2019-04-04 19:26:08 +02:00
Davide De Rosa
921e57557d Render data count with closest unit
Set a 10% boundary (e.g. 100MB = 0.1GB).
2019-03-30 20:10:04 +01:00
Davide De Rosa
912ae63ead Convert resources to Base l10n
Could this fix the uploader issue with intents localization?
2019-03-30 19:25:06 +01:00
Davide De Rosa
ae88fdfad6 Rename shortcut manager vc 2019-03-27 22:09:08 +01:00
Davide De Rosa
d5b7a1e576 Show existing Siri shortcuts as first controller 2019-03-27 21:08:51 +01:00
Davide De Rosa
3eb9c6ae98 Localize Pool via country code + area 2019-03-21 22:21:42 +01:00
Davide De Rosa
ed79c79df5 XXX: Restore intent definition w/o gen classes
Okay, it's causing "Invalid Siri Support" l10n warnings when
uploading to App Store Connect, but intents don't work without
this.

Back and forth from 5dd02e8 and a471161
2019-03-19 18:05:11 +01:00
Davide De Rosa
a471161892 Fix again intent definition glitch 2019-03-18 23:11:41 +01:00
Davide De Rosa
220d1233af Restore intents definition in app target 2019-03-18 22:32:07 +01:00
Davide De Rosa
15602f7dc9 Pick profile/location for connection intent
- Host: ConnectVPN intent
- Provider: requires Pool selection
2019-03-18 22:13:36 +01:00
Davide De Rosa
1ea85ff32e Move shortcuts to separate storyboard 2019-03-18 21:18:40 +01:00
Davide De Rosa
1c103c639d Add shortcuts view controller stub 2019-03-18 20:54:47 +01:00
Davide De Rosa
ebcf7da8c2 Restore valid archs (64-bit)
Suppress warnings on ASC uploads.

Introduced in e8678e4
2019-03-18 18:48:48 +01:00
Davide De Rosa
5dd02e8939 Fix glitch with intent l10n 2019-03-18 18:44:34 +01:00
Davide De Rosa
1b5070d667 Fix duplicated pods (Core + App)
Had to deintegrate and reintegrate CocoaPods.
2019-03-18 17:59:02 +01:00
Davide De Rosa
4b8d7814fc Normalize project version 2019-03-18 17:31:33 +01:00
Davide De Rosa
c3e6e1ecd5 Move intents to Core target
Suppress responses for consistency.
2019-03-18 17:06:35 +01:00
Davide De Rosa
c7f522f55e Create Passepartout-Core framework target
Move all sources to this target, out of Passepartout-iOS.

FIXME: TrustedNetworks uses ServiceViewController.RowType
FIXME: make iOS target depend on Core.
2019-03-18 11:19:24 +01:00
Davide De Rosa
1dc659dbe1 Localize intents definition
And drop redundant ConnectVPN intent subtitle.
2019-03-10 14:11:59 +01:00
Davide De Rosa
e8678e4eea Set beta release
Update to recommended project settings.
2019-03-09 11:39:35 +01:00
Davide De Rosa
2e4d2162ac Define custom intents
- Connect
- Disable
- (Un)Trust current network
- (Un)Trust cellular network
- Move to location
2019-03-09 11:23:47 +01:00
Davide De Rosa
f01027bca5 Add Siri capability 2019-03-09 08:45:48 +01:00
Davide De Rosa
9524a72f2b Work around TunnelKit/OpenSSL linking issue 2019-02-25 22:56:24 +01:00
Davide De Rosa
3f90a96744 Fix CocoaPods regression
Stick to 1.5.3 until they fix CocoaPods/CocoaPods#8333 properly.

Also, use TunnelKit with a proper OpenSSL version.

Fixes #34
2019-02-25 12:25:29 +01:00
Davide De Rosa
68b9cf0fdf Convert bundled API to a folder reference
Create intermediate directory for cached infrastructure.
2019-02-23 11:18:31 +01:00
Davide De Rosa
76c50e637d Add reviewer singleton
Prompt for rating after N events.
2018-12-10 12:47:53 +01:00
Davide De Rosa
a486cb4265 List licenses/notices in full table 2018-12-04 10:33:19 +01:00
Davide De Rosa
3d5c2bb8f5 Move .ovpn parser to TunnelKit 2018-11-10 11:39:36 +01:00
Davide De Rosa
290cb6d25e Fix things broken by product renaming
Broken by 156f47b
2018-11-10 11:00:58 +01:00
Davide De Rosa
c7cb00f679 Move ProfileKey to separate file 2018-11-06 11:16:34 +01:00
Davide De Rosa
389746180b Move PlaceholderConnectionProfile to separate file 2018-11-06 11:16:30 +01:00
Davide De Rosa
156f47bb65 Normalize product names
Remove platform suffix.
2018-11-06 11:01:44 +01:00
Davide De Rosa
3f1e98f8ac Delegate profile management from ConnectionService
Makes much more sense than dumb wizard notifications. Organizer is
already a ConnectionServiceDelegate.
2018-11-02 15:20:37 +01:00
Davide De Rosa
0d49d1abc8 Upgrade SwiftGen 2018-10-28 14:50:12 +01:00
Davide De Rosa
25523b5f61 Add stubs for imported hosts 2018-10-27 12:43:26 +02:00
Davide De Rosa
8c1e6d00ca Parse .ovpn file outside of wizard context 2018-10-27 12:33:17 +02:00
Davide De Rosa
821393af70 Refactor configurations in service extension
Reuse same directories of ConnectionService for storing
configuration files.
2018-10-27 09:42:41 +02:00
Davide De Rosa
76f2597424 Update TunnelKit and remove unused code
ConnectionProfileHolder
2018-10-26 19:05:25 +02:00
Davide De Rosa
d087acd512 Migrate host configurations 2018-10-25 22:45:50 +02:00
Davide De Rosa
542a3e3721 Upgrade TunnelKit with configuration refactoring 2018-10-25 22:45:44 +02:00
Davide De Rosa
346a9490ec Save .ovpn internally associated to host profile 2018-10-23 12:57:11 +02:00
Davide De Rosa
b93000819b Reuse Credits VC to add a Disclaimer 2018-10-18 10:19:08 +02:00