summaryrefslogtreecommitdiffstats
path: root/examples/modal
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2023-08-30 04:31:21 +0200
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2023-08-30 04:31:21 +0200
commited3454301e663a7cb7d73cd56b57b188f4d14a2f (patch)
tree8118d1305c2eba3a1b45d04634cd0e8d050fc0fa /examples/modal
parentc9bd48704dd9679c033dd0b8588e2744a3df44a0 (diff)
downloadiced-ed3454301e663a7cb7d73cd56b57b188f4d14a2f.tar.gz
iced-ed3454301e663a7cb7d73cd56b57b188f4d14a2f.tar.bz2
iced-ed3454301e663a7cb7d73cd56b57b188f4d14a2f.zip
Implement explicit text caching in the widget state tree
Diffstat (limited to 'examples/modal')
-rw-r--r--examples/modal/src/main.rs11
1 files changed, 9 insertions, 2 deletions
diff --git a/examples/modal/src/main.rs b/examples/modal/src/main.rs
index 8a48f830..5d47f02c 100644
--- a/examples/modal/src/main.rs
+++ b/examples/modal/src/main.rs
@@ -285,10 +285,13 @@ mod modal {
fn layout(
&self,
+ tree: &widget::Tree,
renderer: &Renderer,
limits: &layout::Limits,
) -> layout::Node {
- self.base.as_widget().layout(renderer, limits)
+ self.base
+ .as_widget()
+ .layout(&tree.children[0], renderer, limits)
}
fn on_event(
@@ -408,7 +411,11 @@ mod modal {
.width(Length::Fill)
.height(Length::Fill);
- let mut child = self.content.as_widget().layout(renderer, &limits);
+ let mut child = self
+ .content
+ .as_widget()
+ .layout(self.tree, renderer, &limits);
+
child.align(Alignment::Center, Alignment::Center, limits.max());
let mut node = layout::Node::with_children(self.size, vec![child]);