diff --git a/ModernKeePass/Common/ToastNotificationHelper.cs b/ModernKeePass/Common/ToastNotificationHelper.cs
index ab8127f..eeee286 100644
--- a/ModernKeePass/Common/ToastNotificationHelper.cs
+++ b/ModernKeePass/Common/ToastNotificationHelper.cs
@@ -66,7 +66,7 @@ namespace ModernKeePass.Common
*/
var notificationXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText02);
var toastElements = notificationXml.GetElementsByTagName("text");
- toastElements[0].AppendChild(notificationXml.CreateTextNode($"{entityType} deleted"));
+ toastElements[0].AppendChild(notificationXml.CreateTextNode($"{entityType} {entity.Name} deleted"));
toastElements[1].AppendChild(notificationXml.CreateTextNode("Click me to undo"));
var toastNode = notificationXml.SelectSingleNode("/toast");
((XmlElement)toastNode)?.SetAttribute("launch", new QueryString
diff --git a/ModernKeePass/Controls/OpenDatabaseUserControl.xaml b/ModernKeePass/Controls/OpenDatabaseUserControl.xaml
index c8b0cf5..bbcd47b 100644
--- a/ModernKeePass/Controls/OpenDatabaseUserControl.xaml
+++ b/ModernKeePass/Controls/OpenDatabaseUserControl.xaml
@@ -36,26 +36,18 @@
-
-
-
-
+
-
-
-
diff --git a/ModernKeePass/Converters/DoubleToForegroungBrushComplexityConverter.cs b/ModernKeePass/Converters/DoubleToForegroungBrushComplexityConverter.cs
new file mode 100644
index 0000000..785bc59
--- /dev/null
+++ b/ModernKeePass/Converters/DoubleToForegroungBrushComplexityConverter.cs
@@ -0,0 +1,32 @@
+using System;
+using Windows.UI;
+using Windows.UI.Xaml.Data;
+using Windows.UI.Xaml.Media;
+
+namespace ModernKeePass.Converters
+{
+ public class DoubleToForegroungBrushComplexityConverter : IValueConverter
+ {
+ public object Convert(object value, Type targetType, object parameter, string language)
+ {
+ try
+ {
+ var currentValue = (double) value;
+ var maxValue = double.Parse(parameter as string);
+ var green = System.Convert.ToByte(currentValue / maxValue * byte.MaxValue);
+ var red = (byte) (byte.MaxValue - green);
+ return new SolidColorBrush(Color.FromArgb(255, red, green, 0));
+ }
+ catch (OverflowException)
+ {
+ return new SolidColorBrush(Color.FromArgb(255, 0, byte.MaxValue, 0));
+ }
+
+ }
+
+ public object ConvertBack(object value, Type targetType, object parameter, string language)
+ {
+ throw new NotImplementedException();
+ }
+ }
+}
diff --git a/ModernKeePass/ModernKeePass.csproj b/ModernKeePass/ModernKeePass.csproj
index bde2dd1..b74dca4 100644
--- a/ModernKeePass/ModernKeePass.csproj
+++ b/ModernKeePass/ModernKeePass.csproj
@@ -126,6 +126,7 @@
+
diff --git a/ModernKeePass/Pages/EntryDetailPage.xaml b/ModernKeePass/Pages/EntryDetailPage.xaml
index ff44f20..c309abb 100644
--- a/ModernKeePass/Pages/EntryDetailPage.xaml
+++ b/ModernKeePass/Pages/EntryDetailPage.xaml
@@ -41,10 +41,6 @@
-
@@ -57,10 +53,6 @@
-
-
-
@@ -343,8 +335,6 @@
Space ( )
Special (!, $, %, ...)
Brackets ([], {}, (), ...)
- Additional characters:
-
@@ -377,6 +367,9 @@
+
@@ -388,6 +381,11 @@
+ Expiration date
+
+
+
+
diff --git a/ModernKeePass/Pages/NewDatabasePage.xaml b/ModernKeePass/Pages/NewDatabasePage.xaml
index 175f1ed..a75b2db 100644
--- a/ModernKeePass/Pages/NewDatabasePage.xaml
+++ b/ModernKeePass/Pages/NewDatabasePage.xaml
@@ -11,6 +11,7 @@
+
@@ -25,14 +26,7 @@
Password complexity
-
-
-
-
-
-
-
-
+
diff --git a/ModernKeePass/ViewModels/EntryVm.cs b/ModernKeePass/ViewModels/EntryVm.cs
index e133710..2cbd6d5 100644
--- a/ModernKeePass/ViewModels/EntryVm.cs
+++ b/ModernKeePass/ViewModels/EntryVm.cs
@@ -19,6 +19,7 @@ namespace ModernKeePass.ViewModels
public System.Drawing.Color? ForegroundColor => Entry?.ForegroundColor;
public bool IsRevealPasswordEnabled => !string.IsNullOrEmpty(Password);
+
public double PasswordLength { get; set; } = 25;
public bool UpperCasePatternSelected { get; set; } = true;
public bool LowerCasePatternSelected { get; set; } = true;
@@ -72,11 +73,23 @@ namespace ModernKeePass.ViewModels
get
{
if (Entry == null) return Symbol.Add;
+ //if ()
var result = PwIconToSegoeMapping.GetSymbolFromIcon(Entry.IconId);
return result == Symbol.More ? Symbol.Permissions : result;
}
}
+ public DateTimeOffset ExpiryDate
+ {
+ get { return new DateTimeOffset(Entry.ExpiryTime.Date); }
+ set { Entry.ExpiryTime = value.DateTime; }
+ }
+ public TimeSpan ExpiryTime
+ {
+ get { return Entry.ExpiryTime.TimeOfDay; }
+ set { Entry.ExpiryTime = Entry.ExpiryTime.Date.Add(value); }
+ }
+
public bool IsEditMode
{
get { return _isEditMode; }
@@ -96,11 +109,21 @@ namespace ModernKeePass.ViewModels
NotifyPropertyChanged("IsRevealPassword");
}
}
+ public bool HasExpirationDate
+ {
+ get { return Entry.Expires; }
+ set
+ {
+ Entry.Expires = value;
+ NotifyPropertyChanged("HasExpirationDate");
+ }
+ }
public event PropertyChangedEventHandler PropertyChanged;
private bool _isEditMode;
private bool _isRevealPassword;
+
private void NotifyPropertyChanged(string propertyName)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
diff --git a/ModernKeePass/ViewModels/NewVm.cs b/ModernKeePass/ViewModels/NewVm.cs
index da2cd89..d599ede 100644
--- a/ModernKeePass/ViewModels/NewVm.cs
+++ b/ModernKeePass/ViewModels/NewVm.cs
@@ -6,6 +6,7 @@ namespace ModernKeePass.ViewModels
{
private string _password = string.Empty;
+ public double PasswordComplexityIndicator => QualityEstimation.EstimatePasswordBits(Password.ToCharArray());
public string Password
{
get { return _password; }
@@ -16,6 +17,5 @@ namespace ModernKeePass.ViewModels
}
}
- public double PasswordComplexityIndicator => QualityEstimation.EstimatePasswordBits(Password.ToCharArray());
}
}