diff --git a/demo/canvas.html b/demo/canvas.html
new file mode 100644
index 0000000..3964e47
--- /dev/null
+++ b/demo/canvas.html
@@ -0,0 +1,105 @@
+
+
+
+
+ <repa-shader> demo
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/repa-texture.js b/src/repa-texture.js
index 3403169..32cecaa 100644
--- a/src/repa-texture.js
+++ b/src/repa-texture.js
@@ -242,7 +242,14 @@ class RepaTexture extends HTMLElement {
}
get shouldUpdate() {
- return this.ready && (this._forceUpdate || (this.ref && this.ref instanceof HTMLVideoElement && this.ref.readyState === this.ref.HAVE_ENOUGH_DATA));
+ return this.ready &&
+ (this._forceUpdate || (
+ this.ref && (
+ (this.ref instanceof HTMLVideoElement && this.ref.readyState === this.ref.HAVE_ENOUGH_DATA) ||
+ (this.ref instanceof HTMLCanvasElement)
+ )
+ )
+ );
}
get width() {