From b6fb4d0c0b9dd361617cfa1c5a3465a4b0030965 Mon Sep 17 00:00:00 2001 From: Filipe Boechat <filipeboechatsampaio@hotmail.com> Date: Tue, 27 Aug 2019 11:49:19 -0300 Subject: [PATCH] refactor: factor out setLanguage listener Factor out the setLanguage listener to its own file. refs #104 --- public/app/listeners/index.js | 4 +++- public/app/listeners/setLanguage.js | 15 +++++++++++++++ public/electron.js | 13 +++---------- 3 files changed, 21 insertions(+), 11 deletions(-) create mode 100644 public/app/listeners/setLanguage.js diff --git a/public/app/listeners/index.js b/public/app/listeners/index.js index a4d2ea57..a4c48ddd 100644 --- a/public/app/listeners/index.js +++ b/public/app/listeners/index.js @@ -12,6 +12,7 @@ const showLoadSpacePrompt = require('./showLoadSpacePrompt'); const showExportSpacePrompt = require('./showExportSpacePrompt'); const showDeleteSpacePrompt = require('./showDeleteSpacePrompt'); const getUserFolder = require('./getUserFolder'); +const setLanguage = require('./setLanguage'); module.exports = { loadSpace, @@ -27,5 +28,6 @@ module.exports = { showLoadSpacePrompt, showExportSpacePrompt, showDeleteSpacePrompt, - getUserFolder + getUserFolder, + setLanguage, }; diff --git a/public/app/listeners/setLanguage.js b/public/app/listeners/setLanguage.js new file mode 100644 index 00000000..341a527f --- /dev/null +++ b/public/app/listeners/setLanguage.js @@ -0,0 +1,15 @@ +const { SET_LANGUAGE_CHANNEL } = require('../config/channels'); +const logger = require('../logger'); +const { ERROR_GENERAL } = require('../config/errors'); + +const setLanguage = (mainWindow, db) => async (event, lang) => { + try { + db.set('user.lang', lang).write(); + mainWindow.webContents.send(SET_LANGUAGE_CHANNEL, lang); + } catch (e) { + logger.error(e); + mainWindow.webContents.send(SET_LANGUAGE_CHANNEL, ERROR_GENERAL); + } +}; + +module.exports = setLanguage; diff --git a/public/electron.js b/public/electron.js index 3815961b..d2a67e18 100644 --- a/public/electron.js +++ b/public/electron.js @@ -66,7 +66,8 @@ const { showDeleteSpacePrompt, getGeolocationEnabled, setGeolocationEnabled, - getUserFolder + getUserFolder, + setLanguage, } = require('./app/listeners'); const isMac = require('./app/utils/isMac'); @@ -336,15 +337,7 @@ app.on('ready', async () => { }); // called when setting language - ipcMain.on(SET_LANGUAGE_CHANNEL, (event, lang) => { - try { - db.set('user.lang', lang).write(); - mainWindow.webContents.send(SET_LANGUAGE_CHANNEL, lang); - } catch (e) { - logger.error(e); - mainWindow.webContents.send(SET_LANGUAGE_CHANNEL, ERROR_GENERAL); - } - }); + ipcMain.on(SET_LANGUAGE_CHANNEL, setLanguage(mainWindow)); // called when getting developer mode ipcMain.on(GET_DEVELOPER_MODE_CHANNEL, () => {