pub trait InputDeviceRegistry {
// Required methods
fn add_touchscreen_device(
&mut self,
width: u32,
height: u32,
) -> Result<Box<dyn InputDevice>, Error>;
fn add_keyboard_device(&mut self) -> Result<Box<dyn InputDevice>, Error>;
fn add_media_buttons_device(
&mut self,
) -> Result<Box<dyn InputDevice>, Error>;
fn add_mouse_device(
&mut self,
width: u32,
height: u32,
) -> Result<Box<dyn InputDevice>, Error>;
}