From f4b6dcb6a198a8e4f902cefbcd850b96283e6b60 Mon Sep 17 00:00:00 2001 From: Alfrix Date: Sat, 17 Nov 2018 10:34:37 -0300 Subject: [PATCH 1/4] Add missing assets warning to xmb --- intl/msg_hash_us.h | 121 ++++++++++++++++++++++++++------------------- menu/drivers/xmb.c | 22 +++++++-- msg_hash.h | 2 + 3 files changed, 89 insertions(+), 56 deletions(-) diff --git a/intl/msg_hash_us.h b/intl/msg_hash_us.h index e4d584270c..56b07c6a2f 100644 --- a/intl/msg_hash_us.h +++ b/intl/msg_hash_us.h @@ -2910,45 +2910,45 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_TIMEDATE_ENABLE, "Show date / time" ) - MSG_HASH( - MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE, - "Style of date / time" +MSG_HASH( + MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE, + "Style of date / time" ) - MSG_HASH( - MENU_ENUM_SUBLABEL_TIMEDATE_STYLE, - "Changes the style current date and/or time is shown inside the menu." +MSG_HASH( + MENU_ENUM_SUBLABEL_TIMEDATE_STYLE, + "Changes the style current date and/or time is shown inside the menu." ) - MSG_HASH( - MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE_YMD_HMS, - "YYYY-MM-DD HH:MM:SS" +MSG_HASH( + MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE_YMD_HMS, + "YYYY-MM-DD HH:MM:SS" ) - MSG_HASH( - MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE_YMD_HM, - "YYYY-MM-DD HH:MM" +MSG_HASH( + MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE_YMD_HM, + "YYYY-MM-DD HH:MM" ) - MSG_HASH( - MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE_MDYYYY, - "MM-DD-YYYY HH:MM" +MSG_HASH( + MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE_MDYYYY, + "MM-DD-YYYY HH:MM" ) - MSG_HASH( - MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE_HMS, - "HH:MM:SS" +MSG_HASH( + MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE_HMS, + "HH:MM:SS" ) - MSG_HASH( - MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE_HM, - "HH:MM" +MSG_HASH( + MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE_HM, + "HH:MM" ) - MSG_HASH( - MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE_DM_HM, - "DD/MM HH:MM" +MSG_HASH( + MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE_DM_HM, + "DD/MM HH:MM" ) - MSG_HASH( - MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE_MD_HM, - "MM/DD HH:MM" +MSG_HASH( + MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE_MD_HM, + "MM/DD HH:MM" ) - MSG_HASH( - MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE_AM_PM, - "HH:MM:SS (AM/PM)" + MSG_HASH( + MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE_AM_PM, + "HH:MM:SS (AM/PM)" ) MSG_HASH( MENU_ENUM_LABEL_VALUE_TITLE_COLOR, @@ -4995,19 +4995,20 @@ MSG_HASH( MSG_HASH( MENU_ENUM_SUBLABEL_CHEAT_APPLY_AFTER_TOGGLE, "Apply cheat immediately after toggling." -) + ) MSG_HASH( MENU_ENUM_SUBLABEL_CHEAT_APPLY_AFTER_LOAD, "Auto-apply cheats when game loads." -) + ) MSG_HASH( MENU_ENUM_SUBLABEL_CHEAT_REPEAT_COUNT, - "The number of times the cheat will be applied. Use with the other two Iteration options to affect large areas of memory." + "The number of times the cheat will be applied.\n" + "Use with the other two Iteration options to affect large areas of memory." ) MSG_HASH( MENU_ENUM_SUBLABEL_CHEAT_REPEAT_ADD_TO_ADDRESS, "After each 'Number of Iterations' the Memory Address will be increased by this number times the 'Memory Search Size'." -) + ) MSG_HASH( MENU_ENUM_SUBLABEL_CHEAT_REPEAT_ADD_TO_VALUE, "After each 'Number of Iterations' the Value will be increased by this amount." @@ -6922,15 +6923,15 @@ MSG_HASH( MSG_HASH( MENU_ENUM_LABEL_VALUE_CHEAT_REPEAT_COUNT, "Number of Iterations" -) + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_CHEAT_REPEAT_ADD_TO_VALUE, "Value Increase Each Iteration" -) + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_CHEAT_REPEAT_ADD_TO_ADDRESS, "Address Increase Each Iteration" -) + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_CHEAT_ADD_NEW_AFTER, "Add New Cheat After This One" @@ -7731,20 +7732,34 @@ MSG_HASH( MENU_ENUM_SUBLABEL_OZONE_MENU_COLOR_THEME, "Select a different color theme." ) -MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_USE_PREFERRED_SYSTEM_COLOR_THEME, - "Use preferred system color theme") -MSG_HASH(MENU_ENUM_SUBLABEL_MENU_USE_PREFERRED_SYSTEM_COLOR_THEME, - "Use your operating system's color theme (if any) - overrides theme settings.") -MSG_HASH(MSG_RESAMPLER_QUALITY_LOWEST, - "Lowest") -MSG_HASH(MSG_RESAMPLER_QUALITY_LOWER, - "Lower") -MSG_HASH(MSG_RESAMPLER_QUALITY_NORMAL, - "Normal") -MSG_HASH(MSG_RESAMPLER_QUALITY_HIGHER, - "Higher") -MSG_HASH(MSG_RESAMPLER_QUALITY_HIGHEST, - "Highest") +MSG_HASH( + MENU_ENUM_LABEL_VALUE_MENU_USE_PREFERRED_SYSTEM_COLOR_THEME, + "Use preferred system color theme" + ) +MSG_HASH( + MENU_ENUM_SUBLABEL_MENU_USE_PREFERRED_SYSTEM_COLOR_THEME, + "Use your operating system's color theme (if any) - overrides theme settings." + ) +MSG_HASH( + MSG_RESAMPLER_QUALITY_LOWEST, + "Lowest" + ) +MSG_HASH( + MSG_RESAMPLER_QUALITY_LOWER, + "Lower" + ) +MSG_HASH( + MSG_RESAMPLER_QUALITY_NORMAL, + "Normal" + ) +MSG_HASH( + MSG_RESAMPLER_QUALITY_HIGHER, + "Higher" + ) +MSG_HASH( + MSG_RESAMPLER_QUALITY_HIGHEST, + "Highest" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_NO_MUSIC_AVAILABLE, "No music available." @@ -7761,3 +7776,7 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_NO_FAVORITES_AVAILABLE, "No favorites available." ) +MSG_HASH( + MSG_MISSING_ASSETS, + "Warning: Some assets are missing, use the Online Updater if available" + ) \ No newline at end of file diff --git a/menu/drivers/xmb.c b/menu/drivers/xmb.c index 66e02c18d2..51748cf1c5 100755 --- a/menu/drivers/xmb.c +++ b/menu/drivers/xmb.c @@ -4924,11 +4924,8 @@ static const char *xmb_texture_path(unsigned id) if (!filestream_exists(icon_fullpath)) { - /* If the icon doesn't exist at least try to return the subsetting icon*/ - if (id == XMB_TEXTURE_DIALOG_SLICE || id == XMB_TEXTURE_KEY_HOVER || id == XMB_TEXTURE_KEY_HOVER) - return NULL; - else - return "subsetting.png"; + RARCH_WARN("[XMB] Asset missing: %s\n", icon_fullpath); + return NULL; } else return icon_name; @@ -4939,9 +4936,20 @@ static void xmb_context_reset_textures( xmb_handle_t *xmb, const char *iconpath) { unsigned i; + bool missing_assets = false; for (i = 0; i < XMB_TEXTURE_LAST; i++) + { + if (xmb_texture_path(i) == NULL) + { + missing_assets = true; + /* If the icon doesn't exist at least try to return the subsetting icon*/ + if (!(i == XMB_TEXTURE_DIALOG_SLICE || i == XMB_TEXTURE_KEY_HOVER || i == XMB_TEXTURE_KEY_HOVER)) + menu_display_reset_textures_list(xmb_texture_path(XMB_TEXTURE_SUBSETTING), iconpath, &xmb->textures.list[i], TEXTURE_FILTER_MIPMAP_LINEAR); + continue; + } menu_display_reset_textures_list(xmb_texture_path(i), iconpath, &xmb->textures.list[i], TEXTURE_FILTER_MIPMAP_LINEAR); + } menu_display_allocate_white_texture(); @@ -4986,6 +4994,10 @@ static void xmb_context_reset_textures( xmb->netplay_tab_node.alpha = xmb->categories_active_alpha; xmb->netplay_tab_node.zoom = xmb->categories_active_zoom; #endif + + if (missing_assets) + runloop_msg_queue_push(msg_hash_to_str(MSG_MISSING_ASSETS), 1, 256, false); + } static void xmb_context_reset_background(const char *iconpath) diff --git a/msg_hash.h b/msg_hash.h index c343242314..08fba9705c 100644 --- a/msg_hash.h +++ b/msg_hash.h @@ -421,6 +421,8 @@ enum msg_hash_enums MSG_RUNAHEAD_FAILED_TO_SAVE_STATE, MSG_RUNAHEAD_FAILED_TO_LOAD_STATE, MSG_RUNAHEAD_FAILED_TO_CREATE_SECONDARY_INSTANCE, + MSG_MISSING_ASSETS, + MENU_LABEL(STREAMING_TITLE), MENU_LABEL(STREAMING_MODE), MENU_LABEL(VIDEO_RECORD_QUALITY), From 2400da6129ff2080a8cabfe36ef1eb46d833df85 Mon Sep 17 00:00:00 2001 From: Alfrix Date: Sat, 17 Nov 2018 10:35:20 -0300 Subject: [PATCH 2/4] Ozone: Localize and log asset warning --- menu/drivers/ozone.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/menu/drivers/ozone.c b/menu/drivers/ozone.c index ac4acce042..d9358bd68b 100644 --- a/menu/drivers/ozone.c +++ b/menu/drivers/ozone.c @@ -2122,10 +2122,11 @@ static void ozone_context_reset(void *data, bool is_threaded) ozone->animations.list_alpha = 1.0f; /* Missing assets message */ - /* TODO Localize */ if (!ozone->has_all_assets) - runloop_msg_queue_push("Some assets are missing - please update them", 1, 256, false); - + { + RARCH_WARN("[OZONE] Assets missing\n"); + runloop_msg_queue_push(msg_hash_to_str(MSG_MISSING_ASSETS), 1, 256, false); + } ozone_restart_cursor_animation(ozone); } } From cabcf490bd4a15dbdf8ca4439cb86ef4742c0995 Mon Sep 17 00:00:00 2001 From: Alfrix Date: Sat, 17 Nov 2018 10:35:42 -0300 Subject: [PATCH 3/4] Update Spanish --- intl/msg_hash_es.h | 133 ++++++++++++++++++++++++++++++++++++--------- 1 file changed, 107 insertions(+), 26 deletions(-) diff --git a/intl/msg_hash_es.h b/intl/msg_hash_es.h index acbef69d97..19ac3b8b90 100644 --- a/intl/msg_hash_es.h +++ b/intl/msg_hash_es.h @@ -1,3 +1,29 @@ +#ifdef HAVE_LAKKA_SWITCH +MSG_HASH( + MENU_ENUM_LABEL_VALUE_SWITCH_GPU_PROFILE, + "GPU Overclock" + ) +MSG_HASH( + MENU_ENUM_SUBLABEL_SWITCH_GPU_PROFILE, + "Acelera el procesador de video" + ) + MSG_HASH( + MENU_ENUM_LABEL_VALUE_SWITCH_BACKLIGHT_CONTROL, + "Brillo de pantalla" + ) +MSG_HASH( + MENU_ENUM_SUBLABEL_SWITCH_BACKLIGHT_CONTROL, + "Ajusta el brillo de la pantalla" + ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_SWITCH_CPU_PROFILE, + "CPU Overclock" + ) +MSG_HASH( + MENU_ENUM_SUBLABEL_SWITCH_CPU_PROFILE, + "Acelera el procesador" + ) +#endif MSG_HASH( MSG_COMPILER, "Compilador" @@ -8,7 +34,7 @@ MSG_HASH( ) MSG_HASH( MSG_NATIVE, - "Native") + "Nativo") MSG_HASH( MSG_DEVICE_DISCONNECTED_FROM_PORT, "Dispositivo desconectado del puerto" @@ -1489,6 +1515,10 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_LANG_ARABIC, "Árabe" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_LANG_GREEK, + "Griego" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_LEFT_ANALOG, "Analógico izquierdo" @@ -2880,6 +2910,14 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_TIMEDATE_ENABLE, "Mostrar fecha y hora" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_TIMEDATE_STYLE, + "Estilo de fecha y hora" + ) +MSG_HASH( + MENU_ENUM_SUBLABEL_TIMEDATE_STYLE, + "Cambia la forma en que se muestra la fecha y hora" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_TITLE_COLOR, "Color de títulos del menú" @@ -4930,6 +4968,19 @@ MSG_HASH( MENU_ENUM_SUBLABEL_CHEAT_APPLY_AFTER_LOAD, "Auto-aplicar los trucos después que el juego cargue" ) +MSG_HASH( + MENU_ENUM_SUBLABEL_CHEAT_REPEAT_COUNT, + "La cantidad de veces que el truco será aplicado.\n" + "Usar junto a las otras dos optionces de iteración para afectar regiones grandes de memoria" + ) +MSG_HASH( + MENU_ENUM_SUBLABEL_CHEAT_REPEAT_ADD_TO_ADDRESS, + "Después de cada 'Número de iteraciones' la dirección de memoria será incrementada este número multiplicado por 'Tamaño de búsqueda de memoria'" + ) +MSG_HASH( + MENU_ENUM_SUBLABEL_CHEAT_REPEAT_ADD_TO_VALUE, + "Después de cada 'Número de iteraciones' el Valor será incrementado esta cantidad" + ) MSG_HASH( MENU_ENUM_SUBLABEL_REWIND_GRANULARITY, "Rebobinar un determinado número de frames a la vez, para aumentar la velocidad del rebobinado" @@ -6378,7 +6429,7 @@ MSG_HASH( ) MSG_HASH( MENU_ENUM_LABEL_VALUE_QT_MENU_VIEW_OPTIONS_THEME_SYSTEM_DEFAULT, - "" + "" ) MSG_HASH( MENU_ENUM_LABEL_VALUE_QT_MENU_VIEW_OPTIONS_THEME_DARK, @@ -6837,6 +6888,18 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_CHEAT_RUMBLE_SECONDARY_DURATION, "Duración (ms) de la vibración secundaria" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_CHEAT_REPEAT_COUNT, + "Número de iteraciones" + ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_CHEAT_REPEAT_ADD_TO_VALUE, + "Incrementar Valor cada iteración" + ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_CHEAT_REPEAT_ADD_TO_ADDRESS, + "Incrementar Dirección cada iteración" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_CHEAT_ADD_NEW_AFTER, "Agregar nuevo truco después de este" @@ -7607,15 +7670,15 @@ MSG_HASH( ) MSG_HASH( MENU_ENUM_LABEL_VALUE_INPUT_SPLIT_JOYCON, - "Split Joy-Con" + "Joy-Con separados" ) MSG_HASH( MENU_ENUM_LABEL_VALUE_RESET_TO_DEFAULT_CONFIG, - "Reset To Defaults" + "Restablecer configuraciones" ) MSG_HASH( MENU_ENUM_SUBLABEL_RESET_TO_DEFAULT_CONFIG, - "Reset the current configuration to default values." + "Cambia la configuración acutal a los valores por defecto" ) MSG_HASH( MENU_ENUM_LABEL_VALUE_BASIC_MENU_CONTROLS_OK, @@ -7627,43 +7690,61 @@ MSG_HASH( ) MSG_HASH( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_BASIC_WHITE, - "Basic White" + "Blanco Básico" ) MSG_HASH( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_BASIC_BLACK, - "Basic Black" + "Negro Básico" ) MSG_HASH( MENU_ENUM_SUBLABEL_OZONE_MENU_COLOR_THEME, - "Select a different color theme." + "Seleccione un color diferente" + ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_MENU_USE_PREFERRED_SYSTEM_COLOR_THEME, + "Usar los colores del sistema" + ) +MSG_HASH( + MENU_ENUM_SUBLABEL_MENU_USE_PREFERRED_SYSTEM_COLOR_THEME, + "Preferir los colores del sistema operativo si están disponibles" + ) +MSG_HASH( + MSG_RESAMPLER_QUALITY_LOWEST, + "Muy Baja" + ) +MSG_HASH( + MSG_RESAMPLER_QUALITY_LOWER, + "Baja" + ) +MSG_HASH( + MSG_RESAMPLER_QUALITY_NORMAL, + "Normal" + ) +MSG_HASH( + MSG_RESAMPLER_QUALITY_HIGHER, + "Alta" + ) +MSG_HASH( + MSG_RESAMPLER_QUALITY_HIGHEST, + "Ultra" ) -MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_USE_PREFERRED_SYSTEM_COLOR_THEME, - "Use preferred system color theme") -MSG_HASH(MENU_ENUM_SUBLABEL_MENU_USE_PREFERRED_SYSTEM_COLOR_THEME, - "Use your operating system's color theme (if any) - overrides theme settings.") -MSG_HASH(MSG_RESAMPLER_QUALITY_LOWEST, - "Lowest") -MSG_HASH(MSG_RESAMPLER_QUALITY_LOWER, - "Lower") -MSG_HASH(MSG_RESAMPLER_QUALITY_NORMAL, - "Normal") -MSG_HASH(MSG_RESAMPLER_QUALITY_HIGHER, - "Higher") -MSG_HASH(MSG_RESAMPLER_QUALITY_HIGHEST, - "Highest") MSG_HASH( MENU_ENUM_LABEL_VALUE_NO_MUSIC_AVAILABLE, - "No music available." + "No hay música disponibles" ) MSG_HASH( MENU_ENUM_LABEL_VALUE_NO_VIDEOS_AVAILABLE, - "No videos available." + "No hay videos disponibles" ) MSG_HASH( MENU_ENUM_LABEL_VALUE_NO_IMAGES_AVAILABLE, - "No images available." + "No hay imágenes disponibles" ) MSG_HASH( MENU_ENUM_LABEL_VALUE_NO_FAVORITES_AVAILABLE, - "No favorites available." + "No hay favoritos disponibles" ) +MSG_HASH( + MSG_MISSING_ASSETS, + "ADVERTENCIA: Faltan recursos, use el Actualizador si está disponible" + ) \ No newline at end of file From 780d77e29e152019760892b24a27d52b4d8beeb9 Mon Sep 17 00:00:00 2001 From: Alfrix Date: Sat, 17 Nov 2018 11:47:28 -0300 Subject: [PATCH 4/4] Relax the warning in XMB --- intl/msg_hash_us.h | 2 +- menu/drivers/xmb.c | 12 +++++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/intl/msg_hash_us.h b/intl/msg_hash_us.h index 56b07c6a2f..9a4ae85a39 100644 --- a/intl/msg_hash_us.h +++ b/intl/msg_hash_us.h @@ -7778,5 +7778,5 @@ MSG_HASH( ) MSG_HASH( MSG_MISSING_ASSETS, - "Warning: Some assets are missing, use the Online Updater if available" + "Warning: Missing assets, use the Online Updater if available" ) \ No newline at end of file diff --git a/menu/drivers/xmb.c b/menu/drivers/xmb.c index 51748cf1c5..9993d46512 100755 --- a/menu/drivers/xmb.c +++ b/menu/drivers/xmb.c @@ -4936,13 +4936,12 @@ static void xmb_context_reset_textures( xmb_handle_t *xmb, const char *iconpath) { unsigned i; - bool missing_assets = false; + settings_t *settings = config_get_ptr(); for (i = 0; i < XMB_TEXTURE_LAST; i++) { if (xmb_texture_path(i) == NULL) { - missing_assets = true; /* If the icon doesn't exist at least try to return the subsetting icon*/ if (!(i == XMB_TEXTURE_DIALOG_SLICE || i == XMB_TEXTURE_KEY_HOVER || i == XMB_TEXTURE_KEY_HOVER)) menu_display_reset_textures_list(xmb_texture_path(XMB_TEXTURE_SUBSETTING), iconpath, &xmb->textures.list[i], TEXTURE_FILTER_MIPMAP_LINEAR); @@ -4951,6 +4950,12 @@ static void xmb_context_reset_textures( menu_display_reset_textures_list(xmb_texture_path(i), iconpath, &xmb->textures.list[i], TEXTURE_FILTER_MIPMAP_LINEAR); } + /* Warn only if critical assets are missing, some themes are incomplete */ + if ( + ((xmb_texture_path(XMB_TEXTURE_SUBSETTING) == NULL)) && !(settings->uints.menu_xmb_theme == XMB_ICON_THEME_CUSTOM) + ) + runloop_msg_queue_push(msg_hash_to_str(MSG_MISSING_ASSETS), 1, 256, false); + menu_display_allocate_white_texture(); xmb->main_menu_node.icon = xmb->textures.list[XMB_TEXTURE_MAIN_MENU]; @@ -4995,9 +5000,6 @@ static void xmb_context_reset_textures( xmb->netplay_tab_node.zoom = xmb->categories_active_zoom; #endif - if (missing_assets) - runloop_msg_queue_push(msg_hash_to_str(MSG_MISSING_ASSETS), 1, 256, false); - } static void xmb_context_reset_background(const char *iconpath)