Skip to content

Commit

Permalink
don't try read arg input outside of a pending menu
Browse files Browse the repository at this point in the history
  • Loading branch information
altsem committed Mar 27, 2024
1 parent a231ea1 commit d7f130c
Show file tree
Hide file tree
Showing 3 changed files with 58 additions and 1 deletion.
2 changes: 1 addition & 1 deletion src/state.rs
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ impl State {
keybinds::op_of_key_event(pending, key)
};

self.next_input_is_arg = key.code == KeyCode::Char('-');
self.next_input_is_arg = pending.is_some() && key.code == KeyCode::Char('-');

if let Some(op) = maybe_op {
let result = handle_op(self, op, term);
Expand Down
10 changes: 10 additions & 0 deletions src/tests/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -347,6 +347,16 @@ mod push {
.unwrap();
insta::assert_snapshot!(ctx.redact_buffer());
}

#[test]
fn open_push_menu_after_dash_input() {
let mut ctx = TestContext::setup_clone(80, 10);
commit(ctx.dir.path(), "new-file", "");

let mut state = ctx.init_state();
state.update(&mut ctx.term, &[key('-'), key('P')]).unwrap();
insta::assert_snapshot!(ctx.redact_buffer());
}
}

#[test]
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
---
source: src/tests/mod.rs
expression: ctx.redact_buffer()
---
Buffer {
area: Rect { x: 0, y: 0, width: 80, height: 10 },
content: [
"▌On branch main ",
"▌Your branch is ahead of 'origin/main' by 1 commit. ",
" ",
" Recent commits ",
" _______ main add new-file ",
" _______ origin/main add initial-file ",
"────────────────────────────────────────────────────────────────────────────────",
"Push Arguments ",
"p Push -f --force-with-lease (off) ",
"q esc Quit/Close ",
],
styles: [
x: 0, y: 0, fg: Blue, bg: Reset, underline: Reset, modifier: BOLD,
x: 1, y: 0, fg: Yellow, bg: Reset, underline: Reset, modifier: BOLD,
x: 0, y: 1, fg: Blue, bg: Reset, underline: Reset, modifier: DIM,
x: 1, y: 1, fg: Reset, bg: Reset, underline: Reset, modifier: NONE,
x: 1, y: 3, fg: Yellow, bg: Reset, underline: Reset, modifier: NONE,
x: 0, y: 4, fg: Reset, bg: Reset, underline: Reset, modifier: NONE,
x: 1, y: 4, fg: Yellow, bg: Reset, underline: Reset, modifier: NONE,
x: 8, y: 4, fg: Reset, bg: Reset, underline: Reset, modifier: NONE,
x: 9, y: 4, fg: Green, bg: Reset, underline: Reset, modifier: NONE,
x: 13, y: 4, fg: Reset, bg: Reset, underline: Reset, modifier: NONE,
x: 1, y: 5, fg: Yellow, bg: Reset, underline: Reset, modifier: NONE,
x: 8, y: 5, fg: Reset, bg: Reset, underline: Reset, modifier: NONE,
x: 9, y: 5, fg: Red, bg: Reset, underline: Reset, modifier: NONE,
x: 20, y: 5, fg: Reset, bg: Reset, underline: Reset, modifier: NONE,
x: 0, y: 6, fg: Reset, bg: Reset, underline: Reset, modifier: DIM,
x: 0, y: 7, fg: Blue, bg: Reset, underline: Reset, modifier: BOLD,
x: 28, y: 7, fg: Reset, bg: Reset, underline: Reset, modifier: NONE,
x: 42, y: 7, fg: Blue, bg: Reset, underline: Reset, modifier: BOLD,
x: 72, y: 7, fg: Reset, bg: Reset, underline: Reset, modifier: NONE,
x: 0, y: 8, fg: Magenta, bg: Reset, underline: Reset, modifier: NONE,
x: 1, y: 8, fg: Reset, bg: Reset, underline: Reset, modifier: NONE,
x: 42, y: 8, fg: Magenta, bg: Reset, underline: Reset, modifier: NONE,
x: 44, y: 8, fg: Reset, bg: Reset, underline: Reset, modifier: DIM,
x: 69, y: 8, fg: Reset, bg: Reset, underline: Reset, modifier: NONE,
x: 0, y: 9, fg: Magenta, bg: Reset, underline: Reset, modifier: NONE,
x: 5, y: 9, fg: Reset, bg: Reset, underline: Reset, modifier: NONE,
]
}

0 comments on commit d7f130c

Please sign in to comment.