From 8857ce9c5b214ca200fe8e11ebaffcfceeb05205 Mon Sep 17 00:00:00 2001 From: Le Stagiaire Date: Tue, 2 Jul 2024 11:09:17 +0200 Subject: [PATCH] chore: Update npm dependencies and add @electron-forge/maker-dmg package --- electron-3d-app/package.json | 2 +- electron-3d-app/src/favicon.ico | Bin 0 -> 15086 bytes electron-3d-app/src/index.js | 10 +++++++++- 3 files changed, 10 insertions(+), 2 deletions(-) create mode 100644 electron-3d-app/src/favicon.ico diff --git a/electron-3d-app/package.json b/electron-3d-app/package.json index d6bddbd..65a9dc3 100644 --- a/electron-3d-app/package.json +++ b/electron-3d-app/package.json @@ -17,6 +17,7 @@ "@electron-forge/maker-rpm": "^7.4.0", "@electron-forge/maker-squirrel": "^7.4.0", "@electron-forge/maker-zip": "^7.4.0", + "@electron-forge/maker-dmg": "^7.4.0", "@electron-forge/plugin-auto-unpack-natives": "^7.4.0", "@electron-forge/plugin-fuses": "^7.4.0", "@electron/fuses": "^1.8.0", @@ -29,7 +30,6 @@ }, "license": "MIT", "dependencies": { - "@electron-forge/maker-dmg": "^7.4.0", "custom-electron-prompt": "^1.5.7", "electron-squirrel-startup": "^1.0.1", "jspython-interpreter": "^2.1.15", diff --git a/electron-3d-app/src/favicon.ico b/electron-3d-app/src/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..c48827544cd285174c4bf3e8a201b48bb70100ce GIT binary patch literal 15086 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 literal 0 HcmV?d00001 diff --git a/electron-3d-app/src/index.js b/electron-3d-app/src/index.js index f163db7..6001f07 100644 --- a/electron-3d-app/src/index.js +++ b/electron-3d-app/src/index.js @@ -26,7 +26,8 @@ const createWindow = () => { webPreferences: { preload: path.join(__dirname, 'preload.js'), }, - nodeIntegration: true + nodeIntegration: true, + icon: path.join(__dirname, 'favicon.ico'), }); mainWindow.setMenu(null); @@ -72,6 +73,13 @@ const createWindow = () => { menu.popup(); }); + mainWindow.webContents.on('will-navigate', (details, url, isInPlace, isMainFrame, frameProcessId, frameRoutingId) => { + if (!url.startsWith(config.serverUrl)) { + details.preventDefault(); + shell.openExternal(url); + } + }) + ipcMain.on("config-change", (event) => { prompt({ title: "Configuration", label: "Please provide the server URL and port:", inputAttrs: { type: 'url' }, type: "input", value: config.serverUrl }).then((value) => { if (value !== null) {