Add QuickCss toggle; add settings listener api

This commit is contained in:
Vendicated 2022-09-03 17:49:16 +02:00
parent 8a8c6a4b52
commit 113f47ca7f
No known key found for this signature in database
GPG key ID: EC781ADFB93EFFA3
4 changed files with 56 additions and 14 deletions

View file

@ -1,8 +1,21 @@
import { addSettingsListener, Settings } from "../api/settings";
import IpcEvents from "./IpcEvents";
document.addEventListener("DOMContentLoaded", async () => {
const style = document.createElement("style");
document.head.appendChild(style);
VencordNative.ipc.on(IpcEvents.QUICK_CSS_UPDATE, (_, css: string) => style.innerText = css);
style.innerText = await VencordNative.ipc.invoke(IpcEvents.GET_QUICK_CSS);
let style: HTMLStyleElement;
export async function toggle(isEnabled: boolean) {
if (!style) {
if (isEnabled) {
style = document.createElement("style");
style.id = "vencord-custom-css";
document.head.appendChild(style);
VencordNative.ipc.on(IpcEvents.QUICK_CSS_UPDATE, (_, css: string) => style.innerText = css);
style.innerText = await VencordNative.ipc.invoke(IpcEvents.GET_QUICK_CSS);
}
} else style.disabled = !isEnabled;
}
document.addEventListener("DOMContentLoaded", () => {
toggle(Settings.useQuickCss);
addSettingsListener("useQuickCss", toggle);
});