From: Sergey Bugaev Date: Fri, 25 Aug 2023 16:13:43 +0000 (+0300) Subject: colorbutton, fontbutton: Propagate focus-on-click to inner buttons X-Git-Tag: archive/raspbian/4.12.4+ds-3+rpi1^2~21^2~2^2~7 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=83112f942cdeac3d26e80be2053ff061527ea8f3;p=gtk4.git colorbutton, fontbutton: Propagate focus-on-click to inner buttons These widgets wrap a GtkButton internally. Make it possible to prevent the inner button from grabbing focus on click by propagating the value of the focus-on-click property from the widget to the inner button. Signed-off-by: Sergey Bugaev --- diff --git a/gtk/deprecated/gtkcolorbutton.c b/gtk/deprecated/gtkcolorbutton.c index 6cd40101aa..83c777e857 100644 --- a/gtk/deprecated/gtkcolorbutton.c +++ b/gtk/deprecated/gtkcolorbutton.c @@ -290,6 +290,9 @@ gtk_color_button_init (GtkColorButton *button) button->button = gtk_button_new (); g_signal_connect (button->button, "clicked", G_CALLBACK (gtk_color_button_clicked), button); + g_object_bind_property (button, "focus-on-click", + button->button, "focus-on-click", + 0); gtk_widget_set_parent (button->button, GTK_WIDGET (button)); button->swatch = g_object_new (GTK_TYPE_COLOR_SWATCH, diff --git a/gtk/deprecated/gtkfontbutton.c b/gtk/deprecated/gtkfontbutton.c index 2a6f037e3c..21d59a247e 100644 --- a/gtk/deprecated/gtkfontbutton.c +++ b/gtk/deprecated/gtkfontbutton.c @@ -594,6 +594,9 @@ gtk_font_button_init (GtkFontButton *font_button) font_button->button = gtk_button_new (); g_signal_connect (font_button->button, "clicked", G_CALLBACK (gtk_font_button_clicked), font_button); + g_object_bind_property (font_button, "focus-on-click", + font_button->button, "focus-on-click", + 0); font_button->font_label = gtk_label_new (_("Font")); gtk_widget_set_hexpand (font_button->font_label, TRUE); font_button->size_label = gtk_label_new ("14");