removePadding method Null safety

MediaQueryData removePadding(
  1. {bool removeLeft = false,
  2. bool removeTop = false,
  3. bool removeRight = false,
  4. bool removeBottom = false}
)

Creates a copy of this media query data but with the given paddings replaced with zero.

The removeLeft, removeTop, removeRight, and removeBottom arguments must not be null. If all four are false (the default) then this MediaQueryData is returned unmodified.

See also:

Implementation

MediaQueryData removePadding({
  bool removeLeft = false,
  bool removeTop = false,
  bool removeRight = false,
  bool removeBottom = false,
}) {
  if (!(removeLeft || removeTop || removeRight || removeBottom)) {
    return this;
  }
  return copyWith(
    padding: padding.copyWith(
      left: removeLeft ? 0.0 : null,
      top: removeTop ? 0.0 : null,
      right: removeRight ? 0.0 : null,
      bottom: removeBottom ? 0.0 : null,
    ),
    viewPadding: viewPadding.copyWith(
      left: removeLeft ? math.max(0.0, viewPadding.left - padding.left) : null,
      top: removeTop ? math.max(0.0, viewPadding.top - padding.top) : null,
      right: removeRight ? math.max(0.0, viewPadding.right - padding.right) : null,
      bottom: removeBottom ? math.max(0.0, viewPadding.bottom - padding.bottom) : null,
    ),
  );
}