diff --git a/yazi-core/src/tab/folder.rs b/yazi-core/src/tab/folder.rs index 9c87edf3..ecadc240 100644 --- a/yazi-core/src/tab/folder.rs +++ b/yazi-core/src/tab/folder.rs @@ -6,7 +6,6 @@ use yazi_fs::{Cha, File, Files, FilesOp, FolderStage, Step}; use yazi_proxy::ManagerProxy; use yazi_shared::{Id, url::{Url, Urn}}; -#[derive(Default)] pub struct Folder { pub url: Url, pub cha: Cha, @@ -20,6 +19,21 @@ pub struct Folder { pub tracing: bool, } +impl Default for Folder { + fn default() -> Self { + Self { + url: Default::default(), + cha: Default::default(), + files: Files::new(MANAGER.show_hidden), + stage: Default::default(), + offset: Default::default(), + cursor: Default::default(), + page: Default::default(), + tracing: Default::default(), + } + } +} + impl From<&Url> for Folder { fn from(url: &Url) -> Self { Self { url: url.clone(), ..Default::default() } } } diff --git a/yazi-fs/src/files.rs b/yazi-fs/src/files.rs index a9b7ae9c..c2bf8e23 100644 --- a/yazi-fs/src/files.rs +++ b/yazi-fs/src/files.rs @@ -28,6 +28,8 @@ impl Deref for Files { } impl Files { + pub fn new(show_hidden: bool) -> Self { Self { show_hidden, ..Default::default() } } + pub async fn from_dir(dir: &Url) -> std::io::Result> { let mut it = fs::read_dir(dir).await?; let (tx, rx) = mpsc::unbounded_channel(); diff --git a/yazi-plugin/preset/plugins/zoxide.lua b/yazi-plugin/preset/plugins/zoxide.lua index 68f91827..9303c1ba 100644 --- a/yazi-plugin/preset/plugins/zoxide.lua +++ b/yazi-plugin/preset/plugins/zoxide.lua @@ -68,7 +68,6 @@ local function setup(_, opts) function() ya.manager_emit("shell", { orphan = true, - confirm = true, "zoxide add " .. ya.quote(tostring(cx.active.current.cwd)), }) end