diff --git a/ModernKeePass/Converters/TextToWidthConverter.cs b/ModernKeePass/Converters/TextToWidthConverter.cs new file mode 100644 index 0000000..c3f1b24 --- /dev/null +++ b/ModernKeePass/Converters/TextToWidthConverter.cs @@ -0,0 +1,20 @@ +using System; +using Windows.UI.Xaml.Data; + +namespace ModernKeePass.Converters +{ + public class TextToWidthConverter : IValueConverter + { + public object Convert(object value, Type targetType, object parameter, string language) + { + var fontSize = double.Parse(parameter as string); + var text = value as string; + return text?.Length * fontSize ?? 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 b74dca4..c1b813c 100644 --- a/ModernKeePass/ModernKeePass.csproj +++ b/ModernKeePass/ModernKeePass.csproj @@ -130,6 +130,7 @@ + diff --git a/ModernKeePass/Pages/AboutPage.xaml b/ModernKeePass/Pages/AboutPage.xaml index cdd4f63..de9e7f9 100644 --- a/ModernKeePass/Pages/AboutPage.xaml +++ b/ModernKeePass/Pages/AboutPage.xaml @@ -9,7 +9,8 @@ About ModernKeePass version 1.4 - Homepage: https://github.com/wismna/ModernKeePass + A modern password manager for the Windows Store + Homepage: https://github.com/wismna/ModernKeePass Credits: Dominik Reichl for the KeePass application and file format ArtjomP for his PCL adapatation of the KeePass Library diff --git a/ModernKeePass/Pages/EntryDetailPage.xaml b/ModernKeePass/Pages/EntryDetailPage.xaml index c309abb..8a6dabe 100644 --- a/ModernKeePass/Pages/EntryDetailPage.xaml +++ b/ModernKeePass/Pages/EntryDetailPage.xaml @@ -383,8 +383,13 @@ Expiration date - - + + + + + + + diff --git a/ModernKeePass/Pages/GroupDetailPage.xaml b/ModernKeePass/Pages/GroupDetailPage.xaml index c107bd5..64ded5b 100644 --- a/ModernKeePass/Pages/GroupDetailPage.xaml +++ b/ModernKeePass/Pages/GroupDetailPage.xaml @@ -16,6 +16,8 @@ + + @@ -73,7 +75,7 @@ - + @@ -90,14 +92,15 @@ - - - - - - - + + + + + + + + diff --git a/ModernKeePass/ViewModels/EntryVm.cs b/ModernKeePass/ViewModels/EntryVm.cs index 2cbd6d5..4b18fe8 100644 --- a/ModernKeePass/ViewModels/EntryVm.cs +++ b/ModernKeePass/ViewModels/EntryVm.cs @@ -73,7 +73,7 @@ namespace ModernKeePass.ViewModels get { if (Entry == null) return Symbol.Add; - //if () + if (HasExpired) return Symbol.Priority; var result = PwIconToSegoeMapping.GetSymbolFromIcon(Entry.IconId); return result == Symbol.More ? Symbol.Permissions : result; } @@ -82,12 +82,12 @@ namespace ModernKeePass.ViewModels public DateTimeOffset ExpiryDate { get { return new DateTimeOffset(Entry.ExpiryTime.Date); } - set { Entry.ExpiryTime = value.DateTime; } + set { if (HasExpirationDate) Entry.ExpiryTime = value.DateTime; } } public TimeSpan ExpiryTime { get { return Entry.ExpiryTime.TimeOfDay; } - set { Entry.ExpiryTime = Entry.ExpiryTime.Date.Add(value); } + set { if (HasExpirationDate) Entry.ExpiryTime = Entry.ExpiryTime.Date.Add(value); } } public bool IsEditMode @@ -118,6 +118,10 @@ namespace ModernKeePass.ViewModels NotifyPropertyChanged("HasExpirationDate"); } } + public bool HasExpired + { + get { return HasExpirationDate && Entry.ExpiryTime < DateTime.Now; } + } public event PropertyChangedEventHandler PropertyChanged;