HintTheme class

Hint theme — a product design-system ThemeExtension.

The product describes hints as part of its design system: register HintTheme in ThemeData.extensions — and every tooltip/scrim inherits it automatically, with no per-screen configuration. Light/dark is solved by the same mechanism as the rest of the UI (different ThemeData).

Zero-config: without registration, HintThemeX.hintTheme returns the HintTheme.minimal default derived from ColorScheme — a hint looks "Material-native" rather than "library-ish", even before the product defines its own theme.

Inheritance
Annotations

Constructors

HintTheme({required Color tooltipBackground, required Color tooltipForeground, required Color scrimColor, required BorderRadius tooltipRadius, required EdgeInsets tooltipPadding, TextStyle? tooltipTitleStyle, TextStyle? tooltipDescriptionStyle, bool showTail = true, ImageFilter? imageFilter, bool showPulse = false})
const
HintTheme.minimal(ColorScheme scheme)
Default derived from a ColorScheme (inverseSurface pair).
factory

Properties

hashCode int
The hash code for this object.
no setterinherited
imageFilter ImageFilter?
Optional background blur behind the scrim (ImageFilter.blur(...)), replacing the plain dim with a "frosted" look. Off by default: the plain dim is cheaper (zero backdrop sampling). When set, the scrim is rendered in the global layer (the hole rect comes from the position watcher, one frame behind the compositor — the same lag as the tooltip), instead of the live follower painter.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
scrimColor Color
Screen dimming around the target (scrim).
final
showPulse bool
A pulsing ring around the primary target (Material feature-discovery pattern). Off by default; the animation runs only while a step is active with this flag on.
final
showTail bool
The tail (arrow from the tooltip toward the target). On by default — it is what visually ties the tooltip to the hole; set false for a floating-callout look. Applies to the default tooltip only: a custom tooltipBuilder owns its look entirely.
final
tooltipBackground Color
Tooltip background (default — inverseSurface of the ColorScheme).
final
tooltipDescriptionStyle TextStyle?
final
tooltipForeground Color
Tooltip text and accents (default — onInverseSurface).
final
tooltipPadding EdgeInsets
final
tooltipRadius BorderRadius
final
tooltipTitleStyle TextStyle?
Title/description styles; null — the tooltip resolves defaults from tooltipForeground (a partially custom theme does not break zero-config).
final
type Object
The extension's type.
no setterinherited

Methods

copyWith({Color? tooltipBackground, Color? tooltipForeground, Color? scrimColor, BorderRadius? tooltipRadius, EdgeInsets? tooltipPadding, TextStyle? tooltipTitleStyle, TextStyle? tooltipDescriptionStyle, bool? showTail, ImageFilter? imageFilter, bool? showPulse}) HintTheme
Creates a copy of this theme extension with the given fields replaced by the non-null parameter values.
override
lerp(covariant HintTheme? other, double t) HintTheme
Linearly interpolate with another ThemeExtension object.
override
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