Interface: KeyHint
Defined in: modal/keys.ts:45
A binding's display row for cheat sheets and help: key cap + meaning.
The house pattern for condensed surfaces: render the ICON only, reveal the key (a kbd pill) + label on hover, and execute on click by synthesizing tapKey through the same resolver real keydowns use — so a tap can never drift from what the key does.
Properties
active?
optionalactive?:boolean
Defined in: modal/keys.ts:63
This row's mode/state is currently ENGAGED — the share is sampling, the mic is muted, tweak mode has the pointer. Condensed surfaces highlight such a cap, so "what is on right now" is readable at a glance instead of being inferred from a label that only appears on hover.
A binding reports it from its own hint(state), which keeps the fact next to the binding that owns it — the same reason the hint column exists.
icon?
optionalicon?:string
Defined in: modal/keys.ts:51
Optional pictogram for the condensed cheat sheet (an emoji works).
key
key:
string
Defined in: modal/keys.ts:47
Display key cap, e.g. "␣", "D", "esc", "↑↓".
label
label:
string
Defined in: modal/keys.ts:49
Short meaning, e.g. "talk", "region shot".
tapKey?
optionaltapKey?:string
Defined in: modal/keys.ts:69
The real KeyboardEvent.key a UI tap synthesizes to EXECUTE this row. keyHints fills it from the binding's first key; a synthetic gesture row (e.g. "drag") has none and renders non-clickable.
tone?
optionaltone?:string
Defined in: modal/keys.ts:53
Visual tone for the cap (renderers map it to a class, e.g. "danger").