/** * menu_init: * @data : Menu context handle. * * Create and initialize menu handle. * * Returns: menu handle on success, otherwise NULL. **/ static bool menu_init(menu_handle_t *menu_data) { settings_t *settings = config_get_ptr(); if (!menu_entries_ctl(MENU_ENTRIES_CTL_INIT, NULL)) return false; if (!core_info_init_current_core()) return false; if (!menu_driver_ctl(RARCH_MENU_CTL_SHADER_INIT, NULL)) return false; if (settings->menu_show_start_screen) { menu_dialog_push_pending(true, MENU_DIALOG_WELCOME); settings->menu_show_start_screen = false; if (settings->config_save_on_exit) command_event(CMD_EVENT_MENU_SAVE_CURRENT_CONFIG, NULL); } if ( settings->bundle_assets_extract_enable && !string_is_empty(settings->path.bundle_assets_src) && !string_is_empty(settings->path.bundle_assets_dst) #ifdef IOS && menu_dialog_is_push_pending() #else && (settings->bundle_assets_extract_version_current != settings->bundle_assets_extract_last_version) #endif ) { menu_dialog_push_pending(true, MENU_DIALOG_HELP_EXTRACT); #ifdef HAVE_COMPRESSION task_push_decompress(settings->path.bundle_assets_src, settings->path.bundle_assets_dst, NULL, settings->path.bundle_assets_dst_subdir, NULL, bundle_decompressed, NULL); #endif } menu_driver_ctl(RARCH_MENU_CTL_SHADER_MANAGER_INIT, NULL); if (!menu_display_init()) return false; return true; }
void menu_dialog_show_message( enum menu_dialog_type type, enum msg_hash_enums msg) { menu_dialog_current_msg = msg; if (!menu_driver_ctl(RARCH_MENU_CTL_IS_TOGGLE, NULL)) menu_display_toggle_set_reason(MENU_TOGGLE_REASON_MESSAGE); menu_dialog_push_pending(true, type); menu_dialog_push(); }