From: Alexander Larsson Date: Wed, 6 Feb 2013 13:28:20 +0000 (+0100) Subject: Add singleton for css number 1.0 X-Git-Url: http://pileus.org/git/?a=commitdiff_plain;h=7d21ec23f6a750f5a7fc2342e4522c0bf817a13a;p=~andy%2Fgtk Add singleton for css number 1.0 This will be nice as this is will be the default for opacity. https://bugzilla.gnome.org/show_bug.cgi?id=687842 --- diff --git a/gtk/gtkcssnumbervalue.c b/gtk/gtkcssnumbervalue.c index 19a5f596a..ed2bfe506 100644 --- a/gtk/gtkcssnumbervalue.c +++ b/gtk/gtkcssnumbervalue.c @@ -189,7 +189,10 @@ GtkCssValue * _gtk_css_number_value_new (double value, GtkCssUnit unit) { - static GtkCssValue zero_singleton = { >K_CSS_VALUE_NUMBER, 1, GTK_CSS_NUMBER, 0 }; + static GtkCssValue number_singletons[] = { + { >K_CSS_VALUE_NUMBER, 1, GTK_CSS_NUMBER, 0 }, + { >K_CSS_VALUE_NUMBER, 1, GTK_CSS_NUMBER, 1 }, + }; static GtkCssValue px_singletons[] = { { >K_CSS_VALUE_NUMBER, 1, GTK_CSS_PX, 0 }, { >K_CSS_VALUE_NUMBER, 1, GTK_CSS_PX, 1 }, @@ -199,8 +202,8 @@ _gtk_css_number_value_new (double value, }; GtkCssValue *result; - if (unit == GTK_CSS_NUMBER && value == 0) - return _gtk_css_value_ref (&zero_singleton); + if (unit == GTK_CSS_NUMBER && (value == 0 || value == 1)) + return _gtk_css_value_ref (&number_singletons[(int) value]); if (unit == GTK_CSS_PX && (value == 0 ||