diff --git a/intl/msg_hash_us.h b/intl/msg_hash_us.h index d9e6579da30..be3b0e5e731 100644 --- a/intl/msg_hash_us.h +++ b/intl/msg_hash_us.h @@ -12040,6 +12040,10 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_DRACULA, "Dracula" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_EVERGARDEN, + "Evergarden" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_FAIRYFLOSS, "Fairy Floss" @@ -12694,6 +12698,10 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_DRACULA, "Dracula" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_EVERGARDEN, + "Evergarden" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK, "Solarized Dark" diff --git a/menu/drivers/ozone.c b/menu/drivers/ozone.c index 99adcbaa681..6371159a1f0 100644 --- a/menu/drivers/ozone.c +++ b/menu/drivers/ozone.c @@ -778,6 +778,12 @@ static float ozone_sidebar_gradient_bottom_dracula[16] = { 0.2666666f, 0.2784314f, 0.3529412f, 1.0f, }; +static float ozone_sidebar_gradient_top_evergarden[16] = + COLOR_HEX_TO_FLOAT(0x1C2225, 1.0f); + +static float ozone_sidebar_gradient_bottom_evergarden[16] = + COLOR_HEX_TO_FLOAT(0x1C2225, 1.0f); + static float ozone_sidebar_gradient_top_selenium[16] = { 0.1019608f, 0.1019608f, 0.1019608f, 1.0f, 0.1019608f, 0.1019608f, 0.1019608f, 1.0f, @@ -881,6 +887,9 @@ static float ozone_sidebar_background_dracula[16] = { 0.2666666f, 0.2784314f, 0.3529412f, 1.0f, }; +static float ozone_sidebar_background_evergarden[16] = + COLOR_HEX_TO_FLOAT(0x1C2225, 1.0f); + static float ozone_sidebar_background_selenium[16] = { 0.1019608f, 0.1019608f, 0.1019608f, 1.0f, 0.1019608f, 0.1019608f, 0.1019608f, 1.0f, @@ -970,6 +979,13 @@ static float ozone_background_libretro_running_dracula[16] = { 0.1568627f, 0.1647058f, 0.2117647f, 1.0f, }; +static float ozone_background_libretro_running_evergarden[16] = { + 0.1568627f, 0.1647058f, 0.2117647f, 0.75f, + 0.1568627f, 0.1647058f, 0.2117647f, 0.75f, + 0.1568627f, 0.1647058f, 0.2117647f, 1.0f, + 0.1568627f, 0.1647058f, 0.2117647f, 1.0f, +}; + static float ozone_background_libretro_running_selenium[16] = { 0.1647059f, 0.1647059f, 0.1647059f, 1.0f, 0.1647059f, 0.1647059f, 0.1647059f, 1.0f, @@ -1023,6 +1039,9 @@ static float ozone_border_1_twilight_zone[16] = COLOR_HEX_TO_FLOAT(0x9B61CC static float ozone_border_0_dracula[16] = COLOR_HEX_TO_FLOAT(0xC3A0E0, 1.0f); static float ozone_border_1_dracula[16] = COLOR_HEX_TO_FLOAT(0x9B61CC, 1.0f); +static float ozone_border_0_evergarden[16] = COLOR_HEX_TO_FLOAT(0xCBE3B3, 1.0f); +static float ozone_border_1_evergarden[16] = COLOR_HEX_TO_FLOAT(0xB3E6DB, 1.0f); + static float ozone_border_0_selenium[16] = COLOR_HEX_TO_FLOAT(0x91a666, 1.0f); static float ozone_border_1_selenium[16] = COLOR_HEX_TO_FLOAT(0x566646, 1.0f); @@ -1329,6 +1348,43 @@ static ozone_theme_t ozone_theme_dracula = { "dracula" /* name */ }; +static ozone_theme_t ozone_theme_evergarden = { + /* Background color */ + COLOR_HEX_TO_FLOAT(0x232A2E, 1.0f), /* background */ + ozone_background_libretro_running_evergarden, /* background_libretro_running */ + + /* Float colors for quads and icons */ + COLOR_HEX_TO_FLOAT(0x374145, 0.0f), /* header_footer_separator */ + COLOR_HEX_TO_FLOAT(0xF8F9E8, 1.0f), /* text */ + COLOR_HEX_TO_FLOAT(0x3D494D, 1.0f), /* selection */ + COLOR_HEX_TO_FLOAT(0x3D494D, 0.0f), /* selection_border */ + COLOR_HEX_TO_FLOAT(0x374145, 0.0f), /* entries_border */ + COLOR_HEX_TO_FLOAT(0xF8F9E8, 1.0f), /* entries_icon */ + COLOR_HEX_TO_FLOAT(0xCBE3B3, 1.0f), /* text_selected */ + COLOR_HEX_TO_FLOAT(0x96B4AA, 1.0f), /* message_background */ + + /* RGBA colors for text */ + 0xF8F9E8FF, /* text_rgba */ + 0xF8F9E8FF, /* text_sidebar_rgba */ + 0xCBE3B3FF, /* text_selected_rgba */ + 0x96B4AAFF, /* text_sublabel_rgba */ + + /* Screensaver 'tint' (RGB24) */ + 0xF8F9E8, /* screensaver_tint */ + + /* Sidebar color */ + ozone_sidebar_background_evergarden, /* sidebar_background */ + ozone_sidebar_gradient_top_evergarden, /* sidebar_top_gradient */ + ozone_sidebar_gradient_bottom_evergarden, /* sidebar_bottom_gradient */ + + /* Fancy cursor colors */ + ozone_border_0_evergarden, /* cursor_border_0 */ + ozone_border_1_evergarden, /* cursor_border_1 */ + + {0}, /* textures */ + + "evergarden" /* name */ +}; static ozone_theme_t ozone_theme_solarized_dark = { /* Background color */ @@ -1576,6 +1632,7 @@ static ozone_theme_t *ozone_themes[] = { &ozone_theme_gray_light, &ozone_theme_purple_rain, &ozone_theme_selenium, + &ozone_theme_evergarden, }; /* TODO/FIXME - global variables referenced outside */ @@ -1716,6 +1773,9 @@ static void ozone_set_color_theme( case OZONE_COLOR_THEME_PURPLE_RAIN: theme = &ozone_theme_purple_rain; break; + case OZONE_COLOR_THEME_EVERGARDEN: + theme = &ozone_theme_evergarden; + break; default: break; } diff --git a/menu/drivers/rgui.c b/menu/drivers/rgui.c index ebcd34c48e7..b472817a86f 100644 --- a/menu/drivers/rgui.c +++ b/menu/drivers/rgui.c @@ -769,6 +769,30 @@ static const rgui_theme_t rgui_theme_opaque_dracula = { 0xFF525F88 /* particle_color */ }; +static const rgui_theme_t rgui_theme_evergarden = { + 0xFFCBE3B3, /* hover_color */ + 0xFFDDEEDD, /* normal_color */ + 0xFF96B4AA, /* title_color */ + 0xC0112222, /* bg_dark_color */ + 0xC0112222, /* bg_light_color */ + 0xC0374145, /* border_dark_color */ + 0xC0374145, /* border_light_color */ + 0xFF171C1F, /* shadow_color */ + 0xC06F8788 /* particle_color */ +}; + +static const rgui_theme_t rgui_theme_opaque_evergarden = { + 0xFFCBE3B3, /* hover_color */ + 0xFFDDEEDD, /* normal_color */ + 0xFF96B4AA, /* title_color */ + 0xFF112222, /* bg_dark_color */ + 0xFF112222, /* bg_light_color */ + 0xFF374145, /* border_dark_color */ + 0xFF374145, /* border_light_color */ + 0xFF171C1F, /* shadow_color */ + 0xFF6F8788 /* particle_color */ +}; + static const rgui_theme_t rgui_theme_fairyfloss = { 0xFFFFF352, /* hover_color */ 0xFFF8F8F2, /* normal_color */ @@ -2970,6 +2994,10 @@ static const rgui_theme_t *rgui_get_theme(rgui_t *rgui) return transparent ? &rgui_theme_dracula : &rgui_theme_opaque_dracula; + case RGUI_THEME_EVERGARDEN: + return transparent + ? &rgui_theme_evergarden + : &rgui_theme_opaque_evergarden; case RGUI_THEME_FAIRYFLOSS: return transparent ? &rgui_theme_fairyfloss diff --git a/menu/menu_defines.h b/menu/menu_defines.h index 22e12845fae..046ed8da1e1 100644 --- a/menu/menu_defines.h +++ b/menu/menu_defines.h @@ -240,6 +240,7 @@ enum rgui_color_theme RGUI_THEME_DYNAMIC, RGUI_THEME_GRAY_DARK, RGUI_THEME_GRAY_LIGHT, + RGUI_THEME_EVERGARDEN, RGUI_THEME_LAST }; @@ -451,6 +452,7 @@ enum ozone_color_theme OZONE_COLOR_THEME_GRAY_LIGHT, OZONE_COLOR_THEME_PURPLE_RAIN, OZONE_COLOR_THEME_SELENIUM, + OZONE_COLOR_THEME_EVERGARDEN, OZONE_COLOR_THEME_LAST }; diff --git a/menu/menu_setting.c b/menu/menu_setting.c index 51a503d910d..852b258a6cd 100644 --- a/menu/menu_setting.c +++ b/menu/menu_setting.c @@ -3877,6 +3877,11 @@ static size_t setting_get_string_representation_uint_rgui_menu_color_theme( msg_hash_to_str( MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_GRAY_LIGHT), len); + case RGUI_THEME_EVERGARDEN: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_EVERGARDEN), + len); } } return 0; @@ -4686,6 +4691,10 @@ static size_t setting_get_string_representation_uint_ozone_menu_color_theme( return strlcpy(s, msg_hash_to_str( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_BASIC_WHITE), len); + case OZONE_COLOR_THEME_EVERGARDEN: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_EVERGARDEN), len); } } return 0; diff --git a/msg_hash.h b/msg_hash.h index 62071adced0..a22f4ed0e60 100644 --- a/msg_hash.h +++ b/msg_hash.h @@ -736,6 +736,7 @@ enum msg_hash_enums MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_DYNAMIC, MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_GRAY_DARK, MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_GRAY_LIGHT, + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_EVERGARDEN, MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_BASIC_WHITE, MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_BASIC_BLACK, @@ -751,6 +752,7 @@ enum msg_hash_enums MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_GRAY_LIGHT, MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_PURPLE_RAIN, MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SELENIUM, + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_EVERGARDEN, MENU_ENUM_LABEL_VALUE_OZONE_HEADER_ICON_NONE, MENU_ENUM_LABEL_VALUE_OZONE_HEADER_ICON_DYNAMIC,