backend: add syspath and devnode to input devices
This commit is contained in:
parent
813f87faaa
commit
283e438d1b
9 changed files with 107 additions and 64 deletions
|
|
@ -281,7 +281,7 @@ pub async fn create(state: &Rc<State>) -> Result<Rc<MetalBackend>, MetalError> {
|
|||
struct MetalInputDevice {
|
||||
slot: usize,
|
||||
id: InputDeviceId,
|
||||
_devnum: c::dev_t,
|
||||
devnum: c::dev_t,
|
||||
fd: CloneCell<Option<Rc<OwnedFd>>>,
|
||||
inputdev: CloneCell<Option<Rc<RegisteredDevice>>>,
|
||||
devnode: CString,
|
||||
|
|
@ -509,6 +509,10 @@ impl InputDevice for MetalInputDevice {
|
|||
self.name.get()
|
||||
}
|
||||
|
||||
fn dev_t(&self) -> Option<c::dev_t> {
|
||||
Some(self.devnum)
|
||||
}
|
||||
|
||||
fn set_tap_enabled(&self, enabled: bool) {
|
||||
self.desired.tap_enabled.set(Some(enabled));
|
||||
if let Some(dev) = self.inputdev.get() {
|
||||
|
|
|
|||
|
|
@ -278,7 +278,7 @@ impl MetalBackend {
|
|||
let dev = Rc::new(MetalInputDevice {
|
||||
slot,
|
||||
id: device_id,
|
||||
_devnum: devnum,
|
||||
devnum,
|
||||
fd: Default::default(),
|
||||
inputdev: Default::default(),
|
||||
devnode: devnode.to_owned(),
|
||||
|
|
|
|||
|
|
@ -1177,6 +1177,10 @@ impl InputDevice for XSeatKeyboard {
|
|||
self.0.kb_name.clone()
|
||||
}
|
||||
|
||||
fn dev_t(&self) -> Option<dev_t> {
|
||||
None
|
||||
}
|
||||
|
||||
fn set_tap_enabled(&self, enabled: bool) {
|
||||
let _ = enabled;
|
||||
}
|
||||
|
|
@ -1242,6 +1246,10 @@ impl InputDevice for XSeatMouse {
|
|||
self.0.mouse_name.clone()
|
||||
}
|
||||
|
||||
fn dev_t(&self) -> Option<dev_t> {
|
||||
None
|
||||
}
|
||||
|
||||
fn set_tap_enabled(&self, enabled: bool) {
|
||||
let _ = enabled;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue