[gtk/matthiasc/css-matching-4: 1/4] selector stats
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/matthiasc/css-matching-4: 1/4] selector stats
- Date: Mon, 20 Jan 2020 15:54:01 +0000 (UTC)
commit bf371e94dfafa72620040277ae7c77bc0907590f
Author: Matthias Clasen <mclasen redhat com>
Date: Sun Jan 19 09:04:29 2020 -0500
selector stats
gtk/gtkcssselector.c | 20 +++++++++++++++++++-
gtk/gtkwindow.c | 4 ++++
2 files changed, 23 insertions(+), 1 deletion(-)
---
diff --git a/gtk/gtkcssselector.c b/gtk/gtkcssselector.c
index aabffb3e3e..50414edac3 100644
--- a/gtk/gtkcssselector.c
+++ b/gtk/gtkcssselector.c
@@ -171,11 +171,29 @@ gtk_css_selector_tree_found_match (const GtkCssSelectorTree *tree,
}
}
+static int match_count;
+static int positive_match_count;
+
+void print_match_count (void);
+void print_match_count (void)
+{
+ g_print ("%d selector matches (%d positive)\n", match_count, positive_match_count);
+ match_count = 0;
+ positive_match_count = 0;
+}
+
static inline gboolean
gtk_css_selector_match (const GtkCssSelector *selector,
const GtkCssMatcher *matcher)
{
- return selector->class->match_one (selector, matcher);
+ gboolean result;
+
+ result = selector->class->match_one (selector, matcher);
+
+ match_count++;
+ positive_match_count += result;
+
+ return result;
}
static inline gboolean
diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c
index e390e6bca2..0ff22e59af 100644
--- a/gtk/gtkwindow.c
+++ b/gtk/gtkwindow.c
@@ -6008,11 +6008,15 @@ surface_size_changed (GtkWidget *widget,
gtk_window_configure (GTK_WINDOW (widget), width, height);
}
+extern void print_match_count (void);
+
static gboolean
surface_render (GdkSurface *surface,
cairo_region_t *region,
GtkWidget *widget)
{
+ print_match_count ();
+
gtk_widget_render (widget, surface, region);
return TRUE;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]