mirror of
https://github.com/sxyazi/yazi.git
synced 2026-07-25 08:41:05 +00:00
feat: support right-click to open files (#1232)
This commit is contained in:
parent
9961251248
commit
1a1da216ca
3 changed files with 12 additions and 4 deletions
|
|
@ -45,7 +45,7 @@ impl CommandPub {
|
||||||
pub(super) fn receiver(&self) -> Result<u64> {
|
pub(super) fn receiver(&self) -> Result<u64> {
|
||||||
if let Some(receiver) = self.receiver {
|
if let Some(receiver) = self.receiver {
|
||||||
Ok(receiver)
|
Ok(receiver)
|
||||||
} else if let Ok(s) = std::env::var("YAZI_ID") {
|
} else if let Some(s) = std::env::var("YAZI_PID").ok().filter(|s| !s.is_empty()) {
|
||||||
Ok(s.parse()?)
|
Ok(s.parse()?)
|
||||||
} else {
|
} else {
|
||||||
bail!("No receiver ID provided, also no YAZI_ID environment variable found.")
|
bail!("No receiver ID provided, also no YAZI_ID environment variable found.")
|
||||||
|
|
|
||||||
|
|
@ -42,6 +42,9 @@ pub fn init() {
|
||||||
USERS_CACHE.with(Default::default);
|
USERS_CACHE.with(Default::default);
|
||||||
|
|
||||||
// Env
|
// Env
|
||||||
|
if let Some(s) = std::env::var("YAZI_ID").ok().filter(|s| !s.is_empty()) {
|
||||||
|
std::env::set_var("YAZI_PID", s);
|
||||||
|
}
|
||||||
std::env::set_var("YAZI_ID", ID.to_string());
|
std::env::set_var("YAZI_ID", ID.to_string());
|
||||||
std::env::set_var(
|
std::env::set_var(
|
||||||
"YAZI_LEVEL",
|
"YAZI_LEVEL",
|
||||||
|
|
|
||||||
|
|
@ -44,13 +44,18 @@ function Current:render(area)
|
||||||
end
|
end
|
||||||
|
|
||||||
function Current:click(event, up)
|
function Current:click(event, up)
|
||||||
if up or not event.is_left then
|
if up or event.is_middle then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
local f = Folder:by_kind(Folder.CURRENT)
|
local f = Folder:by_kind(Folder.CURRENT)
|
||||||
if event.y <= #f.window and f.hovered then
|
if event.y > #f.window or not f.hovered then
|
||||||
ya.manager_emit("arrow", { event.y + f.offset - f.hovered.idx })
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
ya.manager_emit("arrow", { event.y + f.offset - f.hovered.idx })
|
||||||
|
if event.is_right then
|
||||||
|
ya.manager_emit("open", { hovered = true })
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue