Comment 2 for bug 1404054

Revision history for this message
Rob McCathie (korrode) wrote :

I spoke to the author (or one of the authors at least) of the GTK3/Metacity3 support.

They said they were busy currently but that i could try reverting the changes made to gtk/window-decorator/decorator.c from this merge:
https://code.launchpad.net/~albertsmuktupavels/compiz/gtk-window-decorator-6/+merge/232477

I did this and it appears to have worked fine. I can now use the "titlebar-uses-system-font" setting.

Here's the reversal of those changes:

-----patch starts-----

diff -Naur a/gtk/window-decorator/decorator.c b/gtk/window-decorator/decorator.c
--- a/gtk/window-decorator/decorator.c 2014-11-07 00:07:52.000000000 +1100
+++ b/gtk/window-decorator/decorator.c 2014-12-19 22:27:36.160876989 +1100
@@ -139,23 +139,18 @@
 frame_update_titlebar_font (decor_frame_t *frame)
 {
     const PangoFontDescription *font_desc;
- PangoFontDescription *free_font_desc;
- PangoFontMetrics *metrics;
- PangoLanguage *lang;
+ PangoFontMetrics *metrics;
+ PangoLanguage *lang;

- free_font_desc = NULL;
     frame = gwd_decor_frame_ref (frame);

     font_desc = get_titlebar_font (frame);
     if (!font_desc)
     {
- GtkCssProvider *provider = gtk_css_provider_get_default ();
- GtkStyleContext *context = gtk_style_context_new ();
+ GtkStyle *default_style;

- gtk_style_context_add_provider (context, GTK_STYLE_PROVIDER (provider), GTK_STYLE_PROVIDER_PRIORITY_FALLBACK);
-
- gtk_style_context_get (context, GTK_STATE_FLAG_NORMAL, "font", &free_font_desc, NULL);
- font_desc = (const PangoFontDescription *) free_font_desc;
+ default_style = gtk_widget_get_default_style ();
+ font_desc = default_style->font_desc;
     }

     pango_context_set_font_description (frame->pango_context, font_desc);
@@ -169,9 +164,6 @@
     gwd_decor_frame_unref (frame);

     pango_font_metrics_unref (metrics);
-
- if (free_font_desc)
- pango_font_description_free (free_font_desc);
 }

 void

-----patch ends-----

Nonetheless, i'll provide a gdb backtrace shortly.