From 3a8a9332d6444c8f732ea7f07eed02631a416d1e Mon Sep 17 00:00:00 2001 From: deepend Date: Fri, 30 Jan 2026 17:03:27 -0700 Subject: [PATCH] Added GTK3 button box creation branches with explicit layout settings across the fe-gtk dialogs while keeping GTK2-only gtk_hbutton_box_new() paths gated under !HAVE_GTK3. --- src/fe-gtk/banlist.c | 5 +++++ src/fe-gtk/dccgui.c | 10 ++++++++++ src/fe-gtk/editlist.c | 5 +++++ src/fe-gtk/fkeys.c | 5 +++++ src/fe-gtk/ignoregui.c | 5 +++++ src/fe-gtk/notifygui.c | 5 +++++ src/fe-gtk/plugingui.c | 5 +++++ src/fe-gtk/rawlog.c | 5 +++++ src/fe-gtk/servlistgui.c | 15 +++++++++++++-- src/fe-gtk/setup.c | 5 +++++ src/fe-gtk/textgui.c | 5 +++++ src/fe-gtk/urlgrab.c | 5 +++++ 12 files changed, 73 insertions(+), 2 deletions(-) diff --git a/src/fe-gtk/banlist.c b/src/fe-gtk/banlist.c index 1a3ae7a4..5cf1c7ca 100644 --- a/src/fe-gtk/banlist.c +++ b/src/fe-gtk/banlist.c @@ -867,8 +867,13 @@ banlist_opengui (struct session *sess) #endif } +#if HAVE_GTK3 + bbox = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); + gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_SPREAD); +#elif !HAVE_GTK3 bbox = gtk_hbutton_box_new (); gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_SPREAD); +#endif gtk_container_set_border_width (GTK_CONTAINER (bbox), 5); gtk_box_pack_end (GTK_BOX (vbox), bbox, 0, 0, 0); gtk_widget_show (bbox); diff --git a/src/fe-gtk/dccgui.c b/src/fe-gtk/dccgui.c index ea06e4b3..ce135f68 100644 --- a/src/fe-gtk/dccgui.c +++ b/src/fe-gtk/dccgui.c @@ -956,8 +956,13 @@ fe_dcc_open_recv_win (int passive) dccfwin.file_label = dcc_detail_label (_("File:"), detailbox, 0); dccfwin.address_label = dcc_detail_label (_("Address:"), detailbox, 1); +#if HAVE_GTK3 + bbox = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); + gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_SPREAD); +#elif !HAVE_GTK3 bbox = gtk_hbutton_box_new (); gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_SPREAD); +#endif gtk_box_pack_end (GTK_BOX (vbox), bbox, FALSE, FALSE, 2); dccfwin.abort_button = gtkutil_button (bbox, ICON_DCC_CANCEL, 0, abort_clicked, 0, _("Abort")); @@ -1157,8 +1162,13 @@ fe_dcc_open_chat_win (int passive) g_signal_connect (G_OBJECT (view), "row-activated", G_CALLBACK (dcc_chat_dclick_cb), NULL); +#if HAVE_GTK3 + bbox = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); + gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_SPREAD); +#elif !HAVE_GTK3 bbox = gtk_hbutton_box_new (); gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_SPREAD); +#endif gtk_box_pack_end (GTK_BOX (vbox), bbox, FALSE, FALSE, 2); dcccwin.abort_button = gtkutil_button (bbox, ICON_DCC_CANCEL, 0, abort_chat_clicked, 0, _("Abort")); diff --git a/src/fe-gtk/editlist.c b/src/fe-gtk/editlist.c index f479a37b..b04e498d 100644 --- a/src/fe-gtk/editlist.c +++ b/src/fe-gtk/editlist.c @@ -361,8 +361,13 @@ editlist_gui_open (char *title1, char *title2, GSList *list, char *title, char * if (help) gtk_widget_set_tooltip_text (view, help); +#if HAVE_GTK3 + box = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); + gtk_button_box_set_layout (GTK_BUTTON_BOX (box), GTK_BUTTONBOX_SPREAD); +#elif !HAVE_GTK3 box = gtk_hbutton_box_new (); gtk_button_box_set_layout (GTK_BUTTON_BOX (box), GTK_BUTTONBOX_SPREAD); +#endif gtk_box_pack_start (GTK_BOX (vbox), box, FALSE, FALSE, 2); gtk_container_set_border_width (GTK_CONTAINER (box), 5); gtk_widget_show (box); diff --git a/src/fe-gtk/fkeys.c b/src/fe-gtk/fkeys.c index e9b6b2c0..48973090 100644 --- a/src/fe-gtk/fkeys.c +++ b/src/fe-gtk/fkeys.c @@ -838,8 +838,13 @@ key_dialog_show () g_object_set_data (G_OBJECT (key_dialog), "view", view); g_object_set_data (G_OBJECT (key_dialog), "xtext", xtext); +#if HAVE_GTK3 + box = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); + gtk_button_box_set_layout (GTK_BUTTON_BOX (box), GTK_BUTTONBOX_SPREAD); +#elif !HAVE_GTK3 box = gtk_hbutton_box_new (); gtk_button_box_set_layout (GTK_BUTTON_BOX (box), GTK_BUTTONBOX_SPREAD); +#endif gtk_box_pack_start (GTK_BOX (vbox), box, FALSE, FALSE, 2); gtk_container_set_border_width (GTK_CONTAINER (box), 5); diff --git a/src/fe-gtk/ignoregui.c b/src/fe-gtk/ignoregui.c index 339b1b0b..e5429f7a 100644 --- a/src/fe-gtk/ignoregui.c +++ b/src/fe-gtk/ignoregui.c @@ -388,8 +388,13 @@ ignore_gui_open () gtk_box_pack_start (GTK_BOX (vbox), frame, 0, 0, 5); +#if HAVE_GTK3 + box = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); + gtk_button_box_set_layout (GTK_BUTTON_BOX (box), GTK_BUTTONBOX_SPREAD); +#elif !HAVE_GTK3 box = gtk_hbutton_box_new (); gtk_button_box_set_layout (GTK_BUTTON_BOX (box), GTK_BUTTONBOX_SPREAD); +#endif gtk_box_pack_start (GTK_BOX (vbox), box, FALSE, FALSE, 2); gtk_container_set_border_width (GTK_CONTAINER (box), 5); gtk_widget_show (box); diff --git a/src/fe-gtk/notifygui.c b/src/fe-gtk/notifygui.c index 0dfa8bda..3c42fb57 100644 --- a/src/fe-gtk/notifygui.c +++ b/src/fe-gtk/notifygui.c @@ -457,8 +457,13 @@ notify_opengui (void) view = notify_treeview_new (vbox); g_object_set_data (G_OBJECT (notify_window), "view", view); +#if HAVE_GTK3 + bbox = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); + gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_SPREAD); +#elif !HAVE_GTK3 bbox = gtk_hbutton_box_new (); gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_SPREAD); +#endif gtk_container_set_border_width (GTK_CONTAINER (bbox), 5); gtk_box_pack_end (GTK_BOX (vbox), bbox, 0, 0, 0); gtk_widget_show (bbox); diff --git a/src/fe-gtk/plugingui.c b/src/fe-gtk/plugingui.c index b3dba975..439e3cd3 100644 --- a/src/fe-gtk/plugingui.c +++ b/src/fe-gtk/plugingui.c @@ -279,8 +279,13 @@ plugingui_open (void) g_object_set_data (G_OBJECT (plugin_window), "view", view); +#if HAVE_GTK3 + hbox = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); + gtk_button_box_set_layout (GTK_BUTTON_BOX (hbox), GTK_BUTTONBOX_SPREAD); +#elif !HAVE_GTK3 hbox = gtk_hbutton_box_new (); gtk_button_box_set_layout (GTK_BUTTON_BOX (hbox), GTK_BUTTONBOX_SPREAD); +#endif gtk_container_set_border_width (GTK_CONTAINER (hbox), 5); gtk_box_pack_end (GTK_BOX (vbox), hbox, 0, 0, 0); diff --git a/src/fe-gtk/rawlog.c b/src/fe-gtk/rawlog.c index e5a2e125..5093db9e 100644 --- a/src/fe-gtk/rawlog.c +++ b/src/fe-gtk/rawlog.c @@ -136,8 +136,13 @@ open_rawlog (struct server *serv) gtk_xtext_set_font (GTK_XTEXT (serv->gui->rawlog_textlist), prefs.hex_text_font); GTK_XTEXT (serv->gui->rawlog_textlist)->ignore_hidden = 1; +#if HAVE_GTK3 + bbox = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); + gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_SPREAD); +#elif !HAVE_GTK3 bbox = gtk_hbutton_box_new (); gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_SPREAD); +#endif gtk_box_pack_end (GTK_BOX (vbox), bbox, 0, 0, 4); gtkutil_button (bbox, ICON_RAWLOG_CLEAR, NULL, rawlog_clearbutton, diff --git a/src/fe-gtk/servlistgui.c b/src/fe-gtk/servlistgui.c index 10635360..5eee8710 100644 --- a/src/fe-gtk/servlistgui.c +++ b/src/fe-gtk/servlistgui.c @@ -2099,9 +2099,14 @@ servlist_open_edit (GtkWidget *parent, ircnet *net) hseparator2 = gtk_hseparator_new (); gtk_box_pack_start (GTK_BOX (vbox5), hseparator2, FALSE, FALSE, 8); - hbuttonbox4 = gtk_hbutton_box_new (); - gtk_box_pack_start (GTK_BOX (vbox5), hbuttonbox4, FALSE, FALSE, 0); +#if HAVE_GTK3 + hbuttonbox4 = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); gtk_button_box_set_layout (GTK_BUTTON_BOX (hbuttonbox4), GTK_BUTTONBOX_END); +#elif !HAVE_GTK3 + hbuttonbox4 = gtk_hbutton_box_new (); + gtk_button_box_set_layout (GTK_BUTTON_BOX (hbuttonbox4), GTK_BUTTONBOX_END); +#endif + gtk_box_pack_start (GTK_BOX (vbox5), hbuttonbox4, FALSE, FALSE, 0); #if HAVE_GTK3 button10 = servlist_icon_button_new (_("_Close"), ICON_SERVLIST_CLOSE); @@ -2438,7 +2443,13 @@ servlist_open_networks (void) gtk_widget_show (hseparator1); gtk_box_pack_start (GTK_BOX (vbox1), hseparator1, FALSE, TRUE, 4); +#if HAVE_GTK3 + hbuttonbox1 = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); + gtk_button_box_set_layout (GTK_BUTTON_BOX (hbuttonbox1), GTK_BUTTONBOX_SPREAD); +#elif !HAVE_GTK3 hbuttonbox1 = gtk_hbutton_box_new (); + gtk_button_box_set_layout (GTK_BUTTON_BOX (hbuttonbox1), GTK_BUTTONBOX_SPREAD); +#endif gtk_widget_show (hbuttonbox1); gtk_box_pack_start (GTK_BOX (vbox1), hbuttonbox1, FALSE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (hbuttonbox1), 8); diff --git a/src/fe-gtk/setup.c b/src/fe-gtk/setup.c index 23bb1259..c8d861a8 100644 --- a/src/fe-gtk/setup.c +++ b/src/fe-gtk/setup.c @@ -3087,8 +3087,13 @@ setup_window_open (void) setup_create_tree (hbox, setup_create_pages (hbox)); /* prepare the button box */ +#if HAVE_GTK3 + hbbox = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); + gtk_button_box_set_layout (GTK_BUTTON_BOX (hbbox), GTK_BUTTONBOX_END); +#elif !HAVE_GTK3 hbbox = gtk_hbutton_box_new (); gtk_button_box_set_layout (GTK_BUTTON_BOX (hbbox), GTK_BUTTONBOX_END); +#endif gtk_box_set_spacing (GTK_BOX (hbbox), 4); gtk_box_pack_end (GTK_BOX (vbox), hbbox, FALSE, FALSE, 0); diff --git a/src/fe-gtk/textgui.c b/src/fe-gtk/textgui.c index 08d28d8e..2f319180 100644 --- a/src/fe-gtk/textgui.c +++ b/src/fe-gtk/textgui.c @@ -481,8 +481,13 @@ pevent_dialog_show () gtk_container_add (GTK_CONTAINER (wid), pevent_dialog_twid); gtk_xtext_set_font (GTK_XTEXT (pevent_dialog_twid), prefs.hex_text_font); +#if HAVE_GTK3 + hbox = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); + gtk_button_box_set_layout (GTK_BUTTON_BOX (hbox), GTK_BUTTONBOX_SPREAD); +#elif !HAVE_GTK3 hbox = gtk_hbutton_box_new (); gtk_button_box_set_layout (GTK_BUTTON_BOX (hbox), GTK_BUTTONBOX_SPREAD); +#endif gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 4); gtkutil_button (hbox, ICON_TEXTEVENT_SAVE_AS, NULL, pevent_save_cb, (void *) 1, _("Save As...")); diff --git a/src/fe-gtk/urlgrab.c b/src/fe-gtk/urlgrab.c index e6d20e2d..4a24e5fd 100644 --- a/src/fe-gtk/urlgrab.c +++ b/src/fe-gtk/urlgrab.c @@ -215,8 +215,13 @@ url_opengui () g_object_set_data (G_OBJECT (urlgrabberwindow), "model", gtk_tree_view_get_model (GTK_TREE_VIEW (view))); +#if HAVE_GTK3 + hbox = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); + gtk_button_box_set_layout (GTK_BUTTON_BOX (hbox), GTK_BUTTONBOX_SPREAD); +#elif !HAVE_GTK3 hbox = gtk_hbutton_box_new (); gtk_button_box_set_layout (GTK_BUTTON_BOX (hbox), GTK_BUTTONBOX_SPREAD); +#endif gtk_container_set_border_width (GTK_CONTAINER (hbox), 5); gtk_box_pack_end (GTK_BOX (vbox), hbox, 0, 0, 0); gtk_widget_show (hbox);