From ae2cf07fc59313a0410898c6ca4892cd61d25a5c Mon Sep 17 00:00:00 2001 From: Rudxain Date: Wed, 10 Jul 2024 21:53:12 -0400 Subject: [PATCH] chore(widgets): assume `Layout`s must have at least 1 child --- src/gui/widgets/modal.rs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/gui/widgets/modal.rs b/src/gui/widgets/modal.rs index 708187a..edb010b 100644 --- a/src/gui/widgets/modal.rs +++ b/src/gui/widgets/modal.rs @@ -190,14 +190,17 @@ where clipboard: &mut dyn Clipboard, shell: &mut Shell<'_, Message>, ) -> event::Status { - let content_bounds = layout.children().next().unwrap().bounds(); - if let Some(message) = self.on_blur.as_ref() { if matches!( event, Event::Mouse(mouse::Event::ButtonPressed(mouse::Button::Left)) ) { if let Some(cursor_position) = cursor.position() { + let content_bounds = layout + .children() + .next() + .unwrap_or_else(|| unreachable!("Layout must have at least 1 child")) + .bounds(); if !content_bounds.contains(cursor_position) { shell.publish(message.clone()); return event::Status::Captured;