Skip to content

Commit

Permalink
fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
jewlexx committed Jul 31, 2024
1 parent f45bc84 commit 500415d
Showing 1 changed file with 16 additions and 5 deletions.
21 changes: 16 additions & 5 deletions src/cache/pick.rs
Original file line number Diff line number Diff line change
Expand Up @@ -49,12 +49,17 @@ fn indices_template<'a>(template: &Template, indices: &[usize]) -> Vec<Span<'a>>
spans
}

struct PastFolder {
folder: Folder,
selection: Option<usize>,
}

struct State {
// matching_templates: Vec<(Template, Vec<usize>)>,
search_term: String,
list_state: ListState,
current_folder: Folder,
past_folders: Vec<Folder>,
past_folders: Vec<PastFolder>,
}

pub fn pick_template() -> anyhow::Result<Option<Template>> {
Expand Down Expand Up @@ -101,7 +106,7 @@ pub fn pick_template() -> anyhow::Result<Option<Template>> {
.block(
Block::bordered()
.title("Templates")
.title_bottom("<Ctrl+C> to quit | <Up/Down> to navigate | <Enter> to select | <Left Arrow> to leave the current folder"),
.title_bottom("<Ctrl+C> to quit | <Up/Down> to navigate | <Enter> to select | <Left | Right Arrows> to navigate folders"),
)
.style(Style::default().fg(Color::White))
.highlight_style(Style::default().remove_modifier(Modifier::DIM))
Expand Down Expand Up @@ -194,7 +199,12 @@ fn handle_events(state: &Mutex<State>) -> anyhow::Result<(bool, Option<Template>
folder
};

state.past_folders.push(old_folder);
let selection = state.list_state.selected();

state.past_folders.push(PastFolder {
folder: old_folder,
selection,
});
}
Item::Template(template) => {
if key.code != KeyCode::Right {
Expand All @@ -205,8 +215,9 @@ fn handle_events(state: &Mutex<State>) -> anyhow::Result<(bool, Option<Template>
}
}
KeyCode::Left => {
if let Some(new_folder) = state.past_folders.pop() {
state.current_folder = new_folder;
if let Some(PastFolder { folder, selection }) = state.past_folders.pop() {
state.current_folder = folder;
state.list_state.select(selection);
}
}
KeyCode::Backspace => {
Expand Down

0 comments on commit 500415d

Please sign in to comment.