HTMLCanvasElement: webglcontextrestored event

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

The webglcontextrestored event of the WebGL API is fired if the user agent restores the drawing buffer for a WebGLRenderingContext object.

Once the context is restored, WebGL resources such as textures and buffers that were created before the context was lost are no longer valid. You need to reinitialize the state of your WebGL application and recreate resources.

This event does not bubble.

Syntax

Use the event name in methods like addEventListener(), or set an event handler property.

js
addEventListener("webglcontextrestored", (event) => {});

onwebglcontextrestored = (event) => {};

Event type

Event properties

This interface inherits properties from its parent interface, Event.

WebGLContextEvent.statusMessage

A read-only property containing additional information about the event.

Example

With the help of the WEBGL_lose_context extension, you can simulate the webglcontextrestored event:

js
const canvas = document.getElementById("canvas");
const gl = canvas.getContext("webgl");

canvas.addEventListener(
  "webglcontextrestored",
  (e) => {
    console.log(e);
  },
  false,
);

gl.getExtension("WEBGL_lose_context").restoreContext();

// "webglcontextrestored" event is logged.

Specifications

Specification
WebGL Specification
# 5.15.3

Browser compatibility

BCD tables only load in the browser

See also