From 4b35ecbd254213d37a4172884ab338abd811c757 Mon Sep 17 00:00:00 2001 From: mxb Date: Sat, 13 Apr 2019 21:42:07 +0200 Subject: [PATCH] Removed electron from user agent, because whatsapp user agent parsing server side is poorly functional --- app/ux/WebView.js | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/app/ux/WebView.js b/app/ux/WebView.js index 7dd69885..b64bf7fc 100644 --- a/app/ux/WebView.js +++ b/app/ux/WebView.js @@ -178,7 +178,7 @@ Ext.define('Rambox.ux.WebView',{ ,autosize: 'on' ,webpreferences: '' //,nativeWindowOpen=yes //,disablewebsecurity: 'on' // Disabled because some services (Like Google Drive) dont work with this enabled - ,useragent: ipc.sendSync('getConfig').user_agent ? ipc.sendSync('getConfig').user_agent : Ext.getStore('ServicesList').getById(me.record.get('type')).get('userAgent') + ,useragent: me.getUserAgent() ,preload: './resources/js/rambox-service-api.js' } }]; @@ -188,6 +188,13 @@ Ext.define('Rambox.ux.WebView',{ return cfg; } + ,getUserAgent: function() { + var ua = ipc.sendSync('getConfig').user_agent ? ipc.sendSync('getConfig').user_agent : Ext.getStore('ServicesList').getById(this.record.get('type')).get('userAgent') + if(ua.length === 0) { + ua = window.clientInformation.userAgent.replace(/Electron\/([0-9]\.?)+\s/,''); + } + return ua; + } ,statusBarConstructor: function(floating) { var me = this; @@ -227,7 +234,7 @@ Ext.define('Rambox.ux.WebView',{ ,onAfterRender: function() { var me = this; - + if ( !me.record.get('enabled') ) return; var webview = me.down('component').el.dom; @@ -300,7 +307,7 @@ Ext.define('Rambox.ux.WebView',{ ,src: e.url ,style: 'width:100%;height:100%;' ,partition: me.getWebView().partition - ,useragent: ipc.sendSync('getConfig').user_agent ? ipc.sendSync('getConfig').user_agent : Ext.getStore('ServicesList').getById(me.record.get('type')).get('userAgent') + ,useragent: me.getUserAgent() } } }).show(); @@ -328,7 +335,7 @@ Ext.define('Rambox.ux.WebView',{ ,src: e.url ,style: 'width:100%;height:100%;' ,partition: me.getWebView().partition - ,useragent: ipc.sendSync('getConfig').user_agent ? ipc.sendSync('getConfig').user_agent : Ext.getStore('ServicesList').getById(me.record.get('type')).get('userAgent') + ,useragent: me.getUserAgent() } } }).show(); @@ -358,7 +365,7 @@ Ext.define('Rambox.ux.WebView',{ ,src: e.url ,style: 'width:100%;height:100%;' ,partition: me.getWebView().partition - ,useragent: ipc.sendSync('getConfig').user_agent ? ipc.sendSync('getConfig').user_agent : Ext.getStore('ServicesList').getById(me.record.get('type')).get('userAgent') + ,useragent: me.getUserAgent() ,preload: './resources/js/rambox-modal-api.js' } }