SelectionArea class

A widget that introduces an area for user selections with adaptive selection controls.

This widget creates a SelectableRegion with platform-adaptive selection controls.

Flutter widgets are not selectable by default. To enable selection for a specific screen, consider wrapping the body of the Route with a SelectionArea.

The SelectionArea widget must have a Localizations ancestor that contains a MaterialLocalizations delegate; using the MaterialApp widget ensures that such an ancestor is present.

This example shows how to make a screen selectable.
link

To create a local project with this code sample, run:
flutter create --sample=material.SelectionArea.1 mysample

See also:

Inheritance

Constructors

SelectionArea({Key? key, FocusNode? focusNode, TextSelectionControls? selectionControls, SelectableRegionContextMenuBuilder? contextMenuBuilder = _defaultContextMenuBuilder, TextMagnifierConfiguration? magnifierConfiguration, ValueChanged<SelectedContent?>? onSelectionChanged, required Widget child})
Creates a SelectionArea.
const

Properties

child → Widget
The child widget this selection area applies to.
final
contextMenuBuilder → SelectableRegionContextMenuBuilder?
Builds the text selection toolbar when requested by the user.
final
focusNode → FocusNode?
An optional focus node to use as the focus node for this widget.
final
hashCode → int
The hash code for this object.
no setterinherited
key → Key?
Controls how one widget replaces another widget in the tree.
finalinherited
magnifierConfiguration → TextMagnifierConfiguration?
The configuration for the magnifier in the selection region.
final
onSelectionChanged → ValueChanged<SelectedContent?>?
Called when the selected content changes.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
selectionControls → TextSelectionControls?
The delegate to build the selection handles and toolbar.
final

Methods

createElement() → StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() → State<StatefulWidget>
Creates the mutable state for this widget at a given location in the tree.
override
debugDescribeChildren() → List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) → String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String
Returns a one-line detailed description of the object.
inherited
toStringShort() → String
A short, textual description of this widget.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited