summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorBug Magnet <marco.nikic@mullvad.net>2025-06-11 16:52:48 +0200
committerBug Magnet <marco.nikic@mullvad.net>2025-06-11 16:52:48 +0200
commitae361fe2162943900d0e278f22991adb60e8287a (patch)
treef72715845a91c4ddd976444e6faecf0f064c73e0
parent54aeec224d4f0ae502670dd9e960afe2c662dffb (diff)
parent7ca73df4050050573be2ad1d1398dbc1cbb96aa4 (diff)
downloadmullvadvpn-ae361fe2162943900d0e278f22991adb60e8287a.tar.xz
mullvadvpn-ae361fe2162943900d0e278f22991adb60e8287a.zip
Merge branch 'ios-1207-localise-all-the-strings'
-rw-r--r--ios/MullvadSettings/AccessMethodRepository.swift2
-rw-r--r--ios/MullvadVPN/Coordinators/Settings/APIAccess/List/ListAccessMethodInteractor.swift8
2 files changed, 9 insertions, 1 deletions
diff --git a/ios/MullvadSettings/AccessMethodRepository.swift b/ios/MullvadSettings/AccessMethodRepository.swift
index 06a39fc256..72cfc0668e 100644
--- a/ios/MullvadSettings/AccessMethodRepository.swift
+++ b/ios/MullvadSettings/AccessMethodRepository.swift
@@ -18,6 +18,8 @@ public class AccessMethodRepository: AccessMethodRepositoryProtocol, @unchecked
private let logger = Logger(label: "AccessMethodRepository")
+ // The access method names will be localised on creation time. As they are persisted
+ // to on-device storage, they will not be relocalised if the user changes language.
private let direct = PersistentAccessMethod(
id: AccessMethodRepository.directId,
name: "Direct",
diff --git a/ios/MullvadVPN/Coordinators/Settings/APIAccess/List/ListAccessMethodInteractor.swift b/ios/MullvadVPN/Coordinators/Settings/APIAccess/List/ListAccessMethodInteractor.swift
index bfbf73fb4b..702922b9c0 100644
--- a/ios/MullvadVPN/Coordinators/Settings/APIAccess/List/ListAccessMethodInteractor.swift
+++ b/ios/MullvadVPN/Coordinators/Settings/APIAccess/List/ListAccessMethodInteractor.swift
@@ -46,7 +46,13 @@ struct ListAccessMethodInteractor: ListAccessMethodInteractorProtocol {
extension PersistentAccessMethod {
func toListItem() -> ListAccessMethodItem {
let sanitizedName = name.trimmingCharacters(in: .whitespaces)
- let itemName = sanitizedName.isEmpty ? kind.localizedDescription : sanitizedName
+ // the keys look like "ACCESS_METHOD_NAME:Mullvad bridges"
+ let localizedName = Bundle.main.localizedString(
+ forKey: "ACCESS_METHOD_NAME:\(sanitizedName)",
+ value: sanitizedName,
+ table: "APIAccess"
+ )
+ let itemName = localizedName.isEmpty ? kind.localizedDescription : localizedName
return ListAccessMethodItem(
id: id,