UNPKG

global-hotkey

Version:

A native Node.js module for handling global hotkeys on Windows.

367 lines (359 loc) 7.35 kB
export type KeyCombination = { meta?: boolean, shift?: boolean, ctrl?: boolean, alt?: boolean, keyCode: number } export function addListener(keyCombination: KeyCombination, listener: () => void): number export function removeListener(id: number): void export function removeAllListeners(): void export function startListening(): void export function stopListening(): void export function resetKeyPressed(): void export const V_KEY_CODES : { LBUTTON: 0x01, RBUTTON: 0x02, CANCEL: 0x03, MBUTTON: 0x04, XBUTTON1: 0x05, XBUTTON2: 0x06, BACK: 0x08, TAB: 0x09, CLEAR: 0x0C, RETURN: 0x0D, SHIFT: 0x10, CONTROL: 0x11, MENU: 0x12, PAUSE: 0x13, CAPITAL: 0x14, KANA: 0x15, HANGUL: 0x15, JUNJA: 0x17, FINAL: 0x18, HANJA: 0x19, KANJI: 0x19, ESCAPE: 0x1B, CONVERT: 0x1C, NONCONVERT: 0x1D, ACCEPT: 0x1E, MODECHANGE: 0x1F, SPACE: 0x20, PRIOR: 0x21, NEXT: 0x22, END: 0x23, HOME: 0x24, LEFT: 0x25, UP: 0x26, RIGHT: 0x27, DOWN: 0x28, SELECT: 0x29, PRINT: 0x2A, EXECUTE: 0x2B, SNAPSHOT: 0x2C, INSERT: 0x2D, DELETE: 0x2E, HELP: 0x2F, 0: 0x30, 1: 0x31, 2: 0x32, 3: 0x33, 4: 0x34, 5: 0x35, 6: 0x36, 7: 0x37, 8: 0x38, 9: 0x39, A: 0x41, B: 0x42, C: 0x43, D: 0x44, E: 0x45, F: 0x46, G: 0x47, H: 0x48, I: 0x49, J: 0x4A, K: 0x4B, L: 0x4C, M: 0x4D, N: 0x4E, O: 0x4F, P: 0x50, Q: 0x51, R: 0x52, S: 0x53, T: 0x54, U: 0x55, V: 0x56, W: 0x57, X: 0x58, Y: 0x59, Z: 0x5A, LWIN: 0x5B, RWIN: 0x5C, APPS: 0x5D, SLEEP: 0x5F, NUMPAD0: 0x60, NUMPAD1: 0x61, NUMPAD2: 0x62, NUMPAD3: 0x63, NUMPAD4: 0x64, NUMPAD5: 0x65, NUMPAD6: 0x66, NUMPAD7: 0x67, NUMPAD8: 0x68, NUMPAD9: 0x69, MULTIPLY: 0x6A, ADD: 0x6B, SEPARATOR: 0x6C, SUBTRACT: 0x6D, DECIMAL: 0x6E, DIVIDE: 0x6F, F1: 0x70, F2: 0x71, F3: 0x72, F4: 0x73, F5: 0x74, F6: 0x75, F7: 0x76, F8: 0x77, F9: 0x78, F10: 0x79, F11: 0x7A, F12: 0x7B, F13: 0x7C, F14: 0x7D, F15: 0x7E, F16: 0x7F, F17: 0x80, F18: 0x81, F19: 0x82, F20: 0x83, F21: 0x84, F22: 0x85, F23: 0x86, F24: 0x87, NUMLOCK: 0x90, SCROLL: 0x91, OEM_NEC_EQUAL: 0x92, OEM_FJ_JISHO: 0x92, OEM_FJ_MASSHOU: 0x93, OEM_FJ_TOUROKU: 0x94, OEM_FJ_LOYA: 0x95, OEM_FJ_ROYA: 0x96, LSHIFT: 0xA0, RSHIFT: 0xA1, LCONTROL: 0xA2, RCONTROL: 0xA3, LMENU: 0xA4, RMENU: 0xA5, BROWSER_BACK: 0xA6, BROWSER_FORWARD: 0xA7, BROWSER_REFRESH: 0xA8, BROWSER_STOP: 0xA9, BROWSER_SEARCH: 0xAA, BROWSER_FAVORITES: 0xAB, BROWSER_HOME: 0xAC, VOLUME_MUTE: 0xAD, VOLUME_DOWN: 0xAE, VOLUME_UP: 0xAF, MEDIA_NEXT_TRACK: 0xB0, MEDIA_PREV_TRACK: 0xB1, MEDIA_STOP: 0xB2, MEDIA_PLAY_PAUSE: 0xB3, LAUNCH_MAIL: 0xB4, LAUNCH_MEDIA_SELECT: 0xB5, LAUNCH_APP1: 0xB6, LAUNCH_APP2: 0xB7, OEM_1: 0xBA, OEM_PLUS: 0xBB, OEM_COMMA: 0xBC, OEM_MINUS: 0xBD, OEM_PERIOD: 0xBE, OEM_2: 0xBF, OEM_3: 0xC0, OEM_4: 0xDB, OEM_5: 0xDC, OEM_6: 0xDD, OEM_7: 0xDE, OEM_8: 0xDF, OEM_AX: 0xE1, OEM_102: 0xE2, ICO_HELP: 0xE3, ICO_00: 0xE4, PROCESSKEY: 0xE5, ICO_CLEAR: 0xE6, PACKET: 0xE7, OEM_RESET: 0xE9, OEM_JUMP: 0xEA, OEM_PA1: 0xEB, OEM_PA2: 0xEC, OEM_PA3: 0xED, OEM_WSCTRL: 0xEE, OEM_CUSEL: 0xEF, OEM_ATTN: 0xF0, OEM_FINISH: 0xF1, OEM_COPY: 0xF2, OEM_AUTO: 0xF3, OEM_ENLW: 0xF4, OEM_BACKTAB: 0xF5, ATTN: 0xF6, CRSEL: 0xF7, EXSEL: 0xF8, EREOF: 0xF9, PLAY: 0xFA, ZOOM: 0xFB, NONAME: 0xFC, PA1: 0xFD, OEM_CLEAR: 0xFE }; export const KEYBOARD_EVENT_CODE_TO_VKEY : { "LButton": 0x01, "RButton": 0x02, "Cancel": 0x03, "MButton": 0x04, "XButton1": 0x05, "XButton2": 0x06, "Backspace": 0x08, "Tab": 0x09, "Clear": 0x0C, "Enter": 0x0D, "ShiftLeft": 0x10, "ControlLeft": 0x11, "AltLeft": 0x12, "Pause": 0x13, "CapsLock": 0x14, "KanaMode": 0x15, "HangulMode": 0x15, "JunjaMode": 0x17, "FinalMode": 0x18, "HanjaMode": 0x19, "KanjiMode": 0x19, "Escape": 0x1B, "Convert": 0x1C, "NonConvert": 0x1D, "Accept": 0x1E, "ModeChange": 0x1F, "Space": 0x20, "PageUp": 0x21, "PageDown": 0x22, "End": 0x23, "Home": 0x24, "ArrowLeft": 0x25, "ArrowUp": 0x26, "ArrowRight": 0x27, "ArrowDown": 0x28, "Select": 0x29, "PrintScreen": 0x2A, "Execute": 0x2B, // "PrintScreen": 0x2C, "Insert": 0x2D, "Delete": 0x2E, "Help": 0x2F, "Digit0": 0x30, "Digit1": 0x31, "Digit2": 0x32, "Digit3": 0x33, "Digit4": 0x34, "Digit5": 0x35, "Digit6": 0x36, "Digit7": 0x37, "Digit8": 0x38, "Digit9": 0x39, "KeyA": 0x41, "KeyB": 0x42, "KeyC": 0x43, "KeyD": 0x44, "KeyE": 0x45, "KeyF": 0x46, "KeyG": 0x47, "KeyH": 0x48, "KeyI": 0x49, "KeyJ": 0x4A, "KeyK": 0x4B, "KeyL": 0x4C, "KeyM": 0x4D, "KeyN": 0x4E, "KeyO": 0x4F, "KeyP": 0x50, "KeyQ": 0x51, "KeyR": 0x52, "KeyS": 0x53, "KeyT": 0x54, "KeyU": 0x55, "KeyV": 0x56, "KeyW": 0x57, "KeyX": 0x58, "KeyY": 0x59, "KeyZ": 0x5A, "MetaLeft": 0x5B, "MetaRight": 0x5C, "ContextMenu": 0x5D, "Sleep": 0x5F, "Numpad0": 0x60, "Numpad1": 0x61, "Numpad2": 0x62, "Numpad3": 0x63, "Numpad4": 0x64, "Numpad5": 0x65, "Numpad6": 0x66, "Numpad7": 0x67, "Numpad8": 0x68, "Numpad9": 0x69, "NumpadMultiply": 0x6A, "NumpadAdd": 0x6B, "NumpadComma": 0x6C, "NumpadSubtract": 0x6D, "NumpadDecimal": 0x6E, "NumpadDivide": 0x6F, "F1": 0x70, "F2": 0x71, "F3": 0x72, "F4": 0x73, "F5": 0x74, "F6": 0x75, "F7": 0x76, "F8": 0x77, "F9": 0x78, "F10": 0x79, "F11": 0x7A, "F12": 0x7B, "F13": 0x7C, "F14": 0x7D, "F15": 0x7E, "F16": 0x7F, "F17": 0x80, "F18": 0x81, "F19": 0x82, "F20": 0x83, "F21": 0x84, "F22": 0x85, "F23": 0x86, "F24": 0x87, "NumLock": 0x90, "ScrollLock": 0x91, "AudioVolumeMute": 0xAD, "AudioVolumeDown": 0xAE, "AudioVolumeUp": 0xAF, "MediaTrackNext": 0xB0, "MediaTrackPrevious": 0xB1, "MediaStop": 0xB2, "MediaPlayPause": 0xB3, "LaunchMail": 0xB4, "LaunchApp2": 0xB7, "Semicolon": 0xBA, "Equal": 0xBB, "Comma": 0xBC, "Minus": 0xBD, "Period": 0xBE, "Slash": 0xBF, "Backquote": 0xC0, "BracketLeft": 0xDB, "Backslash": 0xDC, "BracketRight": 0xDD, "Quote": 0xDE, "AltRight": 0xA5, "ControlRight": 0xA3, "ShiftRight": 0xA1 };