diff options
author | 2022-02-16 17:07:25 +0700 | |
---|---|---|
committer | 2022-02-16 17:07:25 +0700 | |
commit | 019af8ddbf96680ffcee2b3407819e90575760cb (patch) | |
tree | 45be429d1407d6ebfa46ff05e6fe5eb0fb5dd7e8 /pure/src/widget/container.rs | |
parent | 35e9b75e415ef3b9124051696b60628ef56afe47 (diff) | |
download | iced-019af8ddbf96680ffcee2b3407819e90575760cb.tar.gz iced-019af8ddbf96680ffcee2b3407819e90575760cb.tar.bz2 iced-019af8ddbf96680ffcee2b3407819e90575760cb.zip |
Add `overlay` support in `iced_pure` and port `PickList` :tada:
Diffstat (limited to 'pure/src/widget/container.rs')
-rw-r--r-- | pure/src/widget/container.rs | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/pure/src/widget/container.rs b/pure/src/widget/container.rs index f42b127d..8ad6a064 100644 --- a/pure/src/widget/container.rs +++ b/pure/src/widget/container.rs @@ -5,6 +5,7 @@ use iced_native::alignment; use iced_native::event::{self, Event}; use iced_native::layout; use iced_native::mouse; +use iced_native::overlay; use iced_native::renderer; use iced_native::widget::container; use iced_native::{ @@ -237,6 +238,19 @@ where self.content.as_widget().hash_layout(state); } + + fn overlay<'b>( + &'b mut self, + tree: &'b mut Tree, + layout: Layout<'_>, + renderer: &Renderer, + ) -> Option<overlay::Element<'b, Message, Renderer>> { + self.content.as_widget_mut().overlay( + &mut tree.children[0], + layout.children().next().unwrap(), + renderer, + ) + } } impl<'a, Message, Renderer> From<Container<'a, Message, Renderer>> |