GlyphHintCollector class

Walks the element tree once and returns the GlyphHints that intersect interest (the rects of the nodes that can use them).

Release-safe by construction: every fact comes from a typed check (is Icon, is AssetImage, …), a field, or a guarded dynamic member read — never from toString(), runtimeType names, or class-name strings, which release builds strip (package:flutter, dart:ui) and --obfuscate renames.

Properties

hashCode → int
The hash code for this object.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

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

Static Methods

assetWords(String path) → (String, String)
Words from an asset path, plus its explicit on/off state suffix: assets/nav/ic_home_active@2x.png → (home, on). Returns ('', '') when what is left looks like a hash or an id rather than a name.
collect({required List<Rect> interest, required double dpr, required String selfIdentifier}) → List<GlyphHint>
iconName(IconData icon) → String
Icon name for icon, keyed by (font family, code point) and built from Flutter's own constants — never a hardcoded code point.
probe(Object o, int member, Object? read(dynamic d)) → Object?
svgAssetName(Widget w) → String?
SvgPicture.asset(...)'s asset name: flutter_svg 2.x keeps it on bytesLoader.assetName (SvgAssetLoader), 1.x on pictureProvider.assetName (ExactAssetPicture). Read dynamically — member access survives --obfuscate; class names do not.
svgTint(Widget w) → Object?
svgUrl(Widget w) → String?
SvgPicture.network(...)'s URL (flutter_svg 2.x SvgNetworkLoader.url), read dynamically like svgAssetName.

Constants

maxElements → const int
Element visits after which the walk gives up and returns nothing. All or nothing on purpose: a partial walk could see one tab item's glyphs and not its siblings', which the odd-one-out would read as "selected".