diff --git a/src/fe-gtk/maingui.c b/src/fe-gtk/maingui.c index ad65ad2a..4c572aa1 100644 --- a/src/fe-gtk/maingui.c +++ b/src/fe-gtk/maingui.c @@ -3004,15 +3004,15 @@ mg_create_center (session *sess, session_gui *gui, GtkWidget *box) if (prefs.hex_gui_win_swap) { - gtk_paned_pack2 (GTK_PANED (gui->hpane_left), gui->vpane_left, FALSE, TRUE); + gtk_paned_pack2 (GTK_PANED (gui->hpane_left), gui->vpane_left, FALSE, FALSE); gtk_paned_pack1 (GTK_PANED (gui->hpane_left), gui->hpane_right, TRUE, TRUE); } else { - gtk_paned_pack1 (GTK_PANED (gui->hpane_left), gui->vpane_left, FALSE, TRUE); + gtk_paned_pack1 (GTK_PANED (gui->hpane_left), gui->vpane_left, FALSE, FALSE); gtk_paned_pack2 (GTK_PANED (gui->hpane_left), gui->hpane_right, TRUE, TRUE); } - gtk_paned_pack2 (GTK_PANED (gui->hpane_right), gui->vpane_right, FALSE, TRUE); + gtk_paned_pack2 (GTK_PANED (gui->hpane_right), gui->vpane_right, FALSE, FALSE); gtk_box_pack_start (GTK_BOX (box), gui->hpane_left, TRUE, TRUE, 0); diff --git a/src/fe-gtk/userlistgui.c b/src/fe-gtk/userlistgui.c index 445265a9..9945d086 100644 --- a/src/fe-gtk/userlistgui.c +++ b/src/fe-gtk/userlistgui.c @@ -52,6 +52,24 @@ enum static void userlist_store_color (GtkListStore *store, GtkTreeIter *iter, ThemeSemanticToken token, gboolean has_token); +static void +userlist_update_min_width (session *sess) +{ + GtkRequisition minimum; + GtkRequisition natural; + int width; + + if (!sess || !sess->gui || !sess->gui->user_box || !sess->gui->namelistinfo) + return; + + gtk_widget_get_preferred_size (sess->gui->namelistinfo, &minimum, &natural); + width = MAX (minimum.width, natural.width) + 16; + if (width < 1) + width = 1; + + gtk_widget_set_size_request (sess->gui->user_box, width, -1); +} + GdkPixbuf * get_user_icon (server *serv, struct User *user) { @@ -110,9 +128,11 @@ fe_userlist_numbers (session *sess) g_snprintf (tbuf, sizeof (tbuf), _("%d ops, %d total"), sess->ops, sess->total); tbuf[sizeof (tbuf) - 1] = 0; gtk_label_set_text (GTK_LABEL (sess->gui->namelistinfo), tbuf); + userlist_update_min_width (sess); } else { gtk_label_set_text (GTK_LABEL (sess->gui->namelistinfo), NULL); + userlist_update_min_width (sess); } if (sess->type == SESS_CHANNEL && prefs.hex_gui_win_ucount)