From 6f5e4a00588aefdda7a5a1cfe70935870e7e234a Mon Sep 17 00:00:00 2001 From: Bennett Date: Tue, 22 Sep 2020 20:56:48 +0200 Subject: Unpack recipes and update recipes icons (#292) Co-authored-by: Amine Mouafik --- recipes/android-messages/webview.js | 47 +++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 recipes/android-messages/webview.js (limited to 'recipes/android-messages/webview.js') diff --git a/recipes/android-messages/webview.js b/recipes/android-messages/webview.js new file mode 100644 index 0000000..7c8e004 --- /dev/null +++ b/recipes/android-messages/webview.js @@ -0,0 +1,47 @@ +"use strict"; + +const { + remote +} = require('electron'); + +const webContents = remote.getCurrentWebContents(); +const { + session +} = webContents; +setTimeout(() => { + const elem = document.querySelector('#af-error-container'); + + if (elem && elem.innerText.toLowerCase().includes('the requested url was not found on this server')) { + window.location.reload(); + } +}, 1000); +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, settings) => { + function getMessages() { + const messages = document.querySelectorAll('.text-content.unread').length; + Franz.setBadge(messages); + } + + if (settings.isDarkModeEnabled) { + localStorage.setItem('dark_mode_enabled', 'true'); + } else { + localStorage.setItem('dark_mode_enabled', 'false'); + } + + Franz.loop(getMessages); +}; \ No newline at end of file -- cgit v1.2.3-70-g09d2