This commit is contained in:
Vanessa 2022-09-23 23:30:01 +08:00
parent 1034e71467
commit 3e4f6c5587
8 changed files with 14 additions and 16 deletions

View file

@ -481,7 +481,7 @@ export class Wnd {
this.switchTab(item, true); this.switchTab(item, true);
window.siyuan.menus.menu.remove(); window.siyuan.menus.menu.remove();
} }
event.preventDefault() event.preventDefault();
event.stopPropagation(); event.stopPropagation();
}); });
}, },

View file

@ -91,8 +91,8 @@ export class Title {
event.preventDefault(); event.preventDefault();
event.stopPropagation(); event.stopPropagation();
} else if (event.key === "Enter") { } else if (event.key === "Enter") {
const newId = Lute.NewNodeID() const newId = Lute.NewNodeID();
const newElement = genEmptyElement(false, true, newId) const newElement = genEmptyElement(false, true, newId);
protyle.wysiwyg.element.insertAdjacentElement("afterbegin", newElement); protyle.wysiwyg.element.insertAdjacentElement("afterbegin", newElement);
focusByWbr(newElement, protyle.toolbar.range || getEditorRange(newElement)); focusByWbr(newElement, protyle.toolbar.range || getEditorRange(newElement));
transaction(protyle, [{ transaction(protyle, [{

View file

@ -117,7 +117,7 @@ export const fontMenu = (protyle: IProtyle) => {
}); });
element.querySelector("select").addEventListener("change", function (event: Event) { element.querySelector("select").addEventListener("change", function (event: Event) {
fontEvent(protyle, "fontSize", (event.target as HTMLSelectElement).value); fontEvent(protyle, "fontSize", (event.target as HTMLSelectElement).value);
}) });
return element; return element;
}; };

View file

@ -54,7 +54,7 @@ export class InlineMath extends ToolbarItem {
} else { } else {
range.setStartAfter(newElement); range.setStartAfter(newElement);
range.collapse(true); range.collapse(true);
focusByRange(range) focusByRange(range);
nodeElement.setAttribute("updated", dayjs().format("YYYYMMDDHHmmss")); nodeElement.setAttribute("updated", dayjs().format("YYYYMMDDHHmmss"));
updateTransaction(protyle, nodeElement.getAttribute("data-node-id"), nodeElement.outerHTML, html); updateTransaction(protyle, nodeElement.getAttribute("data-node-id"), nodeElement.outerHTML, html);
wbrElement.remove(); wbrElement.remove();

View file

@ -1,6 +1,4 @@
import {ToolbarItem} from "./ToolbarItem"; import {ToolbarItem} from "./ToolbarItem";
import * as dayjs from "dayjs";
import {updateTransaction} from "../wysiwyg/transaction";
import {hasClosestBlock, hasClosestByAttribute} from "../util/hasClosest"; import {hasClosestBlock, hasClosestByAttribute} from "../util/hasClosest";
import {hasNextSibling, hasPreviousSibling} from "../wysiwyg/getBlock"; import {hasNextSibling, hasPreviousSibling} from "../wysiwyg/getBlock";
import {fixTableRange} from "../util/selection"; import {fixTableRange} from "../util/selection";

View file

@ -563,7 +563,7 @@ export class Toolbar {
</div></div>`; </div></div>`;
this.subElement.querySelector(".b3-button--cancel").addEventListener(getEventName(), () => { this.subElement.querySelector(".b3-button--cancel").addEventListener(getEventName(), () => {
refElement.outerHTML = refElement.textContent + "<wbr>"; refElement.outerHTML = refElement.textContent + "<wbr>";
hideElements(["util"], protyle) hideElements(["util"], protyle);
}); });
const anchorElement = this.subElement.querySelector('[data-type="anchor"]') as HTMLInputElement; const anchorElement = this.subElement.querySelector('[data-type="anchor"]') as HTMLInputElement;
anchorElement.value = refElement.textContent; anchorElement.value = refElement.textContent;
@ -581,7 +581,7 @@ export class Toolbar {
return; return;
} }
if (event.key === "Enter" || event.key === "Escape") { if (event.key === "Enter" || event.key === "Escape") {
hideElements(["util"], protyle) hideElements(["util"], protyle);
event.preventDefault(); event.preventDefault();
event.stopPropagation(); event.stopPropagation();
} }
@ -594,7 +594,7 @@ export class Toolbar {
} else { } else {
refElement.innerHTML = "*"; refElement.innerHTML = "*";
} }
this.range.setStartAfter(refElement) this.range.setStartAfter(refElement);
focusByRange(this.range); focusByRange(this.range);
} else { } else {
focusByWbr(nodeElement, this.range); focusByWbr(nodeElement, this.range);
@ -924,7 +924,7 @@ export class Toolbar {
processRender(renderElement); processRender(renderElement);
} else { } else {
inlineLastNode = renderElement; inlineLastNode = renderElement;
renderElement.outerHTML = "<wbr>" renderElement.outerHTML = "<wbr>";
} }
} else { } else {
renderElement.setAttribute("data-content", Lute.EscapeHTMLStr(textElement.value)); renderElement.setAttribute("data-content", Lute.EscapeHTMLStr(textElement.value));
@ -944,7 +944,7 @@ export class Toolbar {
this.range.collapse(true); this.range.collapse(true);
focusByRange(this.range); focusByRange(this.range);
} else { } else {
focusByWbr(nodeElement, this.range) focusByWbr(nodeElement, this.range);
} }
} else if (renderElement.parentElement) { } else if (renderElement.parentElement) {
this.range.setStartAfter(renderElement); this.range.setStartAfter(renderElement);
@ -966,7 +966,7 @@ export class Toolbar {
} }
} }
updateTransaction(protyle, id, newHTML, html); updateTransaction(protyle, id, newHTML, html);
} };
const nodeRect = renderElement.getBoundingClientRect(); const nodeRect = renderElement.getBoundingClientRect();
this.element.classList.add("fn__none"); this.element.classList.add("fn__none");
if (isPin) { if (isPin) {

View file

@ -522,8 +522,8 @@ export const focusBlock = (element: Element, parentElement?: HTMLElement, toStar
} }
} }
// 需要定位到第一个 child https://github.com/siyuan-note/siyuan/issues/5930 // 需要定位到第一个 child https://github.com/siyuan-note/siyuan/issues/5930
const range = setFirstNodeRange(cursorElement, getEditorRange(cursorElement)) const range = setFirstNodeRange(cursorElement, getEditorRange(cursorElement));
focusByRange(range) focusByRange(range);
return range; return range;
} else if (parentElement) { } else if (parentElement) {
parentElement.focus(); parentElement.focus();

View file

@ -297,7 +297,7 @@ export const removeBlock = (protyle: IProtyle, blockElement: Element, range: Ran
turnsIntoTransaction({ turnsIntoTransaction({
protyle: protyle, protyle: protyle,
selectsElement: [blockElement], selectsElement: [blockElement],
type: 'Blocks2Ps', type: "Blocks2Ps",
}); });
return; return;
} }