diff options
| author | Roy Marples <roy@marples.name> | 2020-08-08 15:44:52 +0100 |
|---|---|---|
| committer | Roy Marples <roy@marples.name> | 2020-08-08 15:44:52 +0100 |
| commit | d60ae1dbb57c14bc569bd342fa1aa0a095e626a6 (patch) | |
| tree | 55267d38e79f711ee3f25dbef3dd78f147bc3e3e | |
| parent | 6280f2d25143cd212ad56a6ca6db9033187a82fe (diff) | |
| download | dhcpcd-ui-d60ae1dbb57c14bc569bd342fa1aa0a095e626a6.tar.xz | |
dhcpcd-qt: Add support for KDE5 Notifications
| -rwxr-xr-x | configure | 43 | ||||
| -rw-r--r-- | src/dhcpcd-qt/dhcpcd-qt.cpp | 8 |
2 files changed, 31 insertions, 20 deletions
@@ -427,28 +427,35 @@ if [ -z "$WITH_QT" -o "$WITH_QT" != no ]; then exit 1 fi fi - if $DHCPCD_QT; then - QMAKE_CONFIG="$QMAKE_CONFIG PREFIX=$PREFIX" - QMAKE_CONFIG="$QMAKE_CONFIG SYSCONFDIR=$SYSCONFDIR" - QMAKE_CONFIG="$QMAKE_CONFIG MANDIR=$MANDIR" - if (cd src/dhcpcd-qt; $QMAKE $QMAKE_CONFIG dhcpcd-qt.pro); then - UI="$UI${UI:+ }dhcpcd-qt" - else - echo "Failed to configure dhcpcd-qt" >&2 - [ -n "$WITH_QT" ] && exit 1 - DHCPCD_QT=false - fi - fi fi NOTIFY="$_NOTIFY" +if $DHCPCD_QT; then + QMAKE_CONFIG="$QMAKE_CONFIG PREFIX=$PREFIX" + QMAKE_CONFIG="$QMAKE_CONFIG SYSCONFDIR=$SYSCONFDIR" + QMAKE_CONFIG="$QMAKE_CONFIG MANDIR=$MANDIR" +fi if $DHCPCD_QT && [ -z "$NOTIFY" -o "$NOTIFY" = yes ]; then - if kde4-config --path lib --locate libkdeui.so >/dev/null 2>&3; then - QMAKE_CONFIG="$QMAKE_CONFIG CONFIG+=has_libkdeui" - echo "Building dhcpcd-qt with notification support" - elif [ "$NOTIFY" = yes ]; then - echo "$0: knotify4 not found" >&2 - exit 1 + printf "Looking for KDE Notification support ... " + QT_KNOTE="QT+=KNotifications" + if (cd src/dhcpcd-qt; $QMAKE $QMAKE_CONFIG $QT_KNOTE dhcpcd-qt.pro) 2>>config.log; then + QMAKE_CONFIG="$QMAKE_CONFIG $QT_KNOTE DEFINES+=KNOTIFY5" + echo "KDE5" + elif kde4-config --path lib --locate libkdeui.so >/dev/null 2>&3; then + QMAKE_CONFIG="$QMAKE_CONFIG CONFIG+=has_libkdeui DEFINES+=KNOTIFY4" + echo "KDE4" + else + echo "none found" + [ "$NOTIFY" = yes ] && exit 1 + fi +fi +if $DHCPCD_QT; then + if (cd src/dhcpcd-qt; $QMAKE $QMAKE_CONFIG dhcpcd-qt.pro); then + UI="$UI${UI:+ }dhcpcd-qt" + else + echo "Failed to configure dhcpcd-qt" >&2 + [ -n "$WITH_QT" ] && exit 1 + DHCPCD_QT=false fi fi diff --git a/src/dhcpcd-qt/dhcpcd-qt.cpp b/src/dhcpcd-qt/dhcpcd-qt.cpp index 3730c2a..f4d54a3 100644 --- a/src/dhcpcd-qt/dhcpcd-qt.cpp +++ b/src/dhcpcd-qt/dhcpcd-qt.cpp @@ -40,7 +40,10 @@ #include "dhcpcd-ifmenu.h" #include "dhcpcd-ssidmenu.h" -#ifdef NOTIFY + +#if defined(KNOTIFY5) +#include <KNotification> +#elif defined(KNOTIFY4) #include <knotification.h> #endif @@ -538,8 +541,9 @@ void DhcpcdQt::notify(const QString &title, const QString &msg, const QString &icon) { -#ifdef NOTIFY +#if defined(KNOTIFY4) || defined(KNOTIFY5) KNotification *n = new KNotification("event", this); + n->setIconName(icon); n->setTitle(title); n->setText(msg); n->sendEvent(); |
