forwardAndRemoveAll static method

Future forwardAndRemoveAll(
  1. Widget widget, {
  2. String? name,
})

Forward navigation and remove all routes

Implementation

static Future<dynamic> forwardAndRemoveAll(Widget widget,
    {String? name}) async {
  if (onBeforePush != null) {
    onBeforePush!(widget);
  }

  dynamic routeFuture = await navigatorKey.currentState!.pushAndRemoveUntil(
    useCupertinoTransition
        ? CupertinoPageRoute(
            builder: (_) => widget,
            settings: RouteSettings(name: name ?? widget.toString()),
          )
        : MaterialPageRoute(
            builder: (_) => widget,
            settings: RouteSettings(name: name ?? widget.toString()),
          ),
    (r) => false,
  );

  if (onAfterPush != null) {
    onAfterPush!(widget);
  }
  return routeFuture;
}