✨ feat(runner/plugin-kill): add plugin to quickly kill hyprland clients
This commit is contained in:
+3
-1
@@ -9,7 +9,8 @@ import {
|
|||||||
PluginMedia,
|
PluginMedia,
|
||||||
PluginShell,
|
PluginShell,
|
||||||
PluginWallpapers,
|
PluginWallpapers,
|
||||||
PluginWebSearch
|
PluginWebSearch,
|
||||||
|
PluginKill
|
||||||
} from "./runner/plugins";
|
} from "./runner/plugins";
|
||||||
import { Wireplumber } from "./modules/volume";
|
import { Wireplumber } from "./modules/volume";
|
||||||
import { handleArguments } from "./modules/arg-handler";
|
import { handleArguments } from "./modules/arg-handler";
|
||||||
@@ -40,6 +41,7 @@ const runnerPlugins: Array<Runner.Plugin> = [
|
|||||||
PluginApps,
|
PluginApps,
|
||||||
PluginShell,
|
PluginShell,
|
||||||
PluginWebSearch,
|
PluginWebSearch,
|
||||||
|
PluginKill,
|
||||||
PluginMedia,
|
PluginMedia,
|
||||||
PluginWallpapers,
|
PluginWallpapers,
|
||||||
PluginClipboard
|
PluginClipboard
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import { PluginMedia } from "./media"
|
|||||||
import { PluginShell } from "./shell"
|
import { PluginShell } from "./shell"
|
||||||
import { PluginWallpapers } from "./wallpapers"
|
import { PluginWallpapers } from "./wallpapers"
|
||||||
import { PluginWebSearch } from "./websearch"
|
import { PluginWebSearch } from "./websearch"
|
||||||
|
import { PluginKill } from "./kill"
|
||||||
|
|
||||||
|
|
||||||
export {
|
export {
|
||||||
@@ -12,5 +13,6 @@ export {
|
|||||||
PluginClipboard,
|
PluginClipboard,
|
||||||
PluginShell,
|
PluginShell,
|
||||||
PluginMedia,
|
PluginMedia,
|
||||||
PluginWallpapers
|
PluginWallpapers,
|
||||||
|
PluginKill
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -0,0 +1,18 @@
|
|||||||
|
import { execAsync } from "ags/process";
|
||||||
|
import { Runner } from "../Runner";
|
||||||
|
import { Notifications } from "../../modules/notifications";
|
||||||
|
|
||||||
|
export const PluginKill = {
|
||||||
|
prefix: ":k",
|
||||||
|
handle: () => ({
|
||||||
|
title: "Select a client to kill",
|
||||||
|
closeOnClick: true,
|
||||||
|
icon: "window-close-symbolic",
|
||||||
|
actionClick: () => execAsync("hyprctl kill").catch((e) =>
|
||||||
|
Notifications.getDefault().sendNotification({
|
||||||
|
summary: "Couldn't kill client",
|
||||||
|
body: `An error occurred while trying to kill a client! Stderr: ${e}`
|
||||||
|
})
|
||||||
|
)
|
||||||
|
} satisfies Runner.Result)
|
||||||
|
} satisfies Runner.Plugin;
|
||||||
Reference in New Issue
Block a user