openDialog<T> method
Future<T?>
openDialog<T>({
- required Widget dialog,
- bool barrierDismissible = true,
- Color? barrierColor = Colors.black54,
- String? barrierLabel,
- bool useSafeArea = true,
- RouteSettings? routeSettings,
- Offset? anchorPoint,
- TraversalEdgeBehavior? traversalEdgeBehavior,
override
Implementation
@override
Future<T?> openDialog<T>({
required Widget dialog,
bool barrierDismissible = true,
Color? barrierColor = Colors.black54,
String? barrierLabel,
bool useSafeArea = true,
bool useRootNavigator = false,
RouteSettings? routeSettings,
Offset? anchorPoint,
TraversalEdgeBehavior? traversalEdgeBehavior,
}) async {
String runtimeType = dialog.runtimeType.toString();
registerPopUp(runtimeType: runtimeType, key: dialog.key, isDialog: true);
String dialogNameAndKey = openedDialogOrBottomSheetList.last;
T? output;
output = await showDialog<T>(
context: context,
builder: (_) => dialog,
barrierDismissible: barrierDismissible,
barrierColor: barrierColor,
barrierLabel: barrierLabel,
useSafeArea: useSafeArea,
useRootNavigator: useRootNavigator,
routeSettings: routeSettings ?? RouteSettings(name: dialogNameAndKey),
anchorPoint: anchorPoint,
traversalEdgeBehavior: traversalEdgeBehavior,
);
removePopUpNameAndKey(nameAndKey: dialogNameAndKey, isDialog: true);
return output;
}