EmojiWidthProbe class final

Best-effort probe to align emoji cell width with the active terminal.

Some terminals render emoji as 1 cell wide, others as 2. The UV renderer needs to match the terminal's behavior to avoid overwriting graphemes.

Implemented types

Constructors

EmojiWidthProbe({Duration timeout = const Duration(milliseconds: 180), String probeEmoji = '🍕'})
Creates an emoji width probe.

Properties

gateNonCriticalMessages bool
Whether non-critical messages should be gated during probing.
no setteroverride
hashCode int
The hash code for this object.
no setterinherited
isActive bool
Whether the probe is currently running.
no setteroverride
probeEmoji String
The emoji character used for width probing.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
timeout Duration
Maximum time to wait for terminal response.
final

Methods

abort() → void
Aborts the probe early.
override
handleMsg(Msg msg, StartupProbeContext ctx) bool
Handles terminal response messages during probing.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
start(StartupProbeContext ctx) Future<void>
Starts the width probe by querying the terminal.
override
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited