Signed-off-by: Daniel <845765@qq.com>
This commit is contained in:
Daniel 2025-10-04 16:30:58 +08:00
parent 260c35fc94
commit d84538da74
No known key found for this signature in database
GPG key ID: 86211BA83DF03017

View file

@ -1528,12 +1528,12 @@ func (tx *Transaction) doUpdate(operation *Operation) (ret *TxErr) {
// 将不属于折叠标题的块移动到折叠标题下方,需要展开折叠标题
needUnfoldParentHeading := 0 < oldNode.HeadingLevel && (0 == updatedNode.HeadingLevel || oldNode.HeadingLevel < updatedNode.HeadingLevel)
parentFoldedHeading := treenode.GetParentFoldedHeading(oldNode)
oldParentFoldedHeading := treenode.GetParentFoldedHeading(oldNode)
// 将原先折叠标题下的块提升为与折叠标题同级或更高一级的标题时,需要在折叠标题后插入该提升后的标题块(只需要推送界面插入)
if needInsertAfterParentHeading := nil != parentFoldedHeading && 0 != updatedNode.HeadingLevel && updatedNode.HeadingLevel <= parentFoldedHeading.HeadingLevel; needInsertAfterParentHeading {
if needInsertAfterParentHeading := nil != oldParentFoldedHeading && 0 != updatedNode.HeadingLevel && updatedNode.HeadingLevel <= oldParentFoldedHeading.HeadingLevel; needInsertAfterParentHeading {
evt := util.NewCmdResult("transactions", 0, util.PushModeBroadcast)
evt.Data = []*Transaction{{
DoOperations: []*Operation{{Action: "insert", ID: updatedNode.ID, PreviousID: parentFoldedHeading.ID, Data: data}},
DoOperations: []*Operation{{Action: "insert", ID: updatedNode.ID, PreviousID: oldParentFoldedHeading.ID, Data: data}},
UndoOperations: []*Operation{{Action: "delete", ID: updatedNode.ID}},
}}
util.PushEvent(evt)
@ -1543,8 +1543,10 @@ func (tx *Transaction) doUpdate(operation *Operation) (ret *TxErr) {
oldNode.Unlink()
if needUnfoldParentHeading {
parentFoldedHeading = treenode.GetParentFoldedHeading(updatedNode)
unfoldHeading(parentFoldedHeading)
newParentFoldedHeading := treenode.GetParentFoldedHeading(updatedNode)
if nil == oldParentFoldedHeading || (nil != newParentFoldedHeading && oldParentFoldedHeading.ID != newParentFoldedHeading.ID) {
unfoldHeading(newParentFoldedHeading)
}
}
createdUpdated(updatedNode)