diff --git a/app/ux/WebView.js b/app/ux/WebView.js index 1abc89dc..5fce1970 100644 --- a/app/ux/WebView.js +++ b/app/ux/WebView.js @@ -229,7 +229,7 @@ Ext.define('Rambox.ux.WebView',{ webview.addEventListener("dom-ready", function(e) { // Mute Webview - if ( me.record.get('muted') || localStorage.getItem('locked') || JSON.parse(localStorage.getItem('dontDisturb')) ) me.setAudioMuted(true); + if ( me.record.get('muted') || localStorage.getItem('locked') || JSON.parse(localStorage.getItem('dontDisturb')) ) me.setAudioMuted(true, true); // Injected code to detect new messages if ( me.record ) { @@ -273,28 +273,32 @@ Ext.define('Rambox.ux.WebView',{ var me = this; var webview = me.down('component').el.dom; - webview.loadURL(me.src); + if ( me.record.get('enabled') ) webview.loadURL(me.src); } ,toggleDevTools: function(btn) { var me = this; var webview = me.down('component').el.dom; - webview.isDevToolsOpened() ? webview.closeDevTools() : webview.openDevTools(); + if ( me.record.get('enabled') ) webview.isDevToolsOpened() ? webview.closeDevTools() : webview.openDevTools(); } - ,setAudioMuted: function(muted) { + ,setAudioMuted: function(muted, calledFromDisturb) { var me = this; var webview = me.down('component').el.dom; - webview.setAudioMuted(muted); + if ( !muted && !calledFromDisturb && JSON.parse(localStorage.getItem('dontDisturb')) ) return; + + if ( me.record.get('enabled') ) webview.setAudioMuted(muted); } - ,setNotifications: function(notification) { + ,setNotifications: function(notification, calledFromDisturb) { var me = this; var webview = me.down('component').el.dom; - ipc.send('setServiceNotifications', webview.partition, notification); + if ( notification && !calledFromDisturb && JSON.parse(localStorage.getItem('dontDisturb')) ) return; + + if ( me.record.get('enabled') ) ipc.send('setServiceNotifications', webview.partition, notification); } ,setEnabled: function(enabled) { @@ -316,14 +320,14 @@ Ext.define('Rambox.ux.WebView',{ var me = this; var webview = me.down('component').el.dom; - webview.goBack(); + if ( me.record.get('enabled') ) webview.goBack(); } ,goForward: function() { var me = this; var webview = me.down('component').el.dom; - webview.goForward(); + if ( me.record.get('enabled') ) webview.goForward(); } ,zoomIn: function() { @@ -331,7 +335,7 @@ Ext.define('Rambox.ux.WebView',{ var webview = me.down('component').el.dom; me.zoomLevel = me.zoomLevel + 0.25; - webview.getWebContents().setZoomLevel(me.zoomLevel); + if ( me.record.get('enabled') ) webview.getWebContents().setZoomLevel(me.zoomLevel); } ,zoomOut: function() { @@ -339,7 +343,7 @@ Ext.define('Rambox.ux.WebView',{ var webview = me.down('component').el.dom; me.zoomLevel = me.zoomLevel - 0.25; - webview.getWebContents().setZoomLevel(me.zoomLevel); + if ( me.record.get('enabled') ) webview.getWebContents().setZoomLevel(me.zoomLevel); } ,resetZoom: function() { @@ -347,6 +351,6 @@ Ext.define('Rambox.ux.WebView',{ var webview = me.down('component').el.dom; me.zoomLevel = 0; - webview.getWebContents().setZoomLevel(0); + if ( me.record.get('enabled') ) webview.getWebContents().setZoomLevel(0); } }); diff --git a/app/view/main/Main.js b/app/view/main/Main.js index 2112ae47..82dcbc9b 100644 --- a/app/view/main/Main.js +++ b/app/view/main/Main.js @@ -286,9 +286,22 @@ Ext.define('Rambox.view.main.Main', { } ,bbar: [ { - text: 'Donate' - ,glyph: 'xf1ed@FontAwesome' - ,href: 'https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=WU75QWS7LH2CA' + xtype: 'segmentedbutton' + ,allowToggle: false + ,items: [ + { + text: 'Donate with' + ,overCls: '' + } + ,{ + glyph: 'xf1ed@FontAwesome' + ,href: 'https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=WU75QWS7LH2CA' + } + ,{ + glyph: 'xf15a@FontAwesome' + ,href: 'https://www.coinbase.com/saenzramiro' + } + ] } ,'->' ,{ diff --git a/app/view/main/MainController.js b/app/view/main/MainController.js index 88b47a0f..ab43b98e 100644 --- a/app/view/main/MainController.js +++ b/app/view/main/MainController.js @@ -11,7 +11,7 @@ Ext.define('Rambox.view.main.MainController', { ga_storage._trackPageview('/index.html', 'main'); if ( newTab.id === 'ramboxTab' || !newTab.record.get('enabled') ) return; - + var webview = newTab.down('component').el.dom; if ( webview ) webview.focus(); } @@ -802,10 +802,10 @@ Ext.define('Rambox.view.main.MainController', { var tab = Ext.getCmp('tab_'+serviceId); // Mute sounds - tab.setAudioMuted(btn.pressed); + tab.setAudioMuted(btn.pressed ? true : tab.record.get('muted'), true); // Prevent Notifications - tab.setNotifications(!btn.pressed); + tab.setNotifications(btn.pressed ? false : tab.record.get('notifications'), true); }); localStorage.setItem('dontDisturb', btn.pressed);