From ab4e4022ea4e066fc75ad63712b726519b1c8993 Mon Sep 17 00:00:00 2001 From: Jonathan Johnson Date: Wed, 8 Nov 2023 14:43:55 -0800 Subject: [PATCH] Fixing issues when widgets are removed --- src/tree.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/tree.rs b/src/tree.rs index b6dbd48..a6bf2f2 100644 --- a/src/tree.rs +++ b/src/tree.rs @@ -242,7 +242,7 @@ impl Tree { if hovered == id { return true; } - search = data.nodes[&hovered].parent; + search = data.nodes.get(&hovered).and_then(|node| node.parent); } false @@ -355,7 +355,7 @@ impl TreeData { let mut hierarchy = Vec::new(); while let Some(managed) = self.widget(widget, tree) { 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; }; widget = parent;