summaryrefslogtreecommitdiffstats
path: root/apps/recorder
diff options
context:
space:
mode:
Diffstat (limited to 'apps/recorder')
-rw-r--r--apps/recorder/keyboard.c18
-rw-r--r--apps/recorder/radio.c6
-rw-r--r--apps/recorder/recording.c28
3 files changed, 35 insertions, 17 deletions
diff --git a/apps/recorder/keyboard.c b/apps/recorder/keyboard.c
index 32a1d8b735..0331a5711d 100644
--- a/apps/recorder/keyboard.c
+++ b/apps/recorder/keyboard.c
@@ -28,6 +28,7 @@
#include "status.h"
#include "talk.h"
#include "settings.h"
+#include "misc.h"
#define KEYBOARD_LINES 4
#define KEYBOARD_PAGES 3
@@ -89,6 +90,7 @@ int kbd_input(char* text, int buflen)
char outline[256];
char c = 0;
struct font* font = font_get(FONT_SYSFIXED);
+ int button;
lcd_setfont(FONT_SYSFIXED);
font_w = font->maxwidth;
@@ -193,8 +195,9 @@ int kbd_input(char* text, int buflen)
/* The default action is to redraw */
redraw = true;
-
- switch ( button_get_w_tmo(HZ/2) ) {
+
+ button = button_get_w_tmo(HZ/2);
+ switch ( button ) {
case BUTTON_OFF:
/* abort */
@@ -309,15 +312,16 @@ int kbd_input(char* text, int buflen)
kbd_spellchar(text[editpos]);
break;
- case SYS_USB_CONNECTED:
- usb_screen();
- lcd_setfont(FONT_SYSFIXED);
- break;
-
case BUTTON_NONE:
status_draw(false);
redraw = false;
break;
+
+ default:
+ if(default_event_handler(button) == SYS_USB_CONNECTED)
+ lcd_setfont(FONT_SYSFIXED);
+ break;
+
}
}
lcd_setfont(FONT_UI);
diff --git a/apps/recorder/radio.c b/apps/recorder/radio.c
index 36847236e1..e26ac5bdc8 100644
--- a/apps/recorder/radio.c
+++ b/apps/recorder/radio.c
@@ -416,13 +416,17 @@ bool radio_screen(void)
/* Only accept USB connection when not recording */
if(mpeg_status() != MPEG_STATUS_RECORD)
{
- usb_screen();
+ default_event_handler(SYS_USB_CONNECTED);
fmradio_set_status(0);
screen_freeze = true; /* Cosmetic: makes sure the
radio screen doesn't redraw */
done = true;
}
break;
+
+ default:
+ default_event_handler(button);
+ break;
}
peak_meter_peek();
diff --git a/apps/recorder/recording.c b/apps/recorder/recording.c
index a077c957a7..242351a0d6 100644
--- a/apps/recorder/recording.c
+++ b/apps/recorder/recording.c
@@ -437,11 +437,15 @@ bool recording_screen(void)
/* Only accept USB connection when not recording */
if(mpeg_status() != MPEG_STATUS_RECORD)
{
- usb_screen();
+ default_event_handler(SYS_USB_CONNECTED);
done = true;
been_in_usb_mode = true;
}
break;
+
+ default:
+ default_event_handler(button);
+ break;
}
peak_meter_peek();
@@ -622,6 +626,7 @@ bool f2_rec_screen(void)
bool used = false;
int w, h;
char buf[32];
+ int button;
lcd_setfont(FONT_SYSFIXED);
lcd_getstringsize("A",&w,&h);
@@ -671,7 +676,8 @@ bool f2_rec_screen(void)
lcd_update();
- switch (button_get(true)) {
+ button = button_get(true);
+ switch (button) {
case BUTTON_LEFT:
case BUTTON_F2 | BUTTON_LEFT:
global_settings.rec_quality++;
@@ -706,9 +712,10 @@ bool f2_rec_screen(void)
used = true;
break;
- case SYS_USB_CONNECTED:
- usb_screen();
- return true;
+ default:
+ if(default_event_handler(button) == SYS_USB_CONNECTED)
+ return true;
+ break;
}
}
@@ -735,6 +742,7 @@ bool f3_rec_screen(void)
bool exit = false;
bool used = false;
int w, h;
+ int button;
char *src_str[] =
{
str(LANG_RECORDING_SRC_MIC),
@@ -760,7 +768,8 @@ bool f3_rec_screen(void)
lcd_update();
- switch (button_get(true)) {
+ button = button_get(true);
+ switch (button) {
case BUTTON_LEFT:
case BUTTON_F3 | BUTTON_LEFT:
global_settings.rec_source++;
@@ -779,9 +788,10 @@ bool f3_rec_screen(void)
used = true;
break;
- case SYS_USB_CONNECTED:
- usb_screen();
- return true;
+ default:
+ if(default_event_handler(button) == SYS_USB_CONNECTED)
+ return true;
+ break;
}
}