FluentDialogRoute<T> constructor
FluentDialogRoute<T> ({
- required WidgetBuilder builder,
- required BuildContext context,
- CapturedThemes? themes,
- bool barrierDismissible = true,
- Color? barrierColor = const Color(0x8A000000),
- String? barrierLabel,
- Duration transitionDuration = const Duration(milliseconds: 200),
- RouteTransitionsBuilder? transitionBuilder = _defaultTransitionBuilder,
- RouteSettings? settings,
- bool dismissWithEsc = true,
A dialog route with Fluent entrance and exit animations, modal barrier color
Implementation
FluentDialogRoute({
required WidgetBuilder builder,
required BuildContext context,
CapturedThemes? themes,
super.barrierDismissible,
super.barrierColor = const Color(0x8A000000),
String? barrierLabel,
super.transitionDuration,
super.transitionBuilder = _defaultTransitionBuilder,
super.settings,
bool dismissWithEsc = true,
}) : super(
pageBuilder: (context, animation, secondaryAnimation) {
final pageChild = Builder(builder: builder);
final dialog = themes?.wrap(pageChild) ?? pageChild;
return SafeArea(
child: Actions(
actions: {
if (dismissWithEsc) DismissIntent: _DismissAction(context),
},
child: FocusScope(
autofocus: true,
child: dialog,
),
),
);
},
barrierLabel: barrierLabel ??
FluentLocalizations.of(context).modalBarrierDismissLabel,
);