mirror of
https://github.com/microsoft/PowerToys
synced 2025-09-03 16:05:12 +00:00
CmdPal: Add settings to control which fallbacks are enabled (#40505)
This adds settings to each provider to allow us to control if individual fallback items are enabled or not, regardless of the provider being enabled. This is relevant to _all the threads where disabling fallback commands came up_ This just adds another section to each provider's settings page, with a list of the fallback commands. This also has nothing to do with the "top-level apps search", which is not really a fallback command - it's its own thing. Ref #38288. Doesn't close that, because this only controls enable/disable, not ranking. From here, we should be able to add a dedicated page in the SUI that shows all the fallbacks across all providers. That's where we'll enable the ordering.
This commit is contained in:
@@ -177,13 +177,13 @@ public sealed class CommandProviderWrapper
|
||||
private void InitializeCommands(ICommandItem[] commands, IFallbackCommandItem[] fallbacks, IServiceProvider serviceProvider, WeakReference<IPageContext> pageContext)
|
||||
{
|
||||
var settings = serviceProvider.GetService<SettingsModel>()!;
|
||||
var providerSettings = GetProviderSettings(settings);
|
||||
|
||||
Func<ICommandItem?, bool, TopLevelViewModel> makeAndAdd = (ICommandItem? i, bool fallback) =>
|
||||
{
|
||||
CommandItemViewModel commandItemViewModel = new(new(i), pageContext);
|
||||
TopLevelViewModel topLevelViewModel = new(commandItemViewModel, fallback, ExtensionHost, ProviderId, settings, serviceProvider);
|
||||
|
||||
topLevelViewModel.ItemViewModel.SlowInitializeProperties();
|
||||
TopLevelViewModel topLevelViewModel = new(commandItemViewModel, fallback, ExtensionHost, ProviderId, settings, providerSettings, serviceProvider);
|
||||
topLevelViewModel.InitializeProperties();
|
||||
|
||||
return topLevelViewModel;
|
||||
};
|
||||
|
Reference in New Issue
Block a user