diff options
Diffstat (limited to 'components/script/dom/webgl_extensions')
18 files changed, 36 insertions, 50 deletions
diff --git a/components/script/dom/webgl_extensions/ext/angleinstancedarrays.rs b/components/script/dom/webgl_extensions/ext/angleinstancedarrays.rs index 477cab3fb74..c53be69ae97 100644 --- a/components/script/dom/webgl_extensions/ext/angleinstancedarrays.rs +++ b/components/script/dom/webgl_extensions/ext/angleinstancedarrays.rs @@ -32,11 +32,11 @@ impl ANGLEInstancedArrays { impl WebGLExtension for ANGLEInstancedArrays { type Extension = Self; - fn new(ctx: &WebGLRenderingContext) -> DomRoot<Self> { + fn new(ctx: &WebGLRenderingContext, can_gc: CanGc) -> DomRoot<Self> { reflect_dom_object( Box::new(ANGLEInstancedArrays::new_inherited(ctx)), &*ctx.global(), - CanGc::note(), + can_gc, ) } diff --git a/components/script/dom/webgl_extensions/ext/extblendminmax.rs b/components/script/dom/webgl_extensions/ext/extblendminmax.rs index d6e717d67ab..75a24557aec 100644 --- a/components/script/dom/webgl_extensions/ext/extblendminmax.rs +++ b/components/script/dom/webgl_extensions/ext/extblendminmax.rs @@ -27,12 +27,8 @@ impl EXTBlendMinmax { impl WebGLExtension for EXTBlendMinmax { type Extension = Self; - fn new(ctx: &WebGLRenderingContext) -> DomRoot<Self> { - reflect_dom_object( - Box::new(Self::new_inherited()), - &*ctx.global(), - CanGc::note(), - ) + fn new(ctx: &WebGLRenderingContext, can_gc: CanGc) -> DomRoot<Self> { + reflect_dom_object(Box::new(Self::new_inherited()), &*ctx.global(), can_gc) } fn spec() -> WebGLExtensionSpec { diff --git a/components/script/dom/webgl_extensions/ext/extcolorbufferhalffloat.rs b/components/script/dom/webgl_extensions/ext/extcolorbufferhalffloat.rs index 5ead391b30a..44bea1cd0bc 100644 --- a/components/script/dom/webgl_extensions/ext/extcolorbufferhalffloat.rs +++ b/components/script/dom/webgl_extensions/ext/extcolorbufferhalffloat.rs @@ -27,11 +27,11 @@ impl EXTColorBufferHalfFloat { impl WebGLExtension for EXTColorBufferHalfFloat { type Extension = EXTColorBufferHalfFloat; - fn new(ctx: &WebGLRenderingContext) -> DomRoot<EXTColorBufferHalfFloat> { + fn new(ctx: &WebGLRenderingContext, can_gc: CanGc) -> DomRoot<EXTColorBufferHalfFloat> { reflect_dom_object( Box::new(EXTColorBufferHalfFloat::new_inherited()), &*ctx.global(), - CanGc::note(), + can_gc, ) } diff --git a/components/script/dom/webgl_extensions/ext/extfragdepth.rs b/components/script/dom/webgl_extensions/ext/extfragdepth.rs index 86280ad16a4..393ba32503b 100644 --- a/components/script/dom/webgl_extensions/ext/extfragdepth.rs +++ b/components/script/dom/webgl_extensions/ext/extfragdepth.rs @@ -27,12 +27,8 @@ impl EXTFragDepth { impl WebGLExtension for EXTFragDepth { type Extension = Self; - fn new(ctx: &WebGLRenderingContext) -> DomRoot<Self> { - reflect_dom_object( - Box::new(Self::new_inherited()), - &*ctx.global(), - CanGc::note(), - ) + fn new(ctx: &WebGLRenderingContext, can_gc: CanGc) -> DomRoot<Self> { + reflect_dom_object(Box::new(Self::new_inherited()), &*ctx.global(), can_gc) } fn spec() -> WebGLExtensionSpec { diff --git a/components/script/dom/webgl_extensions/ext/extshadertexturelod.rs b/components/script/dom/webgl_extensions/ext/extshadertexturelod.rs index a4c2b225d6b..c42b7deffc2 100644 --- a/components/script/dom/webgl_extensions/ext/extshadertexturelod.rs +++ b/components/script/dom/webgl_extensions/ext/extshadertexturelod.rs @@ -27,12 +27,8 @@ impl EXTShaderTextureLod { impl WebGLExtension for EXTShaderTextureLod { type Extension = Self; - fn new(ctx: &WebGLRenderingContext) -> DomRoot<Self> { - reflect_dom_object( - Box::new(Self::new_inherited()), - &*ctx.global(), - CanGc::note(), - ) + fn new(ctx: &WebGLRenderingContext, can_gc: CanGc) -> DomRoot<Self> { + reflect_dom_object(Box::new(Self::new_inherited()), &*ctx.global(), can_gc) } fn spec() -> WebGLExtensionSpec { diff --git a/components/script/dom/webgl_extensions/ext/exttexturefilteranisotropic.rs b/components/script/dom/webgl_extensions/ext/exttexturefilteranisotropic.rs index f122ecb591d..d19b2d93f65 100644 --- a/components/script/dom/webgl_extensions/ext/exttexturefilteranisotropic.rs +++ b/components/script/dom/webgl_extensions/ext/exttexturefilteranisotropic.rs @@ -28,12 +28,8 @@ impl EXTTextureFilterAnisotropic { impl WebGLExtension for EXTTextureFilterAnisotropic { type Extension = EXTTextureFilterAnisotropic; - fn new(ctx: &WebGLRenderingContext) -> DomRoot<Self> { - reflect_dom_object( - Box::new(Self::new_inherited()), - &*ctx.global(), - CanGc::note(), - ) + fn new(ctx: &WebGLRenderingContext, can_gc: CanGc) -> DomRoot<Self> { + reflect_dom_object(Box::new(Self::new_inherited()), &*ctx.global(), can_gc) } fn spec() -> WebGLExtensionSpec { diff --git a/components/script/dom/webgl_extensions/ext/oeselementindexuint.rs b/components/script/dom/webgl_extensions/ext/oeselementindexuint.rs index 87f5360d9d5..2aa857ab252 100644 --- a/components/script/dom/webgl_extensions/ext/oeselementindexuint.rs +++ b/components/script/dom/webgl_extensions/ext/oeselementindexuint.rs @@ -27,11 +27,11 @@ impl OESElementIndexUint { impl WebGLExtension for OESElementIndexUint { type Extension = Self; - fn new(ctx: &WebGLRenderingContext) -> DomRoot<Self> { + fn new(ctx: &WebGLRenderingContext, can_gc: CanGc) -> DomRoot<Self> { reflect_dom_object( Box::new(OESElementIndexUint::new_inherited()), &*ctx.global(), - CanGc::note(), + can_gc, ) } diff --git a/components/script/dom/webgl_extensions/ext/oesstandardderivatives.rs b/components/script/dom/webgl_extensions/ext/oesstandardderivatives.rs index f51b5693f01..c963eb61295 100644 --- a/components/script/dom/webgl_extensions/ext/oesstandardderivatives.rs +++ b/components/script/dom/webgl_extensions/ext/oesstandardderivatives.rs @@ -27,11 +27,11 @@ impl OESStandardDerivatives { impl WebGLExtension for OESStandardDerivatives { type Extension = OESStandardDerivatives; - fn new(ctx: &WebGLRenderingContext) -> DomRoot<OESStandardDerivatives> { + fn new(ctx: &WebGLRenderingContext, can_gc: CanGc) -> DomRoot<OESStandardDerivatives> { reflect_dom_object( Box::new(OESStandardDerivatives::new_inherited()), &*ctx.global(), - CanGc::note(), + can_gc, ) } diff --git a/components/script/dom/webgl_extensions/ext/oestexturefloat.rs b/components/script/dom/webgl_extensions/ext/oestexturefloat.rs index 36f3ca84742..9ae34aa01fd 100644 --- a/components/script/dom/webgl_extensions/ext/oestexturefloat.rs +++ b/components/script/dom/webgl_extensions/ext/oestexturefloat.rs @@ -26,11 +26,11 @@ impl OESTextureFloat { impl WebGLExtension for OESTextureFloat { type Extension = OESTextureFloat; - fn new(ctx: &WebGLRenderingContext) -> DomRoot<OESTextureFloat> { + fn new(ctx: &WebGLRenderingContext, can_gc: CanGc) -> DomRoot<OESTextureFloat> { reflect_dom_object( Box::new(OESTextureFloat::new_inherited()), &*ctx.global(), - CanGc::note(), + can_gc, ) } diff --git a/components/script/dom/webgl_extensions/ext/oestexturefloatlinear.rs b/components/script/dom/webgl_extensions/ext/oestexturefloatlinear.rs index 2dc889675dd..755e163a899 100644 --- a/components/script/dom/webgl_extensions/ext/oestexturefloatlinear.rs +++ b/components/script/dom/webgl_extensions/ext/oestexturefloatlinear.rs @@ -25,11 +25,11 @@ impl OESTextureFloatLinear { impl WebGLExtension for OESTextureFloatLinear { type Extension = OESTextureFloatLinear; - fn new(ctx: &WebGLRenderingContext) -> DomRoot<OESTextureFloatLinear> { + fn new(ctx: &WebGLRenderingContext, can_gc: CanGc) -> DomRoot<OESTextureFloatLinear> { reflect_dom_object( Box::new(OESTextureFloatLinear::new_inherited()), &*ctx.global(), - CanGc::note(), + can_gc, ) } diff --git a/components/script/dom/webgl_extensions/ext/oestexturehalffloat.rs b/components/script/dom/webgl_extensions/ext/oestexturehalffloat.rs index b8f32e57ddb..0289e96b0f9 100644 --- a/components/script/dom/webgl_extensions/ext/oestexturehalffloat.rs +++ b/components/script/dom/webgl_extensions/ext/oestexturehalffloat.rs @@ -27,11 +27,11 @@ impl OESTextureHalfFloat { impl WebGLExtension for OESTextureHalfFloat { type Extension = OESTextureHalfFloat; - fn new(ctx: &WebGLRenderingContext) -> DomRoot<OESTextureHalfFloat> { + fn new(ctx: &WebGLRenderingContext, can_gc: CanGc) -> DomRoot<OESTextureHalfFloat> { reflect_dom_object( Box::new(OESTextureHalfFloat::new_inherited()), &*ctx.global(), - CanGc::note(), + can_gc, ) } diff --git a/components/script/dom/webgl_extensions/ext/oestexturehalffloatlinear.rs b/components/script/dom/webgl_extensions/ext/oestexturehalffloatlinear.rs index e62f9bc24c2..b1f3b00ba8f 100644 --- a/components/script/dom/webgl_extensions/ext/oestexturehalffloatlinear.rs +++ b/components/script/dom/webgl_extensions/ext/oestexturehalffloatlinear.rs @@ -26,11 +26,11 @@ impl OESTextureHalfFloatLinear { impl WebGLExtension for OESTextureHalfFloatLinear { type Extension = OESTextureHalfFloatLinear; - fn new(ctx: &WebGLRenderingContext) -> DomRoot<OESTextureHalfFloatLinear> { + fn new(ctx: &WebGLRenderingContext, can_gc: CanGc) -> DomRoot<OESTextureHalfFloatLinear> { reflect_dom_object( Box::new(OESTextureHalfFloatLinear::new_inherited()), &*ctx.global(), - CanGc::note(), + can_gc, ) } diff --git a/components/script/dom/webgl_extensions/ext/oesvertexarrayobject.rs b/components/script/dom/webgl_extensions/ext/oesvertexarrayobject.rs index 9815bf584e7..aeadd9bbe67 100644 --- a/components/script/dom/webgl_extensions/ext/oesvertexarrayobject.rs +++ b/components/script/dom/webgl_extensions/ext/oesvertexarrayobject.rs @@ -54,11 +54,11 @@ impl OESVertexArrayObjectMethods<crate::DomTypeHolder> for OESVertexArrayObject impl WebGLExtension for OESVertexArrayObject { type Extension = OESVertexArrayObject; - fn new(ctx: &WebGLRenderingContext) -> DomRoot<OESVertexArrayObject> { + fn new(ctx: &WebGLRenderingContext, can_gc: CanGc) -> DomRoot<OESVertexArrayObject> { reflect_dom_object( Box::new(OESVertexArrayObject::new_inherited(ctx)), &*ctx.global(), - CanGc::note(), + can_gc, ) } diff --git a/components/script/dom/webgl_extensions/ext/webglcolorbufferfloat.rs b/components/script/dom/webgl_extensions/ext/webglcolorbufferfloat.rs index 25333fd6ea2..7eef3d47d6a 100644 --- a/components/script/dom/webgl_extensions/ext/webglcolorbufferfloat.rs +++ b/components/script/dom/webgl_extensions/ext/webglcolorbufferfloat.rs @@ -27,11 +27,11 @@ impl WEBGLColorBufferFloat { impl WebGLExtension for WEBGLColorBufferFloat { type Extension = WEBGLColorBufferFloat; - fn new(ctx: &WebGLRenderingContext) -> DomRoot<WEBGLColorBufferFloat> { + fn new(ctx: &WebGLRenderingContext, can_gc: CanGc) -> DomRoot<WEBGLColorBufferFloat> { reflect_dom_object( Box::new(WEBGLColorBufferFloat::new_inherited()), &*ctx.global(), - CanGc::note(), + can_gc, ) } diff --git a/components/script/dom/webgl_extensions/ext/webglcompressedtextureetc1.rs b/components/script/dom/webgl_extensions/ext/webglcompressedtextureetc1.rs index ece2ccc596c..d6958339aa3 100644 --- a/components/script/dom/webgl_extensions/ext/webglcompressedtextureetc1.rs +++ b/components/script/dom/webgl_extensions/ext/webglcompressedtextureetc1.rs @@ -27,11 +27,11 @@ impl WEBGLCompressedTextureETC1 { impl WebGLExtension for WEBGLCompressedTextureETC1 { type Extension = WEBGLCompressedTextureETC1; - fn new(ctx: &WebGLRenderingContext) -> DomRoot<WEBGLCompressedTextureETC1> { + fn new(ctx: &WebGLRenderingContext, can_gc: CanGc) -> DomRoot<WEBGLCompressedTextureETC1> { reflect_dom_object( Box::new(WEBGLCompressedTextureETC1::new_inherited()), &*ctx.global(), - CanGc::note(), + can_gc, ) } diff --git a/components/script/dom/webgl_extensions/ext/webglcompressedtextures3tc.rs b/components/script/dom/webgl_extensions/ext/webglcompressedtextures3tc.rs index 9ba2b913bfd..59d306d0e91 100644 --- a/components/script/dom/webgl_extensions/ext/webglcompressedtextures3tc.rs +++ b/components/script/dom/webgl_extensions/ext/webglcompressedtextures3tc.rs @@ -27,11 +27,11 @@ impl WEBGLCompressedTextureS3TC { impl WebGLExtension for WEBGLCompressedTextureS3TC { type Extension = WEBGLCompressedTextureS3TC; - fn new(ctx: &WebGLRenderingContext) -> DomRoot<WEBGLCompressedTextureS3TC> { + fn new(ctx: &WebGLRenderingContext, can_gc: CanGc) -> DomRoot<WEBGLCompressedTextureS3TC> { reflect_dom_object( Box::new(WEBGLCompressedTextureS3TC::new_inherited()), &*ctx.global(), - CanGc::note(), + can_gc, ) } diff --git a/components/script/dom/webgl_extensions/extension.rs b/components/script/dom/webgl_extensions/extension.rs index cb71336ec96..a4988179b91 100644 --- a/components/script/dom/webgl_extensions/extension.rs +++ b/components/script/dom/webgl_extensions/extension.rs @@ -9,6 +9,7 @@ use crate::dom::bindings::reflector::DomObject; use crate::dom::bindings::root::DomRoot; use crate::dom::bindings::trace::JSTraceable; use crate::dom::webglrenderingcontext::WebGLRenderingContext; +use crate::script_runtime::CanGc; /// Trait implemented by WebGL extensions. pub(crate) trait WebGLExtension: Sized @@ -19,7 +20,7 @@ where type Extension; /// Creates the DOM object of the WebGL extension. - fn new(ctx: &WebGLRenderingContext) -> DomRoot<Self::Extension>; + fn new(ctx: &WebGLRenderingContext, can_gc: CanGc) -> DomRoot<Self::Extension>; /// Returns which WebGL spec is this extension written against. fn spec() -> WebGLExtensionSpec; diff --git a/components/script/dom/webgl_extensions/wrapper.rs b/components/script/dom/webgl_extensions/wrapper.rs index 1b7a71e3e21..0c68b14cd93 100644 --- a/components/script/dom/webgl_extensions/wrapper.rs +++ b/components/script/dom/webgl_extensions/wrapper.rs @@ -12,6 +12,7 @@ use crate::dom::bindings::reflector::DomObject; use crate::dom::bindings::root::MutNullableDom; use crate::dom::bindings::trace::JSTraceable; use crate::dom::webglrenderingcontext::WebGLRenderingContext; +use crate::script_runtime::CanGc; /// Trait used internally by WebGLExtensions to store and /// handle the different WebGL extensions in a common list. @@ -57,7 +58,7 @@ where let mut enabled = true; let extension = self.extension.or_init(|| { enabled = false; - T::new(ctx) + T::new(ctx, CanGc::note()) }); if !enabled { self.enable(ext); |