(Menu) Make left/right work too for history list playlist entries

This commit is contained in:
twinaphex 2014-11-16 22:47:10 +01:00
parent c7ed85dadf
commit ceee48fc39

View File

@ -927,34 +927,39 @@ static int action_toggle_mainmenu(unsigned type, const char *label,
unsigned action) unsigned action)
{ {
menu_file_list_cbs_t *cbs = NULL; menu_file_list_cbs_t *cbs = NULL;
bool push_list = false; unsigned push_list = 0;
if (!driver.menu) if (!driver.menu)
return -1; return -1;
if (file_list_get_size(driver.menu->menu_list->menu_stack) == 1 if (file_list_get_size(driver.menu->menu_list->menu_stack) == 1)
&& !strcmp(driver.menu_ctx->ident, "xmb")) {
if (!strcmp(driver.menu_ctx->ident, "xmb"))
{ {
switch (action) switch (action)
{ {
case MENU_ACTION_LEFT: case MENU_ACTION_LEFT:
if (driver.menu->cat_selection_ptr == 0) if (driver.menu->cat_selection_ptr == 0)
break; break;
push_list = true; push_list = 1;
break; break;
case MENU_ACTION_RIGHT: case MENU_ACTION_RIGHT:
if (driver.menu->cat_selection_ptr == g_extern.core_info->count) if (driver.menu->cat_selection_ptr == g_extern.core_info->count)
break; break;
push_list = true; push_list = 1;
break; break;
} }
} }
}
else
push_list = 2;
cbs = (menu_file_list_cbs_t*) cbs = (menu_file_list_cbs_t*)
menu_list_get_actiondata_at_offset(driver.menu->menu_list->selection_buf, menu_list_get_actiondata_at_offset(driver.menu->menu_list->selection_buf,
driver.menu->selection_ptr); driver.menu->selection_ptr);
if (push_list) switch (push_list)
{ {
case 1:
file_list_copy(driver.menu->menu_list->selection_buf, driver.menu->menu_list->selection_buf_old); file_list_copy(driver.menu->menu_list->selection_buf, driver.menu->menu_list->selection_buf_old);
file_list_copy(driver.menu->menu_list->menu_stack, driver.menu->menu_list->menu_stack_old); file_list_copy(driver.menu->menu_list->menu_stack, driver.menu->menu_list->menu_stack_old);
driver.menu->selection_ptr_old = driver.menu->selection_ptr; driver.menu->selection_ptr_old = driver.menu->selection_ptr;
@ -968,6 +973,13 @@ static int action_toggle_mainmenu(unsigned type, const char *label,
"", "",
"", "",
0); 0);
break;
case 2:
action_toggle_scroll(0, "", action);
break;
case 0:
default:
break;
} }
return 0; return 0;