refs #267 Update application menu and tray menu when remove accounts

This commit is contained in:
AkiraFukushima 2021-04-06 23:09:04 +09:00
parent 049c4dd8e2
commit bd374e4968
1 changed files with 31 additions and 0 deletions

View File

@ -510,6 +510,22 @@ ipcMain.handle('update-account', async (_: IpcMainInvokeEvent, acct: LocalAccoun
ipcMain.handle('remove-account', async (_: IpcMainInvokeEvent, id: string) => {
const accountId = await accountManager.removeAccount(id)
const accounts = await listAccounts()
const accountsChange: Array<MenuItemConstructorOptions> = accounts.map((a, index) => {
return {
label: a.domain,
accelerator: `CmdOrCtrl+${index + 1}`,
click: () => changeAccount(a, index)
}
})
await updateApplicationMenu(accountsChange)
await updateDockMenu(accountsChange)
if (process.platform !== 'darwin' && tray !== null) {
tray.setContextMenu(TrayMenu(accountsChange, i18next))
}
stopUserStreaming(accountId)
})
@ -530,6 +546,21 @@ ipcMain.handle('refresh-accounts', async (_: IpcMainInvokeEvent) => {
ipcMain.handle('remove-all-accounts', async (_: IpcMainInvokeEvent) => {
await accountManager.removeAll()
const accounts = await listAccounts()
const accountsChange: Array<MenuItemConstructorOptions> = accounts.map((a, index) => {
return {
label: a.domain,
accelerator: `CmdOrCtrl+${index + 1}`,
click: () => changeAccount(a, index)
}
})
await updateApplicationMenu(accountsChange)
await updateDockMenu(accountsChange)
if (process.platform !== 'darwin' && tray !== null) {
tray.setContextMenu(TrayMenu(accountsChange, i18next))
}
})
ipcMain.handle('change-auto-launch', async (_: IpcMainInvokeEvent, enable: boolean) => {