Create separate menu_iterate_main_render

This commit is contained in:
twinaphex 2015-08-18 03:59:04 +02:00
parent f190230f85
commit 9ff167c1b9
4 changed files with 29 additions and 15 deletions

View File

@ -101,8 +101,7 @@ bool menu_load_content(enum rarch_core_type type)
disp->msg_force = true;
menu_iterate_main(MENU_ACTION_NOOP);
menu_display_fb();
menu_iterate_main_render();
if (!(main_load_content(0, NULL, NULL, menu_environment_get,
driver->frontend_ctx->process_args)))
@ -362,11 +361,6 @@ int menu_iterate(retro_input_t input,
ret = menu_iterate_main(action);
if (menu_driver_alive() && !rarch_main_is_idle())
menu_display_fb();
menu_driver_set_texture();
if (ret)
return -1;

View File

@ -179,6 +179,8 @@ int menu_iterate(retro_input_t input,
int menu_iterate_main(unsigned action);
int menu_iterate_main_render(void);
/**
* menu_free:
* @menu : Menu handle.

View File

@ -512,6 +512,23 @@ int menu_iterate_main(unsigned action)
break;
}
if (menu->state.do_pop_stack && action == MENU_ACTION_OK)
menu_list_pop(menu_list->menu_stack, menu->state.pop_selected);
if (menu->state.do_post_iterate)
menu_input_post_iterate(&ret, action);
return ret;
}
int menu_iterate_main_render(void)
{
const menu_ctx_driver_t *driver = menu_ctx_driver_get_ptr();
menu_handle_t *menu = menu_driver_get_ptr();
if (!menu)
return -1;
if (menu->state.fb_is_dirty != menu->state.do_messagebox)
menu->state.fb_is_dirty = true;
@ -526,18 +543,17 @@ int menu_iterate_main(unsigned action)
if (ui->render_messagebox && menu->state.msg[0] != '\0')
ui->render_messagebox(menu->state.msg);
}
if (menu->state.do_pop_stack && action == MENU_ACTION_OK)
menu_list_pop(menu_list->menu_stack, menu->state.pop_selected);
if (menu->state.do_post_iterate)
menu_input_post_iterate(&ret, action);
if (menu->state.do_render)
{
if (driver->render)
driver->render();
}
return ret;
if (menu_driver_alive() && !rarch_main_is_idle())
menu_display_fb();
menu_driver_set_texture();
return 0;
}

View File

@ -214,6 +214,8 @@ static void rarch_main_data_menu_iterate(void)
if (rarch_main_data_db_pending_scan_finished())
menu_environment_cb(MENU_ENVIRON_RESET_HORIZONTAL_LIST, NULL);
#endif
menu_iterate_main_render();
}
#endif