fix: tray icon not updating on mode change

This commit is contained in:
Memory 2025-08-25 11:39:27 +08:00 committed by GitHub
parent 941831728c
commit e75fb996c2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -120,6 +120,7 @@ export const buildContextMenu = async (): Promise<Menu> => {
mainWindow?.webContents.send('controledMihomoConfigUpdated') mainWindow?.webContents.send('controledMihomoConfigUpdated')
mainWindow?.webContents.send('groupsUpdated') mainWindow?.webContents.send('groupsUpdated')
ipcMain.emit('updateTrayMenu') ipcMain.emit('updateTrayMenu')
await updateTrayIcon()
} }
}, },
{ {
@ -134,6 +135,7 @@ export const buildContextMenu = async (): Promise<Menu> => {
mainWindow?.webContents.send('controledMihomoConfigUpdated') mainWindow?.webContents.send('controledMihomoConfigUpdated')
mainWindow?.webContents.send('groupsUpdated') mainWindow?.webContents.send('groupsUpdated')
ipcMain.emit('updateTrayMenu') ipcMain.emit('updateTrayMenu')
await updateTrayIcon()
} }
}, },
{ {
@ -148,6 +150,7 @@ export const buildContextMenu = async (): Promise<Menu> => {
mainWindow?.webContents.send('controledMihomoConfigUpdated') mainWindow?.webContents.send('controledMihomoConfigUpdated')
mainWindow?.webContents.send('groupsUpdated') mainWindow?.webContents.send('groupsUpdated')
ipcMain.emit('updateTrayMenu') ipcMain.emit('updateTrayMenu')
await updateTrayIcon()
} }
}, },
{ type: 'separator' }, { type: 'separator' },
@ -167,6 +170,7 @@ export const buildContextMenu = async (): Promise<Menu> => {
// ignore // ignore
} finally { } finally {
ipcMain.emit('updateTrayMenu') ipcMain.emit('updateTrayMenu')
await updateTrayIcon()
} }
} }
}, },
@ -219,6 +223,7 @@ export const buildContextMenu = async (): Promise<Menu> => {
// ignore // ignore
} finally { } finally {
ipcMain.emit('updateTrayMenu') ipcMain.emit('updateTrayMenu')
await updateTrayIcon()
} }
} }
}, },
@ -237,6 +242,7 @@ export const buildContextMenu = async (): Promise<Menu> => {
await changeCurrentProfile(item.id) await changeCurrentProfile(item.id)
mainWindow?.webContents.send('profileConfigUpdated') mainWindow?.webContents.send('profileConfigUpdated')
ipcMain.emit('updateTrayMenu') ipcMain.emit('updateTrayMenu')
await updateTrayIcon()
} }
} }
}) })
@ -381,7 +387,6 @@ async function updateTrayMenu(): Promise<void> {
if (process.platform === 'linux') { if (process.platform === 'linux') {
tray?.setContextMenu(menu) tray?.setContextMenu(menu)
} }
await updateTrayIcon()
} }
export async function copyEnv(type: 'bash' | 'cmd' | 'powershell'): Promise<void> { export async function copyEnv(type: 'bash' | 'cmd' | 'powershell'): Promise<void> {