fix portable app restart

This commit is contained in:
Araxeus
2022-02-24 20:41:59 +02:00
parent 407887254f
commit 704fba9aba
5 changed files with 12 additions and 24 deletions

View File

@ -13,7 +13,7 @@ const { fileExists, injectCSS } = require("./plugins/utils");
const { isTesting } = require("./utils/testing");
const { setUpTray } = require("./tray");
const { setupSongInfo } = require("./providers/song-info");
const { setupAppControls } = require("./providers/app-controls");
const { setupAppControls, restart } = require("./providers/app-controls");
// Catch errors and log them
unhandled({
@ -435,13 +435,8 @@ function showUnresponsiveDialog(win, details) {
cancelId: 0
}).then( result => {
switch (result.response) {
case 1: //if relaunch - relaunch+exit
app.relaunch();
case 2:
app.quit();
break;
default:
break;
case 1: restart(); break;
case 2: app.quit(); break;
}
});
}

View File

@ -3,6 +3,7 @@ const path = require("path");
const { app, Menu, dialog } = require("electron");
const is = require("electron-is");
const { restart } = require("./providers/app-controls");
const { getAllPlugins } = require("./plugins/utils");
const config = require("./config");
@ -279,10 +280,7 @@ const mainMenuTemplate = (win) => {
},
{
label: "Restart App",
click: () => {
app.relaunch();
app.quit();
},
click: restart
},
{ role: "quit" },
],

View File

@ -1,8 +1,7 @@
const path = require("path");
require("./providers/front-logger")();
const config = require("./config");
const { fileExists } = require("./plugins/utils");
const setupFrontLogger = require("./providers/front-logger");
const setupSongInfo = require("./providers/song-info-front");
const { setupSongControls } = require("./providers/song-controls-front");
const { ipcRenderer } = require("electron");
@ -48,9 +47,6 @@ document.addEventListener("DOMContentLoaded", () => {
// inject song-controls
setupSongControls();
// inject front logger
setupFrontLogger();
// Add action for reloading
global.reload = () => ipcRenderer.send('reload');

View File

@ -14,6 +14,7 @@ module.exports.setupAppControls = () => {
}
function restart() {
app.relaunch();
app.exit();
app.relaunch({ execPath: process.env.PORTABLE_EXECUTABLE_FILE });
// execPath will be undefined if not running portable app, resulting in default behavior
app.quit();
}

View File

@ -2,6 +2,7 @@ const path = require("path");
const { Menu, nativeImage, Tray } = require("electron");
const { restart } = require("./providers/app-controls");
const config = require("./config");
const getSongControls = require("./providers/song-controls");
@ -58,10 +59,7 @@ module.exports.setUpTray = (app, win) => {
},
{
label: "Restart App",
click: () => {
app.relaunch();
app.quit();
},
click: restart
},
{ role: "quit" }
];