ytDownloader/main.js

63 lines
1.5 KiB
JavaScript
Raw Normal View History

2022-07-31 12:45:09 +06:00
const { app, BrowserWindow } = require("electron");
const { autoUpdater } = require("electron-updater");
const path = require("path");
require("./app.js");
function createWindow() {
const win = new BrowserWindow({
show: false,
icon: __dirname + "/public/icon.png",
});
win.loadURL("http://localhost:59876");
win.maximize();
win.show();
autoUpdater.checkForUpdatesAndNotify();
2022-07-25 22:15:38 +06:00
}
app.whenReady().then(() => {
2022-07-31 12:45:09 +06:00
createWindow();
app.on("activate", () => {
if (BrowserWindow.getAllWindows().length === 0) {
createWindow();
}
});
if (process.platform === "win32") {
app.setAppUserModelId(app.name);
}
});
2022-07-25 22:15:38 +06:00
2022-07-31 12:45:09 +06:00
app.on("window-all-closed", () => {
if (process.platform !== "darwin") {
app.quit();
}
});
// Auto updater events
autoUpdater.on("update-available", (_event, releaseNotes, releaseName) => {
const dialogOpts = {
type: 'info',
buttons: ['Ok'],
title: 'Application Update',
message: process.platform === 'win32' ? releaseNotes : releaseName,
detail: 'A new version is being downloaded.'
}
dialog.showMessageBox(dialogOpts, (response) => {
});
2022-07-25 22:15:38 +06:00
})
2022-07-31 12:45:09 +06:00
autoUpdater.on("update-downloaded", (_event, releaseNotes, releaseName) => {
const dialogOpts = {
type: 'info',
buttons: ['Restart', 'Later'],
title: 'Application Update',
message: process.platform === 'win32' ? releaseNotes : releaseName,
detail: 'A new version has been downloaded. Restart the application to apply the updates.'
};
dialog.showMessageBox(dialogOpts).then((returnValue) => {
if (returnValue.response === 0) autoUpdater.quitAndInstall()
})
});