summaryrefslogtreecommitdiffstats
path: root/src/commands/escape.rs
diff options
context:
space:
mode:
authorNoah Too <krivahtoo@gmail.com>2022-10-17 19:39:53 +0300
committerGitHub <noreply@github.com>2022-10-17 12:39:53 -0400
commitbe452d4c9abf7891111138000fe7683f169d69a5 (patch)
tree75d9967795d601f7dc7eacd5e3dede155bd36d1f /src/commands/escape.rs
parent02c7e941566a2d828e77dd33a6dda74c8a0c42ef (diff)
add `filter` command (#205)
* add `filter` command * cargo fmt
Diffstat (limited to 'src/commands/escape.rs')
-rw-r--r--src/commands/escape.rs9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/commands/escape.rs b/src/commands/escape.rs
index 1a507df..26b3da4 100644
--- a/src/commands/escape.rs
+++ b/src/commands/escape.rs
@@ -1,9 +1,16 @@
use crate::context::AppContext;
use crate::error::JoshutoResult;
+use super::reload;
+
pub fn escape(context: &mut AppContext) -> JoshutoResult {
if let Some(curr_dir_list) = context.tab_context_mut().curr_tab_mut().curr_list_mut() {
- curr_dir_list.visual_mode_cancel();
+ if curr_dir_list.get_visual_mode_anchor_index().is_some() {
+ curr_dir_list.visual_mode_cancel();
+ } else {
+ // reload to clear current filter
+ reload::reload_dirlist(context)?;
+ }
};
Ok(())
}