mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-12-16 22:50:13 +01:00
This commit is contained in:
parent
544df28920
commit
0f294973ca
2 changed files with 28 additions and 1 deletions
|
|
@ -64,7 +64,7 @@ try {
|
||||||
app.exit();
|
app.exit();
|
||||||
}
|
}
|
||||||
|
|
||||||
const windowNavigate = (currentWindow) => {
|
const windowNavigate = (currentWindow) => {
|
||||||
currentWindow.webContents.on("will-navigate", (event) => {
|
currentWindow.webContents.on("will-navigate", (event) => {
|
||||||
const url = event.url;
|
const url = event.url;
|
||||||
if (url.startsWith(localServer)) {
|
if (url.startsWith(localServer)) {
|
||||||
|
|
@ -897,6 +897,9 @@ app.whenReady().then(() => {
|
||||||
}
|
}
|
||||||
currentWindow.destroy();
|
currentWindow.destroy();
|
||||||
break;
|
break;
|
||||||
|
case "writeLog":
|
||||||
|
writeLog(data.msg);
|
||||||
|
break;
|
||||||
case "closeButtonBehavior":
|
case "closeButtonBehavior":
|
||||||
if (!currentWindow) {
|
if (!currentWindow) {
|
||||||
return;
|
return;
|
||||||
|
|
|
||||||
|
|
@ -32,15 +32,27 @@ import {checkFold} from "../util/noRelyPCFunction";
|
||||||
const matchKeymap = (keymap: Config.IKeys, key1: "general" | "editor", key2?: "general" | "insert" | "heading" | "list" | "table") => {
|
const matchKeymap = (keymap: Config.IKeys, key1: "general" | "editor", key2?: "general" | "insert" | "heading" | "list" | "table") => {
|
||||||
if (key1 === "general") {
|
if (key1 === "general") {
|
||||||
if (!window.siyuan.config.keymap[key1]) {
|
if (!window.siyuan.config.keymap[key1]) {
|
||||||
|
ipcRenderer.send(Constants.SIYUAN_CMD, {
|
||||||
|
cmd: "writeLog",
|
||||||
|
msg: 'window.siyuan.config.keymap.general is not found'
|
||||||
|
});
|
||||||
window.siyuan.config.keymap[key1] = keymap as Config.IKeymapGeneral;
|
window.siyuan.config.keymap[key1] = keymap as Config.IKeymapGeneral;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (!window.siyuan.config.keymap[key1]) {
|
if (!window.siyuan.config.keymap[key1]) {
|
||||||
|
ipcRenderer.send(Constants.SIYUAN_CMD, {
|
||||||
|
cmd: "writeLog",
|
||||||
|
msg: 'window.siyuan.config.keymap.editor is not found'
|
||||||
|
});
|
||||||
window.siyuan.config.keymap[key1] = JSON.parse(JSON.stringify(Constants.SIYUAN_KEYMAP.editor));
|
window.siyuan.config.keymap[key1] = JSON.parse(JSON.stringify(Constants.SIYUAN_KEYMAP.editor));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (!window.siyuan.config.keymap[key1][key2]) {
|
if (!window.siyuan.config.keymap[key1][key2]) {
|
||||||
|
ipcRenderer.send(Constants.SIYUAN_CMD, {
|
||||||
|
cmd: "writeLog",
|
||||||
|
msg: `window.siyuan.config.keymap.editor.${key2} is not found`
|
||||||
|
});
|
||||||
(window.siyuan.config.keymap[key1][key2] as Config.IKeymapEditor[typeof key2]) = keymap as Config.IKeymapEditor[typeof key2];
|
(window.siyuan.config.keymap[key1][key2] as Config.IKeymapEditor[typeof key2]) = keymap as Config.IKeymapEditor[typeof key2];
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
@ -49,11 +61,19 @@ const matchKeymap = (keymap: Config.IKeys, key1: "general" | "editor", key2?: "g
|
||||||
Object.keys(keymap).forEach(key => {
|
Object.keys(keymap).forEach(key => {
|
||||||
if (key1 === "general") {
|
if (key1 === "general") {
|
||||||
if (!window.siyuan.config.keymap[key1][key] || window.siyuan.config.keymap[key1][key].default !== keymap[key].default) {
|
if (!window.siyuan.config.keymap[key1][key] || window.siyuan.config.keymap[key1][key].default !== keymap[key].default) {
|
||||||
|
ipcRenderer.send(Constants.SIYUAN_CMD, {
|
||||||
|
cmd: "writeLog",
|
||||||
|
msg: `window.siyuan.config.keymap.${key1}.${key} is not found or match: ${window.siyuan.config.keymap[key1][key]?.default}`
|
||||||
|
});
|
||||||
match = false;
|
match = false;
|
||||||
window.siyuan.config.keymap[key1][key] = keymap[key];
|
window.siyuan.config.keymap[key1][key] = keymap[key];
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (!window.siyuan.config.keymap[key1][key2][key] || window.siyuan.config.keymap[key1][key2][key].default !== keymap[key].default) {
|
if (!window.siyuan.config.keymap[key1][key2][key] || window.siyuan.config.keymap[key1][key2][key].default !== keymap[key].default) {
|
||||||
|
ipcRenderer.send(Constants.SIYUAN_CMD, {
|
||||||
|
cmd: "writeLog",
|
||||||
|
msg: `window.siyuan.config.keymap.${key1}.${key2}.${key} is not found or match: ${window.siyuan.config.keymap[key1][key2][key]?.default}`
|
||||||
|
});
|
||||||
match = false;
|
match = false;
|
||||||
window.siyuan.config.keymap[key1][key2][key] = keymap[key];
|
window.siyuan.config.keymap[key1][key2][key] = keymap[key];
|
||||||
}
|
}
|
||||||
|
|
@ -103,6 +123,10 @@ export const onGetConfig = (isStart: boolean, app: App) => {
|
||||||
if (!window.siyuan.config.readonly &&
|
if (!window.siyuan.config.readonly &&
|
||||||
(!matchKeymap1 || !matchKeymap2 || !matchKeymap3 || !matchKeymap4 || !matchKeymap5 || !matchKeymap6 ||
|
(!matchKeymap1 || !matchKeymap2 || !matchKeymap3 || !matchKeymap4 || !matchKeymap5 || !matchKeymap6 ||
|
||||||
!hasKeymap1 || !hasKeymap2 || !hasKeymap3 || !hasKeymap4 || !hasKeymap5 || !hasKeymap6)) {
|
!hasKeymap1 || !hasKeymap2 || !hasKeymap3 || !hasKeymap4 || !hasKeymap5 || !hasKeymap6)) {
|
||||||
|
ipcRenderer.send(Constants.SIYUAN_CMD, {
|
||||||
|
cmd: "writeLog",
|
||||||
|
msg: "update keymap"
|
||||||
|
});
|
||||||
fetchPost("/api/setting/setKeymap", {
|
fetchPost("/api/setting/setKeymap", {
|
||||||
data: window.siyuan.config.keymap
|
data: window.siyuan.config.keymap
|
||||||
}, () => {
|
}, () => {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue