X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Flegacysystemtray.cpp;h=9308798e923671f868c8172e25cbb6b510963036;hp=a3e706aa175c02ac4a4ba4d14d684cdf6b89a288;hb=1a9450ecc5eeb5f987ceac790be84dcced02f028;hpb=9fc57dc2c000e80fb8bd746a090e2e8210e1278e diff --git a/src/qtui/legacysystemtray.cpp b/src/qtui/legacysystemtray.cpp index a3e706aa..9308798e 100644 --- a/src/qtui/legacysystemtray.cpp +++ b/src/qtui/legacysystemtray.cpp @@ -1,11 +1,11 @@ /*************************************************************************** - * Copyright (C) 2005-2013 by the Quassel Project * + * Copyright (C) 2005-2018 by the Quassel Project * * devel@quassel-irc.org * * * - * This program is free software; you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation; either version 2 of the License, or * - * (at your option) version 3. * + * This file is free software; you can redistribute it and/or modify * + * it under the terms of the GNU Library General Public License (LGPL) * + * as published by the Free Software Foundation; either version 2 of the * + * License, or (at your option) any later version. * * * * This program is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * @@ -29,7 +29,7 @@ LegacySystemTray::LegacySystemTray(QWidget *parent) _blinkState(false), _lastMessageId(0) { -#ifndef HAVE_KDE +#ifndef HAVE_KDE4 _trayIcon = new QSystemTrayIcon(associatedWidget()); #else _trayIcon = new KSystemTrayIcon(associatedWidget()); @@ -37,7 +37,7 @@ LegacySystemTray::LegacySystemTray(QWidget *parent) disconnect(_trayIcon, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), _trayIcon, SLOT(activateOrHide(QSystemTrayIcon::ActivationReason))); #endif -#ifndef Q_WS_MAC +#ifndef Q_OS_MAC connect(_trayIcon, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), SLOT(on_activated(QSystemTrayIcon::ActivationReason))); #endif @@ -65,9 +65,9 @@ void LegacySystemTray::init() void LegacySystemTray::syncLegacyIcon() { - _trayIcon->setIcon(stateIcon()); + updateIcon(); -#if defined Q_WS_MAC || defined Q_WS_WIN +#if defined Q_OS_MAC || defined Q_OS_WIN QString tooltip = QString("%1").arg(toolTipTitle()); if (!toolTipSubTitle().isEmpty()) tooltip += QString("\n%1").arg(toolTipSubTitle()); @@ -137,23 +137,25 @@ void LegacySystemTray::setState(State state_) _blinkState = false; } } - if (mode() == Legacy) - _trayIcon->setIcon(stateIcon()); + updateIcon(); } -Icon LegacySystemTray::stateIcon() const +void LegacySystemTray::updateIcon() { - if (mode() == Legacy && state() == NeedsAttention && !_blinkState) - return SystemTray::stateIcon(Active); - return SystemTray::stateIcon(); + if (state() == State::NeedsAttention && !_blinkState) { + _trayIcon->setIcon(QIcon::fromTheme(iconName(State::Active))); + } + else { + _trayIcon->setIcon(QIcon::fromTheme(iconName(state()))); + } } void LegacySystemTray::on_blinkTimeout() { _blinkState = !_blinkState; - _trayIcon->setIcon(stateIcon()); + updateIcon(); }