diff options
author | 2024-10-24 13:48:42 +0200 | |
---|---|---|
committer | 2024-10-24 13:48:42 +0200 | |
commit | 089e629f4103bbd248c5f80441774d6ce98680fe (patch) | |
tree | f9a3266f3507c993c00e9cc60233d934dca851fe | |
parent | 659669dd5810d470d51f528495cab2f676eb58ed (diff) | |
download | iced-089e629f4103bbd248c5f80441774d6ce98680fe.tar.gz iced-089e629f4103bbd248c5f80441774d6ce98680fe.tar.bz2 iced-089e629f4103bbd248c5f80441774d6ce98680fe.zip |
Fix `responsive` diffing when `Tree` is emptied by ancestors
-rw-r--r-- | widget/src/lazy/responsive.rs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/widget/src/lazy/responsive.rs b/widget/src/lazy/responsive.rs index a7a99f56..a6c40ab0 100644 --- a/widget/src/lazy/responsive.rs +++ b/widget/src/lazy/responsive.rs @@ -83,7 +83,10 @@ where new_size: Size, view: &dyn Fn(Size) -> Element<'a, Message, Theme, Renderer>, ) { - if self.size == new_size { + let is_tree_empty = + tree.tag == tree::Tag::stateless() && tree.children.is_empty(); + + if !is_tree_empty && self.size == new_size { return; } |