popupConstraints property

  1. @protected
BoxConstraints get popupConstraints

弹出层默认的尺寸约束,如果用户没有指定约束条件,则 overlaySize 将直接作为弹出层默认最大尺寸, 若用户指定了约束条件,则将 widget.constraints 与 overlaySize 进行联合取值。

Implementation

@protected
BoxConstraints get popupConstraints {
  final maxSize = overlaySize;
  if (widget.constraints == null) return BoxConstraints.loose(maxSize);

  final maxWidth = min(widget.constraints!.maxWidth, maxSize.width);
  final maxHeight = min(widget.constraints!.maxHeight, maxSize.height);

  return BoxConstraints(
    minWidth: min(widget.constraints!.minWidth, maxWidth),
    maxWidth: maxWidth,
    minHeight: min(widget.constraints!.minHeight, maxHeight),
    maxHeight: maxHeight,
  );
}