mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-02-28 05:32:52 +00:00
🎨 改进块树索引
This commit is contained in:
@@ -155,6 +155,9 @@ func SwapBlockRef(refID, defID string, includeChildren bool) (err error) {
|
||||
}
|
||||
}
|
||||
|
||||
refreshUpdated(defNode)
|
||||
refreshUpdated(refNode)
|
||||
|
||||
refPivot := treenode.NewParagraph()
|
||||
refNode.InsertBefore(refPivot)
|
||||
|
||||
@@ -215,13 +218,11 @@ func SwapBlockRef(refID, defID string, includeChildren bool) (err error) {
|
||||
}
|
||||
refPivot.Unlink()
|
||||
|
||||
treenode.IndexBlockTree(refTree)
|
||||
if err = writeJSONQueue(refTree); nil != err {
|
||||
if err = indexWriteJSONQueue(refTree); nil != err {
|
||||
return
|
||||
}
|
||||
if !sameTree {
|
||||
treenode.IndexBlockTree(defTree)
|
||||
if err = writeJSONQueue(defTree); nil != err {
|
||||
if err = indexWriteJSONQueue(defTree); nil != err {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
@@ -270,7 +270,7 @@ func IndexBlockTree(tree *parse.Tree) {
|
||||
slice.m.Unlock()
|
||||
|
||||
if nil != bt {
|
||||
if bt.Updated != n.IALAttr("updated") {
|
||||
if bt.Updated != n.IALAttr("updated") || bt.Path != tree.Path || bt.BoxID != tree.Box || bt.HPath != tree.HPath {
|
||||
children := ChildBlockNodes(n) // 需要考虑子块,因为一些操作(比如移动块)后需要同时更新子块
|
||||
changedNodes = append(changedNodes, children...)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user