diff options
Diffstat (limited to 'pango/pangoxft-fontmap.c')
-rw-r--r-- | pango/pangoxft-fontmap.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/pango/pangoxft-fontmap.c b/pango/pangoxft-fontmap.c index 803dc186..4976890c 100644 --- a/pango/pangoxft-fontmap.c +++ b/pango/pangoxft-fontmap.c @@ -62,6 +62,7 @@ struct _PangoXftFontMapClass }; static guint pango_xft_font_map_get_serial (PangoFontMap *fontmap); +static void pango_xft_font_map_changed (PangoFontMap *fontmap); static void pango_xft_font_map_default_substitute (PangoFcFontMap *fcfontmap, FcPattern *pattern); static PangoFcFont * pango_xft_font_map_new_font (PangoFcFontMap *fcfontmap, @@ -83,6 +84,7 @@ pango_xft_font_map_class_init (PangoXftFontMapClass *class) gobject_class->finalize = pango_xft_font_map_finalize; fontmap_class->get_serial = pango_xft_font_map_get_serial; + fontmap_class->changed = pango_xft_font_map_changed; fcfontmap_class->default_substitute = pango_xft_font_map_default_substitute; fcfontmap_class->new_font = pango_xft_font_map_new_font; @@ -121,6 +123,16 @@ pango_xft_font_map_get_serial (PangoFontMap *fontmap) return xftfontmap->serial; } +static void +pango_xft_font_map_changed (PangoFontMap *fontmap) +{ + PangoXftFontMap *xftfontmap = PANGO_XFT_FONT_MAP (fontmap); + + xftfontmap->serial++; + if (xftfontmap->serial == 0) + xftfontmap->serial++; +} + static PangoFontMap * pango_xft_find_font_map (Display *display, int screen) |