diff options
author | Caolán McNamara <caolanm@redhat.com> | 2019-10-19 17:20:23 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2019-10-19 21:05:58 +0200 |
commit | feb21e498afa8d6fd12a82fb56a2456b2db83e24 (patch) | |
tree | 9a03141189044920a6c4730ed32f62908acd521d /vcl | |
parent | 54960717cded98c5f73a752271375daf08129a18 (diff) |
Resolves: tdf#128241 reuse label to retain buildable_name
Change-Id: Ib5cb31279fdf6e2fa83ea46625c320185992bca1
Reviewed-on: https://gerrit.libreoffice.org/81136
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/unx/gtk3/gtk3gtkinst.cxx | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/vcl/unx/gtk3/gtk3gtkinst.cxx b/vcl/unx/gtk3/gtk3gtkinst.cxx index 0d8f4d30b7c1..0b93a5a3f270 100644 --- a/vcl/unx/gtk3/gtk3gtkinst.cxx +++ b/vcl/unx/gtk3/gtk3gtkinst.cxx @@ -5370,7 +5370,21 @@ private: static void set_tab_label_text(GtkNotebook *pNotebook, guint nPage, const OUString& rText) { - gtk_notebook_set_tab_label_text(pNotebook, gtk_notebook_get_nth_page(pNotebook, nPage), rText.toUtf8().getStr()); + OString sUtf8(rText.toUtf8()); + + GtkWidget* pPage = gtk_notebook_get_nth_page(pNotebook, nPage); + + // tdf#128241 if there's already a label here, reuse it so the buildable + // name remains the same, gtk_notebook_set_tab_label_text will replace + // the label widget with a new one + GtkWidget* pTabWidget = gtk_notebook_get_tab_label(pNotebook, pPage); + if (pTabWidget && GTK_IS_LABEL(pTabWidget)) + { + gtk_label_set_label(GTK_LABEL(pTabWidget), sUtf8.getStr()); + return; + } + + gtk_notebook_set_tab_label_text(pNotebook, pPage, sUtf8.getStr()); } void append_useless_page(GtkNotebook *pNotebook) |