diff options
author | Imanol Fernandez <mortimergoro@gmail.com> | 2017-10-27 17:06:53 +0200 |
---|---|---|
committer | Imanol Fernandez <mortimergoro@gmail.com> | 2017-10-31 21:38:39 +0100 |
commit | f2f5817f5630c0c7adce8269068bc1d58312137a (patch) | |
tree | e70de67b4101c7d323d7ab7757168e6eff5d1610 /components/script/dom/webgl_extensions/wrapper.rs | |
parent | d21657a9e5cfdb858c1a99a246001ceac05bb982 (diff) | |
download | servo-f2f5817f5630c0c7adce8269068bc1d58312137a.tar.gz servo-f2f5817f5630c0c7adce8269068bc1d58312137a.zip |
Add support for filtering WebGL extensions based on WebGL version
Diffstat (limited to 'components/script/dom/webgl_extensions/wrapper.rs')
-rw-r--r-- | components/script/dom/webgl_extensions/wrapper.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/components/script/dom/webgl_extensions/wrapper.rs b/components/script/dom/webgl_extensions/wrapper.rs index 1c10e692f51..8af48a6d93e 100644 --- a/components/script/dom/webgl_extensions/wrapper.rs +++ b/components/script/dom/webgl_extensions/wrapper.rs @@ -9,7 +9,7 @@ use dom::bindings::trace::JSTraceable; use dom::webglrenderingcontext::WebGLRenderingContext; use malloc_size_of::MallocSizeOf; use std::any::Any; -use super::{WebGLExtension, WebGLExtensions}; +use super::{WebGLExtension, WebGLExtensions, WebGLExtensionSpec}; /// Trait used internally by WebGLExtensions to store and /// handle the different WebGL extensions in a common list. @@ -18,6 +18,7 @@ pub trait WebGLExtensionWrapper: JSTraceable + MallocSizeOf { ctx: &WebGLRenderingContext, ext: &WebGLExtensions) -> NonNullJSObjectPtr; + fn spec(&self) -> WebGLExtensionSpec; fn is_supported(&self, &WebGLExtensions) -> bool; fn is_enabled(&self) -> bool; fn enable(&self, ext: &WebGLExtensions); @@ -61,6 +62,10 @@ impl<T> WebGLExtensionWrapper for TypedWebGLExtensionWrapper<T> } } + fn spec(&self) -> WebGLExtensionSpec { + T::spec() + } + fn is_supported(&self, ext: &WebGLExtensions) -> bool { self.is_enabled() || T::is_supported(ext) } |