This commit is contained in:
parent
1d2a9c2d3a
commit
a5a9c15874
2 changed files with 17 additions and 7 deletions
|
@ -296,7 +296,6 @@ export const enter = (blockElement: HTMLElement, range: Range, protyle: IProtyle
|
|||
|
||||
const listEnter = (protyle: IProtyle, blockElement: HTMLElement, range: Range) => {
|
||||
const listItemElement = blockElement.parentElement;
|
||||
|
||||
const editableElement = getContenteditableElement(blockElement);
|
||||
if (// \n 是因为 https://github.com/siyuan-note/siyuan/issues/3846
|
||||
["", "\n"].includes(editableElement.textContent) &&
|
||||
|
@ -451,6 +450,10 @@ const listEnter = (protyle: IProtyle, blockElement: HTMLElement, range: Range) =
|
|||
!hasNextSibling(editableElement?.lastElementChild)) {
|
||||
editableElement.insertAdjacentText("beforeend", "\n");
|
||||
}
|
||||
// img 后有文字,在 img 后换行
|
||||
if (editableElement?.lastElementChild?.classList.contains("img") && !hasNextSibling(editableElement?.lastElementChild)) {
|
||||
editableElement.insertAdjacentText("beforeend", Constants.ZWSP);
|
||||
}
|
||||
getContenteditableElement(newElement).appendChild(selectNode);
|
||||
listItemElement.insertAdjacentElement("afterend", newElement);
|
||||
if (listItemElement.getAttribute("data-subtype") === "o") {
|
||||
|
|
|
@ -2400,12 +2400,19 @@ export class WYSIWYG {
|
|||
const imgElement = hasTopClosestByClassName(event.target, "img");
|
||||
if (!event.shiftKey && !ctrlIsPressed && imgElement) {
|
||||
imgElement.classList.add("img--select");
|
||||
range.setStartAfter(imgElement);
|
||||
range.collapse(true);
|
||||
focusByRange(range);
|
||||
// 需等待 range 更新再次进行渲染
|
||||
if (protyle.options.render.breadcrumb) {
|
||||
protyle.breadcrumb.render(protyle);
|
||||
const nextSibling = hasNextSibling(imgElement)
|
||||
if (nextSibling) {
|
||||
if (nextSibling.textContent.startsWith(Constants.ZWSP)) {
|
||||
range.setStart(nextSibling, 1);
|
||||
} else {
|
||||
range.setStart(nextSibling, 0);
|
||||
}
|
||||
range.collapse(true);
|
||||
focusByRange(range);
|
||||
// 需等待 range 更新再次进行渲染
|
||||
if (protyle.options.render.breadcrumb) {
|
||||
protyle.breadcrumb.render(protyle);
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue