maybePop<T extends Object> method

  1. @optionalTypeArgs
Future<bool> maybePop <T extends Object>(
  1. BuildContext context,
  2. [T result]
)
@optionalTypeArgs

Consults the current route's Route.willPop method, and acts accordingly, potentially popping the route as a result; returns whether the pop request should be considered handled.

If Route.willPop returns RoutePopDisposition.pop, then the pop method is called, and this method returns true, indicating that it handled the pop request.

If Route.willPop returns RoutePopDisposition.doNotPop, then this method returns true, but does not do anything beyond that.

If Route.willPop returns RoutePopDisposition.bubble, then this method returns false, and the caller is responsible for sending the request to the containing scope (e.g. by closing the application).

This method is typically called for a user-initiated pop. For example on Android it's called by the binding for the system's back button.

The T type argument is the type of the return value of the current route. (Typically this isn't known; consider specifying dynamic or Null.) See also:

  • Form, which provides an onWillPop callback that enables the form to veto a pop initiated by the app's back button.
  • ModalRoute, which provides a scopedWillPopCallback that can be used to define the route's willPop method.

Implementation

@optionalTypeArgs
static Future<bool> maybePop<T extends Object>(BuildContext context, [ T result ]) {
  return Navigator.of(context).maybePop<T>(result);
}