mirror of
https://github.com/siyuan-note/siyuan.git
synced 2026-01-03 07:18:49 +01:00
This commit is contained in:
parent
bc016afea1
commit
b24641c62d
3 changed files with 56 additions and 17 deletions
|
|
@ -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}
|
|||
<svg class="b3-menu__icon"><use xlink:href="#iconQuit"></use></svg><span class="b3-menu__label">${window.siyuan.languages.safeQuit}</span>
|
||||
</div>
|
||||
<div class="b3-menu__separator"></div>
|
||||
<div class="b3-menu__item${window.siyuan.config.readonly ? " fn__none" : ""}" id="menuEditor">
|
||||
<svg class="b3-menu__icon"><use xlink:href="#iconEdit"></use></svg><span class="b3-menu__label">${window.siyuan.languages.editor}</span>
|
||||
</div>
|
||||
<div class="b3-menu__item${window.siyuan.config.readonly ? " fn__none" : ""}" id="menuRiffCard">
|
||||
<svg class="b3-menu__icon"><use xlink:href="#iconRiffCard"></use></svg><span class="b3-menu__label">${window.siyuan.languages.riffCard}</span>
|
||||
</div>
|
||||
|
|
@ -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();
|
||||
|
|
|
|||
|
|
@ -44,25 +44,8 @@ export const initAppearance = () => {
|
|||
<div class="fn__hr"></div>
|
||||
<select id="lang" class="b3-select fn__block">${genOptions(window.siyuan.config.langs, window.siyuan.config.appearance.lang)}</select>
|
||||
<div class="b3-label__text">${window.siyuan.languages.language1}</div>
|
||||
</div>
|
||||
<div class="b3-label">
|
||||
${window.siyuan.languages.fontSize} <span id="fontSize" class="ft__on-surface">${window.siyuan.config.editor.fontSize}px</span>
|
||||
<div class="fn__hr"></div>
|
||||
<input class="b3-slider fn__block" max="72" min="9" step="1" type="range" value="${window.siyuan.config.editor.fontSize}">
|
||||
<div class="b3-label__text">${window.siyuan.languages.fontSizeTip}</div>
|
||||
</div>`,
|
||||
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);
|
||||
|
|
|
|||
47
app/src/mobile/settings/editor.ts
Normal file
47
app/src/mobile/settings/editor.ts
Normal file
|
|
@ -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: `<div class="b3-label">
|
||||
${window.siyuan.languages.fontSize} <span id="fontSize" class="ft__on-surface">${window.siyuan.config.editor.fontSize}px</span>
|
||||
<div class="fn__hr"></div>
|
||||
<input class="b3-slider fn__block" max="72" min="9" step="1" type="range" value="${window.siyuan.config.editor.fontSize}">
|
||||
<div class="b3-label__text">${window.siyuan.languages.fontSizeTip}</div>
|
||||
</div>
|
||||
<div class="b3-label">
|
||||
${window.siyuan.languages.katexMacros}
|
||||
<div class="fn__hr"></div>
|
||||
<textarea class="b3-text-field fn__block" id="katexMacros">${window.siyuan.config.editor.katexMacros}</textarea>
|
||||
<div class="b3-label__text">${window.siyuan.languages.katexMacrosTip}</div>
|
||||
</div>`,
|
||||
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)
|
||||
});
|
||||
})
|
||||
}
|
||||
});
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue