diff options
Diffstat (limited to 'gtk/gtkcssnodedeclaration.c')
-rw-r--r-- | gtk/gtkcssnodedeclaration.c | 21 |
1 files changed, 4 insertions, 17 deletions
diff --git a/gtk/gtkcssnodedeclaration.c b/gtk/gtkcssnodedeclaration.c index 0d9a28154d..63a9cb40ee 100644 --- a/gtk/gtkcssnodedeclaration.c +++ b/gtk/gtkcssnodedeclaration.c @@ -447,21 +447,6 @@ void gtk_css_node_declaration_print (const GtkCssNodeDeclaration *decl, GString *string) { - static const char *state_names[] = { - "active", - "hover", - "selected", - "disabled", - "indeterminate", - "focus", - "backdrop", - "dir(ltr)", - "dir(rtl)", - "link", - "visited", - "checked", - "drop(active)" - }; const GQuark *classes; guint i; char **classnames; @@ -492,12 +477,14 @@ gtk_css_node_declaration_print (const GtkCssNodeDeclaration *decl, } g_free (classnames); - for (i = 0; i < G_N_ELEMENTS (state_names); i++) + for (i = 0; i < sizeof (GtkStateFlags) * 8; i++) { if (decl->state & (1 << i)) { + const char *name = gtk_css_pseudoclass_name (1 << i); + g_assert (name); g_string_append_c (string, ':'); - g_string_append (string, state_names[i]); + g_string_append (string, name); } } } |