X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Flegacysystemtray.h;h=1a187c8e778740d3f33d2be3b2550fae4ebbcb04;hp=47c5f11e85c96f6fd50c6fba21c2faeca337c0be;hb=2ed35d8a6322e49ab604472a7af59592cf36ae12;hpb=d452877910888c25d40590b5fff57eb8197ca9b0 diff --git a/src/qtui/legacysystemtray.h b/src/qtui/legacysystemtray.h index 47c5f11e..1a187c8e 100644 --- a/src/qtui/legacysystemtray.h +++ b/src/qtui/legacysystemtray.h @@ -48,7 +48,8 @@ public: public slots: virtual void setState(State state); virtual void setVisible(bool visible = true); - virtual void showMessage(const QString &title, const QString &message, MessageIcon icon = Information, int millisecondsTimeoutHint = 10000); + virtual void showMessage(const QString &title, const QString &message, MessageIcon icon = Information, int msTimeout = 10000, uint notificationId = 0); + virtual void closeMessage(uint notificationId); protected slots: @@ -58,13 +59,14 @@ protected: private slots: void on_blinkTimeout(); void on_activated(QSystemTrayIcon::ActivationReason); + void on_messageClicked(); -private: void syncLegacyIcon(); +private: QTimer _blinkTimer; bool _blinkState; - bool _isVisible; + uint _lastMessageId; #ifdef HAVE_KDE KSystemTrayIcon *_trayIcon; @@ -76,7 +78,10 @@ private: // inlines -bool LegacySystemTray::isSystemTrayAvailable() const { return QSystemTrayIcon::isSystemTrayAvailable(); } +bool LegacySystemTray::isSystemTrayAvailable() const { + return mode() == Legacy ? QSystemTrayIcon::isSystemTrayAvailable() + : SystemTray::isSystemTrayAvailable(); +} #endif /* QT_NO_SYSTEMTRAYICON */