diff --git a/intl/msg_hash_ar.h b/intl/msg_hash_ar.h index ac34790cd1..34aca43bdc 100644 --- a/intl/msg_hash_ar.h +++ b/intl/msg_hash_ar.h @@ -6265,6 +6265,10 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_HACKING_THE_KERNEL, "قرصان القلوب" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK, + "الظلام المشمس" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_LEFT_THUMBNAILS_OZONE, "الصورة المصغرة الثانية" diff --git a/intl/msg_hash_chs.h b/intl/msg_hash_chs.h index d299737ddc..e6b7980098 100644 --- a/intl/msg_hash_chs.h +++ b/intl/msg_hash_chs.h @@ -8393,6 +8393,10 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_DRACULA, "德古拉" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK, + "暗色曝光" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_LEFT_THUMBNAILS_OZONE, "第二缩略图" diff --git a/intl/msg_hash_de.h b/intl/msg_hash_de.h index 307f56fef9..794aed5b2c 100644 --- a/intl/msg_hash_de.h +++ b/intl/msg_hash_de.h @@ -8305,6 +8305,10 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_HACKING_THE_KERNEL, "Den Kernel hacken" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK, + "Solarized dunkel" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_LEFT_THUMBNAILS_OZONE, "Zweites Vorschaubild" diff --git a/intl/msg_hash_es.h b/intl/msg_hash_es.h index 57685af77c..863a9b329b 100644 --- a/intl/msg_hash_es.h +++ b/intl/msg_hash_es.h @@ -8529,6 +8529,10 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_DRACULA, "Drácula" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK, + "Solarizado (oscuro)" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_LEFT_THUMBNAILS_OZONE, "Segunda miniatura" diff --git a/intl/msg_hash_fi.h b/intl/msg_hash_fi.h index dc1c8d1dfd..0ba00a65e6 100644 --- a/intl/msg_hash_fi.h +++ b/intl/msg_hash_fi.h @@ -8513,6 +8513,10 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_TWILIGHT_ZONE, "Iltarusko" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK, + "Solarized, tumma" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_LEFT_THUMBNAILS_OZONE, "Toinen esikatselukuva" diff --git a/intl/msg_hash_fr.h b/intl/msg_hash_fr.h index e6afc07fe4..066791949b 100644 --- a/intl/msg_hash_fr.h +++ b/intl/msg_hash_fr.h @@ -8537,6 +8537,10 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_TWILIGHT_ZONE, "Quatrième dimension (Twilight Zone)" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK, + "Solarisé sombre" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_LEFT_THUMBNAILS_OZONE, "Miniature secondaire" diff --git a/intl/msg_hash_it.h b/intl/msg_hash_it.h index 59a8ac405d..32c5ff3161 100644 --- a/intl/msg_hash_it.h +++ b/intl/msg_hash_it.h @@ -8465,6 +8465,10 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_TWILIGHT_ZONE, "Zona Crepuscolare" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK, + "Scuro Solarizzato" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_LEFT_THUMBNAILS_OZONE, "Seconda Copertina" diff --git a/intl/msg_hash_ko.h b/intl/msg_hash_ko.h index 54781e80c3..afe8681a63 100644 --- a/intl/msg_hash_ko.h +++ b/intl/msg_hash_ko.h @@ -8609,6 +8609,10 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_DRACULA, "드라큘라" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK, + "솔라라이즈 다크" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_LEFT_THUMBNAILS_OZONE, "두 번째 미리보기" diff --git a/intl/msg_hash_pl.h b/intl/msg_hash_pl.h index c55ba529f5..8918cedcec 100644 --- a/intl/msg_hash_pl.h +++ b/intl/msg_hash_pl.h @@ -8481,6 +8481,10 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_DRACULA, "Drakula" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK, + "Solarized ciemny" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_LEFT_THUMBNAILS_OZONE, "Druga miniatura" diff --git a/intl/msg_hash_pt_br.h b/intl/msg_hash_pt_br.h index 991d517670..0441277343 100644 --- a/intl/msg_hash_pt_br.h +++ b/intl/msg_hash_pt_br.h @@ -8489,6 +8489,10 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_DRACULA, "Drácula" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK, + "Escuro solarizado" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_LEFT_THUMBNAILS_OZONE, "Segunda miniatura" diff --git a/intl/msg_hash_ru.h b/intl/msg_hash_ru.h index 9ad86ee1df..35e4daa8c7 100644 --- a/intl/msg_hash_ru.h +++ b/intl/msg_hash_ru.h @@ -8621,6 +8621,10 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_DRACULA, "Дракула" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK, + "Solarized тёмная" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_LEFT_THUMBNAILS_OZONE, "Дополнительный эскиз" diff --git a/intl/msg_hash_tr.h b/intl/msg_hash_tr.h index 9a2c93c95a..4d7b6459e8 100644 --- a/intl/msg_hash_tr.h +++ b/intl/msg_hash_tr.h @@ -8617,6 +8617,10 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_DRACULA, "Drakula" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK, + "Solarize Koyu" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_LEFT_THUMBNAILS_OZONE, "İkinci Küçük Resim" diff --git a/intl/msg_hash_uk.h b/intl/msg_hash_uk.h index 736356b13c..dd992581de 100644 --- a/intl/msg_hash_uk.h +++ b/intl/msg_hash_uk.h @@ -5129,6 +5129,10 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_DRACULA, "Дракула" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK, + "Салорайзед темна" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_LEFT_THUMBNAILS_OZONE, "Додаткова мініатюра" diff --git a/intl/msg_hash_us.h b/intl/msg_hash_us.h index ef5f7ac21e..b582ec0dbd 100644 --- a/intl/msg_hash_us.h +++ b/intl/msg_hash_us.h @@ -9221,6 +9221,10 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_DRACULA, "Dracula" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK, + "Solarized Dark" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_LEFT_THUMBNAILS_OZONE, "Second Thumbnail" diff --git a/menu/drivers/ozone.c b/menu/drivers/ozone.c index cab4491028..d4355e54b1 100644 --- a/menu/drivers/ozone.c +++ b/menu/drivers/ozone.c @@ -931,9 +931,36 @@ static float ozone_sidebar_gradient_bottom_dracula[16] = { 0.2666666, 0.2784314, 0.3529412, 1.0f, 0.2666666, 0.2784314, 0.3529412, 1.0f, 0.2666666, 0.2784314, 0.3529412, 1.0f, - 0.2666666, 0.2784314, 0.3529412, 1.0f, + 0.2666666, 0.2784314, 0.3529412, 1.0f, }; +static float ozone_background_libretro_running_solarized_dark[16] = { + 0.0000000, 0.1294118, 0.1725490, .85f, + 0.0000000, 0.1294118, 0.1725490, .85f, + 0.0000000, 0.1294118, 0.1725490, 1.0f, + 0.0000000, 0.1294118, 0.1725490, 1.0f, +}; + +static float ozone_sidebar_background_solarized_dark[16] = { + 0.0000000, 0.1294118, 0.1725490, 1.0f, + 0.0000000, 0.1294118, 0.1725490, 1.0f, + 0.0000000, 0.1294118, 0.1725490, 1.0f, + 0.0000000, 0.1294118, 0.1725490, 1.0f, +}; + +static float ozone_sidebar_gradient_top_solarized_dark[16] = { + 0.0000000, 0.1294118, 0.1725490, 1.0f, + 0.0000000, 0.1294118, 0.1725490, 1.0f, + 0.0000000, 0.1294118, 0.1725490, 1.0f, + 0.0000000, 0.1294118, 0.1725490, 1.0f, +}; + +static float ozone_sidebar_gradient_bottom_solarized_dark[16] = { + 0.0000000, 0.1294118, 0.1725490, 1.0f, + 0.0000000, 0.1294118, 0.1725490, 1.0f, + 0.0000000, 0.1294118, 0.1725490, 1.0f, + 0.0000000, 0.1294118, 0.1725490, 1.0f, +}; static float ozone_border_0_light[16] = COLOR_HEX_TO_FLOAT(0x50EFD9, 1.00); static float ozone_border_1_light[16] = COLOR_HEX_TO_FLOAT(0x0DB6D5, 1.00); @@ -959,6 +986,9 @@ static float ozone_border_1_twilight_zone[16] = COLOR_HEX_TO_FLOAT(0x9B61CC, 1.0 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_solarized_dark[16] = COLOR_HEX_TO_FLOAT(0xC3A0E0, 1.0f); +static float ozone_border_1_solarized_dark[16] = COLOR_HEX_TO_FLOAT(0x9B61CC, 1.0f); + ozone_theme_t ozone_theme_light = { COLOR_HEX_TO_FLOAT(0xEBEBEB, 1.00), /* background */ ozone_background_libretro_running_light, /* background_libretro_running */ @@ -1245,6 +1275,43 @@ ozone_theme_t ozone_theme_dracula = { "dracula" /* name */ }; +ozone_theme_t ozone_theme_solarized_dark = { + /* Background color */ + COLOR_HEX_TO_FLOAT(0x002B36, 1.0f), /* background */ + ozone_background_libretro_running_solarized_dark, /* background_libretro_running */ + + /* Float colors for quads and icons */ + COLOR_HEX_TO_FLOAT(0x839496, 1.0f), /* header_footer_separator */ + COLOR_HEX_TO_FLOAT(0x839496, 1.0f), /* text */ + COLOR_HEX_TO_FLOAT(0x073642, 1.0f), /* selection */ + COLOR_HEX_TO_FLOAT(0x2AA198, 1.0f), /* selection_border */ + COLOR_HEX_TO_FLOAT(0x073642, 1.0f), /* entries_border */ + COLOR_HEX_TO_FLOAT(0x268BD2, 1.0f), /* entries_icon */ + COLOR_HEX_TO_FLOAT(0x93A1A1, 1.0f), /* text_selected */ + COLOR_HEX_TO_FLOAT(0x6C71C4, 1.0f), /* message_background */ + + /* RGBA colors for text */ + 0x839496FF, /* text_rgba */ + 0x2AA198FF, /* text_selected_rgba */ + 0x586E75FF, /* text_sublabel_rgba */ + + /* Screensaver 'tint' (RGB24) */ + 0x073642, /* screensaver_tint */ + + /* Sidebar color */ + ozone_sidebar_background_solarized_dark, /* sidebar_background */ + ozone_sidebar_gradient_top_solarized_dark, /* sidebar_top_gradient */ + ozone_sidebar_gradient_bottom_solarized_dark, /* sidebar_bottom_gradient */ + + /* Fancy cursor colors */ + ozone_border_0_solarized_dark, /* cursor_border_0 */ + ozone_border_1_solarized_dark, /* cursor_border_1 */ + + {0}, /* textures */ + + "solarized dark" /* name */ + +}; ozone_theme_t *ozone_themes[] = { &ozone_theme_light, @@ -1254,7 +1321,8 @@ ozone_theme_t *ozone_themes[] = { &ozone_theme_boysenberry, &ozone_theme_hacking_the_kernel, &ozone_theme_twilight_zone, - &ozone_theme_dracula + &ozone_theme_dracula, + &ozone_theme_solarized_dark }; @@ -1381,6 +1449,9 @@ static void ozone_set_color_theme(ozone_handle_t *ozone, unsigned color_theme) case OZONE_COLOR_THEME_DRACULA: theme = &ozone_theme_dracula; break; + case OZONE_COLOR_THEME_SOLARIZED_DARK: + theme = &ozone_theme_solarized_dark; + break; default: break; } diff --git a/menu/menu_defines.h b/menu/menu_defines.h index 796ff3876e..58c09e0179 100644 --- a/menu/menu_defines.h +++ b/menu/menu_defines.h @@ -365,6 +365,7 @@ enum ozone_color_theme OZONE_COLOR_THEME_HACKING_THE_KERNEL, OZONE_COLOR_THEME_TWILIGHT_ZONE, OZONE_COLOR_THEME_DRACULA, + OZONE_COLOR_THEME_SOLARIZED_DARK, OZONE_COLOR_THEME_LAST }; diff --git a/menu/menu_setting.c b/menu/menu_setting.c index 0f0c92bdcf..a0d9667bfb 100644 --- a/menu/menu_setting.c +++ b/menu/menu_setting.c @@ -4753,6 +4753,11 @@ static void setting_get_string_representation_uint_ozone_menu_color_theme( msg_hash_to_str( MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_DRACULA), len); break; + case OZONE_COLOR_THEME_SOLARIZED_DARK: + strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK), len); + break; case OZONE_COLOR_THEME_BASIC_WHITE: default: strlcpy(s, diff --git a/msg_hash.h b/msg_hash.h index 5842d61463..8be47d9b05 100644 --- a/msg_hash.h +++ b/msg_hash.h @@ -602,6 +602,7 @@ enum msg_hash_enums MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_HACKING_THE_KERNEL, MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_TWILIGHT_ZONE, MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_DRACULA, + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK, MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_MONOCHROME, MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_MONOCHROME_INVERTED,