diff options
author | 2020-03-30 17:28:55 +0200 | |
---|---|---|
committer | 2020-03-30 17:28:55 +0200 | |
commit | d07304fb85c4ea7293b61c5d0a366ffbbc511de2 (patch) | |
tree | 7337c03004fd8addb891385f67ef60f11d3ceee2 /native/src/widget/button.rs | |
parent | 0539cd1b85d00a2accca200184a5980527851539 (diff) | |
download | iced-d07304fb85c4ea7293b61c5d0a366ffbbc511de2.tar.gz iced-d07304fb85c4ea7293b61c5d0a366ffbbc511de2.tar.bz2 iced-d07304fb85c4ea7293b61c5d0a366ffbbc511de2.zip |
Hash type ids in `Widget::hash_layout` impls
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 24a8bf94..7b5c349c 100644 --- a/native/src/widget/button.rs +++ b/native/src/widget/button.rs @@ -143,7 +143,7 @@ impl State { impl<'a, Message, Renderer> Widget<Message, Renderer> for Button<'a, Message, Renderer> where - Renderer: self::Renderer, + Renderer: 'static + self::Renderer, Message: Clone, { fn width(&self) -> Length { @@ -234,6 +234,8 @@ where } fn hash_layout(&self, state: &mut Hasher) { + std::any::TypeId::of::<Button<'_, (), Renderer>>().hash(state); + self.width.hash(state); self.content.hash_layout(state); } @@ -274,7 +276,7 @@ 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, + Renderer: 'static + self::Renderer, Message: 'a + Clone, { fn from( |