46 lines
1.2 KiB
TypeScript
46 lines
1.2 KiB
TypeScript
import { getHotKeyConfig, onFocus, onKeyDown, onUpdateHotkey } from '@renderer/utils/ipc'
|
|
import { registerKeyEvent, createKeyEventHub } from './keyEvent'
|
|
// import { registerRendererEvents, unregisterRendererEvents } from './rendererEvent'
|
|
import { createAppEventHub } from './appEvent'
|
|
|
|
export const registerEvents = () => {
|
|
window.lx.isEditingHotKey = false
|
|
window.app_event = createAppEventHub()
|
|
window.key_event = createKeyEventHub()
|
|
|
|
const setHotkeyConfig = ({ local, global }: LX.HotKeyConfigAll) => {
|
|
window.lx.appHotKeyConfig = {
|
|
local,
|
|
global,
|
|
}
|
|
}
|
|
|
|
void getHotKeyConfig().then(setHotkeyConfig)
|
|
|
|
onUpdateHotkey(({ params }) => {
|
|
setHotkeyConfig(params)
|
|
})
|
|
|
|
onKeyDown(({ params: { key } }) => {
|
|
const keyInfo = window.lx.appHotKeyConfig.global.keys[key]
|
|
if (keyInfo) window.key_event.emit(keyInfo.action)
|
|
})
|
|
|
|
onFocus(() => {
|
|
window.app_event.focus()
|
|
})
|
|
|
|
registerKeyEvent()
|
|
// registerRendererEvents()
|
|
}
|
|
|
|
// export const unregisterEvents = () => {
|
|
// unregisterKeyEvent()
|
|
// // unregisterRendererEvents()
|
|
// }
|
|
|
|
export { AppEventTypes } from './appEvent'
|
|
export { KeyEventTypes, clearDownKeys } from './keyEvent'
|
|
|
|
registerEvents()
|