Defined in: controllers/key-hold.ts:43
A Lit ReactiveController that tracks whether a specific key is currently held.
Subscribes to the global KeyStateTracker and triggers host updates when the held state of the specified key changes.
class MyElement extends LitElement {
private shiftHold = new KeyHoldController(this, 'Shift')
render() {
return html`
<div style="opacity: ${this.shiftHold.value ? 1 : 0.5}">
${this.shiftHold.value ? 'Shift is pressed!' : 'Press Shift'}
</div>
`
}
}class MyElement extends LitElement {
private shiftHold = new KeyHoldController(this, 'Shift')
render() {
return html`
<div style="opacity: ${this.shiftHold.value ? 1 : 0.5}">
${this.shiftHold.value ? 'Shift is pressed!' : 'Press Shift'}
</div>
`
}
}class ModifierIndicators extends LitElement {
private ctrl = new KeyHoldController(this, 'Control')
private shift = new KeyHoldController(this, 'Shift')
private alt = new KeyHoldController(this, 'Alt')
render() {
return html`
<span style="opacity: ${this.ctrl.value ? 1 : 0.3}">Ctrl</span>
<span style="opacity: ${this.shift.value ? 1 : 0.3}">Shift</span>
<span style="opacity: ${this.alt.value ? 1 : 0.3}">Alt</span>
`
}
}class ModifierIndicators extends LitElement {
private ctrl = new KeyHoldController(this, 'Control')
private shift = new KeyHoldController(this, 'Shift')
private alt = new KeyHoldController(this, 'Alt')
render() {
return html`
<span style="opacity: ${this.ctrl.value ? 1 : 0.3}">Ctrl</span>
<span style="opacity: ${this.shift.value ? 1 : 0.3}">Shift</span>
<span style="opacity: ${this.alt.value ? 1 : 0.3}">Alt</span>
`
}
}new KeyHoldController(_host, _key): KeyHoldController;new KeyHoldController(_host, _key): KeyHoldController;Defined in: controllers/key-hold.ts:58
ReactiveControllerHost
IndividualKey
KeyHoldController
get value(): boolean;get value(): boolean;Defined in: controllers/key-hold.ts:50
Whether the tracked key is currently held down.
boolean
hostConnected(): void;hostConnected(): void;Defined in: controllers/key-hold.ts:65
Called when the host is connected to the component tree. For custom element hosts, this corresponds to the connectedCallback() lifecycle, which is only called when the component is connected to the document.
void
ReactiveController.hostConnectedReactiveController.hostConnectedhostDisconnected(): void;hostDisconnected(): void;Defined in: controllers/key-hold.ts:83
Called when the host is disconnected from the component tree. For custom element hosts, this corresponds to the disconnectedCallback() lifecycle, which is called the host or an ancestor component is disconnected from the document.
void
ReactiveController.hostDisconnectedReactiveController.hostDisconnected