requestWidgetToRebuild method

void requestWidgetToRebuild(
  1. AdapterUpdateReason reason
)

Implementation

void requestWidgetToRebuild(AdapterUpdateReason reason) {
  switch (reason) {
    case AddEventUpdateReason _:
      target.hasEvent = true;
      break;
    case AddScrollerUpdateReason _:
      target.hasScroll = true;
      break;
    case ToPositionPlaceHolderUpdateReason r:
      target.holderAttachedPositionedElement = r.positionedElement;
      target.holderAttachedContainingBlockElement = r.containingBlockElement;
      break;
    case ToStaticLayoutUpdateReason _:
      target.holderAttachedPositionedElement = null;
      target.holderAttachedContainingBlockElement = null;
      break;
    case AttachPositionedChild r:
      target.addOutOfFlowPositionedElement(r.positionedElement);
      break;
    default:
      break;
  }

  for (var element in _widgetRenderObjects.keys) {
    if (element is WebRenderLayoutRenderObjectElement) {
      element.requestForBuild(reason);
    } else if (element is RenderWidgetElement) {
      element.requestForBuild(reason);
    } else if (element is WebFRenderReplacedRenderObjectElement) {
      element.requestForBuild(reason);
    }
  }
}