diff --git a/Config/BWIBuildSettings.swift b/Config/BWIBuildSettings.swift index 9d3394813..1c9d1de09 100644 --- a/Config/BWIBuildSettings.swift +++ b/Config/BWIBuildSettings.swift @@ -724,4 +724,7 @@ class BWIBuildSettings: NSObject { // MARK: Enable Room Retention var enableRoomRetention = false + + // MARK: homeserver selection via full qualified matrix id + var allowMatrixIDForHomeserverSelection = false } diff --git a/Podfile b/Podfile index 883f53f8a..6b25cc1d2 100644 --- a/Podfile +++ b/Podfile @@ -51,7 +51,7 @@ def import_MatrixKit_pods pod 'libPhoneNumber-iOS', '~> 0.9.13' pod 'DTCoreText', '1.6.26' #pod 'DTCoreText/Extension', '~> 1.6.25' - pod 'Down', '~> 0.11.0' + pod 'Down', :git => 'https://github.com/vvorlov/Down.git', :branch => 'master' end def import_SwiftUI_pods diff --git a/Podfile.lock b/Podfile.lock index 4bdc79fc5..f50862bc5 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -80,7 +80,7 @@ PODS: - ZXingObjC/All (3.6.9) DEPENDENCIES: - - Down (~> 0.11.0) + - Down (from `https://github.com/vvorlov/Down.git`, branch `master`) - DSWaveformImage (~> 6.1.1) - DTCoreText (= 1.6.26) - DTTJailbreakDetection (~> 0.4.0) @@ -107,7 +107,6 @@ DEPENDENCIES: SPEC REPOS: https://github.com/CocoaPods/Specs.git: - AFNetworking - - Down - DSWaveformImage - DTCoreText - DTFoundation @@ -137,18 +136,24 @@ SPEC REPOS: - ZXingObjC EXTERNAL SOURCES: + Down: + :branch: master + :git: https://github.com/vvorlov/Down.git MatrixSDK: :git: https://dl-gitlab.example.com/bwmessenger/bundesmessenger/bundesmessenger-ios-sdk :tag: v2.26.0 CHECKOUT OPTIONS: + Down: + :commit: dbb02cc9d16363874b7a0c6c48b9efe09bd5b006 + :git: https://github.com/vvorlov/Down.git MatrixSDK: :git: https://dl-gitlab.example.com/bwmessenger/bundesmessenger/bundesmessenger-ios-sdk :tag: v2.26.0 SPEC CHECKSUMS: AFNetworking: 3bd23d814e976cd148d7d44c3ab78017b744cd58 - Down: b6ba1bc985c9d2f4e15e3b293d2207766fa12612 + Down: 10462c9cb3a6ef28e0996739329c4976b13870f7 DSWaveformImage: 3c718a0cf99291887ee70d1d0c18d80101d3d9ce DTCoreText: ec749e013f2e1f76de5e7c7634642e600a7467ce DTFoundation: 76b624967cf5bcaae6bb057d622c536c36ef36d0 @@ -162,7 +167,7 @@ SPEC CHECKSUMS: libbase58: 8abc2a53ac38cd37720c0acbc53ef3660e9016c2 libPhoneNumber-iOS: 0a32a9525cf8744fe02c5206eb30d571e38f7d75 MatomoTracker: 1d98ddc58322fd9d65e1a6886b8e41363047bd13 - MatrixSDK: 0c394a7a3928208797d403bcf5706b6628690a96 + MatrixSDK: 45f9f97e7424e5d8731bf6b207c728a71caa8eb1 MatrixSDKCrypto: e44608012cae9befc52f13cd8e56c6f51ac83702 ReadMoreTextView: 19147adf93abce6d7271e14031a00303fe28720d Realm: 9ca328bd7e700cc19703799785e37f77d1a130f2 @@ -178,6 +183,6 @@ SPEC CHECKSUMS: zxcvbn-ios: fef98b7c80f1512ff0eec47ac1fa399fc00f7e3c ZXingObjC: 8898711ab495761b2dbbdec76d90164a6d7e14c5 -PODFILE CHECKSUM: 34582260e0e8275df7a07d3947cdac7794125b8e +PODFILE CHECKSUM: 92b7ae8a330216932c5a690e48743b4d7b1bdea8 -COCOAPODS: 1.15.2 +COCOAPODS: 1.16.2 diff --git a/Riot.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Riot.xcworkspace/xcshareddata/swiftpm/Package.resolved index d4b165eca..b769e2fe1 100644 --- a/Riot.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/Riot.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -105,8 +105,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/element-hq/matrix-rich-text-editor-swift", "state" : { - "revision" : "b6583a47b5d14d2dc8405a0303ebd4041b877707", - "version" : "2.37.12" + "revision" : "5f703d05bbf39f3026cc3c0697aab753a71fd83b", + "version" : "2.41.0" } }, { diff --git a/RiotSwiftUI/Modules/Authentication/Login/Coordinator/AuthenticationLoginCoordinator.swift b/RiotSwiftUI/Modules/Authentication/Login/Coordinator/AuthenticationLoginCoordinator.swift index 12109cba9..9ff7d76f7 100644 --- a/RiotSwiftUI/Modules/Authentication/Login/Coordinator/AuthenticationLoginCoordinator.swift +++ b/RiotSwiftUI/Modules/Authentication/Login/Coordinator/AuthenticationLoginCoordinator.swift @@ -206,23 +206,27 @@ final class AuthenticationLoginCoordinator: Coordinator, Presentable { } @MainActor private func parseUsername(_ username: String) { - guard MXTools.isMatrixUserIdentifier(username) else { return } - let domain = username.components(separatedBy: ":")[1] - let homeserverAddress = HomeserverAddress.sanitized(domain) - startLoading(isInteractionBlocking: false) - - currentTask = Task { [weak self] in - do { - try await authenticationService.startFlow(.login, for: homeserverAddress) - - guard !Task.isCancelled else { return } - - updateViewModel() - self?.stopLoading() - } catch { - self?.stopLoading() - self?.handleError(error) + // bwi #8170 no homeserver over matrix ID ch + if BWIBuildSettings.shared.allowMatrixIDForHomeserverSelection { + guard MXTools.isMatrixUserIdentifier(username) else { return } + let domain = username.components(separatedBy: ":")[1] + let homeserverAddress = HomeserverAddress.sanitized(domain) + + startLoading(isInteractionBlocking: false) + + currentTask = Task { [weak self] in + do { + try await authenticationService.startFlow(.login, for: homeserverAddress) + + guard !Task.isCancelled else { return } + + updateViewModel() + self?.stopLoading() + } catch { + self?.stopLoading() + self?.handleError(error) + } } } }