super-productivity/electron/overlay-indicator/overlay-preload.ts
2025-06-29 17:31:28 +02:00

20 lines
626 B
TypeScript

import { contextBridge, ipcRenderer } from 'electron';
contextBridge.exposeInMainWorld('overlayAPI', {
setIgnoreMouseEvents: (ignore: boolean) => {
ipcRenderer.send('overlay-set-ignore-mouse', ignore);
},
showMainWindow: () => {
ipcRenderer.send('overlay-show-main-window');
},
onUpdateContent: (callback: (data: any) => void) => {
const listener = (event: Electron.IpcRendererEvent, data: any): void =>
callback(data);
ipcRenderer.on('update-content', listener);
// Return cleanup function
return () => {
ipcRenderer.removeListener('update-content', listener);
};
},
});