diff options
author | 2021-11-02 15:03:29 +0700 | |
---|---|---|
committer | 2021-11-02 15:03:29 +0700 | |
commit | 631e95ee0be01dc7f5e5183e1429972aee37787f (patch) | |
tree | b7534cb783d02fefa2b2c040e5564efcfc24f487 | |
parent | c330bb1b69d55d767fa5bb2e0fcc059fbbe07d07 (diff) | |
download | iced-631e95ee0be01dc7f5e5183e1429972aee37787f.tar.gz iced-631e95ee0be01dc7f5e5183e1429972aee37787f.tar.bz2 iced-631e95ee0be01dc7f5e5183e1429972aee37787f.zip |
Move `viewport` argument to last position in `mouse_interaction` methods
This keeps the order of the arguments consistent with `draw`.
-rw-r--r-- | graphics/src/widget/canvas.rs | 2 | ||||
-rw-r--r-- | native/src/element.rs | 12 | ||||
-rw-r--r-- | native/src/overlay.rs | 2 | ||||
-rw-r--r-- | native/src/overlay/element.rs | 14 | ||||
-rw-r--r-- | native/src/overlay/menu.rs | 6 | ||||
-rw-r--r-- | native/src/user_interface.rs | 4 | ||||
-rw-r--r-- | native/src/widget.rs | 2 | ||||
-rw-r--r-- | native/src/widget/button.rs | 2 | ||||
-rw-r--r-- | native/src/widget/checkbox.rs | 2 | ||||
-rw-r--r-- | native/src/widget/column.rs | 4 | ||||
-rw-r--r-- | native/src/widget/container.rs | 4 | ||||
-rw-r--r-- | native/src/widget/image/viewer.rs | 2 | ||||
-rw-r--r-- | native/src/widget/pane_grid.rs | 4 | ||||
-rw-r--r-- | native/src/widget/pane_grid/content.rs | 6 | ||||
-rw-r--r-- | native/src/widget/pane_grid/title_bar.rs | 6 | ||||
-rw-r--r-- | native/src/widget/pick_list.rs | 2 | ||||
-rw-r--r-- | native/src/widget/radio.rs | 2 | ||||
-rw-r--r-- | native/src/widget/row.rs | 4 | ||||
-rw-r--r-- | native/src/widget/scrollable.rs | 4 | ||||
-rw-r--r-- | native/src/widget/slider.rs | 2 | ||||
-rw-r--r-- | native/src/widget/text_input.rs | 2 | ||||
-rw-r--r-- | native/src/widget/toggler.rs | 2 | ||||
-rw-r--r-- | native/src/widget/tooltip.rs | 11 | ||||
-rw-r--r-- | style/src/rule.rs | 1 |
24 files changed, 61 insertions, 41 deletions
diff --git a/graphics/src/widget/canvas.rs b/graphics/src/widget/canvas.rs index ad9704d0..639c2a9b 100644 --- a/graphics/src/widget/canvas.rs +++ b/graphics/src/widget/canvas.rs @@ -191,8 +191,8 @@ where fn mouse_interaction( &self, layout: Layout<'_>, - _viewport: &Rectangle, cursor_position: Point, + _viewport: &Rectangle, ) -> mouse::Interaction { let bounds = layout.bounds(); let cursor = Cursor::from_window_position(cursor_position); diff --git a/native/src/element.rs b/native/src/element.rs index f4ae88b5..50ff9424 100644 --- a/native/src/element.rs +++ b/native/src/element.rs @@ -257,11 +257,11 @@ where pub fn mouse_interaction( &self, layout: Layout<'_>, - viewport: &Rectangle, cursor_position: Point, + viewport: &Rectangle, ) -> mouse::Interaction { self.widget - .mouse_interaction(layout, viewport, cursor_position) + .mouse_interaction(layout, cursor_position, viewport) } /// Computes the _layout_ hash of the [`Element`]. @@ -362,11 +362,11 @@ where fn mouse_interaction( &self, layout: Layout<'_>, - viewport: &Rectangle, cursor_position: Point, + viewport: &Rectangle, ) -> mouse::Interaction { self.widget - .mouse_interaction(layout, viewport, cursor_position) + .mouse_interaction(layout, cursor_position, viewport) } fn hash_layout(&self, state: &mut Hasher) { @@ -479,12 +479,12 @@ where fn mouse_interaction( &self, layout: Layout<'_>, - viewport: &Rectangle, cursor_position: Point, + viewport: &Rectangle, ) -> mouse::Interaction { self.element .widget - .mouse_interaction(layout, viewport, cursor_position) + .mouse_interaction(layout, cursor_position, viewport) } fn hash_layout(&self, state: &mut Hasher) { diff --git a/native/src/overlay.rs b/native/src/overlay.rs index 70e3305b..1ac3cea5 100644 --- a/native/src/overlay.rs +++ b/native/src/overlay.rs @@ -82,8 +82,8 @@ where fn mouse_interaction( &self, _layout: Layout<'_>, - _viewport: &Rectangle, _cursor_position: Point, + _viewport: &Rectangle, ) -> mouse::Interaction { mouse::Interaction::Idle } diff --git a/native/src/overlay/element.rs b/native/src/overlay/element.rs index 988cca09..ef676fb4 100644 --- a/native/src/overlay/element.rs +++ b/native/src/overlay/element.rs @@ -72,11 +72,11 @@ where pub fn mouse_interaction( &self, layout: Layout<'_>, - viewport: &Rectangle, cursor_position: Point, + viewport: &Rectangle, ) -> mouse::Interaction { self.overlay - .mouse_interaction(layout, viewport, cursor_position) + .mouse_interaction(layout, cursor_position, viewport) } /// Draws the [`Element`] and its children using the given [`Layout`]. @@ -150,6 +150,16 @@ where event_status } + fn mouse_interaction( + &self, + layout: Layout<'_>, + cursor_position: Point, + viewport: &Rectangle, + ) -> mouse::Interaction { + self.content + .mouse_interaction(layout, cursor_position, viewport) + } + fn draw( &self, renderer: &mut Renderer, diff --git a/native/src/overlay/menu.rs b/native/src/overlay/menu.rs index c4d1e171..12dd4b0b 100644 --- a/native/src/overlay/menu.rs +++ b/native/src/overlay/menu.rs @@ -237,11 +237,11 @@ where fn mouse_interaction( &self, layout: Layout<'_>, - viewport: &Rectangle, cursor_position: Point, + viewport: &Rectangle, ) -> mouse::Interaction { self.container - .mouse_interaction(layout, viewport, cursor_position) + .mouse_interaction(layout, cursor_position, viewport) } fn draw( @@ -388,8 +388,8 @@ where fn mouse_interaction( &self, layout: Layout<'_>, - _viewport: &Rectangle, cursor_position: Point, + _viewport: &Rectangle, ) -> mouse::Interaction { let is_mouse_over = layout.bounds().contains(cursor_position); diff --git a/native/src/user_interface.rs b/native/src/user_interface.rs index a25fb0c4..39cac559 100644 --- a/native/src/user_interface.rs +++ b/native/src/user_interface.rs @@ -381,8 +381,8 @@ where let base_interaction = self.root.widget.mouse_interaction( Layout::new(&self.base.layout), - &viewport, cursor_position, + &viewport, ); let Self { @@ -403,8 +403,8 @@ where root.overlay(Layout::new(&base.layout)).map(|overlay| { let overlay_interaction = overlay.mouse_interaction( Layout::new(&layer.layout), - &viewport, cursor_position, + &viewport, ); let overlay_bounds = layer.layout.bounds(); diff --git a/native/src/widget.rs b/native/src/widget.rs index 6a2bbfbd..07214b16 100644 --- a/native/src/widget.rs +++ b/native/src/widget.rs @@ -174,8 +174,8 @@ where fn mouse_interaction( &self, _layout: Layout<'_>, - _viewport: &Rectangle, _cursor_position: Point, + _viewport: &Rectangle, ) -> mouse::Interaction { mouse::Interaction::Idle } diff --git a/native/src/widget/button.rs b/native/src/widget/button.rs index 588833a4..0d9eeebd 100644 --- a/native/src/widget/button.rs +++ b/native/src/widget/button.rs @@ -251,8 +251,8 @@ where fn mouse_interaction( &self, layout: Layout<'_>, - _viewport: &Rectangle, cursor_position: Point, + _viewport: &Rectangle, ) -> mouse::Interaction { let is_mouse_over = layout.bounds().contains(cursor_position); let is_disabled = self.on_press.is_none(); diff --git a/native/src/widget/checkbox.rs b/native/src/widget/checkbox.rs index b19a0a25..04f62cd9 100644 --- a/native/src/widget/checkbox.rs +++ b/native/src/widget/checkbox.rs @@ -193,8 +193,8 @@ where fn mouse_interaction( &self, layout: Layout<'_>, - _viewport: &Rectangle, cursor_position: Point, + _viewport: &Rectangle, ) -> mouse::Interaction { if layout.bounds().contains(cursor_position) { mouse::Interaction::Pointer diff --git a/native/src/widget/column.rs b/native/src/widget/column.rs index 1d2c8485..0d4d6fa7 100644 --- a/native/src/widget/column.rs +++ b/native/src/widget/column.rs @@ -167,8 +167,8 @@ where fn mouse_interaction( &self, layout: Layout<'_>, - viewport: &Rectangle, cursor_position: Point, + viewport: &Rectangle, ) -> mouse::Interaction { self.children .iter() @@ -176,8 +176,8 @@ where .map(|(child, layout)| { child.widget.mouse_interaction( layout, - viewport, cursor_position, + viewport, ) }) .max() diff --git a/native/src/widget/container.rs b/native/src/widget/container.rs index 5ad07d6d..9e3d0193 100644 --- a/native/src/widget/container.rs +++ b/native/src/widget/container.rs @@ -182,13 +182,13 @@ where fn mouse_interaction( &self, layout: Layout<'_>, - viewport: &Rectangle, cursor_position: Point, + viewport: &Rectangle, ) -> mouse::Interaction { self.content.widget.mouse_interaction( layout.children().next().unwrap(), - viewport, cursor_position, + viewport, ) } diff --git a/native/src/widget/image/viewer.rs b/native/src/widget/image/viewer.rs index d9eccfad..95e5c6e4 100644 --- a/native/src/widget/image/viewer.rs +++ b/native/src/widget/image/viewer.rs @@ -284,8 +284,8 @@ where fn mouse_interaction( &self, layout: Layout<'_>, - _viewport: &Rectangle, cursor_position: Point, + _viewport: &Rectangle, ) -> mouse::Interaction { let bounds = layout.bounds(); let is_mouse_over = bounds.contains(cursor_position); diff --git a/native/src/widget/pane_grid.rs b/native/src/widget/pane_grid.rs index 48243c0b..d98369e4 100644 --- a/native/src/widget/pane_grid.rs +++ b/native/src/widget/pane_grid.rs @@ -474,8 +474,8 @@ where fn mouse_interaction( &self, layout: Layout<'_>, - viewport: &Rectangle, cursor_position: Point, + viewport: &Rectangle, ) -> mouse::Interaction { if self.state.picked_pane().is_some() { return mouse::Interaction::Grab; @@ -492,7 +492,7 @@ where .iter() .zip(layout.children()) .map(|((_pane, content), layout)| { - content.mouse_interaction(layout, viewport, cursor_position) + content.mouse_interaction(layout, cursor_position, viewport) }) .max() .unwrap_or_default() diff --git a/native/src/widget/pane_grid/content.rs b/native/src/widget/pane_grid/content.rs index efb3493b..c44506dd 100644 --- a/native/src/widget/pane_grid/content.rs +++ b/native/src/widget/pane_grid/content.rs @@ -201,8 +201,8 @@ where pub(crate) fn mouse_interaction( &self, layout: Layout<'_>, - viewport: &Rectangle, cursor_position: Point, + viewport: &Rectangle, ) -> mouse::Interaction { let (body_layout, title_bar_interaction) = if let Some(title_bar) = &self.title_bar { @@ -218,8 +218,8 @@ where let mouse_interaction = title_bar.mouse_interaction( title_bar_layout, - viewport, cursor_position, + viewport, ); (children.next().unwrap(), mouse_interaction) @@ -228,7 +228,7 @@ where }; self.body - .mouse_interaction(body_layout, viewport, cursor_position) + .mouse_interaction(body_layout, cursor_position, viewport) .max(title_bar_interaction) } diff --git a/native/src/widget/pane_grid/title_bar.rs b/native/src/widget/pane_grid/title_bar.rs index ffd59488..070cf404 100644 --- a/native/src/widget/pane_grid/title_bar.rs +++ b/native/src/widget/pane_grid/title_bar.rs @@ -256,8 +256,8 @@ where pub(crate) fn mouse_interaction( &self, layout: Layout<'_>, - viewport: &Rectangle, cursor_position: Point, + viewport: &Rectangle, ) -> mouse::Interaction { let mut children = layout.children(); let padded = children.next().unwrap(); @@ -267,15 +267,15 @@ where let title_interaction = self.content.mouse_interaction( title_layout, - viewport, cursor_position, + viewport, ); if let Some(controls) = &self.controls { let controls_layout = children.next().unwrap(); controls - .mouse_interaction(controls_layout, viewport, cursor_position) + .mouse_interaction(controls_layout, cursor_position, viewport) .max(title_interaction) } else { title_interaction diff --git a/native/src/widget/pick_list.rs b/native/src/widget/pick_list.rs index 9d2f63db..a7fef37b 100644 --- a/native/src/widget/pick_list.rs +++ b/native/src/widget/pick_list.rs @@ -329,8 +329,8 @@ where fn mouse_interaction( &self, layout: Layout<'_>, - _viewport: &Rectangle, cursor_position: Point, + _viewport: &Rectangle, ) -> mouse::Interaction { let bounds = layout.bounds(); let is_mouse_over = bounds.contains(cursor_position); diff --git a/native/src/widget/radio.rs b/native/src/widget/radio.rs index eb732dc3..7d39c526 100644 --- a/native/src/widget/radio.rs +++ b/native/src/widget/radio.rs @@ -207,8 +207,8 @@ where fn mouse_interaction( &self, layout: Layout<'_>, - _viewport: &Rectangle, cursor_position: Point, + _viewport: &Rectangle, ) -> mouse::Interaction { if layout.bounds().contains(cursor_position) { mouse::Interaction::Pointer diff --git a/native/src/widget/row.rs b/native/src/widget/row.rs index af83f106..6fe3284b 100644 --- a/native/src/widget/row.rs +++ b/native/src/widget/row.rs @@ -166,8 +166,8 @@ where fn mouse_interaction( &self, layout: Layout<'_>, - viewport: &Rectangle, cursor_position: Point, + viewport: &Rectangle, ) -> mouse::Interaction { self.children .iter() @@ -175,8 +175,8 @@ where .map(|(child, layout)| { child.widget.mouse_interaction( layout, - viewport, cursor_position, + viewport, ) }) .max() diff --git a/native/src/widget/scrollable.rs b/native/src/widget/scrollable.rs index 05e9b347..00f80bc6 100644 --- a/native/src/widget/scrollable.rs +++ b/native/src/widget/scrollable.rs @@ -426,8 +426,8 @@ where fn mouse_interaction( &self, layout: Layout<'_>, - _viewport: &Rectangle, cursor_position: Point, + _viewport: &Rectangle, ) -> mouse::Interaction { let bounds = layout.bounds(); let content_layout = layout.children().next().unwrap(); @@ -453,11 +453,11 @@ where self.content.mouse_interaction( content_layout, + cursor_position, &Rectangle { y: bounds.y + offset as f32, ..bounds }, - cursor_position, ) } } diff --git a/native/src/widget/slider.rs b/native/src/widget/slider.rs index ee9db6cf..01053081 100644 --- a/native/src/widget/slider.rs +++ b/native/src/widget/slider.rs @@ -342,8 +342,8 @@ where fn mouse_interaction( &self, layout: Layout<'_>, - _viewport: &Rectangle, cursor_position: Point, + _viewport: &Rectangle, ) -> mouse::Interaction { let bounds = layout.bounds(); let is_mouse_over = bounds.contains(cursor_position); diff --git a/native/src/widget/text_input.rs b/native/src/widget/text_input.rs index 5dd68f81..db60b553 100644 --- a/native/src/widget/text_input.rs +++ b/native/src/widget/text_input.rs @@ -759,8 +759,8 @@ where fn mouse_interaction( &self, layout: Layout<'_>, - _viewport: &Rectangle, cursor_position: Point, + _viewport: &Rectangle, ) -> mouse::Interaction { if layout.bounds().contains(cursor_position) { mouse::Interaction::Text diff --git a/native/src/widget/toggler.rs b/native/src/widget/toggler.rs index fb7d2642..78e3d5ef 100644 --- a/native/src/widget/toggler.rs +++ b/native/src/widget/toggler.rs @@ -194,8 +194,8 @@ where fn mouse_interaction( &self, layout: Layout<'_>, - _viewport: &Rectangle, cursor_position: Point, + _viewport: &Rectangle, ) -> mouse::Interaction { if layout.bounds().contains(cursor_position) { mouse::Interaction::Pointer diff --git a/native/src/widget/tooltip.rs b/native/src/widget/tooltip.rs index 5a6cd923..c35005e0 100644 --- a/native/src/widget/tooltip.rs +++ b/native/src/widget/tooltip.rs @@ -5,6 +5,7 @@ use iced_core::Rectangle; use crate::event; use crate::layout; +use crate::mouse; use crate::renderer; use crate::text; use crate::widget::container; @@ -141,6 +142,16 @@ where ) } + fn mouse_interaction( + &self, + layout: Layout<'_>, + cursor_position: Point, + viewport: &Rectangle, + ) -> mouse::Interaction { + self.content + .mouse_interaction(layout, cursor_position, viewport) + } + fn draw( &self, renderer: &mut Renderer, diff --git a/style/src/rule.rs b/style/src/rule.rs index 7276bc19..997bb1e9 100644 --- a/style/src/rule.rs +++ b/style/src/rule.rs @@ -1,5 +1,4 @@ //! Display a horizontal or vertical rule for dividing content. - use iced_core::Color; /// The fill mode of a rule. |