@@ -13,6 +13,7 @@ let tray: Tray | null = null;
13
13
14
14
// Settings
15
15
let closeToTray = true ;
16
+ let forceQuit = false ; // Flag to indicate we're trying to actually quit
16
17
17
18
// Check if app is running in development mode
18
19
const args = process . argv . slice ( 1 ) ;
@@ -39,7 +40,10 @@ function createTray() {
39
40
win ?. setSkipTaskbar ( false ) ; // Show in taskbar
40
41
} } ,
41
42
{ type : 'separator' } ,
42
- { label : 'Quit' , click : ( ) => { app . quit ( ) ; } }
43
+ { label : 'Quit' , click : ( ) => {
44
+ forceQuit = true ; // Set flag to bypass close-to-tray
45
+ app . quit ( ) ;
46
+ } }
43
47
] ) ;
44
48
45
49
tray . setContextMenu ( contextMenu ) ;
@@ -316,10 +320,11 @@ function createWindow(): BrowserWindow {
316
320
317
321
// Close application
318
322
ipcMain . on ( 'close-app' , ( ) => {
319
- if ( closeToTray ) {
323
+ if ( closeToTray && ! forceQuit ) {
320
324
win ?. hide ( ) ;
321
- win ?. setSkipTaskbar ( true ) ;
325
+ win ?. setSkipTaskbar ( true ) ; // Hide from taskbar
322
326
} else {
327
+ forceQuit = true ; // Ensure we're really quitting
323
328
app . quit ( ) ;
324
329
}
325
330
} ) ;
@@ -369,10 +374,10 @@ function createWindow(): BrowserWindow {
369
374
370
375
// Listen for window close event
371
376
win . on ( 'close' , ( e ) => {
372
- if ( closeToTray ) {
377
+ if ( closeToTray && ! forceQuit ) {
373
378
e . preventDefault ( ) ;
374
379
win ?. hide ( ) ;
375
- win ?. setSkipTaskbar ( true ) ;
380
+ win ?. setSkipTaskbar ( true ) ; // Hide from taskbar
376
381
}
377
382
} ) ;
378
383
@@ -478,6 +483,11 @@ function getCPUName() {
478
483
try {
479
484
app . commandLine . appendSwitch ( 'class' , 'tensorblock-desktop' ) ;
480
485
486
+ // Set force quit flag when app is about to quit
487
+ app . on ( 'before-quit' , ( ) => {
488
+ forceQuit = true ;
489
+ } ) ;
490
+
481
491
// Initialize app when Electron is ready
482
492
// Added delay to fix black background issue with transparent windows
483
493
// See: https://github.com/electron/electron/issues/15947
0 commit comments