feat: enter support open file

This commit is contained in:
fzdwx 2023-07-22 16:18:28 +08:00
parent b6ea235b5e
commit 438406f48d
3 changed files with 19 additions and 1 deletions

View file

@ -22,6 +22,7 @@ keymap = [
{ on = [ "<Down>" ], exec = "arrow 1" },
{ on = [ "<Left>" ], exec = "leave" },
{ on = [ "<Right>" ], exec = "enter" },
{ on = [ "<C-Right>" ], exec = "enter --select" },
# Selection
{ on = [ "<Space>" ], exec = "select --state=none" },

View file

@ -262,6 +262,18 @@ impl Tab {
};
true
}
pub fn current_is_file(&self) -> bool{
let hovered = if let Some(ref h) = self.current.hovered {
h.clone()
} else {
return false;
};
if hovered.meta.is_dir() {
return false;
}
true
}
}
impl Tab {

View file

@ -62,7 +62,12 @@ impl Executor {
cx.manager.active_mut().arrow(step)
}
"leave" => cx.manager.active_mut().leave(),
"enter" => cx.manager.active_mut().enter(),
"enter" =>{
if cx.manager.active().current_is_file() {
return cx.manager.open(exec.named.contains_key("select"))
}
cx.manager.active_mut().enter()
},
"back" => cx.manager.active_mut().back(),
"forward" => cx.manager.active_mut().forward(),