mirror of
https://github.com/Equicord/Equicord.git
synced 2025-06-23 21:37:03 -04:00
Monaco for Discord Desktop
This commit is contained in:
parent
23d4cae123
commit
44f6f71c3e
11 changed files with 173 additions and 90 deletions
|
@ -22,8 +22,10 @@ import { open, readFile, writeFile } from "fs/promises";
|
|||
import { join } from "path";
|
||||
import { debounce } from "../utils/debounce";
|
||||
import IpcEvents from "../utils/IpcEvents";
|
||||
import monacoHtml from "@fileContent/../components/monacoWin.html;base64";
|
||||
|
||||
import "./updater";
|
||||
import { Queue } from "../utils/Queue";
|
||||
|
||||
const DATA_DIR = process.env.VENCORD_USER_DATA_DIR ?? (
|
||||
process.env.DISCORD_USER_DATA_DIR
|
||||
|
@ -71,15 +73,19 @@ ipcMain.handle(IpcEvents.OPEN_EXTERNAL, (_, url) => {
|
|||
shell.openExternal(url);
|
||||
});
|
||||
|
||||
const cssWriteQueue = new Queue();
|
||||
const settingsWriteQueue = new Queue();
|
||||
|
||||
ipcMain.handle(IpcEvents.GET_QUICK_CSS, () => readCss());
|
||||
ipcMain.handle(IpcEvents.SET_QUICK_CSS, (_, css) =>
|
||||
cssWriteQueue.add(() => writeFile(QUICKCSS_PATH, css))
|
||||
);
|
||||
|
||||
ipcMain.handle(IpcEvents.GET_SETTINGS_DIR, () => SETTINGS_DIR);
|
||||
ipcMain.on(IpcEvents.GET_SETTINGS, e => e.returnValue = readSettings());
|
||||
|
||||
let settingsWriteQueue = Promise.resolve();
|
||||
ipcMain.handle(IpcEvents.SET_SETTINGS, (_, s) => {
|
||||
settingsWriteQueue = settingsWriteQueue.then(() => writeFile(SETTINGS_FILE, s));
|
||||
settingsWriteQueue.add(() => writeFile(SETTINGS_FILE, s));
|
||||
});
|
||||
|
||||
|
||||
|
@ -91,3 +97,13 @@ export function initIpc(mainWindow: BrowserWindow) {
|
|||
}, 50));
|
||||
});
|
||||
}
|
||||
|
||||
ipcMain.handle(IpcEvents.OPEN_MONACO_EDITOR, async () => {
|
||||
const win = new BrowserWindow({
|
||||
title: "QuickCss Editor",
|
||||
webPreferences: {
|
||||
preload: join(__dirname, "preload.js"),
|
||||
}
|
||||
});
|
||||
await win.loadURL(`data:text/html;base64,${monacoHtml}`);
|
||||
});
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue