Skip to content

Commit

Permalink
Remove unwraps
Browse files Browse the repository at this point in the history
  • Loading branch information
tarkah committed Feb 18, 2023
1 parent 01fb0b5 commit 4e9b9d7
Showing 1 changed file with 69 additions and 54 deletions.
123 changes: 69 additions & 54 deletions native/src/overlay/nested.rs
Original file line number Diff line number Diff line change
Expand Up @@ -97,21 +97,27 @@ where
) where
Renderer: crate::Renderer,
{
let layout = layouts.next().unwrap();

renderer.with_layer(layout.bounds(), |renderer| {
element.draw(renderer, theme, style, layout, cursor_position);
});

if let Some(mut overlay) = element.overlay(layout, renderer) {
recurse(
&mut overlay,
layouts,
renderer,
theme,
style,
cursor_position,
);
if let Some(layout) = layouts.next() {
renderer.with_layer(layout.bounds(), |renderer| {
element.draw(
renderer,
theme,
style,
layout,
cursor_position,
);
});

if let Some(mut overlay) = element.overlay(layout, renderer) {
recurse(
&mut overlay,
layouts,
renderer,
theme,
style,
cursor_position,
);
}
}
}

Expand All @@ -136,12 +142,12 @@ where
) where
Renderer: crate::Renderer,
{
let layout = layouts.next().unwrap();

element.operate(layout, renderer, operation);
if let Some(layout) = layouts.next() {
element.operate(layout, renderer, operation);

if let Some(mut overlay) = element.overlay(layout, renderer) {
recurse(&mut overlay, layouts, renderer, operation);
if let Some(mut overlay) = element.overlay(layout, renderer) {
recurse(&mut overlay, layouts, renderer, operation);
}
}
}

Expand Down Expand Up @@ -171,10 +177,10 @@ where
where
Renderer: crate::Renderer,
{
let layout = layouts.next().unwrap();

let status =
if let Some(mut overlay) = element.overlay(layout, renderer) {
if let Some(layout) = layouts.next() {
let status = if let Some(mut overlay) =
element.overlay(layout, renderer)
{
recurse(
&mut overlay,
layouts,
Expand All @@ -188,17 +194,20 @@ where
event::Status::Ignored
};

if matches!(status, event::Status::Ignored) {
element.on_event(
event,
layout,
cursor_position,
renderer,
clipboard,
shell,
)
if matches!(status, event::Status::Ignored) {
element.on_event(
event,
layout,
cursor_position,
renderer,
clipboard,
shell,
)
} else {
status
}
} else {
status
event::Status::Ignored
}
}

Expand Down Expand Up @@ -232,10 +241,10 @@ where
where
Renderer: crate::Renderer,
{
let layout = layouts.next().unwrap();

let interaction =
if let Some(mut overlay) = element.overlay(layout, renderer) {
if let Some(layout) = layouts.next() {
let interaction = if let Some(mut overlay) =
element.overlay(layout, renderer)
{
recurse(
&mut overlay,
layouts,
Expand All @@ -247,15 +256,18 @@ where
mouse::Interaction::default()
};

if matches!(interaction, mouse::Interaction::Idle) {
element.mouse_interaction(
layout,
cursor_position,
viewport,
renderer,
)
if matches!(interaction, mouse::Interaction::Idle) {
element.mouse_interaction(
layout,
cursor_position,
viewport,
renderer,
)
} else {
interaction
}
} else {
interaction
mouse::Interaction::default()
}
}

Expand All @@ -281,16 +293,19 @@ where
where
Renderer: crate::Renderer,
{
let layout = layouts.next().unwrap();
if let Some(layout) = layouts.next() {
let is_over =
element.is_over(layout, renderer, cursor_position);

let is_over = element.is_over(layout, renderer, cursor_position);
if is_over {
return true;
}

if is_over {
return true;
}

if let Some(mut overlay) = element.overlay(layout, renderer) {
recurse(&mut overlay, layouts, renderer, cursor_position)
if let Some(mut overlay) = element.overlay(layout, renderer) {
recurse(&mut overlay, layouts, renderer, cursor_position)
} else {
false
}
} else {
false
}
Expand Down

0 comments on commit 4e9b9d7

Please sign in to comment.