]> git.codecow.com Git - nano-pow.git/commitdiff
Add context create error listener and improve messaging.
authorChris Duncan <chris@zoso.dev>
Thu, 2 Apr 2026 20:57:06 +0000 (13:57 -0700)
committerChris Duncan <chris@zoso.dev>
Thu, 2 Apr 2026 20:57:06 +0000 (13:57 -0700)
test/index.html

index 0ed6166adba0e4ddfe7437c72ba701fb1ee20e05..65f0cf4c6eb9b12f076d028e689aadfcfdfb74ca 100644 (file)
@@ -28,18 +28,21 @@ SPDX-License-Identifier: GPL-3.0-or-later
 
                        let isContextLost = 0
                        const glSize = (canvas => {
+                               canvas.addEventListener('webglcontextcreationerror', ev => {
+                                       console.log('NanoPow test page WebGL context create error during glSize()', ev.statusMessage)
+                               })
                                canvas.addEventListener('webglcontextlost', ev => {
                                        // Set up 10s timeout to prevent long-running restoration
                                        isContextLost = window.setTimeout(() => {
                                                throw new Error('NanoPow could not restore WebGL context.')
                                        }, 10_000)
                                        ev.preventDefault()
-                                       console.log('NanoPow test page glSize', 'WebGL context lost.')
+                                       console.log('NanoPow test page WebGL context lost during glSize()', ev.statusMessage)
                                })
                                canvas.addEventListener('webglcontextrestored', ev => {
                                        window.clearTimeout(isContextLost)
                                        isContextLost = 0
-                                       console.log('NanoPow test page glSize', 'WebGL context restored.')
+                                       console.log('NanoPow test page WebGL context restored during glSize()', ev.statusMessage)
                                })
                                const gl = canvas.getContext('webgl2')
                                const MAX_VIEWPORT_DIMS = gl.getParameter(gl.MAX_VIEWPORT_DIMS)