turbo cd repaired

This commit is contained in:
rabite 2019-04-02 22:56:22 +02:00
parent e99a3d993c
commit 04285257ca
1 changed files with 4 additions and 28 deletions

View File

@ -795,36 +795,12 @@ impl FileBrowser {
} }
pub fn turbo_cd(&mut self) -> HResult<()> { pub fn turbo_cd(&mut self) -> HResult<()> {
let dir = self.minibuffer("cd"); let dir = self.minibuffer("cd")?;
match dir { let path = std::path::PathBuf::from(&dir);
Ok(dir) => { let dir = File::new_from_path(&path.canonicalize()?, None)?;
self.columns.widgets.clear(); self.main_widget_goto(&dir)?;
let cwd = File::new_from_path(&std::path::PathBuf::from(&dir), None)?;
self.cwd = cwd;
let dir = std::path::PathBuf::from(&dir);
let left_dir = std::path::PathBuf::from(&dir);
let mcore = self.main_widget()?.get_core()?.clone();
let lcore = self.left_widget()?.get_core()?.clone();;
let middle = AsyncWidget::new(&self.core, Box::new(move |_| {
let files = Files::new_from_path(&dir.clone())?;
let listview = ListView::new(&mcore, files);
Ok(listview)
}));
let middle = FileBrowserWidgets::FileList(middle);
let left = AsyncWidget::new(&self.core, Box::new(move |_| {
let files = Files::new_from_path(&left_dir.parent()?)?;
let listview = ListView::new(&lcore, files);
Ok(listview)
}));
let left = FileBrowserWidgets::FileList(left);
self.columns.push_widget(left);
self.columns.push_widget(middle);
},
Err(_) => {}
}
Ok(()) Ok(())
} }