UNPKG

@dark-engine/platform-desktop

Version:

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

17 lines (16 loc) 657 B
import { QShortcut, QKeySequence } from '@nodegui/nodegui'; import { useEffect } from '@dark-engine/core'; function useShortcut(options, deps = []) { const { ref, keySequence, disabled, signal = 'activated', callback } = options; useEffect(() => { if (!ref.current) return; const shortcut = new QShortcut(ref.current); const $signal = signal; shortcut.setKey(new QKeySequence(keySequence)); shortcut.setEnabled(!disabled); shortcut.addEventListener($signal, callback); return () => shortcut.removeEventListener($signal, callback); }, [disabled, ...deps]); } export { useShortcut }; //# sourceMappingURL=use-shortcut.js.map