1. override
NavigationGestureController startPopGesture(NavigatorState navigator)

If the route's transition can be popped via a user gesture (e.g. the iOS back gesture), this should return a controller object that can be used to control the transition animation's progress. Otherwise, it should return null.

Source

@override
NavigationGestureController startPopGesture(NavigatorState navigator) {
  if (controller.status != AnimationStatus.completed)
    return null;
  assert(_backGestureController == null);
  _backGestureController = new _CupertinoBackGestureController(
    navigator: navigator,
    controller: controller,
    onDisposed: () { _backGestureController = null; }
  );
  return _backGestureController;
}