From 1a48b5884a03dbf49c017d80b5be6cf7bc98dfa4 Mon Sep 17 00:00:00 2001 From: Robert Kossessa Date: Sun, 28 Jan 2024 15:03:34 +0100 Subject: [PATCH] ADD: App icon doesn't show up :( --- .vite/build/main.js | 4 +- forge.config.js | 4 +- index.html | 4 +- src/assets/favicon.ico | Bin 0 -> 205086 bytes src/assets/{favico.png => favicon.png} | Bin src/main.js | 67 +++++++++++++------------ 6 files changed, 41 insertions(+), 38 deletions(-) create mode 100644 src/assets/favicon.ico rename src/assets/{favico.png => favicon.png} (100%) diff --git a/.vite/build/main.js b/.vite/build/main.js index f959cc5..aa743aa 100644 --- a/.vite/build/main.js +++ b/.vite/build/main.js @@ -1,5 +1,5 @@ -"use strict";const h=require("electron"),P=require("path"),T=require("child_process"),z=require("tty"),G=require("util"),I=require("fs"),J=require("net");function Z(s){return s&&s.__esModule&&Object.prototype.hasOwnProperty.call(s,"default")?s.default:s}var O={exports:{}},b={exports:{}},q={exports:{}},_,A;function H(){if(A)return _;A=1;var s=1e3,e=s*60,u=e*60,c=u*24,f=c*365.25;_=function(r,n){n=n||{};var o=typeof r;if(o==="string"&&r.length>0)return v(r);if(o==="number"&&isNaN(r)===!1)return n.long?m(r):g(r);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(r))};function v(r){if(r=String(r),!(r.length>100)){var n=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(r);if(n){var o=parseFloat(n[1]),d=(n[2]||"ms").toLowerCase();switch(d){case"years":case"year":case"yrs":case"yr":case"y":return o*f;case"days":case"day":case"d":return o*c;case"hours":case"hour":case"hrs":case"hr":case"h":return o*u;case"minutes":case"minute":case"mins":case"min":case"m":return o*e;case"seconds":case"second":case"secs":case"sec":case"s":return o*s;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return o;default:return}}}}function g(r){return r>=c?Math.round(r/c)+"d":r>=u?Math.round(r/u)+"h":r>=e?Math.round(r/e)+"m":r>=s?Math.round(r/s)+"s":r+"ms"}function m(r){return a(r,c,"day")||a(r,u,"hour")||a(r,e,"minute")||a(r,s,"second")||r+" ms"}function a(r,n,o){if(!(r=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}e.formatters.j=function(a){try{return JSON.stringify(a)}catch(r){return"[UnexpectedJSONParseError]: "+r.message}};function c(a){var r=this.useColors;if(a[0]=(r?"%c":"")+this.namespace+(r?" %c":" ")+a[0]+(r?"%c ":" ")+"+"+e.humanize(this.diff),!!r){var n="color: "+this.color;a.splice(1,0,n,"color: inherit");var o=0,d=0;a[0].replace(/%[a-zA-Z%]/g,function(i){i!=="%%"&&(o++,i==="%c"&&(d=o))}),a.splice(d,0,n)}}function f(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function v(a){try{a==null?e.storage.removeItem("debug"):e.storage.debug=a}catch{}}function g(){var a;try{a=e.storage.debug}catch{}return!a&&typeof process<"u"&&"env"in process&&(a=process.env.DEBUG),a}e.enable(g());function m(){try{return window.localStorage}catch{}}}(b,b.exports)),b.exports}var C={exports:{}},U;function Y(){return U||(U=1,function(s,e){var u=z,c=G;e=s.exports=R(),e.init=d,e.log=a,e.formatArgs=m,e.save=r,e.load=n,e.useColors=g,e.colors=[6,2,3,4,5,1],e.inspectOpts=Object.keys(process.env).filter(function(i){return/^debug_/i.test(i)}).reduce(function(i,t){var p=t.substring(6).toLowerCase().replace(/_([a-z])/g,function(w,y){return y.toUpperCase()}),l=process.env[t];return/^(yes|on|true|enabled)$/i.test(l)?l=!0:/^(no|off|false|disabled)$/i.test(l)?l=!1:l==="null"?l=null:l=Number(l),i[p]=l,i},{});var f=parseInt(process.env.DEBUG_FD,10)||2;f!==1&&f!==2&&c.deprecate(function(){},"except for stderr(2) and stdout(1), any other usage of DEBUG_FD is deprecated. Override debug.log if you want to use a different log function (https://git.io/debug_fd)")();var v=f===1?process.stdout:f===2?process.stderr:o(f);function g(){return"colors"in e.inspectOpts?!!e.inspectOpts.colors:u.isatty(f)}e.formatters.o=function(i){return this.inspectOpts.colors=this.useColors,c.inspect(i,this.inspectOpts).split(` +"use strict";const h=require("electron"),O=require("path"),T=require("child_process"),z=require("tty"),G=require("util"),I=require("fs"),J=require("net");function Z(o){return o&&o.__esModule&&Object.prototype.hasOwnProperty.call(o,"default")?o.default:o}var S={exports:{}},b={exports:{}},q={exports:{}},_,D;function H(){if(D)return _;D=1;var o=1e3,e=o*60,u=e*60,c=u*24,f=c*365.25;_=function(r,n){n=n||{};var s=typeof r;if(s==="string"&&r.length>0)return v(r);if(s==="number"&&isNaN(r)===!1)return n.long?m(r):g(r);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(r))};function v(r){if(r=String(r),!(r.length>100)){var n=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(r);if(n){var s=parseFloat(n[1]),d=(n[2]||"ms").toLowerCase();switch(d){case"years":case"year":case"yrs":case"yr":case"y":return s*f;case"days":case"day":case"d":return s*c;case"hours":case"hour":case"hrs":case"hr":case"h":return s*u;case"minutes":case"minute":case"mins":case"min":case"m":return s*e;case"seconds":case"second":case"secs":case"sec":case"s":return s*o;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}}}function g(r){return r>=c?Math.round(r/c)+"d":r>=u?Math.round(r/u)+"h":r>=e?Math.round(r/e)+"m":r>=o?Math.round(r/o)+"s":r+"ms"}function m(r){return a(r,c,"day")||a(r,u,"hour")||a(r,e,"minute")||a(r,o,"second")||r+" ms"}function a(r,n,s){if(!(r=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}e.formatters.j=function(a){try{return JSON.stringify(a)}catch(r){return"[UnexpectedJSONParseError]: "+r.message}};function c(a){var r=this.useColors;if(a[0]=(r?"%c":"")+this.namespace+(r?" %c":" ")+a[0]+(r?"%c ":" ")+"+"+e.humanize(this.diff),!!r){var n="color: "+this.color;a.splice(1,0,n,"color: inherit");var s=0,d=0;a[0].replace(/%[a-zA-Z%]/g,function(i){i!=="%%"&&(s++,i==="%c"&&(d=s))}),a.splice(d,0,n)}}function f(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function v(a){try{a==null?e.storage.removeItem("debug"):e.storage.debug=a}catch{}}function g(){var a;try{a=e.storage.debug}catch{}return!a&&typeof process<"u"&&"env"in process&&(a=process.env.DEBUG),a}e.enable(g());function m(){try{return window.localStorage}catch{}}}(b,b.exports)),b.exports}var C={exports:{}},U;function Y(){return U||(U=1,function(o,e){var u=z,c=G;e=o.exports=R(),e.init=d,e.log=a,e.formatArgs=m,e.save=r,e.load=n,e.useColors=g,e.colors=[6,2,3,4,5,1],e.inspectOpts=Object.keys(process.env).filter(function(i){return/^debug_/i.test(i)}).reduce(function(i,t){var p=t.substring(6).toLowerCase().replace(/_([a-z])/g,function(w,y){return y.toUpperCase()}),l=process.env[t];return/^(yes|on|true|enabled)$/i.test(l)?l=!0:/^(no|off|false|disabled)$/i.test(l)?l=!1:l==="null"?l=null:l=Number(l),i[p]=l,i},{});var f=parseInt(process.env.DEBUG_FD,10)||2;f!==1&&f!==2&&c.deprecate(function(){},"except for stderr(2) and stdout(1), any other usage of DEBUG_FD is deprecated. Override debug.log if you want to use a different log function (https://git.io/debug_fd)")();var v=f===1?process.stdout:f===2?process.stderr:s(f);function g(){return"colors"in e.inspectOpts?!!e.inspectOpts.colors:u.isatty(f)}e.formatters.o=function(i){return this.inspectOpts.colors=this.useColors,c.inspect(i,this.inspectOpts).split(` `).map(function(t){return t.trim()}).join(" ")},e.formatters.O=function(i){return this.inspectOpts.colors=this.useColors,c.inspect(i,this.inspectOpts)};function m(i){var t=this.namespace,p=this.useColors;if(p){var l=this.color,w=" \x1B[3"+l+";1m"+t+" \x1B[0m";i[0]=w+i[0].split(` `).join(` `+w),i.push("\x1B[3"+l+"m+"+e.humanize(this.diff)+"\x1B[0m")}else i[0]=new Date().toUTCString()+" "+t+" "+i[0]}function a(){return v.write(c.format.apply(c,arguments)+` -`)}function r(i){i==null?delete process.env.DEBUG:process.env.DEBUG=i}function n(){return process.env.DEBUG}function o(i){var t,p=process.binding("tty_wrap");switch(p.guessHandleType(i)){case"TTY":t=new u.WriteStream(i),t._type="tty",t._handle&&t._handle.unref&&t._handle.unref();break;case"FILE":var l=I;t=new l.SyncWriteStream(i,{autoClose:!1}),t._type="fs";break;case"PIPE":case"TCP":var w=J;t=new w.Socket({fd:i,readable:!1,writable:!0}),t.readable=!1,t.read=null,t._type="pipe",t._handle&&t._handle.unref&&t._handle.unref();break;default:throw new Error("Implement me. Unknown stream file type!")}return t.fd=i,t._isStdio=!0,t}function d(i){i.inspectOpts={};for(var t=Object.keys(e.inspectOpts),p=0;p{c({pid:s,tid:e,vid:u,value:0})})},set(s,e,u,c){return new Promise((f,v)=>{f({pid:s,tid:e,vid:u,value:c})})},onValueReceived(s){}};ee&&h.app.quit();const N=()=>{const s=new h.BrowserWindow({width:1100,height:912,webPreferences:{preload:P.join(__dirname,"preload.js")}});return s.loadURL("http://localhost:5173"),s.webContents.openDevTools(),s};h.app.whenReady().then(()=>{h.ipcMain.handle("nanodevices:list",E.list),h.ipcMain.handle("nanodevices:connect",E.connect),h.ipcMain.handle("nanodevices:disconnect",E.disconnect),h.ipcMain.handle("nano:get",B.get),h.ipcMain.handle("nano:set",B.set),N()});h.app.on("window-all-closed",()=>{process.platform!=="darwin"&&h.app.quit()});h.app.on("activate",()=>{h.BrowserWindow.getAllWindows().length===0&&N()}); +`)}function r(i){i==null?delete process.env.DEBUG:process.env.DEBUG=i}function n(){return process.env.DEBUG}function s(i){var t,p=process.binding("tty_wrap");switch(p.guessHandleType(i)){case"TTY":t=new u.WriteStream(i),t._type="tty",t._handle&&t._handle.unref&&t._handle.unref();break;case"FILE":var l=I;t=new l.SyncWriteStream(i,{autoClose:!1}),t._type="fs";break;case"PIPE":case"TCP":var w=J;t=new w.Socket({fd:i,readable:!1,writable:!0}),t.readable=!1,t.read=null,t._type="pipe",t._handle&&t._handle.unref&&t._handle.unref();break;default:throw new Error("Implement me. Unknown stream file type!")}return t.fd=i,t._isStdio=!0,t}function d(i){i.inspectOpts={};for(var t=Object.keys(e.inspectOpts),p=0;p{c({pid:o,tid:e,vid:u,value:0})})},set(o,e,u,c){return new Promise((f,v)=>{f({pid:o,tid:e,vid:u,value:c})})},onValueReceived(o){}};ee&&h.app.quit();const N=()=>{const o=new h.BrowserWindow({width:1100,height:912,icon:O.join(__dirname,"../renderer/main_window/assets/favicon.png"),webPreferences:{preload:O.join(__dirname,"preload.js")}});return o.loadURL("http://localhost:5173"),o.webContents.openDevTools(),o};h.app.whenReady().then(()=>{h.ipcMain.handle("nanodevices:list",E.list),h.ipcMain.handle("nanodevices:connect",E.connect),h.ipcMain.handle("nanodevices:disconnect",E.disconnect),h.ipcMain.handle("nano:get",P.get),h.ipcMain.handle("nano:set",P.set),N()});h.app.on("window-all-closed",()=>{process.platform!=="darwin"&&h.app.quit()});h.app.on("activate",()=>{h.BrowserWindow.getAllWindows().length===0&&N()}); diff --git a/forge.config.js b/forge.config.js index 0440335..8da903b 100644 --- a/forge.config.js +++ b/forge.config.js @@ -1,5 +1,7 @@ module.exports = { - packagerConfig: {}, + packagerConfig: { + icon: 'src/assets/favicon', + }, rebuildConfig: {}, makers: [ { diff --git a/index.html b/index.html index 0c5a23e..c7b268a 100644 --- a/index.html +++ b/index.html @@ -2,9 +2,9 @@ - + - Zero-One : Haptic Configuration Tool + ZERO/ONE : Haptic Configuration Tool
diff --git a/src/assets/favicon.ico b/src/assets/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..74da50f047bf6c9588218a675a2efa63eb37833a GIT binary patch literal 205086 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 { @@ -16,64 +16,65 @@ const createWindow = () => { const mainWindow = new BrowserWindow({ width: 1100, height: 912, + icon: path.join(__dirname, '../renderer/main_window/assets/favicon.png'), webPreferences: { preload: path.join(__dirname, 'preload.js'), }, - }); + }) // and load the index.html of the app. if (MAIN_WINDOW_VITE_DEV_SERVER_URL) { - mainWindow.loadURL(MAIN_WINDOW_VITE_DEV_SERVER_URL); + mainWindow.loadURL(MAIN_WINDOW_VITE_DEV_SERVER_URL) } else { - mainWindow.loadFile(path.join(__dirname, `../renderer/${MAIN_WINDOW_VITE_NAME}/index.html`)); + mainWindow.loadFile(path.join(__dirname, `../renderer/${MAIN_WINDOW_VITE_NAME}/index.html`)) } // Open the DevTools. - mainWindow.webContents.openDevTools(); + mainWindow.webContents.openDevTools() - return mainWindow; -}; + return mainWindow +} // This method will be called when Electron has finished // initialization and is ready to create browser windows. // Some APIs can only be used after this event occurs. app.whenReady().then(() => { - ipcMain.handle('nanodevices:list', nanodevices.list); - ipcMain.handle('nanodevices:connect', nanodevices.connect); - ipcMain.handle('nanodevices:disconnect', nanodevices.disconnect); - ipcMain.handle('nano:get', nano.get); - ipcMain.handle('nano:set', nano.set); - const mainWindow = createWindow(); + ipcMain.handle('nanodevices:list', nanodevices.list) + ipcMain.handle('nanodevices:connect', nanodevices.connect) + ipcMain.handle('nanodevices:disconnect', nanodevices.disconnect) + ipcMain.handle('nano:get', nano.get) + ipcMain.handle('nano:set', nano.set) + const mainWindow = createWindow() nanodevices.onAttach((device) => { - console.log("Attached device", device); - mainWindow.webContents.send('nanodevice-attached', device); - }); + console.log('Attached device', device) + mainWindow.webContents.send('nanodevice-attached', device) + }) nanodevices.onDetach((device) => { - console.log("Detached device", device); - mainWindow.webContents.send('nanodevice-detached', device); - }); + console.log('Detached device', device) + mainWindow.webContents.send('nanodevice-detached', device) + }) nano.onValueReceived((value) => { - console.log("Value received", value); - mainWindow.webContents.send('nano-onvalue', value); - }); -}); + console.log('Value received', value) + mainWindow.webContents.send('nano-onvalue', value) + }) +}) // Quit when all windows are closed, except on macOS. There, it's common // for applications and their menu bar to stay active until the user quits // explicitly with Cmd + Q. app.on('window-all-closed', () => { if (process.platform !== 'darwin') { - app.quit(); + app.quit() } -}); +}) app.on('activate', () => { // On OS X it's common to re-create a window in the app when the // dock icon is clicked and there are no other windows open. if (BrowserWindow.getAllWindows().length === 0) { - createWindow(); + createWindow() } -}); +}) // In this file you can include the rest of your app's specific main process // code. You can also put them in separate files and import them here.