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
6e46757d99
Verify feature/provider eligibility
...
Limit hosts to 2.
2019-10-31 09:36:09 +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
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
0c8ccd8cc3
Add FAQ link in Organizer (home)
2019-10-22 14:25:29 +02:00
Davide De Rosa
1916b88243
Update Convenience for review URL
2019-10-11 18:10:23 +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
47789132d9
Drop Patreon link
2019-09-11 09:26:30 +02:00
Davide De Rosa
41ed10e76e
Fall back to mailto URL when no email account
...
Useful with third party mail apps.
2019-07-05 11:11:22 +02:00
Davide De Rosa
60b60646d4
Move available providers to Core
2019-06-28 19:10:42 +02:00
Davide De Rosa
40a7ac56f7
Move some strings to Core
2019-06-23 10:33:43 +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
84eb9d09c4
Rename Core targets
...
Fix import in Core umbrella header.
2019-05-27 00:13:33 +02:00
Davide De Rosa
60b967ee3a
Make provisioning ids dynamic via .xcconfig
2019-05-25 18:29:10 +02:00
Davide De Rosa
a6745ceec7
Move feedback section to main screen
2019-04-15 14:40:16 +02:00
Davide De Rosa
60259a2fb9
Base profile selection on ConnectionProfile
...
Rather than cells, which relies on cell visibility. Drop ugly
selection segue.
Fixes #63
2019-04-11 15:52:24 +02:00
Davide De Rosa
5aadde5065
Enter active profile on VPN status selection
...
Rename selectedIndexPath to activeIndexPath.
2019-04-10 16:51:05 +02:00
Davide De Rosa
91b4992790
Show VPN status on top of organizer
2019-04-10 16:49:49 +02:00
Davide De Rosa
c598011abc
Skip scrolling to active profile
2019-04-10 16:49:43 +02:00
Davide De Rosa
ff8d57e9f0
Fix selectedIndexPath with generic section indexes
2019-04-10 16:49:32 +02:00
Davide De Rosa
3309fd747f
Lock donation controller if no payment method
2019-04-09 11:17:31 +02:00
Davide De Rosa
e68c46d729
Set email subjects statically
...
App name is constant.
2019-04-07 16:56:38 +02:00
Davide De Rosa
77ce52ac33
Do not localize email templates
...
Risk is not understanding them!
2019-04-07 16:30:38 +02:00
Davide De Rosa
d13f813236
Add email template to offer as translator
2019-04-07 16:20:15 +02:00
Davide De Rosa
26453f9612
Add donation view controller
2019-04-07 15:29:10 +02:00
Davide De Rosa
6f57d3503a
Add donation cell in organizer
2019-04-07 15:29:10 +02:00
Davide De Rosa
561307568e
Add Patreon link in new Support section
2019-04-07 15:29:10 +02:00
Davide De Rosa
a4a82fbd03
Fix table pre-scrolling to selection
...
iOS is broken, must wrap in a DispatchQueue.main.async
2019-04-05 12:46:50 +02:00
Davide De Rosa
f97b8447d9
Show provider logos in Organizer and Wizard
2019-04-05 00:52:36 +02:00
Davide De Rosa
8a855bf538
Show app version in About cell
2019-03-22 19:29:15 +01:00
Davide De Rosa
fdc3869d29
Move baseVPNConfiguration to TransientStore
...
Simplifies configuration update.
2019-03-22 19:09:52 +01:00
Davide De Rosa
c0be33dacc
Add descriptive footer to Siri section
2019-03-19 18:01:15 +01:00
Davide De Rosa
03c8e43ce7
Tweak intent donations
...
- Activate -> EnableVPN
- Connect -> ConnectVPN/MoveToLocation
- Disconnect -> DisableVPN
2019-03-19 18:01:15 +01:00
Davide De Rosa
1c103c639d
Add shortcuts view controller stub
2019-03-18 20:54:47 +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
5237aa3916
Import Core framework into iOS target
2019-03-18 11:52:19 +01:00
Davide De Rosa
9dcd6de873
Always donate a MoveTo when provider
2019-03-10 14:13:30 +01:00
Davide De Rosa
7a21338042
Update copyright
2019-03-09 11:44:44 +01:00
Davide De Rosa
5d2450b985
Donate interactions
...
- Connect on add profile (covers first profile)
- Connect on activate profile
- Disable on connect to VPN
- Trust on add current Wi-Fi
- Trust on cellular network
- MoveTo on first connected location (if provider)
- MoveTo on location change (if provider)
2019-03-09 11:23:50 +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
5ccdece72b
Do not reload views on profile renaming
...
Use explicit accessor, implicit didSet is worrisome.
Fixes #37
2019-03-08 12:57:51 +01:00
Davide De Rosa
ccf7a68ba8
Show raw debug log in beta
2019-03-07 23:00:14 +01:00
Davide De Rosa
9441a31fd1
Add button to test app termination
...
Might help reproducing #19
2019-03-06 17:46:06 +01:00
Davide De Rosa
c7cb00f679
Move ProfileKey to separate file
2018-11-06 11:16:34 +01:00
Davide De Rosa
e7d2dde972
Add/remove profile to/from filesystem immediately
...
Save unnecessary serialization of unaffected profiles.
2018-11-04 15:06:53 +01:00
Davide De Rosa
bc0568cc38
Do not re-save profiles on (de)activate
...
Only service JSON is affected.
2018-11-04 14:55:25 +01:00
Davide De Rosa
9e7c4960e5
Update GitHub URL in license preamble
2018-11-04 10:53:16 +01:00
Davide De Rosa
76a3e48242
Make serialize() the very first call in delegate
2018-11-04 10:49:40 +01:00
Davide De Rosa
3f5d23a34c
Drop redundant table/model updates on remove
...
Already done in commit row, and also breaks animation.
2018-11-04 10:49:40 +01:00