Merge pull request #1186 from lakkatv/xmb

(XMB) Prevent list highlighting
This commit is contained in:
Twinaphex 2014-10-23 22:25:58 +02:00
commit 3e8db7d9f0
2 changed files with 12 additions and 20 deletions

View File

@ -224,11 +224,6 @@ static int menu_settings_iterate(unsigned action,
break; break;
case MENU_ACTION_CANCEL: case MENU_ACTION_CANCEL:
#ifdef HAVE_XMB
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);
driver.menu->selection_ptr_old = driver.menu->selection_ptr;
#endif
apply_deferred_settings(); apply_deferred_settings();
menu_list_pop_stack(driver.menu->menu_list); menu_list_pop_stack(driver.menu->menu_list);
break; break;
@ -237,11 +232,6 @@ static int menu_settings_iterate(unsigned action,
0, driver.menu->selection_ptr); 0, driver.menu->selection_ptr);
break; break;
case MENU_ACTION_OK: case MENU_ACTION_OK:
#ifdef HAVE_XMB
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);
driver.menu->selection_ptr_old = driver.menu->selection_ptr;
#endif
if (cbs && cbs->action_ok) if (cbs && cbs->action_ok)
return cbs->action_ok(path, label, type, driver.menu->selection_ptr); return cbs->action_ok(path, label, type, driver.menu->selection_ptr);
/* fall-through */ /* fall-through */
@ -646,20 +636,10 @@ static int menu_common_iterate(unsigned action)
break; break;
case MENU_ACTION_CANCEL: case MENU_ACTION_CANCEL:
#ifdef HAVE_XMB
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);
driver.menu->selection_ptr_old = driver.menu->selection_ptr;
#endif
menu_list_pop_stack(driver.menu->menu_list); menu_list_pop_stack(driver.menu->menu_list);
break; break;
case MENU_ACTION_OK: case MENU_ACTION_OK:
#ifdef HAVE_XMB
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);
driver.menu->selection_ptr_old = driver.menu->selection_ptr;
#endif
ret = menu_action_ok(cbs); ret = menu_action_ok(cbs);
break; break;

View File

@ -164,6 +164,11 @@ void menu_list_pop_stack(menu_list_t *list)
if (file_list_get_size(list->menu_stack) > 1) if (file_list_get_size(list->menu_stack) > 1)
{ {
#ifdef HAVE_XMB
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);
driver.menu->selection_ptr_old = driver.menu->selection_ptr;
#endif
menu_list_pop(list->menu_stack, &driver.menu->selection_ptr); menu_list_pop(list->menu_stack, &driver.menu->selection_ptr);
driver.menu->need_refresh = true; driver.menu->need_refresh = true;
} }
@ -278,6 +283,13 @@ void menu_list_push_stack_refresh(menu_list_t *list,
{ {
if (!list) if (!list)
return; return;
#ifdef HAVE_XMB
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);
driver.menu->selection_ptr_old = driver.menu->selection_ptr;
#endif
menu_list_push_stack(list, path, label, type, directory_ptr); menu_list_push_stack(list, path, label, type, directory_ptr);
menu_navigation_clear(driver.menu, true); menu_navigation_clear(driver.menu, true);
driver.menu->need_refresh = true; driver.menu->need_refresh = true;