Browse Source

Proxy Support

Fixes #203
pull/291/merge
Ramiro Saenz 9 years ago
parent
commit
84031b24ab
  1. 29
      app/view/preferences/Preferences.js
  2. 7
      app/view/preferences/PreferencesController.js
  3. 6
      electron/main.js

29
app/view/preferences/Preferences.js

@ -83,6 +83,35 @@ Ext.define('Rambox.view.preferences.Preferences',{
,boxLabel: 'Start automatically on system startup'
,value: config.auto_launch
}
,{
xtype: 'fieldset'
,title: 'Proxy (needs to relaunch) - <a href="http://proxylist.hidemyass.com/" target="_blank">Free IP:PORT Proxy List</a>'
,collapsed: !config.proxy
,checkboxToggle: true
,checkboxName: 'proxy'
,margin: '10 0 0 0'
,padding: 10
,layout: 'hbox'
,defaults: { labelAlign: 'top' }
,items: [
{
xtype: 'textfield'
,vtype: 'url'
,fieldLabel: 'Host'
,name: 'proxyHost'
,value: config.proxyHost
,flex: 1
}
,{
xtype: 'numberfield'
,fieldLabel: 'Port'
,name: 'proxyPort'
,width: 100
,value: config.proxyPort
,margin: '0 0 0 10'
}
]
}
]
}
];

7
app/view/preferences/PreferencesController.js

@ -11,7 +11,12 @@ Ext.define('Rambox.view.preferences.PreferencesController', {
,save: function( btn ) {
var me = this;
ipc.send('setConfig', me.getView().down('form').getForm().getFieldValues());
var values = me.getView().down('form').getForm().getFieldValues();
// Proxy
if ( values.proxy && (Ext.isEmpty(values.proxyHost) || Ext.isEmpty(values.proxyPort)) ) return;
ipc.send('setConfig', values);
me.getView().close();
}
});

6
electron/main.js

@ -23,6 +23,9 @@ const config = new Config({
,auto_launch: !isDev
,keep_in_taskbar_on_close: true
,start_minimized: false
,proxy: false
,proxyHost: ''
,proxyPort: ''
,x: undefined
,y: undefined
@ -321,6 +324,9 @@ ipcMain.on('image:download', function(event, url, partition) {
tmpWindow.webContents.downloadURL(url);
});
// Proxy
if ( config.get('proxy') ) app.commandLine.appendSwitch('proxy-server', config.get('proxyHost')+':'+config.get('proxyPort'));
// This method will be called when Electron has finished
// initialization and is ready to create browser windows.
app.on('ready', createWindow);

Loading…
Cancel
Save