Signed-off-by: Daniel <845765@qq.com>
This commit is contained in:
Daniel 2025-12-09 12:09:23 +08:00
parent 444b38aa26
commit 00d00b54ef
No known key found for this signature in database
GPG key ID: 86211BA83DF03017
6 changed files with 24 additions and 23 deletions

View file

@ -280,20 +280,20 @@ export const kernelError = () => {
}
};
export const exitSiYuan = async () => {
export const exitSiYuan = async (setCurrentWorkspace = true) => {
hideAllElements(["util"]);
/// #if MOBILE
if (window.siyuan.mobile.editor) {
await saveScroll(window.siyuan.mobile.editor.protyle);
}
/// #endif
fetchPost("/api/system/exit", {force: false}, (response) => {
fetchPost("/api/system/exit", {force: false, setCurrentWorkspace}, (response) => {
if (response.code === 1) { // 同步执行失败
const msgId = showMessage(response.msg, response.data.closeTimeout, "error");
const buttonElement = document.querySelector(`#message [data-id="${msgId}"] button`);
if (buttonElement) {
buttonElement.addEventListener("click", () => {
fetchPost("/api/system/exit", {force: true}, () => {
fetchPost("/api/system/exit", {force: true, setCurrentWorkspace}, () => {
/// #if !BROWSER
ipcRenderer.send(Constants.SIYUAN_QUIT, location.port);
/// #else
@ -318,6 +318,7 @@ export const exitSiYuan = async () => {
confirmDialog(window.siyuan.languages.tip, response.msg, () => {
fetchPost("/api/system/exit", {
force: true,
setCurrentWorkspace,
execInstallPkg: 2 // 0默认检查新版本1不执行新版本安装2执行新版本安装
}, () => {
/// #if !BROWSER
@ -335,6 +336,7 @@ export const exitSiYuan = async () => {
}, () => {
fetchPost("/api/system/exit", {
force: true,
setCurrentWorkspace,
execInstallPkg: 1 // 0默认检查新版本1不执行新版本安装2执行新版本安装
}, () => {
/// #if !BROWSER

View file

@ -7,14 +7,7 @@ import {getOpenNotebookCount, originalPath, pathPosix, useShell} from "../util/p
import {fetchNewDailyNote, mountHelp, newDailyNote} from "../util/mount";
import {fetchPost} from "../util/fetch";
import {Constants} from "../constants";
import {
isInAndroid,
isInHarmony,
isInIOS,
isIPad,
setStorageVal,
writeText
} from "../protyle/util/compatibility";
import {isInAndroid, isInHarmony, isInIOS, isIPad, setStorageVal, writeText} from "../protyle/util/compatibility";
import {openCard} from "../card/openCard";
import {openSetting} from "../config";
import {getAllDocks} from "../layout/getAll";
@ -287,7 +280,7 @@ export const workspaceMenu = (app: App, rect: DOMRect) => {
fetchPost("/api/system/setWorkspaceDir", {
path: openPath
}, () => {
exitSiYuan();
exitSiYuan(false);
});
});
});
@ -317,7 +310,7 @@ export const workspaceMenu = (app: App, rect: DOMRect) => {
fetchPost("/api/system/setWorkspaceDir", {
path: item.path
}, () => {
exitSiYuan();
exitSiYuan(false);
});
});
});

View file

@ -358,7 +358,7 @@ export const initAbout = () => {
fetchPost("/api/system/setWorkspaceDir", {
path: openPath
}, () => {
exitSiYuan();
exitSiYuan(false);
});
});
});
@ -412,7 +412,7 @@ export const initAbout = () => {
fetchPost("/api/system/setWorkspaceDir", {
path: target.getAttribute("data-path")
}, () => {
exitSiYuan();
exitSiYuan(false);
});
});
event.preventDefault();