diff --git a/app/model/Service.js b/app/model/Service.js
index 5f14eb83..e108fa3c 100644
--- a/app/model/Service.js
+++ b/app/model/Service.js
@@ -48,7 +48,7 @@ Ext.define('Rambox.model.Service', {
},{
name: 'trust'
,type: 'boolean'
- ,defaultValue: false
+ ,defaultValue: true
},{
name: 'enabled'
,type: 'boolean'
diff --git a/app/ux/WebView.js b/app/ux/WebView.js
index cbe15891..420bd32a 100644
--- a/app/ux/WebView.js
+++ b/app/ux/WebView.js
@@ -6,9 +6,9 @@ Ext.define('Rambox.ux.WebView',{
,xtype: 'webview'
,requires: [
- 'Rambox.util.Format',
- 'Rambox.util.Notifier',
- 'Rambox.util.UnreadCounter'
+ 'Rambox.util.Format'
+ ,'Rambox.util.Notifier'
+ ,'Rambox.util.UnreadCounter'
]
// private
@@ -34,7 +34,7 @@ Ext.define('Rambox.ux.WebView',{
}
// Allow Custom sites with self certificates
- if ( me.record.get('trust') ) ipc.send('allowCertificate', me.src);
+ //if ( me.record.get('trust') ) ipc.send('allowCertificate', me.src);
Ext.apply(me, {
items: me.webViewConstructor()
@@ -123,6 +123,18 @@ Ext.define('Rambox.ux.WebView',{
]
}
}
+ ,bbar: {
+ xtype: 'statusbar'
+ ,defaultText: ' Ready'
+ ,busyIconCls : ''
+ ,busyText: ' Loading...'
+ ,items: [
+ ,{
+ xtype: 'tbtext'
+ ,itemId: 'url'
+ }
+ ]
+ }
,listeners: {
afterrender: me.onAfterRender
}
@@ -186,17 +198,15 @@ Ext.define('Rambox.ux.WebView',{
// Show and hide spinner when is loading
webview.addEventListener("did-start-loading", function() {
console.info('Start loading...', me.src);
- me.mask('Loading...', 'bottomMask');
- // Manually remove modal from mask
- Ext.cq1('#'+me.id).el.dom.getElementsByClassName('bottomMask')[0].parentElement.className = '';
+ me.down('statusbar').showBusy();
});
webview.addEventListener("did-stop-loading", function() {
- me.unmask();
+ me.down('statusbar').clearStatus({useDefaults: true});
});
webview.addEventListener("did-finish-load", function(e) {
Rambox.app.setTotalServicesLoaded( Rambox.app.getTotalServicesLoaded() + 1 );
-
+
// Apply saved zoom level
webview.setZoomLevel(me.record.get('zoomLevel'));
});
@@ -262,10 +272,21 @@ Ext.define('Rambox.ux.WebView',{
*/
console.groupEnd();
-
-
// Scroll always to top (bug)
webview.executeJavaScript('document.body.scrollTop=0;');
+
+ // Handles Certificate Errors
+ webview.getWebContents().on('certificate-error', function(event, url, error, certificate, callback) {
+ if ( me.record.get('trust') ) {
+ event.preventDefault();
+ callback(true);
+ } else {
+ callback(false);
+ }
+ me.down('statusbar').setStatus({
+ text: ' Certification Warning'
+ });
+ });
});
webview.addEventListener('ipc-message', function(event) {
@@ -321,6 +342,10 @@ Ext.define('Rambox.ux.WebView',{
if ( e.isMainFrame ) webview.loadURL(e.newURL);
});
+ webview.addEventListener('update-target-url', function( url ) {
+ me.down('statusbar #url').setText(url.url);
+ });
+
if(ipc.sendSync('getConfig').spellcheck) {
/*
var webFrame = require('electron').webFrame;
diff --git a/app/view/add/Add.js b/app/view/add/Add.js
index 26790f9b..ca4cde5e 100644
--- a/app/view/add/Add.js
+++ b/app/view/add/Add.js
@@ -157,7 +157,7 @@ Ext.define('Rambox.view.add.Add',{
,boxLabel: 'Trust invalid authority certificates'
,name: 'trust'
,hidden: me.record.get('type') !== 'custom'
- ,checked: me.edit ? me.record.get('trust') : false
+ ,checked: me.edit ? me.record.get('trust') : true
,uncheckedValue: false
,inputValue: true
}
diff --git a/app/view/add/AddController.js b/app/view/add/AddController.js
index 5c4e6cbb..af8acb4e 100644
--- a/app/view/add/AddController.js
+++ b/app/view/add/AddController.js
@@ -33,10 +33,10 @@ Ext.define('Rambox.view.add.AddController', {
,url: formValues.url
,align: formValues.align
,notifications: formValues.notifications
- ,muted: formValues.muted,
- displayTabUnreadCounter: formValues.displayTabUnreadCounter,
- includeInGlobalUnreadCounter: formValues.includeInGlobalUnreadCounter,
- trust: formValues.trust
+ ,muted: formValues.muted
+ ,displayTabUnreadCounter: formValues.displayTabUnreadCounter
+ ,includeInGlobalUnreadCounter: formValues.includeInGlobalUnreadCounter
+ ,trust: formValues.trust
,js_unread: formValues.js_unread
});
@@ -76,7 +76,7 @@ Ext.define('Rambox.view.add.AddController', {
if ( win.record.get('url').indexOf('___') >= 0 ) {
formValues.url = formValues.cycleValue === '1' ? win.record.get('url').replace('___', formValues.url) : formValues.url;
}
-
+
var service = Ext.create('Rambox.model.Service', {
type: win.record.get('id')
,logo: formValues.logo
@@ -84,10 +84,10 @@ Ext.define('Rambox.view.add.AddController', {
,url: formValues.url
,align: formValues.align
,notifications: formValues.notifications
- ,muted: formValues.muted,
- displayTabUnreadCounter: formValues.displayTabUnreadCounter,
- includeInGlobalUnreadCounter: formValues.includeInGlobalUnreadCounter,
- trust: formValues.trust
+ ,muted: formValues.muted
+ ,displayTabUnreadCounter: formValues.displayTabUnreadCounter
+ ,includeInGlobalUnreadCounter: formValues.includeInGlobalUnreadCounter
+ ,trust: formValues.trust
,js_unread: formValues.js_unread
});
service.save();
diff --git a/electron/main.js b/electron/main.js
index 73f9b476..d17e85db 100644
--- a/electron/main.js
+++ b/electron/main.js
@@ -306,28 +306,6 @@ if (shouldQuit) {
return;
}
-var allowedURLCertificates = [];
-ipcMain.on('allowCertificate', (event, url) => {
- allowedURLCertificates.push(require('url').parse(url).host);
-});
-app.on('certificate-error', function(event, webContents, url, error, certificate, callback) {
- if ( allowedURLCertificates.indexOf(require('url').parse(url).host) >= 0 ) {
- event.preventDefault();
- callback(true);
- } else {
- callback(false);
- dialog.showMessageBox(mainWindow, {
- title: 'Certification Warning'
- ,message: 'The service with the following URL has an invalid authority certification.\n\n'+url+'\n\nIf is a Custom Service, you have to remove it and add it again, enabling the "Trust invalid authority certificates" in the Options.'
- ,buttons: ['OK']
- ,type: 'warning'
- }, function() {
-
- });
- }
-});
-
-
// Code for downloading images as temporal files
// Credit: Ghetto Skype (https://github.com/stanfieldr/ghetto-skype)
const tmp = require('tmp');
diff --git a/packages/local/rambox-default-theme/sass/etc/all.scss b/packages/local/rambox-default-theme/sass/etc/all.scss
index 1eda5991..bab3a8a9 100644
--- a/packages/local/rambox-default-theme/sass/etc/all.scss
+++ b/packages/local/rambox-default-theme/sass/etc/all.scss
@@ -260,3 +260,11 @@ body {
.auth0-lock.auth0-lock .auth0-lock-header-logo {
height: 50px !important;
}
+
+.x-statusbar {
+ padding: 0px !important;
+ &.x-docked-bottom {
+ border-top: 1px solid #CCC !important;
+ border-top-width: 1px !important;
+ }
+}