changes in notifications

This commit is contained in:
arcan1s 2015-02-14 21:25:18 +03:00
parent e5006ed2d6
commit 30577e91ec
5 changed files with 24 additions and 20 deletions

View File

@ -20,7 +20,7 @@ optdepends=("amarok: for music player monitor"
makedepends=('automoc4' 'cmake') makedepends=('automoc4' 'cmake')
source=(https://github.com/arcan1s/awesome-widgets/releases/download/V.${pkgver}/${_pkgname}-${pkgver}-src.tar.xz) source=(https://github.com/arcan1s/awesome-widgets/releases/download/V.${pkgver}/${_pkgname}-${pkgver}-src.tar.xz)
install=${pkgname}.install install=${pkgname}.install
md5sums=('acfaaec09f7b8544e8e844b26f763388') md5sums=('9b570c6061092bd443038f8dadd3d943')
backup=('usr/share/config/plasma-dataengine-extsysmon.conf') backup=('usr/share/config/plasma-dataengine-extsysmon.conf')
prepare() { prepare() {

View File

@ -20,7 +20,7 @@ optdepends=("amarok: for music player monitor"
makedepends=('cmake' 'extra-cmake-modules') makedepends=('cmake' 'extra-cmake-modules')
source=(https://github.com/arcan1s/awesome-widgets/releases/download/V.${pkgver}/${_pkgname}-${pkgver}-src.tar.xz) source=(https://github.com/arcan1s/awesome-widgets/releases/download/V.${pkgver}/${_pkgname}-${pkgver}-src.tar.xz)
install=${pkgname}.install install=${pkgname}.install
md5sums=('acfaaec09f7b8544e8e844b26f763388') md5sums=('9b570c6061092bd443038f8dadd3d943')
backup=('etc/xdg/plasma-dataengine-extsysmon.conf') backup=('etc/xdg/plasma-dataengine-extsysmon.conf')
prepare() { prepare() {

View File

@ -195,8 +195,10 @@ void AWActions::writeDataEngineConfiguration(const QMap<QString, QVariant> 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); KNotification *notification = KNotification::event(eventId, QString("Awesome Widget ::: ") + eventId, message);
notification->setComponentName(QString("plasma-applet-org.kde.plasma.awesome-widget")); notification->setComponentName(QString("plasma-applet-org.kde.plasma.awesome-widget"));
} }

View File

@ -46,7 +46,7 @@ public:
Q_INVOKABLE void writeDataEngineConfiguration(const QMap<QString, QVariant> configuration); Q_INVOKABLE void writeDataEngineConfiguration(const QMap<QString, QVariant> configuration);
public slots: 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: private slots:
void showUpdates(QString version); void showUpdates(QString version);

View File

@ -440,12 +440,11 @@ bool AWKeys::setDataBySource(const QString sourceName,
for (int i=0; i<data.keys().count(); i++) { for (int i=0; i<data.keys().count(); i++) {
if (data.keys()[i] == QString("ac")) { if (data.keys()[i] == QString("ac")) {
// notification // notification
if ((enablePopup) && if ((values[QString("ac")] == params[QString("acOnline")].toString()) != data[QString("ac")].toBool()) {
((values[QString("ac")] == params[QString("acOnline")].toString()) != data[QString("ac")].toBool())) {
if (data[QString("ac")].toBool()) if (data[QString("ac")].toBool())
AWActions::sendNotification(QString("event"), i18n("AC online")); AWActions::sendNotification(QString("event"), i18n("AC online"), enablePopup);
else else
AWActions::sendNotification(QString("event"), i18n("AC offline")); AWActions::sendNotification(QString("event"), i18n("AC offline"), enablePopup);
} }
// value // value
values[QString("ac")] = data.keys()[i]; values[QString("ac")] = data.keys()[i];
@ -461,9 +460,8 @@ bool AWKeys::setDataBySource(const QString sourceName,
} else if (sourceName == QString("cpu/system/TotalLoad")) { } else if (sourceName == QString("cpu/system/TotalLoad")) {
// cpu // cpu
// notification // notification
if ((enablePopup) && if ((data[QString("value")].toFloat() >= 90.0) && (values[QString("cpu")].toFloat() < 90.0))
((data[QString("value")].toFloat() >= 90.0) && (values[QString("cpu")].toFloat() < 90.0))) AWActions::sendNotification(QString("event"), i18n("High CPU load"), enablePopup);
AWActions::sendNotification(QString("event"), i18n("High CPU load"));
// value // value
values[QString("cpu")] = QString("%1").arg(data[QString("value")].toFloat(), 5, 'f', 1); values[QString("cpu")] = QString("%1").arg(data[QString("value")].toFloat(), 5, 'f', 1);
toolTip->setData(QString("cpuTooltip"), data[QString("value")].toFloat()); toolTip->setData(QString("cpuTooltip"), data[QString("value")].toFloat());
@ -510,6 +508,10 @@ bool AWKeys::setDataBySource(const QString sourceName,
} }
} else if (sourceName == QString("gpu")) { } else if (sourceName == QString("gpu")) {
// gpu load // 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); values[QString("gpu")] = QString("%1").arg(data[QString("value")].toFloat(), 5, 'f', 1);
} else if (sourceName == QString("gputemp")) { } else if (sourceName == QString("gputemp")) {
// gpu temperature // gpu temperature
@ -521,9 +523,8 @@ bool AWKeys::setDataBySource(const QString sourceName,
mount.remove(QString("partitions")).remove(QString("/filllevel")); mount.remove(QString("partitions")).remove(QString("/filllevel"));
for (int i=0; i<mountDevices.count(); i++) for (int i=0; i<mountDevices.count(); i++)
if (mountDevices[i] == mount) { if (mountDevices[i] == mount) {
if ((enablePopup) && if ((data[QString("value")].toFloat() >= 90.0) && (values[QString("hdd") + QString::number(i)].toFloat() < 90.0))
((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);
AWActions::sendNotification(QString("event"), i18n("Free space on %1 less than 10%", mount));
values[QString("hdd") + QString::number(i)] = QString("%1").arg(data[QString("value")].toFloat(), 5, 'f', 1); values[QString("hdd") + QString::number(i)] = QString("%1").arg(data[QString("value")].toFloat(), 5, 'f', 1);
break; break;
} }
@ -588,17 +589,18 @@ bool AWKeys::setDataBySource(const QString sourceName,
// percentage // percentage
float value = 100.0 * values[QString("memmb")].toFloat() / values[QString("memtotmb")].toFloat(); float value = 100.0 * values[QString("memmb")].toFloat() / values[QString("memtotmb")].toFloat();
// notification // notification
if ((enablePopup) && ((value >= 90.0) && (values[QString("mem")].toFloat() < 90.0))) if ((value >= 90.0) && (values[QString("mem")].toFloat() < 90.0))
AWActions::sendNotification(QString("event"), i18n("High memory usage")); AWActions::sendNotification(QString("event"), i18n("High memory usage"), enablePopup);
// value // value
values[QString("mem")] = QString("%1").arg(value, 5, 'f', 1); values[QString("mem")] = QString("%1").arg(value, 5, 'f', 1);
toolTip->setData(QString("memTooltip"), values[QString("mem")].toFloat()); toolTip->setData(QString("memTooltip"), values[QString("mem")].toFloat());
} else if (sourceName == QString("netdev")) { } else if (sourceName == QString("netdev")) {
// network device // network device
// notification // 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", AWActions::sendNotification(QString("event"), i18n("Network device has been changed to %1",
data[QString("value")].toString())); data[QString("value")].toString()),
enablePopup);
// value // value
values[QString("netdev")] = data[QString("value")].toString(); values[QString("netdev")] = data[QString("value")].toString();
} else if (sourceName.contains(netRecRegExp)) { } else if (sourceName.contains(netRecRegExp)) {
@ -661,8 +663,8 @@ bool AWKeys::setDataBySource(const QString sourceName,
// percentage // percentage
float value = 100.0 * values[QString("swapmb")].toFloat() / values[QString("swaptotmb")].toFloat(); float value = 100.0 * values[QString("swapmb")].toFloat() / values[QString("swaptotmb")].toFloat();
// notification // notification
if ((enablePopup) && ((value > 0.0) && (values[QString("swap")].toFloat() == 0.0))) if ((value > 0.0) && (values[QString("swap")].toFloat() == 0.0))
AWActions::sendNotification(QString("event"), i18n("Swap is used")); AWActions::sendNotification(QString("event"), i18n("Swap is used"), enablePopup);
// value // value
values[QString("swap")] = QString("%1").arg(value, 5, 'f', 1); values[QString("swap")] = QString("%1").arg(value, 5, 'f', 1);
toolTip->setData(QString("swapTooltip"), values[QString("swap")].toFloat()); toolTip->setData(QString("swapTooltip"), values[QString("swap")].toFloat());