Make QuickCSS work

This commit is contained in:
Vendicated
2023-04-05 20:01:31 +02:00
parent 1980606e03
commit 19c43289f6
6 changed files with 31 additions and 5 deletions

View File

@@ -1,9 +1,10 @@
import { app, ipcMain, shell } from "electron";
import { readFileSync } from "fs";
import { readFile } from "fs/promises";
import { readFileSync, watch } from "fs";
import { open, readFile } from "fs/promises";
import { join } from "path";
import { debounce } from "shared/utils/debounce";
import { FOCUS, GET_RENDERER_SCRIPT, GET_RENDERER_STYLES, GET_SETTINGS, GET_VENCORD_PRELOAD_FILE, RELAUNCH, SET_SETTINGS, SHOW_ITEM_IN_FOLDER } from "../shared/IpcEvents";
import { VENCORD_FILES_DIR } from "./constants";
import { VENCORD_FILES_DIR, VENCORD_QUICKCSS_FILE } from "./constants";
import { mainWin } from "./mainWindow";
import { PlainSettings, setSettings } from "./settings";
@@ -37,3 +38,14 @@ ipcMain.handle(SHOW_ITEM_IN_FOLDER, (_, path) => {
ipcMain.handle(FOCUS, () => {
mainWin?.focus();
});
function readCss() {
return readFile(VENCORD_QUICKCSS_FILE, "utf-8").catch(() => "");
}
open(VENCORD_QUICKCSS_FILE, "a+").then(fd => {
fd.close();
watch(VENCORD_QUICKCSS_FILE, { persistent: false }, debounce(async () => {
mainWin?.webContents.postMessage("VencordQuickCssUpdate", await readCss());
}, 50));
});