ContextMenuController class
Builds and manages a context menu at a given location.
There can only ever be one context menu shown at a given time in the entire app. Calling show on one instance of this class will hide any other shown instances.
This example shows how to use a GestureDetector to show a context menu
anywhere in a widget subtree that receives a right click or long press.
link
To create a local project with this code sample, run:
flutter create --sample=widgets.ContextMenuController.1 mysample
See also:
- BrowserContextMenu, which allows the browser's context menu on web to be disabled and Flutter-rendered context menus to appear.
Constructors
- ContextMenuController({VoidCallback? onRemove})
- Creates a context menu that can be shown with show.
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- isShown → bool
-
True if and only if this menu is currently being shown.
no setter
- onRemove → VoidCallback?
-
Called when this menu is removed.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
markNeedsBuild(
) → void - Cause the underlying OverlayEntry to rebuild during the next pipeline flush.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
remove(
) → void - Remove this menu from the UI.
-
show(
{required BuildContext context, required WidgetBuilder contextMenuBuilder, Widget? debugRequiredFor}) → void - Shows the given context menu.
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
removeAny(
) → void - Remove the currently shown context menu from the UI.