didLayout method
      
void
didLayout()
      
     
    
    
Implementation
void didLayout() {
  scrollableViewportSize = Size(
      _contentSize!.width + renderStyle.paddingLeft.computedValue + renderStyle.paddingRight.computedValue,
      _contentSize!.height + renderStyle.paddingTop.computedValue + renderStyle.paddingBottom.computedValue);
  setUpOverflowScroller(scrollableSize, scrollableViewportSize);
  if (positionedHolder != null && renderStyle.position != CSSPositionType.sticky) {
    // Make position holder preferred size equal to current element boundary size except sticky element.
    positionedHolder!.preferredSize = Size.copy(size);
  }
  // Positioned renderBoxModel will not trigger parent to relayout. Needs to update it's offset for itself.
  if (parentData is RenderLayoutParentData) {
    RenderLayoutParentData selfParentData = parentData as RenderLayoutParentData;
    RenderBoxModel? parentBox = parent as RenderBoxModel?;
    if (selfParentData.isPositioned && parentBox!.hasSize) {
      CSSPositionedLayout.applyPositionedChildOffset(parentBox, this);
    }
  }
  needsLayout = false;
  dispatchResize(contentSize, boxSize ?? Size.zero);
  if (isSelfSizeChanged) {
    renderStyle.markTransformMatrixNeedsUpdate();
  }
}