From c941b5333ce0104b187061aadbe8ac29db81a69e Mon Sep 17 00:00:00 2001 From: Alekhya Date: Thu, 24 Sep 2020 10:50:49 -0700 Subject: [PATCH] Fix settings changes that were made in PR #6620 (#6817) * validated that restart elevated and check for updates work.Removed isettingsUtils and reused settings repository * reverted the name to ImageResizer instead of using ImageResizerSettings.Modulename to make it backward compatible --- .../ViewModels/GeneralViewModel.cs | 15 +++++---------- .../ViewModels/ImageResizerViewModel.cs | 3 ++- .../ViewModelTests/General.cs | 5 ----- .../ViewModelTests/ImageResizer.cs | 3 +-- .../Views/GeneralPage.xaml.cs | 1 - 5 files changed, 8 insertions(+), 19 deletions(-) diff --git a/src/core/Microsoft.PowerToys.Settings.UI.Lib/ViewModels/GeneralViewModel.cs b/src/core/Microsoft.PowerToys.Settings.UI.Lib/ViewModels/GeneralViewModel.cs index 380fd28e8e..ff7667d86e 100644 --- a/src/core/Microsoft.PowerToys.Settings.UI.Lib/ViewModels/GeneralViewModel.cs +++ b/src/core/Microsoft.PowerToys.Settings.UI.Lib/ViewModels/GeneralViewModel.cs @@ -15,8 +15,6 @@ namespace Microsoft.PowerToys.Settings.UI.Lib.ViewModels { private GeneralSettings GeneralSettingsConfig { get; set; } - private readonly ISettingsUtils _settingsUtils; - public ButtonClickCommand CheckFoUpdatesEventHandler { get; set; } public ButtonClickCommand RestartElevatedButtonEventHandler { get; set; } @@ -35,11 +33,10 @@ namespace Microsoft.PowerToys.Settings.UI.Lib.ViewModels private string _settingsConfigFileFolder = string.Empty; - public GeneralViewModel(ISettingsUtils settingsUtils, ISettingsRepository settingsRepository, string runAsAdminText, string runAsUserText, bool isElevated, bool isAdmin, Func updateTheme, Func ipcMSGCallBackFunc, Func ipcMSGRestartAsAdminMSGCallBackFunc, Func ipcMSGCheckForUpdatesCallBackFunc, string configFileSubfolder = "") + public GeneralViewModel(ISettingsRepository settingsRepository, string runAsAdminText, string runAsUserText, bool isElevated, bool isAdmin, Func updateTheme, Func ipcMSGCallBackFunc, Func ipcMSGRestartAsAdminMSGCallBackFunc, Func ipcMSGCheckForUpdatesCallBackFunc, string configFileSubfolder = "") { CheckFoUpdatesEventHandler = new ButtonClickCommand(CheckForUpdates_Click); RestartElevatedButtonEventHandler = new ButtonClickCommand(Restart_Elevated); - _settingsUtils = settingsUtils ?? throw new ArgumentNullException(nameof(settingsUtils)); // To obtain the general settings configuration of PowerToys if it exists, else to create a new file and return the default configurations. GeneralSettingsConfig = settingsRepository.SettingsConfig; @@ -344,10 +341,9 @@ namespace Microsoft.PowerToys.Settings.UI.Lib.ViewModels // callback function to launch the URL to check for updates. private void CheckForUpdates_Click() { - GeneralSettings settings = _settingsUtils.GetSettings(_settingsConfigFileFolder); - settings.CustomActionName = "check_for_updates"; + GeneralSettingsConfig.CustomActionName = "check_for_updates"; - OutGoingGeneralSettings outsettings = new OutGoingGeneralSettings(settings); + OutGoingGeneralSettings outsettings = new OutGoingGeneralSettings(GeneralSettingsConfig); GeneralSettingsCustomAction customaction = new GeneralSettingsCustomAction(outsettings); SendCheckForUpdatesConfigMSG(customaction.ToString()); @@ -355,10 +351,9 @@ namespace Microsoft.PowerToys.Settings.UI.Lib.ViewModels public void Restart_Elevated() { - GeneralSettings settings = _settingsUtils.GetSettings(_settingsConfigFileFolder); - settings.CustomActionName = "restart_elevation"; + GeneralSettingsConfig.CustomActionName = "restart_elevation"; - OutGoingGeneralSettings outsettings = new OutGoingGeneralSettings(settings); + OutGoingGeneralSettings outsettings = new OutGoingGeneralSettings(GeneralSettingsConfig); GeneralSettingsCustomAction customaction = new GeneralSettingsCustomAction(outsettings); SendRestartAsAdminConfigMSG(customaction.ToString()); diff --git a/src/core/Microsoft.PowerToys.Settings.UI.Lib/ViewModels/ImageResizerViewModel.cs b/src/core/Microsoft.PowerToys.Settings.UI.Lib/ViewModels/ImageResizerViewModel.cs index ea12e18629..7a4dc3f475 100644 --- a/src/core/Microsoft.PowerToys.Settings.UI.Lib/ViewModels/ImageResizerViewModel.cs +++ b/src/core/Microsoft.PowerToys.Settings.UI.Lib/ViewModels/ImageResizerViewModel.cs @@ -19,7 +19,8 @@ namespace Microsoft.PowerToys.Settings.UI.Lib.ViewModels private ImageResizerSettings Settings { get; set; } - private const string ModuleName = ImageResizerSettings.ModuleName; + // NOTE: Not using ImageResizerSettings.ModuleName ("Image Resizer") to be backward compatible. + private const string ModuleName = "ImageResizer"; private Func SendConfigMSG { get; } diff --git a/src/core/Microsoft.PowerToys.Settings.UI.UnitTests/ViewModelTests/General.cs b/src/core/Microsoft.PowerToys.Settings.UI.UnitTests/ViewModelTests/General.cs index 04f724c131..c011ba7f58 100644 --- a/src/core/Microsoft.PowerToys.Settings.UI.UnitTests/ViewModelTests/General.cs +++ b/src/core/Microsoft.PowerToys.Settings.UI.UnitTests/ViewModelTests/General.cs @@ -35,7 +35,6 @@ namespace ViewModelTests Func SendRestartAdminIPCMessage = msg => { return 0; }; Func SendCheckForUpdatesIPCMessage = msg => { return 0; }; GeneralViewModel viewModel = new GeneralViewModel( - new Mock().Object, SettingsRepository.GetInstance(mockGeneralSettingsUtils.Object), "GeneralSettings_RunningAsAdminText", "GeneralSettings_RunningAsUserText", @@ -73,7 +72,6 @@ namespace ViewModelTests Func SendRestartAdminIPCMessage = msg => { return 0; }; Func SendCheckForUpdatesIPCMessage = msg => { return 0; }; GeneralViewModel viewModel = new GeneralViewModel( - new Mock().Object, SettingsRepository.GetInstance(mockGeneralSettingsUtils.Object), "GeneralSettings_RunningAsAdminText", "GeneralSettings_RunningAsUserText", @@ -106,7 +104,6 @@ namespace ViewModelTests // Arrange GeneralViewModel viewModel = new GeneralViewModel( - new Mock().Object, SettingsRepository.GetInstance(mockGeneralSettingsUtils.Object), "GeneralSettings_RunningAsAdminText", "GeneralSettings_RunningAsUserText", @@ -140,7 +137,6 @@ namespace ViewModelTests Func SendRestartAdminIPCMessage = msg => { return 0; }; Func SendCheckForUpdatesIPCMessage = msg => { return 0; }; viewModel = new GeneralViewModel( - new Mock().Object, SettingsRepository.GetInstance(mockGeneralSettingsUtils.Object), "GeneralSettings_RunningAsAdminText", "GeneralSettings_RunningAsUserText", @@ -172,7 +168,6 @@ namespace ViewModelTests Func SendRestartAdminIPCMessage = msg => { return 0; }; Func SendCheckForUpdatesIPCMessage = msg => { return 0; }; GeneralViewModel viewModel = new GeneralViewModel( - new Mock().Object, SettingsRepository.GetInstance(mockGeneralSettingsUtils.Object), "GeneralSettings_RunningAsAdminText", "GeneralSettings_RunningAsUserText", diff --git a/src/core/Microsoft.PowerToys.Settings.UI.UnitTests/ViewModelTests/ImageResizer.cs b/src/core/Microsoft.PowerToys.Settings.UI.UnitTests/ViewModelTests/ImageResizer.cs index c966b48153..f9ef7c51ec 100644 --- a/src/core/Microsoft.PowerToys.Settings.UI.UnitTests/ViewModelTests/ImageResizer.cs +++ b/src/core/Microsoft.PowerToys.Settings.UI.UnitTests/ViewModelTests/ImageResizer.cs @@ -18,8 +18,7 @@ namespace ViewModelTests [TestClass] public class ImageResizer { - // To have a consistent name. - public const string Module = ImageResizerSettings.ModuleName; + public const string Module = "ImageResizer"; private Mock mockGeneralSettingsUtils; diff --git a/src/core/Microsoft.PowerToys.Settings.UI/Views/GeneralPage.xaml.cs b/src/core/Microsoft.PowerToys.Settings.UI/Views/GeneralPage.xaml.cs index 1546469ec2..739bafc106 100644 --- a/src/core/Microsoft.PowerToys.Settings.UI/Views/GeneralPage.xaml.cs +++ b/src/core/Microsoft.PowerToys.Settings.UI/Views/GeneralPage.xaml.cs @@ -36,7 +36,6 @@ namespace Microsoft.PowerToys.Settings.UI.Views var settingsUtils = new SettingsUtils(new SystemIOProvider()); ViewModel = new GeneralViewModel( - settingsUtils, SettingsRepository.GetInstance(settingsUtils), loader.GetString("GeneralSettings_RunningAsAdminText"), loader.GetString("GeneralSettings_RunningAsUserText"),