forked from rDrama/rDrama
try different approach to opening push notification
parent
64de53e9a9
commit
d8292b7601
|
@ -70,7 +70,9 @@ self.addEventListener('push', function(event) {
|
|||
});
|
||||
|
||||
self.addEventListener('notificationclick', (e) => {
|
||||
if (e.notification.data.url)
|
||||
e.waitUntil(clients.openWindow(e.notification.data.url));
|
||||
e.notification.close();
|
||||
e.waitUntil(clients.matchAll({ type: 'window' }).then((clientsArr) => {
|
||||
const hadWindowToFocus = clientsArr.some((windowClient) => windowClient.url === e.notification.data.url ? (windowClient.focus(), true) : false);
|
||||
if (!hadWindowToFocus) clients.openWindow(e.notification.data.url).then((windowClient) => windowClient ? windowClient.focus() : null);
|
||||
}));
|
||||
});
|
||||
|
|
Loading…
Reference in New Issue