summaryrefslogtreecommitdiffstats
path: root/native/src/widget
diff options
context:
space:
mode:
Diffstat (limited to 'native/src/widget')
-rw-r--r--native/src/widget/mouse_listener.rs11
1 files changed, 9 insertions, 2 deletions
diff --git a/native/src/widget/mouse_listener.rs b/native/src/widget/mouse_listener.rs
index 3db2184e..f9c3acac 100644
--- a/native/src/widget/mouse_listener.rs
+++ b/native/src/widget/mouse_listener.rs
@@ -271,9 +271,9 @@ fn update<Message: Clone, Renderer>(
if !layout.bounds().contains(cursor_position) {
if hovered {
state.hovered = false;
+
if let Some(message) = widget.on_mouse_exit.clone() {
shell.publish(message);
- return event::Status::Captured;
}
}
@@ -285,7 +285,8 @@ fn update<Message: Clone, Renderer>(
if !hovered {
if let Some(message) = widget.on_mouse_enter.clone() {
shell.publish(message);
- return event::Status::Captured;
+
+ return event::Status::Ignored;
}
}
@@ -294,6 +295,7 @@ fn update<Message: Clone, Renderer>(
| Event::Touch(touch::Event::FingerPressed { .. }) = event
{
shell.publish(message);
+
return event::Status::Captured;
}
}
@@ -303,6 +305,7 @@ fn update<Message: Clone, Renderer>(
| Event::Touch(touch::Event::FingerLifted { .. }) = event
{
shell.publish(message);
+
return event::Status::Captured;
}
}
@@ -312,6 +315,7 @@ fn update<Message: Clone, Renderer>(
event
{
shell.publish(message);
+
return event::Status::Captured;
}
}
@@ -322,6 +326,7 @@ fn update<Message: Clone, Renderer>(
)) = event
{
shell.publish(message);
+
return event::Status::Captured;
}
}
@@ -332,6 +337,7 @@ fn update<Message: Clone, Renderer>(
)) = event
{
shell.publish(message);
+
return event::Status::Captured;
}
}
@@ -342,6 +348,7 @@ fn update<Message: Clone, Renderer>(
)) = event
{
shell.publish(message);
+
return event::Status::Captured;
}
}