From c76e9f5e3d5a282a0e723593fcdc4cf996d419be Mon Sep 17 00:00:00 2001 From: Snek <107999380+sneksnake@users.noreply.github.com> Date: Thu, 27 Oct 2022 18:37:54 +0200 Subject: [PATCH] better patch & visual bug fix (#167) --- src/plugins/showHiddenChannels.tsx | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/src/plugins/showHiddenChannels.tsx b/src/plugins/showHiddenChannels.tsx index 0650cc4cf..84f7c3e7c 100644 --- a/src/plugins/showHiddenChannels.tsx +++ b/src/plugins/showHiddenChannels.tsx @@ -70,19 +70,11 @@ export default definePlugin({ } }, { - // Prevents Discord from trying to fetch message and create a 403 error - find: "fetchMessages:function", + // inside the onMouseClick handler, we check if the channel is hidden and open the modal if it is + find: ".handleThreadsPopoutClose();", replacement: { - match: /fetchMessages:function\((\w)\){/g, - replace: "fetchMessages:function($1){if(Vencord.Plugins.plugins.ShowHiddenChannels.isHiddenChannel($1)) return;" - } - }, - { - // Don't switch to the channel if it's hidden, but show a modal instead - find: ".selectGuild(", - replacement: { - match: /(function \w+\(\w\)\{var (\w)=\w+\(\w\);)/g, - replace: "$1if(Vencord.Plugins.plugins.ShowHiddenChannels.channelSelected($2?.params))return;" + match: /((\w)\.handleThreadsPopoutClose\(\);)/g, + replace: "if(Vencord.Plugins.plugins.ShowHiddenChannels.channelSelected($2?.props?.channel))return;$1" } }, { @@ -121,9 +113,7 @@ export default definePlugin({ channel._isHiddenChannel = !can(VIEW_CHANNEL, channel) || (channel.type === 2 && !can(CONNECT, channel)); return channel._isHiddenChannel; }, - channelSelected(channelData) { - if (!channelData) return false; - const channel = ChannelStore.getChannel(channelData.channelId); + channelSelected(channel) { if (!channel) return false; const isHidden = this.isHiddenChannel(channel); // check for type again, otherwise it would show it for hidden stage channels