From bc0791b476fc11d824fafe4304eda743371ba9c5 Mon Sep 17 00:00:00 2001 From: Vendicated Date: Mon, 8 Jun 2026 16:26:35 +0200 Subject: [PATCH 1/7] CustomCommands: fix rename leading to duplicate commands Closes #4283 --- src/plugins/customCommands/CreateTagModal.tsx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/plugins/customCommands/CreateTagModal.tsx b/src/plugins/customCommands/CreateTagModal.tsx index 6c39d154a..1a28f28de 100644 --- a/src/plugins/customCommands/CreateTagModal.tsx +++ b/src/plugins/customCommands/CreateTagModal.tsx @@ -11,10 +11,10 @@ import { HeadingSecondary } from "@components/Heading"; import { InfoIcon } from "@components/Icons"; import { Paragraph } from "@components/Paragraph"; import { RenderModalProps } from "@vencord/discord-types"; -import { Modal,openModal, TextArea, TextInput, useState } from "@webpack/common"; +import { Modal, openModal, TextArea, TextInput, useState } from "@webpack/common"; import { parseTagArguments } from "."; -import { addTag, getTag, Tag } from "./settings"; +import { addTag, getTag, removeTag, Tag } from "./settings"; export function openCreateTagModal(initialValue: Tag = { name: "", message: "" }) { openModal(modalProps => ( @@ -55,6 +55,10 @@ function CreateTagDialog({ initialValue, modalProps }: { initialValue: Tag; moda text: isEdit ? "Save" : "Create", variant: "primary", onClick: () => { + if (isEdit && initialValue.name !== name) { + removeTag(initialValue.name); + } + const tag = { name, message }; addTag(tag); modalProps.onClose(); From 4ab4b793a79adfb3d8a6e16991003b14c2868a05 Mon Sep 17 00:00:00 2001 From: thororen <78185467+thororen1234@users.noreply.github.com> Date: Mon, 8 Jun 2026 10:32:09 -0400 Subject: [PATCH 2/7] fix CallTimer (#4280) --- src/plugins/callTimer/index.tsx | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/src/plugins/callTimer/index.tsx b/src/plugins/callTimer/index.tsx index d1d792fea..bf0bb1caa 100644 --- a/src/plugins/callTimer/index.tsx +++ b/src/plugins/callTimer/index.tsx @@ -81,17 +81,11 @@ export default definePlugin({ patches: [ { - find: "renderConnectionStatus(){", - replacement: [ - { - match: /(renderConnectionStatus\(\).{0,1000}?lineClamp:1,children:)(\i)(?=,|}\))/, - replace: "$1[$2,$self.renderTimer({ channelId: this?.props?.channel?.id })]" - }, - { - match: /("RTCConnectionMenu".{0,200}?lineClamp:1,children:)(\i)(?=,|}\))/, - replace: "$1[$2,$self.renderTimer({ channelId: this?.props?.channel?.id })]" - } - ] + find: '"RTCConnectionMenu"', + replacement: { + match: /("RTCConnectionMenu".{0,200}?lineClamp:1,children:)(\i)(?=,|}\))/, + replace: "$1[$2,$self.renderTimer({ channelId: this?.props?.channel?.id })]" + } }, ], From 87df5aba047039e252da3e26ac02f2abb714ad8d Mon Sep 17 00:00:00 2001 From: thororen <78185467+thororen1234@users.noreply.github.com> Date: Mon, 8 Jun 2026 10:34:13 -0400 Subject: [PATCH 3/7] PinDMS: fix duplicate context menu ids (#4274) --- src/plugins/pinDms/components/contextMenu.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/plugins/pinDms/components/contextMenu.tsx b/src/plugins/pinDms/components/contextMenu.tsx index c7a6b77af..5b78a11dc 100644 --- a/src/plugins/pinDms/components/contextMenu.tsx +++ b/src/plugins/pinDms/components/contextMenu.tsx @@ -18,7 +18,7 @@ function createPinMenuItem(channelId: string) { return ( @@ -48,7 +48,7 @@ function createPinMenuItem(channelId: string) { {pinned && ( <> removeChannelFromCategory(channelId)} From e6159eb60572277cac003fc0fa0e852e05a685d7 Mon Sep 17 00:00:00 2001 From: Vendicated Date: Mon, 8 Jun 2026 16:46:08 +0200 Subject: [PATCH 4/7] ViewRaw: add profile support --- src/plugins/viewRaw/index.tsx | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/plugins/viewRaw/index.tsx b/src/plugins/viewRaw/index.tsx index e3a350eab..8d9809988 100644 --- a/src/plugins/viewRaw/index.tsx +++ b/src/plugins/viewRaw/index.tsx @@ -27,7 +27,8 @@ import { isTruthy } from "@utils/guards"; import { Margins } from "@utils/margins"; import definePlugin, { IconComponent, OptionType } from "@utils/types"; import { Message } from "@vencord/discord-types"; -import { ChannelStore, Forms, GuildRoleStore, Menu, Modal,openModal } from "@webpack/common"; +import { ChannelStore, Forms, GuildRoleStore, Menu, Modal, openModal, UserProfileStore } from "@webpack/common"; +import { MouseEventHandler } from "react"; const CopyIcon: IconComponent = ({ height = 20, width = 20, className }) => { @@ -127,9 +128,9 @@ const settings = definePluginSettings({ } }); -function MakeContextCallback(name: "Guild" | "Role" | "User" | "Channel" | "Message"): NavContextMenuPatchCallback { +function MakeContextCallback(name: "Guild" | "Role" | "User" | "Channel" | "Message" | "Profile", getData?: (props: any) => any): NavContextMenuPatchCallback { return (children, props) => { - const value = props[name.toLowerCase()]; + const value = getData ? getData(props) : props[name.toLowerCase()]; if (!value) return; if (props.label === getIntlMessage("CHANNEL_ACTIONS_MENU_LABEL")) return; // random shit like notification settings const isMessage = name === "Message"; @@ -188,6 +189,7 @@ export default definePlugin({ "user-context": MakeContextCallback("User"), "dev-context": devContextCallback, "message": MakeContextCallback("Message"), + "user-profile-overflow-menu": MakeContextCallback("Profile", props => UserProfileStore.getGuildMemberProfile(props.user?.id, props.guildId) ?? UserProfileStore.getUserProfile(props.user?.id)) }, messagePopoverButton: { @@ -201,7 +203,7 @@ export default definePlugin({ } }; - const handleContextMenu = e => { + const handleContextMenu: MouseEventHandler = e => { if (settings.store.clickMethod === "Left") { e.preventDefault(); e.stopPropagation(); From 0dd5b29c14cf03d6181049d2232ab91bee4fddbe Mon Sep 17 00:00:00 2001 From: thororen <78185467+thororen1234@users.noreply.github.com> Date: Mon, 8 Jun 2026 10:48:26 -0400 Subject: [PATCH 5/7] Fix AccountPanelServerProfile sometimes erroring (#4252) --- src/plugins/accountPanelServerProfile/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/accountPanelServerProfile/index.tsx b/src/plugins/accountPanelServerProfile/index.tsx index 4ba38b63b..196f3376a 100644 --- a/src/plugins/accountPanelServerProfile/index.tsx +++ b/src/plugins/accountPanelServerProfile/index.tsx @@ -19,7 +19,7 @@ interface UserProfileProps { originalRenderPopout: () => React.ReactNode; } -const UserProfile = findComponentByCodeLazy(".POPOUT,user"); +const UserProfile = findComponentByCodeLazy(".isNonUserBot()?", ",onClickContainer:"); let openAlternatePopout = false; let accountPanelRef: React.RefObject = { current: null }; From 91fef8f6229e8d49a79180b784295fd550611291 Mon Sep 17 00:00:00 2001 From: Clov <273623891+chloricacid@users.noreply.github.com> Date: Mon, 8 Jun 2026 17:50:16 +0300 Subject: [PATCH 6/7] SupportHelper: improve snippet functionality (#4282) --- src/plugins/_core/supportHelper.tsx | 42 ++++++++++++++--------------- src/utils/constants.ts | 2 +- 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/src/plugins/_core/supportHelper.tsx b/src/plugins/_core/supportHelper.tsx index 05484a248..91819048d 100644 --- a/src/plugins/_core/supportHelper.tsx +++ b/src/plugins/_core/supportHelper.tsx @@ -46,7 +46,7 @@ import SettingsPlugin from "./settings"; const CodeBlockRe = /```js\n(.+?)```/s; const AdditionalAllowedChannelIds = [ - "1024286218801926184", // Vencord > #bot-spam + "1024286218801926184", // Vencord > #bot-commands ]; const TrustedRolesIds = [ @@ -315,27 +315,27 @@ export default definePlugin({ ); } + } - if (props.message.author.id === VENBOT_USER_ID) { - const match = CodeBlockRe.exec(props.message.content || props.message.embeds[0]?.rawDescription || ""); - if (match) { - buttons.push( - - ); - } + if (props.message.author.id === VENBOT_USER_ID && (props.channel.parent_id === KNOWN_ISSUES_CHANNEL_ID || props.channel.parent_id === SUPPORT_CATEGORY_ID)) { + const match = CodeBlockRe.exec(props.message.content || props.message.embeds[0]?.rawDescription || ""); + if (match) { + buttons.push( + + ); } } diff --git a/src/utils/constants.ts b/src/utils/constants.ts index 61550c00a..751a72f9d 100644 --- a/src/utils/constants.ts +++ b/src/utils/constants.ts @@ -24,7 +24,7 @@ export const CONTRIB_ROLE_ID = "1026534353167208489"; export const REGULAR_ROLE_ID = "1026504932959977532"; export const SUPPORT_CHANNEL_ID = "1026515880080842772"; export const SUPPORT_CATEGORY_ID = "1108135649699180705"; -export const KNOWN_ISSUES_CHANNEL_ID = "1222936386626129920"; +export const KNOWN_ISSUES_CHANNEL_ID = "1257025907625951423"; const platform = navigator.platform.toLowerCase(); export const IS_WINDOWS = platform.startsWith("win"); From b6516a15c1ffd1d351c47fecf5fe5faaf30dac7b Mon Sep 17 00:00:00 2001 From: "Cole W. Leavitt" <75138914+coleleavitt@users.noreply.github.com> Date: Mon, 8 Jun 2026 10:54:34 -0400 Subject: [PATCH 7/7] WebScreenShareFixes: fix malformed SDP (#4159) --- src/plugins/webScreenShareFixes.web/index.ts | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/plugins/webScreenShareFixes.web/index.ts b/src/plugins/webScreenShareFixes.web/index.ts index ac06a00e2..96af5d71d 100644 --- a/src/plugins/webScreenShareFixes.web/index.ts +++ b/src/plugins/webScreenShareFixes.web/index.ts @@ -20,11 +20,7 @@ export default definePlugin({ replacement: [ { match: /`x-google-max-bitrate=\$\{\i\}`/, - replace: '"x-google-max-bitrate=80_000"' - }, - { - match: ";level-asymmetry-allowed=1", - replace: ";b=AS:800000;level-asymmetry-allowed=1" + replace: '"x-google-max-bitrate=80000"' }, { match: /;usedtx=\$\{(\i)\?"0":"1"\}/,