TextSelectionTheme class Null safety

An inherited widget that defines the appearance of text selection in this widget's subtree.

Values specified here are used for TextField and SelectableText properties that are not given an explicit non-null value.

Here is an example of a text selection theme that applies a blue cursor color with light blue selection handles to the child text field.
const TextSelectionTheme(
  data: TextSelectionThemeData(
    cursorColor: Colors.blue,
    selectionHandleColor: Colors.lightBlue,
  child: TextField(),

This widget also creates a DefaultSelectionStyle for its subtree with data.



TextSelectionTheme({Key? key, required TextSelectionThemeData data, required Widget child})
Creates a text selection theme widget that specifies the text selection properties for all widgets below it in the widget tree.


child Widget
The widget below this widget in the tree.
read-only, override
data TextSelectionThemeData
The properties for descendant TextField and SelectableText widgets.
hashCode int
The hash code for this object.
@nonVirtual, read-only, inherited
key Key?
Controls how one widget replaces another widget in the tree.
final, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited


createElement() InheritedElement
Inflates this configuration to a concrete instance.
debugDescribeChildren() List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
@protected, inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed.
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) String
A string representation of this object.
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a string representation of this node and its descendants.
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a one-line detailed description of the object.
toStringShort() String
A short, textual description of this widget.
updateShouldNotify(covariant TextSelectionTheme oldWidget) bool
Whether the framework should notify widgets that inherit from this widget.
wrap(BuildContext context, Widget child) Widget
Return a copy of this inherited theme with the specified child.


operator ==(Object other) bool
The equality operator.
@nonVirtual, inherited

Static Methods

of(BuildContext context) TextSelectionThemeData
Returns the data from the closest TextSelectionTheme ancestor. If there is no ancestor, it returns ThemeData.textSelectionTheme. Applications can assume that the returned value will not be null.