Hi,
I try to use OffscreenCanvas when available and fallback to normal Canvas when donโt (Safari). But I encounter a problem with Observable who throw an error because OffscreenCanvas is not defined.
First method
// ๐ Error on Safari => intercept by Observable as a variable not defined
if (typeof OffscreenCanvas !== "undefined") {
canvas = new OffscreenCanvas(...size);
} else {
canvas = document.createElement("canvas");
canvas.width = canvas.height = size;
}
Second method
if (typeof HTMLCanvasElement.prototype.transferControlToOffscreen !== "undefined") {
// ๐ Error on Safari => intercept by Observable as a variable not defined
canvas = new OffscreenCanvas(...size);
} else {
canvas = document.createElement("canvas");
canvas.width = canvas.height = size;
}
See this notebook
Thanks!