From 975f5704ed5a35d4decb73644e069e7bc445a7ed Mon Sep 17 00:00:00 2001 From: Sauceee Date: Sun, 22 Sep 2019 01:29:55 +0200 Subject: [PATCH 1/2] Update webview.js --- webview.js | 43 ++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 40 insertions(+), 3 deletions(-) diff --git a/webview.js b/webview.js index 6e921d2..7816059 100644 --- a/webview.js +++ b/webview.js @@ -1,8 +1,45 @@ -module.exports = (Franz) => { +"use strict"; + +const { + remote +} = require('electron'); + +const path = require('path'); + +const webContents = remote.getCurrentWebContents(); +const { + session +} = webContents; + +window.addEventListener('beforeunload', async () => { + try { + session.flushStorageData(); + session.clearStorageData({ + storages: ['appcache', 'serviceworkers', 'cachestorage', 'websql', 'indexdb'] + }); + const registrations = await window.navigator.serviceWorker.getRegistrations(); + registrations.forEach(r => { + r.unregister(); + console.log('ServiceWorker unregistered'); + }); + } catch (err) { + console.err(err); + } +}); + +module.exports = Franz => { + // Reload on error + const el = document.getElementById('af-error-container'); + + if(el) { + window.location.reload(); + } + + // Get unread messages function getMessages() { - Franz.setBadge(document.querySelectorAll('mws-conversation-list-item div.text-content.unread').length); + const messages = document.querySelectorAll('.text-content.unread').length; + Franz.setBadge(messages); } - // check for new messages every second and update Franz badge Franz.loop(getMessages); }; From 5c44c7ecd68163b560a172f8296d4b85235349d4 Mon Sep 17 00:00:00 2001 From: Sauceee Date: Sun, 22 Sep 2019 23:54:22 +0200 Subject: [PATCH 2/2] Update webview.js --- webview.js | 27 ++++++++++----------------- 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/webview.js b/webview.js index 7816059..d98a158 100644 --- a/webview.js +++ b/webview.js @@ -1,15 +1,8 @@ "use strict"; -const { - remote -} = require('electron'); - -const path = require('path'); - +const { remote } = require('electron'); const webContents = remote.getCurrentWebContents(); -const { - session -} = webContents; +const { session } = webContents; window.addEventListener('beforeunload', async () => { try { @@ -28,15 +21,15 @@ window.addEventListener('beforeunload', async () => { }); module.exports = Franz => { - // Reload on error - const el = document.getElementById('af-error-container'); - - if(el) { - window.location.reload(); - } - - // Get unread messages function getMessages() { + // Reload on error + const el = document.getElementById('af-error-container'); + + if(el) { + window.location.reload(); + } + + // Get message count const messages = document.querySelectorAll('.text-content.unread').length; Franz.setBadge(messages); }