From 0518c6e382d3c53517e9c351d842c4938d659001 Mon Sep 17 00:00:00 2001 From: Felix Pankratz Date: Sun, 18 Sep 2022 16:21:32 +0200 Subject: [PATCH] add long-press and repeating --- metronome.c | 40 +++++++++++++++++++++++++++++++++++++--- 1 file changed, 37 insertions(+), 3 deletions(-) diff --git a/metronome.c b/metronome.c index eec350e..f6bf5a0 100644 --- a/metronome.c +++ b/metronome.c @@ -142,13 +142,11 @@ int32_t metronome_app() { if(event_status == FuriStatusOk) { // press events if(event.type == EventTypeKey) { - if(event.input.type == InputTypePress) { + if(event.input.type == InputTypeShort) { switch(event.input.key) { case InputKeyUp: - increase_bpm(metronome_state, BPM_STEP_SIZE_COARSE); break; case InputKeyDown: - decrease_bpm(metronome_state, BPM_STEP_SIZE_COARSE); break; case InputKeyRight: increase_bpm(metronome_state, BPM_STEP_SIZE_FINE); @@ -168,6 +166,42 @@ int32_t metronome_app() { processing = false; break; } + } else if (event.input.type == InputTypeLong) { + switch(event.input.key) { + case InputKeyUp: + break; + case InputKeyDown: + break; + case InputKeyRight: + increase_bpm(metronome_state, BPM_STEP_SIZE_COARSE); + break; + case InputKeyLeft: + decrease_bpm(metronome_state, BPM_STEP_SIZE_COARSE); + break; + case InputKeyOk: + break; + case InputKeyBack: + processing = false; + break; + } + } else if (event.input.type == InputTypeRepeat) { + switch(event.input.key) { + case InputKeyUp: + break; + case InputKeyDown: + break; + case InputKeyRight: + increase_bpm(metronome_state, BPM_STEP_SIZE_COARSE); + break; + case InputKeyLeft: + decrease_bpm(metronome_state, BPM_STEP_SIZE_COARSE); + break; + case InputKeyOk: + break; + case InputKeyBack: + processing = false; + break; + } } } } else {