1
0
mirror of https://github.com/rhysd/Mstdn.git synced 2024-11-30 22:24:13 +01:00
Mstdn/renderer/ipc.ts
2017-04-20 00:21:23 +09:00

22 lines
678 B
TypeScript

import log from './log';
import r from './require';
const electron = r('electron');
const ipc = electron.ipcRenderer;
export function on(channel: IpcChannelFromMain, callback: (...args: any[]) => void) {
ipc.on(channel, (...args: any[]) => {
log.info('IPC: Received from:', channel, args);
// XXX: Weird...
// First element is Event in Windows as documented. But not in macOS.
if (args[0] instanceof Event) {
args = args.splice(1);
}
callback(...args);
});
}
export function send(channel: IpcChannelFromRenderer, ...args: any[]) {
log.info('IPC: Send:', channel, args);
ipc.send(channel, ...args);
}