diff options
author | Jiayi Zhao <jeff.no.zhao@gmail.com> | 2020-02-17 21:36:45 -0500 |
---|---|---|
committer | Jiayi Zhao <jeff.no.zhao@gmail.com> | 2020-02-17 21:36:45 -0500 |
commit | e7bcdd1fc7685e1f132adc267e56cdae2925d632 (patch) | |
tree | 2f1a5352d67a788dfc90a9c966bd20379aa9d293 | |
parent | 686033bfcf6d34bfb180e0b0f64ae4493340bf38 (diff) |
reload_dir now reloads parent and child as well
-rw-r--r-- | src/commands/reload_dir.rs | 9 | ||||
-rw-r--r-- | src/tab.rs | 10 |
2 files changed, 19 insertions, 0 deletions
diff --git a/src/commands/reload_dir.rs b/src/commands/reload_dir.rs index ac8d72d..eef3a3f 100644 --- a/src/commands/reload_dir.rs +++ b/src/commands/reload_dir.rs @@ -17,10 +17,19 @@ impl ReloadDirList { pub fn reload(index: usize, context: &mut JoshutoContext) -> std::io::Result<()> { let curr_tab = &mut context.tabs[index]; let sort_option = &context.config_t.sort_option; + match curr_tab.curr_list_mut() { Some(curr_list) => curr_list.reload_contents(sort_option)?, None => {}, } + match curr_tab.parent_list_mut() { + Some(curr_list) => curr_list.reload_contents(sort_option)?, + None => {}, + } + match curr_tab.child_list_mut() { + Some(curr_list) => curr_list.reload_contents(sort_option)?, + None => {}, + } Ok(()) } @@ -45,4 +45,14 @@ impl JoshutoTab { let parent = self.curr_path.parent()?; self.history.get_mut(parent) } + + pub fn child_list_mut(&mut self) -> Option<&mut JoshutoDirList> { + let path = { + let curr_list = self.curr_list_ref()?; + let index = curr_list.index?; + curr_list.contents[index].file_path().clone() + }; + + self.history.get_mut(path.as_path()) + } } |