requestWidgetToRebuild method

void requestWidgetToRebuild(
  1. AdapterUpdateReason reason
)
inherited

Implementation

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

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