summaryrefslogtreecommitdiffstats
path: root/widget/src/tooltip.rs
diff options
context:
space:
mode:
Diffstat (limited to 'widget/src/tooltip.rs')
-rw-r--r--widget/src/tooltip.rs33
1 files changed, 13 insertions, 20 deletions
diff --git a/widget/src/tooltip.rs b/widget/src/tooltip.rs
index 084650d1..d425de01 100644
--- a/widget/src/tooltip.rs
+++ b/widget/src/tooltip.rs
@@ -9,7 +9,7 @@ use crate::core::renderer;
use crate::core::text;
use crate::core::widget::Tree;
use crate::core::{
- Clipboard, Element, Length, Padding, Pixels, Point, Rectangle, Shell, Size,
+ Clipboard, Element, Length, Padding, Pixels, Rectangle, Shell, Size,
Vector, Widget,
};
use crate::Text;
@@ -136,7 +136,7 @@ where
tree: &mut Tree,
event: Event,
layout: Layout<'_>,
- cursor_position: Point,
+ cursor: mouse::Cursor,
renderer: &Renderer,
clipboard: &mut dyn Clipboard,
shell: &mut Shell<'_, Message>,
@@ -145,7 +145,7 @@ where
&mut tree.children[0],
event,
layout,
- cursor_position,
+ cursor,
renderer,
clipboard,
shell,
@@ -156,14 +156,14 @@ where
&self,
tree: &Tree,
layout: Layout<'_>,
- cursor_position: Point,
+ cursor: mouse::Cursor,
viewport: &Rectangle,
renderer: &Renderer,
) -> mouse::Interaction {
self.content.as_widget().mouse_interaction(
&tree.children[0],
layout,
- cursor_position,
+ cursor,
viewport,
renderer,
)
@@ -176,7 +176,7 @@ where
theme: &Renderer::Theme,
inherited_style: &renderer::Style,
layout: Layout<'_>,
- cursor_position: Point,
+ cursor: mouse::Cursor,
viewport: &Rectangle,
) {
self.content.as_widget().draw(
@@ -185,7 +185,7 @@ where
theme,
inherited_style,
layout,
- cursor_position,
+ cursor,
viewport,
);
@@ -196,7 +196,7 @@ where
theme,
inherited_style,
layout,
- cursor_position,
+ cursor,
viewport,
self.position,
self.gap,
@@ -206,7 +206,7 @@ where
|renderer, limits| {
Widget::<(), Renderer>::layout(tooltip, renderer, limits)
},
- |renderer, defaults, layout, cursor_position, viewport| {
+ |renderer, defaults, layout, viewport| {
Widget::<(), Renderer>::draw(
tooltip,
&Tree::empty(),
@@ -214,7 +214,7 @@ where
theme,
defaults,
layout,
- cursor_position,
+ cursor,
viewport,
);
},
@@ -270,7 +270,7 @@ pub fn draw<Renderer>(
theme: &Renderer::Theme,
inherited_style: &renderer::Style,
layout: Layout<'_>,
- cursor_position: Point,
+ cursor: mouse::Cursor,
viewport: &Rectangle,
position: Position,
gap: f32,
@@ -278,13 +278,7 @@ pub fn draw<Renderer>(
snap_within_viewport: bool,
style: &<Renderer::Theme as container::StyleSheet>::Style,
layout_text: impl FnOnce(&Renderer, &layout::Limits) -> layout::Node,
- draw_text: impl FnOnce(
- &mut Renderer,
- &renderer::Style,
- Layout<'_>,
- Point,
- &Rectangle,
- ),
+ draw_text: impl FnOnce(&mut Renderer, &renderer::Style, Layout<'_>, &Rectangle),
) where
Renderer: core::Renderer,
Renderer::Theme: container::StyleSheet,
@@ -293,7 +287,7 @@ pub fn draw<Renderer>(
let bounds = layout.bounds();
- if bounds.contains(cursor_position) {
+ if let Some(cursor_position) = cursor.position_over(bounds) {
let style = theme.appearance(style);
let defaults = renderer::Style {
@@ -380,7 +374,6 @@ pub fn draw<Renderer>(
),
&text_layout,
),
- cursor_position,
viewport,
)
});