From: Matthias Clasen Date: Sat, 31 Mar 2018 22:57:06 +0000 (-0400) Subject: Font chooser: Hide tweak button sometimes X-Git-Tag: archive/raspbian/4.4.1+ds1-2+rpi1^2~18^2~22^2~704 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=8fb30a6a7bff433f9a94fd6b90253ddfd5cba502;p=gtk4.git Font chooser: Hide tweak button sometimes When there is no chance of tweaking anything, don't show a tweak button. --- diff --git a/gtk/gtkfontchooserdialog.c b/gtk/gtkfontchooserdialog.c index b481238885..a2ab27da6e 100644 --- a/gtk/gtkfontchooserdialog.c +++ b/gtk/gtkfontchooserdialog.c @@ -138,6 +138,21 @@ gtk_font_chooser_dialog_key_press_event (GtkWidget *dialog, return handled; } +static void +update_tweak_button (GtkFontChooserDialog *dialog) +{ + GtkFontChooserLevel level; + + if (!dialog->priv->tweak_button) + return; + + g_object_get (dialog->priv->fontchooser, "level", &level, NULL); + if ((level & (GTK_FONT_CHOOSER_LEVEL_FEATURES | GTK_FONT_CHOOSER_LEVEL_VARIATIONS)) != 0) + gtk_widget_show (dialog->priv->tweak_button); + else + gtk_widget_hide (dialog->priv->tweak_button); +} + static void setup_tweak_button (GtkFontChooserDialog *dialog) { @@ -238,6 +253,8 @@ gtk_font_chooser_dialog_init (GtkFontChooserDialog *fontchooserdiag) g_signal_connect_swapped (priv->fontchooser, "notify::font-desc", G_CALLBACK (update_button), fontchooserdiag); update_button (fontchooserdiag); + g_signal_connect_swapped (priv->fontchooser, "notify::level", + G_CALLBACK (update_tweak_button), fontchooserdiag); } /**