This commit is contained in:
parent
e3d2894a23
commit
2735e16d69
4 changed files with 27 additions and 13 deletions
|
@ -465,9 +465,6 @@ export class Backlink extends Model {
|
|||
if (!this.blockId) {
|
||||
return;
|
||||
}
|
||||
this.editors.forEach(item => {
|
||||
item.destroy();
|
||||
});
|
||||
const element = this.element.querySelector('.block__icon[data-type="refresh"] svg');
|
||||
element.classList.add("fn__rotate");
|
||||
fetchPost("/api/ref/refreshBacklink", {
|
||||
|
|
|
@ -41,6 +41,7 @@ import {focusBlock, getEditorRange} from "./util/selection";
|
|||
import {hasClosestBlock} from "./util/hasClosest";
|
||||
import {setStorageVal} from "./util/compatibility";
|
||||
import {merge} from "./util/merge";
|
||||
import {getAllModels} from "../layout/getAll";
|
||||
|
||||
export class Protyle {
|
||||
|
||||
|
@ -125,15 +126,24 @@ export class Protyle {
|
|||
}
|
||||
break;
|
||||
case "transactions":
|
||||
data.data[0].doOperations.forEach((item: IOperation) => {
|
||||
if (!this.protyle.preview.element.classList.contains("fn__none") &&
|
||||
item.action !== "updateAttrs" // 预览模式下点击只读
|
||||
) {
|
||||
this.protyle.preview.render(this.protyle);
|
||||
} else {
|
||||
onTransaction(this.protyle, item, false);
|
||||
}
|
||||
});
|
||||
if (options.backlinkData) {
|
||||
getAllModels().backlink.find(item => {
|
||||
if (item.element.contains(this.protyle.element)) {
|
||||
item.refresh();
|
||||
return true;
|
||||
}
|
||||
});
|
||||
} else {
|
||||
data.data[0].doOperations.forEach((item: IOperation) => {
|
||||
if (!this.protyle.preview.element.classList.contains("fn__none") &&
|
||||
item.action !== "updateAttrs" // 预览模式下点击只读
|
||||
) {
|
||||
this.protyle.preview.render(this.protyle);
|
||||
} else {
|
||||
onTransaction(this.protyle, item, false);
|
||||
}
|
||||
});
|
||||
}
|
||||
break;
|
||||
case "readonly":
|
||||
window.siyuan.config.editor.readOnly = data.data;
|
||||
|
|
|
@ -61,6 +61,13 @@ const moveToNew = (protyle: IProtyle, sourceElements: Element[], targetElement:
|
|||
topSourceElement = getTopAloneElement(item);
|
||||
if (topSourceElement.isSameNode(item)) {
|
||||
topSourceElement = undefined;
|
||||
// 单个缩放或反链面板中的列表项拖拽到包含该列表的编辑器中会导致残留的 list
|
||||
Array.from(protyle.wysiwyg.element.querySelectorAll(`[data-node-id="${item.getAttribute("data-node-id")}"]`)).find((targetItem: HTMLElement) => {
|
||||
if (!isInEmbedBlock(targetItem) && targetItem.parentElement.querySelectorAll(".li").length === 1) {
|
||||
topSourceElement = targetItem.parentElement;
|
||||
return true;
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
const copyId = Lute.NewNodeID();
|
||||
|
|
|
@ -74,7 +74,7 @@ export const getContenteditableElement = (element: Element) => {
|
|||
if (editableElement && !hasClosestByAttribute(editableElement, "data-type", "NodeBlockQueryEmbed")) {
|
||||
return editableElement;
|
||||
}
|
||||
return false;
|
||||
return undefined;
|
||||
};
|
||||
|
||||
export const isNotEditBlock = (element: Element) => {
|
||||
|
|
Loading…
Add table
Reference in a new issue