Newer
Older
// Copyright 2015-2019 Parity Technologies (UK) Ltd.
import settings from 'electron-settings';
import { bundledParityPath } from '../utils/paths';
import Pino from '../utils/pino';
Amaury Martiny
committed
import setupParityEthereum from '../methods/setupParityEthereum';
import { DEFAULT_WS_PORT, TRUSTED_LOOPBACK } from '../constants';
/**
* Handle all asynchronous messages from renderer to main.
*/
export default async (fetherApp, event, data) => {
pino.debug(
`Received IPC message from ${data.from}, with data ${JSON.stringify(
data
)}`
);
if (!data) {
switch (data.action) {
case 'APP_RIGHT_CLICK_REQUEST': {
Luke Schoen
committed
fetherApp.contextWindowMenu.getMenu().popup({ window: fetherApp.win });
case 'CHECK_CLOCK_SYNC_REQUEST': {
const payload = await checkClockSync();
event.sender.send('send-to-renderer', {
action: 'CHECK_CLOCK_SYNC_RESPONSE',
from: 'fether:electron',
payload
});
break;
}
Amaury Martiny
committed
case 'RESTART_NODE_REQUEST': {
setupParityEthereum();
break;
}
case 'SET_LANGUAGE_REQUEST': {
event.sender.send('send-to-renderer', {
action: 'SET_LANGUAGE_RESPONSE',
from: 'fether:electron',
payload: settings.get('fether-language')
case 'SIGNER_NEW_TOKEN_REQUEST': {
const token = await signerNewToken({ parityPath: bundledParityPath });
event.sender.send('send-to-renderer', {
action: 'SIGNER_NEW_TOKEN_RESPONSE',
from: 'fether:electron',
payload: token
});
break;
}
case 'WS_INTERFACE_REQUEST': {
event.sender.send('send-to-renderer', {
action: 'WS_INTERFACE_RESPONSE',
from: 'fether:electron',
payload: TRUSTED_LOOPBACK
});
break;
}
case 'WS_PORT_REQUEST': {
event.sender.send('send-to-renderer', {
action: 'WS_PORT_RESPONSE',
from: 'fether:electron',
});