showOverflowIndicator method
Implementation
void showOverflowIndicator(PaintingContext context,
{required Offset offset}) {
final List<DiagnosticsNode> debugOverflowHints = <DiagnosticsNode>[
ErrorDescription(
'The overflowing $runtimeType has an orientation of $_direction.',
),
ErrorDescription(
'The edge of the $runtimeType that is overflowing has been marked '
'in the rendering with a yellow and black striped pattern. This is '
'usually caused by the contents being too big for the $runtimeType.',
),
ErrorHint(
'Consider applying a flex factor (e.g. using an Expanded widget) to '
'force the children of the $runtimeType to fit within the available '
'space instead of being sized to their natural size.',
),
ErrorHint(
'This is considered an error condition because it indicates that there '
'is content that cannot be seen. If the content is legitimately bigger '
'than the available space, consider clipping it with a ClipRect widget '
'before putting it in the flex, or using a scrollable container rather '
'than a Flex, like a ListView.',
),
];
// Simulate a child rect that overflows by the right amount. This child
// rect is never used for drawing, just for determining the overflow
// location and amount.
final Rect overflowChildRect;
switch (_direction) {
case Axis.horizontal:
overflowChildRect =
Rect.fromLTWH(0.0, 0.0, size.width + _overflow, 0.0);
break;
case Axis.vertical:
overflowChildRect =
Rect.fromLTWH(0.0, 0.0, 0.0, size.height + _overflow);
break;
}
paintCustomOverflowIndicator(
context, offset, Offset.zero & size, overflowChildRect,
overflowHints: debugOverflowHints);
}