diff options
author | 2019-10-29 02:13:22 +0100 | |
---|---|---|
committer | 2019-10-29 02:13:22 +0100 | |
commit | a3c55f75174f9bc87f80d7fe6236a71138d2fd77 (patch) | |
tree | e4e85df49a9e47f2a339437f61373d1539259f77 /native | |
parent | be488ac73837c9a741d900617840ee5c4ed74d61 (diff) | |
download | iced-a3c55f75174f9bc87f80d7fe6236a71138d2fd77.tar.gz iced-a3c55f75174f9bc87f80d7fe6236a71138d2fd77.tar.bz2 iced-a3c55f75174f9bc87f80d7fe6236a71138d2fd77.zip |
Stop leaking impl details in scrollable `Renderer`
Diffstat (limited to 'native')
-rw-r--r-- | native/src/widget/scrollable.rs | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/native/src/widget/scrollable.rs b/native/src/widget/scrollable.rs index 95e8c74d..f9d75863 100644 --- a/native/src/widget/scrollable.rs +++ b/native/src/widget/scrollable.rs @@ -1,6 +1,6 @@ use crate::{ - column, input::mouse, Element, Event, Hasher, Layout, Node, Point, Style, - Widget, + column, input::mouse, Element, Event, Hasher, Layout, Node, Point, + Rectangle, Style, Widget, }; pub use iced_core::scrollable::State; @@ -86,7 +86,16 @@ where layout: Layout<'_>, cursor_position: Point, ) -> Renderer::Output { - self::Renderer::draw(renderer, &self, layout, cursor_position) + let bounds = layout.bounds(); + let content_layout = layout.children().next().unwrap(); + + self::Renderer::draw( + renderer, + &self, + bounds, + content_layout, + cursor_position, + ) } fn hash_layout(&self, state: &mut Hasher) { @@ -98,7 +107,8 @@ pub trait Renderer: crate::Renderer + Sized { fn draw<Message>( &mut self, scrollable: &Scrollable<'_, Message, Self>, - layout: Layout<'_>, + bounds: Rectangle, + content_layout: Layout<'_>, cursor_position: Point, ) -> Self::Output; } |