[gimp] Revert "app: create pango font description of statusbar zoom field only once..."
- From: Jehan Pagès <jehanp src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] Revert "app: create pango font description of statusbar zoom field only once..."
- Date: Sat, 6 Feb 2016 14:55:40 +0000 (UTC)
commit 710455b71cd11ca604a2c42cb53bff5484b543b0
Author: Jehan <jehan girinstud io>
Date: Sat Feb 6 15:48:39 2016 +0100
Revert "app: create pango font description of statusbar zoom field only once..."
This reverts commit 6878b494917d258d069fb29db1847068ee10d8c3.
I didn't take into consideration that different themes could apply
various fonts, font sizes or label-scale for the widget. So the font
description needs to be reinitialized at every theme change.
app/display/gimpscalecombobox.c | 33 ++++++++++++++++-----------------
1 files changed, 16 insertions(+), 17 deletions(-)
---
diff --git a/app/display/gimpscalecombobox.c b/app/display/gimpscalecombobox.c
index 29a7dc0..29e3158 100644
--- a/app/display/gimpscalecombobox.c
+++ b/app/display/gimpscalecombobox.c
@@ -212,33 +212,32 @@ static void
gimp_scale_combo_box_style_set (GtkWidget *widget,
GtkStyle *prev_style)
{
- GtkWidget *entry;
- GtkRcStyle *rc_style;
+ GtkWidget *entry;
+ GtkRcStyle *rc_style;
+ PangoContext *context;
+ PangoFontDescription *font_desc;
+ gint font_size;
+ gdouble label_scale;
GTK_WIDGET_CLASS (parent_class)->style_set (widget, prev_style);
+ gtk_widget_style_get (widget, "label-scale", &label_scale, NULL);
+
entry = gtk_bin_get_child (GTK_BIN (widget));
rc_style = gtk_widget_get_modifier_style (GTK_WIDGET (entry));
- if (! rc_style->font_desc)
- {
- PangoContext *context;
- PangoFontDescription *font_desc;
- gint font_size;
- gdouble label_scale;
-
- gtk_widget_style_get (widget, "label-scale", &label_scale, NULL);
+ if (rc_style->font_desc)
+ pango_font_description_free (rc_style->font_desc);
- context = gtk_widget_get_pango_context (widget);
- font_desc = pango_context_get_font_description (context);
- rc_style->font_desc = pango_font_description_copy (font_desc);
+ context = gtk_widget_get_pango_context (widget);
+ font_desc = pango_context_get_font_description (context);
+ rc_style->font_desc = pango_font_description_copy (font_desc);
- font_size = pango_font_description_get_size (rc_style->font_desc);
- pango_font_description_set_size (rc_style->font_desc, label_scale * font_size);
+ font_size = pango_font_description_get_size (rc_style->font_desc);
+ pango_font_description_set_size (rc_style->font_desc, label_scale * font_size);
- gtk_widget_modify_style (GTK_WIDGET (entry), rc_style);
- }
+ gtk_widget_modify_style (GTK_WIDGET (entry), rc_style);
}
static void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]