From 977fdef78746504c2a5b6fcb3c395d3746153eb8 Mon Sep 17 00:00:00 2001 From: Daniel James Smith Date: Thu, 18 Nov 2021 19:03:20 +0100 Subject: [PATCH] Use Mql.addListener for backwards compat (Safari < v14) (#1304) --- src/services/webPlatformUtils.service.ts | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/services/webPlatformUtils.service.ts b/src/services/webPlatformUtils.service.ts index d7764f1dfd..13f754c061 100644 --- a/src/services/webPlatformUtils.service.ts +++ b/src/services/webPlatformUtils.service.ts @@ -156,7 +156,7 @@ export class WebPlatformUtilsService implements PlatformUtilsService { } supportsWebAuthn(win: Window): boolean { - return (typeof(PublicKeyCredential) !== 'undefined'); + return (typeof (PublicKeyCredential) !== 'undefined'); } supportsDuo(): boolean { @@ -304,8 +304,15 @@ export class WebPlatformUtilsService implements PlatformUtilsService { } onDefaultSystemThemeChange(callback: ((theme: ThemeType.Light | ThemeType.Dark) => unknown)) { - this.prefersColorSchemeDark.addEventListener('change', ({ matches }) => { - callback(matches ? ThemeType.Dark : ThemeType.Light); - }); + try { + this.prefersColorSchemeDark.addEventListener('change', ({ matches }) => { + callback(matches ? ThemeType.Dark : ThemeType.Light); + }); + } catch (e) { + // Safari older than v14 + this.prefersColorSchemeDark.addListener(ev => { + callback(ev.matches ? ThemeType.Dark : ThemeType.Light); + }); + } } }