diff --git a/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricReconciler.java b/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricReconciler.java index cc851c228..3e8eca9ca 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricReconciler.java +++ b/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricReconciler.java @@ -96,9 +96,6 @@ public class FabricReconciler { indicesToRemove.add(0, j); if (!addedTags.contains(nodeToRemove.getReactTag())) { tagsToDelete.add(nodeToRemove.getReactTag()); - // TODO: T26729293 since we are not cloning ReactShadowNode's we need to "manually" remove - // from the ReactShadowTree when one of the nodes is deleted in JS. - nodeToRemove.getParent().removeChildAt(j); } } diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java index 53a27c440..c5727e664 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java @@ -150,9 +150,7 @@ public class ReactShadowNodeImpl implements ReactShadowNode @Override public ReactShadowNodeImpl mutableCopy() { ReactShadowNodeImpl copy = copy(); - copy.mYogaNode = mYogaNode; - // TODO: T26729293 clone YogaNode instead of reusing the same instance - //copy.mYogaNode = mYogaNode.clone(); + copy.mYogaNode = mYogaNode.clone(); copy.mNativeChildren = mNativeChildren == null ? null : new ArrayList<>(mNativeChildren); copy.mTotalNativeChildren = mTotalNativeChildren; copy.mChildren = mChildren == null ? null : new ArrayList<>(mChildren); @@ -170,9 +168,7 @@ public class ReactShadowNodeImpl implements ReactShadowNode @Override public ReactShadowNodeImpl mutableCopyWithNewChildren() { ReactShadowNodeImpl copy = copy(); - copy.mYogaNode = mYogaNode; - // TODO: T26729293 clone YogaNode instead of reusing the same instance - //copy.mYogaNode = mYogaNode.clone(); + copy.mYogaNode = mYogaNode.cloneWithNewChildren(); copy.mNativeChildren = null; copy.mChildren = null; copy.mTotalNativeChildren = 0;