diff --git a/src/core/Microsoft.PowerToys.Settings.UI.Lib/PowerRenameLocalProperties.cs b/src/core/Microsoft.PowerToys.Settings.UI.Lib/PowerRenameLocalProperties.cs index 4b38605576..820c3898c7 100644 --- a/src/core/Microsoft.PowerToys.Settings.UI.Lib/PowerRenameLocalProperties.cs +++ b/src/core/Microsoft.PowerToys.Settings.UI.Lib/PowerRenameLocalProperties.cs @@ -38,6 +38,10 @@ namespace Microsoft.PowerToys.Settings.UI.Lib { _maxSize = 0; } + else + { + _maxSize = value; + } } } 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 ef1625a5a0..4a3389e121 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 @@ -383,7 +383,7 @@ Appear only in extended context menu (Shift + Right-click) - + Maximum numbers of items to show in recently used list for autocomplete dropdown diff --git a/src/core/Microsoft.PowerToys.Settings.UI/ViewModels/PowerRenameViewModel.cs b/src/core/Microsoft.PowerToys.Settings.UI/ViewModels/PowerRenameViewModel.cs index ad26928cca..27c53a330d 100644 --- a/src/core/Microsoft.PowerToys.Settings.UI/ViewModels/PowerRenameViewModel.cs +++ b/src/core/Microsoft.PowerToys.Settings.UI/ViewModels/PowerRenameViewModel.cs @@ -76,6 +76,7 @@ namespace Microsoft.PowerToys.Settings.UI.ViewModels _powerRenameEnabled = value; OnPropertyChanged("IsEnabled"); + RaisePropertyChanged("GlobalAndMruEnabled"); } } } @@ -95,10 +96,20 @@ namespace Microsoft.PowerToys.Settings.UI.ViewModels _autoComplete = value; Settings.properties.MRUEnabled.Value = value; RaisePropertyChanged(); + RaisePropertyChanged("GlobalAndMruEnabled"); } } } + public bool GlobalAndMruEnabled + { + get + { + return _autoComplete && _powerRenameEnabled; + } + } + + public bool EnabledOnContextMenu { get diff --git a/src/core/Microsoft.PowerToys.Settings.UI/Views/PowerRenamePage.xaml b/src/core/Microsoft.PowerToys.Settings.UI/Views/PowerRenamePage.xaml index 2638835ffb..b3f56dc214 100644 --- a/src/core/Microsoft.PowerToys.Settings.UI/Views/PowerRenamePage.xaml +++ b/src/core/Microsoft.PowerToys.Settings.UI/Views/PowerRenamePage.xaml @@ -53,12 +53,6 @@ - - - + + + - - diff --git a/src/core/Microsoft.PowerToys.Settings.UnitTest/ViewModelTests/PowerRename.cs b/src/core/Microsoft.PowerToys.Settings.UnitTest/ViewModelTests/PowerRename.cs index 8b2d97fcc0..a094bf9035 100644 --- a/src/core/Microsoft.PowerToys.Settings.UnitTest/ViewModelTests/PowerRename.cs +++ b/src/core/Microsoft.PowerToys.Settings.UnitTest/ViewModelTests/PowerRename.cs @@ -80,6 +80,55 @@ namespace ViewModelTests viewModel.MRUEnabled = true; } + [TestMethod] + public void WhenIsEnabledIsOffAndMRUEnabledIsOffGlobalAndMruShouldBeOff() + { + PowerRenameViewModel viewModel = new PowerRenameViewModel(); + ShellPage.DefaultSndMSGCallback = msg => { }; + + viewModel.IsEnabled = false; + viewModel.MRUEnabled = false; + + Assert.IsFalse(viewModel.GlobalAndMruEnabled); + } + + [TestMethod] + public void WhenIsEnabledIsOffAndMRUEnabledIsOnGlobalAndMruShouldBeOff() + { + PowerRenameViewModel viewModel = new PowerRenameViewModel(); + ShellPage.DefaultSndMSGCallback = msg => { }; + + viewModel.IsEnabled = false; + viewModel.MRUEnabled = true; + + + Assert.IsFalse(viewModel.GlobalAndMruEnabled); + } + + [TestMethod] + public void WhenIsEnabledIsOnAndMRUEnabledIsOffGlobalAndMruShouldBeOff() + { + PowerRenameViewModel viewModel = new PowerRenameViewModel(); + ShellPage.DefaultSndMSGCallback = msg => { }; + + viewModel.IsEnabled = true; + viewModel.MRUEnabled = false; + + Assert.IsFalse(viewModel.GlobalAndMruEnabled); + } + + [TestMethod] + public void WhenIsEnabledIsOnAndMRUEnabledIsOnGlobalAndMruShouldBeOn() + { + PowerRenameViewModel viewModel = new PowerRenameViewModel(); + ShellPage.DefaultSndMSGCallback = msg => { }; + + viewModel.IsEnabled = true; + viewModel.MRUEnabled = true; + + Assert.IsTrue(viewModel.GlobalAndMruEnabled); + } + [TestMethod] public void EnabledOnContextMenu_ShouldSetValue2True_WhenSuccessful() { @@ -141,7 +190,7 @@ namespace ViewModelTests ShellPage.DefaultSndMSGCallback = msg => { PowerRenameSettingsIPCMessage snd = JsonSerializer.Deserialize(msg); - Assert.AreEqual(20,snd.Powertoys.PowerRename.properties.MaxMRUSize.Value); + Assert.AreEqual(20, snd.Powertoys.PowerRename.properties.MaxMRUSize.Value); }; // act