summaryrefslogtreecommitdiffhomepage
path: root/ios
AgeCommit message (Collapse)AuthorFilesLines
2022-12-15Update build configurationAndrej Mihajlov6-17/+26
2022-12-13Bump iOS/2022.3 (build 3)Andrej Mihajlov1-16/+16
2022-12-13Periodically update device data while capping it at 1 update per minuteAndrej Mihajlov5-20/+91
2022-12-13Add periodic refresh to account expiry in-app notificationAndrej Mihajlov7-137/+209
2022-12-09Use given deviceStateAndrej Mihajlov1-1/+1
2022-12-09Move notification response matching into notification manager and system ↵Andrej Mihajlov4-19/+54
providers
2022-12-09Move all notification related entities into separate filesAndrej Mihajlov13-128/+241
2022-12-09Handle application updates with settings migrationsajacl7-11/+113
1. Block all the traffic when tunnel cannot read the settings (Introduced empty tunnel in `TunnelConfiguration`). 2. Introduce proper error enum, wrap WireGuard error and settings migration error. 3. Report possible errors to GUI.
2022-12-08TunnelManager: automatically track application notificationsAndrej Mihajlov2-12/+18
2022-12-08Wrap system tunnel management into TunnelStoreAndrej Mihajlov14-173/+297
2022-12-08Explicitly state that migration errors lead to device being logged outAndrej Mihajlov1-3/+7
2022-12-05Drop intents supportAndrej Mihajlov15-761/+2
Sadly we cannot support intents since we can't run multiple copies of our main scene without synchronizing state between all of them. Not to mention we never intended this to work this way. Also, currently there is no known way to prevent user from creating multiple windows of the app on iPadOS.
2022-12-05Disable multiwindow supportAndrej Mihajlov1-1/+1
2022-11-30Wait for utun to appear before reporting network statusAndrej Mihajlov1-34/+31
2022-11-30Start tunnel monitoring upon receiving the first path updateAndrej Mihajlov2-15/+20
2022-11-28Throw ReadSettingsVersionError from readSettings()Andrej Mihajlov1-4/+11
2022-11-28Rename SettingsMigration to Migrations. Move Migration.swift one level upAndrej Mihajlov3-4/+4
2022-11-28Implement UI for migration errorsAndrej Mihajlov4-16/+113
2022-11-28Normalize errors returned by migrateStore() and reset store upon failureAndrej Mihajlov2-39/+124
2022-11-28Move logger to the topAndrej Mihajlov1-2/+2
2022-11-28Rename readLegacySettings to findAllLegacySettingsInKeychainAndrej Mihajlov1-3/+3
We have two methods with the same name but different return type.
2022-11-28Add OperationCompletion.get() helperAndrej Mihajlov2-34/+25
2022-11-28Store last used account in MigrationFromV1ToV2Andrej Mihajlov2-13/+12
2022-11-28Remove empty whitespaceAndrej Mihajlov1-2/+0
2022-11-28Add missing returnAndrej Mihajlov1-1/+1
2022-11-28Pass access group to KeychainSettingsStoreAndrej Mihajlov2-9/+12
2022-11-23Add version and migration to settings.sajacl12-423/+653
Introduced `KeychainFacade` as store reader/writer. Introduced `SettingsStorageMiddleware` for version handler and serialization wrapper. Introduced `SettingsManager.migrateStore` method for migration logic handler. Introduced migration protocol. Introduced `MigrationFromV1ToV2` for handling migration from legacy settings (v1) to v2. Introduced `MigrationFromUnversionedToV2` for handling migration from unversioned settings, to storing version (v2) alongside data.
2022-11-21Update API ipAndrej Mihajlov1-1/+1
2022-11-17REST: replace transport registry with transport provider closureAndrej Mihajlov8-65/+34
2022-11-09Remove unnecessary .unlock()Andrej Mihajlov1-2/+0
2022-11-09PacketTunnel: fix error messageAndrej Mihajlov1-1/+1
2022-11-09Remove shared instancesAndrej Mihajlov18-153/+231
2022-11-09Expose relay selector via interactorAndrej Mihajlov4-14/+22
2022-11-08Trim down on extension galoreAndrej Mihajlov3-83/+56
2022-11-08Set ResultOperation generic typesAndrej Mihajlov1-1/+4
2022-11-08Merge guts of StoreReceipt into SendStoreReceiptOperationAndrej Mihajlov4-191/+96
2022-11-08Payments: reduce code duplication when calling observersAndrej Mihajlov1-34/+26
2022-11-08Payments: move account validation into operation, add background observerAndrej Mihajlov1-37/+47
2022-11-08Update table for StorePaymentManagerErrorAndrej Mihajlov1-8/+8
2022-11-07Check if device revoked or time expired after couple of failed attemptssajacl5-3/+261
Check if device is revoked or account has expired when the tunnel fails to connect on each second failed attempt.
2022-11-07Add testsAndrej Mihajlov4-0/+224
2022-11-07Remove unused importAndrej Mihajlov1-1/+0
2022-11-07Update changelogAndrej Mihajlov1-0/+1
2022-11-07Fix header in ServerRelaysResponseAndrej Mihajlov1-1/+1
2022-11-07Add URLSessionTransport into REST namespaceAndrej Mihajlov2-17/+19
2022-11-07Add exponential backoff with jitterAndrej Mihajlov6-15/+222
2022-11-07Move FixedWidthInteger arithmetics to MullvadTypesAndrej Mihajlov3-9/+8
2022-11-03Add settings interactor factoryAndrej Mihajlov4-12/+78
2022-11-03Add settings interactorAndrej Mihajlov4-29/+54
2022-11-03Add preferences interactorAndrej Mihajlov3-33/+46