diff --git a/src/modules/cmdpal/Exts/Microsoft.CmdPal.Ext.WindowWalker/Commands/KillProcessCommand.cs b/src/modules/cmdpal/Exts/Microsoft.CmdPal.Ext.WindowWalker/Commands/KillProcessCommand.cs index 46d3d17802..45daecdf1e 100644 --- a/src/modules/cmdpal/Exts/Microsoft.CmdPal.Ext.WindowWalker/Commands/KillProcessCommand.cs +++ b/src/modules/cmdpal/Exts/Microsoft.CmdPal.Ext.WindowWalker/Commands/KillProcessCommand.cs @@ -10,6 +10,7 @@ using System.Threading.Tasks; using Microsoft.CmdPal.Ext.WindowWalker.Components; using Microsoft.CmdPal.Ext.WindowWalker.Helpers; using Microsoft.CmdPal.Ext.WindowWalker.Properties; +using Microsoft.CmdPal.Extensions; using Microsoft.CmdPal.Extensions.Helpers; namespace Microsoft.CmdPal.Ext.WindowWalker.Commands; @@ -64,4 +65,14 @@ internal sealed partial class KillProcessCommand : InvokableCommand window.Process.KillThisProcess(SettingsManager.Instance.KillProcessTree); return !SettingsManager.Instance.OpenAfterKillAndClose; } + + public override ICommandResult Invoke() + { + if (KillProcess(_window)) + { + return CommandResult.KeepOpen(); + } + + return CommandResult.Dismiss(); + } } diff --git a/src/modules/cmdpal/Exts/Microsoft.CmdPal.Ext.WindowWalker/WindowWalkerCommandsProvider.cs b/src/modules/cmdpal/Exts/Microsoft.CmdPal.Ext.WindowWalker/WindowWalkerCommandsProvider.cs index 4fbf16f72b..2d2349a50e 100644 --- a/src/modules/cmdpal/Exts/Microsoft.CmdPal.Ext.WindowWalker/WindowWalkerCommandsProvider.cs +++ b/src/modules/cmdpal/Exts/Microsoft.CmdPal.Ext.WindowWalker/WindowWalkerCommandsProvider.cs @@ -30,6 +30,6 @@ public partial class WindowWalkerCommandsProvider : CommandProvider public override ICommandItem[] TopLevelCommands() { - return [_walkerCommand]; + return [new WalkerTopLevelCommandItem(_settingsManager)]; } }