ipc-native-setup.ts 582 B

1234567891011121314
  1. import { ipcRendererInternal } from '@electron/internal/renderer/ipc-renderer-internal';
  2. import { ipcRenderer } from 'electron/renderer';
  3. const v8Util = process._linkedBinding('electron_common_v8_util');
  4. // ElectronApiServiceImpl will look for the "ipcNative" hidden object when
  5. // invoking the 'onMessage' callback.
  6. v8Util.setHiddenValue(globalThis, 'ipcNative', {
  7. onMessage (internal: boolean, channel: string, ports: MessagePort[], args: any[]) {
  8. const sender = internal ? ipcRendererInternal : ipcRenderer;
  9. sender.emit(channel, { sender, ports }, ...args);
  10. }
  11. });