From 6b493bc7d95a2bdd0f9b9b7c049ff2e886a0bbf1 Mon Sep 17 00:00:00 2001 From: Lewis Crichton Date: Sat, 18 Mar 2023 03:54:19 +0000 Subject: [PATCH] feat(plugin): F8Break (#581) Co-authored-by: Ven --- src/plugins/f8break.ts | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 src/plugins/f8break.ts diff --git a/src/plugins/f8break.ts b/src/plugins/f8break.ts new file mode 100644 index 00000000..89dd2c92 --- /dev/null +++ b/src/plugins/f8break.ts @@ -0,0 +1,42 @@ +/* + * Vencord, a modification for Discord's desktop app + * Copyright (c) 2023 Vendicated and contributors + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . +*/ + +import { Devs } from "@utils/constants"; +import definePlugin from "@utils/types"; + +export default definePlugin({ + name: "F8Break", + description: "Pause the client when you press F8 with DevTools (+ breakpoints) open.", + authors: [Devs.lewisakura], + + start() { + window.addEventListener("keydown", this.event); + }, + + stop() { + window.removeEventListener("keydown", this.event); + }, + + event(e: KeyboardEvent) { + if (e.code === "F8") { + // Hi! You've just paused the client. Pressing F8 in DevTools or in the main window will unpause it again. + // It's up to you on what to do, friend. Happy travels! + debugger; + } + } +});