From e60e1d83dca62060585cf4054cda9e897176590c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= Date: Thu, 23 Mar 2017 14:13:27 +0000 Subject: [PATCH] Related: rhbz#1334915 tdf#100158 hack using startcenter icon under wayland cause I can get no traction with gnome#779143 to allow changing wayland app_ids for windows, so might as well bodge something to make us look less pathetic than the broken app icon Change-Id: I9810ba4908dd06a2fdbb2e58e7ad6ff4978ddd43 --- vcl/unx/gtk3/gtk3gtkframe.cxx | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/vcl/unx/gtk3/gtk3gtkframe.cxx b/vcl/unx/gtk3/gtk3gtkframe.cxx index 1a4823e..745d297 100644 --- a/vcl/unx/gtk3/gtk3gtkframe.cxx +++ b/vcl/unx/gtk3/gtk3gtkframe.cxx @@ -1446,7 +1446,27 @@ void GtkSalFrame::Show( bool bVisible, bool /*bNoActivate*/ ) m_pParent->addGrabLevel(); } +#if defined(GDK_WINDOWING_WAYLAND) + //rhbz#1334915, gnome#779143, tdf#100158 + //gtk under wayland lacks a way to change the app_id + //of a window, so brute force everything as a + //startcenter when initially shown to at least get + //the default LibreOffice icon and not the broken + //app icon + if (GDK_IS_WAYLAND_DISPLAY(getGdkDisplay())) + { + OString sOrigName(g_get_prgname()); + g_set_prgname("libreoffice-startcenter"); + gtk_widget_show(m_pWindow); + g_set_prgname(sOrigName.getStr()); + } + else + { + gtk_widget_show(m_pWindow); + } +#else gtk_widget_show(m_pWindow); +#endif if( isFloatGrabWindow() ) { -- 2.9.3