diff --git a/injector/src/modules/csp.js b/injector/src/modules/csp.js index 3d825234..16aab5e4 100644 --- a/injector/src/modules/csp.js +++ b/injector/src/modules/csp.js @@ -3,9 +3,12 @@ import electron from "electron"; export default class { static remove() { electron.session.defaultSession.webRequest.onHeadersReceived(function(details, callback) { - if (!details.responseHeaders["content-security-policy-report-only"] && !details.responseHeaders["content-security-policy"]) return callback({cancel: false}); - delete details.responseHeaders["content-security-policy-report-only"]; - delete details.responseHeaders["content-security-policy"]; + const headers = Object.keys(details.responseHeaders); + for (let h = 0; h < headers.length; h++) { + const key = headers[h]; + if (key.toLowerCase().indexOf("content-security-policy") !== 0) continue; + delete details.responseHeaders[key]; + } callback({cancel: false, responseHeaders: details.responseHeaders}); }); } diff --git a/renderer/src/modules/addonmanager.js b/renderer/src/modules/addonmanager.js index 14434b7e..734c4094 100644 --- a/renderer/src/modules/addonmanager.js +++ b/renderer/src/modules/addonmanager.js @@ -191,7 +191,7 @@ export default class AddonManager { if (!meta.author) meta.author = Strings.Addons.unknownAuthor; if (!meta.version) meta.version = "???"; if (!meta.description) meta.description = Strings.Addons.noDescription; - meta.id = meta.name; + meta.id = path.basename(filename).replace(self.extension, "").replace(/ /g, "-"); meta.filename = path.basename(filename); meta.added = stats.atimeMs; meta.modified = stats.mtimeMs; diff --git a/renderer/src/modules/componentpatcher.js b/renderer/src/modules/componentpatcher.js index b94171ff..c5b82a48 100644 --- a/renderer/src/modules/componentpatcher.js +++ b/renderer/src/modules/componentpatcher.js @@ -13,7 +13,10 @@ const Anchor = WebpackModules.getByDisplayName("Anchor"); const Developers = [ /* Zerebos#7790 */ - "249746236008169473" + "249746236008169473", + + /* Strencher#1044 */ + "415849376598982656" ]; const DeveloperBadge = function DeveloperBadge({type, size = 16}) { diff --git a/renderer/src/modules/pluginmanager.js b/renderer/src/modules/pluginmanager.js index c65f5ae8..d6e2e2f6 100644 --- a/renderer/src/modules/pluginmanager.js +++ b/renderer/src/modules/pluginmanager.js @@ -120,7 +120,7 @@ export default new class PluginManager extends AddonManager { window.global = window; window.module = module; - window.__filename = path.basename(module.filename); + window.__filename = module.filename; window.__dirname = this.addonFolder; const wrapped = `(${vm.compileFunction(fileContent, ["exports", "require", "module", "__filename", "__dirname"]).toString()})`; const final = `${wrapped}(window.module.exports, window.require, window.module, window.__filename, window.__dirname)\n//# sourceURL=betterdiscord://plugins/${window.__filename}`; diff --git a/renderer/src/modules/thememanager.js b/renderer/src/modules/thememanager.js index 79f85965..adb1e670 100644 --- a/renderer/src/modules/thememanager.js +++ b/renderer/src/modules/thememanager.js @@ -66,14 +66,14 @@ export default new class ThemeManager extends AddonManager { addTheme(idOrAddon) { const addon = typeof(idOrAddon) == "string" ? this.addonList.find(p => p.id == idOrAddon) : idOrAddon; if (!addon) return; - DOMManager.injectTheme(addon.id, addon.css); + DOMManager.injectTheme(addon.id + "-theme-container", addon.css); Toasts.show(Strings.Addons.enabled.format({name: addon.name, version: addon.version})); } removeTheme(idOrAddon) { const addon = typeof(idOrAddon) == "string" ? this.addonList.find(p => p.id == idOrAddon) : idOrAddon; if (!addon) return; - DOMManager.removeTheme(addon.id); + DOMManager.removeTheme(addon.id + "-theme-container"); Toasts.show(Strings.Addons.disabled.format({name: addon.name, version: addon.version})); } }; \ No newline at end of file