From 8d3b40614514e5f0ee20dd814aa799b4c33285f7 Mon Sep 17 00:00:00 2001 From: Colin Halseth Date: Fri, 14 May 2021 12:26:41 -0700 Subject: [PATCH] More changes to automatic update checker notification --- TrekSharp.AdventureTools/wwwroot/index.html | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/TrekSharp.AdventureTools/wwwroot/index.html b/TrekSharp.AdventureTools/wwwroot/index.html index 34aaaba..a2cfa2c 100644 --- a/TrekSharp.AdventureTools/wwwroot/index.html +++ b/TrekSharp.AdventureTools/wwwroot/index.html @@ -25,7 +25,7 @@
- A new version is available REFRESH × + A new version is available REFRESH ×
@@ -48,9 +48,15 @@ note.classList.add("w3-hide"); note.classList.remove("w3-show"); } + let newWorker; + function reloadPwa() { + if (newWorker) { + newWorker.postMessage({ action: 'skipWaiting' }); + } + } navigator.serviceWorker.register('service-worker.js').then(reg => { reg.addEventListener('updatefound', () => { - let newWorker = reg.installing; + newWorker = reg.installing; newWorker.addEventListener('statechange', () => { switch (newWorker.state) { case "installed": @@ -63,6 +69,13 @@ }); }); }); + let pwaRefreshing = false; + navigator.serviceWorker.addEventListener('controllerchange', function () { + if (pwaRefreshing) + return; + window.location.reload(); + pwaRefreshing = true; + });