Button action code for recording screen. Shouldnt make any noticable difference in recording screen button operation except for H300 I-River remote, which should now work as expected, -10 button = LCD off

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10666 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Martin Scarratt 2006-08-20 21:33:40 +00:00
parent 7847dde8cf
commit c8bd9129bf
7 changed files with 122 additions and 155 deletions

View file

@ -53,6 +53,7 @@ enum {
CONTEXT_BOOKMARKSCREEN, /*NOTE: requires the action_setting_* mappings also */ CONTEXT_BOOKMARKSCREEN, /*NOTE: requires the action_setting_* mappings also */
CONTEXT_QUICKSCREEN, /* uses ACTION_QS_ defines below */ CONTEXT_QUICKSCREEN, /* uses ACTION_QS_ defines below */
CONTEXT_PITCHSCREEN, /* uses ACTION_PS_ defines below */ CONTEXT_PITCHSCREEN, /* uses ACTION_PS_ defines below */
CONTEXT_RECSCREEN,
}; };
@ -111,6 +112,11 @@ enum {
ACTION_TREE_WPS, ACTION_TREE_WPS,
/* recording screen */ /* recording screen */
ACTION_REC_LCD,
ACTION_REC_PAUSE,
ACTION_REC_NEWFILE,
ACTION_REC_F2,
ACTION_REC_F3,
/* main menu */ /* main menu */

View file

@ -197,6 +197,17 @@ const struct button_mapping button_context_pitchscreen[] = {
LAST_ITEM_IN_LIST LAST_ITEM_IN_LIST
}; /* button_context_pitchcreen */ }; /* button_context_pitchcreen */
const struct button_mapping button_context_recscreen[] = {
{ ACTION_REC_PAUSE, BUTTON_ON, BUTTON_NONE },
{ ACTION_REC_NEWFILE, BUTTON_REC, BUTTON_NONE },
{ ACTION_SETTINGS_INC, BUTTON_RIGHT, BUTTON_NONE },
{ ACTION_SETTINGS_INC, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
{ ACTION_SETTINGS_DEC, BUTTON_LEFT, BUTTON_NONE },
{ ACTION_SETTINGS_DEC, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE },
LAST_ITEM_IN_LIST
}; /* button_context_recscreen */
/***************************************************************************** /*****************************************************************************
* Remote control mappings * Remote control mappings
*****************************************************************************/ *****************************************************************************/
@ -384,7 +395,7 @@ const struct button_mapping button_context_settingsgraphical_h100remote[] = {
{ ACTION_STD_NEXTREPEAT, BUTTON_RC_BITRATE|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_STD_NEXTREPEAT, BUTTON_RC_BITRATE|BUTTON_REPEAT, BUTTON_NONE },
LAST_ITEM_IN_LIST LAST_ITEM_IN_LIST
}; }; /* button_context_recscreen_h100remote*/
const struct button_mapping button_context_settingsgraphical_h300lcdremote[] = { const struct button_mapping button_context_settingsgraphical_h300lcdremote[] = {
{ ACTION_SETTINGS_INC, BUTTON_RC_FF, BUTTON_NONE }, { ACTION_SETTINGS_INC, BUTTON_RC_FF, BUTTON_NONE },
@ -397,7 +408,7 @@ const struct button_mapping button_context_settingsgraphical_h300lcdremote[] =
{ ACTION_STD_NEXTREPEAT, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_STD_NEXTREPEAT, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE },
LAST_ITEM_IN_LIST LAST_ITEM_IN_LIST
}; }; /* button_context_recscreen_h300lcdremote */
const struct button_mapping button_context_yesno_h100remote[] = { const struct button_mapping button_context_yesno_h100remote[] = {
{ ACTION_YESNO_ACCEPT, BUTTON_RC_MENU, BUTTON_NONE }, { ACTION_YESNO_ACCEPT, BUTTON_RC_MENU, BUTTON_NONE },
@ -477,6 +488,29 @@ const struct button_mapping button_context_pitchscreen_h300lcdremote[] = {
LAST_ITEM_IN_LIST LAST_ITEM_IN_LIST
}; };
const struct button_mapping button_context_recscreen_h100remote[] = {
{ ACTION_REC_LCD, BUTTON_RC_VOL_DOWN, BUTTON_NONE },
{ ACTION_REC_PAUSE, BUTTON_RC_ON, BUTTON_NONE },
{ ACTION_REC_NEWFILE, BUTTON_RC_REC, BUTTON_NONE },
{ ACTION_SETTINGS_INC, BUTTON_RC_BITRATE, BUTTON_NONE },
{ ACTION_SETTINGS_INC, BUTTON_RC_BITRATE|BUTTON_REPEAT, BUTTON_NONE },
{ ACTION_SETTINGS_DEC, BUTTON_RC_SOURCE, BUTTON_NONE },
{ ACTION_SETTINGS_DEC, BUTTON_RC_SOURCE|BUTTON_REPEAT, BUTTON_NONE },
LAST_ITEM_IN_LIST
};
const struct button_mapping button_context_recscreen_h300lcdremote[] = {
{ ACTION_REC_LCD, BUTTON_RC_SOURCE, BUTTON_NONE },
{ ACTION_REC_PAUSE, BUTTON_RC_ON, BUTTON_NONE },
{ ACTION_REC_NEWFILE, BUTTON_RC_REC, BUTTON_NONE },
{ ACTION_SETTINGS_INC, BUTTON_RC_FF, BUTTON_NONE },
{ ACTION_SETTINGS_INC, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
{ ACTION_SETTINGS_DEC, BUTTON_RC_REW, BUTTON_NONE },
{ ACTION_SETTINGS_DEC, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_NONE },
LAST_ITEM_IN_LIST
};
/* the actual used tables */ /* the actual used tables */
@ -497,7 +531,9 @@ static const struct button_mapping
*remote_btn_ctxt_quickscreen *remote_btn_ctxt_quickscreen
= button_context_quickscreen_h100remote, = button_context_quickscreen_h100remote,
*remote_btn_ctxt_pitchscreen *remote_btn_ctxt_pitchscreen
= button_context_pitchscreen_h100remote; = button_context_pitchscreen_h100remote,
*remote_button_ctxt_recscreen
= button_context_recscreen_h100remote;
static int _remote_type = 0; static int _remote_type = 0;
@ -519,6 +555,7 @@ static void remap_remote(void)
remote_btn_ctxt_bmark = NULL; remote_btn_ctxt_bmark = NULL;
remote_btn_ctxt_quickscreen = NULL; remote_btn_ctxt_quickscreen = NULL;
remote_btn_ctxt_pitchscreen = NULL; remote_btn_ctxt_pitchscreen = NULL;
remote_button_ctxt_recscreen = NULL;
break; break;
case REMOTETYPE_H100_LCD: case REMOTETYPE_H100_LCD:
@ -538,7 +575,9 @@ static void remap_remote(void)
remote_btn_ctxt_quickscreen remote_btn_ctxt_quickscreen
= button_context_quickscreen_h100remote, = button_context_quickscreen_h100remote,
remote_btn_ctxt_pitchscreen remote_btn_ctxt_pitchscreen
= button_context_pitchscreen_h100remote; = button_context_pitchscreen_h100remote,
remote_button_ctxt_recscreen
= button_context_recscreen_h100remote;
break; break;
case REMOTETYPE_H300_LCD: case REMOTETYPE_H300_LCD:
@ -558,7 +597,9 @@ static void remap_remote(void)
remote_btn_ctxt_quickscreen remote_btn_ctxt_quickscreen
= button_context_quickscreen_h300lcdremote, = button_context_quickscreen_h300lcdremote,
remote_btn_ctxt_pitchscreen remote_btn_ctxt_pitchscreen
= button_context_pitchscreen_h300lcdremote; = button_context_pitchscreen_h300lcdremote,
remote_button_ctxt_recscreen
= button_context_recscreen_h300lcdremote;
break; break;
case REMOTETYPE_H300_NONLCD: /* FIXME: add its tables */ case REMOTETYPE_H300_NONLCD: /* FIXME: add its tables */
@ -578,7 +619,9 @@ static void remap_remote(void)
remote_btn_ctxt_quickscreen remote_btn_ctxt_quickscreen
= button_context_quickscreen_h300lcdremote, = button_context_quickscreen_h300lcdremote,
remote_btn_ctxt_pitchscreen remote_btn_ctxt_pitchscreen
= button_context_pitchscreen_h300lcdremote; = button_context_pitchscreen_h300lcdremote,
remote_button_ctxt_recscreen
= button_context_recscreen_h300lcdremote;
#if 0 #if 0
remote_btn_ctxt_std = remote_btn_ctxt_std =
remote_btn_ctxt_wps = remote_btn_ctxt_wps =
@ -592,6 +635,7 @@ static void remap_remote(void)
remote_btn_ctxt_bmark = remote_btn_ctxt_bmark =
remote_btn_ctxt_quickscreen = remote_btn_ctxt_quickscreen =
remote_btn_ctxt_pitchscreen = remote_btn_ctxt_pitchscreen =
remote_button_ctxt_recscreen =
#endif #endif
break; break;
@ -641,6 +685,8 @@ const struct button_mapping* get_context_mapping_remote(int context)
return remote_btn_ctxt_quickscreen; return remote_btn_ctxt_quickscreen;
case CONTEXT_PITCHSCREEN: case CONTEXT_PITCHSCREEN:
return remote_btn_ctxt_pitchscreen; return remote_btn_ctxt_pitchscreen;
case CONTEXT_RECSCREEN:
return remote_button_ctxt_recscreen;
} }
return remote_btn_ctxt_std; return remote_btn_ctxt_std;
} }
@ -683,6 +729,8 @@ const struct button_mapping* get_context_mapping(int context)
return button_context_quickscreen; return button_context_quickscreen;
case CONTEXT_PITCHSCREEN: case CONTEXT_PITCHSCREEN:
return button_context_pitchscreen; return button_context_pitchscreen;
case CONTEXT_RECSCREEN:
return button_context_recscreen;
} }
return button_context_standard; return button_context_standard;
} }

View file

@ -127,6 +127,16 @@ const struct button_mapping button_context_pitchscreen[] = {
LAST_ITEM_IN_LIST LAST_ITEM_IN_LIST
}; /* button_context_quickscreen */ }; /* button_context_quickscreen */
const struct button_mapping button_context_recscreen[] = {
{ ACTION_REC_PAUSE, BUTTON_MENU|BUTTON_REL, BUTTON_MENU },
{ ACTION_SETTINGS_INC, BUTTON_RIGHT, BUTTON_NONE },
{ ACTION_SETTINGS_INC, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
{ ACTION_SETTINGS_DEC, BUTTON_LEFT, BUTTON_NONE },
{ ACTION_SETTINGS_DEC, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE },
LAST_ITEM_IN_LIST
}; /* button_context_recscreen */
const struct button_mapping* get_context_mapping( int context ) const struct button_mapping* get_context_mapping( int context )
{ {
switch( context ) switch( context )
@ -153,6 +163,8 @@ const struct button_mapping* get_context_mapping( int context )
/* else fall through to CUSTOM|1 */ /* else fall through to CUSTOM|1 */
case CONTEXT_CUSTOM|1: case CONTEXT_CUSTOM|1:
return button_context_tree; return button_context_tree;
case CONTEXT_RECSCREEN:
return button_context_recscreen;
case CONTEXT_LIST: case CONTEXT_LIST:
case CONTEXT_MAINMENU: case CONTEXT_MAINMENU:

View file

@ -143,6 +143,18 @@ static const struct button_mapping button_context_pitchscreen[] = {
LAST_ITEM_IN_LIST LAST_ITEM_IN_LIST
}; /* button_context_pitchcreen */ }; /* button_context_pitchcreen */
const struct button_mapping button_context_recscreen[] = {
{ ACTION_REC_PAUSE, BUTTON_PLAY, BUTTON_NONE },
{ ACTION_REC_F2, BUTTON_F2, BUTTON_NONE },
{ ACTION_REC_F3, BUTTON_F3, BUTTON_NONE },
{ ACTION_SETTINGS_INC, BUTTON_RIGHT, BUTTON_NONE },
{ ACTION_SETTINGS_INC, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
{ ACTION_SETTINGS_DEC, BUTTON_LEFT, BUTTON_NONE },
{ ACTION_SETTINGS_DEC, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE },
LAST_ITEM_IN_LIST
}; /* button_context_recscreen */
/***************************************************************************** /*****************************************************************************
* Remote control mappings * Remote control mappings
*****************************************************************************/ *****************************************************************************/
@ -212,6 +224,9 @@ const struct button_mapping* get_context_mapping( int context )
case CONTEXT_QUICKSCREEN: case CONTEXT_QUICKSCREEN:
return button_context_quickscreen; return button_context_quickscreen;
case CONTEXT_RECSCREEN:
return button_context_recscreen;
case CONTEXT_STD: case CONTEXT_STD:
case CONTEXT_LIST: case CONTEXT_LIST:
case CONTEXT_MAINMENU: case CONTEXT_MAINMENU:

View file

@ -202,6 +202,19 @@ const struct button_mapping remote_button_context_wps[] = {
LAST_ITEM_IN_LIST LAST_ITEM_IN_LIST
}; };
const struct button_mapping button_context_recscreen[] = {
{ ACTION_REC_PAUSE, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY },
{ ACTION_STD_CANCEL, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY },
{ ACTION_REC_NEWFILE, BUTTON_REC|BUTTON_REL, BUTTON_REC },
{ ACTION_STD_MENU, BUTTON_REC|BUTTON_REPEAT, BUTTON_REC },
{ ACTION_SETTINGS_INC, BUTTON_RIGHT, BUTTON_NONE },
{ ACTION_SETTINGS_INC, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
{ ACTION_SETTINGS_DEC, BUTTON_LEFT, BUTTON_NONE },
{ ACTION_SETTINGS_DEC, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE },
LAST_ITEM_IN_LIST
}; /* button_context_recscreen */
static const struct button_mapping* get_context_mapping_remote( int context ) static const struct button_mapping* get_context_mapping_remote( int context )
{ {
@ -252,6 +265,8 @@ const struct button_mapping* get_context_mapping( int context )
return button_context_quickscreen; return button_context_quickscreen;
case CONTEXT_PITCHSCREEN: case CONTEXT_PITCHSCREEN:
return button_context_pitchscreen; return button_context_pitchscreen;
case CONTEXT_RECSCREEN:
return button_context_recscreen;
case CONTEXT_LIST: case CONTEXT_LIST:
case CONTEXT_MAINMENU: case CONTEXT_MAINMENU:
default: default:

View file

@ -37,6 +37,7 @@
#ifdef CONFIG_BACKLIGHT #ifdef CONFIG_BACKLIGHT
#include "backlight.h" #include "backlight.h"
#endif #endif
#include "action.h"
#if CONFIG_CODEC == SWCODEC #if CONFIG_CODEC == SWCODEC
#include "pcm_playback.h" #include "pcm_playback.h"
@ -1222,7 +1223,7 @@ int peak_meter_draw_get_btn(int x, int y[], int height, int nb_screens)
bool dopeek = true; bool dopeek = true;
while (TIME_BEFORE(current_tick, next_big_refresh)) { while (TIME_BEFORE(current_tick, next_big_refresh)) {
button = button_get(false); button = get_action(CONTEXT_RECSCREEN, TIMEOUT_NOBLOCK);
if (button != BUTTON_NONE) { if (button != BUTTON_NONE) {
break; break;
} }

View file

@ -65,75 +65,9 @@
#include "ata.h" #include "ata.h"
#include "splash.h" #include "splash.h"
#include "screen_access.h" #include "screen_access.h"
#include "action.h"
#ifdef HAVE_RECORDING #ifdef HAVE_RECORDING
#if CONFIG_KEYPAD == RECORDER_PAD
#define REC_SHUTDOWN (BUTTON_OFF | BUTTON_REPEAT)
#define REC_STOPEXIT BUTTON_OFF
#define REC_RECPAUSE BUTTON_PLAY
#define REC_INC BUTTON_RIGHT
#define REC_DEC BUTTON_LEFT
#define REC_NEXT BUTTON_DOWN
#define REC_PREV BUTTON_UP
#define REC_SETTINGS BUTTON_F1
#define REC_F2 BUTTON_F2
#define REC_F3 BUTTON_F3
#elif CONFIG_KEYPAD == ONDIO_PAD /* only limited features */
#define REC_SHUTDOWN (BUTTON_OFF | BUTTON_REPEAT)
#define REC_STOPEXIT BUTTON_OFF
#define REC_RECPAUSE_PRE BUTTON_MENU
#define REC_RECPAUSE (BUTTON_MENU | BUTTON_REL)
#define REC_INC BUTTON_RIGHT
#define REC_DEC BUTTON_LEFT
#define REC_NEXT BUTTON_DOWN
#define REC_PREV BUTTON_UP
#define REC_SETTINGS (BUTTON_MENU | BUTTON_REPEAT)
#elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || (CONFIG_KEYPAD == IRIVER_H300_PAD)
#define REC_SHUTDOWN (BUTTON_OFF | BUTTON_REPEAT)
#define REC_STOPEXIT BUTTON_OFF
#define REC_RECPAUSE BUTTON_ON
#define REC_NEWFILE BUTTON_REC
#define REC_INC BUTTON_RIGHT
#define REC_DEC BUTTON_LEFT
#define REC_NEXT BUTTON_DOWN
#define REC_PREV BUTTON_UP
#define REC_SETTINGS BUTTON_MODE
#define REC_RC_SHUTDOWN (BUTTON_RC_STOP | BUTTON_REPEAT)
#define REC_RC_STOPEXIT BUTTON_RC_STOP
#define REC_RC_RECPAUSE BUTTON_RC_ON
#define REC_RC_NEWFILE BUTTON_RC_REC
#define REC_RC_INC BUTTON_RC_BITRATE
#define REC_RC_DEC BUTTON_RC_SOURCE
#define REC_RC_NEXT BUTTON_RC_FF
#define REC_RC_PREV BUTTON_RC_REW
#define REC_RC_SETTINGS BUTTON_RC_MODE
#define BUTTON_RC_DISPLAY BUTTON_RC_VOL_DOWN
#elif (CONFIG_KEYPAD == IAUDIO_X5_PAD)
#define REC_SHUTDOWN (BUTTON_POWER | BUTTON_REPEAT)
#define REC_STOPEXIT (BUTTON_PLAY | BUTTON_REPEAT)
#define REC_RECPAUSE_PRE BUTTON_PLAY
#define REC_RECPAUSE (BUTTON_PLAY | BUTTON_REL)
#define REC_INC BUTTON_RIGHT
#define REC_DEC BUTTON_LEFT
#define REC_NEXT BUTTON_DOWN
#define REC_PREV BUTTON_UP
#define REC_NEWFILE_PRE BUTTON_REC
#define REC_SETTINGS (BUTTON_REC | BUTTON_REPEAT)
#define REC_NEWFILE (BUTTON_REC | BUTTON_REL)
#elif CONFIG_KEYPAD == GMINI100_PAD
#define REC_SHUTDOWN (BUTTON_OFF | BUTTON_REPEAT)
#define REC_STOPEXIT BUTTON_OFF
#define REC_RECPAUSE BUTTON_ON
#define REC_INC BUTTON_RIGHT
#define REC_DEC BUTTON_LEFT
#endif
#define PM_HEIGHT ((LCD_HEIGHT >= 72) ? 2 : 1) #define PM_HEIGHT ((LCD_HEIGHT >= 72) ? 2 : 1)
bool f2_rec_screen(void); bool f2_rec_screen(void);
@ -830,8 +764,7 @@ bool recording_screen(void)
switch(button) switch(button)
{ {
#ifdef BUTTON_RC_DISPLAY case ACTION_REC_LCD:
case BUTTON_RC_DISPLAY:
if (remote_display_on) if (remote_display_on)
{ {
remote_display_on = false; remote_display_on = false;
@ -849,15 +782,8 @@ bool recording_screen(void)
screen_update = NB_SCREENS; screen_update = NB_SCREENS;
} }
break; break;
#endif
case REC_STOPEXIT: case ACTION_STD_CANCEL:
case REC_SHUTDOWN:
#ifdef REC_RC_STOPEXIT
case REC_RC_STOPEXIT:
#endif
#ifdef REC_RC_SHUTDOWN
case REC_RC_SHUTDOWN:
#endif
/* turn off the trigger */ /* turn off the trigger */
peak_meter_trigger(false); peak_meter_trigger(false);
peak_meter_set_trigger_listener(NULL); peak_meter_set_trigger_listener(NULL);
@ -877,27 +803,8 @@ bool recording_screen(void)
update_countdown = 1; /* Update immediately */ update_countdown = 1; /* Update immediately */
break; break;
case REC_RECPAUSE: case ACTION_REC_PAUSE:
#ifdef REC_RC_RECPAUSE case ACTION_REC_NEWFILE:
case REC_RC_RECPAUSE:
#endif
#ifdef REC_RECPAUSE_PRE
if (lastbutton != REC_RECPAUSE_PRE)
break;
#endif
#ifdef REC_NEWFILE
case REC_NEWFILE:
#endif
#ifdef REC_RC_NEWFILE
case REC_RC_NEWFILE:
#endif
#ifdef REC_NEWFILE_PRE
if (button == REC_NEWFILE){
if (lastbutton != REC_NEWFILE_PRE)
break;
}
#endif
/* Only act if the mpeg is stopped */ /* Only act if the mpeg is stopped */
if(!(audio_stat & AUDIO_STATUS_RECORD)) if(!(audio_stat & AUDIO_STATUS_RECORD))
{ {
@ -928,19 +835,13 @@ bool recording_screen(void)
} }
else else
{ {
#ifdef REC_NEWFILE
/*if new file button pressed, start new file */ /*if new file button pressed, start new file */
if ((button == REC_NEWFILE) if (button == ACTION_REC_NEWFILE)
#ifdef REC_RC_NEWFILE
|| (button == REC_RC_NEWFILE)
#endif
)
{ {
audio_new_file(rec_create_filename(path_buffer)); audio_new_file(rec_create_filename(path_buffer));
last_seconds = 0; last_seconds = 0;
} }
else else
#endif
/* if pause button pressed, pause or resume */ /* if pause button pressed, pause or resume */
{ {
if(audio_stat & AUDIO_STATUS_PAUSE) if(audio_stat & AUDIO_STATUS_PAUSE)
@ -960,34 +861,19 @@ bool recording_screen(void)
update_countdown = 1; /* Update immediately */ update_countdown = 1; /* Update immediately */
break; break;
#ifdef REC_PREV case ACTION_STD_PREV:
case REC_PREV:
#ifdef REC_RC_PREV
case REC_RC_PREV:
#endif
cursor--; cursor--;
adjust_cursor(); adjust_cursor();
update_countdown = 1; /* Update immediately */ update_countdown = 1; /* Update immediately */
break; break;
#endif
#ifdef REC_NEXT case ACTION_STD_NEXT:
case REC_NEXT:
#ifdef REC_RC_NEXT
case REC_RC_NEXT:
#endif
cursor++; cursor++;
adjust_cursor(); adjust_cursor();
update_countdown = 1; /* Update immediately */ update_countdown = 1; /* Update immediately */
break; break;
#endif
case REC_INC: case ACTION_SETTINGS_INC:
case REC_INC | BUTTON_REPEAT:
#ifdef REC_RC_INC
case REC_RC_INC:
case REC_RC_INC | BUTTON_REPEAT:
#endif
switch(cursor) switch(cursor)
{ {
case 0: case 0:
@ -1055,12 +941,7 @@ bool recording_screen(void)
update_countdown = 1; /* Update immediately */ update_countdown = 1; /* Update immediately */
break; break;
case REC_DEC: case ACTION_SETTINGS_DEC:
case REC_DEC | BUTTON_REPEAT:
#ifdef REC_RC_DEC
case REC_RC_DEC:
case REC_RC_DEC | BUTTON_REPEAT:
#endif
switch(cursor) switch(cursor)
{ {
case 0: case 0:
@ -1128,11 +1009,7 @@ bool recording_screen(void)
update_countdown = 1; /* Update immediately */ update_countdown = 1; /* Update immediately */
break; break;
#ifdef REC_SETTINGS case ACTION_STD_MENU:
case REC_SETTINGS:
#ifdef REC_RC_SETTINGS
case REC_RC_SETTINGS:
#endif
if(audio_stat != AUDIO_STATUS_RECORD) if(audio_stat != AUDIO_STATUS_RECORD)
{ {
#if CONFIG_LED == LED_REAL #if CONFIG_LED == LED_REAL
@ -1178,10 +1055,8 @@ bool recording_screen(void)
} }
} }
break; break;
#endif #if CONFIG_KEYPAD == RECORDER_PAD
case ACTION_REC_F2:
#ifdef REC_F2
case REC_F2:
if(audio_stat != AUDIO_STATUS_RECORD) if(audio_stat != AUDIO_STATUS_RECORD)
{ {
#if CONFIG_LED == LED_REAL #if CONFIG_LED == LED_REAL
@ -1197,10 +1072,8 @@ bool recording_screen(void)
update_countdown = 1; /* Update immediately */ update_countdown = 1; /* Update immediately */
} }
break; break;
#endif
#ifdef REC_F3 case ACTION_REC_F3:
case REC_F3:
if(audio_stat & AUDIO_STATUS_RECORD) if(audio_stat & AUDIO_STATUS_RECORD)
{ {
audio_new_file(rec_create_filename(path_buffer)); audio_new_file(rec_create_filename(path_buffer));
@ -1653,8 +1526,7 @@ bool recording_screen(void)
while(1) while(1)
{ {
button = button_get(true); if (action_userabort(TIMEOUT_NOBLOCK))
if(button == (REC_STOPEXIT | BUTTON_REL))
break; break;
} }
} }
@ -1690,7 +1562,7 @@ bool recording_screen(void)
return been_in_usb_mode; return been_in_usb_mode;
} }
#ifdef REC_F2 #if CONFIG_KEYPAD == RECORDER_PAD
bool f2_rec_screen(void) bool f2_rec_screen(void)
{ {
bool exit = false; bool exit = false;
@ -1826,9 +1698,7 @@ bool f2_rec_screen(void)
return false; return false;
} }
#endif /* #ifdef REC_F2 */
#ifdef REC_F3
bool f3_rec_screen(void) bool f3_rec_screen(void)
{ {
bool exit = false; bool exit = false;
@ -1931,7 +1801,7 @@ bool f3_rec_screen(void)
return false; return false;
} }
#endif /* #ifdef REC_F3 */ #endif /* #ifdef RECORDER_PAD */
#if CONFIG_CODEC == SWCODEC #if CONFIG_CODEC == SWCODEC
void audio_beep(int duration) void audio_beep(int duration)