SemanticsNode class

A node that represents some semantic data.

The semantics tree is maintained during the semantics phase of the pipeline (i.e., during PipelineOwner.flushSemantics), which happens after compositing. The semantics tree is then uploaded into the engine for use by assistive technology.



SemanticsNode({Key key, void showOnScreen })
Creates a semantic node. [...]
SemanticsNode.root({Key key, void showOnScreen, SemanticsOwner owner })
Creates a semantic node to represent the root of the semantics tree. [...]


childrenCount → int
The number of children this node has.
decreasedValue → String
The value that value will have after a SemanticsAction.decrease action has been performed. [...]
hasChildren → bool
Whether this node has a non-zero number of children.
hint → String
A brief description of the result of performing an action on this node. [...]
hintOverrides SemanticsHintOverrides
Provides hint values which override the default hints on supported platforms.
id → int
The unique identifier for this node. [...]
increasedValue → String
The value that value will have after a SemanticsAction.increase action has been performed. [...]
isInvisible → bool
Whether the node is invisible. [...]
isMergedIntoParent ↔ bool
Whether this node merges its semantic information into an ancestor node.
read / write
isPartOfNodeMerging → bool
Whether this node is taking part in a merge of semantic information. [...]
key Key
Uniquely identifies this node in the list of sibling nodes. [...]
label → String
A textual description of this node. [...]
mergeAllDescendantsIntoThisNode → bool
Whether this node and all of its descendants should be treated as one logical entity.
owner SemanticsOwner
The owner for this node (null if unattached). [...]
parent SemanticsNode
The parent of this node in the tree.
parentPaintClipRect Rect
The paint clip from an ancestor that was applied to this node. [...]
read / write
parentSemanticsClipRect Rect
The semantic clip from an ancestor that was applied to this node. [...]
read / write
rect Rect
The bounding box for this node in its coordinate system.
read / write
scrollExtentMax → double
Indicates the maximum in-range value for scrollPosition if the node is scrollable. [...]
scrollExtentMin → double
Indicates the minimum in-range value for scrollPosition if the node is scrollable. [...]
scrollPosition → double
Indicates the current scrolling position in logical pixels if the node is scrollable. [...]
sortKey SemanticsSortKey
Determines the position of this node among its siblings in the traversal sort order. [...]
tags ↔ Set<SemanticsTag>
The SemanticsTags this node is tagged with. [...]
read / write
textDirection TextDirection
The reading direction for label, value, hint, increasedValue, and decreasedValue.
textSelection TextSelection
The currently selected text (or the position of the cursor) within value if this node represents a text field.
transform Matrix4
The transform from this node's coordinate system to its parent's coordinate system. [...]
read / write
value → String
A textual description for the current value of the node. [...]
attached → bool
Whether this node is in a tree whose root is attached to something. [...]
read-only, inherited
depth → int
The depth of this node in the tree. [...]
read-only, inherited
hashCode → int
The hash code for this object. [...]
read-only, inherited
runtimeType → Type
A representation of the runtime type of the object.
read-only, inherited


attach(SemanticsOwner owner) → void
Mark this node as attached to the given owner. [...]
debugDescribeChildren({DebugSemanticsDumpOrder childOrder: DebugSemanticsDumpOrder.inverseHitTest }) → List<DiagnosticsNode>
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
debugListChildrenInOrder(DebugSemanticsDumpOrder childOrder) → List<SemanticsNode>
Returns the list of direct children of this node in the specified order.
detach() → void
Mark this node as detached. [...]
getSemanticsData() SemanticsData
Returns a summary of the semantics for this node. [...]
isTagged(SemanticsTag tag) → bool
Whether this node is tagged with tag.
redepthChildren() → void
Adjust the depth of this node's children, if any. [...]
sendEvent(SemanticsEvent event) → void
Sends a SemanticsEvent associated with this SemanticsNode. [...]
toDiagnosticsNode({String name, DiagnosticsTreeStyle style: DiagnosticsTreeStyle.sparse, DebugSemanticsDumpOrder childOrder: DebugSemanticsDumpOrder.traversalOrder }) DiagnosticsNode
toStringDeep({String prefixLineOne: '', String prefixOtherLines, DiagnosticLevel minLevel: DiagnosticLevel.debug, DebugSemanticsDumpOrder childOrder: DebugSemanticsDumpOrder.traversalOrder }) → String
Returns a string representation of this node and its descendants. [...]
toStringShort() → String
updateWith({SemanticsConfiguration config, List<SemanticsNode> childrenInInversePaintOrder }) → void
Reconfigures the properties of this object to describe the configuration provided in the config argument and the children listed in the childrenInInversePaintOrder argument. [...]
visitChildren(SemanticsNodeVisitor visitor) → void
Visits the immediate children of this node. [...]
adoptChild(AbstractNode child) → void
Mark the given node as being a child of this node. [...]
@mustCallSuper, @protected, inherited
dropChild(AbstractNode child) → void
Disconnect the given node from this node. [...]
@mustCallSuper, @protected, inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
redepthChild(AbstractNode child) → void
Adjust the depth of the given child to be greater than this node's own depth. [...]
@protected, inherited
toString({DiagnosticLevel minLevel: DiagnosticLevel.debug }) → String
Returns a string representation of this object.
toStringShallow({String joiner: ', ', DiagnosticLevel minLevel: DiagnosticLevel.debug }) → String
Returns a one-line detailed description of the object. [...]


operator ==(dynamic other) → bool
The equality operator. [...]