mirror of
https://github.com/zadam/trilium.git
synced 2025-02-23 22:44:44 +08:00
no need to reload whole subtree while moving notes
This commit is contained in:
parent
e817acba4e
commit
ad48b59893
1 changed files with 17 additions and 11 deletions
|
@ -970,7 +970,9 @@ export default class NoteTreeWidget extends TabAwareWidget {
|
|||
const found = (parentNode.getChildren() || []).find(child => child.data.noteId === branch.noteId);
|
||||
|
||||
if (!found) {
|
||||
noteIdsToReload.add(branch.parentNoteId);
|
||||
parentNode.addChildren([await this.prepareNode(branch)]);
|
||||
|
||||
this.sortChildren(parentNode);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -992,16 +994,7 @@ export default class NoteTreeWidget extends TabAwareWidget {
|
|||
for (const parentNoteId of loadResults.getNoteReorderings()) {
|
||||
for (const node of this.getNodesByNoteId(parentNoteId)) {
|
||||
if (node.isLoaded()) {
|
||||
node.sortChildren((nodeA, nodeB) => {
|
||||
const branchA = treeCache.branches[nodeA.data.branchId];
|
||||
const branchB = treeCache.branches[nodeB.data.branchId];
|
||||
|
||||
if (!branchA || !branchB) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
return branchA.notePosition - branchB.notePosition;
|
||||
});
|
||||
this.sortChildren(node);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1047,6 +1040,19 @@ export default class NoteTreeWidget extends TabAwareWidget {
|
|||
}
|
||||
}
|
||||
|
||||
sortChildren(node) {
|
||||
node.sortChildren((nodeA, nodeB) => {
|
||||
const branchA = treeCache.branches[nodeA.data.branchId];
|
||||
const branchB = treeCache.branches[nodeB.data.branchId];
|
||||
|
||||
if (!branchA || !branchB) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
return branchA.notePosition - branchB.notePosition;
|
||||
});
|
||||
}
|
||||
|
||||
async setExpanded(branchId, isExpanded) {
|
||||
utils.assertArguments(branchId);
|
||||
|
||||
|
|
Loading…
Reference in a new issue