diff --git a/arch/PKGBUILD-kde4 b/arch/PKGBUILD-kde4 index 1c157cb..066eb33 100644 --- a/arch/PKGBUILD-kde4 +++ b/arch/PKGBUILD-kde4 @@ -20,7 +20,7 @@ optdepends=("amarok: for music player monitor" makedepends=('automoc4' 'cmake') source=(https://github.com/arcan1s/awesome-widgets/releases/download/V.${pkgver}/${_pkgname}-${pkgver}-src.tar.xz) install=${pkgname}.install -md5sums=('acfaaec09f7b8544e8e844b26f763388') +md5sums=('9b570c6061092bd443038f8dadd3d943') backup=('usr/share/config/plasma-dataengine-extsysmon.conf') prepare() { diff --git a/arch/PKGBUILD-kf5 b/arch/PKGBUILD-kf5 index fe33efa..5896a00 100644 --- a/arch/PKGBUILD-kf5 +++ b/arch/PKGBUILD-kf5 @@ -20,7 +20,7 @@ optdepends=("amarok: for music player monitor" makedepends=('cmake' 'extra-cmake-modules') source=(https://github.com/arcan1s/awesome-widgets/releases/download/V.${pkgver}/${_pkgname}-${pkgver}-src.tar.xz) install=${pkgname}.install -md5sums=('acfaaec09f7b8544e8e844b26f763388') +md5sums=('9b570c6061092bd443038f8dadd3d943') backup=('etc/xdg/plasma-dataengine-extsysmon.conf') prepare() { diff --git a/sources/awesome-widget-kf5/plugin/awactions.cpp b/sources/awesome-widget-kf5/plugin/awactions.cpp index f964544..33beb25 100644 --- a/sources/awesome-widget-kf5/plugin/awactions.cpp +++ b/sources/awesome-widget-kf5/plugin/awactions.cpp @@ -195,8 +195,10 @@ void AWActions::writeDataEngineConfiguration(const QMap confi } -void AWActions::sendNotification(const QString eventId, const QString message) +void AWActions::sendNotification(const QString eventId, const QString message, const bool enablePopup) { + if ((eventId == QString("event")) && (!enablePopup)) return; + KNotification *notification = KNotification::event(eventId, QString("Awesome Widget ::: ") + eventId, message); notification->setComponentName(QString("plasma-applet-org.kde.plasma.awesome-widget")); } diff --git a/sources/awesome-widget-kf5/plugin/awactions.h b/sources/awesome-widget-kf5/plugin/awactions.h index 0008620..259ee49 100644 --- a/sources/awesome-widget-kf5/plugin/awactions.h +++ b/sources/awesome-widget-kf5/plugin/awactions.h @@ -46,7 +46,7 @@ public: Q_INVOKABLE void writeDataEngineConfiguration(const QMap configuration); public slots: - Q_INVOKABLE static void sendNotification(const QString eventId, const QString message); + Q_INVOKABLE static void sendNotification(const QString eventId, const QString message, const bool enablePopup = false); private slots: void showUpdates(QString version); diff --git a/sources/awesome-widget-kf5/plugin/awkeys.cpp b/sources/awesome-widget-kf5/plugin/awkeys.cpp index 3920ced..6068f48 100644 --- a/sources/awesome-widget-kf5/plugin/awkeys.cpp +++ b/sources/awesome-widget-kf5/plugin/awkeys.cpp @@ -440,12 +440,11 @@ bool AWKeys::setDataBySource(const QString sourceName, for (int i=0; i= 90.0) && (values[QString("cpu")].toFloat() < 90.0))) - AWActions::sendNotification(QString("event"), i18n("High CPU load")); + if ((data[QString("value")].toFloat() >= 90.0) && (values[QString("cpu")].toFloat() < 90.0)) + AWActions::sendNotification(QString("event"), i18n("High CPU load"), enablePopup); // value values[QString("cpu")] = QString("%1").arg(data[QString("value")].toFloat(), 5, 'f', 1); toolTip->setData(QString("cpuTooltip"), data[QString("value")].toFloat()); @@ -510,6 +508,10 @@ bool AWKeys::setDataBySource(const QString sourceName, } } else if (sourceName == QString("gpu")) { // gpu load + // notification + if ((data[QString("value")].toFloat() >= 90.0) && (values[QString("gpu")].toFloat() < 90.0)) + AWActions::sendNotification(QString("event"), i18n("High GPU load"), enablePopup); + // value values[QString("gpu")] = QString("%1").arg(data[QString("value")].toFloat(), 5, 'f', 1); } else if (sourceName == QString("gputemp")) { // gpu temperature @@ -521,9 +523,8 @@ bool AWKeys::setDataBySource(const QString sourceName, mount.remove(QString("partitions")).remove(QString("/filllevel")); for (int i=0; i= 90.0) && (values[QString("hdd") + QString::number(i)].toFloat() < 90.0))) - AWActions::sendNotification(QString("event"), i18n("Free space on %1 less than 10%", mount)); + if ((data[QString("value")].toFloat() >= 90.0) && (values[QString("hdd") + QString::number(i)].toFloat() < 90.0)) + AWActions::sendNotification(QString("event"), i18n("Free space on %1 less than 10%", mount), enablePopup); values[QString("hdd") + QString::number(i)] = QString("%1").arg(data[QString("value")].toFloat(), 5, 'f', 1); break; } @@ -588,17 +589,18 @@ bool AWKeys::setDataBySource(const QString sourceName, // percentage float value = 100.0 * values[QString("memmb")].toFloat() / values[QString("memtotmb")].toFloat(); // notification - if ((enablePopup) && ((value >= 90.0) && (values[QString("mem")].toFloat() < 90.0))) - AWActions::sendNotification(QString("event"), i18n("High memory usage")); + if ((value >= 90.0) && (values[QString("mem")].toFloat() < 90.0)) + AWActions::sendNotification(QString("event"), i18n("High memory usage"), enablePopup); // value values[QString("mem")] = QString("%1").arg(value, 5, 'f', 1); toolTip->setData(QString("memTooltip"), values[QString("mem")].toFloat()); } else if (sourceName == QString("netdev")) { // network device // notification - if ((enablePopup) && (values[QString("netdev")] != data[QString("value")].toString())) + if (values[QString("netdev")] != data[QString("value")].toString()) AWActions::sendNotification(QString("event"), i18n("Network device has been changed to %1", - data[QString("value")].toString())); + data[QString("value")].toString()), + enablePopup); // value values[QString("netdev")] = data[QString("value")].toString(); } else if (sourceName.contains(netRecRegExp)) { @@ -661,8 +663,8 @@ bool AWKeys::setDataBySource(const QString sourceName, // percentage float value = 100.0 * values[QString("swapmb")].toFloat() / values[QString("swaptotmb")].toFloat(); // notification - if ((enablePopup) && ((value > 0.0) && (values[QString("swap")].toFloat() == 0.0))) - AWActions::sendNotification(QString("event"), i18n("Swap is used")); + if ((value > 0.0) && (values[QString("swap")].toFloat() == 0.0)) + AWActions::sendNotification(QString("event"), i18n("Swap is used"), enablePopup); // value values[QString("swap")] = QString("%1").arg(value, 5, 'f', 1); toolTip->setData(QString("swapTooltip"), values[QString("swap")].toFloat());