mirror of
https://github.com/pavlobu/deskreen.git
synced 2025-05-15 23:10:34 -07:00
52 lines
1.4 KiB
TypeScript
52 lines
1.4 KiB
TypeScript
import { ipcRenderer } from 'electron';
|
|
import PeerConnection from './features/PeerConnection';
|
|
|
|
// eslint-disable-next-line import/prefer-default-export
|
|
export function handleIpcRenderer() {
|
|
ipcRenderer.on('start-peer-connection', () => {
|
|
let peerConnection: PeerConnection;
|
|
|
|
ipcRenderer.on('create-peer-connection-with-data', (_, data) => {
|
|
peerConnection = new PeerConnection(
|
|
data.roomID,
|
|
data.sharingSessionID,
|
|
data.user
|
|
);
|
|
|
|
peerConnection.setOnDeviceConnectedCallback((deviceData) => {
|
|
ipcRenderer.send('peer-connected', deviceData);
|
|
});
|
|
});
|
|
|
|
ipcRenderer.on('set-desktop-capturer-source-id', (_, id) => {
|
|
peerConnection.setDesktopCapturerSourceID(id);
|
|
});
|
|
|
|
ipcRenderer.on('call-peer', () => {
|
|
peerConnection.callPeer();
|
|
});
|
|
|
|
ipcRenderer.on('disconnect-by-host-machine-user', (_, deviceId: string) => {
|
|
peerConnection.disconnectByHostMachineUser(deviceId);
|
|
});
|
|
|
|
ipcRenderer.on('deny-connection-for-partner', () => {
|
|
peerConnection.denyConnectionForPartner();
|
|
});
|
|
|
|
ipcRenderer.on('send-user-allowed-to-connect', () => {
|
|
peerConnection.sendUserAllowedToConnect();
|
|
});
|
|
|
|
ipcRenderer.on('app-color-theme-changed', () => {
|
|
peerConnection.notifyClientWithNewColorTheme();
|
|
});
|
|
|
|
ipcRenderer.on('app-language-changed', () => {
|
|
peerConnection.notifyClientWithNewLanguage();
|
|
});
|
|
});
|
|
}
|
|
|
|
handleIpcRenderer();
|