From 3015ffd9508b363ff74b58355421f895ddbc6420 Mon Sep 17 00:00:00 2001 From: Niels Laute Date: Tue, 31 Mar 2020 14:32:22 +0200 Subject: [PATCH] Settings V2: new FancyZones, ImageResizer XAML, sidepanels are now in the settings pages for more flexibility (#1792) * Added FZ settings page * Added FZ page * Added sidepanel to all settings pages + UX improvements. New Fancy zones page. * Added ImageResizer page + sidepanel improvements * Revert "Added ImageResizer page + sidepanel improvements" This reverts commit 75bc37a6ba27023fd6c6c155d3d65d937615d6bc. * Removed contributors on general page * Added ImageResizer page --- PowerToys.sln | 1 + .../Microsoft.PowerToys.Settings.UI/App.xaml | 2 +- .../Microsoft.PowerToys.Settings.UI.csproj | 22 +- .../Strings/en-us/Resources.resw | 14 +- .../Styles/_Sizes.xaml | 19 ++ .../ViewModels/FancyZonesViewModel.cs | 13 ++ .../ViewModels/ImageResizerViewModel.cs | 13 ++ .../Views/FancyZonesPage.xaml | 145 +++++++++++++ .../Views/FancyZonesPage.xaml.cs | 28 +++ .../Views/GeneralPage.xaml | 87 ++++++-- .../Views/GeneralPage.xaml.cs | 35 ++-- .../Views/ImageResizerPage.xaml | 195 ++++++++++++++++++ .../Views/ImageResizerPage.xaml.cs | 29 +++ .../Views/PowerLauncherPage.xaml | 63 +++++- .../Views/PowerPreviewPage.xaml | 56 ++++- .../Views/PowerPreviewPage.xaml.cs | 8 - .../Views/PowerRenamePage.xaml | 71 ++++++- .../Views/ShellPage.xaml | 98 +++------ .../Views/ShellPage.xaml.cs | 45 +--- .../Views/ShortcutGuidePage.xaml | 53 ++++- 20 files changed, 813 insertions(+), 184 deletions(-) create mode 100644 src/core/Microsoft.PowerToys.Settings.UI/Styles/_Sizes.xaml create mode 100644 src/core/Microsoft.PowerToys.Settings.UI/ViewModels/FancyZonesViewModel.cs create mode 100644 src/core/Microsoft.PowerToys.Settings.UI/ViewModels/ImageResizerViewModel.cs create mode 100644 src/core/Microsoft.PowerToys.Settings.UI/Views/FancyZonesPage.xaml create mode 100644 src/core/Microsoft.PowerToys.Settings.UI/Views/FancyZonesPage.xaml.cs create mode 100644 src/core/Microsoft.PowerToys.Settings.UI/Views/ImageResizerPage.xaml create mode 100644 src/core/Microsoft.PowerToys.Settings.UI/Views/ImageResizerPage.xaml.cs diff --git a/PowerToys.sln b/PowerToys.sln index 544c96ba52..77c12b0a80 100644 --- a/PowerToys.sln +++ b/PowerToys.sln @@ -189,6 +189,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Microsoft.PowerToys.Setting Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{4981CCD1-4CD9-4A49-B240-00AA46493FF8}" ProjectSection(SolutionItems) = preProject .editorconfig = .editorconfig + src\tests\win-app-driver\packages.config = src\tests\win-app-driver\packages.config EndProjectSection EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.PowerToys.Settings.UI.Lib", "src\core\Microsoft.PowerToys.Settings.UI.Lib\Microsoft.PowerToys.Settings.UI.Lib.csproj", "{B1BCC8C6-46B5-4BFA-8F22-20F32D99EC6A}" diff --git a/src/core/Microsoft.PowerToys.Settings.UI/App.xaml b/src/core/Microsoft.PowerToys.Settings.UI/App.xaml index e5a4b1b823..7ea0edfe34 100644 --- a/src/core/Microsoft.PowerToys.Settings.UI/App.xaml +++ b/src/core/Microsoft.PowerToys.Settings.UI/App.xaml @@ -10,7 +10,7 @@ - + diff --git a/src/core/Microsoft.PowerToys.Settings.UI/Microsoft.PowerToys.Settings.UI.csproj b/src/core/Microsoft.PowerToys.Settings.UI/Microsoft.PowerToys.Settings.UI.csproj index 1463d65a70..9562010244 100644 --- a/src/core/Microsoft.PowerToys.Settings.UI/Microsoft.PowerToys.Settings.UI.csproj +++ b/src/core/Microsoft.PowerToys.Settings.UI/Microsoft.PowerToys.Settings.UI.csproj @@ -1,4 +1,4 @@ - + @@ -134,6 +134,8 @@ + + @@ -141,12 +143,18 @@ GeneralPage.xaml + + ImageResizerPage.xaml + PowerLauncherPage.xaml PowerPreviewPage.xaml + + FancyZonesPage.xaml + PowerRenamePage.xaml @@ -214,6 +222,10 @@ MSBuild:Compile Designer + + Designer + MSBuild:Compile + MSBuild:Compile Designer @@ -222,10 +234,18 @@ Designer MSBuild:Compile + + Designer + MSBuild:Compile + Designer MSBuild:Compile + + MSBuild:Compile + Designer + MSBuild:Compile Designer diff --git a/src/core/Microsoft.PowerToys.Settings.UI/Strings/en-us/Resources.resw b/src/core/Microsoft.PowerToys.Settings.UI/Strings/en-us/Resources.resw index 0ccb936aa8..13bf1145e1 100644 --- a/src/core/Microsoft.PowerToys.Settings.UI/Strings/en-us/Resources.resw +++ b/src/core/Microsoft.PowerToys.Settings.UI/Strings/en-us/Resources.resw @@ -145,8 +145,16 @@ Shortcut Guide Navigation view item name for Shortcut Guide - + File Explorer Preview - File Explorer Preview Settings - + Navigation view item name for File Explorer Preview + + + FancyZones + Navigation view item name for FancyZones + + + Image Resizer + Navigation view item name for Image Resizer + \ No newline at end of file diff --git a/src/core/Microsoft.PowerToys.Settings.UI/Styles/_Sizes.xaml b/src/core/Microsoft.PowerToys.Settings.UI/Styles/_Sizes.xaml new file mode 100644 index 0000000000..ec5eaec72c --- /dev/null +++ b/src/core/Microsoft.PowerToys.Settings.UI/Styles/_Sizes.xaml @@ -0,0 +1,19 @@ + + + 180 + + + 1100 + + + 480 + + + 24 + + + 24 + diff --git a/src/core/Microsoft.PowerToys.Settings.UI/ViewModels/FancyZonesViewModel.cs b/src/core/Microsoft.PowerToys.Settings.UI/ViewModels/FancyZonesViewModel.cs new file mode 100644 index 0000000000..71adf5ab87 --- /dev/null +++ b/src/core/Microsoft.PowerToys.Settings.UI/ViewModels/FancyZonesViewModel.cs @@ -0,0 +1,13 @@ +using System; + +using Microsoft.PowerToys.Settings.UI.Helpers; + +namespace Microsoft.PowerToys.Settings.UI.ViewModels +{ + public class FancyZonesViewModel : Observable + { + public FancyZonesViewModel() + { + } + } +} \ No newline at end of file diff --git a/src/core/Microsoft.PowerToys.Settings.UI/ViewModels/ImageResizerViewModel.cs b/src/core/Microsoft.PowerToys.Settings.UI/ViewModels/ImageResizerViewModel.cs new file mode 100644 index 0000000000..6a89566057 --- /dev/null +++ b/src/core/Microsoft.PowerToys.Settings.UI/ViewModels/ImageResizerViewModel.cs @@ -0,0 +1,13 @@ +using System; + +using Microsoft.PowerToys.Settings.UI.Helpers; + +namespace Microsoft.PowerToys.Settings.UI.ViewModels +{ + public class ImageResizerViewModel : Observable + { + public ImageResizerViewModel() + { + } + } +} \ No newline at end of file diff --git a/src/core/Microsoft.PowerToys.Settings.UI/Views/FancyZonesPage.xaml b/src/core/Microsoft.PowerToys.Settings.UI/Views/FancyZonesPage.xaml new file mode 100644 index 0000000000..ee68c4f0c5 --- /dev/null +++ b/src/core/Microsoft.PowerToys.Settings.UI/Views/FancyZonesPage.xaml @@ -0,0 +1,145 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/core/Microsoft.PowerToys.Settings.UI/Views/FancyZonesPage.xaml.cs b/src/core/Microsoft.PowerToys.Settings.UI/Views/FancyZonesPage.xaml.cs new file mode 100644 index 0000000000..b789c48621 --- /dev/null +++ b/src/core/Microsoft.PowerToys.Settings.UI/Views/FancyZonesPage.xaml.cs @@ -0,0 +1,28 @@ +using Microsoft.PowerToys.Settings.UI.ViewModels; +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Runtime.InteropServices.WindowsRuntime; +using Windows.Foundation; +using Windows.Foundation.Collections; +using Windows.UI.Xaml; +using Windows.UI.Xaml.Controls; +using Windows.UI.Xaml.Controls.Primitives; +using Windows.UI.Xaml.Data; +using Windows.UI.Xaml.Input; +using Windows.UI.Xaml.Media; +using Windows.UI.Xaml.Navigation; + +namespace Microsoft.PowerToys.Settings.UI.Views +{ + public sealed partial class FancyZonesPage : Page + { + public FancyZonesViewModel ViewModel { get; } = new FancyZonesViewModel(); + + public FancyZonesPage() + { + this.InitializeComponent(); + } + } +} diff --git a/src/core/Microsoft.PowerToys.Settings.UI/Views/GeneralPage.xaml b/src/core/Microsoft.PowerToys.Settings.UI/Views/GeneralPage.xaml index 0dd40c279b..e123d7b36e 100644 --- a/src/core/Microsoft.PowerToys.Settings.UI/Views/GeneralPage.xaml +++ b/src/core/Microsoft.PowerToys.Settings.UI/Views/GeneralPage.xaml @@ -9,27 +9,56 @@ mc:Ignorable="d" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - + + + + + - -