aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGravatar ctrlaltca2025-03-05 18:28:50 +0100
committerGravatar GitHub2025-03-05 18:28:50 +0100
commit6710797e266091f838dd6ff925626e4cfbfa585b (patch)
tree6aa357dcc2985d6b6103041a51a5261309885c5a /src
parentFix github action (#2697) (diff)
downloadKVIrc-6710797e266091f838dd6ff925626e4cfbfa585b.tar.gz
KVIrc-6710797e266091f838dd6ff925626e4cfbfa585b.tar.bz2
KVIrc-6710797e266091f838dd6ff925626e4cfbfa585b.zip
Fix window activation on trayicon click under KDE (#2696)
Diffstat (limited to 'src')
-rw-r--r--src/modules/trayicon/libkvitrayicon.cpp11
-rw-r--r--src/modules/trayicon/libkvitrayicon.h4
2 files changed, 10 insertions, 5 deletions
diff --git a/src/modules/trayicon/libkvitrayicon.cpp b/src/modules/trayicon/libkvitrayicon.cpp
index ae3c4a4e6..443d6f1bd 100644
--- a/src/modules/trayicon/libkvitrayicon.cpp
+++ b/src/modules/trayicon/libkvitrayicon.cpp
@@ -124,6 +124,7 @@ KviTrayIconWidget::KviTrayIconWidget()
setToolTipTitle("KVIrc");
setIconByPixmap(*g_pDock1);
setStandardActionsEnabled(false);
+ connect(this, SIGNAL(activateRequested(bool, QPoint)), this, SLOT(activatedSlot(bool)));
#else
setIcon(*g_pDock1);
connect(this, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), this, SLOT(activatedSlot(QSystemTrayIcon::ActivationReason)));
@@ -481,10 +482,12 @@ void KviTrayIconWidget::refresh()
#endif
}
-#ifndef COMPILE_KDE_SUPPORT
-// Under Kde do nothing, KWin will restore/hide our window
-// See ctor doc: KStatusNotifierItem::KStatusNotifierItem ( QObject * parent = nullptr )
-
+#ifdef COMPILE_KDE_SUPPORT
+void KviTrayIconWidget::activatedSlot(bool)
+{
+ toggleParentFrame();
+}
+# else
void KviTrayIconWidget::activatedSlot(QSystemTrayIcon::ActivationReason reason)
{
switch(reason)
diff --git a/src/modules/trayicon/libkvitrayicon.h b/src/modules/trayicon/libkvitrayicon.h
index d90ec44ba..3bd996b26 100644
--- a/src/modules/trayicon/libkvitrayicon.h
+++ b/src/modules/trayicon/libkvitrayicon.h
@@ -92,7 +92,9 @@ private slots:
void toggleParentFrame();
void doAway(bool);
void flashingTimerShot();
-#ifndef COMPILE_KDE_SUPPORT
+#ifdef COMPILE_KDE_SUPPORT
+ void activatedSlot(bool active);
+# else
void activatedSlot(QSystemTrayIcon::ActivationReason reason);
#endif
void executeInternalCommand(bool);