removeChild method
Implementation
void removeChild(Box child) {
final index = _children.indexOf(child);
if (index == -1) return;
final newChildren = List<Box>.from(_children)..removeAt(index);
_attachChildren(newChildren);
child._parent = null;
child.parentData.nextSibling = null;
child.parentData.previousSibling = null;
markNeedsLayout();
}