Diff children only when hash differs in lazy::Cached
This commit is contained in:
parent
459d32b984
commit
b5d33b0370
1 changed files with 7 additions and 5 deletions
|
|
@ -97,12 +97,14 @@ where
|
||||||
|
|
||||||
let element = (self.view)().into();
|
let element = (self.view)().into();
|
||||||
current.element = Rc::new(RefCell::new(element));
|
current.element = Rc::new(RefCell::new(element));
|
||||||
}
|
|
||||||
|
|
||||||
(*self.element.borrow_mut()) = Some(current.element.clone());
|
(*self.element.borrow_mut()) = Some(current.element.clone());
|
||||||
tree.diff_children(std::slice::from_ref(
|
tree.diff_children(std::slice::from_ref(
|
||||||
&self.element.borrow().as_ref().unwrap().borrow().as_widget(),
|
&self.element.borrow().as_ref().unwrap().borrow().as_widget(),
|
||||||
));
|
));
|
||||||
|
} else {
|
||||||
|
(*self.element.borrow_mut()) = Some(current.element.clone());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn width(&self) -> Length {
|
fn width(&self) -> Length {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue