diff --git a/Riot.xcodeproj/project.pbxproj b/Riot.xcodeproj/project.pbxproj index d67a06dfb..e09eab269 100644 --- a/Riot.xcodeproj/project.pbxproj +++ b/Riot.xcodeproj/project.pbxproj @@ -39,7 +39,7 @@ 92726A471F58737A004AD26F /* IntentHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 92726A461F58737A004AD26F /* IntentHandler.m */; }; 92726A4B1F58737A004AD26F /* SiriIntents.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 92726A431F58737A004AD26F /* SiriIntents.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; 92726A511F587410004AD26F /* Intents.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 92726A501F587410004AD26F /* Intents.framework */; }; - B104C2942203773C00D9F496 /* KeyBackupBannersPreferences.swift in Sources */ = {isa = PBXBuildFile; fileRef = B104C2932203773B00D9F496 /* KeyBackupBannersPreferences.swift */; }; + B104C2942203773C00D9F496 /* KeyBackupBannerPreferences.swift in Sources */ = {isa = PBXBuildFile; fileRef = B104C2932203773B00D9F496 /* KeyBackupBannerPreferences.swift */; }; B1098BDF21ECE09F000DDA48 /* Strings.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1098BDA21ECE09E000DDA48 /* Strings.swift */; }; B1098BE121ECE09F000DDA48 /* Images.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1098BDC21ECE09E000DDA48 /* Images.swift */; }; B1098BE321ECE09F000DDA48 /* RiotDefaults.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1098BDE21ECE09E000DDA48 /* RiotDefaults.swift */; }; @@ -60,8 +60,8 @@ B1098C0D21ED07E4000DDA48 /* NavigationRouter.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1098C0821ED07E4000DDA48 /* NavigationRouter.swift */; }; B1098C1021ED07E4000DDA48 /* Presentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1098C0B21ED07E4000DDA48 /* Presentable.swift */; }; B1098C1121ED07E4000DDA48 /* NavigationRouterType.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1098C0C21ED07E4000DDA48 /* NavigationRouterType.swift */; }; - B10B3B5B2201DD740072C76B /* KeyBackupSetupBannerCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = B10B3B592201DD740072C76B /* KeyBackupSetupBannerCell.swift */; }; - B10B3B5C2201DD740072C76B /* KeyBackupSetupBannerCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = B10B3B5A2201DD740072C76B /* KeyBackupSetupBannerCell.xib */; }; + B10B3B5B2201DD740072C76B /* KeyBackupBannerCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = B10B3B592201DD740072C76B /* KeyBackupBannerCell.swift */; }; + B10B3B5C2201DD740072C76B /* KeyBackupBannerCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = B10B3B5A2201DD740072C76B /* KeyBackupBannerCell.xib */; }; B1107EC82200B0720038014B /* KeyBackupRecoverSuccessViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1107EC72200B0720038014B /* KeyBackupRecoverSuccessViewController.swift */; }; B1107ECA2200B09F0038014B /* KeyBackupRecoverSuccessViewController.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = B1107EC92200B09F0038014B /* KeyBackupRecoverSuccessViewController.storyboard */; }; B110871921EF8077003554A5 /* KeyBackupSetupRecoveryKeyViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = B110871821EF8077003554A5 /* KeyBackupSetupRecoveryKeyViewController.swift */; }; @@ -511,7 +511,7 @@ 92726A481F58737A004AD26F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 92726A4F1F587393004AD26F /* SiriIntents.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = SiriIntents.entitlements; sourceTree = ""; }; 92726A501F587410004AD26F /* Intents.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Intents.framework; path = System/Library/Frameworks/Intents.framework; sourceTree = SDKROOT; }; - B104C2932203773B00D9F496 /* KeyBackupBannersPreferences.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = KeyBackupBannersPreferences.swift; sourceTree = ""; }; + B104C2932203773B00D9F496 /* KeyBackupBannerPreferences.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = KeyBackupBannerPreferences.swift; sourceTree = ""; }; B1098BDA21ECE09E000DDA48 /* Strings.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Strings.swift; sourceTree = ""; }; B1098BDC21ECE09E000DDA48 /* Images.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Images.swift; sourceTree = ""; }; B1098BDE21ECE09E000DDA48 /* RiotDefaults.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RiotDefaults.swift; sourceTree = ""; }; @@ -532,8 +532,8 @@ B1098C0821ED07E4000DDA48 /* NavigationRouter.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NavigationRouter.swift; sourceTree = ""; }; B1098C0B21ED07E4000DDA48 /* Presentable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Presentable.swift; sourceTree = ""; }; B1098C0C21ED07E4000DDA48 /* NavigationRouterType.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NavigationRouterType.swift; sourceTree = ""; }; - B10B3B592201DD740072C76B /* KeyBackupSetupBannerCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KeyBackupSetupBannerCell.swift; sourceTree = ""; }; - B10B3B5A2201DD740072C76B /* KeyBackupSetupBannerCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = KeyBackupSetupBannerCell.xib; sourceTree = ""; }; + B10B3B592201DD740072C76B /* KeyBackupBannerCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KeyBackupBannerCell.swift; sourceTree = ""; }; + B10B3B5A2201DD740072C76B /* KeyBackupBannerCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = KeyBackupBannerCell.xib; sourceTree = ""; }; B1107EC72200B0720038014B /* KeyBackupRecoverSuccessViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KeyBackupRecoverSuccessViewController.swift; sourceTree = ""; }; B1107EC92200B09F0038014B /* KeyBackupRecoverSuccessViewController.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = KeyBackupRecoverSuccessViewController.storyboard; sourceTree = ""; }; B110871821EF8077003554A5 /* KeyBackupSetupRecoveryKeyViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KeyBackupSetupRecoveryKeyViewController.swift; sourceTree = ""; }; @@ -1330,21 +1330,13 @@ B1107ECB2201BE800038014B /* Banners */ = { isa = PBXGroup; children = ( - B104C2932203773B00D9F496 /* KeyBackupBannersPreferences.swift */, - B1107ECC2201BEAF0038014B /* Setup */, + B104C2932203773B00D9F496 /* KeyBackupBannerPreferences.swift */, + B10B3B592201DD740072C76B /* KeyBackupBannerCell.swift */, + B10B3B5A2201DD740072C76B /* KeyBackupBannerCell.xib */, ); path = Banners; sourceTree = ""; }; - B1107ECC2201BEAF0038014B /* Setup */ = { - isa = PBXGroup; - children = ( - B10B3B592201DD740072C76B /* KeyBackupSetupBannerCell.swift */, - B10B3B5A2201DD740072C76B /* KeyBackupSetupBannerCell.xib */, - ); - path = Setup; - sourceTree = ""; - }; B110871E21F098EF003554A5 /* ActivityIndicator */ = { isa = PBXGroup; children = ( @@ -3231,7 +3223,7 @@ 3284A35120A07C210044F922 /* postMessageAPI.js in Resources */, B1B557A220EF58AD00210D55 /* ContactTableViewCell.xib in Resources */, B1B558EB20EF768F00210D55 /* RoomIncomingTextMsgWithPaginationTitleBubbleCell.xib in Resources */, - B10B3B5C2201DD740072C76B /* KeyBackupSetupBannerCell.xib in Resources */, + B10B3B5C2201DD740072C76B /* KeyBackupBannerCell.xib in Resources */, B1B5581820EF625800210D55 /* PreviewRoomTitleView.xib in Resources */, B1B5583020EF66BA00210D55 /* RoomIdOrAliasTableViewCell.xib in Resources */, B1B558BF20EF768F00210D55 /* RoomOutgoingEncryptedTextMsgWithoutSenderNameBubbleCell.xib in Resources */, @@ -3567,7 +3559,7 @@ B1B5574120EE6C4D00210D55 /* RecentsViewController.m in Sources */, B1D250D82118AA0A000F4E93 /* RoomPredecessorBubbleCell.m in Sources */, B1B5577120EE702800210D55 /* StickerPickerViewController.m in Sources */, - B104C2942203773C00D9F496 /* KeyBackupBannersPreferences.swift in Sources */, + B104C2942203773C00D9F496 /* KeyBackupBannerPreferences.swift in Sources */, B1B5572020EE6C4D00210D55 /* ContactsTableViewController.m in Sources */, B1B5581920EF625800210D55 /* RoomTitleView.m in Sources */, B1098BE321ECE09F000DDA48 /* RiotDefaults.swift in Sources */, @@ -3579,7 +3571,7 @@ B1B5571E20EE6C4D00210D55 /* ContactDetailsViewController.m in Sources */, B1798302211B13B3001FD722 /* OnBoardingManager.swift in Sources */, B1B5573520EE6C4D00210D55 /* GroupDetailsViewController.m in Sources */, - B10B3B5B2201DD740072C76B /* KeyBackupSetupBannerCell.swift in Sources */, + B10B3B5B2201DD740072C76B /* KeyBackupBannerCell.swift in Sources */, B1098BFA21ECFE65000DDA48 /* KeyBackupSetupPassphraseViewModel.swift in Sources */, B1B5575220EE6C4D00210D55 /* RoomKeyRequestViewController.m in Sources */, F083BD1E1E7009ED00A9B29C /* AppDelegate.m in Sources */, diff --git a/Riot/Modules/KeyBackup/Banners/Setup/KeyBackupSetupBannerCell.swift b/Riot/Modules/KeyBackup/Banners/KeyBackupBannerCell.swift similarity index 60% rename from Riot/Modules/KeyBackup/Banners/Setup/KeyBackupSetupBannerCell.swift rename to Riot/Modules/KeyBackup/Banners/KeyBackupBannerCell.swift index aaca7c2c3..e0f2ca6ab 100644 --- a/Riot/Modules/KeyBackup/Banners/Setup/KeyBackupSetupBannerCell.swift +++ b/Riot/Modules/KeyBackup/Banners/KeyBackupBannerCell.swift @@ -16,12 +16,12 @@ import UIKit -@objc protocol KeyBackupSetupBannerCellDelegate: class { - func keyBackupSetupBannerCellDidTapCloseAction(_ cell: KeyBackupSetupBannerCell) +@objc protocol KeyBackupBannerCellDelegate: class { + func keyBackupBannerCellDidTapCloseAction(_ cell: KeyBackupBannerCell) } @objcMembers -final class KeyBackupSetupBannerCell: MXKTableViewCell { +final class KeyBackupBannerCell: MXKTableViewCell { // MARK: - Properties @@ -33,7 +33,7 @@ final class KeyBackupSetupBannerCell: MXKTableViewCell { // MARK: Public - weak var delegate: KeyBackupSetupBannerCellDelegate? + weak var delegate: KeyBackupBannerCellDelegate? // MARK: - Overrides @@ -70,9 +70,31 @@ final class KeyBackupSetupBannerCell: MXKTableViewCell { self.closeButton.setImage(closeImage, for: .normal) } + // MARK: - Public + + func configure(for banner: KeyBackupBanner) { + let attributedTitle: NSAttributedString? + let theme = ThemeService.shared().theme + + switch banner { + case .setup: + let setupAttributedTitle = NSMutableAttributedString(string: VectorL10n.keyBackupSetupBannerTitlePart1, attributes: [.foregroundColor: theme.tintColor]) + setupAttributedTitle.append(NSAttributedString(string: VectorL10n.keyBackupSetupBannerTitlePart2, attributes: [.foregroundColor: theme.textPrimaryColor])) + attributedTitle = setupAttributedTitle + case .recover: + let recoverAttributedTitle = NSMutableAttributedString(string: VectorL10n.keyBackupRecoverBannerTitlePart1, attributes: [.foregroundColor: theme.tintColor]) + recoverAttributedTitle.append(NSAttributedString(string: VectorL10n.keyBackupRecoverBannerTitlePart2, attributes: [.foregroundColor: theme.textPrimaryColor])) + attributedTitle = recoverAttributedTitle + case .none: + attributedTitle = nil + } + + self.informationLabel.attributedText = attributedTitle + } + // MARK: - Actions @IBAction private func closeButtonAction(_ sender: Any) { - self.delegate?.keyBackupSetupBannerCellDidTapCloseAction(self) + self.delegate?.keyBackupBannerCellDidTapCloseAction(self) } } diff --git a/Riot/Modules/KeyBackup/Banners/Setup/KeyBackupSetupBannerCell.xib b/Riot/Modules/KeyBackup/Banners/KeyBackupBannerCell.xib similarity index 96% rename from Riot/Modules/KeyBackup/Banners/Setup/KeyBackupSetupBannerCell.xib rename to Riot/Modules/KeyBackup/Banners/KeyBackupBannerCell.xib index e2eb36af0..fa630ec0a 100644 --- a/Riot/Modules/KeyBackup/Banners/Setup/KeyBackupSetupBannerCell.xib +++ b/Riot/Modules/KeyBackup/Banners/KeyBackupBannerCell.xib @@ -1,17 +1,13 @@ - - - - - + diff --git a/Riot/SupportingFiles/Riot-Bridging-Header.h b/Riot/SupportingFiles/Riot-Bridging-Header.h index 37a5b6f37..3d91a54f2 100644 --- a/Riot/SupportingFiles/Riot-Bridging-Header.h +++ b/Riot/SupportingFiles/Riot-Bridging-Header.h @@ -9,3 +9,4 @@ #import "RiotNavigationController.h" #import "ThemeService.h" #import "TableViewCellWithCheckBoxAndLabel.h" +#import "RecentsDataSource.h"