css: Move binding set parsing to strfuncs

This commit is contained in:
Benjamin Otte
2011-05-18 18:03:23 +02:00
parent c73d1cf2a6
commit 03e84b7ee3
2 changed files with 56 additions and 32 deletions

View File

@ -1376,32 +1376,6 @@ css_provider_commit (GtkCssProvider *css_provider,
g_slist_free (selectors);
}
static void
resolve_binding_sets (const gchar *value_str,
GValue *value)
{
GPtrArray *array;
gchar **bindings, **str;
bindings = g_strsplit (value_str, ",", -1);
array = g_ptr_array_new ();
for (str = bindings; *str; str++)
{
GtkBindingSet *binding_set;
binding_set = gtk_binding_set_find (g_strstrip (*str));
if (!binding_set)
continue;
g_ptr_array_add (array, binding_set);
}
g_value_take_boxed (value, array);
g_strfreev (bindings);
}
static void
gtk_css_provider_reset (GtkCssProvider *css_provider)
{
@ -1981,12 +1955,6 @@ parse_declaration (GtkCssScanner *scanner,
g_param_value_set_default (pspec, val);
gtk_css_ruleset_add (ruleset, pspec, val);
}
else if (strcmp (pspec->name, "gtk-key-bindings") == 0)
{
/* Private property holding the binding sets */
resolve_binding_sets (value_str, val);
gtk_css_ruleset_add (ruleset, pspec, val);
}
else if (parse_func)
{
GError *error = NULL;