diff options
author | 2023-02-02 16:52:56 +0100 | |
---|---|---|
committer | 2023-02-02 16:52:56 +0100 | |
commit | a35d6d2e4d59f71309f31c87ea5150959d639185 (patch) | |
tree | efd44456685739bce1962146e66002654c9ecb0e /native/src/overlay/element.rs | |
parent | 49e9a9a5379c1e9a9469045ca9a51ffb860ee620 (diff) | |
parent | 98a717383acf71d7939d7cc90d350743487f0380 (diff) | |
download | iced-a35d6d2e4d59f71309f31c87ea5150959d639185.tar.gz iced-a35d6d2e4d59f71309f31c87ea5150959d639185.tar.bz2 iced-a35d6d2e4d59f71309f31c87ea5150959d639185.zip |
Merge branch 'iced-rs:master' into master
Diffstat (limited to '')
-rw-r--r-- | native/src/overlay/element.rs | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/native/src/overlay/element.rs b/native/src/overlay/element.rs index 41a8a597..237d25d1 100644 --- a/native/src/overlay/element.rs +++ b/native/src/overlay/element.rs @@ -53,8 +53,14 @@ where } /// Computes the layout of the [`Element`] in the given bounds. - pub fn layout(&self, renderer: &Renderer, bounds: Size) -> layout::Node { - self.overlay.layout(renderer, bounds, self.position) + pub fn layout( + &self, + renderer: &Renderer, + bounds: Size, + translation: Vector, + ) -> layout::Node { + self.overlay + .layout(renderer, bounds, self.position + translation) } /// Processes a runtime [`Event`]. @@ -115,6 +121,11 @@ where ) { self.overlay.operate(layout, renderer, operation); } + + /// Returns true if the cursor is over the [`Element`]. + pub fn is_over(&self, layout: Layout<'_>, cursor_position: Point) -> bool { + self.overlay.is_over(layout, cursor_position) + } } struct Map<'a, A, B, Renderer> { @@ -252,4 +263,8 @@ where self.content .draw(renderer, theme, style, layout, cursor_position) } + + fn is_over(&self, layout: Layout<'_>, cursor_position: Point) -> bool { + self.content.is_over(layout, cursor_position) + } } |