summaryrefslogtreecommitdiffhomepage
path: root/ios
AgeCommit message (Collapse)AuthorFilesLines
2023-03-07Display remaining account time in years if equal to or more than two years, ↵Jon Petersson3-10/+49
otherwise display days.
2023-03-06Add background observer for IPC operationsAndrej Mihajlov2-2/+31
2023-03-06Update WireGuardKit to ↵Emīls2-2/+2
https://github.com/mullvad/wireguard-apple/commit/7c01d4d14a2816556ad016e0371d585456eaa1fb
2023-03-06Update WireGuardKit to ↵Emīls2-2/+2
https://github.com/mullvad/wireguard-apple/commit/7c01d4d14a2816556ad016e0371d585456eaa1fb
2023-03-06Swap vertical position of country and city labels on connection viewJon Petersson2-8/+9
2023-03-06Update WireGuardKit to ↵Andrej Mihajlov2-2/+2
https://github.com/mullvad/wireguard-apple/commit/4dc2556fef4641346433f90e15ad5f0cf21104b9
2023-03-03Bump ios version to 2023.1-7ios/2023.1Emīls1-1/+1
2023-03-03Fix typoAndrej Mihajlov1-1/+1
2023-03-03Add additional guard to restrict connectivity check to connecting and ↵Andrej Mihajlov1-3/+3
connected state only
2023-03-03Use NEPacketTunnelProvider.defaultPath instead of path monitorAndrej Mihajlov4-54/+54
Seems to be more reliable than using path monitor directly. Also understands airplane mode so no need for any kind of heuristics.
2023-03-03PacketTunnel: ignore all requests to reconnect after the first call to ↵Andrej Mihajlov1-0/+8
stopTunnel()
2023-03-03TunnelMonitor: rework to use locks and introduce .recovering stateAndrej Mihajlov3-118/+137
2023-03-03Serialize calls to reconnect tunnelAndrej Mihajlov1-4/+36
2023-03-02Pinger: lock send(to:)Andrej Mihajlov1-2/+2
2023-03-02Swiftformat: disable hoistTry ruleAndrej Mihajlov1-1/+1
2023-03-02Remove dangling files that were previous removedAndrej Mihajlov3-514/+0
2023-03-01Bump iOS CPV to 6Emīls1-1/+1
Since a build was released to internal Test Flight, we didn't merge the commit used for the build to main. So, let's do that now.
2023-02-28Replace OperationCompletion with ResultAndrej Mihajlov49-637/+460
Error is set to OperationError.cancelled if operation is cancelled.
2023-02-15Logging: add logger levelAndrej Mihajlov1-0/+2
2023-02-15PacketTunnel: tune down error verbosityAndrej Mihajlov1-3/+3
2023-02-15TunnelMonitor: move happy path into do {} block to avoid return in catch.Andrej Mihajlov1-5/+3
2023-02-15TunnelMonitor: tune down log levelsAndrej Mihajlov1-17/+19
2023-02-15Pinger: remove loggerAndrej Mihajlov1-13/+1
2023-02-14Update changelogAndrej Mihajlov1-0/+1
2023-02-14Update gems, add 6.7 inch device to configAndrej Mihajlov2-18/+16
2023-02-13Bump iOS/2023.1 (build 5)ios/2023.1-build5Andrej Mihajlov1-1/+1
2023-02-13Ignore error to delete device on logoutAndrej Mihajlov1-23/+10
2023-02-10Move build version into Version.xcconfigAndrej Mihajlov5-53/+21
2023-02-10Disable retry strategy for access tokensAndrej Mihajlov5-51/+17
Requests that require authorization already implement their own retry strategy. Hence access token requests should be a part of that strategy and not behave as each having their individual strategy. Previously a request requiring authentication configured with 3 retry attempts would perform 9 calls (3 * 3) to obtain access token in the worst case. That's because each individual request to obtain access token was configured with default retry strategy (3 retry attempts). With this change exactly 3 attempts will be made.
2023-02-06Bump iOS/2023.1 (build 4)Andrej Mihajlov1-28/+28
2023-02-06Backport automatic tracking of modal overlay dismissalAndrej Mihajlov4-10/+61
2023-02-06REST: migrate app/v1/create-apple-payment to use access token authorizationAndrej Mihajlov3-27/+23
2023-02-06Bump iOS/2023.1 (build 3)Andrej Mihajlov1-28/+28
2023-02-03Extract URLRequestProxy implementationAndrej Mihajlov4-70/+112
2023-02-03Add missing call to completion in response to .cancelURLRequest(id)Andrej Mihajlov1-0/+1
2023-02-03Buffer messages and attempt to reopen log file descriptor on failureAndrej Mihajlov4-103/+174
This should cover the case where log file cannot be open on boot when file system is still locked (until the first device unlock)
2023-02-03Keep the tunnel process running if it had failed to read configuration on ↵Andrej Mihajlov2-68/+88
startup Restart it internally at 2s interval. This should keep the VPN running on boot but block all networking until device is locked and the process gained access to configuration stored in Keychain.
2023-02-03Rework logging configurator into builderAndrej Mihajlov3-61/+102
2023-02-03Exit tunnel when keychain is locked (solves boot issue)Andrej Mihajlov1-0/+18
2023-02-03Add new KeychainError variant for errSecInteractionNotAllowedAndrej Mihajlov1-0/+1
2023-02-03Show configuration errors in tunnel status notificationAndrej Mihajlov1-7/+1
2023-02-03Add configuration failure causeAndrej Mihajlov2-31/+59
2023-02-03Add button to share problem report in debug buildsAndrej Mihajlov1-9/+25
2023-01-30Bump iOS 2023.1 (build 2)Andrej Mihajlov1-28/+28
2023-01-30MKMapView: guard against kCLLocationCoordinate2DInvalidAndrej Mihajlov1-10/+19
MKMapView.convert(_, toRegionFrom:) may return a region with center set to (-180, -180) when it cannot compute the geo region. Normally this occurs before the first layout pass, i.e when the map view is squashed to zero (0,0,0,0)
2023-01-27Update Android+iOS square icons sourced from icon-square.svgLinus Färnstrand1-0/+0
2023-01-27Improve documentation around icon and asset generationLinus Färnstrand1-1/+12
2023-01-20Move adaptive presentation delegate from scene delegate into its own class.Andrej Mihajlov3-81/+163
Also fix issues in former implementation where transitionCoordinator.containerView used to return UIWindow when changing to split screen. New implementation makes a manual lookup of UITransitionView to ensure that the settings cog is added into the right container view. In the future this better be replaced with UISheetPresentationController subclass but for now we'll keep adding the settings cog manually within the adaptivity call.
2023-01-20Drop custom navigation controllerAndrej Mihajlov4-154/+54
Removes redundant ConditionalNavigation protocol that is not used for anything more than disabling pop gesture in problem reports when editing. Pop gesture can be disabled directly from within problem report view controller.
2023-01-18Bump iOS version to 2023.1 (build 1)Andrej Mihajlov1-32/+32