Browse Source

code refactor

MaysWind 3 years ago
parent
commit
8a32a4bcac
2 changed files with 29 additions and 9 deletions
  1. 11 9
      app/scripts/services/ariaNgNativeElectronService.js
  2. 18 0
      main/ipc.js

+ 11 - 9
app/scripts/services/ariaNgNativeElectronService.js

@@ -9,7 +9,6 @@
             }
         };
         var ipcRenderer = electron.ipcRenderer || {};
-        var config = remote.require('./config') || {};
         var menu = remote.require('./menu') || {};
         var tray = remote.require('./tray') || {};
         var localfs = remote.require('./localfs') || {};
@@ -53,6 +52,14 @@
             ipcRenderer.send && ipcRenderer.send(channel, ...args);
         };
 
+        var invokeSyncMainProcessMethod = function (channel, ...args) {
+            if (!ipcRenderer.sendSync) {
+                return null;
+            }
+
+            return ipcRenderer.sendSync(channel, ...args);
+        };
+
         return {
             getRuntimeEnvironment: function () {
                 if (!remote.process || !remote.process.versions) {
@@ -82,6 +89,7 @@
                 return !!getSetting('useCustomAppTitle');
             },
             getNativeConfig: function () {
+                var config = invokeSyncMainProcessMethod('get-native-config');
                 var cfg = {};
 
                 for (var key in config) {
@@ -89,22 +97,16 @@
                         continue;
                     }
 
-                    if (angular.isFunction(config[key])) {
-                        continue;
-                    }
-
                     cfg[key] = angular.copy(config[key]);
                 }
 
                 return cfg;
             },
             setDefaultPosition: function (value) {
-                config.defaultPosition = value;
-                config.save('defaultPosition');
+                sendMessageToMainProcess('set-native-config-default-position', value);
             },
             setMinimizedToTray: function (value) {
-                config.minimizedToTray = !!value;
-                config.save('minimizedToTray');
+                sendMessageToMainProcess('set-native-config-minimized-to-tray', value);
             },
             setMainWindowLanguage: function () {
                 this.setApplicationMenu();

+ 18 - 0
main/ipc.js

@@ -7,6 +7,7 @@ const electron = require('electron');
 
 const pkgfile = require('../package');
 const core = require('./core');
+const config = require('./config');
 const localfs = require('./localfs');
 
 const shell = electron.shell;
@@ -129,6 +130,23 @@ let asyncNewTaskFromText = function (text) {
     });
 };
 
+ipcMain.on('get-native-config', (event) => {
+    event.returnValue = {
+        defaultPosition: config.defaultPosition,
+        minimizedToTray: config.minimizedToTray
+    };
+});
+
+ipcMain.on('set-native-config-default-position', (event, value) => {
+    config.defaultPosition = value;
+    config.save('defaultPosition');
+});
+
+ipcMain.on('set-native-config-minimized-to-tray', (event, value) => {
+    config.minimizedToTray = !!value;
+    config.save('minimizedToTray');
+});
+
 ipcMain.on('open-external-url', (event, url) => {
     shell.openExternal(url);
 });