Fix updateUI to ensure all action windows are notified

This commit is contained in:
artur 2024-02-05 16:18:20 +03:00
parent 8aabb45917
commit 6c2a12c924
2 changed files with 16 additions and 2 deletions

View File

@ -160,10 +160,12 @@ export class NoauthBackend {
const self = this
swg.addEventListener('activate', (event) => {
console.log('activate')
// swg.addEventListener('activate', event => event.waitUntil(swg.clients.claim()));
})
swg.addEventListener('install', (event) => {
console.log('install')
// swg.addEventListener('install', event => event.waitUntil(swg.skipWaiting()));
})
swg.addEventListener('push', (event) => {
@ -972,7 +974,9 @@ export class NoauthBackend {
}
private async updateUI() {
const clients = await this.swg.clients.matchAll()
const clients = await this.swg.clients.matchAll({
includeUncontrolled: true
})
console.log('updateUI clients', clients.length)
for (const client of clients) {
client.postMessage({})

View File

@ -17,7 +17,17 @@ export async function swicRegister() {
},
})
navigator.serviceWorker.ready.then((r) => (swr = r))
navigator.serviceWorker.ready.then((r) => {
console.log("sw ready")
swr = r
if (navigator.serviceWorker.controller) {
console.log(
`This page is currently controlled by: ${navigator.serviceWorker.controller}`,
);
} else {
console.log("This page is not currently controlled by a service worker.");
}
})
navigator.serviceWorker.addEventListener('message', (event) => {
onMessage((event as MessageEvent).data)