summaryrefslogtreecommitdiffstats
path: root/widget/src/lazy/responsive.rs
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón <hector@hecrj.dev>2023-09-10 01:14:39 +0200
committerLibravatar GitHub <noreply@github.com>2023-09-10 01:14:39 +0200
commit1af5ff41abdef243588199ef7988666655924a02 (patch)
tree4dfd518dd93b0393e77355867062c60d75e7f358 /widget/src/lazy/responsive.rs
parenta3489e4af960388e9f73988b88df361022a654a4 (diff)
parent1cc5bf59d7c4f47ae47d9a4e22ebaab3ea4975c1 (diff)
downloadiced-1af5ff41abdef243588199ef7988666655924a02.tar.gz
iced-1af5ff41abdef243588199ef7988666655924a02.tar.bz2
iced-1af5ff41abdef243588199ef7988666655924a02.zip
Merge pull request #2058 from iced-rs/explicit-text-caching
Explicit text caching
Diffstat (limited to '')
-rw-r--r--widget/src/lazy/responsive.rs19
1 files changed, 10 insertions, 9 deletions
diff --git a/widget/src/lazy/responsive.rs b/widget/src/lazy/responsive.rs
index b56545c8..0b819455 100644
--- a/widget/src/lazy/responsive.rs
+++ b/widget/src/lazy/responsive.rs
@@ -60,13 +60,13 @@ impl<'a, Message, Renderer> Content<'a, Message, Renderer>
where
Renderer: core::Renderer,
{
- fn layout(&mut self, renderer: &Renderer) {
+ fn layout(&mut self, tree: &mut Tree, renderer: &Renderer) {
if self.layout.is_none() {
- self.layout =
- Some(self.element.as_widget().layout(
- renderer,
- &layout::Limits::new(Size::ZERO, self.size),
- ));
+ self.layout = Some(self.element.as_widget().layout(
+ tree,
+ renderer,
+ &layout::Limits::new(Size::ZERO, self.size),
+ ));
}
}
@@ -104,7 +104,7 @@ where
R: Deref<Target = Renderer>,
{
self.update(tree, layout.bounds().size(), view);
- self.layout(renderer.deref());
+ self.layout(tree, renderer.deref());
let content_layout = Layout::with_offset(
layout.position() - Point::ORIGIN,
@@ -144,6 +144,7 @@ where
fn layout(
&self,
+ _tree: &mut Tree,
_renderer: &Renderer,
limits: &layout::Limits,
) -> layout::Node {
@@ -285,7 +286,7 @@ where
overlay_builder: |content: &mut RefMut<'_, Content<'_, _, _>>,
tree| {
content.update(tree, layout.bounds().size(), &self.view);
- content.layout(renderer);
+ content.layout(tree, renderer);
let Content {
element,
@@ -362,7 +363,7 @@ where
Renderer: core::Renderer,
{
fn layout(
- &self,
+ &mut self,
renderer: &Renderer,
bounds: Size,
position: Point,