From 4de57ba98205a3a4c5a8c945a2a0cf6f47db3968 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Thu, 15 Jun 2017 19:46:17 +0100 Subject: [PATCH] Fix Tab Labels The tab labels do not keep to the width specified in the preferences, use set_width_chars instead of set_max_width_chars. --- src/gnome-utils/gnc-main-window.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/gnome-utils/gnc-main-window.c b/src/gnome-utils/gnc-main-window.c index 21318fef7c..21cc88c8ef 100644 --- a/src/gnome-utils/gnc-main-window.c +++ b/src/gnome-utils/gnc-main-window.c @@ -2853,7 +2853,7 @@ gnc_main_window_open_page (GncMainWindow *window, GncMainWindowPrivate *priv; GtkWidget *tab_hbox; GtkWidget *label, *entry; - const gchar *icon, *text, *color_string; + const gchar *icon, *text, *color_string, *lab_text; GtkWidget *image; GList *tmp; gint width; @@ -2903,11 +2903,17 @@ gnc_main_window_open_page (GncMainWindow *window, */ width = gnc_prefs_get_float(GNC_PREFS_GROUP_GENERAL, GNC_PREF_TAB_WIDTH); icon = GNC_PLUGIN_PAGE_GET_CLASS(page)->tab_icon; - label = gtk_label_new (gnc_plugin_page_get_page_name(page)); + lab_text = gnc_plugin_page_get_page_name(page); + label = gtk_label_new (lab_text); + if (width != 0) { + if (g_utf8_strlen (lab_text, -1) < width) + gtk_label_set_width_chars (GTK_LABEL(label), strlen (lab_text)); + else + gtk_label_set_width_chars (GTK_LABEL(label), width); + gtk_label_set_ellipsize(GTK_LABEL(label), PANGO_ELLIPSIZE_MIDDLE); - gtk_label_set_max_width_chars(GTK_LABEL(label), width); } gtk_widget_show (label);