UNPKG

@dark-engine/platform-desktop

Version:

Dark renderer to desktop platforms like Windows, Linux, macOS via Nodegui and Qt

20 lines (19 loc) 792 B
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); exports.useShortcut = void 0; const nodegui_1 = require('@nodegui/nodegui'); const core_1 = require('@dark-engine/core'); function useShortcut(options, deps = []) { const { ref, keySequence, disabled, signal = 'activated', callback } = options; (0, core_1.useEffect)(() => { if (!ref.current) return; const shortcut = new nodegui_1.QShortcut(ref.current); const $signal = signal; shortcut.setKey(new nodegui_1.QKeySequence(keySequence)); shortcut.setEnabled(!disabled); shortcut.addEventListener($signal, callback); return () => shortcut.removeEventListener($signal, callback); }, [disabled, ...deps]); } exports.useShortcut = useShortcut; //# sourceMappingURL=use-shortcut.js.map