diff --git a/src/plugins/vcDoubleClick.ts b/src/plugins/vcDoubleClick.ts index 695e8c51..6d124a6c 100644 --- a/src/plugins/vcDoubleClick.ts +++ b/src/plugins/vcDoubleClick.ts @@ -19,7 +19,7 @@ import { migratePluginSettings } from "@api/settings"; import { Devs } from "@utils/constants"; import definePlugin from "@utils/types"; -import { SelectedChannelStore } from "@webpack/common"; +import { ChannelStore, SelectedChannelStore } from "@webpack/common"; const timers = {} as Record(_vcEv.detail>=2||_vcEv.target.className.includes('MentionText'))&&($1)()", + match: /onClick:(\i)(?=,.{0,30}className:"channelMention".+?(\i)\.inContent)/, + replace: (_, onClick, props) => "" + + `onClick:(vcDoubleClickEvt)=>$self.shouldRunOnClick(vcDoubleClickEvt,${props})&&${onClick}()`, } } ], + shouldRunOnClick(e: MouseEvent, { channelId }) { + const channel = ChannelStore.getChannel(channelId); + if (!channel || ![2, 13].includes(channel.type)) return true; + return e.detail >= 2; + }, + schedule(cb: () => void, e: any) { const id = e.props.channel.id as string; if (SelectedChannelStore.getVoiceChannelId() === id) {