mirror of
https://github.com/sxyazi/yazi.git
synced 2026-07-25 08:41:05 +00:00
Add hovered option to remove command
This commit is contained in:
parent
626053da25
commit
6ba7430f67
1 changed files with 7 additions and 1 deletions
|
|
@ -7,6 +7,7 @@ use crate::{manager::Manager, tasks::Tasks};
|
||||||
pub struct Opt {
|
pub struct Opt {
|
||||||
force: bool,
|
force: bool,
|
||||||
permanently: bool,
|
permanently: bool,
|
||||||
|
hovered: bool,
|
||||||
targets: Vec<Url>,
|
targets: Vec<Url>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -15,6 +16,7 @@ impl From<Cmd> for Opt {
|
||||||
Self {
|
Self {
|
||||||
force: c.bool("force"),
|
force: c.bool("force"),
|
||||||
permanently: c.bool("permanently"),
|
permanently: c.bool("permanently"),
|
||||||
|
hovered: c.bool("hovered"),
|
||||||
targets: c.take_any("targets").unwrap_or_default(),
|
targets: c.take_any("targets").unwrap_or_default(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -27,7 +29,11 @@ impl Manager {
|
||||||
}
|
}
|
||||||
|
|
||||||
let mut opt = opt.into() as Opt;
|
let mut opt = opt.into() as Opt;
|
||||||
opt.targets = self.selected_or_hovered(false).cloned().collect();
|
opt.targets = if opt.hovered {
|
||||||
|
self.hovered().map(|h| vec![h.clone().url]).unwrap_or_default()
|
||||||
|
} else {
|
||||||
|
self.selected_or_hovered(false).cloned().collect()
|
||||||
|
};
|
||||||
|
|
||||||
if opt.force {
|
if opt.force {
|
||||||
return self.remove_do(opt, tasks);
|
return self.remove_do(opt, tasks);
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue