diff --git a/TODO b/TODO index 63da8bc..e28d5fb 100644 --- a/TODO +++ b/TODO @@ -1,3 +1,14 @@ * Fix dynamic tree updates when adding a new node -* Expand tree to show selected node when going throw goToNode() * Create new admin user when no user exists +* File deletion + - per file + - when deleting node and child nodes +* Move node +* Tree titles should be user-select none + + +Long term +========= +* Load tree iteratively when needed +* Notification of timestamps +* Journal with quick insert of date and time diff --git a/static/js/app.mjs b/static/js/app.mjs index 5e8cec3..ecb641f 100644 --- a/static/js/app.mjs +++ b/static/js/app.mjs @@ -253,6 +253,7 @@ class Tree extends Component { this.selectedTreeNode = this.treeNodeComponents[node.ID].current this.selectedTreeNode.selected.value = true this.selectedTreeNode.expanded.value = true + this.expandToTrunk(node.ID) }//}}} crumbsUpdateNodes(node) {//{{{ this.props.app.startNode.Crumbs.forEach(crumb=>{ @@ -272,6 +273,17 @@ class Tree extends Component { if(node !== undefined) this.setSelected(node) }//}}} + expandToTrunk(nodeID) {//{{{ + let node = this.treeNodes[nodeID] + if(node === undefined) + return + + node = this.treeNodes[node.ParentID] + while(node !== undefined) { + this.treeNodeComponents[node.ID].current.expanded.value = true + node = this.treeNodes[node.ParentID] + } + }//}}} } class TreeNode extends Component {