1
0
Fork 0
forked from len0rd/rockbox

Yes/No Screen: Allow accept to be button release

Allows the ACTION_YESNO_ACCEPT action to be set
to a button release by ignoring certain system events.

Moving USB init in main.c to the last thing to prevent
getting stuck in the USB prompt, if enabled.
Also changing ACTION_YESNO_ACCEPT to button release on erosq

Change-Id: I5e7498521a13cb4e840223dd0b9c8633e99093bc
This commit is contained in:
Dana Conrad 2021-05-16 15:01:26 -05:00
parent 10d199f9d5
commit 8056b7fd1a
3 changed files with 13 additions and 5 deletions

View file

@ -201,8 +201,13 @@ enum yesno_res gui_syncyesno_run(const struct text_message * main_message,
result=YESNO_YES;
break;
case ACTION_NONE:
case ACTION_UNKNOWN:
case SYS_CHARGER_DISCONNECTED:
case SYS_BATTERY_UPDATE:
case SYS_TIMEOUT:
#if CONFIG_CHARGING
case SYS_CHARGER_CONNECTED:
#endif
/* ignore some SYS events that can happen */
continue;
default:

View file

@ -118,7 +118,7 @@ static const struct button_mapping button_context_tree[] = {
}; /* button_context_tree */
static const struct button_mapping button_context_yesno[] = {
{ ACTION_YESNO_ACCEPT, BUTTON_PLAY, BUTTON_NONE },
{ ACTION_YESNO_ACCEPT, BUTTON_PLAY|BUTTON_REL, BUTTON_NONE },
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD),
}; /* button_context_settings_yesno */

View file

@ -321,10 +321,6 @@ static void init(void)
global_status.font_id[i] = FONT_SYSFIXED;
font_init();
show_logo();
#ifndef USB_NONE
usb_init();
usb_start_monitoring();
#endif
button_init();
powermgmt_init();
backlight_init();
@ -374,6 +370,13 @@ static void init(void)
audio_init();
talk_announce_voice_invalid(); /* notify user w/ voice prompt if voice file invalid */
settings_apply_skins();
/* do USB last so prompt (if enabled) can work correctly if USB was inserted with device off,
* also doesn't hurt that it will display the nice pretty backdrop this way too. */
#ifndef USB_NONE
usb_init();
usb_start_monitoring();
#endif
}
#else /* CONFIG_PLATFORM & PLATFORM_HOSTED */