super-productivity/electron/get-settings.ts
2020-10-29 18:38:06 +01:00

20 lines
531 B
TypeScript

import { ipcMain } from 'electron';
import { IPC } from './ipc-events.const';
let cbs = [];
export const getSettings = (win, cbIN) => {
cbs.push(cbIN);
win.webContents.send(IPC.TRANSFER_SETTINGS_REQUESTED);
};
ipcMain.on(IPC.TRANSFER_SETTINGS_TO_ELECTRON, getSettingsCb);
function getSettingsCb(ev, settings) {
if (cbs.length) {
cbs.forEach((cb) => cb(settings));
cbs = [];
} else {
// NOTE: can happen, but is unlikely and unlikely to be a problem
console.warn('getSettingsCb no callbacks left');
}
}