TextSelectionControls class abstract

An interface for building the selection UI, to be provided by the implementer of the toolbar widget.

Parts of this class, including buildToolbar, have been deprecated in favor of EditableText.contextMenuBuilder, which is now the preferred way to customize the context menus.

Use with EditableText.contextMenuBuilder

For backwards compatibility during the deprecation period, when EditableText.selectionControls is set to an object that does not mix in TextSelectionHandleControls, EditableText.contextMenuBuilder is ignored in favor of the deprecated buildToolbar.

To migrate code from buildToolbar to the preferred EditableText.contextMenuBuilder, while still using buildHandle, mix in TextSelectionHandleControls into the TextSelectionControls subclass when moving any toolbar code to a callback passed to EditableText.contextMenuBuilder.

In due course, buildToolbar will be removed, and the mixin will no longer be necessary as a way to flag to the framework that the code has been migrated and does not expect buildToolbar to be called.

For more information, see docs.flutter.cn/release/breaking-changes/context-menus.

See also:

  • SelectionArea, which selects appropriate text selection controls based on the current platform.
Implementers

Constructors

TextSelectionControls()

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

buildHandle(BuildContext context, TextSelectionHandleType type, double textLineHeight, [VoidCallback? onTap]) Widget
Builds a selection handle of the given type.
buildToolbar(BuildContext context, Rect globalEditableRegion, double textLineHeight, Offset selectionMidpoint, List<TextSelectionPoint> endpoints, TextSelectionDelegate delegate, ValueListenable<ClipboardStatus>? clipboardStatus, Offset? lastSecondaryTapDownPosition) Widget
Builds a toolbar near a text selection.
canCopy(TextSelectionDelegate delegate) bool
Whether the current selection of the text field managed by the given delegate can be copied to the Clipboard.
canCut(TextSelectionDelegate delegate) bool
Whether the current selection of the text field managed by the given delegate can be removed from the text field and placed into the Clipboard.
canPaste(TextSelectionDelegate delegate) bool
Whether the text field managed by the given delegate supports pasting from the clipboard.
canSelectAll(TextSelectionDelegate delegate) bool
Whether the current selection of the text field managed by the given delegate can be extended to include the entire content of the text field.
getHandleAnchor(TextSelectionHandleType type, double textLineHeight) Offset
Get the anchor point of the handle relative to itself. The anchor point is the point that is aligned with a specific point in the text. A handle often visually "points to" that location.
getHandleSize(double textLineHeight) Size
Returns the size of the selection handle.
handleCopy(TextSelectionDelegate delegate) → void
Call TextSelectionDelegate.copySelection to copy current selection.
handleCut(TextSelectionDelegate delegate) → void
Call TextSelectionDelegate.cutSelection to cut current selection.
handlePaste(TextSelectionDelegate delegate) Future<void>
Call TextSelectionDelegate.pasteText to paste text.
handleSelectAll(TextSelectionDelegate delegate) → void
Call TextSelectionDelegate.selectAll to set the current selection to contain the entire text value.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

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