From 9f0a214a69d0e5d61512d0b003e03595b011924b Mon Sep 17 00:00:00 2001 From: Christian Hergert Date: Fri, 25 Aug 2023 17:41:47 -0700 Subject: [PATCH] sysprof: include file/category in tooltips --- po/POTFILES.in | 1 + src/sysprof/sysprof-flame-graph.c | 13 ++++++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/po/POTFILES.in b/po/POTFILES.in index c1c11928..3a6015d5 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -27,6 +27,7 @@ src/sysprof/sysprof-dbus-section.ui src/sysprof/sysprof-dbus-utility.ui src/sysprof/sysprof-energy-section.ui src/sysprof/sysprof-files-section.ui +src/sysprof/sysprof-flame-graph.c src/sysprof/sysprof-frame-utility.ui src/sysprof/sysprof-graphics-section.ui src/sysprof/sysprof-greeter.c diff --git a/src/sysprof/sysprof-flame-graph.c b/src/sysprof/sysprof-flame-graph.c index f0fab57d..474e56f0 100644 --- a/src/sysprof/sysprof-flame-graph.c +++ b/src/sysprof/sysprof-flame-graph.c @@ -20,6 +20,8 @@ #include "config.h" +#include + #include "sysprof-callgraph-private.h" #include "sysprof-category-icon.h" #include "sysprof-color-iter-private.h" @@ -328,6 +330,7 @@ sysprof_flame_graph_query_tooltip (GtkWidget *widget, g_autoptr(GString) string = g_string_new (NULL); SysprofSymbol *symbol = rect->node->summary->symbol; SysprofCallgraphNode *root = rect->node; + SysprofCallgraphCategory category = SYSPROF_CALLGRAPH_CATEGORY_UNMASK (rect->node->category); while (root->parent) root = root->parent; @@ -337,8 +340,16 @@ sysprof_flame_graph_query_tooltip (GtkWidget *widget, if (symbol->binary_nick && symbol->binary_nick[0]) g_string_append_printf (string, " [%s]", symbol->binary_nick); + if (category && category != SYSPROF_CALLGRAPH_CATEGORY_UNCATEGORIZED) + { + const char *name = _sysprof_callgraph_category_get_name (category); + + if (name) + g_string_append_printf (string, "\n%s: %s", _("Category"), name); + } + if (symbol->binary_path && symbol->binary_path[0]) - g_string_append_printf (string, "\n%s", symbol->binary_path); + g_string_append_printf (string, "\n%s: %s", _("File"), symbol->binary_path); g_string_append_c (string, '\n');