Unnamed repository; edit this file 'description' to name the repository.
Make buffer picker default to last file (#14176)
ishanray 6 months ago
parent 4b40b45 · commit 535e6ee
-rw-r--r--helix-term/src/commands.rs2
-rw-r--r--helix-term/src/ui/picker.rs5
2 files changed, 7 insertions, 0 deletions
diff --git a/helix-term/src/commands.rs b/helix-term/src/commands.rs
index 0d8c2550..18f24a63 100644
--- a/helix-term/src/commands.rs
+++ b/helix-term/src/commands.rs
@@ -3199,9 +3199,11 @@ fn buffer_picker(cx: &mut Context) {
.into()
}),
];
+ let initial_cursor = if items.len() <= 1 { 0 } else { 1 };
let picker = Picker::new(columns, 2, items, (), |cx, meta, action| {
cx.editor.switch(meta.id, action);
})
+ .with_initial_cursor(initial_cursor)
.with_preview(|editor, meta| {
let doc = &editor.documents.get(&meta.id)?;
let lines = doc.selections().values().next().map(|selection| {
diff --git a/helix-term/src/ui/picker.rs b/helix-term/src/ui/picker.rs
index a6a0e17c..74b7873e 100644
--- a/helix-term/src/ui/picker.rs
+++ b/helix-term/src/ui/picker.rs
@@ -426,6 +426,11 @@ impl<T: 'static + Send + Sync, D: 'static + Send + Sync> Picker<T, D> {
self
}
+ pub fn with_initial_cursor(mut self, cursor: u32) -> Self {
+ self.cursor = cursor;
+ self
+ }
+
pub fn with_dynamic_query(
mut self,
callback: DynQueryCallback<T, D>,