Hotkeys Api
api.hotkeys
Section titled “api.hotkeys”Tools for creating arbitrary hotkeys
Accessors
Section titled “Accessors”pressed
Section titled “pressed”Get Signature
Section titled “Get Signature”get pressed():
Set<string>
Which key codes are currently being pressed
Returns
Section titled “Returns”Set<string>
Methods
Section titled “Methods”addConfigurableHotkey()
Section titled “addConfigurableHotkey()”addConfigurableHotkey(
options,callback): () =>void
Adds a hotkey which can be changed by the user
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
options |
{ category: string; default?: { alt?: boolean; ctrl?: boolean; key?: string; keys?: readonly string[]; shift?: boolean; }; preventDefault?: boolean; stopPropagation?: boolean; title: string; } |
- |
options.category |
string |
- |
options.default? |
{ alt?: boolean; ctrl?: boolean; key?: string; keys?: readonly string[]; shift?: boolean; } |
- |
options.default.alt? |
boolean |
- |
options.default.ctrl? |
boolean |
- |
options.default.key? |
string |
Should be a keyboardevent code |
options.default.keys? |
readonly string[] |
Should be keyboardevent codes |
options.default.shift? |
boolean |
- |
options.preventDefault? |
boolean |
If set to false, the hotkey will still trigger default actions |
options.stopPropagation? |
boolean |
If set to true, the hotkey will have propagation and immediate propagation stopped, which generally prevents Gimkit from detecting the keystroke |
options.title |
string |
There should be no duplicate titles within a category |
callback |
(e) => void |
- |
Returns
Section titled “Returns”A function to remove the hotkey
() => void
Example
Section titled “Example”api.hotkeys.addConfigurableHotkey({ category: "My Plugin", title: "Do a thing", preventDefault: true, default: { key: "Digit1", ctrl: true, shift: true }}, (e) => { console.log("Configurable hotkey pressed", e.key);});addHotkey()
Section titled “addHotkey()”addHotkey(
options,callback): () =>void
Adds a hotkey which will fire when certain keys are pressed
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
options |
{ alt?: boolean; ctrl?: boolean; key?: string; keys?: readonly string[]; preventDefault?: boolean; shift?: boolean; stopPropagation?: boolean; } |
- |
options.alt? |
boolean |
- |
options.ctrl? |
boolean |
- |
options.key? |
string |
Should be a keyboardevent code |
options.keys? |
readonly string[] |
Should be keyboardevent codes |
options.preventDefault? |
boolean |
If set to false, the hotkey will still trigger default actions |
options.shift? |
boolean |
- |
options.stopPropagation? |
boolean |
If set to true, the hotkey will have propagation and immediate propagation stopped, which generally prevents Gimkit from detecting the keystroke |
callback |
(e) => void |
- |
Returns
Section titled “Returns”A function to remove the hotkey
() => void
Example
Section titled “Example”api.hotkeys.addHotkey({ key: "Digit1", ctrl: true, shift: true, preventDefault: true}, (e) => { console.log("Hotkey pressed", e.key);});releaseAll()
Section titled “releaseAll()”releaseAll():
void
Releases all keys, needed if a hotkey opens something that will prevent keyup events from being registered, such as an alert
Returns
Section titled “Returns”void