diff --git a/src/common/misc/ClientDetector.ts b/src/common/misc/ClientDetector.ts index ee3350cd64..783c0914cb 100644 --- a/src/common/misc/ClientDetector.ts +++ b/src/common/misc/ClientDetector.ts @@ -134,7 +134,7 @@ export class ClientDetector { */ isSupported(): boolean { this.syntaxChecks() - return this.isSupportedBrowserVersion() && this.testBuiltins() && this.websockets() && this.testCss() + return this.isSupportedBrowserVersion() && this.testBuiltins() && this.websockets() && this.testCss() && this.lookBehindRegex() } isMobileDevice(): boolean { @@ -184,6 +184,15 @@ export class ClientDetector { return "XMLHttpRequest" in window } + lookBehindRegex(): boolean { + try { + ;/(?<=([ab]+)([bc]+))$/.exec("abc") + return true + } catch (e) { + return false + } + } + indexedDb(): boolean { try { return window.indexedDB != null