showCustomDialog<T> static method

Future<T?> showCustomDialog<T>(
  1. BuildContext context, {
  2. required WidgetBuilder builder,
  3. bool barrierDismissible = true,
  4. Color? barrierColor,
  5. String? barrierLabel,
  6. bool useRootNavigator = true,
  7. RouteSettings? routeSettings,
})

Implementation

static Future<T?> showCustomDialog<T>(
  BuildContext context, {
  required WidgetBuilder builder,
  bool barrierDismissible = true,
  Color? barrierColor,
  String? barrierLabel,
  bool useRootNavigator = true,
  RouteSettings? routeSettings,
}) {
  final Color barrierColor = DialogTheme.of(context).barrierColor!;

  final CapturedThemes themes = InheritedTheme.capture(
    from: context,
    to: Navigator.of(
      context,
      rootNavigator: useRootNavigator,
    ).context,
  );

  return Navigator.of(context, rootNavigator: useRootNavigator).push<T>(
    DialogRoute<T>(
      context: context,
      pageBuilder: (context, animation, secondaryAnimation) =>
          builder(context),
      barrierColor: barrierColor,
      barrierDismissible: barrierDismissible,
      barrierLabel: barrierLabel,
      settings: routeSettings,
      themes: themes,
    ),
  );
}