show static method
Future<bool?>
show({
- BuildContext? context,
- required String title,
- required String message,
- String? confirmLabel,
- String? cancelLabel,
- bool? barrierDismissible,
- DraftModeUIDialogStyle mode = DraftModeUIDialogStyle.confirm,
- Duration? autoConfirm,
Displays the dialog using platform-aware styling and returns the choice.
Provide a context argument or call DraftModeUIContext.init earlier in
the app lifecycle so the helper can derive a fallback navigator context.
Implementation
static Future<bool?> show({
BuildContext? context,
required String title,
required String message,
String? confirmLabel,
String? cancelLabel,
bool? barrierDismissible,
DraftModeUIDialogStyle mode = DraftModeUIDialogStyle.confirm,
Duration? autoConfirm,
}) async {
final resolvedContext = DraftModeUIContext.buildContext(context);
final style = DraftModeUIPlatform.resolveStyle(resolvedContext);
final bool dismissible =
barrierDismissible ?? style == DraftModePlatformStyle.android;
final widget = DraftModeUIDialog(
title: title,
message: message,
confirmLabel: confirmLabel,
cancelLabel: cancelLabel,
mode: mode,
autoConfirm: autoConfirm,
);
if (style == DraftModePlatformStyle.ios) {
return showCupertinoDialog<bool>(
context: resolvedContext,
barrierDismissible: dismissible,
builder: (_) => widget,
);
}
return material.showDialog<bool>(
context: resolvedContext,
barrierDismissible: dismissible,
builder: (_) => widget,
);
}