From: Matthias Clasen Date: Tue, 14 Jan 2020 00:18:31 +0000 (-0500) Subject: Add a way to dump css node change values X-Git-Tag: archive/raspbian/4.4.1+ds1-2+rpi1^2~18^2~20^2~308^2~9 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=b41bba07faa808d741a4cf1300364cdcc93c7772;p=gtk4.git Add a way to dump css node change values Add a GTK_STYLE_CONTEXT_PRINT_SHOW_CHANGE flag that tells gtk_style_context_to_string to include the change values of nodes in the output. This will help debugging css change tracking. --- diff --git a/gtk/gtkcssnode.c b/gtk/gtkcssnode.c index ad3b707f60..4fe350d5ff 100644 --- a/gtk/gtkcssnode.c +++ b/gtk/gtkcssnode.c @@ -19,6 +19,7 @@ #include "gtkcssnodeprivate.h" +#include "gtkcssstaticstyleprivate.h" #include "gtkcssanimatedstyleprivate.h" #include "gtkcssstylepropertyprivate.h" #include "gtkintl.h" @@ -1436,6 +1437,16 @@ gtk_css_node_print (GtkCssNode *cssnode, if (!cssnode->visible) g_string_append_c (string, ']'); + if (flags & GTK_STYLE_CONTEXT_PRINT_SHOW_CHANGE) + { + GtkCssStyle *style = gtk_css_node_get_style (cssnode); + GtkCssChange change; + + change = gtk_css_static_style_get_change (gtk_css_style_get_static_style (style)); + g_string_append (string, " "); + gtk_css_change_print (change, string); + } + g_string_append_c (string, '\n'); if (flags & GTK_STYLE_CONTEXT_PRINT_SHOW_STYLE) diff --git a/gtk/gtkstylecontext.h b/gtk/gtkstylecontext.h index b22bc106e6..c7c5b78c59 100644 --- a/gtk/gtkstylecontext.h +++ b/gtk/gtkstylecontext.h @@ -1053,7 +1053,8 @@ void gtk_render_insertion_cursor typedef enum { GTK_STYLE_CONTEXT_PRINT_NONE = 0, GTK_STYLE_CONTEXT_PRINT_RECURSE = 1 << 0, - GTK_STYLE_CONTEXT_PRINT_SHOW_STYLE = 1 << 1 + GTK_STYLE_CONTEXT_PRINT_SHOW_STYLE = 1 << 1, + GTK_STYLE_CONTEXT_PRINT_SHOW_CHANGE = 1 << 2 } GtkStyleContextPrintFlags; GDK_AVAILABLE_IN_ALL