From 399e738ddbfea6b95421e3785ff673665494e4b1 Mon Sep 17 00:00:00 2001 From: Mirco Wittrien Date: Sat, 8 Jun 2019 16:15:07 +0200 Subject: [PATCH] Update ReadAllNotificationsButton.plugin.js --- .../ReadAllNotificationsButton.plugin.js | 63 ++++++++++--------- 1 file changed, 33 insertions(+), 30 deletions(-) diff --git a/Plugins/ReadAllNotificationsButton/ReadAllNotificationsButton.plugin.js b/Plugins/ReadAllNotificationsButton/ReadAllNotificationsButton.plugin.js index c06470cbbf..3a7e29f938 100644 --- a/Plugins/ReadAllNotificationsButton/ReadAllNotificationsButton.plugin.js +++ b/Plugins/ReadAllNotificationsButton/ReadAllNotificationsButton.plugin.js @@ -167,38 +167,41 @@ class ReadAllNotificationsButton { this.RANcontextMenuMarkup = this.RANcontextMenuMarkup.replace("REPLACE_context_dms_text", this.labels.context_dms_text); } - processGuilds (instance, wrapper) { - BDFDB.removeEles(".RANbutton-frame"); - let insertnode = this.getInsertNode(); - if (insertnode) { - let ranbutton = BDFDB.htmlToElement(this.RANbuttonMarkup); - insertnode.parentElement.insertBefore(ranbutton, insertnode); - ranbutton.addEventListener("click", () => { - let settings = BDFDB.getAllData(this, "settings"); - if (settings.includeGuilds) BDFDB.markGuildAsRead(settings.includeMuted ? BDFDB.readServerList() : BDFDB.readUnreadServerList()); - if (settings.includeDMs) BDFDB.markChannelAsRead(BDFDB.readDmList()); - }); - ranbutton.addEventListener("contextmenu", e => { - let RANcontextMenu = BDFDB.htmlToElement(this.RANcontextMenuMarkup); - RANcontextMenu.querySelector(".readunreadguilds-item").addEventListener("click", () => { - BDFDB.removeEles(RANcontextMenu); - BDFDB.markGuildAsRead(BDFDB.readUnreadServerList()); + processGuilds (instance, wrapper, methodnames) { + if (methodnames.includes("componentDidMount") || (methodnames.includes("componentDidUpdate") && document.querySelector(".bd-guild ~ .RANbutton-frame"))) { + console.log(instance); + BDFDB.removeEles(".RANbutton-frame"); + let insertnode = this.getInsertNode(); + if (insertnode) { + let ranbutton = BDFDB.htmlToElement(this.RANbuttonMarkup); + insertnode.parentElement.insertBefore(ranbutton, insertnode); + ranbutton.addEventListener("click", () => { + let settings = BDFDB.getAllData(this, "settings"); + if (settings.includeGuilds) BDFDB.markGuildAsRead(settings.includeMuted ? BDFDB.readServerList() : BDFDB.readUnreadServerList()); + if (settings.includeDMs) BDFDB.markChannelAsRead(BDFDB.readDmList()); }); - RANcontextMenu.querySelector(".readmutedguilds-item").addEventListener("click", () => { - BDFDB.removeEles(RANcontextMenu); - BDFDB.markGuildAsRead(BDFDB.readMutedServerList()); + ranbutton.addEventListener("contextmenu", e => { + let RANcontextMenu = BDFDB.htmlToElement(this.RANcontextMenuMarkup); + RANcontextMenu.querySelector(".readunreadguilds-item").addEventListener("click", () => { + BDFDB.removeEles(RANcontextMenu); + BDFDB.markGuildAsRead(BDFDB.readUnreadServerList()); + }); + RANcontextMenu.querySelector(".readmutedguilds-item").addEventListener("click", () => { + BDFDB.removeEles(RANcontextMenu); + BDFDB.markGuildAsRead(BDFDB.readMutedServerList()); + }); + RANcontextMenu.querySelector(".readguilds-item").addEventListener("click", () => { + BDFDB.removeEles(RANcontextMenu); + BDFDB.markGuildAsRead(BDFDB.readServerList()); + }); + RANcontextMenu.querySelector(".readdms-item").addEventListener("click", () => { + BDFDB.removeEles(RANcontextMenu); + BDFDB.markChannelAsRead(BDFDB.readDmList()); + }); + BDFDB.appendContextMenu(RANcontextMenu, e); }); - RANcontextMenu.querySelector(".readguilds-item").addEventListener("click", () => { - BDFDB.removeEles(RANcontextMenu); - BDFDB.markGuildAsRead(BDFDB.readServerList()); - }); - RANcontextMenu.querySelector(".readdms-item").addEventListener("click", () => { - BDFDB.removeEles(RANcontextMenu); - BDFDB.markChannelAsRead(BDFDB.readDmList()); - }); - BDFDB.appendContextMenu(RANcontextMenu, e); - }); - BDFDB.addClass(wrapper, "RAN-added"); + BDFDB.addClass(wrapper, "RAN-added"); + } } }