X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fqtui%2Fstatusnotifieritem.cpp;h=5932746cf3375f1982522bf2f92c2e490b645337;hb=6ff3bc425de913a850d906c8fcb1c8088c10c1fd;hp=9f34e7c9f95c21f0481148ed08f505ae129b39ab;hpb=ea5b220601473213689ef9bad6611ec74b776aa5;p=quassel.git diff --git a/src/qtui/statusnotifieritem.cpp b/src/qtui/statusnotifieritem.cpp index 9f34e7c9..5932746c 100644 --- a/src/qtui/statusnotifieritem.cpp +++ b/src/qtui/statusnotifieritem.cpp @@ -105,8 +105,9 @@ StatusNotifierItem::StatusNotifierItem(QWidget *parent) // Our own SNI service _statusNotifierItemDBus = new StatusNotifierItemDBus(this); + connect(this, SIGNAL(currentIconNameChanged()), _statusNotifierItemDBus, SIGNAL(NewIcon())); + connect(this, SIGNAL(currentIconNameChanged()), _statusNotifierItemDBus, SIGNAL(NewAttentionIcon())); connect(this, SIGNAL(toolTipChanged(QString, QString)), _statusNotifierItemDBus, SIGNAL(NewToolTip())); - connect(this, SIGNAL(animationEnabledChanged(bool)), _statusNotifierItemDBus, SIGNAL(NewAttentionIcon())); // Service watcher to keep track of the StatusNotifierWatcher service QDBusServiceWatcher *watcher = new QDBusServiceWatcher(kSniWatcherService, @@ -240,11 +241,11 @@ bool StatusNotifierItem::isSystemTrayAvailable() const void StatusNotifierItem::onModeChanged(Mode mode) { if (mode == Mode::StatusNotifier) { - _statusNotifierItemDBus->registerService(); + _statusNotifierItemDBus->registerTrayIcon(); registerToWatcher(); } else { - _statusNotifierItemDBus->unregisterService(); + _statusNotifierItemDBus->unregisterTrayIcon(); } } @@ -252,7 +253,6 @@ void StatusNotifierItem::onModeChanged(Mode mode) void StatusNotifierItem::onStateChanged(State state) { if (mode() == Mode::StatusNotifier) { - emit _statusNotifierItemDBus->NewIcon(); emit _statusNotifierItemDBus->NewStatus(metaObject()->enumerator(metaObject()->indexOfEnumerator("State")).valueToKey(state)); } } @@ -262,11 +262,11 @@ void StatusNotifierItem::onVisibilityChanged(bool isVisible) { if (mode() == Mode::StatusNotifier) { if (isVisible) { - _statusNotifierItemDBus->registerService(); + _statusNotifierItemDBus->registerTrayIcon(); registerToWatcher(); } else { - _statusNotifierItemDBus->unregisterService(); + _statusNotifierItemDBus->unregisterTrayIcon(); } } } @@ -280,23 +280,13 @@ QString StatusNotifierItem::title() const QString StatusNotifierItem::iconName() const { - if (state() == Passive) { - return SystemTray::iconName(State::Passive); - } - else { - return SystemTray::iconName(State::Active); - } + return currentIconName(); } QString StatusNotifierItem::attentionIconName() const { - if (animationEnabled()) { - return SystemTray::iconName(State::NeedsAttention); - } - else { - return SystemTray::iconName(State::NeedsAttention); - } + return currentAttentionIconName(); }