diff options
author | 2020-10-17 21:10:26 +0200 | |
---|---|---|
committer | 2020-10-17 21:10:26 +0200 | |
commit | 5d0f7ba3fcaa96dc0509c8e9edc587411c21f3db (patch) | |
tree | 0255f294ce03a71c543617271bab3f32ea33b211 /native/src/widget/button.rs | |
parent | 17f0db57c3be440642a057e0a53106fcecdf4564 (diff) | |
parent | d7a5e5445561fb1bdfd1a6904b20750f29dd71fd (diff) | |
download | iced-5d0f7ba3fcaa96dc0509c8e9edc587411c21f3db.tar.gz iced-5d0f7ba3fcaa96dc0509c8e9edc587411c21f3db.tar.bz2 iced-5d0f7ba3fcaa96dc0509c8e9edc587411c21f3db.zip |
Merge pull request #568 from hecrj/improvement/early-clone-message-bounds
Require `Clone` for `Message` early when needed
Diffstat (limited to 'native/src/widget/button.rs')
-rw-r--r-- | native/src/widget/button.rs | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/native/src/widget/button.rs b/native/src/widget/button.rs index c932da2b..fd74563a 100644 --- a/native/src/widget/button.rs +++ b/native/src/widget/button.rs @@ -18,6 +18,7 @@ use std::hash::Hash; /// # type Button<'a, Message> = /// # iced_native::Button<'a, Message, iced_native::renderer::Null>; /// # +/// #[derive(Clone)] /// enum Message { /// ButtonPressed, /// } @@ -41,6 +42,7 @@ pub struct Button<'a, Message, Renderer: self::Renderer> { impl<'a, Message, Renderer> Button<'a, Message, Renderer> where + Message: Clone, Renderer: self::Renderer, { /// Creates a new [`Button`] with some local [`State`] and the given @@ -142,8 +144,8 @@ impl State { impl<'a, Message, Renderer> Widget<Message, Renderer> for Button<'a, Message, Renderer> where - Renderer: self::Renderer, Message: Clone, + Renderer: self::Renderer, { fn width(&self) -> Length { self.width @@ -272,8 +274,8 @@ pub trait Renderer: crate::Renderer + Sized { impl<'a, Message, Renderer> From<Button<'a, Message, Renderer>> for Element<'a, Message, Renderer> where - Renderer: 'a + self::Renderer, Message: 'a + Clone, + Renderer: 'a + self::Renderer, { fn from( button: Button<'a, Message, Renderer>, |