diff options
author | Sebastian Thiel <sebastian.thiel@icloud.com> | 2024-01-21 17:25:07 +0100 |
---|---|---|
committer | Sebastian Thiel <sebastian.thiel@icloud.com> | 2024-01-21 17:25:07 +0100 |
commit | f70d1a8e6ace812a7949cd7d0299507b71306d48 (patch) | |
tree | cee9e52898f075bc7857b35a981843dfca0c624f /src/interactive/app/terminal.rs | |
parent | 322eeb1aa07dacdc82e147bae64f8bfd4d758e1d (diff) | |
parent | 9d976d0d76fcf45d1e0672bc5c1533b000a46ebf (diff) |
fix: Explicit refreshes with 'r and 'R' now work with multiple root paths as will.
This can happen in cases of `dua i root-a root-b` for instance.
Diffstat (limited to 'src/interactive/app/terminal.rs')
-rw-r--r-- | src/interactive/app/terminal.rs | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/interactive/app/terminal.rs b/src/interactive/app/terminal.rs index f29834f..2a8deb5 100644 --- a/src/interactive/app/terminal.rs +++ b/src/interactive/app/terminal.rs @@ -28,6 +28,7 @@ impl TerminalApp { terminal: &mut Terminal<B>, walk_options: WalkOptions, byte_format: ByteFormat, + input: Vec<PathBuf>, ) -> Result<TerminalApp> where B: Backend, @@ -38,7 +39,7 @@ impl TerminalApp { let display = DisplayOptions::new(byte_format); let window = MainWindow::default(); - let mut state = AppState::new(walk_options); + let mut state = AppState::new(walk_options, input); let traversal = Traversal::new(); let stats = TraversalStats::default(); @@ -61,8 +62,8 @@ impl TerminalApp { Ok(app) } - pub fn traverse(&mut self, input: Vec<PathBuf>) -> Result<()> { - self.state.traverse(&self.traversal, input)?; + pub fn traverse(&mut self) -> Result<()> { + self.state.traverse(&self.traversal)?; Ok(()) } @@ -100,15 +101,13 @@ mod tests { B: Backend, { while self.state.scan.is_some() { - if let Some(res) = self.state.process_event( + self.state.process_event( &mut self.window, &mut self.traversal, &mut self.display, terminal, &events, - )? { - return Ok(res); - } + )?; } Ok(WalkResult { num_errors: self.stats.io_errors, |