From f247528725982e3214df3b06c153347fe4945b0f Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Thu, 13 Apr 2023 06:34:17 +0200 Subject: Ignore mouse movements events in `MouseListener` These should be ignored generally, since they are considered passive user actions. --- native/src/widget/mouse_listener.rs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'native/src') 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( 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( 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( | Event::Touch(touch::Event::FingerPressed { .. }) = event { shell.publish(message); + return event::Status::Captured; } } @@ -303,6 +305,7 @@ fn update( | Event::Touch(touch::Event::FingerLifted { .. }) = event { shell.publish(message); + return event::Status::Captured; } } @@ -312,6 +315,7 @@ fn update( event { shell.publish(message); + return event::Status::Captured; } } @@ -322,6 +326,7 @@ fn update( )) = event { shell.publish(message); + return event::Status::Captured; } } @@ -332,6 +337,7 @@ fn update( )) = event { shell.publish(message); + return event::Status::Captured; } } @@ -342,6 +348,7 @@ fn update( )) = event { shell.publish(message); + return event::Status::Captured; } } -- cgit