pass if update is downloaded info to show update dialog callback
This commit is contained in:
parent
8e963aa85a
commit
e3febd0c48
|
@ -10,11 +10,16 @@ export const reloadWindow = () => {
|
||||||
ipcRenderer.send('reload-window');
|
ipcRenderer.send('reload-window');
|
||||||
};
|
};
|
||||||
|
|
||||||
export const registerUpdateEventListener = (showUpdateDialog: () => void) => {
|
export const registerUpdateEventListener = (
|
||||||
|
showUpdateDialog: (updateInfo: { uploadDownloaded: boolean }) => void
|
||||||
|
) => {
|
||||||
ipcRenderer.removeAllListeners('show-update-dialog');
|
ipcRenderer.removeAllListeners('show-update-dialog');
|
||||||
ipcRenderer.on('show-update-dialog', () => {
|
ipcRenderer.on(
|
||||||
showUpdateDialog();
|
'show-update-dialog',
|
||||||
});
|
(_, updateInfo: { uploadDownloaded: boolean }) => {
|
||||||
|
showUpdateDialog(updateInfo);
|
||||||
|
}
|
||||||
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
export const updateAndRestart = () => {
|
export const updateAndRestart = () => {
|
||||||
|
|
|
@ -3,7 +3,6 @@ import { autoUpdater } from 'electron-updater';
|
||||||
import log from 'electron-log';
|
import log from 'electron-log';
|
||||||
import { setIsAppQuitting, setIsUpdateAvailable } from '../main';
|
import { setIsAppQuitting, setIsUpdateAvailable } from '../main';
|
||||||
import { buildContextMenu } from '../utils/menu';
|
import { buildContextMenu } from '../utils/menu';
|
||||||
import { showUpdateDialog } from '../utils/appUpdate';
|
|
||||||
|
|
||||||
const LATEST_SUPPORTED_AUTO_UPDATE_VERSION = '1.6.12';
|
const LATEST_SUPPORTED_AUTO_UPDATE_VERSION = '1.6.12';
|
||||||
|
|
||||||
|
@ -14,10 +13,6 @@ class AppUpdater {
|
||||||
autoUpdater.autoDownload = false;
|
autoUpdater.autoDownload = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
getUpdateDownloaded() {
|
|
||||||
return this.updateDownloaded;
|
|
||||||
}
|
|
||||||
|
|
||||||
async checkForUpdate(tray: Tray, mainWindow: BrowserWindow) {
|
async checkForUpdate(tray: Tray, mainWindow: BrowserWindow) {
|
||||||
const updateCheckResult = await autoUpdater.checkForUpdatesAndNotify();
|
const updateCheckResult = await autoUpdater.checkForUpdatesAndNotify();
|
||||||
log.info(updateCheckResult);
|
log.info(updateCheckResult);
|
||||||
|
@ -26,12 +21,12 @@ class AppUpdater {
|
||||||
LATEST_SUPPORTED_AUTO_UPDATE_VERSION
|
LATEST_SUPPORTED_AUTO_UPDATE_VERSION
|
||||||
) {
|
) {
|
||||||
this.updateDownloaded = false;
|
this.updateDownloaded = false;
|
||||||
showUpdateDialog(mainWindow);
|
this.showUpdateDialog(mainWindow);
|
||||||
} else {
|
} else {
|
||||||
autoUpdater.downloadUpdate();
|
autoUpdater.downloadUpdate();
|
||||||
autoUpdater.on('update-downloaded', () => {
|
autoUpdater.on('update-downloaded', () => {
|
||||||
this.updateDownloaded = true;
|
this.updateDownloaded = true;
|
||||||
showUpdateDialog(mainWindow);
|
this.showUpdateDialog(mainWindow);
|
||||||
setIsUpdateAvailable(true);
|
setIsUpdateAvailable(true);
|
||||||
tray.setContextMenu(buildContextMenu(mainWindow));
|
tray.setContextMenu(buildContextMenu(mainWindow));
|
||||||
});
|
});
|
||||||
|
@ -42,6 +37,12 @@ class AppUpdater {
|
||||||
setIsAppQuitting(true);
|
setIsAppQuitting(true);
|
||||||
autoUpdater.quitAndInstall();
|
autoUpdater.quitAndInstall();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
showUpdateDialog = (mainWindow: BrowserWindow) => {
|
||||||
|
mainWindow.webContents.send('show-update-dialog', {
|
||||||
|
updateDownloaded: this.updateDownloaded,
|
||||||
|
});
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export default new AppUpdater();
|
export default new AppUpdater();
|
||||||
|
|
|
@ -12,7 +12,7 @@ import {
|
||||||
import { isUpdateAvailable, setIsAppQuitting } from '../main';
|
import { isUpdateAvailable, setIsAppQuitting } from '../main';
|
||||||
import autoLauncher from '../services/autoLauncher';
|
import autoLauncher from '../services/autoLauncher';
|
||||||
import { isPlatformMac } from './main';
|
import { isPlatformMac } from './main';
|
||||||
import { showUpdateDialog } from '../services/appUpdater';
|
import appUpdater from '../services/appUpdater';
|
||||||
|
|
||||||
export function buildContextMenu(
|
export function buildContextMenu(
|
||||||
mainWindow: BrowserWindow,
|
mainWindow: BrowserWindow,
|
||||||
|
@ -29,7 +29,7 @@ export function buildContextMenu(
|
||||||
? [
|
? [
|
||||||
{
|
{
|
||||||
label: 'Update available',
|
label: 'Update available',
|
||||||
click: () => showUpdateDialog(mainWindow),
|
click: () => appUpdater.showUpdateDialog(mainWindow),
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
: []),
|
: []),
|
||||||
|
|
Loading…
Reference in a new issue