update method
Updates the widget configuration to newWidget.
Implementation
@override
void update(Widget newWidget) {
super.update(newWidget);
final newWidgetList = (newWidget as MultiChildRenderObjectWidget).children;
final container =
renderObject as ContainerRenderObjectMixin<RenderObject, ParentData>;
final newChildren = <Element>[];
final oldChildren = List<Element?>.from(_children);
container.clear();
for (int i = 0; i < newWidgetList.length; i++) {
final newWidgetChild = newWidgetList[i];
final child = _findOrCreateChild(newWidgetChild, oldChildren);
newChildren.add(child);
if (child.renderObject != null) {
container.setupParentData(child.renderObject!);
container.add(child.renderObject!);
}
}
_unmountOldChildren(oldChildren);
_children = newChildren;
}