Browse Source

Make initial text argument optional

This allows the user to clear the initial_text field by supplying a
`None`
pull/158/head
Fenrir 10 months ago
parent
commit
9eea3f0d1f
  1. 19
      ctru-rs/src/applets/swkbd.rs

19
ctru-rs/src/applets/swkbd.rs

@ -499,18 +499,23 @@ impl SoftwareKeyboard { @@ -499,18 +499,23 @@ impl SoftwareKeyboard {
/// use ctru::applets::swkbd::SoftwareKeyboard;
/// let mut keyboard = SoftwareKeyboard::default();
///
/// keyboard.set_initial_text("Write here what you like!");
/// keyboard.set_initial_text(Some("Write here what you like!"));
/// #
/// # }
#[doc(alias = "swkbdSetInitialText")]
pub fn set_initial_text(&mut self, text: &str) {
pub fn set_initial_text(&mut self, text: Option<&str>) {
if let Some(text) = text {
let initial_text = CString::new(text).unwrap();
unsafe {
self.initial_text = Some(CString::new(text).unwrap());
ctru_sys::swkbdSetInitialText(self.state.as_mut(), initial_text.as_ptr());
}
ctru_sys::swkbdSetInitialText(
self.state.as_mut(),
self.initial_text.as_ref().unwrap().as_ptr(),
);
self.initial_text = Some(initial_text);
} else {
unsafe { ctru_sys::swkbdSetInitialText(self.state.as_mut(), std::ptr::null()) };
self.initial_text = None;
}
}

Loading…
Cancel
Save