mirror of
https://github.com/bitwarden/android.git
synced 2024-12-24 09:58:27 +03:00
Settings plusin doesn't support string null values for default on android. ref https://github.com/jamesmontemagno/SettingsPlugin/issues/8
This commit is contained in:
parent
c7e81ed69f
commit
ee883571da
7 changed files with 33 additions and 18 deletions
|
@ -61,7 +61,7 @@ namespace Bit.App.Pages
|
||||||
entryKeyboard: Keyboard.Email, useLabelAsPlaceholder: true, imageSource: "envelope",
|
entryKeyboard: Keyboard.Email, useLabelAsPlaceholder: true, imageSource: "envelope",
|
||||||
containerPadding: padding);
|
containerPadding: padding);
|
||||||
|
|
||||||
var lastLoginEmail = _settings.GetValueOrDefault<string>(Constants.LastLoginEmail);
|
var lastLoginEmail = _settings.GetValueOrDefault(Constants.LastLoginEmail, string.Empty);
|
||||||
if(!string.IsNullOrWhiteSpace(_email))
|
if(!string.IsNullOrWhiteSpace(_email))
|
||||||
{
|
{
|
||||||
EmailCell.Entry.Text = _email;
|
EmailCell.Entry.Text = _email;
|
||||||
|
|
|
@ -44,7 +44,7 @@ namespace Bit.App.Pages
|
||||||
PinCell = new ExtendedSwitchCell
|
PinCell = new ExtendedSwitchCell
|
||||||
{
|
{
|
||||||
Text = "Unlock with PIN Code",
|
Text = "Unlock with PIN Code",
|
||||||
On = _settings.GetValueOrDefault<bool>(Constants.SettingPinUnlockOn)
|
On = _settings.GetValueOrDefault(Constants.SettingPinUnlockOn, false)
|
||||||
};
|
};
|
||||||
PinCell.OnChanged += PinCell_Changed;
|
PinCell.OnChanged += PinCell_Changed;
|
||||||
|
|
||||||
|
@ -76,7 +76,7 @@ namespace Bit.App.Pages
|
||||||
FingerprintCell = new ExtendedSwitchCell
|
FingerprintCell = new ExtendedSwitchCell
|
||||||
{
|
{
|
||||||
Text = "Unlock with " + fingerprintName,
|
Text = "Unlock with " + fingerprintName,
|
||||||
On = _settings.GetValueOrDefault<bool>(Constants.SettingFingerprintUnlockOn),
|
On = _settings.GetValueOrDefault(Constants.SettingFingerprintUnlockOn, false),
|
||||||
IsEnabled = _fingerprint.IsAvailable
|
IsEnabled = _fingerprint.IsAvailable
|
||||||
};
|
};
|
||||||
FingerprintCell.OnChanged += FingerprintCell_Changed;
|
FingerprintCell.OnChanged += FingerprintCell_Changed;
|
||||||
|
|
|
@ -72,7 +72,7 @@ namespace Bit.App.Pages
|
||||||
|
|
||||||
private void SetLastSync()
|
private void SetLastSync()
|
||||||
{
|
{
|
||||||
var lastSyncDate = _settings.GetValueOrDefault<DateTime?>(Constants.LastSync);
|
var lastSyncDate = _settings.GetValueOrDefault<DateTime?>(Constants.LastSync, null);
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
LastSyncLabel.Text = "Last Sync: " + lastSyncDate?.ToLocalTime().ToString() ?? "Never";
|
LastSyncLabel.Text = "Last Sync: " + lastSyncDate?.ToLocalTime().ToString() ?? "Never";
|
||||||
|
|
|
@ -224,10 +224,10 @@ namespace Bit.App.Pages
|
||||||
|
|
||||||
if(_connectivity.IsConnected && Device.OS == TargetPlatform.iOS && !_favorites)
|
if(_connectivity.IsConnected && Device.OS == TargetPlatform.iOS && !_favorites)
|
||||||
{
|
{
|
||||||
var pushPromptShow = _settings.GetValueOrDefault<bool>(Constants.PushInitialPromptShown);
|
var pushPromptShow = _settings.GetValueOrDefault(Constants.PushInitialPromptShown, false);
|
||||||
Action registerAction = () =>
|
Action registerAction = () =>
|
||||||
{
|
{
|
||||||
var lastPushRegistration = _settings.GetValueOrDefault<DateTime?>(Constants.PushLastRegistrationDate);
|
var lastPushRegistration = _settings.GetValueOrDefault<DateTime?>(Constants.PushLastRegistrationDate, null);
|
||||||
if(!pushPromptShow || !lastPushRegistration.HasValue
|
if(!pushPromptShow || !lastPushRegistration.HasValue
|
||||||
|| (DateTime.UtcNow - lastPushRegistration) > TimeSpan.FromDays(1))
|
|| (DateTime.UtcNow - lastPushRegistration) > TimeSpan.FromDays(1))
|
||||||
{
|
{
|
||||||
|
|
|
@ -76,12 +76,17 @@ namespace Bit.App.Services
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
if(_userId != null)
|
if(!string.IsNullOrWhiteSpace(_userId))
|
||||||
{
|
{
|
||||||
return _userId;
|
return _userId;
|
||||||
}
|
}
|
||||||
|
|
||||||
_userId = _settings.GetValueOrDefault<string>(UserIdKey);
|
var userId = _settings.GetValueOrDefault(UserIdKey, string.Empty);
|
||||||
|
if(!string.IsNullOrWhiteSpace(userId))
|
||||||
|
{
|
||||||
|
_userId = userId;
|
||||||
|
}
|
||||||
|
|
||||||
return _userId;
|
return _userId;
|
||||||
}
|
}
|
||||||
set
|
set
|
||||||
|
@ -104,12 +109,17 @@ namespace Bit.App.Services
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
if(_previousUserId != null)
|
if(!string.IsNullOrWhiteSpace(_previousUserId))
|
||||||
{
|
{
|
||||||
return _previousUserId;
|
return _previousUserId;
|
||||||
}
|
}
|
||||||
|
|
||||||
_previousUserId = _settings.GetValueOrDefault<string>(PreviousUserIdKey);
|
var previousUserId = _settings.GetValueOrDefault(PreviousUserIdKey, string.Empty);
|
||||||
|
if(!string.IsNullOrWhiteSpace(previousUserId))
|
||||||
|
{
|
||||||
|
_previousUserId = previousUserId;
|
||||||
|
}
|
||||||
|
|
||||||
return _previousUserId;
|
return _previousUserId;
|
||||||
}
|
}
|
||||||
private set
|
private set
|
||||||
|
@ -128,12 +138,17 @@ namespace Bit.App.Services
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
if(_email != null)
|
if(!string.IsNullOrWhiteSpace(_email))
|
||||||
{
|
{
|
||||||
return _email;
|
return _email;
|
||||||
}
|
}
|
||||||
|
|
||||||
_email = _settings.GetValueOrDefault<string>(EmailKey);
|
var email = _settings.GetValueOrDefault(EmailKey, string.Empty);
|
||||||
|
if(!string.IsNullOrWhiteSpace(email))
|
||||||
|
{
|
||||||
|
_email = email;
|
||||||
|
}
|
||||||
|
|
||||||
return _email;
|
return _email;
|
||||||
}
|
}
|
||||||
set
|
set
|
||||||
|
@ -155,14 +170,14 @@ namespace Bit.App.Services
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
return _cryptoService.Key != null && Token != null && UserId != null;
|
return _cryptoService.Key != null && !string.IsNullOrWhiteSpace(Token) && !string.IsNullOrWhiteSpace(UserId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public bool IsAuthenticatedTwoFactor
|
public bool IsAuthenticatedTwoFactor
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
return _cryptoService.Key != null && Token != null && UserId == null;
|
return _cryptoService.Key != null && !string.IsNullOrWhiteSpace(Token) && string.IsNullOrWhiteSpace(UserId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -50,8 +50,8 @@ namespace Bit.App.Services
|
||||||
}
|
}
|
||||||
|
|
||||||
// What method are we using to unlock?
|
// What method are we using to unlock?
|
||||||
var fingerprintUnlock = _settings.GetValueOrDefault<bool>(Constants.SettingFingerprintUnlockOn);
|
var fingerprintUnlock = _settings.GetValueOrDefault(Constants.SettingFingerprintUnlockOn, false);
|
||||||
var pinUnlock = _settings.GetValueOrDefault<bool>(Constants.SettingPinUnlockOn);
|
var pinUnlock = _settings.GetValueOrDefault(Constants.SettingPinUnlockOn, false);
|
||||||
if(fingerprintUnlock && _fingerprint.IsAvailable)
|
if(fingerprintUnlock && _fingerprint.IsAvailable)
|
||||||
{
|
{
|
||||||
return LockType.Fingerprint;
|
return LockType.Fingerprint;
|
||||||
|
|
|
@ -170,7 +170,7 @@ namespace Bit.App.Services
|
||||||
|
|
||||||
public async Task<bool> IncrementalSyncAsync(TimeSpan syncThreshold)
|
public async Task<bool> IncrementalSyncAsync(TimeSpan syncThreshold)
|
||||||
{
|
{
|
||||||
DateTime? lastSync = _settings.GetValueOrDefault<DateTime?>(Constants.LastSync);
|
DateTime? lastSync = _settings.GetValueOrDefault<DateTime?>(Constants.LastSync, null);
|
||||||
if(lastSync != null && DateTime.UtcNow - lastSync.Value < syncThreshold)
|
if(lastSync != null && DateTime.UtcNow - lastSync.Value < syncThreshold)
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
|
@ -187,7 +187,7 @@ namespace Bit.App.Services
|
||||||
}
|
}
|
||||||
|
|
||||||
var now = DateTime.UtcNow;
|
var now = DateTime.UtcNow;
|
||||||
DateTime? lastSync = _settings.GetValueOrDefault<DateTime?>(Constants.LastSync);
|
DateTime? lastSync = _settings.GetValueOrDefault<DateTime?>(Constants.LastSync, null);
|
||||||
if(lastSync == null)
|
if(lastSync == null)
|
||||||
{
|
{
|
||||||
return await FullSyncAsync().ConfigureAwait(false);
|
return await FullSyncAsync().ConfigureAwait(false);
|
||||||
|
|
Loading…
Reference in a new issue