getPosition method

  1. @override
Position getPosition(
  1. BuildContext context,
  2. Position highlightPosition,
  3. Size parentSize
)
override

Returns child position according to the highlight position and parent size.

Implementation

@override
Position getPosition(
  BuildContext context,
  Position highlightPosition,
  Size parentSize,
) {
  switch (direction) {
    case AxisDirection.up:
      return Position(
        right: parentSize.width - highlightPosition.right,
        bottom: parentSize.height - highlightPosition.top,
        left: highlightPosition.left,
      );
    case AxisDirection.right:
      return Position(
        top: highlightPosition.top,
        bottom: parentSize.height - highlightPosition.bottom,
        right: parentSize.width - highlightPosition.left,
      );
    case AxisDirection.left:
      return Position(
        top: highlightPosition.top,
        bottom: parentSize.height - highlightPosition.bottom,
        left: highlightPosition.right,
      );
    default:
      return Position(
        top: highlightPosition.bottom,
        right: parentSize.width - highlightPosition.right,
        left: highlightPosition.left,
      );
  }
}