mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-12-21 17:10:12 +01:00
This commit is contained in:
parent
c1d2259eac
commit
9d1c83ce37
7 changed files with 63 additions and 48 deletions
|
|
@ -17,6 +17,9 @@ import {getWorkspaceName} from "../util/noRelyPCFunction";
|
|||
import {needSubscribe} from "../util/needSubscribe";
|
||||
|
||||
export const lockScreen = () => {
|
||||
if (window.siyuan.config.readonly) {
|
||||
return
|
||||
}
|
||||
/// #if BROWSER
|
||||
fetchPost("/api/system/logoutAuth", {}, () => {
|
||||
window.location.href = `/check-auth?url=${window.location.href}`;
|
||||
|
|
|
|||
|
|
@ -214,6 +214,9 @@ const renderRmNotebook = (element: HTMLElement) => {
|
|||
};
|
||||
|
||||
export const openHistory = () => {
|
||||
if (window.siyuan.config.readonly) {
|
||||
return;
|
||||
}
|
||||
const exitDialog = window.siyuan.dialogs.find((item) => {
|
||||
if (item.element.querySelector("#historyContainer")) {
|
||||
item.destroy();
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ export const initBar = () => {
|
|||
<span class="toolbar__text">${getWorkspaceName()}</span>
|
||||
<svg class="toolbar__svg"><use xlink:href="#iconDown"></use></svg>
|
||||
</div>
|
||||
<div id="barSync" class="toolbar__item b3-tooltips b3-tooltips__se" aria-label="${window.siyuan.config.sync.stat || (window.siyuan.languages.syncNow + " " + updateHotkeyTip(window.siyuan.config.keymap.general.syncNow.custom))}">
|
||||
<div id="barSync" class="toolbar__item b3-tooltips b3-tooltips__se${window.siyuan.config.readonly ? " fn__none" : ""}" aria-label="${window.siyuan.config.sync.stat || (window.siyuan.languages.syncNow + " " + updateHotkeyTip(window.siyuan.config.keymap.general.syncNow.custom))}">
|
||||
<svg><use xlink:href="#iconCloudSucc"></use></svg>
|
||||
</div>
|
||||
<button id="barBack" data-menu="true" class="toolbar__item toolbar__item--disabled b3-tooltips b3-tooltips__se" aria-label="${window.siyuan.languages.goBack} ${updateHotkeyTip(window.siyuan.config.keymap.general.goBack.custom)}">
|
||||
|
|
@ -40,14 +40,14 @@ export const initBar = () => {
|
|||
<svg><use xlink:href="#iconForward"></use></svg>
|
||||
</button>
|
||||
<div class="fn__flex-1 fn__ellipsis" id="drag"><span class="fn__none">开发版,使用前请进行备份 Development version, please backup before use</span></div>
|
||||
<div id="toolbarVIP" class="fn__flex"></div>
|
||||
<div id="toolbarVIP" class="fn__flex${window.siyuan.config.readonly ? " fn__none" : ""}"></div>
|
||||
<div id="barSearch" class="toolbar__item b3-tooltips b3-tooltips__sw" aria-label="${window.siyuan.languages.globalSearch} ${updateHotkeyTip(window.siyuan.config.keymap.general.globalSearch.custom)}">
|
||||
<svg><use xlink:href="#iconSearch"></use></svg>
|
||||
</div>
|
||||
<div id="barReadonly" class="toolbar__item b3-tooltips b3-tooltips__sw${window.siyuan.config.editor.readOnly ? " toolbar__item--active" : ""}" aria-label="${window.siyuan.languages.use} ${window.siyuan.config.editor.readOnly ? window.siyuan.languages.editMode : window.siyuan.languages.editReadonly} ${updateHotkeyTip(window.siyuan.config.keymap.general.editMode.custom)}">
|
||||
<div id="barReadonly" class="toolbar__item b3-tooltips b3-tooltips__sw${window.siyuan.config.readonly ? " fn__none" : ""}${window.siyuan.config.editor.readOnly ? " toolbar__item--active" : ""}" aria-label="${window.siyuan.languages.use} ${window.siyuan.config.editor.readOnly ? window.siyuan.languages.editMode : window.siyuan.languages.editReadonly} ${updateHotkeyTip(window.siyuan.config.keymap.general.editMode.custom)}">
|
||||
<svg><use xlink:href="#icon${window.siyuan.config.editor.readOnly ? "Preview" : "Edit"}"></use></svg>
|
||||
</div>
|
||||
<div id="barMode" class="toolbar__item b3-tooltips b3-tooltips__sw" aria-label="${window.siyuan.languages.appearanceMode}">
|
||||
<div id="barMode" class="toolbar__item b3-tooltips b3-tooltips__sw${window.siyuan.config.readonly ? " fn__none" : ""}" aria-label="${window.siyuan.languages.appearanceMode}">
|
||||
<svg><use xlink:href="#icon${window.siyuan.config.appearance.modeOS ? "Mode" : (window.siyuan.config.appearance.mode === 0 ? "Light" : "Dark")}"></use></svg>
|
||||
</div>
|
||||
<div class="fn__flex" id="windowControls"></div>`;
|
||||
|
|
@ -112,8 +112,10 @@ export const initBar = () => {
|
|||
event.stopPropagation();
|
||||
break;
|
||||
} else if (target.id === "toolbarVIP") {
|
||||
const dialogSetting = openSetting();
|
||||
dialogSetting.element.querySelector('.b3-tab-bar [data-name="account"]').dispatchEvent(new CustomEvent("click"));
|
||||
if (!window.siyuan.config.readonly) {
|
||||
const dialogSetting = openSetting();
|
||||
dialogSetting.element.querySelector('.b3-tab-bar [data-name="account"]').dispatchEvent(new CustomEvent("click"));
|
||||
}
|
||||
event.stopPropagation();
|
||||
break;
|
||||
} else if (target.id === "barSearch") {
|
||||
|
|
|
|||
|
|
@ -74,30 +74,32 @@ export const workspaceMenu = (rect: DOMRect) => {
|
|||
submenu: dockMenu
|
||||
}).element);
|
||||
/// #if !BROWSER
|
||||
const workspaceSubMenu: IMenu[] = [{
|
||||
label: window.siyuan.languages.openBy + "...",
|
||||
iconHTML: Constants.ZWSP,
|
||||
click: async () => {
|
||||
const localPath = await dialog.showOpenDialog({
|
||||
defaultPath: window.siyuan.config.system.homeDir,
|
||||
properties: ["openDirectory", "createDirectory"],
|
||||
});
|
||||
if (localPath.filePaths.length === 0) {
|
||||
return;
|
||||
if (!window.siyuan.config.readonly) {
|
||||
const workspaceSubMenu: IMenu[] = [{
|
||||
label: window.siyuan.languages.openBy + "...",
|
||||
iconHTML: Constants.ZWSP,
|
||||
click: async () => {
|
||||
const localPath = await dialog.showOpenDialog({
|
||||
defaultPath: window.siyuan.config.system.homeDir,
|
||||
properties: ["openDirectory", "createDirectory"],
|
||||
});
|
||||
if (localPath.filePaths.length === 0) {
|
||||
return;
|
||||
}
|
||||
openWorkspace(localPath.filePaths[0]);
|
||||
}
|
||||
openWorkspace(localPath.filePaths[0]);
|
||||
}
|
||||
}];
|
||||
workspaceSubMenu.push({type: "separator"});
|
||||
response.data.forEach((item: IWorkspace) => {
|
||||
workspaceSubMenu.push(workspaceItem(item) as IMenu);
|
||||
});
|
||||
window.siyuan.menus.menu.append(new MenuItem({
|
||||
label: window.siyuan.languages.workspaceList,
|
||||
icon: "iconWorkspace",
|
||||
type: "submenu",
|
||||
submenu: workspaceSubMenu,
|
||||
}).element);
|
||||
}];
|
||||
workspaceSubMenu.push({type: "separator"});
|
||||
response.data.forEach((item: IWorkspace) => {
|
||||
workspaceSubMenu.push(workspaceItem(item) as IMenu);
|
||||
});
|
||||
window.siyuan.menus.menu.append(new MenuItem({
|
||||
label: window.siyuan.languages.workspaceList,
|
||||
icon: "iconWorkspace",
|
||||
type: "submenu",
|
||||
submenu: workspaceSubMenu,
|
||||
}).element);
|
||||
}
|
||||
/// #endif
|
||||
window.siyuan.menus.menu.append(new MenuItem({type: "separator"}).element);
|
||||
if (!window.siyuan.config.readonly) {
|
||||
|
|
@ -155,24 +157,24 @@ export const workspaceMenu = (rect: DOMRect) => {
|
|||
}
|
||||
}],
|
||||
}).element);
|
||||
window.siyuan.menus.menu.append(new MenuItem({
|
||||
label: window.siyuan.languages.lockScreen,
|
||||
icon: "iconLock",
|
||||
accelerator: window.siyuan.config.keymap.general.lockScreen.custom,
|
||||
click: () => {
|
||||
lockScreen();
|
||||
}
|
||||
}).element);
|
||||
window.siyuan.menus.menu.append(new MenuItem({
|
||||
label: window.siyuan.languages.dataHistory,
|
||||
icon: "iconHistory",
|
||||
accelerator: window.siyuan.config.keymap.general.dataHistory.custom,
|
||||
click: () => {
|
||||
openHistory();
|
||||
}
|
||||
}).element);
|
||||
window.siyuan.menus.menu.append(new MenuItem({type: "separator"}).element);
|
||||
}
|
||||
window.siyuan.menus.menu.append(new MenuItem({
|
||||
label: window.siyuan.languages.lockScreen,
|
||||
icon: "iconLock",
|
||||
accelerator: window.siyuan.config.keymap.general.lockScreen.custom,
|
||||
click: () => {
|
||||
lockScreen();
|
||||
}
|
||||
}).element);
|
||||
window.siyuan.menus.menu.append(new MenuItem({
|
||||
label: window.siyuan.languages.dataHistory,
|
||||
icon: "iconHistory",
|
||||
accelerator: window.siyuan.config.keymap.general.dataHistory.custom,
|
||||
click: () => {
|
||||
openHistory();
|
||||
}
|
||||
}).element);
|
||||
window.siyuan.menus.menu.append(new MenuItem({type: "separator"}).element);
|
||||
window.siyuan.menus.menu.append(new MenuItem({
|
||||
label: window.siyuan.languages.help,
|
||||
icon: "iconHelp",
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ import {blockRender} from "../markdown/blockRender";
|
|||
import {disabledForeverProtyle, disabledProtyle, enableProtyle} from "../util/onGet";
|
||||
|
||||
export const saveScroll = (protyle: IProtyle, getObject = false) => {
|
||||
if (!protyle.wysiwyg.element.firstElementChild) {
|
||||
if (!protyle.wysiwyg.element.firstElementChild || window.siyuan.config.readonly) {
|
||||
// 报错或者空白页面
|
||||
return undefined;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -113,6 +113,9 @@ export const getSyncCloudList = (cloudPanelElement: Element, reload = false, cb?
|
|||
};
|
||||
|
||||
export const syncGuide = (element?: Element) => {
|
||||
if (window.siyuan.config.readonly) {
|
||||
return;
|
||||
}
|
||||
if (element && element.classList.contains("toolbar__item--active")) {
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -589,7 +589,9 @@ export const globalShortcut = () => {
|
|||
return;
|
||||
}
|
||||
if (!isTabWindow && matchHotKey(window.siyuan.config.keymap.general.dataHistory.custom, event)) {
|
||||
openHistory();
|
||||
if (!window.siyuan.config.readonly) {
|
||||
openHistory();
|
||||
}
|
||||
event.preventDefault();
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue