diff --git a/CHANGES.rst b/CHANGES.rst index 9b384bf257..08f1078396 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -13,6 +13,7 @@ Improvements: Bugfix: * Fix biometry name null case (#3551). * Avoid email validation link to redirect to web app (#3513). + * Wait for first sync complete before stopping loading screen (#3336). API Change: * diff --git a/Riot.xcodeproj/project.pbxproj b/Riot.xcodeproj/project.pbxproj index 3a7157da30..da794c940c 100644 --- a/Riot.xcodeproj/project.pbxproj +++ b/Riot.xcodeproj/project.pbxproj @@ -848,6 +848,7 @@ ECAE7AE524EC0E01002FA813 /* TableViewSections.swift in Sources */ = {isa = PBXBuildFile; fileRef = ECAE7AE424EC0E01002FA813 /* TableViewSections.swift */; }; ECAE7AE724EC15F7002FA813 /* Section.swift in Sources */ = {isa = PBXBuildFile; fileRef = ECAE7AE624EC15F7002FA813 /* Section.swift */; }; ECAE7AE924EC1888002FA813 /* Row.swift in Sources */ = {isa = PBXBuildFile; fileRef = ECAE7AE824EC1888002FA813 /* Row.swift */; }; + ECAE7AEE24EFDD1F002FA813 /* MXSessionState.swift in Sources */ = {isa = PBXBuildFile; fileRef = ECAE7AED24EFDD1F002FA813 /* MXSessionState.swift */; }; ECB101302477CFDB00CF8C11 /* UITableView.swift in Sources */ = {isa = PBXBuildFile; fileRef = ECB1012C2477CFDB00CF8C11 /* UITableView.swift */; }; ECB101312477CFDB00CF8C11 /* UILabel.swift in Sources */ = {isa = PBXBuildFile; fileRef = ECB1012D2477CFDB00CF8C11 /* UILabel.swift */; }; ECB101322477CFDB00CF8C11 /* UIDevice.swift in Sources */ = {isa = PBXBuildFile; fileRef = ECB1012E2477CFDB00CF8C11 /* UIDevice.swift */; }; @@ -1976,6 +1977,7 @@ ECAE7AE424EC0E01002FA813 /* TableViewSections.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TableViewSections.swift; sourceTree = ""; }; ECAE7AE624EC15F7002FA813 /* Section.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Section.swift; sourceTree = ""; }; ECAE7AE824EC1888002FA813 /* Row.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Row.swift; sourceTree = ""; }; + ECAE7AED24EFDD1F002FA813 /* MXSessionState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MXSessionState.swift; sourceTree = ""; }; ECB1012C2477CFDB00CF8C11 /* UITableView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UITableView.swift; sourceTree = ""; }; ECB1012D2477CFDB00CF8C11 /* UILabel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UILabel.swift; sourceTree = ""; }; ECB1012E2477CFDB00CF8C11 /* UIDevice.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UIDevice.swift; sourceTree = ""; }; @@ -4964,6 +4966,7 @@ B1DCC63322E72C1B00625807 /* UISearchBar.swift */, B11291EB238D704C0077B478 /* FloatingPoint.swift */, 32FD757524D2C9BA00BA7B37 /* Bundle.swift */, + ECAE7AED24EFDD1F002FA813 /* MXSessionState.swift */, ); path = Categories; sourceTree = ""; @@ -5897,6 +5900,7 @@ F05927C91FDED836009F2A68 /* MXGroup+Riot.m in Sources */, B1B5594520EF7BD000210D55 /* TableViewCellWithCollectionView.m in Sources */, B1A6C109238828A6002882FD /* SlidingModalPresentationDelegate.swift in Sources */, + ECAE7AEE24EFDD1F002FA813 /* MXSessionState.swift in Sources */, 32DB557722FDADE50016329E /* ServiceTermsModalCoordinator.swift in Sources */, B185145B24B8C98200EE19EA /* MajorUpdateViewController.swift in Sources */, 32DB557922FDADE50016329E /* ServiceTermsModalScreenViewModel.swift in Sources */, diff --git a/Riot/Assets/en.lproj/Vector.strings b/Riot/Assets/en.lproj/Vector.strings index 07aba72e56..463b8c0031 100644 --- a/Riot/Assets/en.lproj/Vector.strings +++ b/Riot/Assets/en.lproj/Vector.strings @@ -1121,6 +1121,7 @@ "device_verification_self_verify_wait_recover_secrets_without_passphrase" = "Use Recovery Key"; "device_verification_self_verify_wait_recover_secrets_with_passphrase" = "Use Recovery Passphrase or Key"; "device_verification_self_verify_wait_recover_secrets_additional_information" = "If you can't accessing an existing session"; +"device_verification_self_verify_wait_recover_secrets_checking_availability" = "Checking for other verification capabilities ..."; // MARK: Verify diff --git a/Riot/Categories/MXSessionState.swift b/Riot/Categories/MXSessionState.swift new file mode 100644 index 0000000000..9f43992a80 --- /dev/null +++ b/Riot/Categories/MXSessionState.swift @@ -0,0 +1,25 @@ +// +// Copyright 2020 Vector Creations Ltd +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import Foundation + +extension MXSessionState: Comparable { + + public static func < (lhs: MXSessionState, rhs: MXSessionState) -> Bool { + return lhs.rawValue < rhs.rawValue + } + +} diff --git a/Riot/Generated/Strings.swift b/Riot/Generated/Strings.swift index ffdd4d08c3..34a325d639 100644 --- a/Riot/Generated/Strings.swift +++ b/Riot/Generated/Strings.swift @@ -926,6 +926,10 @@ internal enum VectorL10n { internal static var deviceVerificationSelfVerifyWaitRecoverSecretsAdditionalInformation: String { return VectorL10n.tr("Vector", "device_verification_self_verify_wait_recover_secrets_additional_information") } + /// Checking for other verification capabilities ... + internal static var deviceVerificationSelfVerifyWaitRecoverSecretsCheckingAvailability: String { + return VectorL10n.tr("Vector", "device_verification_self_verify_wait_recover_secrets_checking_availability") + } /// Use Recovery Passphrase or Key internal static var deviceVerificationSelfVerifyWaitRecoverSecretsWithPassphrase: String { return VectorL10n.tr("Vector", "device_verification_self_verify_wait_recover_secrets_with_passphrase") diff --git a/Riot/Modules/KeyVerification/Device/SelfVerifyWait/KeyVerificationSelfVerifyWaitViewController.storyboard b/Riot/Modules/KeyVerification/Device/SelfVerifyWait/KeyVerificationSelfVerifyWaitViewController.storyboard index a854f88783..d3db75f1f1 100644 --- a/Riot/Modules/KeyVerification/Device/SelfVerifyWait/KeyVerificationSelfVerifyWaitViewController.storyboard +++ b/Riot/Modules/KeyVerification/Device/SelfVerifyWait/KeyVerificationSelfVerifyWaitViewController.storyboard @@ -1,11 +1,9 @@ - - - - + + - + @@ -19,16 +17,16 @@ - + - + - + - + @@ -85,19 +83,43 @@ Riot X for Android - + + + + + + + + + + + + + + + + + + + + - +