Date: Friday, March 22, 2019 @ 23:39:30 Author: heftig Revision: 443206
0.13.1-2: Fix desktop file association on Wayland Added: quassel/trunk/0001-qtui-Set-desktop-file-name.patch Modified: quassel/trunk/PKGBUILD ---------------------------------------+ 0001-qtui-Set-desktop-file-name.patch | 50 ++++++++++++++++++++++++++++++++ PKGBUILD | 16 +++++----- 2 files changed, 59 insertions(+), 7 deletions(-) Added: 0001-qtui-Set-desktop-file-name.patch =================================================================== --- 0001-qtui-Set-desktop-file-name.patch (rev 0) +++ 0001-qtui-Set-desktop-file-name.patch 2019-03-22 23:39:30 UTC (rev 443206) @@ -0,0 +1,50 @@ +From 919ac3d7184faee0ccfa7fe65c6635a7dcf5d234 Mon Sep 17 00:00:00 2001 +Message-Id: <919ac3d7184faee0ccfa7fe65c6635a7dcf5d234.1553291431.git.jan.steff...@gmail.com> +From: "Jan Alexander Steffens (heftig)" <[email protected]> +Date: Fri, 22 Mar 2019 22:37:22 +0100 +Subject: [PATCH] qtui: Set desktop file name + +The XCB platform plugin defaults the WM class to the executable name, +which already matches our desktop file name. Unfortunately, the Wayland +platform plugin prepends the inverted organization domain, resulting in +an app ID of "org.quassel-irc.quasselclient", thus breaking the +association. + +Set the desktop file name explicitly so the Wayland platform doesn't get +confused. +--- + src/qtui/monoapplication.cpp | 3 +++ + src/qtui/qtuiapplication.cpp | 3 +++ + 2 files changed, 6 insertions(+) + +diff --git a/src/qtui/monoapplication.cpp b/src/qtui/monoapplication.cpp +index 809f1147..3f60523f 100644 +--- a/src/qtui/monoapplication.cpp ++++ b/src/qtui/monoapplication.cpp +@@ -32,6 +32,9 @@ MonolithicApplication::MonolithicApplication(int &argc, char **argv) + : QtUiApplication(argc, argv) + { + Quassel::setRunMode(Quassel::Monolithic); ++#if QT_VERSION >= 0x050700 ++ QGuiApplication::setDesktopFileName(Quassel::buildInfo().applicationName + ".desktop"); ++#endif + } + + +diff --git a/src/qtui/qtuiapplication.cpp b/src/qtui/qtuiapplication.cpp +index e5b0b773..989a1961 100644 +--- a/src/qtui/qtuiapplication.cpp ++++ b/src/qtui/qtuiapplication.cpp +@@ -92,6 +92,9 @@ QtUiApplication::QtUiApplication(int &argc, char **argv) + #if (QT_VERSION >= QT_VERSION_CHECK(5, 6, 0)) + QGuiApplication::setFallbackSessionManagementEnabled(false); + #endif ++#if QT_VERSION >= 0x050700 ++ QGuiApplication::setDesktopFileName(Quassel::buildInfo().clientApplicationName + ".desktop"); ++#endif + } + + +-- +2.21.0 + Modified: PKGBUILD =================================================================== --- PKGBUILD 2019-03-22 20:42:53 UTC (rev 443205) +++ PKGBUILD 2019-03-22 23:39:30 UTC (rev 443206) @@ -7,7 +7,7 @@ 'quassel-client-small' 'quassel-monolithic') pkgver=0.13.1 -pkgrel=1 +pkgrel=2 pkgdesc="Next-generation distributed IRC client" arch=('x86_64') url="https://quassel-irc.org/" @@ -14,13 +14,15 @@ license=('GPL') makedepends=('qt5-base' 'qt5-tools' 'qt5-webengine' 'qca-qt5' 'qt5-script' 'qt5-multimedia' 'knotifyconfig' 'sonnet' 'libldap' 'cmake' - 'extra-cmake-modules' 'python' 'hicolor-icon-theme' 'ninja') + 'extra-cmake-modules' 'python' 'hicolor-icon-theme') source=(https://quassel-irc.org/pub/$pkgbase-$pkgver.tar.bz2 + 0001-qtui-Set-desktop-file-name.patch $pkgbase.service $pkgbase.sysusers $pkgbase.tmpfiles $pkgbase.conf) sha256sums=('48efee9778743b1db9f44efb91d1c913104db01190c57f2ff57483c39a97e855' + '695ff3b605ea62ccfdf9ec4b9e6ffa74f3e2c0ac81402d51a74d263c47886c92' '5dbe20290f3361b9b7a74a52905137e76b656976febf2d31082a2276f9dcde7f' '3c72441a99e2668c6a8a751fa07beeb44f937576c8a1b5f615e4a55f841d93d9' '2afd4340c7713f6533e5d175a86b28fd118ecd907776c2b10925d1a4fb31cdca' @@ -28,18 +30,18 @@ prepare() { cd $pkgbase-$pkgver + patch -Np1 -i ../0001-qtui-Set-desktop-file-name.patch } _build() ( - mkdir -p build-$1 - cd build-$1 - cmake -G Ninja ../$pkgbase-$pkgver \ + cmake -H$pkgbase-$pkgver -Bbuild-$1 \ -DCMAKE_INSTALL_PREFIX=/usr/ \ - -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_BUILD_TYPE=None \ + -DCMAKE_CXX_FLAGS="$CXXFLAGS -Wno-suggest-override" \ -DHAVE_SSL=ON \ "${@:2}" \ -Wno-dev - cmake --build . + cmake --build build-$1 ) _install() {
