isUniform property Null safety

bool isUniform

Whether all four sides of the border are identical. Uniform borders are typically more efficient to paint.

A uniform border by definition has no text direction dependency and therefore could be expressed as a Border, even if it is currently a BorderDirectional. A uniform border can also be expressed as a RoundedRectangleBorder.


bool get isUniform {
  final Color topColor = top.color;
  if (start.color != topColor ||
      end.color != topColor ||
      bottom.color != topColor)
    return false;

  final double topWidth = top.width;
  if (start.width != topWidth ||
      end.width != topWidth ||
      bottom.width != topWidth)
    return false;

  final BorderStyle topStyle =;
  if ( != topStyle || != topStyle || != topStyle)
    return false;

  return true;