Microsoft.CmdPal.UI.ViewModels

This commit is contained in:
Mike Griese
2025-07-25 10:16:40 -05:00
parent 7414810041
commit d587b8c4aa
8 changed files with 11 additions and 25 deletions

View File

@@ -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

View File

@@ -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 = $$"""
{

View File

@@ -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));

View File

@@ -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);
}

View File

@@ -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)

View File

@@ -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;
}

View File

@@ -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()

View File

@@ -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);