diff options
author | Sebastian Thiel <sebastian.thiel@icloud.com> | 2024-01-10 09:00:02 +0100 |
---|---|---|
committer | Piotr Wach <pwach@bloomberg.net> | 2024-01-10 20:48:54 +0000 |
commit | 0ad90ba23e59b98ccca198ce075e582c93d13c5c (patch) | |
tree | fa659bf4a6df5259ccb39fea2773d0ab33d7dd81 /src/interactive/app/state.rs | |
parent | 85005ce364b08066a76ab2a8743ce18b4662fa3c (diff) |
make WalkOptions available in State so it can re-use it for additional walks.
Diffstat (limited to 'src/interactive/app/state.rs')
-rw-r--r-- | src/interactive/app/state.rs | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/interactive/app/state.rs b/src/interactive/app/state.rs index b303531..5dcdbff 100644 --- a/src/interactive/app/state.rs +++ b/src/interactive/app/state.rs @@ -1,6 +1,7 @@ use std::collections::HashSet; use dua::traverse::BackgroundTraversal; +use dua::WalkOptions; use crate::interactive::widgets::Column; @@ -22,7 +23,6 @@ pub struct Cursor { pub y: u16, } -#[derive(Default)] pub struct AppState { pub navigation: Navigation, pub glob_navigation: Option<Navigation>, @@ -33,4 +33,22 @@ pub struct AppState { pub focussed: FocussedPane, pub received_events: bool, pub active_traversal: Option<BackgroundTraversal>, + pub walk_options: WalkOptions, +} + +impl AppState { + pub fn new(walk_options: WalkOptions) -> Self { + AppState { + navigation: Default::default(), + glob_navigation: None, + entries: vec![], + sorting: Default::default(), + show_columns: Default::default(), + message: None, + focussed: Default::default(), + received_events: false, + active_traversal: None, + walk_options, + } + } } |