pub struct MouseBinding { /* private fields */ }Expand description
A MouseBinding represents a connection to a mouse input device.
The MouseBinding parses and exposes mouse descriptor properties (e.g., the range of
possible x values) for the device it is associated with. It also parses InputReports
from the device, and sends them to the device binding owner over event_sender.
Implementations§
Source§impl MouseBinding
impl MouseBinding
Sourcepub async fn new(
device_proxy: InputDeviceProxy,
device_id: u32,
input_event_sender: UnboundedSender<InputEvent>,
device_node: Node,
metrics_logger: MetricsLogger,
) -> Result<Self, Error>
pub async fn new( device_proxy: InputDeviceProxy, device_id: u32, input_event_sender: UnboundedSender<InputEvent>, device_node: Node, metrics_logger: MetricsLogger, ) -> Result<Self, Error>
Creates a new InputDeviceBinding from the device_proxy.
The binding will start listening for input reports immediately and send new InputEvents
to the device binding owner over input_event_sender.
§Parameters
device_proxy: The proxy to bind the newInputDeviceBindingto.device_id: The id of the connected mouse device.input_event_sender: The channel to send new InputEvents to.device_node: The inspect node for this device bindingmetrics_logger: The metrics logger.
§Errors
If there was an error binding to the proxy.
Trait Implementations§
Source§impl InputDeviceBinding for MouseBinding
impl InputDeviceBinding for MouseBinding
Source§fn input_event_sender(&self) -> UnboundedSender<InputEvent>
fn input_event_sender(&self) -> UnboundedSender<InputEvent>
Returns the input event stream’s sender.
Source§fn get_device_descriptor(&self) -> InputDeviceDescriptor
fn get_device_descriptor(&self) -> InputDeviceDescriptor
Returns information about the input device.
Auto Trait Implementations§
impl Freeze for MouseBinding
impl !RefUnwindSafe for MouseBinding
impl Send for MouseBinding
impl Sync for MouseBinding
impl Unpin for MouseBinding
impl !UnwindSafe for MouseBinding
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
Source§impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
§impl<T> InstanceFromServiceTransport<T> for T
impl<T> InstanceFromServiceTransport<T> for T
§fn from_service_transport(handle: T) -> T
fn from_service_transport(handle: T) -> T
Converts the given service transport handle of type
T to [Self]§impl<T> IntoAny for T
impl<T> IntoAny for T
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more