diff options
author | 2020-10-29 02:00:56 +0100 | |
---|---|---|
committer | 2020-10-29 02:00:56 +0100 | |
commit | b40775fb7414b44307e343921ef015c65a916dab (patch) | |
tree | 06a3fad05b14d3b0f97687bf410fa8bbc04c9526 /graphics/src/widget/column.rs | |
parent | 8a3ce90959e281cd73a7486d800df8d65478a698 (diff) | |
parent | 91b1886968b498b913984bdfa4bee840e8821ec6 (diff) | |
download | iced-b40775fb7414b44307e343921ef015c65a916dab.tar.gz iced-b40775fb7414b44307e343921ef015c65a916dab.tar.bz2 iced-b40775fb7414b44307e343921ef015c65a916dab.zip |
Merge pull request #584 from hecrj/improvement/viewport-aware-drawing
Viewport aware drawing
Diffstat (limited to '')
-rw-r--r-- | graphics/src/widget/column.rs | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/graphics/src/widget/column.rs b/graphics/src/widget/column.rs index 6c7235c7..0cf56842 100644 --- a/graphics/src/widget/column.rs +++ b/graphics/src/widget/column.rs @@ -1,7 +1,7 @@ use crate::{Backend, Primitive, Renderer}; use iced_native::column; use iced_native::mouse; -use iced_native::{Element, Layout, Point}; +use iced_native::{Element, Layout, Point, Rectangle}; /// A container that distributes its contents vertically. pub type Column<'a, Message, Backend> = @@ -17,6 +17,7 @@ where content: &[Element<'_, Message, Self>], layout: Layout<'_>, cursor_position: Point, + viewport: &Rectangle, ) -> Self::Output { let mut mouse_interaction = mouse::Interaction::default(); @@ -26,8 +27,13 @@ where .iter() .zip(layout.children()) .map(|(child, layout)| { - let (primitive, new_mouse_interaction) = - child.draw(self, defaults, layout, cursor_position); + let (primitive, new_mouse_interaction) = child.draw( + self, + defaults, + layout, + cursor_position, + viewport, + ); if new_mouse_interaction > mouse_interaction { mouse_interaction = new_mouse_interaction; |