浏览代码

fix state

Evan Almloff 2 年之前
父节点
当前提交
4db3d8ff40
共有 3 个文件被更改,包括 2 次插入16 次删除
  1. 0 1
      packages/native-core/src/passes.rs
  2. 2 14
      packages/native-core/src/real_dom.rs
  3. 0 1
      packages/tui/src/layout.rs

+ 0 - 1
packages/native-core/src/passes.rs

@@ -183,7 +183,6 @@ impl<T: AnyMapLike + State> TypeErasedPass<T> {
             }
             }
             PassDirection::ChildToParent => {
             PassDirection::ChildToParent => {
                 while let Some(id) = dirty.pop_back() {
                 while let Some(id) = dirty.pop_back() {
-                    println!("running pass {:?} on {:?}", self.this_type_id, id);
                     if (self.pass)(id, tree, ctx) {
                     if (self.pass)(id, tree, ctx) {
                         nodes_updated.insert(id);
                         nodes_updated.insert(id);
                         if let Some(id) = tree.parent_id(id) {
                         if let Some(id) = tree.parent_id(id) {

+ 2 - 14
packages/native-core/src/real_dom.rs

@@ -76,13 +76,6 @@ impl<S: State + Send> RealDom<S> {
             }
             }
         }
         }
 
 
-        for pass in passes.iter_mut() {
-            println!("{:?}: {:?}", pass.this_type_id, pass.dependants);
-            println!("{:?}", pass.child_dependant);
-            println!("{:?}", pass.parent_dependant);
-            println!("{:?}", pass.pass_direction);
-        }
-
         let mut nodes_updated = FxHashMap::default();
         let mut nodes_updated = FxHashMap::default();
         let root_id = NodeId(0);
         let root_id = NodeId(0);
         nodes_updated.insert(root_id, NodeMask::ALL);
         nodes_updated.insert(root_id, NodeMask::ALL);
@@ -462,11 +455,7 @@ impl<S: State + Send> RealDom<S> {
             state: node.state.clone_or_default(),
             state: node.state.clone_or_default(),
             node_data: node.node_data.clone(),
             node_data: node.node_data.clone(),
         };
         };
-        let new_id = self.create_node(new_node, false);
-        let passes = S::non_clone_members();
-        for pass_id in &*passes {
-            self.passes_updated.insert(*pass_id, node_id);
-        }
+        let new_id = self.create_node(new_node, true);
 
 
         let self_ptr = self as *mut Self;
         let self_ptr = self as *mut Self;
         for child in self.tree.children_ids(node_id).unwrap() {
         for child in self.tree.children_ids(node_id).unwrap() {
@@ -532,10 +521,9 @@ impl<S: State + Send> TreeView<Node<S>> for RealDom<S> {
 
 
 impl<S: State + Send> TreeLike<Node<S>> for RealDom<S> {
 impl<S: State + Send> TreeLike<Node<S>> for RealDom<S> {
     fn create_node(&mut self, node: Node<S>) -> NodeId {
     fn create_node(&mut self, node: Node<S>) -> NodeId {
-        let mask = NodeMask::ALL;
         let id = self.tree.create_node(node);
         let id = self.tree.create_node(node);
         self.tree.get_mut(id).unwrap().node_data.node_id = id;
         self.tree.get_mut(id).unwrap().node_data.node_id = id;
-        self.mark_dirty(id, mask);
+        self.nodes_created.insert(id);
         id
         id
     }
     }
 
 

+ 0 - 1
packages/tui/src/layout.rs

@@ -65,7 +65,6 @@ impl Pass for TaffyLayout {
         >,
         >,
         ctx: &SendAnyMap,
         ctx: &SendAnyMap,
     ) -> bool {
     ) -> bool {
-        println!("running layout pass on node: \n{:#?}", node_view);
         let mut changed = false;
         let mut changed = false;
         let taffy: &Arc<Mutex<Taffy>> = ctx.get().unwrap();
         let taffy: &Arc<Mutex<Taffy>> = ctx.get().unwrap();
         let mut taffy = taffy.lock().expect("poisoned taffy");
         let mut taffy = taffy.lock().expect("poisoned taffy");