DefaultTooltip class
Zero-config tooltip: title + description + Skip/Back/Next/Done from HintTheme.tooltipLabels — except on a single-step hint, which keeps no action row at all (informational; dismissed by tap or keyboard).
Rendered when a step has no tooltipBuilder. A separate widget so the
builder path (full customization) and the default do not duplicate
theming. Buttons work by mouse; plus overlay-tap and keyboard — three
ways forward, each self-sufficient. Buttons consume their taps (the
tooltip sits higher in the hit-test tree than the overlay's
GestureDetector); area outside the buttons stays transparent for
tap-on-overlay.
Multi-content slots (HintStep.moreTooltips) reuse the same widget with showActions = false — informational tooltips without the tour controls (the primary tooltip owns them) — and their own title/description.
A11y: the container is announced to screen readers as "Step N of M: …";
each button exposes the button role + tap action.
Text scale: at textScaleFactor > 1.0 the content is height-capped and
scrolls (the 2.0 contract: it still fits on screen). The scroll
machinery costs ~18 KB of heap while mounted (measured against the
engine baseline), so at scale 1.0 the content is only width-capped
(wrapping) — no scrollable is built.
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatelessWidget
- DefaultTooltip
Constructors
- DefaultTooltip({Key? key, required HintStep step, required HintTooltipContext ctx, String? title, String? description, bool showActions = true, HintTooltipLabels? labels})
-
const
Properties
- ctx → HintTooltipContext
-
Actions + position in the tour: the same contract that
tooltipBuilderreceives (HintTooltipContext) — the default tooltip and a custom one do not diverge.final - description → String?
-
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- labels → HintTooltipLabels?
-
Button + announcement strings for this tooltip only; null — inherit
HintTheme.tooltipLabels.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- showActions → bool
-
false — an informational slot without the action button row (extra
tooltips); the primary tooltip keeps its Skip/Back/Next/Done controls.
final
- step → HintStep
-
final
- title → String?
-
Content overrides for a non-primary slot: null — the step's own values.
For the primary tooltip leave null (the step carries the content).
final
Methods
-
build(
BuildContext context) → Widget -
Describes the part of the user interface represented by this widget.
override
-
createElement(
) → StatelessElement -
Creates a StatelessElement to manage this widget's location in the tree.
inherited
-
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