mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-12-16 14:40:12 +01:00
This commit is contained in:
parent
c1e0b4ff60
commit
6b036fbe75
4 changed files with 15 additions and 10 deletions
|
|
@ -655,15 +655,20 @@ app.whenReady().then(() => {
|
|||
|
||||
resetTrayMenu(tray, lang, mainWindow);
|
||||
};
|
||||
|
||||
const getWindowByContentId = (id) => {
|
||||
return BrowserWindow.fromId(BrowserWindow.getAllWindows().find((win) => win.webContents.id === id).id)
|
||||
};
|
||||
ipcMain.on("siyuan-open-folder", (event, filePath) => {
|
||||
shell.showItemInFolder(filePath);
|
||||
});
|
||||
ipcMain.on("siyuan-first-quit", () => {
|
||||
app.exit();
|
||||
});
|
||||
ipcMain.on("siyuan-show", (event, id) => {
|
||||
showWindow(BrowserWindow.fromId(id));
|
||||
ipcMain.on("siyuan-show", (event) => {
|
||||
showWindow(getWindowByContentId(event.sender.id));
|
||||
});
|
||||
ipcMain.on("siyuan-hide", (event) => {
|
||||
getWindowByContentId(event.sender.id).hide();
|
||||
});
|
||||
ipcMain.on("siyuan-config-tray", (event, data) => {
|
||||
workspaces.find(item => {
|
||||
|
|
@ -686,7 +691,7 @@ app.whenReady().then(() => {
|
|||
return;
|
||||
}
|
||||
data.filePaths = result.filePaths;
|
||||
BrowserWindow.fromId(BrowserWindow.getAllWindows().find((win) => win.webContents.id === event.sender.id).id).getParentWindow().send("siyuan-export-pdf", data);
|
||||
getWindowByContentId(event.sender.id).getParentWindow().send("siyuan-export-pdf", data);
|
||||
});
|
||||
});
|
||||
ipcMain.on("siyuan-export-close", (event) => {
|
||||
|
|
@ -781,7 +786,7 @@ app.whenReady().then(() => {
|
|||
// 系统托盘
|
||||
tray = new Tray(path.join(appDir, "stage", "icon-large.png"));
|
||||
tray.setToolTip(`${path.basename(data.workspaceDir)} - SiYuan v${appVer}`);
|
||||
const mainWindow = BrowserWindow.fromId(BrowserWindow.getAllWindows().find((win) => win.webContents.id === event.sender.id).id);
|
||||
const mainWindow = getWindowByContentId(event.sender.id)
|
||||
resetTrayMenu(tray, data.languages, mainWindow);
|
||||
tray.on("click", () => {
|
||||
showHideWindow(tray, data.languages, mainWindow);
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
import {exportLayout, JSONToLayout, resetLayout, resizeTopbar, resizeTabs} from "../layout/util";
|
||||
import {setStorageVal} from "../protyle/util/compatibility";
|
||||
/// #if !BROWSER
|
||||
import {dialog, getCurrentWindow} from "@electron/remote";
|
||||
import {ipcRenderer, OpenDialogReturnValue, webFrame} from "electron";
|
||||
import {getCurrentWindow} from "@electron/remote";
|
||||
import {ipcRenderer, webFrame} from "electron";
|
||||
import * as fs from "fs";
|
||||
import * as path from "path";
|
||||
import {afterExport} from "../protyle/export/util";
|
||||
|
|
@ -282,7 +282,7 @@ export const initWindow = (app: App) => {
|
|||
action: [Constants.CB_GET_FOCUS, Constants.CB_GET_CONTEXT, Constants.CB_GET_ROOTSCROLL],
|
||||
zoomIn: focus,
|
||||
});
|
||||
ipcRenderer.send(Constants.SIYUAN_SHOW, getCurrentWindow().id);
|
||||
ipcRenderer.send(Constants.SIYUAN_SHOW);
|
||||
}
|
||||
app.plugins.forEach(plugin => {
|
||||
plugin.eventBus.emit("open-siyuan-url-block", {
|
||||
|
|
|
|||
|
|
@ -25,6 +25,7 @@ export abstract class Constants {
|
|||
|
||||
// 渲染进程调主进程
|
||||
public static readonly SIYUAN_SHOW: string = "siyuan-show";
|
||||
public static readonly SIYUAN_HIDE: string = "siyuan-hide";
|
||||
public static readonly SIYUAN_CONFIG_TRAY: string = "siyuan-config-tray";
|
||||
public static readonly SIYUAN_QUIT: string = "siyuan-quit";
|
||||
public static readonly SIYUAN_HOTKEY: string = "siyuan-hotkey";
|
||||
|
|
|
|||
|
|
@ -5,7 +5,6 @@ import {exportLayout} from "../layout/util";
|
|||
/// #endif
|
||||
/// #if !BROWSER
|
||||
import {ipcRenderer} from "electron";
|
||||
import {getCurrentWindow} from "@electron/remote";
|
||||
/// #endif
|
||||
import {hideMessage, showMessage} from "./message";
|
||||
import {Dialog} from "./index";
|
||||
|
|
@ -200,7 +199,7 @@ export const exitSiYuan = () => {
|
|||
// 桌面端退出拉起更新安装时有时需要重启两次 https://github.com/siyuan-note/siyuan/issues/6544
|
||||
// 这里先将主界面隐藏
|
||||
setTimeout(() => {
|
||||
getCurrentWindow().hide();
|
||||
ipcRenderer.send(Constants.SIYUAN_HIDE);
|
||||
}, 2000);
|
||||
// 然后等待一段时间后再退出,避免界面主进程退出以后内核子进程被杀死
|
||||
setTimeout(() => {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue