From 08ffaabd0c87a40a520e53150fcbeffaa75f2dd3 Mon Sep 17 00:00:00 2001 From: Matthias Wirth Date: Wed, 18 Nov 2020 14:39:45 +0100 Subject: [PATCH] detect webgl support --- html/script.js | 41 +++++++++++++++++++++++++++-------------- 1 file changed, 27 insertions(+), 14 deletions(-) diff --git a/html/script.js b/html/script.js index bb307ff..6b45934 100644 --- a/html/script.js +++ b/html/script.js @@ -5,7 +5,7 @@ "use strict"; // Define our global variables -let webgl = true; +let webgl = false; let webglFeatures = new ol.source.Vector(); let OLMap = null; let OLProj = null; @@ -1403,18 +1403,31 @@ function initMap() { toggleLayer('#acpositions_checkbox', 'ac_positions'); }); - new Toggle({ - key: "webgl", - display: "WebGL", - container: "#settingsLeft", - init: true, - setState: function(state) { - if (state) - webgl = true; - else - webgl = false; - }, - }); + let webglSupported = false; + try { + const canvas = document.createElement('canvas'); + let gl = canvas.getContext("webgl"); + webglSupported = true; + } catch (error) { + console.error(error); + console.log('disabling webGL support!'); + webglSupported = false; + } + + if (webglSupported) { + new Toggle({ + key: "webgl", + display: "WebGL", + container: "#settingsLeft", + init: true, + setState: function(state) { + if (state) + webgl = true; + else + webgl = false; + }, + }); + } new Toggle({ key: "MapDim", display: "Dim Map", @@ -3532,7 +3545,7 @@ function checkRefresh() { changeCenter(); } function mapRefresh() { - console.log('mapRefresh()'); + //console.log('mapRefresh()'); let addToMap = []; let lastRenderExtent = null; const mapSize = OLMap.getSize()