show ... while loading

This commit is contained in:
rabite 2019-02-22 01:21:23 +01:00
parent 3b38143f9b
commit 6c305d3d61
3 changed files with 10 additions and 12 deletions

View File

@ -144,13 +144,6 @@ impl FileBrowser {
}
pub fn go_back(&mut self) -> HResult<()> {
// if self.left_widget().is_err() {
// return None;
// }
// if self.columns.get_main_widget().is_none() {
// return None;
// }
let fileview = self.main_widget()?;
let path = self.selected_file()?.grand_parent()?;
std::env::set_current_dir(path)?;
self.columns.pop_widget();
@ -185,7 +178,6 @@ impl FileBrowser {
}
pub fn cwd(&self) -> HResult<File> {
//(self.columns.get_main_widget()?.widget()?.content.directory.clone())
let widget = self.columns.get_main_widget()?.widget()?;
let cwd = (*widget.lock()?).as_ref()?.content.directory.clone();
Ok(cwd)

View File

@ -88,14 +88,16 @@ where
if len < 2 {
return Err(HError::NoWidgetError);
}
Ok(self.widgets.widgets.get(len - 2)?)
let widget = self.widgets.widgets.get(len - 2)?;
Ok(widget)
}
pub fn get_left_widget_mut(&mut self) -> HResult<&mut T> {
let len = self.widgets.widgets.len();
if len < 2 {
return Err(HError::NoWidgetError);
}
Ok(self.widgets.widgets.get_mut(len - 2)?)
let widget = self.widgets.widgets.get_mut(len - 2)?;
Ok(widget)
}
pub fn get_main_widget(&self) -> HResult<&T> {
let widget = self.widgets.widgets.last()?;

View File

@ -98,7 +98,6 @@ impl<T: Send + 'static> WillBe<T> where {
-> HResult<()> {
if self.check().is_ok() {
fun(self.thing.clone());
//*self.on_ready.try_lock()? = None;
} else {
*self.on_ready.try_lock()? = Some(fun);
}
@ -181,7 +180,12 @@ impl<T: Widget + Send + 'static> Widget for WillBeWidget<T> {
widget.refresh();
}
fn get_drawlist(&self) -> String {
if self.willbe.check().is_err() { return "".to_string() }
if self.willbe.check().is_err() {
let clear = self.get_clearlist();
let (xpos, ypos) = self.get_coordinates().u16position();
let pos = crate::term::goto_xy(xpos, ypos);
return clear + &pos + "..."
}
let widget = self.widget().unwrap();
let widget = widget.try_lock().unwrap();
let widget = widget.as_ref().unwrap();