diff --git a/community/xfce4-whiskermenu-plugin/0001-Fix-loading-incorrect-icons-for-some-applications.patch b/community/xfce4-whiskermenu-plugin/0001-Fix-loading-incorrect-icons-for-some-applications.patch new file mode 100644 index 000000000..34cfed6d1 --- /dev/null +++ b/community/xfce4-whiskermenu-plugin/0001-Fix-loading-incorrect-icons-for-some-applications.patch @@ -0,0 +1,80 @@ +From 02903f3a2ed1028f7a01d21bd2c216aaf2c42168 Mon Sep 17 00:00:00 2001 +From: Graeme Gott +Date: Fri, 21 Feb 2020 08:57:23 -0500 +Subject: [PATCH 1/1] Fix loading incorrect icons for some applications. +--- + panel-plugin/category.cpp | 2 +- + panel-plugin/element.cpp | 10 ++++++---- + panel-plugin/element.h | 2 +- + 3 files changed, 8 insertions(+), 6 deletions(-) + +diff --git a/panel-plugin/category.cpp b/panel-plugin/category.cpp +index 4128394..0a150ad 100644 +--- a/panel-plugin/category.cpp ++++ b/panel-plugin/category.cpp +@@ -49,7 +49,7 @@ Category::Category(GarconMenu* menu) : + { + text = _("All Applications"); + } +- set_icon(!exo_str_is_empty(icon) ? icon : "applications-other"); ++ set_icon(!exo_str_is_empty(icon) ? icon : "applications-other", true); + set_text(text ? text : ""); + set_tooltip(tooltip ? tooltip : ""); + } +diff --git a/panel-plugin/element.cpp b/panel-plugin/element.cpp +index 744627a..de71b6d 100644 +--- a/panel-plugin/element.cpp ++++ b/panel-plugin/element.cpp +@@ -21,7 +21,7 @@ using namespace WhiskerMenu; + + //----------------------------------------------------------------------------- + +-void Element::set_icon(const gchar* icon) ++void Element::set_icon(const gchar* icon, bool use_fallbacks) + { + if (m_icon) + { +@@ -34,12 +34,14 @@ void Element::set_icon(const gchar* icon) + return; + } + ++ auto themed_icon_new = use_fallbacks ? &g_themed_icon_new_with_default_fallbacks : &g_themed_icon_new; ++ + if (!g_path_is_absolute(icon)) + { + const gchar* pos = g_strrstr(icon, "."); + if (!pos) + { +- m_icon = g_themed_icon_new_with_default_fallbacks(icon); ++ m_icon = themed_icon_new(icon); + } + else + { +@@ -50,12 +52,12 @@ void Element::set_icon(const gchar* icon) + || (g_strcmp0(suffix, ".svgz") == 0)) + { + gchar* name = g_strndup(icon, pos - icon); +- m_icon = g_themed_icon_new_with_default_fallbacks(name); ++ m_icon = themed_icon_new(name); + g_free(name); + } + else + { +- m_icon = g_themed_icon_new_with_default_fallbacks(icon); ++ m_icon = themed_icon_new(icon); + } + g_free(suffix); + } +diff --git a/panel-plugin/element.h b/panel-plugin/element.h +index 44ed537..1bb8c67 100644 +--- a/panel-plugin/element.h ++++ b/panel-plugin/element.h +@@ -79,7 +79,7 @@ public: + protected: + Element() = default; + +- void set_icon(const gchar* icon); ++ void set_icon(const gchar* icon, bool use_fallbacks = false); + + void set_text(const gchar* text) + { diff --git a/community/xfce4-whiskermenu-plugin/PKGBUILD b/community/xfce4-whiskermenu-plugin/PKGBUILD index e168f2529..7691b7ca9 100644 --- a/community/xfce4-whiskermenu-plugin/PKGBUILD +++ b/community/xfce4-whiskermenu-plugin/PKGBUILD @@ -7,7 +7,7 @@ pkgname=xfce4-whiskermenu-plugin pkgver=2.4.2 -pkgrel=1 +pkgrel=2 pkgdesc='Menu for Xfce4' arch=('x86_64') url='https://gottcode.org/xfce4-whiskermenu-plugin/' @@ -15,8 +15,16 @@ groups=('xfce4-goodies') license=('GPL2') depends=('garcon' 'xfce4-panel' 'gtk3>=3.22') makedepends=('cmake' 'ninja') -source=("https://archive.be.xfce.org/src/panel-plugins/xfce4-whiskermenu-plugin/${pkgver%.*}/xfce4-whiskermenu-plugin-$pkgver.tar.bz2") # no https available -sha256sums=('fb2e1d44744d851c5339900e7af9068397028efa9ee5235a66ab273e95740dee') +source=("https://archive.be.xfce.org/src/panel-plugins/xfce4-whiskermenu-plugin/${pkgver%.*}/xfce4-whiskermenu-plugin-$pkgver.tar.bz2" + '0001-Fix-loading-incorrect-icons-for-some-applications.patch') +sha256sums=('fb2e1d44744d851c5339900e7af9068397028efa9ee5235a66ab273e95740dee' + '48943613ee63562bf0a55757ae81272400e87e462d0471a9cc753dccd59083cf') + +prepare() { + cd "$srcdir/$pkgname-$pkgver" + + patch -Np1 < ../0001-Fix-loading-incorrect-icons-for-some-applications.patch +} build() { mkdir -p build