17 lines
767 B
JavaScript
17 lines
767 B
JavaScript
const { contextBridge, ipcRenderer } = require('electron')
|
|||
|
|
|
||
|
|
contextBridge.exposeInMainWorld('codexHalo', {
|
||
|
|
getUsage: () => ipcRenderer.invoke('usage:get'),
|
||
|
|
refreshUsage: () => ipcRenderer.invoke('usage:refresh'),
|
||
|
|
startWindowDrag: (point) => ipcRenderer.send('window:drag-start', point),
|
||
|
|
moveWindowDrag: (point) => ipcRenderer.send('window:drag-move', point),
|
||
|
|
endWindowDrag: () => ipcRenderer.send('window:drag-end'),
|
||
|
|
expandDock: () => ipcRenderer.send('window:dock-expand'),
|
||
|
|
collapseDock: () => ipcRenderer.send('window:dock-collapse'),
|
||
|
|
onUsage: (callback) => {
|
||
|
|
const listener = (_event, snapshot) => callback(snapshot)
|
||
|
|
ipcRenderer.on('usage:snapshot', listener)
|
||
|
|
return () => ipcRenderer.removeListener('usage:snapshot', listener)
|
||
|
|
},
|
||
|
|
})
|