Update onGetConfig.ts (#11195)
This commit is contained in:
parent
de7a776b65
commit
a3af25263b
1 changed files with 12 additions and 0 deletions
|
@ -32,27 +32,33 @@ import {checkFold} from "../util/noRelyPCFunction";
|
|||
const matchKeymap = (keymap: Config.IKeys, key1: "general" | "editor", key2?: "general" | "insert" | "heading" | "list" | "table") => {
|
||||
if (key1 === "general") {
|
||||
if (!window.siyuan.config.keymap[key1]) {
|
||||
/// #if !BROWSER
|
||||
ipcRenderer.send(Constants.SIYUAN_CMD, {
|
||||
cmd: "writeLog",
|
||||
msg: "window.siyuan.config.keymap.general is not found"
|
||||
});
|
||||
/// #endif
|
||||
window.siyuan.config.keymap[key1] = keymap as Config.IKeymapGeneral;
|
||||
return false;
|
||||
}
|
||||
} else {
|
||||
if (!window.siyuan.config.keymap[key1]) {
|
||||
/// #if !BROWSER
|
||||
ipcRenderer.send(Constants.SIYUAN_CMD, {
|
||||
cmd: "writeLog",
|
||||
msg: "window.siyuan.config.keymap.editor is not found"
|
||||
});
|
||||
/// #endif
|
||||
window.siyuan.config.keymap[key1] = JSON.parse(JSON.stringify(Constants.SIYUAN_KEYMAP.editor));
|
||||
return false;
|
||||
}
|
||||
if (!window.siyuan.config.keymap[key1][key2]) {
|
||||
/// #if !BROWSER
|
||||
ipcRenderer.send(Constants.SIYUAN_CMD, {
|
||||
cmd: "writeLog",
|
||||
msg: `window.siyuan.config.keymap.editor.${key2} is not found`
|
||||
});
|
||||
/// #endif
|
||||
(window.siyuan.config.keymap[key1][key2] as Config.IKeymapEditor[typeof key2]) = keymap as Config.IKeymapEditor[typeof key2];
|
||||
return false;
|
||||
}
|
||||
|
@ -61,19 +67,23 @@ const matchKeymap = (keymap: Config.IKeys, key1: "general" | "editor", key2?: "g
|
|||
Object.keys(keymap).forEach(key => {
|
||||
if (key1 === "general") {
|
||||
if (!window.siyuan.config.keymap[key1][key] || window.siyuan.config.keymap[key1][key].default !== keymap[key].default) {
|
||||
/// #if !BROWSER
|
||||
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}`
|
||||
});
|
||||
/// #endif
|
||||
match = false;
|
||||
window.siyuan.config.keymap[key1][key] = keymap[key];
|
||||
}
|
||||
} else {
|
||||
if (!window.siyuan.config.keymap[key1][key2][key] || window.siyuan.config.keymap[key1][key2][key].default !== keymap[key].default) {
|
||||
/// #if !BROWSER
|
||||
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}`
|
||||
});
|
||||
/// #endif
|
||||
match = false;
|
||||
window.siyuan.config.keymap[key1][key2][key] = keymap[key];
|
||||
}
|
||||
|
@ -123,10 +133,12 @@ export const onGetConfig = (isStart: boolean, app: App) => {
|
|||
if (!window.siyuan.config.readonly &&
|
||||
(!matchKeymap1 || !matchKeymap2 || !matchKeymap3 || !matchKeymap4 || !matchKeymap5 || !matchKeymap6 ||
|
||||
!hasKeymap1 || !hasKeymap2 || !hasKeymap3 || !hasKeymap4 || !hasKeymap5 || !hasKeymap6)) {
|
||||
/// #if !BROWSER
|
||||
ipcRenderer.send(Constants.SIYUAN_CMD, {
|
||||
cmd: "writeLog",
|
||||
msg: "update keymap"
|
||||
});
|
||||
/// #endif
|
||||
fetchPost("/api/setting/setKeymap", {
|
||||
data: window.siyuan.config.keymap
|
||||
}, () => {
|
||||
|
|
Loading…
Add table
Reference in a new issue