summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2018-01-18 19:48:12 -0500
committerMatthias Clasen <mclasen@redhat.com>2018-01-18 19:48:12 -0500
commit5f675181ceec8cc73a48b8caca44d1218194cdc4 (patch)
tree16d7b6fbd71bb6d6331883f39e6565f77ff81640
parente10f6160655dd36423e0f7fd5d9c6a8b6e4c774c (diff)
downloadgtk+-5f675181ceec8cc73a48b8caca44d1218194cdc4.tar.gz
font chooser dialog: Improve sensitivity handling
Enable the select button when a font is selected, as it should be.
-rw-r--r--gtk/gtkfontchooserdialog.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/gtk/gtkfontchooserdialog.c b/gtk/gtkfontchooserdialog.c
index ac11ba9284..4805ad374e 100644
--- a/gtk/gtkfontchooserdialog.c
+++ b/gtk/gtkfontchooserdialog.c
@@ -160,6 +160,20 @@ gtk_font_chooser_dialog_class_init (GtkFontChooserDialogClass *klass)
}
static void
+update_button (GtkFontChooserDialog *dialog)
+{
+ GtkFontChooserDialogPrivate *priv = dialog->priv;
+ PangoFontDescription *desc;
+
+ desc = gtk_font_chooser_get_font_desc (GTK_FONT_CHOOSER (priv->fontchooser));
+
+ gtk_widget_set_sensitive (priv->select_button, desc != NULL);
+
+ if (desc)
+ pango_font_description_free (desc);
+}
+
+static void
gtk_font_chooser_dialog_init (GtkFontChooserDialog *fontchooserdiag)
{
GtkFontChooserDialogPrivate *priv;
@@ -182,6 +196,10 @@ G_GNUC_END_IGNORE_DEPRECATIONS
_gtk_font_chooser_set_delegate (GTK_FONT_CHOOSER (fontchooserdiag),
GTK_FONT_CHOOSER (priv->fontchooser));
+
+ g_signal_connect_swapped (priv->fontchooser, "notify::font-desc",
+ G_CALLBACK (update_button), fontchooserdiag);
+ update_button (fontchooserdiag);
}
/**