don't download update if not auto updatable

This commit is contained in:
Abhinav 2022-10-31 17:29:13 +05:30
parent e3b9332544
commit 8e963aa85a

View file

@ -3,19 +3,39 @@ import { autoUpdater } from 'electron-updater';
import log from 'electron-log';
import { setIsAppQuitting, setIsUpdateAvailable } from '../main';
import { buildContextMenu } from '../utils/menu';
import { showUpdateDialog } from '../utils/appUpdate';
const LATEST_SUPPORTED_AUTO_UPDATE_VERSION = '1.6.12';
class AppUpdater {
updateDownloaded: boolean;
constructor() {
autoUpdater.logger = log;
autoUpdater.autoDownload = false;
}
getUpdateDownloaded() {
return this.updateDownloaded;
}
async checkForUpdate(tray: Tray, mainWindow: BrowserWindow) {
await autoUpdater.checkForUpdatesAndNotify();
autoUpdater.on('update-downloaded', () => {
const updateCheckResult = await autoUpdater.checkForUpdatesAndNotify();
log.info(updateCheckResult);
if (
updateCheckResult.updateInfo.version >
LATEST_SUPPORTED_AUTO_UPDATE_VERSION
) {
this.updateDownloaded = false;
showUpdateDialog(mainWindow);
setIsUpdateAvailable(true);
tray.setContextMenu(buildContextMenu(mainWindow));
});
} else {
autoUpdater.downloadUpdate();
autoUpdater.on('update-downloaded', () => {
this.updateDownloaded = true;
showUpdateDialog(mainWindow);
setIsUpdateAvailable(true);
tray.setContextMenu(buildContextMenu(mainWindow));
});
}
}
updateAndRestart = () => {
@ -25,7 +45,3 @@ class AppUpdater {
}
export default new AppUpdater();
export const showUpdateDialog = (mainWindow: BrowserWindow): void => {
mainWindow.webContents.send('show-update-dialog');
};