diff --git a/apps/ios/Shared/Views/UserSettings/AppearanceSettings.swift b/apps/ios/Shared/Views/UserSettings/AppearanceSettings.swift index 712dfe43cd..1f648b09dc 100644 --- a/apps/ios/Shared/Views/UserSettings/AppearanceSettings.swift +++ b/apps/ios/Shared/Views/UserSettings/AppearanceSettings.swift @@ -14,6 +14,8 @@ let interfaceStyles: [UIUserInterfaceStyle] = [.unspecified, .light, .dark] let interfaceStyleNames: [LocalizedStringKey] = ["System", "Light", "Dark"] +let appSettingsURL = URL(string: UIApplication.openSettingsURLString)! + struct AppearanceSettings: View { @EnvironmentObject var sceneDelegate: SceneDelegate @State private var iconLightTapped = false @@ -24,6 +26,16 @@ struct AppearanceSettings: View { var body: some View { VStack{ List { + Section(String("Language")) { + HStack { + Text(currentLanguage) + Spacer() + Button("Change") { + UIApplication.shared.open(appSettingsURL) + } + } + } + Section("App icon") { HStack { updateAppIcon(image: "icon-light", icon: nil, tapped: $iconLightTapped) @@ -62,6 +74,11 @@ struct AppearanceSettings: View { } } + private var currentLanguage: String { + let lang = Bundle.main.preferredLocalizations.first ?? "en" + return Locale.current.localizedString(forIdentifier: lang)?.localizedCapitalized ?? lang + } + private func updateAppIcon(image: String, icon: String?, tapped: Binding) -> some View { Image(image) .resizable()