Align dispatch_keystroke with other uses of ancestors iterator and filter out non-existant views

This commit is contained in:
Mikayla Maki 2023-03-17 10:56:44 -07:00
parent f7f9b8cffe
commit 578c69476d

View File

@ -1479,15 +1479,11 @@ impl MutableAppContext {
if let Some(focused_view_id) = self.focused_view_id(window_id) {
let dispatch_path = self
.ancestors(window_id, focused_view_id)
.map(|view_id| {
(
view_id,
self.cx
.views
.get(&(window_id, view_id))
.unwrap()
.keymap_context(self.as_ref()),
)
.filter_map(|view_id| {
self.cx
.views
.get(&(window_id, view_id))
.map(|view| (view_id, view.keymap_context(self.as_ref())))
})
.collect();