mirror of
https://github.com/bitwarden/mobile.git
synced 2024-12-25 16:47:55 +01:00
Added remember last email login. adjsuted sizing on extension slider. Added fallback logout to fingerprint.
This commit is contained in:
parent
c84ec2e947
commit
c59549f25a
@ -7,6 +7,7 @@
|
||||
public const string SettingLockSeconds = "setting:lockSeconds";
|
||||
public const string SettingLastBackgroundedDate = "lastBackgroundedDate";
|
||||
public const string SettingLocked = "locked";
|
||||
public const string SettingLastLoginEmail = "lastLoginEmail";
|
||||
|
||||
public const string PasswordGeneratorLength = "pwGenerator:length";
|
||||
public const string PasswordGeneratorUppercase = "pwGenerator:uppercase";
|
||||
|
@ -100,6 +100,10 @@ namespace Bit.App.Pages
|
||||
_settings.AddOrUpdateValue(Constants.SettingLocked, false);
|
||||
await Navigation.PopModalAsync();
|
||||
}
|
||||
else if(result.Status == FingerprintAuthenticationResultStatus.FallbackRequested)
|
||||
{
|
||||
MessagingCenter.Send(Application.Current, "Logout", (string)null);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -9,6 +9,7 @@ using Xamarin.Forms;
|
||||
using XLabs.Ioc;
|
||||
using Acr.UserDialogs;
|
||||
using System.Threading.Tasks;
|
||||
using Plugin.Settings.Abstractions;
|
||||
|
||||
namespace Bit.App.Pages
|
||||
{
|
||||
@ -20,6 +21,7 @@ namespace Bit.App.Pages
|
||||
private IAppIdService _appIdService;
|
||||
private IUserDialogs _userDialogs;
|
||||
private ISyncService _syncService;
|
||||
private ISettings _settings;
|
||||
|
||||
public LoginPage()
|
||||
{
|
||||
@ -29,6 +31,7 @@ namespace Bit.App.Pages
|
||||
_appIdService = Resolver.Resolve<IAppIdService>();
|
||||
_userDialogs = Resolver.Resolve<IUserDialogs>();
|
||||
_syncService = Resolver.Resolve<ISyncService>();
|
||||
_settings = Resolver.Resolve<ISettings>();
|
||||
|
||||
Init();
|
||||
}
|
||||
@ -48,6 +51,12 @@ namespace Bit.App.Pages
|
||||
entryKeyboard: Keyboard.Email, useLabelAsPlaceholder: true, imageSource: "envelope",
|
||||
containerPadding: padding);
|
||||
|
||||
var lastLoginEmail = _settings.GetValueOrDefault<string>(Constants.SettingLastLoginEmail);
|
||||
if(!string.IsNullOrWhiteSpace(lastLoginEmail))
|
||||
{
|
||||
EmailCell.Entry.Text = lastLoginEmail;
|
||||
}
|
||||
|
||||
PasswordCell.Entry.ReturnType = Enums.ReturnType.Go;
|
||||
PasswordCell.Entry.Completed += Entry_Completed;
|
||||
|
||||
@ -110,7 +119,15 @@ namespace Bit.App.Pages
|
||||
{
|
||||
base.OnAppearing();
|
||||
MessagingCenter.Send(Application.Current, "ShowStatusBar", true);
|
||||
EmailCell.Entry.Focus();
|
||||
|
||||
if(!string.IsNullOrWhiteSpace(EmailCell.Entry.Text))
|
||||
{
|
||||
PasswordCell.Entry.Focus();
|
||||
}
|
||||
else
|
||||
{
|
||||
EmailCell.Entry.Focus();
|
||||
}
|
||||
}
|
||||
|
||||
private async void Entry_Completed(object sender, EventArgs e)
|
||||
@ -160,6 +177,7 @@ namespace Bit.App.Pages
|
||||
_authService.Token = response.Result.Token;
|
||||
_authService.UserId = response.Result?.Profile?.Id;
|
||||
_authService.Email = response.Result?.Profile?.Email;
|
||||
_settings.AddOrUpdateValue(Constants.SettingLastLoginEmail, _authService.Email);
|
||||
|
||||
if(_authService.IsAuthenticatedTwoFactor)
|
||||
{
|
||||
|
@ -316,13 +316,14 @@ namespace Bit.App.Pages
|
||||
return;
|
||||
}
|
||||
|
||||
if(cell.On)
|
||||
if(cell.On && !_settings.GetValueOrDefault(Constants.SettingPinUnlockOn, false))
|
||||
{
|
||||
cell.On = false;
|
||||
var pinPage = new SettingsPinPage();
|
||||
pinPage.OnPinEntered += PinEntered;
|
||||
Navigation.PushAsync(pinPage);
|
||||
}
|
||||
else
|
||||
else if(!cell.On)
|
||||
{
|
||||
_settings.AddOrUpdateValue(Constants.SettingPinUnlockOn, false);
|
||||
}
|
||||
@ -337,6 +338,7 @@ namespace Bit.App.Pages
|
||||
|
||||
_settings.AddOrUpdateValue(Constants.SettingPinUnlockOn, true);
|
||||
_settings.AddOrUpdateValue(Constants.SettingFingerprintUnlockOn, false);
|
||||
PinCell.On = true;
|
||||
FingerprintCell.On = false;
|
||||
}
|
||||
|
||||
|
@ -19,7 +19,7 @@ namespace Bit.iOS.Core.Views
|
||||
MinValue = min,
|
||||
MaxValue = max,
|
||||
TintColor = new UIColor(red: 0.24f, green: 0.55f, blue: 0.74f, alpha: 1.0f),
|
||||
Frame = new CoreGraphics.CGRect(0, 0, 180, 20)
|
||||
Frame = new CoreGraphics.CGRect(0, 0, 180, 30)
|
||||
};
|
||||
Slider.ValueChanged += Slider_ValueChanged;
|
||||
Value = value;
|
||||
|
Loading…
Reference in New Issue
Block a user