shouldPopOn method

  1. @override
bool shouldPopOn(
  1. MultiStateSheetController controller
)
override

Controls how sheet should react on pop events.

Implementation

@override
bool shouldPopOn(MultiStateSheetController<dynamic> controller) {
  final closestState = controller.closestState as FourStateSheet;
  switch (closestState) {
    case FourStateSheet.hidden:
      controller.reset();
      return true;

    case FourStateSheet.halfOpen:
      controller.setState(FourStateSheet.hidden);
      return false;

    case FourStateSheet.open:
      controller.setState(FourStateSheet.halfOpen);
      return false;

    case FourStateSheet.expanded:
      controller.setState(FourStateSheet.open);
      return false;
  }
}