Thinking indicator
The turning, breathing asterisk with a shimmering label — active and settled.
FlowThinkingIndicator is the turning, breathing asterisk shown while a
reply is pending, its host-supplied label shimmering beside it. You mostly
get it for free: a message with FlowMessageStatus.pending renders it
automatically — pass thinkingLabel: to FlowMessage or FlowThread and
the library does the rest. It is also available standalone for custom
waiting states.
Thinking
Section titled “Thinking”FlowThinkingIndicator(label: 'Thinking…')Settled
Section titled “Settled”active: false is the settled state — the same line, holding still. Keep
it on screen after thinking ends and swap the label you already own; the
line becomes a quiet record of the work:
// active: false holds the line still — keep it on screen after// thinking ends and swap the label you already own.FlowThinkingIndicator( active: false, label: 'Thought about it',)Glyph only
Section titled “Glyph only”Without a label it is just the spinning mark, sized and colored to taste.
semanticLabel keeps it announced to screen readers — the package ships
no strings of its own:
// No label: just the spinning mark. semanticLabel keeps it// announced; the package ships no strings.FlowThinkingIndicator( size: 24, color: context.flowColors.primary, semanticLabel: 'Thinking',)Key API
Section titled “Key API”label— shimmer-treated whileactive, static once settled.active—falsefreezes the asterisk and the label in place; the platform’s reduced-motion setting renders static too.size(14) andcolor(onSurfaceMuted) — the glyph in any form; the label always draws in the muted ink, a step below the glyph.duration— one turn-and-breathe cycle (2400ms).semanticLabel— keeps the glyph-only form announced to screen readers.- In a thread: set message
statustopendingand passthinkingLabel:— no manual wiring.