diff --git a/src/components/ui/menu.tsx b/src/components/ui/menu.tsx
index cf41987..e4c95c6 100644
--- a/src/components/ui/menu.tsx
+++ b/src/components/ui/menu.tsx
@@ -2,16 +2,6 @@ import React, {useState} from "react";
import { openSide, Side } from "../../renderer";
import {blender, blenderCmd} from "../blender-controller";
-const UpdateButton = () => (
-
-
-
-)
-
const MainSideButtons = () => (
openSide(Side.Settings)}>
{blenderStatus}
- {updateAvailable? : null}
{(side == Side.Main)? : null}
{(side == Side.Settings)? : null}
{(side == Side.Rendering)? : null}
diff --git a/src/index.ts b/src/index.ts
index be952dd..9d2970d 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -1,6 +1,51 @@
-import {app, BrowserWindow} from 'electron';
+import {app, BrowserWindow, dialog} from 'electron';
import {initialize as remoteInitialize, enable as remoteEnable} from '@electron/remote/main';
import path from 'path';
+import { autoUpdater } from "electron-updater";
+import logger from 'electron-log';
+
+logger.transports.console.format = "{h}:{i}:{s} {text}";
+logger.transports.file.getFile();
+logger.transports.file.resolvePath = () => path.join(app.getPath('userData'), "logs", "start.log");
+
+autoUpdater.autoDownload = false;
+
+autoUpdater.checkForUpdatesAndNotify();
+
+autoUpdater.on('update-available', async () => {
+ const response = await dialog.showMessageBox({
+ type: 'info',
+ title: 'Update Available',
+ message: 'Found updates, do you want update now?',
+ buttons: ['Yes', 'Later'],
+ });
+
+ if (response.response === 0) {
+ logger.log('Downloading Update');
+ autoUpdater.downloadUpdate();
+ await dialog.showMessageBox({
+ type: 'info',
+ title: 'Update Downloading',
+ message:
+ 'Update is being downloaded, you will be notified when it is ready to install',
+ buttons: [],
+ });
+ }
+});
+
+autoUpdater.on('update-downloaded', async () => {
+ const response = await dialog.showMessageBox({
+ type: 'info',
+ buttons: ['Restart', 'Later'],
+ title: 'Application Update',
+ message: 'Update',
+ detail:
+ 'A new version has been downloaded. Restart the application to apply the updates.',
+ });
+ if (response.response === 0) {
+ setImmediate(() => autoUpdater.quitAndInstall());
+ }
+});
// Handle creating/removing shortcuts on Windows when installing/uninstalling.
if (require('electron-squirrel-startup')) {
diff --git a/src/renderer.tsx b/src/renderer.tsx
index 0a61bda..c9c41c3 100644
--- a/src/renderer.tsx
+++ b/src/renderer.tsx
@@ -26,7 +26,7 @@ function openSide(side:Side) {
root.render(
-