MCPcopy Create free account
hub / github.com/emberian/evdev / update_scancode

Method update_scancode

src/raw_stream.rs:621–637  ·  view source on GitHub ↗

Update a scancode. The return value is the previous keycode

(&self, keycode: u32, scancode: &[u8])

Source from the content-addressed store, hash-verified

619
620 /// Update a scancode. The return value is the previous keycode
621 pub fn update_scancode(&self, keycode: u32, scancode: &[u8]) -> io::Result<u32> {
622 let len = scancode.len();
623
624 let mut keymap = input_keymap_entry {
625 flags: 0,
626 len: len as u8,
627 index: 0,
628 keycode,
629 scancode: [0u8; 32],
630 };
631
632 keymap.scancode[..len].copy_from_slice(scancode);
633
634 let keycode = unsafe { sys::eviocskeycode_v2(self.as_raw_fd(), &keymap)? };
635
636 Ok(keycode as u32)
637 }
638
639 #[cfg(feature = "tokio")]
640 #[inline]

Callers

nothing calls this directly

Calls 2

lenMethod · 0.80
as_raw_fdMethod · 0.45

Tested by

no test coverage detected