summaryrefslogtreecommitdiffhomepage
path: root/ios
diff options
context:
space:
mode:
authorBug Magnet <marco.nikic@mullvad.net>2023-10-20 09:17:08 +0200
committerBug Magnet <marco.nikic@mullvad.net>2023-10-20 09:17:08 +0200
commit8fc622a104481731cf56aa6a18666eea51da636d (patch)
tree7e14ecc9065f5dc05cab48e9c36c8a5699edc514 /ios
parent61bc7d46fdafd964e7efb0073b5233222a71a404 (diff)
parent669f1f3832067505d2f9beff99c9a18e0bdf0abb (diff)
downloadmullvadvpn-8fc622a104481731cf56aa6a18666eea51da636d.tar.xz
mullvadvpn-8fc622a104481731cf56aa6a18666eea51da636d.zip
Merge branch 'prevent-user-from-navigating-away-from-views-when-waiting-on-ios-312'
Diffstat (limited to 'ios')
-rw-r--r--ios/MullvadVPN/Containers/Root/RootContainerViewController.swift5
-rw-r--r--ios/MullvadVPN/Coordinators/WelcomeCoordinator.swift6
-rw-r--r--ios/MullvadVPN/View controllers/CreationAccount/Welcome/WelcomeContentView.swift1
3 files changed, 11 insertions, 1 deletions
diff --git a/ios/MullvadVPN/Containers/Root/RootContainerViewController.swift b/ios/MullvadVPN/Containers/Root/RootContainerViewController.swift
index 60f9faae6d..0d005d66b1 100644
--- a/ios/MullvadVPN/Containers/Root/RootContainerViewController.swift
+++ b/ios/MullvadVPN/Containers/Root/RootContainerViewController.swift
@@ -352,6 +352,11 @@ class RootContainerViewController: UIViewController {
}
}
+ func enableHeaderBarButtons(_ enabled: Bool) {
+ headerBarView.accountButton.isEnabled = enabled
+ headerBarView.settingsButton.isEnabled = enabled
+ }
+
// MARK: - Accessibility
override func accessibilityPerformMagicTap() -> Bool {
diff --git a/ios/MullvadVPN/Coordinators/WelcomeCoordinator.swift b/ios/MullvadVPN/Coordinators/WelcomeCoordinator.swift
index ec6b9a30a8..512d31df00 100644
--- a/ios/MullvadVPN/Coordinators/WelcomeCoordinator.swift
+++ b/ios/MullvadVPN/Coordinators/WelcomeCoordinator.swift
@@ -122,6 +122,8 @@ extension WelcomeCoordinator: WelcomeViewControllerDelegate {
}
func didRequestToPurchaseCredit(controller: WelcomeViewController, accountNumber: String, product: SKProduct) {
+ navigationController.enableHeaderBarButtons(false)
+
let coordinator = InAppPurchaseCoordinator(
navigationController: navigationController,
interactor: inAppPurchaseInteractor
@@ -131,11 +133,13 @@ extension WelcomeCoordinator: WelcomeViewControllerDelegate {
coordinator.didFinish = { [weak self] coordinator in
guard let self else { return }
+ navigationController.enableHeaderBarButtons(true)
coordinator.removeFromParent()
didFinish?()
}
- coordinator.didCancel = { coordinator in
+ coordinator.didCancel = { [weak self] coordinator in
+ self?.navigationController.enableHeaderBarButtons(true)
coordinator.removeFromParent()
}
diff --git a/ios/MullvadVPN/View controllers/CreationAccount/Welcome/WelcomeContentView.swift b/ios/MullvadVPN/View controllers/CreationAccount/Welcome/WelcomeContentView.swift
index de2ff4c77a..7ee0326900 100644
--- a/ios/MullvadVPN/View controllers/CreationAccount/Welcome/WelcomeContentView.swift
+++ b/ios/MullvadVPN/View controllers/CreationAccount/Welcome/WelcomeContentView.swift
@@ -178,6 +178,7 @@ final class WelcomeContentView: UIView {
didSet {
let alpha = isPurchasing ? 0.7 : 1.0
purchaseButton.isLoading = isPurchasing
+ purchaseButton.isEnabled = !isPurchasing
purchaseButton.alpha = alpha
redeemVoucherButton.isEnabled = !isPurchasing
redeemVoucherButton.alpha = alpha