diff --git a/app/electron/main.js b/app/electron/main.js index fb15535d4..8331f3dac 100644 --- a/app/electron/main.js +++ b/app/electron/main.js @@ -655,8 +655,16 @@ app.whenReady().then(() => { ipcMain.on('siyuan-config-theme', (event, theme) => { nativeTheme.themeSource = theme }) - ipcMain.on('siyuan-config-tray', (event, id) => { - BrowserWindow.fromId(id).hide() + ipcMain.on('siyuan-config-tray', (event, data) => { + workspaces.find(item => { + if (item.id === data.id) { + item.browserWindow.hide() + if ('win32' === process.platform || 'linux' === process.platform) { + resetTrayMenu(item.tray, data.languages, item.browserWindow) + } + return true + } + }) }) ipcMain.on('siyuan-export-pdf', (event, data) => { BrowserWindow.fromId(data.id).webContents.send('siyuan-export-pdf', data) diff --git a/app/src/util/onGetConfig.ts b/app/src/util/onGetConfig.ts index 0c66afd09..9737388e1 100644 --- a/app/src/util/onGetConfig.ts +++ b/app/src/util/onGetConfig.ts @@ -343,7 +343,10 @@ const winOnClose = (currentWindow: Electron.BrowserWindow, close = false) => { if (window.siyuan.config.appearance.closeButtonBehavior === 1 && !close) { // 最小化 if ("windows" === window.siyuan.config.system.os) { - ipcRenderer.send(Constants.SIYUAN_CONFIG_TRAY, getCurrentWindow().id); + ipcRenderer.send(Constants.SIYUAN_CONFIG_TRAY, { + id: getCurrentWindow().id, + languages: window.siyuan.languages["_trayMenu"], + }); } else { if (currentWindow.isFullScreen()) { currentWindow.once("leave-full-screen", () => currentWindow.hide());