From be97a5d502df8c8b23704f5a8a0d425f4eff2215 Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Mon, 18 Oct 2021 16:43:18 +0700 Subject: Introduce `mouse_interaction` method to `Widget` trait --- native/src/overlay.rs | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'native/src/overlay.rs') diff --git a/native/src/overlay.rs b/native/src/overlay.rs index 25b49adf..70e3305b 100644 --- a/native/src/overlay.rs +++ b/native/src/overlay.rs @@ -8,8 +8,9 @@ pub use menu::Menu; use crate::event::{self, Event}; use crate::layout; +use crate::mouse; use crate::renderer; -use crate::{Clipboard, Hasher, Layout, Point, Size}; +use crate::{Clipboard, Hasher, Layout, Point, Rectangle, Size}; /// An interactive component that can be displayed on top of other widgets. pub trait Overlay @@ -74,4 +75,16 @@ where ) -> event::Status { event::Status::Ignored } + + /// Returns the current [`mouse::Interaction`] of the [`Widget`]. + /// + /// By default, it returns [`mouse::Interaction::Idle`]. + fn mouse_interaction( + &self, + _layout: Layout<'_>, + _viewport: &Rectangle, + _cursor_position: Point, + ) -> mouse::Interaction { + mouse::Interaction::Idle + } } -- cgit