diff --git a/app/src/mobile/menu/index.ts b/app/src/mobile/menu/index.ts index 344e2c88c..5836a829a 100644 --- a/app/src/mobile/menu/index.ts +++ b/app/src/mobile/menu/index.ts @@ -14,6 +14,7 @@ import {login, showAccountInfo} from "../settings/account"; import {openModel} from "./model"; import {initAbout} from "../settings/about"; import {getRecentDocs} from "./getRecentDocs"; +import {initEditor} from "../settings/editor"; export const popMenu = () => { activeBlur(); @@ -69,6 +70,9 @@ ${accountHTML} ${window.siyuan.languages.safeQuit}
+ @@ -127,6 +131,11 @@ ${accountHTML} event.preventDefault(); event.stopPropagation(); break; + } else if (target.id === "menuEditor") { + initEditor(); + event.preventDefault(); + event.stopPropagation(); + break; } else if (target.id === "menuSafeQuit") { exitSiYuan(); event.preventDefault(); diff --git a/app/src/mobile/settings/appearance.ts b/app/src/mobile/settings/appearance.ts index 13059270a..7224dd493 100644 --- a/app/src/mobile/settings/appearance.ts +++ b/app/src/mobile/settings/appearance.ts @@ -44,25 +44,8 @@ export const initAppearance = () => {
${window.siyuan.languages.language1}
- -
- ${window.siyuan.languages.fontSize} ${window.siyuan.config.editor.fontSize}px -
- -
${window.siyuan.languages.fontSizeTip}
`, bindEvent(modelMainElement: HTMLElement) { - modelMainElement.querySelector(".b3-slider").addEventListener("input", (event: InputEvent & { - target: HTMLInputElement - }) => { - modelMainElement.querySelector("#fontSize").textContent = event.target.value + "px"; - window.siyuan.config.editor.fontSize = parseInt(event.target.value); - fetchPost("/api/setting/setEditor", window.siyuan.config.editor, (response) => { - window.siyuan.config.editor = response.data; - reloadProtyle(window.siyuan.mobile.editor.protyle); - setInlineStyle(); - }); - }); modelMainElement.querySelectorAll("select").forEach(item => { item.addEventListener("change", () => { const modeElementValue = parseInt((modelMainElement.querySelector("#mode") as HTMLSelectElement).value); diff --git a/app/src/mobile/settings/editor.ts b/app/src/mobile/settings/editor.ts new file mode 100644 index 000000000..2b651d00d --- /dev/null +++ b/app/src/mobile/settings/editor.ts @@ -0,0 +1,47 @@ +import {openModel} from "../menu/model"; +import {fetchPost} from "../../util/fetch"; +import {reloadProtyle} from "../../protyle/util/reload"; +import {setInlineStyle} from "../../util/assets"; + +const reloadEditor = (data: IEditor) => { + window.siyuan.config.editor = data; + reloadProtyle(window.siyuan.mobile.editor.protyle); + setInlineStyle(); +} + +export const initEditor = () => { + openModel({ + title: window.siyuan.languages.riffCard, + icon: "iconRiffCard", + html: `
+ ${window.siyuan.languages.fontSize} ${window.siyuan.config.editor.fontSize}px +
+ +
${window.siyuan.languages.fontSizeTip}
+
+
+ ${window.siyuan.languages.katexMacros} +
+ +
${window.siyuan.languages.katexMacrosTip}
+
`, + bindEvent(modelMainElement: HTMLElement) { + modelMainElement.querySelector(".b3-slider").addEventListener("input", (event: InputEvent & { + target: HTMLInputElement + }) => { + modelMainElement.querySelector("#fontSize").textContent = event.target.value + "px"; + window.siyuan.config.editor.fontSize = parseInt(event.target.value); + fetchPost("/api/setting/setEditor", window.siyuan.config.editor, (response) => { + reloadEditor(response.data) + }); + }); + const katexMacrosElement = modelMainElement.querySelector("#katexMacros") as HTMLTextAreaElement; + katexMacrosElement.addEventListener("blur", () => { + window.siyuan.config.editor.katexMacros = katexMacrosElement.value; + fetchPost("/api/setting/setEditor", window.siyuan.config.editor, (response) => { + reloadEditor(response.data) + }); + }) + } + }); +};