Outrule the possibility that the page might not be fully loaded on older machines will break stuff

This commit is contained in:
Maarten
2023-11-14 13:21:30 +01:00
parent e7a4964400
commit 882f4aa252
2 changed files with 16 additions and 10 deletions

View File

@@ -124,14 +124,18 @@ function checkSelection() {
}
}
// This changes the dropdown selection, based on the platform being used.
ipcRenderer.on("update-value", (e, msg) => {
// main.js sends a ready message if the page is loaded in. This will be received here.
// process.platform -> 'linux' -> selectedIndex = 2 (Linux)
// process.platform -> 'win32' -> selectedIndex = 0 (Windows)
// process.platform -> 'darwin' -> selectedIndex = 1 (macOS)
ipcRenderer.on("ready", () => {
const osdropdown = document.getElementById("osdropdown")
if (msg === "linux") {
if (process.platform.toString().includes("linux")) {
osdropdown.selectedIndex = 2
} else if (msg === "win") {
} else if (process.platform.toString().includes("win")) {
osdropdown.selectedIndex = 0
} else if (msg === "darwin") {
} else if (process.platform.toString().includes("darwin")) {
osdropdown.selectedIndex = 1
}
checkSelection() // force check the selection so the terminal dropdown can be unhidden.

12
main.js
View File

@@ -39,11 +39,13 @@ app.whenReady().then(() => {
if (BrowserWindow.getAllWindows().length === 0) createWindow()
})
// Waits one second so the DOM is ready, and then sends the process platform to the downloader.
// TODO: On slow machine this WILL cause issues. Fix required!
setTimeout(() => {
BrowserWindow.getFocusedWindow().webContents.postMessage("update-value", (process.platform.toString() || "win"))
}, 1000)
})
// If the page is fully loaded in, send a sign.
app.on("web-contents-created", (event, contents) => {
contents.on("dom-ready", () => {
contents.send("ready")
})
})
// Quit when all windows are closed, except on macOS. There, it's common