pub trait OsKeyboardInner<'a>: Send {
type KeyboardType: Keyboard + 'a;
type IntoKeyboardType: Keyboard + Clone + 'static;
fn keyboard(&'a mut self) -> Result<Self::KeyboardType>;
fn into_keyboard(self) -> Result<Self::IntoKeyboardType>;
}