From 6fd3f7909949a0303f1b583ea90a4ff556e1ae3a Mon Sep 17 00:00:00 2001 From: Ryan McGrath Date: Sun, 26 May 2019 02:17:49 -0700 Subject: [PATCH] New RenderEngine actually works, so now we can make set_state() work... --- lifecycle/src/reconciler/mod.rs | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/lifecycle/src/reconciler/mod.rs b/lifecycle/src/reconciler/mod.rs index 9a8bf78..344d0e5 100644 --- a/lifecycle/src/reconciler/mod.rs +++ b/lifecycle/src/reconciler/mod.rs @@ -105,12 +105,22 @@ impl RenderEngine { let (old_root, mut stretch) = trees.remove(key).ok_or_else(|| RenderEngineError::InvalidKeyError {})?; let patched_new_root = diff_and_patch_trees(old_root, new_root, &mut stretch, 0)?; + /*let window_size = Size { + width: Number::Defined(600.), + height: Number::Defined(600.) + };*/ + if let RSX::VirtualNode(node) = &patched_new_root { - walk_and_apply_styles(node, &mut stretch)?; + if let Some(layout_node) = &node.layout_node { + stretch.compute_layout(*layout_node, Size { + width: Number::Defined(600.), + height: Number::Defined(600.), + })?; + walk_and_apply_styles(node, &mut stretch)?; + } } trees.insert(*key, (patched_new_root, stretch)); - println!("RENDERED"); Ok(()) } }