mirror of
https://github.com/libretro/RetroArch.git
synced 2025-02-04 16:26:25 +00:00
Lakka: CD-ROM eject menu item
Adds new entry (where the entry for dumping CD is) to eject the disc -
in case the CD drive has no physical button to eject the disc / the
button does not work. Useless for most, but quality of life improvement
for some.
Upstream of patch used by Lakka at build time
1943ad296e/packages/libretro/retroarch/patches/retroarch-99-eject_disc.patch
This commit is contained in:
parent
a2f9273979
commit
efad7a7dcc
@ -646,6 +646,9 @@ static const bool menu_show_load_content = true;
|
||||
#ifdef HAVE_CDROM
|
||||
static const bool menu_show_load_disc = true;
|
||||
static const bool menu_show_dump_disc = true;
|
||||
#ifdef HAVE_LAKKA
|
||||
static const bool menu_show_eject_disc = true;
|
||||
#endif /* HAVE_LAKKA */
|
||||
#endif
|
||||
static const bool menu_show_information = true;
|
||||
static const bool menu_show_configurations = true;
|
||||
|
@ -1824,6 +1824,9 @@ static struct config_bool_setting *populate_settings_bool(
|
||||
#ifdef HAVE_CDROM
|
||||
SETTING_BOOL("menu_show_load_disc", &settings->bools.menu_show_load_disc, true, menu_show_load_disc, false);
|
||||
SETTING_BOOL("menu_show_dump_disc", &settings->bools.menu_show_dump_disc, true, menu_show_dump_disc, false);
|
||||
#ifdef HAVE_LAKKA
|
||||
SETTING_BOOL("menu_show_eject_disc", &settings->bools.menu_show_eject_disc, true, menu_show_eject_disc, false);
|
||||
#endif /* HAVE_LAKKA */
|
||||
#endif
|
||||
SETTING_BOOL("menu_show_information", &settings->bools.menu_show_information, true, menu_show_information, false);
|
||||
SETTING_BOOL("menu_show_configurations", &settings->bools.menu_show_configurations, true, menu_show_configurations, false);
|
||||
|
@ -653,6 +653,9 @@ typedef struct settings
|
||||
bool menu_show_load_content;
|
||||
bool menu_show_load_disc;
|
||||
bool menu_show_dump_disc;
|
||||
#ifdef HAVE_LAKKA
|
||||
bool menu_show_eject_disc;
|
||||
#endif
|
||||
bool menu_show_information;
|
||||
bool menu_show_configurations;
|
||||
bool menu_show_help;
|
||||
|
@ -1730,6 +1730,12 @@ MSG_HASH(
|
||||
MENU_ENUM_LABEL_DUMP_DISC,
|
||||
"dump_disc"
|
||||
)
|
||||
#ifdef HAVE_LAKKA
|
||||
MSG_HASH(
|
||||
MENU_ENUM_LABEL_EJECT_DISC,
|
||||
"eject_disc"
|
||||
)
|
||||
#endif
|
||||
MSG_HASH(
|
||||
MENU_ENUM_LABEL_LOAD_CONTENT_SPECIAL,
|
||||
"load_special"
|
||||
@ -2386,6 +2392,12 @@ MSG_HASH(
|
||||
MENU_ENUM_LABEL_DEFERRED_LOAD_DISC_LIST,
|
||||
"deferred_load_disc_list"
|
||||
)
|
||||
#ifdef HAVE_LAKKA
|
||||
MSG_HASH(
|
||||
MENU_ENUM_LABEL_DEFERRED_EJECT_DISC,
|
||||
"deferred_eject_disc"
|
||||
)
|
||||
#endif
|
||||
MSG_HASH(
|
||||
MENU_ENUM_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_DEVELOPER,
|
||||
"deferred_cursor_manager_list_rdb_entry_developer"
|
||||
@ -4030,6 +4042,12 @@ MSG_HASH(
|
||||
MENU_ENUM_LABEL_MENU_SHOW_DUMP_DISC,
|
||||
"menu_show_dump_disc"
|
||||
)
|
||||
#ifdef HAVE_LAKKA
|
||||
MSG_HASH(
|
||||
MENU_ENUM_LABEL_MENU_SHOW_EJECT_DISC,
|
||||
"menu_show_eject_disc"
|
||||
)
|
||||
#endif
|
||||
MSG_HASH(
|
||||
MENU_ENUM_LABEL_MENU_SHOW_INFORMATION,
|
||||
"menu_show_information"
|
||||
|
@ -91,6 +91,16 @@ MSG_HASH( /* FIXME Is a specific image format used? Is it determined automatical
|
||||
MENU_ENUM_SUBLABEL_DUMP_DISC,
|
||||
"Dump the physical media disc to internal storage. It will be saved as an image file."
|
||||
)
|
||||
#ifdef HAVE_LAKKA
|
||||
MSG_HASH(
|
||||
MENU_ENUM_LABEL_VALUE_EJECT_DISC,
|
||||
"Eject Disc"
|
||||
)
|
||||
MSG_HASH(
|
||||
MENU_ENUM_SUBLABEL_EJECT_DISC,
|
||||
"Ejects the disc from physical CD/DVD drive."
|
||||
)
|
||||
#endif
|
||||
MSG_HASH(
|
||||
MENU_ENUM_LABEL_VALUE_PLAYLISTS_TAB,
|
||||
"Playlists"
|
||||
@ -4335,6 +4345,16 @@ MSG_HASH(
|
||||
MENU_ENUM_SUBLABEL_MENU_SHOW_DUMP_DISC,
|
||||
"Show the 'Dump Disc' option in the Main Menu."
|
||||
)
|
||||
#ifdef HAVE_LAKKA
|
||||
MSG_HASH(
|
||||
MENU_ENUM_LABEL_VALUE_MENU_SHOW_EJECT_DISC,
|
||||
"Show 'Eject Disc'"
|
||||
)
|
||||
MSG_HASH(
|
||||
MENU_ENUM_SUBLABEL_MENU_SHOW_EJECT_DISC,
|
||||
"Show the 'Eject Disc' option in the Main Menu."
|
||||
)
|
||||
#endif
|
||||
MSG_HASH(
|
||||
MENU_ENUM_LABEL_VALUE_MENU_SHOW_ONLINE_UPDATER,
|
||||
"Show 'Online Updater'"
|
||||
|
@ -113,6 +113,9 @@ GENERIC_DEFERRED_PUSH(deferred_push_configurations_list, DISPLAYLIST_
|
||||
GENERIC_DEFERRED_PUSH(deferred_push_load_content_special, DISPLAYLIST_LOAD_CONTENT_LIST)
|
||||
GENERIC_DEFERRED_PUSH(deferred_push_load_content_list, DISPLAYLIST_LOAD_CONTENT_LIST)
|
||||
GENERIC_DEFERRED_PUSH(deferred_push_dump_disk_list, DISPLAYLIST_DUMP_DISC)
|
||||
#ifdef HAVE_LAKKA
|
||||
GENERIC_DEFERRED_PUSH(deferred_push_eject_disc, DISPLAYLIST_EJECT_DISC)
|
||||
#endif
|
||||
GENERIC_DEFERRED_PUSH(deferred_push_cdrom_info_detail_list, DISPLAYLIST_CDROM_DETAIL_INFO)
|
||||
GENERIC_DEFERRED_PUSH(deferred_push_load_disk_list, DISPLAYLIST_LOAD_DISC)
|
||||
GENERIC_DEFERRED_PUSH(deferred_push_information_list, DISPLAYLIST_INFORMATION_LIST)
|
||||
@ -676,6 +679,9 @@ static int menu_cbs_init_bind_deferred_push_compare_label(
|
||||
|
||||
const deferred_info_list_t info_list[] = {
|
||||
{MENU_ENUM_LABEL_DEFERRED_DUMP_DISC_LIST, deferred_push_dump_disk_list},
|
||||
#ifdef HAVE_LAKKA
|
||||
{MENU_ENUM_LABEL_DEFERRED_EJECT_DISC, deferred_push_eject_disc},
|
||||
#endif
|
||||
{MENU_ENUM_LABEL_DEFERRED_LOAD_DISC_LIST, deferred_push_load_disk_list},
|
||||
{MENU_ENUM_LABEL_DEFERRED_FAVORITES_LIST, deferred_push_favorites_list},
|
||||
{MENU_ENUM_LABEL_DEFERRED_DROPDOWN_BOX_LIST, deferred_push_dropdown_box_list},
|
||||
@ -1276,6 +1282,11 @@ static int menu_cbs_init_bind_deferred_push_compare_label(
|
||||
case MENU_ENUM_LABEL_DEFERRED_DUMP_DISC_LIST:
|
||||
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_dump_disk_list);
|
||||
break;
|
||||
#ifdef HAVE_LAKKA
|
||||
case MENU_ENUM_LABEL_DEFERRED_EJECT_DISC:
|
||||
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_eject_disc);
|
||||
break;
|
||||
#endif
|
||||
case MENU_ENUM_LABEL_DEFERRED_CDROM_INFO_DETAIL_LIST:
|
||||
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_cdrom_info_detail_list);
|
||||
break;
|
||||
|
@ -447,6 +447,10 @@ static enum msg_hash_enums action_ok_dl_to_enum(unsigned lbl)
|
||||
return MENU_ENUM_LABEL_DEFERRED_ACCOUNTS_FACEBOOK_LIST;
|
||||
case ACTION_OK_DL_DUMP_DISC_LIST:
|
||||
return MENU_ENUM_LABEL_DEFERRED_DUMP_DISC_LIST;
|
||||
#ifdef HAVE_LAKKA
|
||||
case ACTION_OK_DL_EJECT_DISC:
|
||||
return MENU_ENUM_LABEL_DEFERRED_EJECT_DISC;
|
||||
#endif
|
||||
case ACTION_OK_DL_LOAD_DISC_LIST:
|
||||
return MENU_ENUM_LABEL_DEFERRED_LOAD_DISC_LIST;
|
||||
case ACTION_OK_DL_ACCOUNTS_YOUTUBE_LIST:
|
||||
@ -1529,6 +1533,9 @@ int generic_action_ok_displaylist_push(const char *path,
|
||||
case ACTION_OK_DL_IMAGES_LIST:
|
||||
case ACTION_OK_DL_LOAD_DISC_LIST:
|
||||
case ACTION_OK_DL_DUMP_DISC_LIST:
|
||||
#ifdef HAVE_LAKKA
|
||||
case ACTION_OK_DL_EJECT_DISC:
|
||||
#endif
|
||||
case ACTION_OK_DL_SHADER_PRESET_REMOVE:
|
||||
case ACTION_OK_DL_SHADER_PRESET_SAVE:
|
||||
case ACTION_OK_DL_CDROM_INFO_LIST:
|
||||
@ -2735,6 +2742,17 @@ static int action_ok_dump_cdrom(const char *path,
|
||||
return 0;
|
||||
}
|
||||
|
||||
#ifdef HAVE_LAKKA
|
||||
static int action_ok_eject_disc(const char *path,
|
||||
const char *label, unsigned type, size_t idx, size_t entry_idx)
|
||||
{
|
||||
#ifdef HAVE_CDROM
|
||||
system("eject & disown");
|
||||
#endif /* HAVE_CDROM */
|
||||
return 0;
|
||||
}
|
||||
#endif /* HAVE_LAKKA */
|
||||
|
||||
static int action_ok_lookup_setting(const char *path,
|
||||
const char *label, unsigned type, size_t idx, size_t entry_idx)
|
||||
{
|
||||
@ -5644,6 +5662,9 @@ DEFAULT_ACTION_OK_FUNC(action_ok_push_accounts_youtube_list, ACTION_OK_DL_ACCOUN
|
||||
DEFAULT_ACTION_OK_FUNC(action_ok_push_accounts_twitch_list, ACTION_OK_DL_ACCOUNTS_TWITCH_LIST)
|
||||
DEFAULT_ACTION_OK_FUNC(action_ok_push_accounts_facebook_list, ACTION_OK_DL_ACCOUNTS_FACEBOOK_LIST)
|
||||
DEFAULT_ACTION_OK_FUNC(action_ok_push_dump_disc_list, ACTION_OK_DL_DUMP_DISC_LIST)
|
||||
#ifdef HAVE_LAKKA
|
||||
DEFAULT_ACTION_OK_FUNC(action_ok_push_eject_disc, ACTION_OK_DL_EJECT_DISC)
|
||||
#endif
|
||||
DEFAULT_ACTION_OK_FUNC(action_ok_push_load_disc_list, ACTION_OK_DL_LOAD_DISC_LIST)
|
||||
DEFAULT_ACTION_OK_FUNC(action_ok_open_archive, ACTION_OK_DL_OPEN_ARCHIVE)
|
||||
DEFAULT_ACTION_OK_FUNC(action_ok_rgui_menu_theme_preset, ACTION_OK_DL_RGUI_MENU_THEME_PRESET)
|
||||
@ -7865,6 +7886,9 @@ static int menu_cbs_init_bind_ok_compare_label(menu_file_list_cbs_t *cbs,
|
||||
{MENU_ENUM_LABEL_ACCOUNTS_TWITCH, action_ok_push_accounts_twitch_list},
|
||||
{MENU_ENUM_LABEL_ACCOUNTS_FACEBOOK, action_ok_push_accounts_facebook_list},
|
||||
{MENU_ENUM_LABEL_DUMP_DISC, action_ok_push_dump_disc_list},
|
||||
#ifdef HAVE_LAKKA
|
||||
{MENU_ENUM_LABEL_EJECT_DISC, action_ok_push_eject_disc},
|
||||
#endif
|
||||
{MENU_ENUM_LABEL_LOAD_DISC, action_ok_push_load_disc_list},
|
||||
{MENU_ENUM_LABEL_SHADER_OPTIONS, action_ok_push_default},
|
||||
{MENU_ENUM_LABEL_CORE_OPTIONS, action_ok_push_core_options_list},
|
||||
@ -8045,6 +8069,12 @@ static int menu_cbs_init_bind_ok_compare_type(menu_file_list_cbs_t *cbs,
|
||||
{
|
||||
BIND_ACTION_OK(cbs, action_ok_dump_cdrom);
|
||||
}
|
||||
#ifdef HAVE_LAKKA
|
||||
else if (type == MENU_SET_EJECT_DISC)
|
||||
{
|
||||
BIND_ACTION_OK(cbs, action_ok_eject_disc);
|
||||
}
|
||||
#endif
|
||||
else if (type == MENU_SET_CDROM_INFO)
|
||||
{
|
||||
BIND_ACTION_OK(cbs, action_ok_cdrom_info_list);
|
||||
|
@ -411,6 +411,9 @@ DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_sideload_core_list, MENU_
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_core_manager_list, MENU_ENUM_SUBLABEL_CORE_MANAGER_LIST)
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_load_disc, MENU_ENUM_SUBLABEL_LOAD_DISC)
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_dump_disc, MENU_ENUM_SUBLABEL_DUMP_DISC)
|
||||
#ifdef HAVE_LAKKA
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_eject_disc, MENU_ENUM_SUBLABEL_EJECT_DISC)
|
||||
#endif
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_content_list, MENU_ENUM_SUBLABEL_LOAD_CONTENT_LIST)
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_content_special, MENU_ENUM_SUBLABEL_LOAD_CONTENT_SPECIAL)
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_load_content_history, MENU_ENUM_SUBLABEL_LOAD_CONTENT_HISTORY)
|
||||
@ -803,6 +806,9 @@ DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_menu_show_load_core,
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_menu_show_load_content, MENU_ENUM_SUBLABEL_MENU_SHOW_LOAD_CONTENT)
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_menu_show_load_disc, MENU_ENUM_SUBLABEL_MENU_SHOW_LOAD_DISC)
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_menu_show_dump_disc, MENU_ENUM_SUBLABEL_MENU_SHOW_DUMP_DISC)
|
||||
#ifdef HAVE_LAKKA
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_menu_show_eject_disc, MENU_ENUM_SUBLABEL_MENU_SHOW_EJECT_DISC)
|
||||
#endif
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_menu_show_information, MENU_ENUM_SUBLABEL_MENU_SHOW_INFORMATION)
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_menu_show_configurations, MENU_ENUM_SUBLABEL_MENU_SHOW_CONFIGURATIONS)
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_menu_show_help, MENU_ENUM_SUBLABEL_MENU_SHOW_HELP)
|
||||
@ -2451,6 +2457,11 @@ int menu_cbs_init_bind_sublabel(menu_file_list_cbs_t *cbs,
|
||||
case MENU_ENUM_LABEL_DUMP_DISC:
|
||||
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_dump_disc);
|
||||
break;
|
||||
#ifdef HAVE_LAKKA
|
||||
case MENU_ENUM_LABEL_EJECT_DISC:
|
||||
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_eject_disc);
|
||||
break;
|
||||
#endif
|
||||
case MENU_ENUM_LABEL_MENU_SHOW_LOAD_CONTENT:
|
||||
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_menu_show_load_content);
|
||||
break;
|
||||
@ -2460,6 +2471,11 @@ int menu_cbs_init_bind_sublabel(menu_file_list_cbs_t *cbs,
|
||||
case MENU_ENUM_LABEL_MENU_SHOW_DUMP_DISC:
|
||||
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_menu_show_dump_disc);
|
||||
break;
|
||||
#ifdef HAVE_LAKKA
|
||||
case MENU_ENUM_LABEL_MENU_SHOW_EJECT_DISC:
|
||||
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_menu_show_eject_disc);
|
||||
break;
|
||||
#endif
|
||||
case MENU_ENUM_LABEL_MENU_SHOW_INFORMATION:
|
||||
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_menu_show_information);
|
||||
break;
|
||||
|
@ -602,6 +602,9 @@ DEFAULT_TITLE_MACRO(action_get_crt_switchres_settings_list, MENU_ENUM_LABEL_
|
||||
DEFAULT_TITLE_MACRO(action_get_configuration_settings_list, MENU_ENUM_LABEL_VALUE_CONFIGURATION_SETTINGS)
|
||||
DEFAULT_TITLE_MACRO(action_get_load_disc_list, MENU_ENUM_LABEL_VALUE_LOAD_DISC)
|
||||
DEFAULT_TITLE_MACRO(action_get_dump_disc_list, MENU_ENUM_LABEL_VALUE_DUMP_DISC)
|
||||
#ifdef HAVE_LAKKA
|
||||
DEFAULT_TITLE_MACRO(action_get_eject_disc, MENU_ENUM_LABEL_VALUE_EJECT_DISC)
|
||||
#endif
|
||||
DEFAULT_TITLE_MACRO(action_get_saving_settings_list, MENU_ENUM_LABEL_VALUE_SAVING_SETTINGS)
|
||||
DEFAULT_TITLE_MACRO(action_get_logging_settings_list, MENU_ENUM_LABEL_VALUE_LOGGING_SETTINGS)
|
||||
DEFAULT_TITLE_MACRO(action_get_frame_throttle_settings_list, MENU_ENUM_LABEL_VALUE_FRAME_THROTTLE_SETTINGS)
|
||||
@ -930,6 +933,9 @@ static int menu_cbs_init_bind_title_compare_label(menu_file_list_cbs_t *cbs,
|
||||
{MENU_ENUM_LABEL_DEFERRED_CORE_RESTORE_BACKUP_LIST, action_get_title_deferred_core_restore_backup_list},
|
||||
{MENU_ENUM_LABEL_DEFERRED_CORE_DELETE_BACKUP_LIST, action_get_title_deferred_core_delete_backup_list},
|
||||
{MENU_ENUM_LABEL_DEFERRED_DUMP_DISC_LIST, action_get_dump_disc_list},
|
||||
#ifdef HAVE_LAKKA
|
||||
{MENU_ENUM_LABEL_DEFERRED_EJECT_DISC, action_get_eject_disc},
|
||||
#endif
|
||||
{MENU_ENUM_LABEL_DEFERRED_LOAD_DISC_LIST, action_get_load_disc_list},
|
||||
{MENU_ENUM_LABEL_DEFERRED_CONFIGURATION_SETTINGS_LIST, action_get_configuration_settings_list },
|
||||
{MENU_ENUM_LABEL_DEFERRED_SAVING_SETTINGS_LIST, action_get_saving_settings_list},
|
||||
|
@ -9302,6 +9302,17 @@ static int materialui_list_push(void *data, void *userdata,
|
||||
false);
|
||||
}
|
||||
|
||||
#ifdef HAVE_LAKKA
|
||||
if (settings->bools.menu_show_eject_disc)
|
||||
{
|
||||
MENU_DISPLAYLIST_PARSE_SETTINGS_ENUM(
|
||||
info->list,
|
||||
MENU_ENUM_LABEL_EJECT_DISC,
|
||||
PARSE_ACTION,
|
||||
false);
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(HAVE_NETWORKING)
|
||||
#ifdef HAVE_LAKKA
|
||||
MENU_DISPLAYLIST_PARSE_SETTINGS_ENUM(
|
||||
@ -10082,6 +10093,9 @@ static void materialui_list_insert(
|
||||
{
|
||||
case MENU_SET_CDROM_INFO:
|
||||
case MENU_SET_CDROM_LIST:
|
||||
#ifdef HAVE_LAKKA
|
||||
case MENU_SET_EJECT_DISC:
|
||||
#endif
|
||||
case MENU_SET_LOAD_CDROM_LIST:
|
||||
node->icon_texture_index = MUI_TEXTURE_DISK;
|
||||
node->icon_type = MUI_ICON_TYPE_INTERNAL;
|
||||
@ -10362,6 +10376,9 @@ static void materialui_list_insert(
|
||||
string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DISK_IMAGE_APPEND)) ||
|
||||
string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_LOAD_DISC)) ||
|
||||
string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DUMP_DISC)) ||
|
||||
#ifdef HAVE_LAKKA
|
||||
string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_EJECT_DISC)) ||
|
||||
#endif
|
||||
string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DISC_INFORMATION)) ||
|
||||
string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DISK_OPTIONS)) ||
|
||||
string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DISK_INDEX))
|
||||
|
@ -1602,6 +1602,9 @@ static uintptr_t ozone_entries_icon_get_texture(ozone_handle_t *ozone,
|
||||
{
|
||||
case MENU_ENUM_LABEL_LOAD_DISC:
|
||||
case MENU_ENUM_LABEL_DUMP_DISC:
|
||||
#ifdef HAVE_LAKKA
|
||||
case MENU_ENUM_LABEL_EJECT_DISC:
|
||||
#endif
|
||||
case MENU_ENUM_LABEL_DISC_INFORMATION:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_DISC];
|
||||
case MENU_ENUM_LABEL_CORE_OPTIONS:
|
||||
@ -1931,6 +1934,9 @@ static uintptr_t ozone_entries_icon_get_texture(ozone_handle_t *ozone,
|
||||
{
|
||||
case MENU_SET_CDROM_INFO:
|
||||
case MENU_SET_CDROM_LIST:
|
||||
#ifdef HAVE_LAKKA
|
||||
case MENU_SET_EJECT_DISC:
|
||||
#endif
|
||||
case MENU_SET_LOAD_CDROM_LIST:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_DISC];
|
||||
case FILE_TYPE_DIRECTORY:
|
||||
@ -7857,6 +7863,17 @@ static int ozone_list_push(void *data, void *userdata,
|
||||
false);
|
||||
}
|
||||
|
||||
#ifdef HAVE_LAKKA
|
||||
if (settings->bools.menu_show_eject_disc)
|
||||
{
|
||||
MENU_DISPLAYLIST_PARSE_SETTINGS_ENUM(
|
||||
info->list,
|
||||
MENU_ENUM_LABEL_EJECT_DISC,
|
||||
PARSE_ACTION,
|
||||
false);
|
||||
}
|
||||
#endif
|
||||
|
||||
MENU_DISPLAYLIST_PARSE_SETTINGS_ENUM(
|
||||
info->list,
|
||||
MENU_ENUM_LABEL_ADD_CONTENT_LIST,
|
||||
|
@ -2638,6 +2638,9 @@ static uintptr_t xmb_icon_get_id(xmb_handle_t *xmb,
|
||||
|
||||
case MENU_ENUM_LABEL_LOAD_DISC:
|
||||
case MENU_ENUM_LABEL_DUMP_DISC:
|
||||
#ifdef HAVE_LAKKA
|
||||
case MENU_ENUM_LABEL_EJECT_DISC:
|
||||
#endif
|
||||
case MENU_ENUM_LABEL_DISC_INFORMATION:
|
||||
return xmb->textures.list[XMB_TEXTURE_DISC];
|
||||
|
||||
@ -6882,6 +6885,9 @@ static int xmb_list_push(void *data, void *userdata,
|
||||
bool menu_show_configurations = settings->bools.menu_show_configurations;
|
||||
bool menu_show_load_disc = settings->bools.menu_show_load_disc;
|
||||
bool menu_show_dump_disc = settings->bools.menu_show_dump_disc;
|
||||
#ifdef HAVE_LAKKA
|
||||
bool menu_show_eject_disc = settings->bools.menu_show_eject_disc;
|
||||
#endif
|
||||
bool menu_show_shutdown = settings->bools.menu_show_shutdown;
|
||||
bool menu_show_reboot = settings->bools.menu_show_reboot;
|
||||
#if !defined(IOS)
|
||||
@ -7023,6 +7029,17 @@ static int xmb_list_push(void *data, void *userdata,
|
||||
false);
|
||||
}
|
||||
|
||||
#ifdef HAVE_LAKKA
|
||||
if (menu_show_eject_disc)
|
||||
{
|
||||
MENU_DISPLAYLIST_PARSE_SETTINGS_ENUM(
|
||||
info->list,
|
||||
MENU_ENUM_LABEL_EJECT_DISC,
|
||||
PARSE_ACTION,
|
||||
false);
|
||||
}
|
||||
#endif
|
||||
|
||||
MENU_DISPLAYLIST_PARSE_SETTINGS_ENUM(
|
||||
info->list,
|
||||
MENU_ENUM_LABEL_ADD_CONTENT_LIST,
|
||||
|
@ -198,6 +198,9 @@ enum
|
||||
ACTION_OK_DL_MIDI_SETTINGS_LIST,
|
||||
ACTION_OK_DL_LOAD_DISC_LIST,
|
||||
ACTION_OK_DL_DUMP_DISC_LIST,
|
||||
#ifdef HAVE_LAKKA
|
||||
ACTION_OK_DL_EJECT_DISC,
|
||||
#endif
|
||||
ACTION_OK_DL_BROWSE_URL_START,
|
||||
ACTION_OK_DL_CONTENT_SETTINGS,
|
||||
ACTION_OK_DL_CDROM_INFO_DETAIL_LIST,
|
||||
|
@ -8211,6 +8211,9 @@ unsigned menu_displaylist_build_list(
|
||||
{MENU_ENUM_LABEL_MENU_SHOW_LOAD_CONTENT, PARSE_ONLY_BOOL, true },
|
||||
{MENU_ENUM_LABEL_MENU_SHOW_LOAD_DISC, PARSE_ONLY_BOOL, true },
|
||||
{MENU_ENUM_LABEL_MENU_SHOW_DUMP_DISC, PARSE_ONLY_BOOL, true },
|
||||
#ifdef HAVE_LAKKA
|
||||
{MENU_ENUM_LABEL_MENU_SHOW_EJECT_DISC, PARSE_ONLY_BOOL, true },
|
||||
#endif
|
||||
{MENU_ENUM_LABEL_MENU_SHOW_ONLINE_UPDATER, PARSE_ONLY_BOOL, true },
|
||||
{MENU_ENUM_LABEL_MENU_SHOW_CORE_UPDATER, PARSE_ONLY_BOOL, true },
|
||||
{MENU_ENUM_LABEL_MENU_SHOW_LEGACY_THUMBNAIL_UPDATER, PARSE_ONLY_BOOL, true },
|
||||
@ -9537,6 +9540,14 @@ unsigned menu_displaylist_build_list(
|
||||
MENU_SET_CDROM_LIST);
|
||||
#endif
|
||||
break;
|
||||
#ifdef HAVE_LAKKA
|
||||
case DISPLAYLIST_EJECT_DISC:
|
||||
#ifdef HAVE_CDROM
|
||||
count = menu_displaylist_parse_disc_info(list,
|
||||
MENU_SET_EJECT_DISC);
|
||||
#endif /* HAVE_CDROM */
|
||||
break;
|
||||
#endif /* HAVE_LAKKA */
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@ -11841,6 +11852,9 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
case DISPLAYLIST_BROWSE_URL_LIST:
|
||||
case DISPLAYLIST_DISC_INFO:
|
||||
case DISPLAYLIST_DUMP_DISC:
|
||||
#ifdef HAVE_LAKKA
|
||||
case DISPLAYLIST_EJECT_DISC:
|
||||
#endif
|
||||
case DISPLAYLIST_LOAD_CONTENT_LIST:
|
||||
case DISPLAYLIST_LOAD_CONTENT_SPECIAL:
|
||||
case DISPLAYLIST_OPTIONS_REMAPPINGS:
|
||||
@ -11884,6 +11898,9 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
break;
|
||||
case DISPLAYLIST_DISC_INFO:
|
||||
case DISPLAYLIST_DUMP_DISC:
|
||||
#ifdef HAVE_LAKKA
|
||||
case DISPLAYLIST_EJECT_DISC:
|
||||
#endif
|
||||
case DISPLAYLIST_MENU_SETTINGS_LIST:
|
||||
case DISPLAYLIST_ADD_CONTENT_LIST:
|
||||
case DISPLAYLIST_DROPDOWN_LIST_RESOLUTION:
|
||||
@ -11942,6 +11959,9 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
{
|
||||
case DISPLAYLIST_DISC_INFO:
|
||||
case DISPLAYLIST_DUMP_DISC:
|
||||
#ifdef HAVE_LAKKA
|
||||
case DISPLAYLIST_EJECT_DISC:
|
||||
#endif
|
||||
info->need_clear = true;
|
||||
break;
|
||||
default:
|
||||
@ -12344,6 +12364,16 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
PARSE_ACTION, false) == 0)
|
||||
count++;
|
||||
}
|
||||
|
||||
#ifdef HAVE_LAKKA
|
||||
if (settings->bools.menu_show_eject_disc)
|
||||
{
|
||||
if (MENU_DISPLAYLIST_PARSE_SETTINGS_ENUM(info->list,
|
||||
MENU_ENUM_LABEL_EJECT_DISC,
|
||||
PARSE_ACTION, false) == 0)
|
||||
count++;
|
||||
}
|
||||
#endif /* HAVE_LAKKA */
|
||||
#endif
|
||||
|
||||
#if defined(HAVE_RGUI) || defined(HAVE_MATERIALUI)
|
||||
|
@ -134,6 +134,9 @@ enum menu_displaylist_ctl_state
|
||||
DISPLAYLIST_VIDEO_FONTS,
|
||||
DISPLAYLIST_LOAD_DISC,
|
||||
DISPLAYLIST_DUMP_DISC,
|
||||
#ifdef HAVE_LAKKA
|
||||
DISPLAYLIST_EJECT_DISC,
|
||||
#endif
|
||||
DISPLAYLIST_OVERLAYS,
|
||||
#ifdef HAVE_VIDEO_LAYOUT
|
||||
DISPLAYLIST_VIDEO_LAYOUT_PATH,
|
||||
|
@ -240,6 +240,7 @@ enum menu_settings_type
|
||||
|
||||
MENU_SET_CDROM_LIST,
|
||||
MENU_SET_LOAD_CDROM_LIST,
|
||||
MENU_SET_EJECT_DISC,
|
||||
MENU_SET_CDROM_INFO,
|
||||
MENU_SETTING_ACTION_DELETE_PLAYLIST,
|
||||
MENU_SETTING_ACTION_PLAYLIST_MANAGER_RESET_CORES,
|
||||
|
@ -9044,6 +9044,16 @@ static bool setting_append_list(
|
||||
&group_info,
|
||||
&subgroup_info,
|
||||
parent_group);
|
||||
|
||||
#ifdef HAVE_LAKKA
|
||||
CONFIG_ACTION(
|
||||
list, list_info,
|
||||
MENU_ENUM_LABEL_EJECT_DISC,
|
||||
MENU_ENUM_LABEL_VALUE_EJECT_DISC,
|
||||
&group_info,
|
||||
&subgroup_info,
|
||||
parent_group);
|
||||
#endif
|
||||
}
|
||||
|
||||
string_list_free(drive_list);
|
||||
@ -16102,6 +16112,23 @@ static bool setting_append_list(
|
||||
general_write_handler,
|
||||
general_read_handler,
|
||||
SD_FLAG_NONE);
|
||||
|
||||
#ifdef HAVE_LAKKA
|
||||
CONFIG_BOOL(
|
||||
list, list_info,
|
||||
&settings->bools.menu_show_eject_disc,
|
||||
MENU_ENUM_LABEL_MENU_SHOW_EJECT_DISC,
|
||||
MENU_ENUM_LABEL_VALUE_MENU_SHOW_EJECT_DISC,
|
||||
menu_show_eject_disc,
|
||||
MENU_ENUM_LABEL_VALUE_OFF,
|
||||
MENU_ENUM_LABEL_VALUE_ON,
|
||||
&group_info,
|
||||
&subgroup_info,
|
||||
parent_group,
|
||||
general_write_handler,
|
||||
general_read_handler,
|
||||
SD_FLAG_NONE);
|
||||
#endif /* HAVE_LAKKA */
|
||||
#endif
|
||||
|
||||
CONFIG_BOOL(
|
||||
|
@ -1124,6 +1124,9 @@ enum msg_hash_enums
|
||||
MENU_LABEL(MENU_SHOW_LOAD_CONTENT),
|
||||
MENU_LABEL(MENU_SHOW_LOAD_DISC),
|
||||
MENU_LABEL(MENU_SHOW_DUMP_DISC),
|
||||
#ifdef HAVE_LAKKA
|
||||
MENU_LABEL(MENU_SHOW_EJECT_DISC),
|
||||
#endif
|
||||
MENU_LABEL(MENU_SHOW_INFORMATION),
|
||||
MENU_LABEL(MENU_SHOW_CONFIGURATIONS),
|
||||
MENU_LABEL(MENU_SHOW_HELP),
|
||||
@ -1467,6 +1470,9 @@ enum msg_hash_enums
|
||||
MENU_ENUM_LABEL_DEFERRED_CDROM_INFO_DETAIL_LIST,
|
||||
MENU_ENUM_LABEL_DEFERRED_LOAD_DISC_LIST,
|
||||
MENU_ENUM_LABEL_DEFERRED_DUMP_DISC_LIST,
|
||||
#ifdef HAVE_LAKKA
|
||||
MENU_ENUM_LABEL_DEFERRED_EJECT_DISC,
|
||||
#endif
|
||||
MENU_ENUM_LABEL_DEFERRED_REMAPPINGS_PORT_LIST,
|
||||
MENU_ENUM_LABEL_DEFERRED_DROPDOWN_BOX_LIST,
|
||||
MENU_ENUM_LABEL_DEFERRED_DROPDOWN_BOX_LIST_SPECIAL,
|
||||
@ -2232,6 +2238,9 @@ enum msg_hash_enums
|
||||
MENU_LABEL(LOAD_CONTENT_HISTORY),
|
||||
MENU_LABEL(LOAD_DISC),
|
||||
MENU_LABEL(DUMP_DISC),
|
||||
#ifdef HAVE_LAKKA
|
||||
MENU_LABEL(EJECT_DISC),
|
||||
#endif
|
||||
MENU_LABEL(NETWORK_INFORMATION),
|
||||
MENU_LABEL(SYSTEM_INFORMATION),
|
||||
MENU_LABEL(ACHIEVEMENT_LIST),
|
||||
|
Loading…
x
Reference in New Issue
Block a user