[arch-commits] Commit in quassel/trunk (2 files)
Balló György
bgyorgy at archlinux.org
Tue Feb 21 05:05:57 UTC 2017
Date: Tuesday, February 21, 2017 @ 05:05:56
Author: bgyorgy
Revision: 213242
upgpkg: quassel 0.12.4-3
Fix handling systray notifications (affects quassel-client-small only)
Added:
quassel/trunk/0001-Fix-handling-systray-notifications.patch
Modified:
quassel/trunk/PKGBUILD
-----------------------------------------------+
0001-Fix-handling-systray-notifications.patch | 56 ++++++++++++++++++++++++
PKGBUILD | 8 +++
2 files changed, 63 insertions(+), 1 deletion(-)
Added: 0001-Fix-handling-systray-notifications.patch
===================================================================
--- 0001-Fix-handling-systray-notifications.patch (rev 0)
+++ 0001-Fix-handling-systray-notifications.patch 2017-02-21 05:05:56 UTC (rev 213242)
@@ -0,0 +1,56 @@
+From 38112a9e19283aa6768df9af14503ccbe09fe5b0 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Gy=C3=B6rgy=20Ball=C3=B3?= <ballogyor at gmail.com>
+Date: Thu, 16 Feb 2017 08:41:08 +0100
+Subject: [PATCH] Fix handling systray notifications
+
+Only toggle/activate the main window if the notification message comes from quassel.
+
+This fixes the problem that Quassel's main window is opened when the user clicks on any notification bubbles from other applications.
+---
+ src/qtui/systraynotificationbackend.cpp | 22 +++++++++++++---------
+ 1 file changed, 13 insertions(+), 9 deletions(-)
+
+diff --git a/src/qtui/systraynotificationbackend.cpp b/src/qtui/systraynotificationbackend.cpp
+index b0b7be62..d96000e1 100644
+--- a/src/qtui/systraynotificationbackend.cpp
++++ b/src/qtui/systraynotificationbackend.cpp
+@@ -92,15 +92,16 @@ void SystrayNotificationBackend::close(uint notificationId)
+ void SystrayNotificationBackend::notificationActivated(uint notificationId)
+ {
+ if (!_blockActivation) {
+- if (_notifications.count()) {
+- if (QtUi::mainWindow()->systemTray()->mode() == SystemTray::Legacy)
+- _blockActivation = true; // prevent double activation because both tray icon and bubble might send a signal
+- if (!notificationId)
+- notificationId = _notifications.count() ? _notifications.last().notificationId : 0;
+- emit activated(notificationId);
++ QList<Notification>::iterator i = _notifications.begin();
++ while (i != _notifications.end()) {
++ if (i->notificationId == notificationId) {
++ if (QtUi::mainWindow()->systemTray()->mode() == SystemTray::Legacy)
++ _blockActivation = true; // prevent double activation because both tray icon and bubble might send a signal
++ emit activated(notificationId);
++ break;
++ }
++ ++i;
+ }
+- else
+- GraphicalUi::toggleMainWidget();
+ }
+ }
+
+@@ -108,7 +109,10 @@ void SystrayNotificationBackend::notificationActivated(uint notificationId)
+ void SystrayNotificationBackend::notificationActivated(SystemTray::ActivationReason reason)
+ {
+ if (reason == SystemTray::Trigger) {
+- notificationActivated(0);
++ if (_notifications.count())
++ notificationActivated(_notifications.last().notificationId);
++ else
++ GraphicalUi::toggleMainWidget();
+ }
+ }
+
+--
+2.11.1
+
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2017-02-21 04:25:44 UTC (rev 213241)
+++ PKGBUILD 2017-02-21 05:05:56 UTC (rev 213242)
@@ -5,7 +5,7 @@
pkgbase=quassel
pkgname=('quassel-core' 'quassel-client' 'quassel-client-small' 'quassel-monolithic')
pkgver=0.12.4
-pkgrel=2
+pkgrel=3
pkgdesc="Next-generation distributed IRC client"
arch=('i686' 'x86_64')
url="http://quassel-irc.org/"
@@ -14,9 +14,11 @@
'knotifyconfig' 'cmake' 'extra-cmake-modules' 'python'
'hicolor-icon-theme')
source=(http://quassel-irc.org/pub/$pkgbase-$pkgver.tar.bz2
+ 0001-Fix-handling-systray-notifications.patch
$pkgbase.service
$pkgbase.conf)
sha256sums=('93e4e54cb3743cbe2e5684c2fcba94fd2bc2cd739f7672dee14341b49c29444d'
+ '5a465f33c5f233983a12139a1a121665c4ddab9e205997daa453dcffd255156a'
'5dbe20290f3361b9b7a74a52905137e76b656976febf2d31082a2276f9dcde7f'
'f3031ea8217e01ba42cea14606169e3e27affa5918968ffd5a03c21ae92fe2b8')
@@ -24,6 +26,10 @@
cd "${srcdir}"
mkdir build-{core,client,client-small,mono}
cd quassel-${pkgver}
+
+ # Fix handling systray notifications
+ # https://github.com/quassel/quassel/pull/272
+ patch -Np1 -i ../0001-Fix-handling-systray-notifications.patch
}
_build() (
More information about the arch-commits
mailing list