show<T> static method

Future<T?> show<T>({
  1. required BuildContext context,
  2. required List<GlassDialogAction> actions,
  3. String? title,
  4. String? message,
  5. Widget? content,
  6. LiquidGlassSettings? settings,
  7. GlassQuality quality = GlassQuality.standard,
  8. bool barrierDismissible = false,
  9. Color? barrierColor,
  10. double maxWidth = 280,
})

Shows a glass dialog.

Returns a Future that resolves to the value (if any) passed to Navigator.pop when the dialog is dismissed.

Parameters:

  • context: Build context for showing the dialog
  • title: Title text (optional)
  • message: Message text (optional)
  • content: Custom content widget (optional)
  • actions: Action buttons (required, 1-3 actions)
  • settings: Glass effect settings (null uses defaults)
  • quality: Rendering quality (defaults to standard)
  • barrierDismissible: Whether tapping outside dismisses (default: false)
  • barrierColor: Color of the modal barrier (defaults to black54)
  • maxWidth: Maximum width of dialog (default: 280)

Example:

final result = await GlassDialog.show<bool>(
  context: context,
  title: 'Confirm',
  message: 'Are you sure?',
  actions: [
    GlassDialogAction(
      label: 'Cancel',
      onPressed: () => Navigator.pop(context, false),
    ),
    GlassDialogAction(
      label: 'Confirm',
      onPressed: () => Navigator.pop(context, true),
    ),
  ],
);

Implementation

static Future<T?> show<T>({
  required BuildContext context,
  required List<GlassDialogAction> actions,
  String? title,
  String? message,
  Widget? content,
  LiquidGlassSettings? settings,
  GlassQuality quality = GlassQuality.standard,
  bool barrierDismissible = false,
  Color? barrierColor,
  double maxWidth = 280,
}) {
  return showCupertinoDialog<T>(
    context: context,
    barrierDismissible: barrierDismissible,
    builder: (context) => GlassDialog(
      title: title,
      message: message,
      content: content,
      actions: actions,
      settings: settings,
      quality: quality,
      maxWidth: maxWidth,
    ),
  );
}