mirror of
https://github.com/vector-im/element-ios.git
synced 2024-09-29 07:42:40 +00:00
RecentsDataSource: Handle secure key backup banner display logic.
This commit is contained in:
parent
4a74b09245
commit
de1efde09e
1 changed files with 9 additions and 34 deletions
|
@ -24,6 +24,7 @@
|
|||
#import "ThemeService.h"
|
||||
|
||||
#import "MXRoom+Riot.h"
|
||||
#import "MXSession+Riot.h"
|
||||
|
||||
#import "AppDelegate.h"
|
||||
|
||||
|
@ -177,47 +178,21 @@ NSString *const kRecentsDataSourceTapOnDirectoryServerChange = @"kRecentsDataSou
|
|||
- (BOOL)updateKeyBackupBanner
|
||||
{
|
||||
KeyBackupBanner keyBackupBanner = KeyBackupBannerNone;
|
||||
|
||||
if (self.recentsDataSourceMode == RecentsDataSourceModeHome && self.mxSession.crypto.backup.hasKeysToBackup)
|
||||
|
||||
if (self.recentsDataSourceMode == RecentsDataSourceModeHome)
|
||||
{
|
||||
KeyBackupBannerPreferences *keyBackupBannersPreferences = KeyBackupBannerPreferences.shared;
|
||||
|
||||
NSString *keyBackupVersion = self.mxSession.crypto.backup.keyBackupVersion.version;
|
||||
|
||||
switch (self.mxSession.crypto.backup.state) {
|
||||
case MXKeyBackupStateDisabled:
|
||||
// Show key backup setup banner only if user has not hidden it once.
|
||||
if (keyBackupBannersPreferences.hideSetupBanner)
|
||||
{
|
||||
keyBackupBanner = KeyBackupBannerNone;
|
||||
}
|
||||
else
|
||||
{
|
||||
keyBackupBanner = KeyBackupBannerSetup;
|
||||
}
|
||||
break;
|
||||
case MXKeyBackupStateNotTrusted:
|
||||
case MXKeyBackupStateWrongBackUpVersion:
|
||||
// Show key backup recover banner only if user has not hidden it for the given version.
|
||||
if (keyBackupVersion && [keyBackupBannersPreferences isRecoverBannerHiddenFor:keyBackupVersion])
|
||||
{
|
||||
keyBackupBanner = KeyBackupBannerNone;
|
||||
}
|
||||
else
|
||||
{
|
||||
keyBackupBanner = KeyBackupBannerRecover;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
keyBackupBanner = KeyBackupBannerNone;
|
||||
break;
|
||||
if (!keyBackupBannersPreferences.hideSetupBanner && [self.mxSession vc_canSetupSecureKeyBackup])
|
||||
{
|
||||
keyBackupBanner = KeyBackupBannerSetup;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
BOOL updated = (self.keyBackupBanner != keyBackupBanner);
|
||||
|
||||
|
||||
self.keyBackupBanner = keyBackupBanner;
|
||||
|
||||
|
||||
return updated;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue