showContextMenu<T> function
Future<T?>
showContextMenu<T>(
- BuildContext context, {
- required ContextMenu contextMenu,
- RouteSettings? routeSettings,
- bool? opaque,
- bool? barrierDismissible,
- Color? barrierColor,
- String? barrierLabel,
- Duration? transitionDuration,
- Duration? reverseTransitionDuration,
- RouteTransitionsBuilder? transitionsBuilder,
- bool allowSnapshotting = true,
- bool maintainState = false,
Shows the root context menu popup.
Implementation
Future<T?> showContextMenu<T>(
BuildContext context, {
required ContextMenu contextMenu,
RouteSettings? routeSettings,
bool? opaque,
bool? barrierDismissible,
Color? barrierColor,
String? barrierLabel,
Duration? transitionDuration,
Duration? reverseTransitionDuration,
RouteTransitionsBuilder? transitionsBuilder,
bool allowSnapshotting = true,
bool maintainState = false,
}) async {
final menuState = ContextMenuState(menu: contextMenu);
return await Navigator.push<T>(
context,
PageRouteBuilder<T>(
pageBuilder: (context, animation, secondaryAnimation) {
return Stack(
children: [ContextMenuWidget(menuState: menuState)],
);
},
settings: routeSettings ?? const RouteSettings(name: "context-menu"),
fullscreenDialog: true,
barrierDismissible: barrierDismissible ?? true,
opaque: opaque ?? false,
transitionDuration: transitionDuration ?? Duration.zero,
reverseTransitionDuration: reverseTransitionDuration ?? Duration.zero,
barrierColor: barrierColor,
barrierLabel: barrierLabel,
transitionsBuilder: transitionsBuilder ?? _defaultTransitionsBuilder,
allowSnapshotting: allowSnapshotting,
maintainState: maintainState,
),
);
}