diff options
| -rw-r--r-- | src/gui/question.rs | 11 | ||||
| -rw-r--r-- | src/model/difficulty.rs | 2 | 
2 files changed, 8 insertions, 5 deletions
| diff --git a/src/gui/question.rs b/src/gui/question.rs index 1c44272..c07b5f4 100644 --- a/src/gui/question.rs +++ b/src/gui/question.rs @@ -182,14 +182,17 @@ pub fn ask<B: Backend>(terminal: &mut Terminal<B>, title: &str, card: &Card) ->                      difficulty: selected,                  } => match key.code {                      KeyCode::Left => { -                        for d in relative_element(&card.state.difficulties(), &selected, -1).iter() +                        if let Some(difficulty) = +                            relative_element(&card.state.difficulties(), &selected, -1)                          { -                            state.answer = Answer::Difficulty { difficulty: *d } +                            state.answer = Answer::Difficulty { difficulty }                          }                      }                      KeyCode::Right => { -                        for d in relative_element(&card.state.difficulties(), &selected, 1).iter() { -                            state.answer = Answer::Difficulty { difficulty: *d } +                        if let Some(difficulty) = +                            relative_element(&card.state.difficulties(), &selected, 1) +                        { +                            state.answer = Answer::Difficulty { difficulty }                          }                      }                      KeyCode::Enter => { diff --git a/src/model/difficulty.rs b/src/model/difficulty.rs index ea5a9ce..727ce4b 100644 --- a/src/model/difficulty.rs +++ b/src/model/difficulty.rs @@ -1,4 +1,4 @@ -#[derive(Debug, Clone, Copy, PartialEq)] +#[derive(Debug, Clone, Copy, PartialEq, Eq)]  pub enum Difficulty {      Again,      Hard, | 
