From 7dfa3b402b20303ed6f10b9378188ccbf503a345 Mon Sep 17 00:00:00 2001 From: Sam <149597648+cheesesamwich@users.noreply.github.com> Date: Tue, 11 Jun 2024 11:49:52 +0100 Subject: [PATCH 1/2] Add jumpToStart --- src/plugins/jumpToStart/index.tsx | 41 +++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 src/plugins/jumpToStart/index.tsx diff --git a/src/plugins/jumpToStart/index.tsx b/src/plugins/jumpToStart/index.tsx new file mode 100644 index 0000000000..187f5dbe9e --- /dev/null +++ b/src/plugins/jumpToStart/index.tsx @@ -0,0 +1,41 @@ +/* + * Vencord, a Discord client mod + * Copyright (c) 2024 Vendicated and contributors + * SPDX-License-Identifier: GPL-3.0-or-later + */ + +import { NavContextMenuPatchCallback } from "@api/ContextMenu"; +import { Devs } from "@utils/constants"; +import definePlugin from "@utils/types"; +import { Menu, NavigationRouter } from "@webpack/common"; + +function jumpToFirstMessage(props) +{ + const guildid = props.guild_id !== null ? props.guild_id : "@me"; + const channelid = props.id; + const url = `/channels/${guildid}/${channelid}/0`; + NavigationRouter.transitionTo(url); +} + +const MenuPatch: NavContextMenuPatchCallback = (children, { channel }) => { + children.push( + { + jumpToFirstMessage(channel); + }} + /> + ); +}; + +export default definePlugin({ + name: "JumpToStart", + description: "Adds a context menu option to jump to the start of a channel/DM", + authors: [ Devs.Samwich ], + contextMenus: + { + "channel-context": MenuPatch, + "user-context": MenuPatch + } +}); From 98d0a979a1827cc83ef059e11b62647610a8ce89 Mon Sep 17 00:00:00 2001 From: Sam <149597648+cheesesamwich@users.noreply.github.com> Date: Tue, 11 Jun 2024 11:57:02 +0100 Subject: [PATCH 2/2] Add thread support --- src/plugins/jumpToStart/index.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/plugins/jumpToStart/index.tsx b/src/plugins/jumpToStart/index.tsx index 187f5dbe9e..47b958a7e7 100644 --- a/src/plugins/jumpToStart/index.tsx +++ b/src/plugins/jumpToStart/index.tsx @@ -36,6 +36,7 @@ export default definePlugin({ contextMenus: { "channel-context": MenuPatch, - "user-context": MenuPatch + "user-context": MenuPatch, + "thread-context": MenuPatch } });