From 690d7418f408a15d30b383d3673439eb12c2394d Mon Sep 17 00:00:00 2001 From: TomZz Date: Fri, 12 Jun 2026 20:25:29 +0800 Subject: [PATCH] feat: Save 'show hidden files' toggle state to settings --- src/config.rs | 10 ++++++++++ src/main.rs | 4 +++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/config.rs b/src/config.rs index 20b0f1d..acf288f 100644 --- a/src/config.rs +++ b/src/config.rs @@ -125,6 +125,8 @@ pub struct ConfigFile { pub body_panels: Option>, #[serde(default)] pub transfers: Vec, + #[serde(default)] + pub show_hidden_files: bool, } fn default_locale() -> String { @@ -331,6 +333,14 @@ impl ConfigStore { self.cache.terminal_font_family = family.to_string(); } + pub fn show_hidden_files(&self) -> bool { + self.cache.show_hidden_files + } + + pub fn set_show_hidden_files(&mut self, val: bool) { + self.cache.show_hidden_files = val; + } + pub fn get(&self, id: &str) -> Option<&Session> { self.cache.sessions.iter().find(|s| s.id == id) } diff --git a/src/main.rs b/src/main.rs index 2d4786e..af3b5fa 100644 --- a/src/main.rs +++ b/src/main.rs @@ -338,7 +338,7 @@ impl Ashell { sftp_creating_folder: false, sftp_new_folder_input, sftp_delete_scroll_handle: gpui::ScrollHandle::new(), - show_hidden_files: false, + show_hidden_files: config.show_hidden_files(), transfers: config.transfers(), show_transfers_dialog: false, system_status: None, @@ -3554,6 +3554,8 @@ impl Ashell { .tab_stop(false) .on_click(cx.listener(|this, checked, _, cx| { this.show_hidden_files = *checked; + this.config.set_show_hidden_files(*checked); + let _ = this.config.save(); cx.notify(); })), )