diff options
author | qkzk <qu3nt1n@gmail.com> | 2023-12-23 16:28:46 +0100 |
---|---|---|
committer | qkzk <qu3nt1n@gmail.com> | 2023-12-23 16:28:46 +0100 |
commit | 3589b77a067fdb489c88ad338703ce0674383948 (patch) | |
tree | c4ed136b970a01b729fb6c4e0ba5f19028497033 | |
parent | f3e1f7020fabcc4e956432d907072f919c20410a (diff) |
menus: uniform instance creation
-rw-r--r-- | src/modes/edit/marks.rs | 5 | ||||
-rw-r--r-- | src/modes/edit/menu.rs | 25 |
2 files changed, 15 insertions, 15 deletions
diff --git a/src/modes/edit/marks.rs b/src/modes/edit/marks.rs index 62c30b2..e2872e4 100644 --- a/src/modes/edit/marks.rs +++ b/src/modes/edit/marks.rs @@ -5,7 +5,6 @@ use std::path::{Path, PathBuf}; use anyhow::{anyhow, Context, Result}; use crate::common::read_lines; -use crate::common::MARKS_FILEPATH; use crate::impl_content; use crate::impl_selectable; use crate::log_info; @@ -39,8 +38,8 @@ impl Marks { /// If an invalid marks is read, only the valid ones are kept /// and the file is saved again. #[must_use] - pub fn read_from_config_file() -> Self { - let path = PathBuf::from(shellexpand::tilde(&MARKS_FILEPATH).to_string()); + pub fn new(config_path: &str) -> Self { + let path = PathBuf::from(shellexpand::tilde(config_path).to_string()); Self::read_from_file(path) } diff --git a/src/modes/edit/menu.rs b/src/modes/edit/menu.rs index 1a7fa6d..db3fea2 100644 --- a/src/modes/edit/menu.rs +++ b/src/modes/edit/menu.rs @@ -4,6 +4,7 @@ use anyhow::Result; use crate::app::Tab; use crate::common::is_program_in_path; use crate::common::CLI_PATH; +use crate::common::MARKS_FILEPATH; use crate::common::SSHFS_EXECUTABLE; use crate::common::TUIS_PATH; use crate::io::drop_sudo_privileges; @@ -77,24 +78,24 @@ pub struct Menu { impl Menu { pub fn new(start_dir: &std::path::Path, mount_points: &[&std::path::Path]) -> Result<Self> { Ok(Self { - window: ContentWindow::new(0, 80), - sudo_command: None, + bulk: Bulk::default(), + cli_applications: CliApplications::new(CLI_PATH).update_desc_size(), + completion: Completion::default(), compression: Compresser::default(), context: ContextMenu::default(), - cli_applications: CliApplications::new(CLI_PATH).update_desc_size(), - tui_applications: TuiApplications::new(TUIS_PATH), - removable_devices: RemovableDevices::default(), - password_holder: PasswordHolder::default(), - bulk: Bulk::default(), - iso_device: None, encrypted_devices: CryptoDeviceOpener::default(), - trash: Trash::new()?, - marks: Marks::read_from_config_file(), flagged: Flagged::default(), + history: History::default(), input: Input::default(), - completion: Completion::default(), + iso_device: None, + marks: Marks::new(MARKS_FILEPATH), + password_holder: PasswordHolder::default(), + removable_devices: RemovableDevices::default(), shortcut: Shortcut::new(start_dir).with_mount_points(mount_points), - history: History::default(), + sudo_command: None, + trash: Trash::new()?, + tui_applications: TuiApplications::new(TUIS_PATH), + window: ContentWindow::new(0, 80), }) } |