diff --git a/ModernKeePass/Actions/DeleteEntityAction.cs b/ModernKeePass/Actions/DeleteEntityAction.cs index a927077..3267ad2 100644 --- a/ModernKeePass/Actions/DeleteEntityAction.cs +++ b/ModernKeePass/Actions/DeleteEntityAction.cs @@ -1,5 +1,5 @@ -using Windows.UI.Xaml; -using Windows.UI.Xaml.Controls; +using System.Windows.Input; +using Windows.UI.Xaml; using Microsoft.Xaml.Interactivity; using ModernKeePass.Common; using ModernKeePass.Interfaces; @@ -20,14 +20,14 @@ namespace ModernKeePass.Actions DependencyProperty.Register("Entity", typeof(IPwEntity), typeof(DeleteEntityAction), new PropertyMetadata(null)); - public Frame Frame + public ICommand Command { - get { return (Frame)GetValue(FrameProperty); } - set { SetValue(FrameProperty, value); } + get { return (ICommand)GetValue(CommandProperty); } + set { SetValue(CommandProperty, value); } } - public static readonly DependencyProperty FrameProperty = - DependencyProperty.Register("Frame", typeof(Frame), typeof(DeleteEntityAction), + public static readonly DependencyProperty CommandProperty = + DependencyProperty.Register("Command", typeof(ICommand), typeof(DeleteEntityAction), new PropertyMetadata(null)); public object Execute(object sender, object parameter) @@ -45,7 +45,7 @@ namespace ModernKeePass.Actions { ToastNotificationHelper.ShowMovedToast(Entity, resource.GetResourceValue("EntityDeleting"), text); Entity.MarkForDelete(resource.GetResourceValue("RecycleBinTitle")); - if (Frame.CanGoBack) Frame.GoBack(); + Command.Execute(null); }, null).GetAwaiter(); return null; diff --git a/ModernKeePass/Actions/RestoreEntityAction.cs b/ModernKeePass/Actions/RestoreEntityAction.cs index f627001..851ef0d 100644 --- a/ModernKeePass/Actions/RestoreEntityAction.cs +++ b/ModernKeePass/Actions/RestoreEntityAction.cs @@ -1,5 +1,5 @@ -using Windows.UI.Xaml; -using Windows.UI.Xaml.Controls; +using System.Windows.Input; +using Windows.UI.Xaml; using Microsoft.Xaml.Interactivity; using ModernKeePass.Common; using ModernKeePass.Interfaces; @@ -19,15 +19,15 @@ namespace ModernKeePass.Actions public static readonly DependencyProperty EntityProperty = DependencyProperty.Register("Entity", typeof(IPwEntity), typeof(RestoreEntityAction), new PropertyMetadata(null)); - - public Frame Frame + + public ICommand Command { - get { return (Frame)GetValue(FrameProperty); } - set { SetValue(FrameProperty, value); } + get { return (ICommand)GetValue(CommandProperty); } + set { SetValue(CommandProperty, value); } } - public static readonly DependencyProperty FrameProperty = - DependencyProperty.Register("Frame", typeof(Frame), typeof(RestoreEntityAction), + public static readonly DependencyProperty CommandProperty = + DependencyProperty.Register("Command", typeof(ICommand), typeof(RestoreEntityAction), new PropertyMetadata(null)); @@ -38,7 +38,7 @@ namespace ModernKeePass.Actions ToastNotificationHelper.ShowMovedToast(Entity, resource.GetResourceValue("EntityRestoredTitle"), resource.GetResourceValue($"{type}Restored")); - if (Frame.CanGoBack) Frame.GoBack(); + Command.Execute(null); return null; } diff --git a/ModernKeePass/App.xaml b/ModernKeePass/App.xaml index 0427b85..a34dd27 100644 --- a/ModernKeePass/App.xaml +++ b/ModernKeePass/App.xaml @@ -6,12 +6,12 @@ - - - - - - + + + + + + diff --git a/ModernKeePass/Interfaces/IPwEntity.cs b/ModernKeePass/Interfaces/IPwEntity.cs index f4045a7..90f1891 100644 --- a/ModernKeePass/Interfaces/IPwEntity.cs +++ b/ModernKeePass/Interfaces/IPwEntity.cs @@ -23,6 +23,7 @@ namespace ModernKeePass.Interfaces /// Restore ViewModel /// ICommand UndoDeleteCommand { get; } + ICommand GoBackCommand { get; set; } /// /// Move a entity to the destination group /// diff --git a/ModernKeePass/ModernKeePass.App.csproj b/ModernKeePass/ModernKeePass.App.csproj index 944281b..8970966 100644 --- a/ModernKeePass/ModernKeePass.App.csproj +++ b/ModernKeePass/ModernKeePass.App.csproj @@ -254,7 +254,7 @@ MSBuild:Compile Designer - + Designer MSBuild:Compile PreserveNewest @@ -331,27 +331,27 @@ Designer MSBuild:Compile - + Designer MSBuild:Compile PreserveNewest - + Designer MSBuild:Compile PreserveNewest - + Designer MSBuild:Compile PreserveNewest - + Designer MSBuild:Compile PreserveNewest - + Designer MSBuild:Compile PreserveNewest diff --git a/ModernKeePass/Styles/Colors.xaml b/ModernKeePass/ResourceDictionaries/Colors.xaml similarity index 100% rename from ModernKeePass/Styles/Colors.xaml rename to ModernKeePass/ResourceDictionaries/Colors.xaml diff --git a/ModernKeePass/Styles/HamburgerButtonStyle.xaml b/ModernKeePass/ResourceDictionaries/HamburgerButtonStyle.xaml similarity index 100% rename from ModernKeePass/Styles/HamburgerButtonStyle.xaml rename to ModernKeePass/ResourceDictionaries/HamburgerButtonStyle.xaml diff --git a/ModernKeePass/Styles/ListViewLeftIndicatorStyle.xaml b/ModernKeePass/ResourceDictionaries/ListViewLeftIndicatorStyle.xaml similarity index 100% rename from ModernKeePass/Styles/ListViewLeftIndicatorStyle.xaml rename to ModernKeePass/ResourceDictionaries/ListViewLeftIndicatorStyle.xaml diff --git a/ModernKeePass/Styles/NoBorderButtonStyle.xaml b/ModernKeePass/ResourceDictionaries/NoBorderButtonStyle.xaml similarity index 100% rename from ModernKeePass/Styles/NoBorderButtonStyle.xaml rename to ModernKeePass/ResourceDictionaries/NoBorderButtonStyle.xaml diff --git a/ModernKeePass/Styles/Styles.xaml b/ModernKeePass/ResourceDictionaries/Styles.xaml similarity index 100% rename from ModernKeePass/Styles/Styles.xaml rename to ModernKeePass/ResourceDictionaries/Styles.xaml diff --git a/ModernKeePass/Styles/TextBoxWithButtonStyle.xaml b/ModernKeePass/ResourceDictionaries/TextBoxWithButtonStyle.xaml similarity index 100% rename from ModernKeePass/Styles/TextBoxWithButtonStyle.xaml rename to ModernKeePass/ResourceDictionaries/TextBoxWithButtonStyle.xaml diff --git a/ModernKeePass/ViewModels/EntryVm.cs b/ModernKeePass/ViewModels/EntryVm.cs index c62446c..c8d6050 100644 --- a/ModernKeePass/ViewModels/EntryVm.cs +++ b/ModernKeePass/ViewModels/EntryVm.cs @@ -163,6 +163,7 @@ namespace ModernKeePass.ViewModels public ICommand SaveCommand { get; } public ICommand GeneratePasswordCommand { get; } public ICommand UndoDeleteCommand { get; } + public ICommand GoBackCommand { get; set; } public event PropertyChangedEventHandler PropertyChanged; diff --git a/ModernKeePass/ViewModels/GroupVm.cs b/ModernKeePass/ViewModels/GroupVm.cs index d1ab49c..7516847 100644 --- a/ModernKeePass/ViewModels/GroupVm.cs +++ b/ModernKeePass/ViewModels/GroupVm.cs @@ -113,6 +113,7 @@ namespace ModernKeePass.ViewModels public ICommand SortEntriesCommand { get; } public ICommand SortGroupsCommand { get; } public ICommand UndoDeleteCommand { get; } + public ICommand GoBackCommand { get; set; } private readonly PwGroup _pwGroup; private readonly IDatabaseService _database; diff --git a/ModernKeePass/Views/EntryDetailPage.xaml b/ModernKeePass/Views/EntryDetailPage.xaml index 9ba61d2..84df15b 100644 --- a/ModernKeePass/Views/EntryDetailPage.xaml +++ b/ModernKeePass/Views/EntryDetailPage.xaml @@ -273,44 +273,48 @@ Grid.Row="1" Background="{TemplateBinding Background}" Margin="{TemplateBinding BorderThickness}" - Grid.ColumnSpan="3" - Grid.RowSpan="1"/> + Grid.ColumnSpan="3"/> + - + Content="{TemplateBinding Header}" + ContentTemplate="{TemplateBinding HeaderTemplate}" + FontWeight="Semilight" /> + - + Grid.Column="0" + Foreground="{ThemeResource TextBoxPlaceholderTextThemeBrush}" + Margin="{TemplateBinding BorderThickness}" + Padding="{TemplateBinding Padding}" + IsTabStop="False" + Grid.ColumnSpan="3" + Content="{TemplateBinding PlaceholderText}" + IsHitTestVisible="False"/>