Create Menu Header Opacity setting

This commit is contained in:
twinaphex 2016-07-11 17:41:06 +02:00
parent b78fcb3e21
commit 60d3b22bb6
8 changed files with 52 additions and 6 deletions

View File

@ -528,6 +528,8 @@ static float menu_wallpaper_opacity = 0.300;
static float menu_footer_opacity = 1.000;
static float menu_header_opacity = 1.000;
static unsigned menu_background_gradient = 4;
#if defined(HAVE_CG) || defined(HAVE_HLSL) || defined(HAVE_GLSL) || defined(HAVE_VULKAN)

View File

@ -611,6 +611,7 @@ static void config_set_defaults(void)
settings->menu.dynamic_wallpaper_enable = false;
settings->menu.wallpaper.opacity = menu_wallpaper_opacity;
settings->menu.footer.opacity = menu_footer_opacity;
settings->menu.header.opacity = menu_header_opacity;
settings->menu.thumbnails = menu_thumbnails_default;
settings->menu.show_advanced_settings = show_advanced_settings;
settings->menu.entry_normal_color = menu_entry_normal_color;
@ -1332,6 +1333,7 @@ static bool config_load_file(const char *path, bool set_defaults)
"menu_dynamic_wallpaper_enable");
CONFIG_GET_FLOAT_BASE(conf, settings, menu.wallpaper.opacity, "menu_wallpaper_opacity");
CONFIG_GET_FLOAT_BASE(conf, settings, menu.footer.opacity, "menu_footer_opacity");
CONFIG_GET_FLOAT_BASE(conf, settings, menu.header.opacity, "menu_header_opacity");
CONFIG_GET_INT_BASE(conf, settings, menu.thumbnails,
"menu_thumbnails");
CONFIG_GET_BOOL_BASE(conf, settings, menu.navigation.wraparound.enable,
@ -2715,6 +2717,8 @@ bool config_save_file(const char *path)
settings->menu.wallpaper.opacity);
config_set_float(conf, "menu_footer_opacity",
settings->menu.footer.opacity);
config_set_float(conf, "menu_header_opacity",
settings->menu.header.opacity);
#endif
config_set_string(conf, "video_filter",
settings->path.softfilter_plugin);

View File

@ -131,6 +131,11 @@ typedef struct settings
float opacity;
} footer;
struct
{
float opacity;
} header;
struct
{
bool enable;

View File

@ -1643,6 +1643,8 @@ static const char *menu_hash_to_str_us_label_enum(enum msg_hash_enums msg)
return "xmb_menu_color_theme";
case MENU_ENUM_LABEL_MATERIALUI_MENU_COLOR_THEME:
return "materialui_menu_color_theme";
case MENU_ENUM_LABEL_MATERIALUI_MENU_HEADER_OPACITY:
return "materialui_menu_header_opacity";
case MENU_ENUM_LABEL_MATERIALUI_MENU_FOOTER_OPACITY:
return "materialui_menu_footer_opacity";
case MENU_ENUM_LABEL_XMB_SHADOWS_ENABLE:
@ -2125,6 +2127,8 @@ const char *msg_hash_to_str_us(enum msg_hash_enums msg)
return "Ribbon";
case MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_FOOTER_OPACITY:
return "Footer Opacity";
case MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_HEADER_OPACITY:
return "Header Opacity";
case MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_BLUE:
return "Blue";
case MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_BLUE_GREY:

View File

@ -780,6 +780,7 @@ static void mui_frame(void *data)
0.00, 0.00, 0.00, 0.2,
0.00, 0.00, 0.00, 0.2,
};
/* TODO/FIXME - convert this over to new hex format */
float greyish_blue[16] = {
0.22, 0.28, 0.31, 1.00,
0.22, 0.28, 0.31, 1.00,
@ -818,6 +819,7 @@ static void mui_frame(void *data)
float color_nv_body[16] = {0};
float color_nv_accent[16] = {0};
float footer_bg_color_real[16] = {0};
float header_bg_color_real[16] = {0};
unsigned width = 0;
unsigned height = 0;
unsigned ticker_limit = 0;
@ -853,10 +855,11 @@ static void mui_frame(void *data)
{
case MATERIALUI_THEME_BLUE:
hex32_to_rgba_normalized(0x2196F3, blue_500, 1.00);
hex32_to_rgba_normalized(0x2196F3, header_bg_color_real, 1.00);
hex32_to_rgba_normalized(0xE3F2FD, blue_50, 0.90);
hex32_to_rgba_normalized(0xFFFFFF, footer_bg_color_real, 1.00);
header_bg_color = blue_500;
header_bg_color = header_bg_color_real;
highlighted_entry_color = blue_50;
footer_bg_color = footer_bg_color_real;
body_bg_color = white_transp_bg;
@ -873,10 +876,11 @@ static void mui_frame(void *data)
break;
case MATERIALUI_THEME_BLUE_GREY:
hex32_to_rgba_normalized(0x607D8B, blue_grey_500, 1.00);
hex32_to_rgba_normalized(0x607D8B, header_bg_color_real, 1.00);
hex32_to_rgba_normalized(0xCFD8DC, blue_grey_50, 0.90);
hex32_to_rgba_normalized(0xFFFFFF, footer_bg_color_real, 1.00);
header_bg_color = blue_grey_500;
header_bg_color = header_bg_color_real;
body_bg_color = white_transp_bg;
highlighted_entry_color = blue_grey_50;
footer_bg_color = footer_bg_color_real;
@ -893,10 +897,11 @@ static void mui_frame(void *data)
break;
case MATERIALUI_THEME_GREEN:
hex32_to_rgba_normalized(0x4CAF50, green_500, 1.00);
hex32_to_rgba_normalized(0x4CAF50, header_bg_color_real, 1.00);
hex32_to_rgba_normalized(0xC8E6C9, green_50, 0.90);
hex32_to_rgba_normalized(0xFFFFFF, footer_bg_color_real, 1.00);
header_bg_color = green_500;
header_bg_color = header_bg_color_real;
body_bg_color = white_transp_bg;
highlighted_entry_color = green_50;
footer_bg_color = footer_bg_color_real;
@ -913,10 +918,11 @@ static void mui_frame(void *data)
break;
case MATERIALUI_THEME_RED:
hex32_to_rgba_normalized(0xF44336, red_500, 1.00);
hex32_to_rgba_normalized(0xF44336, header_bg_color_real, 1.00);
hex32_to_rgba_normalized(0xFFEBEE, red_50, 0.90);
hex32_to_rgba_normalized(0xFFFFFF, footer_bg_color_real, 1.00);
header_bg_color = red_500;
header_bg_color = header_bg_color_real;
body_bg_color = white_transp_bg;
highlighted_entry_color = red_50;
footer_bg_color = footer_bg_color_real;
@ -934,10 +940,12 @@ static void mui_frame(void *data)
break;
case MATERIALUI_THEME_YELLOW:
hex32_to_rgba_normalized(0xFFEB3B, yellow_500, 1.00);
hex32_to_rgba_normalized(0xFFEB3B, header_bg_color_real, 1.00);
hex32_to_rgba_normalized(0xFFF9C4, yellow_200, 0.90);
hex32_to_rgba_normalized(0xFFFFFF, footer_bg_color_real, 1.00);
header_bg_color = yellow_500;
header_bg_color = header_bg_color_real;
body_bg_color = white_transp_bg;
highlighted_entry_color = yellow_200;
footer_bg_color = footer_bg_color_real;
@ -954,7 +962,8 @@ static void mui_frame(void *data)
break;
case MATERIALUI_THEME_DARK_BLUE:
hex32_to_rgba_normalized(0x212121, footer_bg_color_real, 1.00);
header_bg_color = greyish_blue;
memcpy(header_bg_color_real, greyish_blue, sizeof(header_bg_color_real));
header_bg_color = header_bg_color_real;
body_bg_color = almost_black;
highlighted_entry_color = grey_bg;
footer_bg_color = footer_bg_color_real;
@ -971,11 +980,12 @@ static void mui_frame(void *data)
break;
case MATERIALUI_THEME_NVIDIA_SHIELD:
hex32_to_rgba_normalized(0x282F37, color_nv_header,1.00);
hex32_to_rgba_normalized(0x282F37, header_bg_color_real,1.00);
hex32_to_rgba_normalized(0x202427, color_nv_body, 0.90);
hex32_to_rgba_normalized(0x77B900, color_nv_accent,0.90);
hex32_to_rgba_normalized(0x202427, footer_bg_color_real, 1.00);
header_bg_color = color_nv_header;
header_bg_color = header_bg_color_real;
body_bg_color = color_nv_body;
highlighted_entry_color = color_nv_accent;
footer_bg_color = footer_bg_color_real;
@ -992,6 +1002,7 @@ static void mui_frame(void *data)
break;
}
menu_display_set_alpha(header_bg_color_real, settings->menu.header.opacity);
menu_display_set_alpha(footer_bg_color_real, settings->menu.footer.opacity);
video_driver_get_size(&width, &height);

View File

@ -4424,6 +4424,9 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_MATERIALUI_MENU_COLOR_THEME,
PARSE_ONLY_UINT, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_MATERIALUI_MENU_HEADER_OPACITY,
PARSE_ONLY_FLOAT, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_MATERIALUI_MENU_FOOTER_OPACITY,
PARSE_ONLY_FLOAT, false);

View File

@ -6967,6 +6967,21 @@ static bool setting_append_list(
menu_settings_list_current_add_range(list, list_info, 0, 6, 1, true, true);
menu_settings_list_current_add_enum_idx(list, list_info, MENU_ENUM_LABEL_MATERIALUI_MENU_COLOR_THEME);
CONFIG_FLOAT(
list, list_info,
&settings->menu.header.opacity,
msg_hash_to_str(MENU_ENUM_LABEL_MATERIALUI_MENU_HEADER_OPACITY),
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_HEADER_OPACITY),
menu_header_opacity,
"%.3f %",
&group_info,
&subgroup_info,
parent_group,
general_write_handler,
general_read_handler);
menu_settings_list_current_add_range(list, list_info, 0.0, 1.0, 0.010, true, true);
menu_settings_list_current_add_enum_idx(list, list_info, MENU_ENUM_LABEL_MATERIALUI_MENU_HEADER_OPACITY);
CONFIG_FLOAT(
list, list_info,
&settings->menu.footer.opacity,

View File

@ -304,6 +304,8 @@ enum msg_hash_enums
MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_RIBBON_SIMPLIFIED,
MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_RIBBON,
MENU_ENUM_LABEL_MATERIALUI_MENU_HEADER_OPACITY,
MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_HEADER_OPACITY,
MENU_ENUM_LABEL_MATERIALUI_MENU_FOOTER_OPACITY,
MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_FOOTER_OPACITY,
MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_BLUE,