diff --git a/src/services/browserPlatformUtils.service.ts b/src/services/browserPlatformUtils.service.ts index e6bffcb561..9da0fa529f 100644 --- a/src/services/browserPlatformUtils.service.ts +++ b/src/services/browserPlatformUtils.service.ts @@ -24,7 +24,9 @@ export default class BrowserPlatformUtilsService implements PlatformUtilsService return this.deviceCache; } - if (navigator.userAgent.indexOf(' Firefox/') !== -1 || navigator.userAgent.indexOf(' Gecko/') !== -1) { + if (BrowserApi.isSafariApi) { + this.deviceCache = DeviceType.SafariExtension; + } else if (navigator.userAgent.indexOf(' Firefox/') !== -1 || navigator.userAgent.indexOf(' Gecko/') !== -1) { this.deviceCache = DeviceType.FirefoxExtension; } else if ((!!(window as any).opr && !!opr.addons) || !!(window as any).opera || navigator.userAgent.indexOf(' OPR/') >= 0) { @@ -33,9 +35,6 @@ export default class BrowserPlatformUtilsService implements PlatformUtilsService this.deviceCache = DeviceType.EdgeExtension; } else if (navigator.userAgent.indexOf(' Vivaldi/') !== -1) { this.deviceCache = DeviceType.VivaldiExtension; - } else if ((window as any).safari && navigator.userAgent.indexOf(' Safari/') !== -1 && - navigator.userAgent.indexOf('Chrome') === -1) { - this.deviceCache = DeviceType.SafariExtension; } else if ((window as any).chrome && navigator.userAgent.indexOf(' Chrome/') !== -1) { this.deviceCache = DeviceType.ChromeExtension; } @@ -210,7 +209,7 @@ export default class BrowserPlatformUtilsService implements PlatformUtilsService try { // Security exception may be thrown by some browsers. - if (doc.execCommand('copy') && !clearing && this.clipboardWriteCallback != null) { + if (doc.execCommand('copy') && !clearing && this.clipboardWriteCallback != null) { this.clipboardWriteCallback(text, clearMs); } } catch (e) {