From eddc795eeebb5f536549b229c67f72ac263a2c3a Mon Sep 17 00:00:00 2001 From: Bob Qi Date: Sat, 9 Jul 2022 20:53:01 +0800 Subject: [PATCH 1/2] support toggling pickers' preview panel --- helix-term/src/ui/picker.rs | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/helix-term/src/ui/picker.rs b/helix-term/src/ui/picker.rs index 375723e560ae..9707c81ee2b2 100644 --- a/helix-term/src/ui/picker.rs +++ b/helix-term/src/ui/picker.rs @@ -173,7 +173,7 @@ impl Component for FilePicker { // | | | | // +---------+ +---------+ - let render_preview = area.width > MIN_AREA_WIDTH_FOR_PREVIEW; + let render_preview = self.picker.show_preview && area.width > MIN_AREA_WIDTH_FOR_PREVIEW; // -- Render the frame: // clear area let background = cx.editor.theme.get("ui.background"); @@ -300,6 +300,8 @@ pub struct Picker { previous_pattern: String, /// Whether to truncate the start (default true) pub truncate_start: bool, + /// Whether to show the preview panel (default true) + show_preview: bool, callback_fn: Box, } @@ -327,6 +329,7 @@ impl Picker { prompt, previous_pattern: String::new(), truncate_start: true, + show_preview: true, callback_fn: Box::new(callback_fn), completion_height: 0, }; @@ -470,6 +473,10 @@ impl Picker { self.filters.sort_unstable(); // used for binary search later self.prompt.clear(cx); } + + pub fn toggle_preview(&mut self) { + self.show_preview = !self.show_preview; + } } // process: @@ -538,6 +545,9 @@ impl Component for Picker { ctrl!(' ') => { self.save_filter(cx); } + ctrl!('t') => { + self.toggle_preview(); + } _ => { if let EventResult::Consumed(_) = self.prompt.handle_event(event, cx) { // TODO: recalculate only if pattern changed From ea8da71a37ad1f52c7e45de9183cfb49cb8585d7 Mon Sep 17 00:00:00 2001 From: Bob Qi Date: Sun, 10 Jul 2022 07:45:11 +0800 Subject: [PATCH 2/2] add doc for toggling preview --- book/src/keymap.md | 1 + 1 file changed, 1 insertion(+) diff --git a/book/src/keymap.md b/book/src/keymap.md index 5daeec3fa3b5..b4173d15613c 100644 --- a/book/src/keymap.md +++ b/book/src/keymap.md @@ -352,6 +352,7 @@ Keys to use within picker. Remapping currently not supported. | `Enter` | Open selected | | `Ctrl-s` | Open horizontally | | `Ctrl-v` | Open vertically | +| `Ctrl-t` | Toggle preview | | `Escape`, `Ctrl-c` | Close picker | # Prompt