Re: [PATCH v2] tools: port perf ui from GTK 2 to GTK 3

From: Matt Turner
Date: Mon Oct 31 2022 - 10:02:54 EST


On Wed, Oct 19, 2022 at 7:30 PM Matt Turner <mattst88@xxxxxxxxx> wrote:
>
> From: Jelle van der Waa <jvanderwaa@xxxxxxxxxx>
>
> GTK 2 is a legacy API and the newer version is GTK 3 which changes a few
> API functions. gtk_tree_view_set_rules_hint is no longer required since
> theme's are now responsible to handle this, gtk_vbox_new is deprecated
> and replaced by passing the orientation to gtk_box_new. Apart from these
> changes the accessing of the screen changed in GTK which requires using
> new functions for getting geometry. Lastly the GTK_STOCK_OK define is
> deprecated in GTK 3.
>
> Signed-off-by: Jelle van der Waa <jvanderwaa@xxxxxxxxxx>
> Signed-off-by: Matt Turner <mattst88@xxxxxxxxx>
> ---
> Originally sent in 2019. I've rebased it and given it a test.
>
> One problem I've noticed is that C++ symbol names are often broken.
> E.g.:
>
> (perf:3254940): Gtk-WARNING **: 21:47:46.663: Failed to set text from
> markup due to error parsing markup: Error on line 1 char 95:
> “std::char_traits<char” is not a valid name: “<”
>
> Presumably we need to call g_markup_escape_text() somewhere, but I
> struggled to find the right place.
>
> Without the patch, the GTK-2 version repeatedly segfaults, so this is an
> improvement regardless.
>
> v2: Dropped changes to test-all.c. I don't know how to build that
> apparently.


Arnaldo, does this work better for you?