From 93215b6beb591d030db6e98e130e8130a6a1bce5 Mon Sep 17 00:00:00 2001
From: dsehnal <david.sehnal@gmail.com>
Date: Tue, 14 Dec 2021 13:19:27 +0100
Subject: [PATCH] prefer webgl 1 in Safari 15.1-15.3

---
 src/mol-plugin/config.ts | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/src/mol-plugin/config.ts b/src/mol-plugin/config.ts
index ff101cfc3..e97446b06 100644
--- a/src/mol-plugin/config.ts
+++ b/src/mol-plugin/config.ts
@@ -20,12 +20,17 @@ export class PluginConfigItem<T = any> {
 function item<T>(key: string, defaultValue?: T) { return new PluginConfigItem(key, defaultValue); }
 
 
-function preferWebGl1() {
+export function preferWebGl1() {
     if (typeof navigator === 'undefined' || typeof window === 'undefined') return false;
 
-    // WebGL2 isn't working in MacOS 12.0.1 Safari 15.1 (but is working in Safari tech preview)
+    // WebGL2 isn't working in MacOS 12.0.1 Safari 15.1, 15.2. It is working in Safari 15.4 tech preview, so disabling all versions before that.
     // prefer webgl 1 based on the userAgent substring
-    if (navigator.userAgent.indexOf('Version/15.1 Safari') > 0) {
+    const unpportedSafariVersions = [
+        'Version/15.1 Safari',
+        'Version/15.2 Safari',
+        'Version/15.3 Safari'
+    ];
+    if (unpportedSafariVersions.some(v => navigator.userAgent.indexOf(v) > 0)) {
         return true;
     }
 
-- 
GitLab