diff --git a/ModernKeePass/Strings/en-US/CodeBehind.resw b/ModernKeePass/Strings/en-US/CodeBehind.resw
index e8a3ef9..e5544f0 100644
--- a/ModernKeePass/Strings/en-US/CodeBehind.resw
+++ b/ModernKeePass/Strings/en-US/CodeBehind.resw
@@ -129,9 +129,6 @@
- password incorrect
-
- Opening...
-
Database credentials updated.
@@ -264,9 +261,6 @@
Delete history entry ?
-
- Open
-
File does not exist anymore
diff --git a/ModernKeePass/Strings/fr-FR/CodeBehind.resw b/ModernKeePass/Strings/fr-FR/CodeBehind.resw
index b3cfbe1..923a690 100644
--- a/ModernKeePass/Strings/fr-FR/CodeBehind.resw
+++ b/ModernKeePass/Strings/fr-FR/CodeBehind.resw
@@ -129,9 +129,6 @@
- mot de passe incorrect
-
- Ouverture...
-
Identifiants de la base de données mis à jour.
@@ -264,9 +261,6 @@
Supprimer cet historique ?
-
- Open
-
Le fichier n'existe plus.
diff --git a/ModernKeePass/Views/MainPageFrames/DonatePage.xaml b/ModernKeePass/Views/MainPageFrames/DonatePage.xaml
index 6af5daf..b6f09d0 100644
--- a/ModernKeePass/Views/MainPageFrames/DonatePage.xaml
+++ b/ModernKeePass/Views/MainPageFrames/DonatePage.xaml
@@ -8,7 +8,7 @@
xmlns:interactivity="using:Microsoft.Xaml.Interactivity"
mc:Ignorable="d">
-
+
diff --git a/ModernKeePass/Views/UserControls/OpenDatabaseUserControl.xaml b/ModernKeePass/Views/UserControls/OpenDatabaseUserControl.xaml
index 0ddb85b..5b36108 100644
--- a/ModernKeePass/Views/UserControls/OpenDatabaseUserControl.xaml
+++ b/ModernKeePass/Views/UserControls/OpenDatabaseUserControl.xaml
@@ -9,10 +9,14 @@
xmlns:converters="using:ModernKeePass.Converters"
mc:Ignorable="d" >
-
+
+
+
+
+
@@ -24,7 +28,7 @@
-
+
@@ -33,16 +37,52 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/ModernKeePass/Views/UserControls/OpenDatabaseUserControl.xaml.cs b/ModernKeePass/Views/UserControls/OpenDatabaseUserControl.xaml.cs
index 87d439a..f68d6ef 100644
--- a/ModernKeePass/Views/UserControls/OpenDatabaseUserControl.xaml.cs
+++ b/ModernKeePass/Views/UserControls/OpenDatabaseUserControl.xaml.cs
@@ -54,7 +54,7 @@ namespace ModernKeePass.Views.UserControls
var token = StorageApplicationPermissions.FutureAccessList.Add(file, file.Name);
Model.KeyFilePath = token;
- Model.KeyFileText = file.DisplayName;
+ Model.KeyFileText = file.Name;
}
}
}
diff --git a/ModernKeePass/Views/UserControls/SetCredentialsUserControl.xaml b/ModernKeePass/Views/UserControls/SetCredentialsUserControl.xaml
index 53757ab..5b2a785 100644
--- a/ModernKeePass/Views/UserControls/SetCredentialsUserControl.xaml
+++ b/ModernKeePass/Views/UserControls/SetCredentialsUserControl.xaml
@@ -11,7 +11,6 @@
-
diff --git a/Win10App/ViewModels/ListItems/EntryItemVm.cs b/Win10App/ViewModels/ListItems/EntryItemVm.cs
index 03bf1d2..4641cfd 100644
--- a/Win10App/ViewModels/ListItems/EntryItemVm.cs
+++ b/Win10App/ViewModels/ListItems/EntryItemVm.cs
@@ -1,16 +1,15 @@
using System;
using System.Collections.Generic;
using Windows.UI;
+using GalaSoft.MvvmLight;
using ModernKeePass.Domain.Entities;
using ModernKeePass.Domain.Enums;
using ModernKeePass.Domain.Interfaces;
namespace ModernKeePass.ViewModels.ListItems
{
- public class EntryItemVm : NotifyPropertyChangedBase
+ public class EntryItemVm : ObservableObject
{
- private readonly ISecurityService _securityService;
-
public EntryEntity EntryEntity { get; }
public GroupItemVm Parent { get; }
diff --git a/WinAppCommon/Converters/DiscreteIntToSolidColorBrushConverter.cs b/WinAppCommon/Converters/DiscreteIntToSolidColorBrushConverter.cs
deleted file mode 100644
index 9a4f4ba..0000000
--- a/WinAppCommon/Converters/DiscreteIntToSolidColorBrushConverter.cs
+++ /dev/null
@@ -1,27 +0,0 @@
-using System;
-using Windows.UI;
-using Windows.UI.Xaml.Data;
-using Windows.UI.Xaml.Media;
-
-namespace ModernKeePass.Converters
-{
- public class DiscreteIntToSolidColorBrushConverter : IValueConverter
- {
- public object Convert(object value, Type targetType, object parameter, string language)
- {
- var status = System.Convert.ToInt32(value);
- switch (status)
- {
- case 1: return new SolidColorBrush(Colors.Red);
- case 3: return new SolidColorBrush(Colors.Yellow);
- case 5: return new SolidColorBrush(Colors.Green);
- default: return new SolidColorBrush(Colors.Black);
- }
- }
-
- public object ConvertBack(object value, Type targetType, object parameter, string language)
- {
- throw new NotImplementedException();
- }
- }
-}
diff --git a/WinAppCommon/ViewModels/UserControls/OpenDatabaseControlVm.cs b/WinAppCommon/ViewModels/UserControls/OpenDatabaseControlVm.cs
index d0ab4d4..060bfad 100644
--- a/WinAppCommon/ViewModels/UserControls/OpenDatabaseControlVm.cs
+++ b/WinAppCommon/ViewModels/UserControls/OpenDatabaseControlVm.cs
@@ -14,14 +14,6 @@ namespace ModernKeePass.ViewModels
{
public class OpenDatabaseControlVm : ViewModelBase
{
- public enum StatusTypes
- {
- Normal = 0,
- Error = 1,
- Warning = 3,
- Success = 5
- }
-
public bool HasPassword
{
get { return _hasPassword; }
@@ -44,27 +36,19 @@ namespace ModernKeePass.ViewModels
}
}
- public bool IsValid => !_isOpening && (HasPassword || HasKeyFile && !string.IsNullOrEmpty(KeyFilePath));
-
public string Status
{
get { return _status; }
set { Set(() => Status, ref _status, value); }
}
- public int StatusType
- {
- get { return _statusType; }
- set { Set(() => StatusType, ref _statusType, value); }
- }
-
public string Password
{
get { return _password; }
set
{
_password = value;
- StatusType = (int)StatusTypes.Normal;
+ IsError = false;
Status = string.Empty;
}
}
@@ -75,6 +59,7 @@ namespace ModernKeePass.ViewModels
set
{
_keyFilePath = value;
+ IsError = false;
RaisePropertyChanged(nameof(IsValid));
OpenDatabaseCommand.RaiseCanExecuteChanged();
}
@@ -86,14 +71,22 @@ namespace ModernKeePass.ViewModels
set { Set(() => KeyFileText, ref _keyFileText, value); }
}
- public string OpenButtonLabel
+ public bool IsOpening
{
- get { return _openButtonLabel; }
- set { Set(() => OpenButtonLabel, ref _openButtonLabel, value); }
+ get { return _isOpening; }
+ set { Set(() => IsOpening, ref _isOpening, value); }
}
-
+
+ public bool IsError
+ {
+ get { return _isError; }
+ set { Set(() => IsError, ref _isError, value); }
+ }
+
+ public bool IsValid => !IsOpening && (HasPassword || HasKeyFile && !string.IsNullOrEmpty(KeyFilePath));
+
public RelayCommand OpenDatabaseCommand { get; }
-
+
private readonly IMediator _mediator;
private readonly IResourceProxy _resource;
private readonly INotificationService _notification;
@@ -102,11 +95,10 @@ namespace ModernKeePass.ViewModels
private bool _isOpening;
private string _password = string.Empty;
private string _status;
- private int _statusType;
private string _keyFilePath;
private string _keyFileText;
- private string _openButtonLabel;
-
+ private bool _isError;
+
public OpenDatabaseControlVm(IMediator mediator, IResourceProxy resource, INotificationService notification)
{
_mediator = mediator;
@@ -114,7 +106,6 @@ namespace ModernKeePass.ViewModels
_notification = notification;
OpenDatabaseCommand = new RelayCommand(async databaseFilePath => await TryOpenDatabase(databaseFilePath), _ => IsValid);
_keyFileText = _resource.GetResourceValue("CompositeKeyDefaultKeyFile");
- _openButtonLabel = _resource.GetResourceValue("CompositeKeyOpenButtonLabel");
}
public async Task TryOpenDatabase(string databaseFilePath)
@@ -132,9 +123,7 @@ namespace ModernKeePass.ViewModels
public async Task OpenDatabase(string databaseFilePath)
{
- var oldLabel = _openButtonLabel;
- OpenButtonLabel = _resource.GetResourceValue("CompositeKeyOpening");
- _isOpening = true;
+ IsOpening = true;
try
{
await _mediator.Send(new OpenDatabaseQuery
@@ -152,7 +141,8 @@ namespace ModernKeePass.ViewModels
var errorMessage = new StringBuilder($"{_resource.GetResourceValue("CompositeKeyErrorOpen")}\n");
if (HasPassword) errorMessage.AppendLine(_resource.GetResourceValue("CompositeKeyErrorUserPassword"));
if (HasKeyFile) errorMessage.AppendLine(_resource.GetResourceValue("CompositeKeyErrorUserKeyFile"));
- UpdateStatus(errorMessage.ToString(), StatusTypes.Error);
+ Status = errorMessage.ToString();
+ IsError = true;
}
catch (FileNotFoundException)
{
@@ -160,23 +150,17 @@ namespace ModernKeePass.ViewModels
$"{_resource.GetResourceValue("FileNotFoundTitle")}",
$"{_resource.GetResourceValue("FileNotFoundDescription")}");
MessengerInstance.Send(new FileNotFoundMessage());
+ IsError = true;
}
catch (Exception e)
{
- var error = $"{_resource.GetResourceValue("CompositeKeyErrorOpen")}{e.Message}";
- UpdateStatus(error, StatusTypes.Error);
+ Status = $"{_resource.GetResourceValue("CompositeKeyErrorOpen")}{e.Message}";
+ IsError = true;
}
finally
{
- _isOpening = false;
- OpenButtonLabel = oldLabel;
+ IsOpening = false;
}
}
-
- private void UpdateStatus(string text, StatusTypes type)
- {
- Status = text;
- StatusType = (int)type;
- }
}
}
diff --git a/WinAppCommon/WinAppCommon.projitems b/WinAppCommon/WinAppCommon.projitems
index 574ef3e..c8163bb 100644
--- a/WinAppCommon/WinAppCommon.projitems
+++ b/WinAppCommon/WinAppCommon.projitems
@@ -21,7 +21,6 @@
-