mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-02-23 19:49:43 +01:00
Microsoft.CmdPal.UI.ViewModels
This commit is contained in:
@@ -43,13 +43,7 @@ public sealed class CommandProviderWrapper
|
||||
|
||||
public bool IsActive { get; private set; }
|
||||
|
||||
public string ProviderId
|
||||
{
|
||||
get
|
||||
{
|
||||
return string.IsNullOrEmpty(Extension?.ExtensionUniqueId) ? Id : Extension.ExtensionUniqueId;
|
||||
}
|
||||
}
|
||||
public string ProviderId => string.IsNullOrEmpty(Extension?.ExtensionUniqueId) ? Id : Extension.ExtensionUniqueId;
|
||||
|
||||
public CommandProviderWrapper(ICommandProvider provider, TaskScheduler mainThread)
|
||||
{
|
||||
@@ -180,14 +174,14 @@ public sealed class CommandProviderWrapper
|
||||
var settings = serviceProvider.GetService<SettingsModel>()!;
|
||||
var providerSettings = GetProviderSettings(settings);
|
||||
|
||||
Func<ICommandItem?, bool, TopLevelViewModel> makeAndAdd = (ICommandItem? i, bool fallback) =>
|
||||
TopLevelViewModel makeAndAdd(ICommandItem? i, bool fallback)
|
||||
{
|
||||
CommandItemViewModel commandItemViewModel = new(new(i), pageContext);
|
||||
TopLevelViewModel topLevelViewModel = new(commandItemViewModel, fallback, ExtensionHost, ProviderId, settings, providerSettings, serviceProvider);
|
||||
topLevelViewModel.InitializeProperties();
|
||||
|
||||
return topLevelViewModel;
|
||||
};
|
||||
}
|
||||
if (commands != null)
|
||||
{
|
||||
TopLevelItems = commands
|
||||
|
||||
@@ -13,7 +13,7 @@ internal sealed partial class CreatedExtensionForm : NewExtensionFormBase
|
||||
{
|
||||
public CreatedExtensionForm(string name, string displayName, string path)
|
||||
{
|
||||
var serializeString = (string? s) => JsonSerializer.Serialize(s, JsonSerializationContext.Default.String);
|
||||
static string serializeString(string? s) => JsonSerializer.Serialize(s, JsonSerializationContext.Default.String);
|
||||
TemplateJson = CardTemplate;
|
||||
DataJson = $$"""
|
||||
{
|
||||
|
||||
@@ -271,7 +271,7 @@ public partial class MainListPage : DynamicListPage,
|
||||
// title and extension name up above ones that just match title.
|
||||
// e.g. "git" will up-weight "GitHub searches" from the GitHub extension
|
||||
// above "git" from "whatever"
|
||||
max = max + extensionTitleMatch;
|
||||
max += extensionTitleMatch;
|
||||
|
||||
var matchSomething = max
|
||||
+ (isAliasMatch ? 9001 : (isAliasSubstringMatch ? 1 : 0));
|
||||
|
||||
@@ -260,8 +260,7 @@ public partial class ExtensionService : IExtensionService, IDisposable
|
||||
{
|
||||
foreach (var supportedInterface in supportedInterfaces)
|
||||
{
|
||||
ProviderType pt;
|
||||
if (Enum.TryParse(supportedInterface.Key, out pt))
|
||||
if (Enum.TryParse(supportedInterface.Key, out ProviderType pt))
|
||||
{
|
||||
extensionWrapper.AddProviderType(pt);
|
||||
}
|
||||
|
||||
@@ -47,7 +47,7 @@ public class ProviderSettings
|
||||
|
||||
public bool IsFallbackEnabled(TopLevelViewModel command)
|
||||
{
|
||||
return FallbackCommands.TryGetValue(command.Id, out var enabled) ? enabled : true;
|
||||
return !FallbackCommands.TryGetValue(command.Id, out var enabled) || enabled;
|
||||
}
|
||||
|
||||
public void SetFallbackEnabled(TopLevelViewModel command, bool enabled)
|
||||
|
||||
@@ -126,10 +126,7 @@ public partial class ProviderSettingsViewModel(
|
||||
{
|
||||
get
|
||||
{
|
||||
if (field == null)
|
||||
{
|
||||
field = BuildTopLevelViewModels();
|
||||
}
|
||||
field ??= BuildTopLevelViewModels();
|
||||
|
||||
return field;
|
||||
}
|
||||
@@ -149,10 +146,7 @@ public partial class ProviderSettingsViewModel(
|
||||
{
|
||||
get
|
||||
{
|
||||
if (field == null)
|
||||
{
|
||||
field = BuildFallbackViewModels();
|
||||
}
|
||||
field ??= BuildFallbackViewModels();
|
||||
|
||||
return field;
|
||||
}
|
||||
|
||||
@@ -146,7 +146,7 @@ public record HotkeySettings// : ICmdLineRepresentable
|
||||
|
||||
public bool IsValid()
|
||||
{
|
||||
return IsAccessibleShortcut() ? false : (Alt || Ctrl || Win || Shift) && Code != 0;
|
||||
return !IsAccessibleShortcut() && (Alt || Ctrl || Win || Shift) && Code != 0;
|
||||
}
|
||||
|
||||
public bool IsEmpty()
|
||||
|
||||
@@ -60,8 +60,7 @@ public partial class SettingsModel : ObservableObject
|
||||
|
||||
public ProviderSettings GetProviderSettings(CommandProviderWrapper provider)
|
||||
{
|
||||
ProviderSettings? settings;
|
||||
if (!ProviderSettings.TryGetValue(provider.ProviderId, out settings))
|
||||
if (!ProviderSettings.TryGetValue(provider.ProviderId, out ProviderSettings? settings))
|
||||
{
|
||||
settings = new ProviderSettings(provider);
|
||||
settings.Connect(provider);
|
||||
|
||||
Reference in New Issue
Block a user