Support trackpad in VM
It handles single touch and tap event for now.
Bug: 347253952
Test: add trackpad, and then check if it works
Change-Id: Ifec4219036b4baa66c84faffa9d3b22f99fdddd4
diff --git a/virtualizationmanager/src/crosvm.rs b/virtualizationmanager/src/crosvm.rs
index a9a91fe..1998ef7 100644
--- a/virtualizationmanager/src/crosvm.rs
+++ b/virtualizationmanager/src/crosvm.rs
@@ -222,6 +222,7 @@
Keyboard(File),
Mouse(File),
Switches(File),
+ MultiTouchTrackpad { file: File, width: u32, height: u32, name: Option<String> },
}
type VfioDevice = Strong<dyn IBoundDevice>;
@@ -1154,6 +1155,13 @@
InputDeviceOption::Switches(file) => {
format!("switches[path={}]", add_preserved_fd(&mut preserved_fds, file))
}
+ InputDeviceOption::MultiTouchTrackpad { file, width, height, name } => format!(
+ "multi-touch-trackpad[path={},width={},height={}{}]",
+ add_preserved_fd(&mut preserved_fds, file),
+ width,
+ height,
+ name.as_ref().map_or("".into(), |n| format!(",name={}", n))
+ ),
});
}
}