From 601f4fd53dead42b42338ded0687a2001459d1ec Mon Sep 17 00:00:00 2001
From: baletiballo <75846481+baletiballo@users.noreply.github.com>
Date: Fri, 24 Jan 2025 08:36:24 +0100
Subject: [PATCH] Initially hide the WebGL Canvas, to prevent empty space if
 rendering breaks

---
 Assets/StreamingAssets/ScrollView_Server/scrollView.html     | 4 +++-
 .../ScrollView_Server/scroll_interaction/Math_Mind.js        | 5 +++--
 2 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/Assets/StreamingAssets/ScrollView_Server/scrollView.html b/Assets/StreamingAssets/ScrollView_Server/scrollView.html
index 3063e3f4..6be7f8bf 100644
--- a/Assets/StreamingAssets/ScrollView_Server/scrollView.html
+++ b/Assets/StreamingAssets/ScrollView_Server/scrollView.html
@@ -45,7 +45,9 @@
 </head>
 
 <body>
-    <canvas id="math-mind-canvas" width="400" height="300"></canvas>
+    <!-- The canvas is initially hidden, it will be unhidden once the renderer is set up. 
+        So, if that setup fails there is no empty space -->
+    <canvas id="math-mind-canvas" width="400" height="300" hidden></canvas>
     <div id="scrollContainer">
         <scroll-description title='DefaultScroll' alt='No scroll loaded yet'>
             <div>No scroll selected yet.</div>
diff --git a/Assets/StreamingAssets/ScrollView_Server/scroll_interaction/Math_Mind.js b/Assets/StreamingAssets/ScrollView_Server/scroll_interaction/Math_Mind.js
index 65fbc568..246e1687 100644
--- a/Assets/StreamingAssets/ScrollView_Server/scroll_interaction/Math_Mind.js
+++ b/Assets/StreamingAssets/ScrollView_Server/scroll_interaction/Math_Mind.js
@@ -7,8 +7,9 @@ const camera = new THREE.PerspectiveCamera(75, 4/3, 0.1, 1000);
 const renderer = new THREE.WebGLRenderer({
     canvas: document.querySelector('#math-mind-canvas')
 });
-// renderer.setSize( window.innerWidth, window.innerHeight );
-// document.body.appendChild( renderer.domElement );
+// The canvas is initially hidden, in case the three.js import fails
+// If we reach this code, it obviously didn't
+renderer.domElement.removeAttribute("hidden");
 const controls = new OrbitControls( camera, renderer.domElement );
 
 const pointGeo = new THREE.SphereGeometry(0.1);
-- 
GitLab