Fixing issues when widgets are removed

This commit is contained in:
Jonathan Johnson 2023-11-08 14:43:55 -08:00
parent 747813f6b8
commit ab4e4022ea
No known key found for this signature in database
GPG key ID: A66D6A34D6620579

View file

@ -242,7 +242,7 @@ impl Tree {
if hovered == id { if hovered == id {
return true; return true;
} }
search = data.nodes[&hovered].parent; search = data.nodes.get(&hovered).and_then(|node| node.parent);
} }
false false
@ -355,7 +355,7 @@ impl TreeData {
let mut hierarchy = Vec::new(); let mut hierarchy = Vec::new();
while let Some(managed) = self.widget(widget, tree) { while let Some(managed) = self.widget(widget, tree) {
hierarchy.push(managed); hierarchy.push(managed);
let Some(parent) = self.nodes[&widget].parent else { let Some(parent) = self.nodes.get(&widget).and_then(|widget| widget.parent) else {
break; break;
}; };
widget = parent; widget = parent;