From 3fae3f5acc143a8bbfa4fc808fcabe9fd4a3cc16 Mon Sep 17 00:00:00 2001 From: sxyazi Date: Fri, 27 Dec 2024 19:19:36 +0800 Subject: [PATCH] fix: don't check if has a hovered file in advance, only do so when `--hovered` is explicitly specified --- yazi-core/src/manager/commands/remove.rs | 11 +++++------ yazi-core/src/manager/commands/rename.rs | 7 +++---- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/yazi-core/src/manager/commands/remove.rs b/yazi-core/src/manager/commands/remove.rs index 8a391710..fcbe4073 100644 --- a/yazi-core/src/manager/commands/remove.rs +++ b/yazi-core/src/manager/commands/remove.rs @@ -28,14 +28,13 @@ impl Manager { if !self.active_mut().try_escape_visual() { return; } - let Some(hovered) = self.hovered().map(|h| &h.url) else { - return; - }; - opt.targets = if opt.hovered { - vec![hovered.clone()] - } else { + opt.targets = if !opt.hovered { self.selected_or_hovered(true).cloned().collect() + } else if let Some(h) = self.hovered() { + vec![h.url.clone()] + } else { + return; }; if opt.force { diff --git a/yazi-core/src/manager/commands/rename.rs b/yazi-core/src/manager/commands/rename.rs index c43c9153..c8da0157 100644 --- a/yazi-core/src/manager/commands/rename.rs +++ b/yazi-core/src/manager/commands/rename.rs @@ -33,15 +33,14 @@ impl Manager { pub fn rename(&mut self, opt: Opt) { if !self.active_mut().try_escape_visual() { return; + } else if !opt.hovered && !self.active().selected.is_empty() { + return self.bulk_rename(); } + let Some(hovered) = self.hovered().map(|h| h.url_owned()) else { return; }; - if !opt.hovered && !self.active().selected.is_empty() { - return self.bulk_rename(); - } - let name = Self::empty_url_part(&hovered, &opt.empty); let cursor = match opt.cursor.as_ref() { "start" => Some(0),