diff --git a/intl/msg_hash_ar.h b/intl/msg_hash_ar.h index aac7d3fc67..4a042de49b 100644 --- a/intl/msg_hash_ar.h +++ b/intl/msg_hash_ar.h @@ -3750,3 +3750,5 @@ MSG_HASH( ) MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_WIDGETS_ENABLE, "Menu Widgets") +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/intl/msg_hash_chs.h b/intl/msg_hash_chs.h index add745bacb..6682fe45bd 100644 --- a/intl/msg_hash_chs.h +++ b/intl/msg_hash_chs.h @@ -4764,3 +4764,5 @@ MSG_HASH( ) MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_WIDGETS_ENABLE, "Menu Widgets") +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/intl/msg_hash_cht.h b/intl/msg_hash_cht.h index 3808dd47a2..06fb1817f8 100644 --- a/intl/msg_hash_cht.h +++ b/intl/msg_hash_cht.h @@ -3522,3 +3522,5 @@ MSG_HASH( ) MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_WIDGETS_ENABLE, "Menu Widgets") +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/intl/msg_hash_de.h b/intl/msg_hash_de.h index 1bb07d9be5..2126f09721 100644 --- a/intl/msg_hash_de.h +++ b/intl/msg_hash_de.h @@ -3651,3 +3651,5 @@ MSG_HASH( ) MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_WIDGETS_ENABLE, "Menu Widgets") +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/intl/msg_hash_el.h b/intl/msg_hash_el.h index a46aecf8a8..d20c94b80c 100644 --- a/intl/msg_hash_el.h +++ b/intl/msg_hash_el.h @@ -7728,3 +7728,5 @@ MSG_HASH( ) MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_WIDGETS_ENABLE, "Menu Widgets") +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/intl/msg_hash_eo.h b/intl/msg_hash_eo.h index 305a4a0c19..22e63abe04 100644 --- a/intl/msg_hash_eo.h +++ b/intl/msg_hash_eo.h @@ -3410,3 +3410,5 @@ MSG_HASH( ) MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_WIDGETS_ENABLE, "Menu Widgets") +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/intl/msg_hash_es.h b/intl/msg_hash_es.h index f57227a9cf..af6f938ba3 100644 --- a/intl/msg_hash_es.h +++ b/intl/msg_hash_es.h @@ -7880,3 +7880,5 @@ MSG_HASH( ) MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_WIDGETS_ENABLE, "Menu Widgets") +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/intl/msg_hash_fr.h b/intl/msg_hash_fr.h index 89f72e8291..22c66d7ce9 100644 --- a/intl/msg_hash_fr.h +++ b/intl/msg_hash_fr.h @@ -8657,3 +8657,5 @@ MSG_HASH( MENU_ENUM_SUBLABEL_LOG_DIR, "Les fichiers de journalisation des événements système seront conservés dans ce dossier." ) +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/intl/msg_hash_it.h b/intl/msg_hash_it.h index 694b40bafe..575022ac0e 100644 --- a/intl/msg_hash_it.h +++ b/intl/msg_hash_it.h @@ -3635,3 +3635,5 @@ MSG_HASH( ) MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_WIDGETS_ENABLE, "Menu Widgets") +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/intl/msg_hash_ja.h b/intl/msg_hash_ja.h index a551e91599..ca192149ae 100644 --- a/intl/msg_hash_ja.h +++ b/intl/msg_hash_ja.h @@ -4204,3 +4204,5 @@ MSG_HASH( ) MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_WIDGETS_ENABLE, "Menu Widgets") +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/intl/msg_hash_ko.h b/intl/msg_hash_ko.h index f9234ae799..71fda9331b 100644 --- a/intl/msg_hash_ko.h +++ b/intl/msg_hash_ko.h @@ -3503,3 +3503,5 @@ MSG_HASH( ) MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_WIDGETS_ENABLE, "Menu Widgets") +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/intl/msg_hash_lbl.h b/intl/msg_hash_lbl.h index 4c8db58fea..b27dcee1b2 100644 --- a/intl/msg_hash_lbl.h +++ b/intl/msg_hash_lbl.h @@ -1841,3 +1841,5 @@ MSG_HASH(MENU_ENUM_LABEL_LOG_DIR, "log_dir") MSG_HASH(MENU_ENUM_LABEL_MENU_WIDGETS_ENABLE, "menu_widgets_enable") +MSG_HASH(MENU_ENUM_LABEL_VIDEO_SHADERS_ENABLE, + "video_shader_enable") diff --git a/intl/msg_hash_nl.h b/intl/msg_hash_nl.h index 8a8898434b..4d52096fe4 100644 --- a/intl/msg_hash_nl.h +++ b/intl/msg_hash_nl.h @@ -3404,3 +3404,5 @@ MSG_HASH( ) MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_WIDGETS_ENABLE, "Menu Widgets") +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/intl/msg_hash_pl.h b/intl/msg_hash_pl.h index d87790fce5..24b24eda79 100644 --- a/intl/msg_hash_pl.h +++ b/intl/msg_hash_pl.h @@ -3800,3 +3800,5 @@ MSG_HASH( ) MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_WIDGETS_ENABLE, "Menu widgetów") +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/intl/msg_hash_pt_br.h b/intl/msg_hash_pt_br.h index e6f439dbbc..54883db09d 100644 --- a/intl/msg_hash_pt_br.h +++ b/intl/msg_hash_pt_br.h @@ -8032,3 +8032,5 @@ MSG_HASH( ) MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_WIDGETS_ENABLE, "Menu Widgets") +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/intl/msg_hash_pt_pt.h b/intl/msg_hash_pt_pt.h index d087dd7ada..248753b37d 100644 --- a/intl/msg_hash_pt_pt.h +++ b/intl/msg_hash_pt_pt.h @@ -3476,3 +3476,5 @@ MSG_HASH( ) MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_WIDGETS_ENABLE, "Menu Widgets") +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/intl/msg_hash_ru.h b/intl/msg_hash_ru.h index 73680adde6..e31e40c480 100644 --- a/intl/msg_hash_ru.h +++ b/intl/msg_hash_ru.h @@ -3679,3 +3679,5 @@ MSG_HASH( ) MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_WIDGETS_ENABLE, "Menu Widgets") +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/intl/msg_hash_tr.h b/intl/msg_hash_tr.h index 6526dc1028..b48dd114c1 100644 --- a/intl/msg_hash_tr.h +++ b/intl/msg_hash_tr.h @@ -8548,3 +8548,5 @@ MSG_HASH( ) MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_WIDGETS_ENABLE, "Menu Widgets") +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/intl/msg_hash_us.h b/intl/msg_hash_us.h index 30c094dc91..8e4a37c750 100644 --- a/intl/msg_hash_us.h +++ b/intl/msg_hash_us.h @@ -8663,3 +8663,5 @@ MSG_HASH( ) MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_WIDGETS_ENABLE, "Menu Widgets") +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/intl/msg_hash_vn.h b/intl/msg_hash_vn.h index 820aa185fe..b7cfa2a2e3 100644 --- a/intl/msg_hash_vn.h +++ b/intl/msg_hash_vn.h @@ -3566,3 +3566,5 @@ MSG_HASH( ) MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_WIDGETS_ENABLE, "Menu Widgets") +MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + "Video Shaders") diff --git a/media/rarch.rc b/media/rarch.rc index b9a4b7b76a..ebd8d5142b 100644 --- a/media/rarch.rc +++ b/media/rarch.rc @@ -68,6 +68,7 @@ IDR_MENU MENU MENUITEM "9x", ID_M_WINDOW_SCALE_9X MENUITEM "10x", ID_M_WINDOW_SCALE_10X } + MENUITEM "Toggle Desktop Menu", ID_M_TOGGLE_DESKTOP MENUITEM "Toggle Exclusive Full Screen", ID_M_FULL_SCREEN // Shader dialog is disabled for now, until video_threaded issues are fixed. //MENUITEM "Shader Parameters", ID_M_SHADER_PARAMETERS diff --git a/media/rarch_ja.rc b/media/rarch_ja.rc index 4174e44240..2b657e2236 100644 --- a/media/rarch_ja.rc +++ b/media/rarch_ja.rc @@ -65,6 +65,7 @@ IDR_MENU MENU MENUITEM "9x", ID_M_WINDOW_SCALE_9X MENUITEM "10x", ID_M_WINDOW_SCALE_10X } + MENUITEM "Toggle Desktop Menu", ID_M_TOGGLE_DESKTOP MENUITEM "rIȃtXN[؂ւ", ID_M_FULL_SCREEN // Shader dialog is disabled for now, until video_threaded issues are fixed. //MENUITEM "VF[_[̃p[^", ID_M_SHADER_PARAMETERS diff --git a/menu/drivers/materialui.c b/menu/drivers/materialui.c index de66e113c8..67cd2935d0 100644 --- a/menu/drivers/materialui.c +++ b/menu/drivers/materialui.c @@ -23,6 +23,7 @@ #include #include +#include #include #include #include @@ -2490,8 +2491,7 @@ static void materialui_list_insert(void *userdata, node->texture_switch2_set = true; } else if ( - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ADD_TO_FAVORITES)) - || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ADD_TO_FAVORITES)) || string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ADD_TO_FAVORITES_PLAYLIST)) || string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_GOTO_FAVORITES)) ) @@ -2607,24 +2607,15 @@ static void materialui_list_insert(void *userdata, node->texture_switch2_set = true; } else if ( - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ONLINE_UPDATER)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_UPDATE_CORE_INFO_FILES)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_UPDATE_AUTOCONFIG_PROFILES)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_UPDATE_ASSETS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_UPDATE_CHEATS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_UPDATE_DATABASES)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_UPDATE_OVERLAYS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_UPDATE_CG_SHADERS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_UPDATE_GLSL_SHADERS)) - || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ONLINE_UPDATER)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_UPDATE_CORE_INFO_FILES)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_UPDATE_AUTOCONFIG_PROFILES)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_UPDATE_ASSETS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_UPDATE_CHEATS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_UPDATE_DATABASES)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_UPDATE_OVERLAYS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_UPDATE_CG_SHADERS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_UPDATE_GLSL_SHADERS)) || string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_UPDATE_SLANG_SHADERS)) ) { @@ -2644,78 +2635,47 @@ static void materialui_list_insert(void *userdata, node->texture_switch2_set = true; } else if ( - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_MENU_FILE_BROWSER_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DRIVER_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_AUDIO_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_AUDIO_MIXER_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_INPUT_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_LATENCY_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_INPUT_HOTKEY_BINDS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_CORE_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_CONFIGURATION_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_SAVING_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_LOGGING_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_FRAME_THROTTLE_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_RECORDING_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ONSCREEN_DISPLAY_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_USER_INTERFACE_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_RETRO_ACHIEVEMENTS_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_WIFI_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_NETWORK_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_NETPLAY_LAN_SCAN_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_LAKKA_SERVICES)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_PLAYLIST_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_USER_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DIRECTORY_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_PRIVACY_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_MIDI_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_MENU_VIEWS_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_QUICK_MENU_VIEWS_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_MENU_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ONSCREEN_OVERLAY_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ONSCREEN_NOTIFICATIONS_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ACCOUNTS_LIST)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_REWIND_SETTINGS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ACCOUNTS_RETRO_ACHIEVEMENTS)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_CORE_UPDATER_LIST)) - || - string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_THUMBNAILS_UPDATER_LIST)) - || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_MENU_FILE_BROWSER_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DRIVER_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_AUDIO_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_AUDIO_MIXER_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_MENU_SOUNDS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_INPUT_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_LATENCY_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_INPUT_HOTKEY_BINDS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_CORE_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_CONFIGURATION_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_CRT_SWITCHRES_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_SAVING_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_LOGGING_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_FRAME_THROTTLE_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_RECORDING_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ONSCREEN_DISPLAY_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_USER_INTERFACE_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_RETRO_ACHIEVEMENTS_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ACCOUNTS_YOUTUBE)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ACCOUNTS_TWITCH)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_WIFI_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_NETWORK_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_NETPLAY_LAN_SCAN_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_LAKKA_SERVICES)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_PLAYLIST_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_USER_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DIRECTORY_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_PRIVACY_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_MIDI_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_MENU_VIEWS_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_QUICK_MENU_VIEWS_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_MENU_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ONSCREEN_OVERLAY_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ONSCREEN_NOTIFICATIONS_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ACCOUNTS_LIST)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_REWIND_SETTINGS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ACCOUNTS_RETRO_ACHIEVEMENTS)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_CORE_UPDATER_LIST)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_THUMBNAILS_UPDATER_LIST)) || + string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_UPDATER_SETTINGS)) || string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DOWNLOAD_CORE_CONTENT_DIRS)) ) { @@ -2730,6 +2690,24 @@ static void materialui_list_insert(void *userdata, node->texture_switch2_index = MUI_TEXTURE_FOLDER; node->texture_switch2_set = true; } + else if (strcasestr(label, "_input_binds_list")) + { + unsigned i; + + for (i = 0; i < MAX_USERS; i++) + { + char val[255]; + unsigned user_value = i + 1; + + snprintf(val, sizeof(val), "%d_input_binds_list", user_value); + + if (string_is_equal(label, val)) + { + node->texture_switch2_index = MUI_TEXTURE_SETTINGS; + node->texture_switch2_set = true; + } + } + } break; } } diff --git a/menu/menu_displaylist.c b/menu/menu_displaylist.c index 3732b76f11..51483ba940 100644 --- a/menu/menu_displaylist.c +++ b/menu/menu_displaylist.c @@ -4718,95 +4718,104 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, unsigned i; struct video_shader *shader = menu_shader_get(); unsigned pass_count = shader ? shader->passes : 0; + settings_t *settings = config_get_ptr(); - if (menu_entries_append_enum(info->list, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SHADER_APPLY_CHANGES), - msg_hash_to_str(MENU_ENUM_LABEL_SHADER_APPLY_CHANGES), - MENU_ENUM_LABEL_SHADER_APPLY_CHANGES, - MENU_SETTING_ACTION, 0, 0)) + if (menu_displaylist_parse_settings_enum(info->list, + MENU_ENUM_LABEL_VIDEO_SHADERS_ENABLE, + PARSE_ONLY_BOOL, false) == 0) count++; - if (frontend_driver_can_watch_for_changes()) + if (settings->bools.video_shader_enable) { if (menu_entries_append_enum(info->list, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SHADER_WATCH_FOR_CHANGES), - msg_hash_to_str(MENU_ENUM_LABEL_SHADER_WATCH_FOR_CHANGES), - MENU_ENUM_LABEL_SHADER_WATCH_FOR_CHANGES, - 0, 0, 0)) - count++; - } - if (menu_entries_append_enum(info->list, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PRESET), - msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_PRESET), - MENU_ENUM_LABEL_VIDEO_SHADER_PRESET, - FILE_TYPE_PATH, 0, 0)) - count++; - if (menu_entries_append_enum(info->list, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PRESET_SAVE_AS), - msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_AS), - MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_AS, - MENU_SETTING_ACTION, 0, 0)) - count++; - if (menu_entries_append_enum(info->list, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PRESET_SAVE_CORE), - msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_CORE), - MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_CORE, - MENU_SETTING_ACTION, 0, 0)) - count++; - if (menu_entries_append_enum(info->list, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PRESET_SAVE_PARENT), - msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_PARENT), - MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_PARENT, - MENU_SETTING_ACTION, 0, 0)) - count++; - if (menu_entries_append_enum(info->list, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PRESET_SAVE_GAME), - msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_GAME), - MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_GAME, - MENU_SETTING_ACTION, 0, 0)) - count++; - if (menu_entries_append_enum(info->list, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PARAMETERS), - msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_PARAMETERS), - MENU_ENUM_LABEL_VIDEO_SHADER_PARAMETERS, - MENU_SETTING_ACTION, 0, 0)) - count++; - if (menu_entries_append_enum(info->list, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_NUM_PASSES), - msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_NUM_PASSES), - MENU_ENUM_LABEL_VIDEO_SHADER_NUM_PASSES, - 0, 0, 0)) - count++; - - for (i = 0; i < pass_count; i++) - { - char buf_tmp[64]; - char buf[128]; - - buf[0] = buf_tmp[0] = '\0'; - - snprintf(buf_tmp, sizeof(buf_tmp), - "%s #%u", msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SHADER), i); - - if (menu_entries_append_enum(info->list, buf_tmp, - msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_PASS), - MENU_ENUM_LABEL_VIDEO_SHADER_PASS, - MENU_SETTINGS_SHADER_PASS_0 + i, 0, 0)) + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SHADER_APPLY_CHANGES), + msg_hash_to_str(MENU_ENUM_LABEL_SHADER_APPLY_CHANGES), + MENU_ENUM_LABEL_SHADER_APPLY_CHANGES, + MENU_SETTING_ACTION, 0, 0)) count++; - snprintf(buf, sizeof(buf), "%s %s", buf_tmp, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_FILTER)); - if (menu_entries_append_enum(info->list, buf, - msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_FILTER_PASS), - MENU_ENUM_LABEL_VIDEO_SHADER_FILTER_PASS, - MENU_SETTINGS_SHADER_PASS_FILTER_0 + i, 0, 0)) + if (frontend_driver_can_watch_for_changes()) + { + if (menu_entries_append_enum(info->list, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SHADER_WATCH_FOR_CHANGES), + msg_hash_to_str(MENU_ENUM_LABEL_SHADER_WATCH_FOR_CHANGES), + MENU_ENUM_LABEL_SHADER_WATCH_FOR_CHANGES, + 0, 0, 0)) + count++; + } + if (menu_entries_append_enum(info->list, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PRESET), + msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_PRESET), + MENU_ENUM_LABEL_VIDEO_SHADER_PRESET, + FILE_TYPE_PATH, 0, 0)) + count++; + if (menu_entries_append_enum(info->list, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PRESET_SAVE_AS), + msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_AS), + MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_AS, + MENU_SETTING_ACTION, 0, 0)) + count++; + if (menu_entries_append_enum(info->list, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PRESET_SAVE_CORE), + msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_CORE), + MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_CORE, + MENU_SETTING_ACTION, 0, 0)) + count++; + if (menu_entries_append_enum(info->list, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PRESET_SAVE_PARENT), + msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_PARENT), + MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_PARENT, + MENU_SETTING_ACTION, 0, 0)) + count++; + if (menu_entries_append_enum(info->list, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PRESET_SAVE_GAME), + msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_GAME), + MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_GAME, + MENU_SETTING_ACTION, 0, 0)) + count++; + if (menu_entries_append_enum(info->list, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PARAMETERS), + msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_PARAMETERS), + MENU_ENUM_LABEL_VIDEO_SHADER_PARAMETERS, + MENU_SETTING_ACTION, 0, 0)) + count++; + if (menu_entries_append_enum(info->list, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_NUM_PASSES), + msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_NUM_PASSES), + MENU_ENUM_LABEL_VIDEO_SHADER_NUM_PASSES, + 0, 0, 0)) count++; - snprintf(buf, sizeof(buf), "%s %s", buf_tmp, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SCALE)); - if (menu_entries_append_enum(info->list, buf, - msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_SCALE_PASS), - MENU_ENUM_LABEL_VIDEO_SHADER_SCALE_PASS, - MENU_SETTINGS_SHADER_PASS_SCALE_0 + i, 0, 0)) - count++; + for (i = 0; i < pass_count; i++) + { + char buf_tmp[64]; + char buf[128]; + + buf[0] = buf_tmp[0] = '\0'; + + snprintf(buf_tmp, sizeof(buf_tmp), + "%s #%u", msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SHADER), i); + + if (menu_entries_append_enum(info->list, buf_tmp, + msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_PASS), + MENU_ENUM_LABEL_VIDEO_SHADER_PASS, + MENU_SETTINGS_SHADER_PASS_0 + i, 0, 0)) + count++; + + snprintf(buf, sizeof(buf), "%s %s", buf_tmp, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_FILTER)); + if (menu_entries_append_enum(info->list, buf, + msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_FILTER_PASS), + MENU_ENUM_LABEL_VIDEO_SHADER_FILTER_PASS, + MENU_SETTINGS_SHADER_PASS_FILTER_0 + i, 0, 0)) + count++; + + snprintf(buf, sizeof(buf), "%s %s", buf_tmp, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SCALE)); + if (menu_entries_append_enum(info->list, buf, + msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_SHADER_SCALE_PASS), + MENU_ENUM_LABEL_VIDEO_SHADER_SCALE_PASS, + MENU_SETTINGS_SHADER_PASS_SCALE_0 + i, 0, 0)) + count++; + } } } diff --git a/menu/menu_setting.c b/menu/menu_setting.c index d0bc2ed929..e4efb6b170 100644 --- a/menu/menu_setting.c +++ b/menu/menu_setting.c @@ -62,6 +62,7 @@ #include "menu_driver.h" #include "menu_animation.h" #include "menu_input.h" +#include "menu_shader.h" #include "widgets/menu_input_dialog.h" #include "widgets/menu_input_bind_dialog.h" @@ -5574,6 +5575,28 @@ void general_write_handler(rarch_setting_t *setting) switch (setting->enum_idx) { + case MENU_ENUM_LABEL_VIDEO_SHADERS_ENABLE: + { + if (*setting->value.target.boolean) + { + bool refresh = false; + menu_entries_ctl(MENU_ENTRIES_CTL_SET_REFRESH, &refresh); + menu_driver_ctl(RARCH_MENU_CTL_SET_PREVENT_POPULATE, NULL); + } + else if (!*setting->value.target.boolean) + { + bool refresh = false; + settings_t *settings = config_get_ptr(); + struct video_shader *shader = menu_shader_get(); + + shader->passes = 0; + + menu_entries_ctl(MENU_ENTRIES_CTL_SET_REFRESH, &refresh); + menu_driver_ctl(RARCH_MENU_CTL_SET_PREVENT_POPULATE, NULL); + command_event(CMD_EVENT_SHADERS_APPLY_CHANGES, NULL); + settings->bools.video_shader_enable = false; + } + } case MENU_ENUM_LABEL_VIDEO_THREADED: { if (*setting->value.target.boolean) @@ -7276,6 +7299,21 @@ static bool setting_append_list( bool_entries[i].flags); } + CONFIG_BOOL( + list, list_info, + &settings->bools.video_shader_enable, + MENU_ENUM_LABEL_VIDEO_SHADERS_ENABLE, + MENU_ENUM_LABEL_VALUE_VIDEO_SHADERS_ENABLE, + shader_enable, + MENU_ENUM_LABEL_VALUE_OFF, + MENU_ENUM_LABEL_VALUE_ON, + &group_info, + &subgroup_info, + parent_group, + general_write_handler, + general_read_handler, + SD_FLAG_NONE); + END_SUB_GROUP(list, list_info, parent_group); END_GROUP(list, list_info, parent_group); } diff --git a/msg_hash.h b/msg_hash.h index 35cca7026a..d8eee570dd 100644 --- a/msg_hash.h +++ b/msg_hash.h @@ -561,6 +561,8 @@ enum msg_hash_enums MENU_LABEL(SHADER_PIPELINE_BOKEH), MENU_LABEL(SHADER_PIPELINE_SNOWFLAKE), + MENU_LABEL(VIDEO_SHADERS_ENABLE), + MENU_LABEL(MATERIALUI_MENU_HEADER_OPACITY), MENU_LABEL(MATERIALUI_MENU_FOOTER_OPACITY), MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_BLUE, diff --git a/ui/drivers/ui_win32.c b/ui/drivers/ui_win32.c index fc4a127f0f..a19009c520 100644 --- a/ui/drivers/ui_win32.c +++ b/ui/drivers/ui_win32.c @@ -237,6 +237,9 @@ LRESULT win32_menu_loop(HWND owner, WPARAM wparam) case ID_M_QUIT: do_wm_close = true; break; + case ID_M_TOGGLE_DESKTOP: + cmd = CMD_EVENT_UI_COMPANION_TOGGLE; + break; default: if (mode >= ID_M_WINDOW_SCALE_1X && mode <= ID_M_WINDOW_SCALE_10X) { diff --git a/ui/drivers/ui_win32_resource.h b/ui/drivers/ui_win32_resource.h index b071687311..0238c5e94a 100644 --- a/ui/drivers/ui_win32_resource.h +++ b/ui/drivers/ui_win32_resource.h @@ -28,3 +28,4 @@ #define ID_M_STATE_INDEX_AUTO 40024 #define ID_M_TAKE_SCREENSHOT 40025 #define ID_M_MUTE_TOGGLE 40026 +#define ID_M_TOGGLE_DESKTOP 40027