diff options
author | Daniel Adams <70986246+msub2@users.noreply.github.com> | 2024-09-12 01:52:16 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-09-12 01:52:16 +0000 |
commit | 08a4d751d7762fa36490998ba17bf3eece8d9bef (patch) | |
tree | e375d340cfad52290492f68d9ca69ba17b9dc8d2 /components/script/dom/xrinputsourcearray.rs | |
parent | d9be9d6bd464c664e7ddad86937a9aa54a6c7baf (diff) | |
download | servo-08a4d751d7762fa36490998ba17bf3eece8d9bef.tar.gz servo-08a4d751d7762fa36490998ba17bf3eece8d9bef.zip |
webxr: Update XRInputSource Gamepad handling, FakeXRInputController (#33403)
* Disconnect XRInputSource gamepads on removal
Signed-off-by: Daniel Adams <msub2official@gmail.com>
* Update Cargo.lock
Signed-off-by: Daniel Adams <msub2official@gmail.com>
* Comments, adjustments
Signed-off-by: Daniel Adams <msub2official@gmail.com>
* Update expectations
Signed-off-by: Daniel Adams <msub2official@gmail.com>
---------
Signed-off-by: Daniel Adams <msub2official@gmail.com>
Diffstat (limited to 'components/script/dom/xrinputsourcearray.rs')
-rw-r--r-- | components/script/dom/xrinputsourcearray.rs | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/components/script/dom/xrinputsourcearray.rs b/components/script/dom/xrinputsourcearray.rs index c2f15361738..0dd800336f5 100644 --- a/components/script/dom/xrinputsourcearray.rs +++ b/components/script/dom/xrinputsourcearray.rs @@ -69,6 +69,7 @@ impl XRInputSourceArray { let mut input_sources = self.input_sources.borrow_mut(); let global = self.global(); let removed = if let Some(i) = input_sources.iter().find(|i| i.id() == id) { + i.gamepad().update_connected(false, false); [DomRoot::from_ref(&**i)] } else { return; @@ -94,6 +95,7 @@ impl XRInputSourceArray { let global = self.global(); let root; let removed = if let Some(i) = input_sources.iter().find(|i| i.id() == id) { + i.gamepad().update_connected(false, false); root = [DomRoot::from_ref(&**i)]; &root as &[_] } else { |