mirror of
https://github.com/brl/mutter.git
synced 2024-12-23 19:42:05 +00:00
theme: Allow disabling fallback colors in gtk:custom()
gtk:custom() requires a fallback color in case the GTK+ theme in use does not define the desired color. As in general the fallback color will approximate the intended color, there is the risk of typos going unnoticed. To make catching these kind of errors easier, allow to ignore the fallback color specified (and fall back to a nice shade of pink instead) by setting an environment variable. https://bugzilla.gnome.org/show_bug.cgi?id=656112
This commit is contained in:
parent
08363f4d9b
commit
a485685867
@ -1195,8 +1195,15 @@ meta_color_spec_new_from_string (const char *str,
|
||||
str[8] == 'o' && str[9] == 'm')
|
||||
{
|
||||
const char *color_name_start, *fallback_str_start, *end;
|
||||
char *color_name, *fallback_str;
|
||||
char *color_name;
|
||||
MetaColorSpec *fallback = NULL;
|
||||
static gboolean debug, debug_set = FALSE;
|
||||
|
||||
if (!debug_set)
|
||||
{
|
||||
debug = g_getenv ("MUTTER_DISABLE_FALLBACK_COLOR") != NULL;
|
||||
debug_set = TRUE;
|
||||
}
|
||||
|
||||
if (str[10] != '(')
|
||||
{
|
||||
@ -1237,9 +1244,18 @@ meta_color_spec_new_from_string (const char *str,
|
||||
return NULL;
|
||||
}
|
||||
|
||||
fallback_str = g_strndup (fallback_str_start, end - fallback_str_start);
|
||||
fallback = meta_color_spec_new_from_string (fallback_str, err);
|
||||
g_free (fallback_str);
|
||||
if (!debug)
|
||||
{
|
||||
char *fallback_str;
|
||||
fallback_str = g_strndup (fallback_str_start,
|
||||
end - fallback_str_start);
|
||||
fallback = meta_color_spec_new_from_string (fallback_str, err);
|
||||
g_free (fallback_str);
|
||||
}
|
||||
else
|
||||
{
|
||||
fallback = meta_color_spec_new_from_string ("pink", err);
|
||||
}
|
||||
|
||||
if (fallback == NULL)
|
||||
return NULL;
|
||||
|
Loading…
Reference in New Issue
Block a user