webxr: Rename sender & receiver type aliases to WebXrSender and WebXrReceiver (#35307)

This will prevent rust-analyzer from suggesting the import of these
types when dealing with `crossbeam` channels.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
This commit is contained in:
Martin Robinson 2025-02-05 22:10:17 +01:00 committed by GitHub
parent eb0382449f
commit 1e5db41afd
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 77 additions and 70 deletions

View file

@ -8,14 +8,14 @@ use serde::{Deserialize, Serialize};
use crate::{
DiscoveryAPI, Error, Frame, GLTypes, LayerGrandManager, MainThreadSession, MockDeviceInit,
MockDeviceMsg, MockDiscoveryAPI, Receiver, Sender, Session, SessionBuilder, SessionId,
SessionInit, SessionMode,
MockDeviceMsg, MockDiscoveryAPI, Session, SessionBuilder, SessionId, SessionInit, SessionMode,
WebXrReceiver, WebXrSender,
};
#[derive(Clone)]
#[cfg_attr(feature = "ipc", derive(Serialize, Deserialize))]
pub struct Registry {
sender: Sender<RegistryMsg>,
sender: WebXrSender<RegistryMsg>,
waker: MainThreadWakerImpl,
}
@ -23,8 +23,8 @@ pub struct MainThreadRegistry<GL> {
discoveries: Vec<Box<dyn DiscoveryAPI<GL>>>,
sessions: Vec<Box<dyn MainThreadSession>>,
mocks: Vec<Box<dyn MockDiscoveryAPI<GL>>>,
sender: Sender<RegistryMsg>,
receiver: Receiver<RegistryMsg>,
sender: WebXrSender<RegistryMsg>,
receiver: WebXrReceiver<RegistryMsg>,
waker: MainThreadWakerImpl,
grand_manager: LayerGrandManager<GL>,
next_session_id: u32,
@ -45,7 +45,7 @@ impl Clone for Box<dyn MainThreadWaker> {
#[cfg_attr(feature = "ipc", derive(Serialize, Deserialize))]
struct MainThreadWakerImpl {
#[cfg(feature = "ipc")]
sender: Sender<()>,
sender: WebXrSender<()>,
#[cfg(not(feature = "ipc"))]
waker: Box<dyn MainThreadWaker>,
}
@ -53,7 +53,7 @@ struct MainThreadWakerImpl {
#[cfg(feature = "ipc")]
impl MainThreadWakerImpl {
fn new(waker: Box<dyn MainThreadWaker>) -> Result<MainThreadWakerImpl, Error> {
let (sender, receiver) = crate::channel().or(Err(Error::CommunicationError))?;
let (sender, receiver) = crate::webxr_channel().or(Err(Error::CommunicationError))?;
ipc_channel::router::ROUTER.add_typed_route(receiver, Box::new(move |_| waker.wake()));
Ok(MainThreadWakerImpl { sender })
}
@ -75,7 +75,7 @@ impl MainThreadWakerImpl {
}
impl Registry {
pub fn supports_session(&mut self, mode: SessionMode, dest: Sender<Result<(), Error>>) {
pub fn supports_session(&mut self, mode: SessionMode, dest: WebXrSender<Result<(), Error>>) {
let _ = self.sender.send(RegistryMsg::SupportsSession(mode, dest));
self.waker.wake();
}
@ -84,8 +84,8 @@ impl Registry {
&mut self,
mode: SessionMode,
init: SessionInit,
dest: Sender<Result<Session, Error>>,
animation_frame_handler: Sender<Frame>,
dest: WebXrSender<Result<Session, Error>>,
animation_frame_handler: WebXrSender<Frame>,
) {
let _ = self.sender.send(RegistryMsg::RequestSession(
mode,
@ -99,7 +99,7 @@ impl Registry {
pub fn simulate_device_connection(
&mut self,
init: MockDeviceInit,
dest: Sender<Result<Sender<MockDeviceMsg>, Error>>,
dest: WebXrSender<Result<WebXrSender<MockDeviceMsg>, Error>>,
) {
let _ = self
.sender
@ -113,7 +113,7 @@ impl<GL: 'static + GLTypes> MainThreadRegistry<GL> {
waker: Box<dyn MainThreadWaker>,
grand_manager: LayerGrandManager<GL>,
) -> Result<Self, Error> {
let (sender, receiver) = crate::channel().or(Err(Error::CommunicationError))?;
let (sender, receiver) = crate::webxr_channel().or(Err(Error::CommunicationError))?;
let discoveries = Vec::new();
let sessions = Vec::new();
let mocks = Vec::new();
@ -199,7 +199,7 @@ impl<GL: 'static + GLTypes> MainThreadRegistry<GL> {
&mut self,
mode: SessionMode,
init: SessionInit,
raf_sender: Sender<Frame>,
raf_sender: WebXrSender<Frame>,
) -> Result<Session, Error> {
for discovery in &mut self.discoveries {
if discovery.supports_session(mode) {
@ -225,9 +225,9 @@ impl<GL: 'static + GLTypes> MainThreadRegistry<GL> {
fn simulate_device_connection(
&mut self,
init: MockDeviceInit,
) -> Result<Sender<MockDeviceMsg>, Error> {
) -> Result<WebXrSender<MockDeviceMsg>, Error> {
for mock in &mut self.mocks {
let (sender, receiver) = crate::channel().or(Err(Error::CommunicationError))?;
let (sender, receiver) = crate::webxr_channel().or(Err(Error::CommunicationError))?;
if let Ok(discovery) = mock.simulate_device_connection(init.clone(), receiver) {
self.discoveries.insert(0, discovery);
return Ok(sender);
@ -243,9 +243,12 @@ enum RegistryMsg {
RequestSession(
SessionMode,
SessionInit,
Sender<Result<Session, Error>>,
Sender<Frame>,
WebXrSender<Result<Session, Error>>,
WebXrSender<Frame>,
),
SupportsSession(SessionMode, WebXrSender<Result<(), Error>>),
SimulateDeviceConnection(
MockDeviceInit,
WebXrSender<Result<WebXrSender<MockDeviceMsg>, Error>>,
),
SupportsSession(SessionMode, Sender<Result<(), Error>>),
SimulateDeviceConnection(MockDeviceInit, Sender<Result<Sender<MockDeviceMsg>, Error>>),
}