diff options
author | Manish Goregaokar <manishsmail@gmail.com> | 2019-10-08 15:07:18 -0700 |
---|---|---|
committer | Manish Goregaokar <manishsmail@gmail.com> | 2019-10-08 15:34:20 -0700 |
commit | 868e5cbd6220d39b08ceee2fa62521d4c51be596 (patch) | |
tree | 1cd69c06d7c1b57fdfedc04c5f26d36903ea132d /components/script/dom/xrinputsourcearray.rs | |
parent | 0777233412359f49acd542916910e7ec6ed4dac2 (diff) | |
download | servo-868e5cbd6220d39b08ceee2fa62521d4c51be596.tar.gz servo-868e5cbd6220d39b08ceee2fa62521d4c51be596.zip |
Add methods to XRInputSourceArray
Diffstat (limited to 'components/script/dom/xrinputsourcearray.rs')
-rw-r--r-- | components/script/dom/xrinputsourcearray.rs | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/components/script/dom/xrinputsourcearray.rs b/components/script/dom/xrinputsourcearray.rs index bf63e38e073..b0565940373 100644 --- a/components/script/dom/xrinputsourcearray.rs +++ b/components/script/dom/xrinputsourcearray.rs @@ -4,6 +4,7 @@ use crate::dom::bindings::cell::DomRefCell; use crate::dom::bindings::codegen::Bindings::XRInputSourceArrayBinding; +use crate::dom::bindings::codegen::Bindings::XRInputSourceArrayBinding::XRInputSourceArrayMethods; use crate::dom::bindings::reflector::{reflect_dom_object, DomObject, Reflector}; use crate::dom::bindings::root::{Dom, DomRoot}; use crate::dom::globalscope::GlobalScope; @@ -46,3 +47,18 @@ impl XRInputSourceArray { }); } } + +impl XRInputSourceArrayMethods for XRInputSourceArray { + /// https://immersive-web.github.io/webxr/#dom-xrinputsourcearray-length + fn Length(&self) -> u32 { + self.input_sources.borrow().len() as u32 + } + + /// https://immersive-web.github.io/webxr/#xrinputsourcearray + fn IndexedGetter(&self, n: u32) -> Option<DomRoot<XRInputSource>> { + self.input_sources + .borrow() + .get(n as usize) + .map(|x| DomRoot::from_ref(&**x)) + } +} |