diff options
| author | Ogulcan Celik <ogulcancelik@gmail.com> | 2026-07-10 04:22:10 +0300 |
|---|---|---|
| committer | Ogulcan Celik <ogulcancelik@gmail.com> | 2026-07-10 04:22:10 +0300 |
| commit | c8850a2e3e284033142db0f8117fa5998c68bd59 (patch) | |
| tree | 487530d94265c096ceeb3ded7c60a94f14a6f7fd /src/app/input/mod.rs | |
| parent | 0de503ccd9a8fedeeb6cbcc1446ab2bc644fdbb6 (diff) | |
feat: add copy mode search and tmux word motions
refs #1230
Diffstat (limited to 'src/app/input/mod.rs')
| -rw-r--r-- | src/app/input/mod.rs | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/app/input/mod.rs b/src/app/input/mod.rs index 450afab8..e4da8bc9 100644 --- a/src/app/input/mod.rs +++ b/src/app/input/mod.rs @@ -155,6 +155,20 @@ impl App { insert_navigator_search_text(&mut self.state, &self.terminal_runtimes, text); true } + Mode::Copy => { + let Some(prompt) = self + .state + .copy_mode + .as_mut() + .and_then(|copy_mode| copy_mode.search.prompt.as_mut()) + else { + return false; + }; + prompt + .query + .extend(text.chars().filter(|ch| !ch.is_control())); + true + } _ => false, } } @@ -513,6 +527,10 @@ pub(crate) fn modal_paste_target_active(state: &AppState) -> bool { .as_ref() .is_some_and(|open| open.search_focused), Mode::Navigator => state.navigator.search_focused, + Mode::Copy => state + .copy_mode + .as_ref() + .is_some_and(|copy_mode| copy_mode.search.prompt.is_some()), _ => false, } } |
